A user must enable lifecycle policies at the cluster setting level. Use the management API when enabled:

curl -X PUT --header 'Content-Type: application/json' --header 'Accept: text/plain' -d '{}'
'http://lucky1.tx.caringo.com:91/api/storage/clusters/_self/settings/policy.lifecycle?value=enabled' -u admin:ourpwdofchoicehere

A missing Policy-Lifecycle header on the domain is considered a tacit enablement which does not require any changes.

A bucket contains one or multiple lifecycle policies, such as:

Such policies are applied on a bucket object using one or multiple Policy-Lifecycle headers:

curl –X COPY –-post301 –-location-trusted –H 'Policy-Lifecycle: RuleId:"rule5" ExpirationDays:1825 ObsoleteExpirationDays:365'
'http://lucky1.tx.caringo.com/mybucket?domain=mydomain&preserve'

In the previous example, apply implicitly to all content in the bucket by:

The preserve query argument on the COPY operations indicates leaving other persisted headers unchanged.

note

Important

  • Re-transmit all Policy-Lifecycle headers to appear on the new object. It is advised to use the Content UI for editing policy rules.

  • Swarm supports expiration policies currently.

Important

  • Re-transmit all Policy-Lifecycle headers to appear on the new object. It is advised to use the Content UI for editing policy rules.

  • Swarm supports expiration policies currently.

See S3 lifecycle policy examples.