Google Cloud如何使用环境变量CLOUDSDK_CORE_PROJECT设置项目

时间:2020-07-24 18:21:05

标签: ruby google-cloud-platform google-cloud-sdk

当我运行gcloud app deploy时,我收到消息:

ERROR: (gcloud.app.deploy) The required property [project] is not currently set.
You may set it for your current workspace by running:

  $ gcloud config set project VALUE

or it can be set temporarily by the environment variable [CLOUDSDK_CORE_PROJECT]

在当前工作区中设置项目导致我部署了错误的应用程序,因此我不想再次这样做。我想尝试使用上面列出的环境变量选项进行部署。我该怎么做呢?使用CLOUDSDK_CORE_PROJECT的部署语法是什么?我以为这将来自我的app.yaml,但尚未生效。

3 个答案:

答案 0 :(得分:2)

您应该能够将项目作为app deploy命令的一部分传递:

gcloud app deploy ~/my_app/app.yaml --project=PROJECT

请看Documentation中的示例。

答案 1 :(得分:2)

您应该使用 projectID 在您的项目中配置它。

gcloud config set project <PROJECT_ID>

您可以在 GCP 帐户中找到您的 projectID。 enter image description here

答案 2 :(得分:1)

我最近在之前工作正常的工作中收到了相同的错误消息。
旧:

# Deploy template
.deploy_template: &deploy_definition
  image: google/cloud-sdk
  stage: deploy
  script:
    - echo $GOOGLE_KEY > key.json
    - gcloud auth activate-service-account --key-file key.json
    - gcloud config set compute/zone $GC_REGION
    - gcloud config set project $GC_PROJECT
    - gcloud container clusters get-credentials $GC_XXX_CLUSTER
    - kubectl set image deployment/XXXXXX --record

新:

# Deploy template
.deploy_template: &deploy_definition
  image: google/cloud-sdk
  stage: deploy
  script:
    - echo $GOOGLE_KEY > key.json
    - gcloud auth activate-service-account --key-file key.json
    - gcloud config set project $GC_PROJECT
    - gcloud config set compute/zone $GC_REGION
    - gcloud container clusters get-credentials $GC_XXX_CLUSTER
    - kubectl set image deployment/XXXXXX --record

我只是改变了 compute/zone 的顺序,它和以前一样工作。