Cómo cambiar el proyecto en GCP usando los comandos de la CLI

223

¿Cómo puedo cambiar el proyecto actual en ejecución a otro proyecto en la cuenta GCP ( Google Cloud Platform ) usando comandos cli que no sean gcloud initmanualmente?

$gcloud projects listenumerará los proyectos que se ejecutan en mi cuenta. Quiero cambiar el proyecto actual a cualquier otro proyecto de la lista usando un comando cli.

Ebin Davis
fuente

Respuestas:

446
gcloud config set project my-project

También puede establecer la variable de entorno $CLOUDSDK_CORE_PROJECT.

Zachary Newman
fuente
58
Ayuda a obtener los nombres de los proyectos con:gcloud projects list
sww314
16
Y para verificar qué proyecto está actualmente activo, usegcloud config get-value project
Chris Halcrow
44
Lo curioso es que solo cambio mis proyectos una o dos veces al mes. Entonces, cada vez que tengo que buscarlo en Google y terminar con esta respuesta nuevamente e intentar darle otro
voto positivo
80

Asegúrese de estar autenticado con la cuenta correcta:

gcloud auth list
* account 1
  account 2

Cambie a la cuenta del proyecto si no:

gcloud config set account `ACCOUNT`

Dependiendo de la cuenta, la lista de proyectos será diferente:

gcloud projects list

- project 1
- project 2...

Cambiar al proyecto previsto:

gcloud config set project `PROJECT ID`
Lukas Lukac
fuente
24

En realidad, debe usar la ID del proyecto y no el nombre, como implican las otras respuestas.

Ejemplo:

gcloud projects list

PROJECT_ID              NAME                  PROJECT_NUMBER
something-staging-2587  something-staging     804012817122
something-production-24 something-production  392181605736

Luego:

gcloud config set project something-staging-2587

También es lo mismo cuando se usa solo la --projectbandera con uno de los comandos:

gcloud --project something-staging-2587 compute ssh my_vm

Si usa el nombre, lo aceptará silenciosamente, pero siempre obtendrá problemas de conexión o permisos cuando intente implementar algo en el proyecto.

devius
fuente
10

La respuesta seleccionada no ayuda si no conoce el nombre de los proyectos que ya ha agregado gcloud. Mi flujo es enumerar los proyectos activos, luego cambiar al que quiero.

gcloud config configurations list

gcloud config configurations activate [NAME]
donde [NOMBRE] aparece en la lista del comando anterior.

Scott
fuente
6

Además, si está utilizando más de un proyecto y no desea establecer un proyecto global cada vez, puede usar la marca de selección de proyecto .

Por ejemplo: para conectar una máquina virtual, nombrada my_vmbajo un proyecto nombrado my_projecten Google Cloud Platform:

gcloud --project my_project compute ssh my_vm

De esta manera, puede trabajar con varios proyectos y cambiarlos fácilmente con solo poner la bandera del proyecto . Puede encontrar mucha más información sobre otros indicadores de GCP aquí .

alpay
fuente
4

Por lo que vale la pena si tiene más de un puñado de proyectos, lo que hago, use:

gcloud init

Esto enumerará todos sus proyectos y le dará la opción de cambiar la configuración actual del proyecto, agregar una nueva configuración de proyecto o cambiar:

Pick configuration to use:
 [1] Re-initialize this configuration [esqimo-preprod] with new settings
 [2] Create a new configuration
 [3] Switch to and re-initialize existing configuration: [default]
 [4] Switch to and re-initialize existing configuration: [project 1]
 [5] Switch to and re-initialize existing configuration: [project 2]
Please enter your numeric choice:

Siempre le pedirá que inicie sesión y muestre opciones para las diferentes cuentas de Google que pueda tener.

Dado que administro múltiples organizaciones y proyectos, este enfoque me permite simplemente cambiar entre ellos.

hoos
fuente
3

Prefiero los alias, y para cosas que pueden necesitar múltiples comandos, en función de las necesidades de su proyecto, prefiero las funciones ...

Ejemplo

function switchGCPProject() {
        gcloud config set project [Project Name]
        // if you are using GKE use the following
        gcloud config set container/cluster [Cluster Name]
        // if you are using GCE use the following
        gcloud config set compute/zone [Zone]
        gcloud config set compute/region [region]
        // if you are using GKE use the following
        gcloud container clusters get-credentials [cluster name] --zone [Zone] --project [project name]
        export GOOGLE_APPLICATION_CREDENTIALS=path-to-credentials.json
}
mamdouh alramadan
fuente
1

Compruebe los proyectos disponibles ejecutando: gcloud projects list. Esto le dará una lista de proyectos a los que puede acceder. Para cambiar entre los proyectos: gcloud config set project <project-id>.

Además, recomiendo verificar la configuración activa antes de realizar cualquier cambio en la configuración de gcloud. Puede hacerlo ejecutando:gcloud config list

PanwarS87
fuente
1

Podría ser que llego tarde para responder, pero este comando me hizo aprender mucho sobre gcloud SDK

gcloud alpha interactive

Es más fácil descubrir por sí mismo que lo necesitará gcloud config set project my-project.

Lo mejor es la complicación de la pestaña para que pueda ver la lista de proyectos presionando la pestaña dos veces.

confiq
fuente
1

Estoy publicando esta respuesta para brindarle información sobre las múltiples formas disponibles para que pueda cambiar el proyecto en GCP. También explicaré cuándo usar cada una de las siguientes opciones.


Opción 1: Cloud CLI - Establecer propiedad del proyecto en Cloud SDK en CLI

Use esta opción si desea ejecutar todos los comandos de Cloud CLI en un proyecto específico.

gcloud config set project <Project-ID>

Con esto, el proyecto seleccionado Cloud CLIcambiará y el proyecto seleccionado actualmente se resaltará en amarillo.

ingrese la descripción de la imagen aquí


Opción 2: CLI en la nube: establezca el indicador de ID de proyecto con la mayoría de los comandos

Use este comando si desea ejecutar comandos en múltiples proyectos. Por ejemplo: cree clústeres en un proyecto y use las mismas configuraciones para crear en otro proyecto. Use la siguiente bandera para cada comando.

--project <Project-ID>

Opción 3: CLI en la nube: inicialice las configuraciones en CLI

Esta opción se puede usar si necesita configuraciones separadas para diferentes proyectos / cuentas. Con esto, puede cambiar fácilmente entre configuraciones mediante el activatecomando. Por ejemplo: gcloud config configurations activate <congif-name>.

gcloud init

Opción 4: abra el nuevo Cloud Shell con su proyecto preferido

Esto es preferible si no le gusta trabajar con comandos CLI. Presione el PLUS +botón para una nueva pestaña. ingrese la descripción de la imagen aquí

Luego, seleccione su proyecto preferido.

ingrese la descripción de la imagen aquí

Keet Sugathadasa
fuente
0

Agrego alias a .bash_alaises para cambiar a un proyecto diferente.

alias switch_proj1="gcloud config set project ************"

Aquí hay un script para generar alias :) para todos los proyectos enumerados. Actualice switch_proj a alias de proyecto únicos que pueda recordar.

gcloud projects list | awk '{print "alias switch_proj=\"gcloud config set project " $1 "\""}'
Ravishankar Sivasubramaniam
fuente
0

Para actualizar su proyecto existente a otro proyecto, puede usar esta línea de comando:

Actualización de proyectos de gcloud PROJECT_ID --name = NAME

NOMBRE: será el nuevo nombre de su proyecto.

BackToReal
fuente
3
La pregunta es cómo cambiar el proyecto de trabajo actual a otro, no cómo cambiar el nombre del proyecto. Información valiosa pero no relacionada con la pregunta.
P.hunter
0

Verifique su proyecto ejecutando gcloud config list Luego gcloud config set "project name"

Amir ElGammal
fuente
0

Puedes probar: gcloud config set project [project_id]

Fabián García
fuente