Configurar el ciclo de vida del depósito

De forma predeterminada, los depósitos no tienen habilitada la administración del ciclo de vida. Para establecer o modificar la configuración del ciclo de vida de un depósito existente, realiza una solicitud PUT con alcance al depósito y usa el parámetro de string de consulta lifecycle. Debes incluir un documento XML en el cuerpo de la solicitud que contiene la configuración del ciclo de vida. Ten en cuenta que no puedes establecer la configuración del ciclo de vida en un depósito nuevo que estés creando.

Debes tener el permiso FULL_CONTROL para establecer o modificar la configuración del ciclo de vida de un depósito existente. También debes autenticarte para usar el método de depósito PUT.

Parámetros de string de consulta

Parámetro Descripción Obligatorio
lifecycle Lo usas para agregar o cambiar la configuración del ciclo de vida en un depósito existente. Debes proporcionar el documento LifecycleConfiguration en el cuerpo de la solicitud. No

Consulta los parámetros de string de consulta de URL firmados para obtener información sobre los parámetros que incluyes cuando creas y usas URL firmadas.

Solicita encabezados

Consulta encabezados de solicitud comunes.

Elementos de cuerpo de la solicitud

Los siguientes elementos del cuerpo de la solicitud solo se aplican si usas el parámetro de string de consulta lifecycle para especificar la configuración del ciclo de vida de un depósito existente.

Elemento Descripción
LifecycleConfiguration Define las políticas de administración del ciclo de vida para el depósito, que contiene 0 o más reglas (hasta 100). Usa un elemento vacío (por ejemplo, <LifecycleConfiguration/>) a fin de inhabilitar la administración del ciclo de vida del depósito.
Rule Define una regla de administración del ciclo de vida, que se realiza de una acción y las condiciones que deben cumplirse para que esta acción ocurra.
Action Define la acción que se debe realizar. Debe contener un solo elemento de acción.
Delete Elemento de acción para borrar objetos en el depósito.
SetStorageClass El elemento de acción para cambiar la clase de almacenamiento de los objetos del depósito
Condition Condiciones que se deben cumplir para que se realice la acción. Una regla debe contener al menos un elemento de condición.
Age Elemento de condición que coincide con objetos sobre la edad especificada (en días).
CreatedBefore Elemento de condición que coincide con objetos creados antes de la medianoche de la fecha especificada en UTC. El valor es una string de fecha ISO sin una zona horaria, p.ej., 2019-01-15.
CustomTimeBefore Elemento de condición que coincide con objetos cuyos metadatos Custom-Time contienen una fecha anterior a la fecha establecida en esta condición. CustomTimeBefore es una string de fecha ISO sin una zona horaria, p.ej., 2020-02-25.
DaysSinceCustomTime Elemento de condición que coincide con objetos cuyos metadatos Custom-Time tienen más de DaysSinceCustomTime días de antig.edad.
DaysSinceNoncurrentTime Elemento de condición relevante solo para objetos con versión. Coincide con objetos que no han sido actuales por más de la cantidad de días especificada.
IsLive Por lo general, el elemento de condición solo se usa junto con el control de versiones de objetos. Cuando se establece en false, esta condición se cumple con las versiones no actuales de un objeto. Cuando se configura como true, esta condición se cumple con la versión publicada de un objeto. Si no usas el control de versiones de los objetos, todos tus objetos se consideran activos y coinciden cuando IsLive es true.
MatchesStorageClass Elemento de condición que coincide con objetos de la clase de almacenamiento especificada. Esta condición se puede agregar varias veces a la misma regla para cubrir más de una clase de almacenamiento.
NoncurrentTimeBefore Elemento de condición relevante solo para objetos con versión. Hace coincidir los objetos que se convirtieron en no actuales en una fecha anterior a la fecha especificada en esta condición. NoncurrentTimeBefore es una string de fecha ISO sin una zona horaria, p.ej., 2020-02-25.
NumberOfNewerVersions Elemento de condición relevante solo para objetos con versión. Si el valor es N, la condición se cumple cuando hay al menos N versiones (incluida la versión activa) más recientes que esta versión del objeto.

Sintaxis de la solicitud

PUT /?lifecycle HTTP/1.1
Host: BUCKET_NAME.storage.googleapis.com
Date: DATE
Content-Length: REQUEST_BODY_LENGTH
Content-Type: MIME_TYPE_OF_THE_BODY
Authorization: AUTHENTICATION_STRING

XML_DOCUMENT_DEFINING_LIFECYCLE_CONFIGURATION

Encabezados de respuesta

La solicitud puede mostrar una variedad de encabezados de respuesta según los encabezados de la solicitud que uses.

Elementos del cuerpo de la respuesta

La respuesta no incluye un documento XML en el cuerpo de la respuesta.

Ejemplo

El siguiente ejemplo habilita la administración del ciclo de vida de un depósito llamado example.com. Para obtener más ejemplos, consulta la página Administrar ciclos de vida.

Solicitud

PUT /example.com?lifecycle HTTP/1.1
Host: storage.googleapis.com
Content-Length: 220
Authorization: Bearer ya29.AHES6ZRVmB7fkLtd1XTmq6mo0S1wqZZi3-Lh_s-6Uw7p8vtgSwg

<?xml version="1.0" ?>
<LifecycleConfiguration>
    <Rule>
        <Action>
            <Delete/>
        </Action>
        <Condition>
            <Age>30</Age>
        </Condition>
    </Rule>
</LifecycleConfiguration>

Respuesta

HTTP/1.1 200 OK
Date: Mon, 07 Jan 2019 03:38:42 GMT
Expires: Mon, 01 Jan 1990 00:00:00 GMT
Cache-Control: no-cache, no-store, must-revalidate
Content-Length: 0
Content-Type: text/html