Updated on 2022-02-10 GMT+08:00
PUT Bucket lifecycle
API Description
You can use this API to set lifecycle rules for a bucket, to periodically transit storage classes of objects and delete objects in the bucket.
Method Definition
func (obsClient ObsClient) SetBucketLifecycleConfiguration(input *SetBucketLifecycleConfigurationInput) (output *BaseModel, err error)
Method Definition If a Signed URL Is Used
func (obsClient ObsClient) SetBucketLifecycleConfigurationWithSignedUrl(signedUrl string, actualSignedRequestHeaders http.Header, data io.Reader) (output *BaseModel, err error)
Request Parameter
Field |
Type |
Optional or Mandatory |
---|---|---|
input |
Mandatory |
Returned Result
Field |
Type |
---|---|
output |
|
err |
error |
Sample Code
func main() { input := &obs.SetBucketLifecycleConfigurationInput{} input.Bucket = "bucketname" var lifecycleRules [2]obs.LifecycleRule lifecycleRule0 := obs.LifecycleRule{} lifecycleRule0.ID = "rule0" lifecycleRule0.Prefix = "prefix0" lifecycleRule0.Status = obs.RuleStatusEnabled var transitions [2]obs.Transition transitions[0] = obs.Transition{} transitions[0].Days = 30 transitions[0].StorageClass = obs.StorageClassWarm transitions[1] = obs.Transition{} transitions[1].Days = 60 transitions[1].StorageClass = obs.StorageClassCold lifecycleRule0.Transitions = transitions[:] lifecycleRule0.Expiration.Days = 100 lifecycleRule0.NoncurrentVersionExpiration.NoncurrentDays = 20 lifecycleRules[0] = lifecycleRule0 lifecycleRule1 := obs.LifecycleRule{} lifecycleRule1.Status = obs.RuleStatusEnabled lifecycleRule1.ID = "rule1" lifecycleRule1.Prefix = "prefix1" lifecycleRule1.Expiration.Date = time.Now().Add(time.Duration(24) * time.Hour) var noncurrentTransitions [2]obs.NoncurrentVersionTransition noncurrentTransitions[0] = obs.NoncurrentVersionTransition{} noncurrentTransitions[0].NoncurrentDays = 30 noncurrentTransitions[0].StorageClass = obs.StorageClassWarm noncurrentTransitions[1] = obs.NoncurrentVersionTransition{} noncurrentTransitions[1].NoncurrentDays = 60 noncurrentTransitions[1].StorageClass = obs.StorageClassCold lifecycleRule1.NoncurrentVersionTransitions = noncurrentTransitions[:] lifecycleRules[1] = lifecycleRule1 input.LifecycleRules = lifecycleRules[:] output, err := obsClient.SetBucketLifecycleConfiguration(input) if err == nil { fmt.Printf("RequestId:%s\n", output.RequestId) } else { if obsError, ok := err.(obs.ObsError); ok { fmt.Println(obsError.Code) fmt.Println(obsError.Message) } else { fmt.Println(err) } } }
Parent topic: Bucket-Related APIs
Feedback
Was this page helpful?
Provide feedbackThank you very much for your feedback. We will continue working to improve the documentation.See the reply and handling status in My Cloud VOC.
The system is busy. Please try again later.
For any further questions, feel free to contact us through the chatbot.
Chatbot