如何在Travis上安装Google Cloud SDK?

use*_*776 7 travis-ci google-cloud-platform

我尝试使用以下内容在Travis上安装Google Cloud SDK .travis.yml

sudo: required

language: go

- curl https://sdk.cloud.google.com | bash;
Run Code Online (Sandbox Code Playgroud)

我的尝试受到Google指南的启发:https://cloud.google.com/solutions/continuous-delivery-with-travis-ci

不幸的是,我在Travis得到了这个输出:

$ curl https://sdk.cloud.google.com | bash;
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100   421    0   421    0     0  17820      0 --:--:-- --:--:-- --:--:-- 60142
Downloading Google Cloud SDK install script: https://dl.google.com/dl/cloudsdk/channels/rapid/install_google_cloud_sdk.bash
######################################################################## 100.0%
Running install script from: /tmp/tmp.uz8jP70e56/install_google_cloud_sdk.bash
which curl
curl -# -f https://dl.google.com/dl/cloudsdk/channels/rapid/google-cloud-sdk.tar.gz
######################################################################## 100.0%
Installation directory (this will create a google-cloud-sdk subdirectory) (/home/travis): 
Run Code Online (Sandbox Code Playgroud)

Travis等待10分钟,然后终止构建.好像在等待安装目录.

如何在Travis上安装Google Cloud SDK?

Dom*_*oin 22

您遇到此问题,因为Travis CI上无法进行交互.因此,安装脚本被阻止等待输入,Travis CI在10分钟后杀死构建.

诀窍是在安装Google Cloud SDK时禁用提示.这可以通过将CLOUDSDK_CORE_DISABLE_PROMPTS环境变量设置为来完成1.

这是放在.travis.yml文件中的示例配方(包括缓存它以便更快的后续构建):

cache:
  directories:
    - "$HOME/google-cloud-sdk/"
script:
  - gcloud version || true
  - if [ ! -d "$HOME/google-cloud-sdk/bin" ]; then rm -rf $HOME/google-cloud-sdk; export CLOUDSDK_CORE_DISABLE_PROMPTS=1; curl https://sdk.cloud.google.com | bash; fi
  # Add gcloud to $PATH
  - source /home/travis/google-cloud-sdk/path.bash.inc
  - gcloud version
Run Code Online (Sandbox Code Playgroud)

希望这可以帮助!