Overview Configuration samples
This page describes how to set Object Lifecycle Management on a bucket and how to view a bucket's current lifecycle configuration. Lifecycle configurations apply to all current and future objects in the bucket.
Required roles
To get the permissions that you need to set and manage Object Lifecycle
Management for a bucket, ask your administrator to grant you the Storage Admin
(roles/storage.admin
) role on the bucket. This predefined role contains
the permissions required to set and manage Object Lifecycle Management for a
bucket. To see the exact permissions required, expand the
Required permissions section:
Required permissions
storage.buckets.get
storage.buckets.list
- This permission is only required if you plan on using the Google Cloud console to perform the instructions on this page.
storage.buckets.update
You might also be able to get these permissions with custom roles.
For information about granting roles on buckets, see Use IAM with buckets.
Set the lifecycle configuration for a bucket
- In the Google Cloud console, go to the Cloud Storage Buckets page.
In the bucket list, find the bucket you want to enable, and click the bucket's name.
Click the Lifecycle tab.
The lifecycle rules page appears. From here you can edit or delete existing rules. To add a new rule:
Click Add a rule.
In the page that appears, specify a configuration.
Select the action to take when an object meets the conditions.
Click Continue.
Select the conditions under which an action is taken.
Click Continue.
Click Create.
To learn how to get detailed error information about failed Cloud Storage operations in the Google Cloud console, see Troubleshooting.
Create a JSON file with the lifecycle configuration rules you would like to apply. See configuration examples for sample JSON files.
Use the
gcloud storage buckets update
command with the--lifecycle-file
flag:gcloud storage buckets update gs://
BUCKET_NAME --lifecycle-file=LIFECYCLE_CONFIG_FILE Where:
BUCKET_NAME
is the name of the relevant bucket. For example,my-bucket
.LIFECYCLE_CONFIG_FILE
is the path for the JSON file that you created in Step 1.
For more information, see the Cloud Storage C++ API reference documentation.
To authenticate to Cloud Storage, set up Application Default Credentials. For more information, see Set up authentication for client libraries.
The following sample sets a lifecycle configuration on a bucket:
The following sample removes any existing lifecycle configuration from on a bucket:
For more information, see the Cloud Storage C# API reference documentation.
To authenticate to Cloud Storage, set up Application Default Credentials. For more information, see Set up authentication for client libraries.
The following sample sets a lifecycle configuration on a bucket:
The following sample removes any existing lifecycle configuration from on a bucket:
For more information, see the Cloud Storage Go API reference documentation.
To authenticate to Cloud Storage, set up Application Default Credentials. For more information, see Set up authentication for client libraries.
The following sample sets a lifecycle configuration on a bucket:
The following sample removes any existing lifecycle configuration from on a bucket:
For more information, see the Cloud Storage Java API reference documentation.
To authenticate to Cloud Storage, set up Application Default Credentials. For more information, see Set up authentication for client libraries.
The following sample sets a lifecycle configuration on a bucket:
The following sample removes any existing lifecycle configuration from on a bucket:
For more information, see the Cloud Storage Node.js API reference documentation.
To authenticate to Cloud Storage, set up Application Default Credentials. For more information, see Set up authentication for client libraries.
The following sample sets a lifecycle configuration on a bucket:
The following sample removes any existing lifecycle configuration from on a bucket:
For more information, see the Cloud Storage PHP API reference documentation.
To authenticate to Cloud Storage, set up Application Default Credentials. For more information, see Set up authentication for client libraries.
The following sample sets a lifecycle configuration on a bucket:
The following sample removes any existing lifecycle configuration from on a bucket:
For more information, see the Cloud Storage Python API reference documentation.
To authenticate to Cloud Storage, set up Application Default Credentials. For more information, see Set up authentication for client libraries.
The following sample sets a lifecycle configuration on a bucket:
The following sample removes any existing lifecycle configuration from on a bucket:
For more information, see the Cloud Storage Ruby API reference documentation.
To authenticate to Cloud Storage, set up Application Default Credentials. For more information, see Set up authentication for client libraries.
The following sample sets a lifecycle configuration on a bucket:
The following sample removes any existing lifecycle configuration from on a bucket:
You can use a Terraform resource to set a lifecycle configuration for a bucket managed by Terraform. To set a lifecycle configuration on an existing bucket that isn't yet managed by Terraform, you must first import the existing bucket.
To find out whether a lifecycle condition is supported by Terraform, see the
Terraform documentation for the condition
block.
Have gcloud CLI installed and initialized, which lets you generate an access token for the
Authorization
header.Create a JSON file with the lifecycle configuration rules you would like to apply. See configuration examples for sample JSON files.
Use
cURL
to call the JSON API with aPATCH
Bucket request:curl -X PATCH --data-binary @
LIFECYCLE_CONFIG_FILE \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ "https://storage.googleapis.com/storage/v1/b/BUCKET_NAME ?fields=lifecycle"Where:
LIFECYCLE_CONFIG_FILE
is the path for the JSON file that you created in Step 2.BUCKET_NAME
is the name of the relevant bucket. For example,my-bucket
.
Have gcloud CLI installed and initialized, which lets you generate an access token for the
Authorization
header.Create an XML file with the lifecycle configuration rules you would like to apply. See configuration examples for sample XML files.
Use
cURL
to call the XML API with aPUT
Bucket request andlifecycle
query string parameter:curl -X PUT --data-binary @
XML_FILE_NAME \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://storage.googleapis.com/BUCKET_NAME ?lifecycle"Where:
XML_FILE_NAME
is the path for the XML file that you created in Step 2.BUCKET_NAME
is the name of the relevant bucket. For example,my-bucket
.
Check the lifecycle configuration for a bucket
- In the Google Cloud console, go to the Cloud Storage Buckets page.
In the bucket list, the lifecycle status of each bucket is found in the Lifecycle column.
You can click this status to add, view, edit, and delete rules.
To learn how to get detailed error information about failed Cloud Storage operations in the Google Cloud console, see Troubleshooting.
Use the gcloud storage buckets describe
command with the
--format
flag:
gcloud storage buckets describe gs://BUCKET_NAME --format="default(lifecycle_config)"
Where BUCKET_NAME
is the name of the bucket
whose lifecycle configuration you want to view. For example,
my-bucket
.
For more information, see the Cloud Storage C++ API reference documentation.
To authenticate to Cloud Storage, set up Application Default Credentials. For more information, see Set up authentication for client libraries.
For more information, see the Cloud Storage C# API reference documentation.
To authenticate to Cloud Storage, set up Application Default Credentials. For more information, see Set up authentication for client libraries.
To view the bucket's lifecycle policies, follow the instructions for displaying a bucket's metadata and look for the lifecycle policy fields in the response.For more information, see the Cloud Storage Go API reference documentation.
To authenticate to Cloud Storage, set up Application Default Credentials. For more information, see Set up authentication for client libraries.
To view the bucket's lifecycle policies, follow the instructions for displaying a bucket's metadata and look for the lifecycle policy fields in the response.For more information, see the Cloud Storage Java API reference documentation.
To authenticate to Cloud Storage, set up Application Default Credentials. For more information, see Set up authentication for client libraries.
To view the bucket's lifecycle policies, follow the instructions for displaying a bucket's metadata and look for the lifecycle policy fields in the response.For more information, see the Cloud Storage Node.js API reference documentation.
To authenticate to Cloud Storage, set up Application Default Credentials. For more information, see Set up authentication for client libraries.
To view the bucket's lifecycle policies, follow the instructions for displaying a bucket's metadata and look for the lifecycle policy fields in the response.For more information, see the Cloud Storage PHP API reference documentation.
To authenticate to Cloud Storage, set up Application Default Credentials. For more information, see Set up authentication for client libraries.
To view the bucket's lifecycle policies, follow the instructions for displaying a bucket's metadata and look for the lifecycle policy fields in the response.For more information, see the Cloud Storage Python API reference documentation.
To authenticate to Cloud Storage, set up Application Default Credentials. For more information, see Set up authentication for client libraries.
To view the bucket's lifecycle policies, follow the instructions for displaying a bucket's metadata and look for the lifecycle policy fields in the response.For more information, see the Cloud Storage Ruby API reference documentation.
To authenticate to Cloud Storage, set up Application Default Credentials. For more information, see Set up authentication for client libraries.
To view the bucket's lifecycle policies, follow the instructions for displaying a bucket's metadata and look for the lifecycle policy fields in the response.Have gcloud CLI installed and initialized, which lets you generate an access token for the
Authorization
header.Use
cURL
to call the JSON API with aGET
Bucket request:curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://storage.googleapis.com/storage/v1/b/
BUCKET_NAME ?fields=lifecycle"Where
BUCKET_NAME
is the name of the relevant bucket. For example,my-bucket
.
Have gcloud CLI installed and initialized, which lets you generate an access token for the
Authorization
header.Use
cURL
to call the XML API with aGET
Bucket request and alifecycle
query string parameter:curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://storage.googleapis.com/
BUCKET_NAME ?lifecycle"Where
BUCKET_NAME
is the name of the relevant bucket. For example,my-bucket
.
What's next
- Learn more about Object Lifecycle Management, including the available lifecycle actions and lifecycle conditions.
- Explore lifecycle configuration examples.