Lifecycle

This document provides instructions to manage Lifecycle using the CLI. Additionally, these tasks can also be performed using the web console and IONOS S3 Object Storage API.

Prerequisites:

Commands

Create a file lifecycle.json with the JSON policy:

{
  "Rules": [
    {
      "ID": "Delete objects with data/ prefix after 30 days with size",
      "Status": "Enabled",
      "Expiration": {
        "Days": 30
      },
      "Filter": {
        "Prefix": "data/"
      }
    },
    {
      "ID": "Delete objects 60 days after becoming non-current for bucket with Versioning enabled",
      "Status": "Enabled",
      "Filter": {
        "Prefix": "temp/"
      },
      "NoncurrentVersionExpiration": {
        "NoncurrentDays": 45
      }
    },
    {
      "ID": "Delete 2022 logs in 2024.",
      "Status": "Enabled",
      "Expiration": {
          "Date": "2024-01-01T00:00:00.000Z"
      },  
      "Filter": {  
        "Prefix": "logs/2022/"
      }
    },
    {
      "ID": "Delete incomplete multipart uploads",
      "Status": "Enabled",
      "AbortIncompleteMultipartUpload": {
        "DaysAfterInitiation": 5
      },
      "Filter": {}
    }  
  ]
}

Apply the lifecycle configuration to a bucket:

aws s3api put-bucket-lifecycle-configuration --bucket my-bucket --lifecycle-configuration  file://lifecycle.json  --endpoint-url https://s3-eu-central-2.ionoscloud.com

Save the bucket’s lifecycle configuration to a file:

aws s3api get-bucket-lifecycle-configuration --bucket my-bucket --endpoint-url https://s3-eu-central-2.ionoscloud.com > lifecycle.json

Delete the lifecycele configuration:

aws s3api delete-bucket-lifecycle --bucket my-bucket --endpoint-url https://s3-eu-central-2.ionoscloud.com

Last updated