Administrar las configuraciones de la CLI de gcloud

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

Las propiedades que se almacenan habitualmente en las configuraciones incluyen la zona predeterminada de Compute Engine, el nivel de detalle, los informes de uso, el ID del proyecto y una cuenta de usuario o servicio activa. Las configuraciones permiten definir y habilitar estas y otras opciones de configuración en conjunto.

Las configuraciones se almacenan en el directorio de configuración de usuario (normalmente ~/.config/gcloud en macOS y Linux, o %APPDATA%\gcloud en Windows). Puede encontrar la ubicación del 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, tenga en cuenta que el directorio de configuración debe tener permisos de escritura. Sin embargo, si usa Cloud Shell, las preferencias de la CLI de gcloud se almacenan en una tmp temporal, configurada solo para la pestaña actual de Cloud Shell, y no se mantienen entre sesiones.

Si tiene varias configuraciones, puede alternar entre ellas o ejecutar comandos con una configuración específica (con la opción --configuration ). Para obtener más información sobre cómo alternar entre configuraciones, consulte la sección "Activación de configuraciones" más adelante.

Para leer acerca de 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), ejecute gcloud topic configurations .

Configuración predeterminada

La CLI de gcloud inicia con una única configuración llamada default . Puede configurar las propiedades de su configuración ejecutando el comando gcloud init o directamente gcloud config set .

Por ejemplo, para deshabilitar la solicitud de scripts, ejecute:

gcloud config set disable_prompts true

Múltiples configuraciones

La configuración default única es adecuada para muchos casos de uso. Sin embargo, también puede crear configuraciones adicionales y alternarlas según sea necesario mediante gcloud config configurations activate . La configuración default inicial no tiene nada de especial; se crea para su comodidad. Puede asignarle el nombre que desee, así como a cualquier configuración adicional.

Las configuraciones múltiples son útiles si desea:

  • Utilice varios proyectos : puede crear una configuración independiente para cada proyecto y alternar entre ellos según sea necesario.
  • Utilice múltiples cuentas de autorización
  • Realizar tareas generalmente independientes : por ejemplo, puede usar una configuración para trabajar en una aplicación de App Engine en un proyecto y administrar instancias de Compute Engine no relacionadas en otro proyecto.

Creando una configuración

Para crear una configuración, ejecute gcloud config configurations create :

gcloud config configurations create [NAME]

Debe activar la nueva configuración después de la creación para poder utilizarla.

Activar una configuración

Solo una de tus múltiples configuraciones puede estar activa en un momento dado. La configuración activa es aquella cuyas propiedades determinarán el comportamiento de la CLI de gcloud.

Para activar una nueva configuración o cambiar a una nueva configuración activa, ejecute: gcloud config configurations activate :

gcloud config configurations activate [NAME]

gcloud config list siempre le mostrará las propiedades en su configuración activa.

Para cambiar la configuración activa para una única invocación de comando, puede usar el indicador --configuration en cualquier comando CLI de gcloud:

gcloud auth list --configuration=[CONFIGURATION_NAME]

Para cambiar la configuración activa de todos los comandos en su terminal actual, puede establecer la variable de entorno CLOUDSDK_ACTIVE_CONFIG_NAME con el nombre de la configuración que desea utilizar.

Automatizar el cambio de configuración

Para facilitar el cambio de configuración, puede usar herramientas como direnv y ondir para cambiar automáticamente entre configuraciones al cambiar de directorio de trabajo. Una forma de lograrlo es configurar las variables de entorno necesarias (como CLOUDSDK_ACTIVE_CONFIG_NAME ) en el archivo .envrc del directorio raíz de su proyecto.

Configuraciones de listado

Para enumerar las configuraciones en su instalación de gcloud CLI, ejecute gcloud config configurations list :

gcloud config configurations list

La CLI de gcloud enumera las configuraciones y muestra qué configuración 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

Configuración de propiedades de configuración

Para establecer y desestablecer las propiedades en la configuración activa, ejecute gcloud config set y gcloud config unset :

gcloud config set project [PROJECT]

gcloud config unset project

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

CLOUDSDK_CORE_PROJECT=[YOUR_PROJECT_NAME]

CLOUDSDK_COMPUTE_ZONE=[YOUR_ZONE_NAME]

Visualización de las propiedades de configuración

Para ver las propiedades de una configuración, ejecute: gcloud config configurations describe :

gcloud config configurations describe [NAME]

O bien, para ver las propiedades en 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, ejecute: gcloud config configurations delete :

gcloud config configurations delete [NAME]

No se puede eliminar la configuración activa. Si es necesario, utilice gcloud config configurations activate para cambiar a otra configuración antes de eliminarla.

¿Qué sigue?