How to install Google Cloud SDK on Travis?

I tried installing the Google Cloud SDK on Travis with the following .travis.yml

 sudo: required language: go - curl https://sdk.cloud.google.com | bash; 

My attempt is inspired by this guide from Google: https://cloud.google.com/solutions/continuous-delivery-with-travis-ci

Unfortunately, I get this output on 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): 

Travis waits 10 minutes and then completes the assembly. It looks like it is waiting for the installation directory.

How to install Google Cloud SDK on Travis?

+5
source share
1 answer

You are facing this problem because there is no interaction on Travis CI. Therefore, the installation of the script is blocked waiting for input, and Travis CI kills the assembly after 10 minutes.

The trick is to turn off the hints when installing the Google Cloud SDK. This can be done by setting the environment variable CLOUDSDK_CORE_DISABLE_PROMPTS to 1 .

Here is a sample recipe to add to your .travis.yml file (including caching it for subsequent subsequent builds):

 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 

Hope this helps!

+12
source

All Articles