Gestionar configuraciones de la CLI de gcloud

Una configuración es un conjunto de propiedades de Google Cloud CLI con un nombre. Estas propiedades son pares clave-valor organizados en secciones que rigen el comportamiento de la CLI de gcloud.

Entre las propiedades que se suelen almacenar en las configuraciones se incluyen la zona predeterminada de Compute Engine, el nivel de detalle, los informes de uso, el ID de proyecto y un usuario activo o una cuenta de servicio. Las configuraciones te permiten definir y habilitar estos y otros ajustes como un grupo.

Las configuraciones se almacenan en el directorio de configuración de usuario (normalmente, ~/.config/gcloud en macOS y Linux, o %APPDATA%\gcloud en Windows). Puedes encontrar la ubicación de tu directorio de configuración ejecutando gcloud info --format='value(config.paths.global_config_dir)'. El directorio de configuración se puede cambiar configurando la variable de entorno CLOUDSDK_CONFIG. Además, ten en cuenta que el directorio de configuración debe tener habilitado el permiso de escritura. Sin embargo, si usas Cloud Shell, tus preferencias de la CLI de gcloud se almacenan en una carpeta tmp temporal, configurada solo para la pestaña de Cloud Shell actual, y no se conservan entre sesiones.

Si tienes varias configuraciones, puedes cambiar de una a otra o ejecutar comandos con una configuración específica (con la ayuda de la marca --configuration). Para obtener más información sobre cómo cambiar de configuración, consulta la sección Activar configuraciones que aparece más abajo.

Para leer información sobre las configuraciones desde la línea de comandos (junto con una lista completa de las propiedades disponibles y las secciones en las que se encuentran), ejecuta gcloud topic configurations.

Configuración predeterminada

La CLI de gcloud te ofrece una sola configuración llamada default. Puede definir propiedades en su configuración ejecutando el comando gcloud init o gcloud config set directamente.

Por ejemplo, para inhabilitar la solicitud de secuencias de comandos, ejecuta:

gcloud config set disable_prompts true

Varias configuraciones

La configuración default es adecuada para muchos casos prácticos. Sin embargo, también puedes crear configuraciones adicionales y cambiar entre ellas según sea necesario con gcloud config configurations activate. La configuración inicial de default no tiene nada de especial, sino que se crea para mayor comodidad. Puedes poner el nombre que quieras a esta y a cualquier otra configuración.

Las configuraciones múltiples son útiles si quieres hacer lo siguiente:

  • Usar varios proyectos: puedes crear una configuración independiente para cada proyecto y cambiar de uno a otro según sea necesario.
  • Usar varias cuentas de autorización
  • Realizar tareas generalmente independientes: por ejemplo, puedes usar una configuración para trabajar en una aplicación de App Engine en un proyecto y gestionar instancias de Compute Engine no relacionadas en otro proyecto.

Crear una configuración

Para crear una configuración, ejecuta el comando gcloud config configurations create:

gcloud config configurations create [NAME]

Para usar la nueva configuración, debes activarla después de crearla.

Activar una configuración

Solo puede haber una configuración activa a la vez. La configuración activa es la configuración cuyas propiedades rigen el comportamiento de la CLI de gcloud.

Para activar una configuración nueva o cambiar a una configuración activa, ejecuta el siguiente comando: gcloud config configurations activate:

gcloud config configurations activate [NAME]

gcloud config list siempre te mostrará las propiedades de tu configuración activa.

Para cambiar la configuración activa de una sola invocación de comando, puedes usar la marca --configuration en cualquier comando de gcloud CLI:

gcloud auth list --configuration=[CONFIGURATION_NAME]

Para cambiar la configuración activa de todos los comandos del terminal actual, puede asignar a la variable de entorno CLOUDSDK_ACTIVE_CONFIG_NAME el nombre de la configuración que quiera usar.

Automatizar el cambio de configuración

Para que el cambio de configuraciones sea fluido, puedes usar herramientas como direnv y ondir para cambiar automáticamente entre configuraciones cuando cambies de directorio de trabajo. Una forma de hacerlo es definir las variables de entorno necesarias (como CLOUDSDK_ACTIVE_CONFIG_NAME) en el archivo .envrc del directorio raíz de tu proyecto.

Mostrar configuraciones

Para enumerar las configuraciones de tu instalación de gcloud CLI, ejecuta gcloud config configurations list:

gcloud config configurations list

La CLI de gcloud muestra las configuraciones y cuál de ellas está activa:

NAME         IS_ACTIVE     ACCOUNT            PROJECT               DEFAULT_ZONE  DEFAULT_REGION
default      False         user@gmail.com     example-project-1     us-east1-b    us-east1
project-1    False         user@gmail.com     example-project-2     us-east1-c    us-east1
project-2    True          user@gmail.com     example-project-3     us-east1-b    us-east1

Definir propiedades de configuración

Para definir y anular las propiedades de la configuración activa, ejecuta los comandos gcloud config set y gcloud config unset:

gcloud config set project [PROJECT]

gcloud config unset project

Las propiedades también se pueden definir mediante variables de entorno llamadas CLOUDSDK_SECTION_NAME_PROPERTY_NAME. Por ejemplo, puede definir las propiedades core/project y compute/zone de la siguiente manera:

CLOUDSDK_CORE_PROJECT=[YOUR_PROJECT_NAME]

CLOUDSDK_COMPUTE_ZONE=[YOUR_ZONE_NAME]

Ver las propiedades de configuración

Para ver las propiedades de una configuración, ejecuta el siguiente comando: gcloud config configurations describe:

gcloud config configurations describe [NAME]

También puedes ver las propiedades de la configuración activa:

gcloud config list

La CLI de gcloud imprime las propiedades de configuración:

is_active: false
name: default
properties:
  compute:
    region: us-east1
    zone: us-east1-b
  core:
    account: user@google.com
    project: example-project

Eliminar una configuración

Para eliminar una configuración, ejecuta el siguiente comando: gcloud config configurations delete

gcloud config configurations delete [NAME]

No puedes eliminar la configuración activa. Usa gcloud config configurations activate si es necesario para cambiar a otra configuración antes de eliminarla.

Siguientes pasos