如何在Travis上安装Google Cloud SDK?
问题描述:
我试图用以下.travis.yml
如何在Travis上安装Google Cloud SDK?
sudo: required
language: go
- curl https://sdk.cloud.google.com | bash;
上特拉维斯安装谷歌云SDK我试图通过这个指南来自谷歌的启发:https://cloud.google.com/solutions/continuous-delivery-with-travis-ci
不幸的是,我得到特拉维斯此输出:
$ 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):
特拉维斯等待10分钟,然后终止构建。它似乎正在等待安装目录。
如何在Travis上安装Google Cloud SDK?
答
您遇到了这个问题,因为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
希望这有助于!