Nota

Este complemento es parte del colección google.cloud (versión 1.0.2).

Para instalarlo use: ansible-galaxy collection install google.cloud.

Para usarlo en un libro de jugadas, especifique: google.cloud.gcp_storage_bucket.

  • Sinopsis
  • Requisitos
  • Parámetros
  • Ejemplos de
  • Valores devueltos

Sinopsis

  • El recurso Buckets representa un depósito en Google Cloud Storage. Hay un único espacio de nombres global compartido por todos los depósitos. Para obtener más información, consulte Requisitos de nombre de depósito.
  • Los depósitos contienen objetos a los que se puede acceder mediante sus propios métodos. Además de la propiedad acl, los depósitos contienen bucketAccessControls, para su uso en la manipulación detallada de los controles de acceso de un depósito existente.
  • Un depósito siempre es propiedad del grupo de propietarios del equipo del proyecto.

Requisitos

Los siguientes requisitos son necesarios en el host que ejecuta este módulo.

  • pitón> = 2.6
  • solicitudes> = 2.18.4
  • google-auth> = 1.3.0

Parámetros

Parámetro Opciones / Valores predeterminados Comentarios
acllista / elementos = diccionario Controles de acceso en el balde.
Cubetadiccionario / requerido El nombre del depósito. Este campo representa un enlace a un recurso de depósito en GCP. Se puede especificar de dos formas. Primero, puede colocar un diccionario con la clave ‘nombre’ y el valor del nombre de su recurso. Alternativamente, puede agregar `register: name-of-resource` a una tarea gcp_storage_bucket y luego establecer este campo de depósito en” name-of- recurso “
entidadcuerda / requerido La entidad que tiene el permiso, en una de las siguientes formas: user-userId user-email group-groupId group-email domain-domain project-team-projectId allUsers allAuthenticatedUsers Ejemplos: El usuario [email protected] sería [email protected]El grupo [email protected] sería [email protected]Para hacer referencia a todos los miembros del dominio example.com de Google Apps for Business, la entidad sería domain-example.com.
entidad_idcuerda El ID de la entidad.
Grupo de proyectodiccionario El equipo del proyecto asociado a la entidad.
número de proyectocuerda El equipo del proyecto asociado a la entidad.
equipocuerda El equipo. Algunas opciones válidas incluyen: “editores”, “propietarios”, “espectadores”
papelcuerda El permiso de acceso para la entidad. Algunas opciones válidas incluyen: “PROPIETARIO”, “LECTOR”, “ESCRITOR”
auth_kindcuerda / requerido
    Opciones:

  • solicitud
  • cuenta de la máquina
  • cuenta de servicio
El tipo de credencial utilizada.
corslista / elementos = diccionario La configuración de intercambio de recursos de origen cruzado (CORS) del depósito.
max_age_secondsentero El valor, en segundos, que se devolverá en el encabezado Access-Control-Max-Age utilizado en las respuestas de verificación previa.
métodolista / elementos = cadena La lista de métodos HTTP en los que incluir encabezados de respuesta CORS (GET, OPTIONS, POST, etc.) Nota: “*” está permitido en la lista de métodos y significa “cualquier método”.
origenlista / elementos = cadena La lista de Orígenes elegibles para recibir encabezados de respuesta CORS. Nota: “*” está permitido en la lista de orígenes y significa “cualquier Origen”.
response_headerlista / elementos = cadena La lista de encabezados HTTP distintos de los encabezados de respuesta simple para otorgar permiso al usuario-agente para compartir entre dominios.
default_event_based_holdbooleano
    Opciones:

  • no
Si se aplica o no automáticamente un eventBasedHold a los nuevos objetos agregados al depósito.
default_object_acllista / elementos = diccionario Controles de acceso predeterminados para aplicar a nuevos objetos cuando no se proporciona una ACL.
Cubetadiccionario / requerido El nombre del depósito. Este campo representa un enlace a un recurso de depósito en GCP. Se puede especificar de dos formas. Primero, puede colocar un diccionario con la clave ‘nombre’ y el valor del nombre de su recurso. Alternativamente, puede agregar `register: name-of-resource` a una tarea gcp_storage_bucket y luego establecer este campo de depósito en” name-of- recurso “
entidadcuerda / requerido La entidad que tiene el permiso, en una de las siguientes formas: * usuario – userId * usuario – email (como “[email protected]”) * grupo – groupId * grupo – correo electrónico (como”[email protected]”) * dominio – dominio (como” dominio-ejemplo.com “) * equipo-proyecto – projectId * allUsers * allAuthenticatedUsers.
objetocuerda El nombre del objeto, si se aplica a un objeto.
papelcuerda / requerido El permiso de acceso para la entidad. Algunas opciones válidas incluyen: “PROPIETARIO”, “LECTOR”
tipo_envcuerda Especifica en qué entorno de Ansible está ejecutando este módulo. Esto no debe establecerse a menos que sepa lo que está haciendo. Esto solo altera la cadena del agente de usuario para cualquier solicitud de API.
etiquetasdiccionario Etiquetas aplicadas a este depósito. Una lista de pares clave-> valor.
ciclo vitaldiccionario La configuración del ciclo de vida del depósito. https://developers.google.com/storage/docs/lifecycle para más información.
reglalista / elementos = diccionario Una regla de gestión del ciclo de vida, que se compone de una acción a realizar y las condiciones bajo las cuales se llevará a cabo la acción.
accióndiccionario La acción a realizar.
clase_almacenamientocuerda Clase de almacenamiento de destino. Obligatorio si el tipo de acción es SetStorageClass.
escribecuerda Tipo de acción. Actualmente, solo se admiten Delete y SetStorageClass. Algunas opciones válidas incluyen: “Delete”, “SetStorageClass”
condicióndiccionario Las condiciones bajo las cuales se tomará la acción.
age_daysentero Edad de un objeto (en días). Esta condición se cumple cuando un objeto alcanza la edad especificada.
creado_antescuerda Una fecha en formato RFC 3339 con solo la parte de la fecha (por ejemplo, “2013-01-15”). Esta condición se cumple cuando se crea un objeto antes de la medianoche de la fecha especificada en UTC.
es en vivobooleano
    Opciones:

  • no
Relevante solo para objetos versionados. Si el valor es verdadero, esta condición coincide con los objetos activos; si el valor es falso, coincide con los objetos archivados.
Match_storage_classlista / elementos = cadena Se compararán los objetos que tengan cualquiera de las clases de almacenamiento especificadas por esta condición. Los valores incluyen MULTI_REGIONAL, REGIONAL, NEARLINE, COLDLINE, ARCHIVE, STANDARD y DURABLE_REDUCED_AVAILABILITY.
num_newer_versionsentero Relevante solo para objetos versionados. Si el valor es N, esta condición se cumple cuando hay al menos N versiones (incluida la versión en vivo) más nuevas que esta versión del objeto.
localizacióncuerda La ubicación del balde. Los datos de los objetos en el depósito residen en el almacenamiento físico dentro de esta región. El valor predeterminado es EE. UU. Consulte la guía del desarrollador para obtener la lista autorizada.
Inicio sesióndiccionario La configuración de registro del depósito, que define el depósito de destino y el prefijo de nombre opcional para los registros del depósito actual.
log_bucketcuerda El depósito de destino donde se deben colocar los registros del depósito actual.
prefijo_objeto_registrocuerda Un prefijo para los nombres de los objetos de registro.
metageneracionentero La generación de metadatos de este depósito.
nombrecuerda El nombre del cubo.
dueñodiccionario El dueño del cubo. Este es siempre el grupo propietario del equipo del proyecto.
entidadcuerda La entidad, con el formato project-owner-projectId.
predefined_default_object_aclcuerda Aplicar un conjunto predefinido de controles de acceso a objetos predeterminados a este depósito. Los valores aceptables son: – “authenticatedRead”: el propietario del objeto obtiene acceso de PROPIETARIO y todos los usuarios autenticados obtienen acceso de LECTOR.- “bucketOwnerFullControl”: el propietario del objeto obtiene acceso de PROPIETARIO y los propietarios del equipo del proyecto obtienen Acceso de PROPIETARIO.- “bucketOwnerRead”: el propietario del objeto obtiene acceso de PROPIETARIO y los propietarios del equipo del proyecto obtienen acceso de LECTOR.- “privado”: el propietario del objeto obtiene acceso de PROPIETARIO.- “projectPrivate”: el propietario del objeto obtiene acceso de PROPIETARIO y los miembros del equipo del proyecto obtienen acceso según sus roles.- “publicRead”: el propietario del objeto obtiene acceso de PROPIETARIO y todos los usuarios obtienen acceso de LECTOR. Algunas opciones válidas incluyen: “authenticatedRead”, “bucketOwnerFullControl”, “bucketOwnerRead”, “private”, “projectPrivate”, “publicRead”
proyectocuerda El proyecto de Google Cloud Platform que se utilizará.
alcanceslista / elementos = cadena Matriz de osciloscopios que se utilizarán
service_account_contentsjsonarg El contenido de un archivo JSON de cuenta de servicio, ya sea en un diccionario o como una cadena JSON que lo representa.
service_account_emailcuerda Una dirección de correo electrónico de cuenta de servicio opcional si se selecciona la cuenta de la máquina y el usuario no desea utilizar el correo electrónico predeterminado.
service_account_filesendero La ruta de un archivo JSON de cuenta de servicio si se selecciona serviceaccount como tipo.
estadocuerda
    Opciones:

  • regalo
  • ausente
Si el objeto dado debe existir en GCP
clase_almacenamientocuerda La clase de almacenamiento predeterminada del depósito, que se usa siempre que no se especifica ninguna clase de almacenamiento para un objeto recién creado. Esto define cómo se almacenan los objetos en el depósito y determina el SLA y el costo de almacenamiento. Los valores incluyen MULTI_REGIONAL, REGIONAL, STANDARD, NEARLINE, COLDLINE, ARCHIVE y DURABLE_REDUCED_AVAILABILITY. Si este valor no se especifica cuando se crea el depósito, se establecerá de forma predeterminada en ESTÁNDAR. Para obtener más información, consulte las clases de almacenamiento. Algunas opciones válidas incluyen: “MULTI_REGIONAL”, “REGIONAL”, “ESTÁNDAR”, “NEARLINE”, “COLDLINE”, “ARCHIVE”, “DURABLE_REDUCED_AVAILABILITY”
versionadodiccionario La configuración de control de versiones del depósito.
activadobooleano
    Opciones:

  • no
Si bien se establece en verdadero, el control de versiones está completamente habilitado para este segmento.
sitio webdiccionario La configuración del sitio web del depósito, que controla cómo se comporta el servicio al acceder al contenido del depósito como un sitio web. Consulte los ejemplos de sitios web estáticos para obtener más información.
sufijo_página_principalcuerda Si falta la ruta del objeto solicitada, el servicio se asegurará de que la ruta tenga un ‘/’ final, agregará este sufijo e intentará recuperar el objeto resultante. Esto permite la creación de objetos index.html para representar páginas de directorio.
not_found_pagecuerda Si falta la ruta del objeto solicitada y falta algún objeto mainPageSuffix, si corresponde, el servicio devolverá el objeto nombrado de este depósito como contenido para un resultado 404 No encontrado.

Ejemplos de

-name: create a bucket
  google.cloud.gcp_storage_bucket:name: ansible-storage-module
    project: test_project
    auth_kind: serviceaccount
    service_account_file:"/tmp/auth.pem"state: present

Valores devueltos

Los valores de retorno comunes están documentados aquí, los siguientes son los campos exclusivos de este módulo:

Llave Devuelto Descripción
aclcomplejo éxito Controles de acceso en el balde.
Cubetadiccionario éxito El nombre del cubo.
dominiocuerda éxito El dominio asociado a la entidad.
Emailcuerda éxito La dirección de correo electrónico asociada a la entidad.
entidadcuerda éxito La entidad que tiene el permiso, en una de las siguientes formas: user-userId user-email group-groupId group-email domain-domain project-team-projectId allUsers allAuthenticatedUsers Ejemplos: El usuario [email protected] sería [email protected]El grupo [email protected] sería [email protected]Para hacer referencia a todos los miembros del dominio example.com de Google Apps for Business, la entidad sería domain-example.com.
entityIdcuerda éxito El ID de la entidad.
identificacióncuerda éxito El ID de la entrada de control de acceso.
Grupo de proyectocomplejo éxito El equipo del proyecto asociado a la entidad.
número de proyectocuerda éxito El equipo del proyecto asociado a la entidad.
equipocuerda éxito El equipo.
papelcuerda éxito El permiso de acceso para la entidad.
corscomplejo éxito La configuración de intercambio de recursos de origen cruzado (CORS) del depósito.
maxAgeSecondsentero éxito El valor, en segundos, que se devolverá en el encabezado Access-Control-Max-Age utilizado en las respuestas de verificación previa.
métodolista / elementos = cadena éxito La lista de métodos HTTP en los que incluir encabezados de respuesta CORS (GET, OPTIONS, POST, etc.) Nota: “*” está permitido en la lista de métodos y significa “cualquier método”.
origenlista / elementos = cadena éxito La lista de Orígenes elegibles para recibir encabezados de respuesta CORS. Nota: “*” está permitido en la lista de orígenes y significa “cualquier Origen”.
responseHeaderlista / elementos = cadena éxito La lista de encabezados HTTP distintos de los encabezados de respuesta simple para otorgar permiso al usuario-agente para compartir entre dominios.
defaultEventBasedHoldbooleano éxito Si se aplica o no automáticamente un eventBasedHold a los nuevos objetos agregados al depósito.
defaultObjectAclcomplejo éxito Controles de acceso predeterminados para aplicar a nuevos objetos cuando no se proporciona una ACL.
Cubetadiccionario éxito El nombre del cubo.
dominiocuerda éxito El dominio asociado a la entidad.
Emailcuerda éxito La dirección de correo electrónico asociada a la entidad.
entidadcuerda éxito La entidad que tiene el permiso, en una de las siguientes formas: * usuario – userId * usuario – email (como “[email protected]”) * grupo – groupId * grupo – correo electrónico (como”[email protected]”) * dominio – dominio (como” dominio-ejemplo.com “) * equipo-proyecto – projectId * allUsers * allAuthenticatedUsers.
entityIdcuerda éxito El ID de la entidad.
Generacionentero éxito La generación de contenido del objeto, si se aplica a un objeto.
identificacióncuerda éxito El ID de la entrada de control de acceso.
objetocuerda éxito El nombre del objeto, si se aplica a un objeto.
Grupo de proyectocomplejo éxito El equipo del proyecto asociado a la entidad.
número de proyectocuerda éxito El equipo del proyecto asociado a la entidad.
equipocuerda éxito El equipo.
papelcuerda éxito El permiso de acceso para la entidad.
identificacióncuerda éxito El ID del depósito. Para los depósitos, las propiedades de identificación y nombre son las mismas.
etiquetasdiccionario éxito Etiquetas aplicadas a este depósito. Una lista de pares clave-> valor.
ciclo vitalcomplejo éxito La configuración del ciclo de vida del depósito. https://developers.google.com/storage/docs/lifecycle para más información.
reglacomplejo éxito Una regla de gestión del ciclo de vida, que se compone de una acción a realizar y las condiciones bajo las cuales se llevará a cabo la acción.
accióncomplejo éxito La acción a realizar.
storageClasscuerda éxito Clase de almacenamiento de destino. Obligatorio si el tipo de acción es SetStorageClass.
escribecuerda éxito Tipo de acción. Actualmente, solo se admiten Delete y SetStorageClass.
condicióncomplejo éxito Las condiciones bajo las cuales se tomará la acción.
ageDaysentero éxito Edad de un objeto (en días). Esta condición se cumple cuando un objeto alcanza la edad especificada.
createdBeforecuerda éxito Una fecha en formato RFC 3339 con solo la parte de la fecha (por ejemplo, “2013-01-15”). Esta condición se cumple cuando se crea un objeto antes de la medianoche de la fecha especificada en UTC.
es en vivobooleano éxito Relevante solo para objetos versionados. Si el valor es verdadero, esta condición coincide con los objetos activos; si el valor es falso, coincide con los objetos archivados.
matchStorageClasslista / elementos = cadena éxito Se compararán los objetos que tengan cualquiera de las clases de almacenamiento especificadas por esta condición. Los valores incluyen MULTI_REGIONAL, REGIONAL, NEARLINE, COLDLINE, ARCHIVE, STANDARD y DURABLE_REDUCED_AVAILABILITY.
numNewerVersionsentero éxito Relevante solo para objetos versionados. Si el valor es N, esta condición se cumple cuando hay al menos N versiones (incluida la versión en vivo) más nuevas que esta versión del objeto.
localizacióncuerda éxito La ubicación del balde. Los datos de los objetos en el depósito residen en el almacenamiento físico dentro de esta región. El valor predeterminado es EE. UU. Consulte la guía del desarrollador para obtener la lista autorizada.
Inicio sesióncomplejo éxito La configuración de registro del depósito, que define el depósito de destino y el prefijo de nombre opcional para los registros del depósito actual.
logBucketcuerda éxito El depósito de destino donde se deben colocar los registros del depósito actual.
logObjectPrefixcuerda éxito Un prefijo para los nombres de los objetos de registro.
metageneracionentero éxito La generación de metadatos de este depósito.
nombrecuerda éxito El nombre del cubo.
dueñocomplejo éxito El dueño del cubo. Este es siempre el grupo propietario del equipo del proyecto.
entidadcuerda éxito La entidad, con el formato project-owner-projectId.
entityIdcuerda éxito El ID de la entidad.
predefinedDefaultObjectAclcuerda éxito Aplicar un conjunto predefinido de controles de acceso a objetos predeterminados a este depósito. Los valores aceptables son: – “authenticatedRead”: el propietario del objeto obtiene acceso de PROPIETARIO y todos los usuarios autenticados obtienen acceso de LECTOR. Acceso de PROPIETARIO.- “bucketOwnerRead”: el propietario del objeto obtiene acceso de PROPIETARIO y los propietarios del equipo del proyecto obtienen acceso de LECTOR.- “privado”: el propietario del objeto obtiene acceso de PROPIETARIO.- “projectPrivate”: el propietario del objeto obtiene el acceso de PROPIETARIO. acceso, y los miembros del equipo del proyecto obtienen acceso de acuerdo con sus roles.- “publicRead”: el propietario del objeto obtiene acceso de PROPIETARIO y todos los usuarios obtienen acceso de LECTOR.
proyectocuerda éxito Un identificador de proyecto de API válido.
número de proyectocuerda éxito El número de proyecto del proyecto al que pertenece el depósito.
storageClasscuerda éxito La clase de almacenamiento predeterminada del depósito, que se usa siempre que no se especifica ninguna clase de almacenamiento para un objeto recién creado. Esto define cómo se almacenan los objetos en el depósito y determina el SLA y el costo de almacenamiento. Los valores incluyen MULTI_REGIONAL, REGIONAL, STANDARD, NEARLINE, COLDLINE, ARCHIVE y DURABLE_REDUCED_AVAILABILITY. Si este valor no se especifica cuando se crea el depósito, se establecerá de forma predeterminada en ESTÁNDAR. Para obtener más información, consulte clases de almacenamiento.
timeCreatedcuerda éxito La hora de creación del depósito en formato RFC 3339.
actualizadocuerda éxito La hora de modificación del depósito en formato RFC 3339.
versionadocomplejo éxito La configuración de control de versiones del depósito.
activadobooleano éxito Si bien se establece en verdadero, el control de versiones está completamente habilitado para este segmento.
sitio webcomplejo éxito La configuración del sitio web del depósito, que controla cómo se comporta el servicio al acceder al contenido del depósito como un sitio web. Consulte los ejemplos de sitios web estáticos para obtener más información.
mainPageSuffixcuerda éxito Si falta la ruta del objeto solicitada, el servicio se asegurará de que la ruta tenga un ‘/’ final, agregará este sufijo e intentará recuperar el objeto resultante. Esto permite la creación de objetos index.html para representar páginas de directorio.
notFoundPagecuerda éxito Si falta la ruta del objeto solicitada y falta algún objeto mainPageSuffix, si corresponde, el servicio devolverá el objeto nombrado de este depósito como contenido para un resultado 404 No encontrado.

Autores

  • Google Inc. (@googlecloudplatform)