diff --git a/.gitignore b/.gitignore index d8237a83ad44..cd502da93be4 100644 --- a/.gitignore +++ b/.gitignore @@ -34,3 +34,6 @@ docs/ gcloud-java-wheels/ src/test/resources/gcd-head.zip src/test/resources/gcd-v1beta2-rev1-2.1.1.zip + +# API key file containing value of GOOGLE_API_KEY for integration tests +api_key diff --git a/.travis.yml b/.travis.yml index 2093581ee6db..58b2d2621b76 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,30 +1,31 @@ language: java matrix: include: - - os: linux - jdk: oraclejdk8 - - os: linux - jdk: oraclejdk7 - - os: linux - jdk: openjdk7 - - os: osx - # see travis issue https://github.com/travis-ci/travis-ci/issues/2839 - env: JAVA_HOME=$(/usr/libexec/java_home) + - os: linux + jdk: oraclejdk8 + - os: linux + jdk: oraclejdk7 + - os: linux + jdk: openjdk7 + - os: osx + env: JAVA_HOME=$(/usr/libexec/java_home) before_install: - mvn clean - git clone -b travis `git config --get remote.origin.url` target/travis - cp target/travis/settings.xml ~/.m2/settings.xml - cp target/travis/logging.properties logging.properties -install: mvn install --quiet -Djava.util.logging.config.file=logging.properties -DskipTests=true -Dgpg.skip=true -script: +install: mvn install --quiet -Djava.util.logging.config.file=logging.properties -DskipTests=true + -Dgpg.skip=true +script: - travis_wait 60 utilities/verify.sh after_success: - utilities/after_success.sh env: global: - - secure: "IvdIao/ZBKZ7KcMdbnbpPH5dyujVnr1PAlE9hV+Nu5YujloIDUqTFpSFXB+wnp0CLMlW2kBR6YBhh71mp5M2XSqf+PtWB3b+ts7oz1vwhfUI857P5lMBHapekkNJk874sMjPdAUIprRnRBmVBfZVLMrSDE7LKqnuHXZjSkDGFYk=" - - secure: "XCtBrBNHGL+c55erAzMGgfCbS7dXSAFrMqIQCiPD6ib9rde3G8aDMvsseY7jSO2ygspB4ubVr+WqNkC5yHMcNUQvkX/auNpSkJbzBFG/2lhC9NBvBAiFJZn5jmcVnQ19vgO2Zjd37B1NrIwT7sW49eVeG0zn/A+qRxWeagPy3SQ=" - - secure: "YBbdzseg5yDFpQIiMoc3P2BTmqef4o+KAvrLMEbobXjIkiglUQ7UHCoRWClX74fTKAwuC7JvK7o5xJGLnaY43jJADXrGtE8/d44HNJaieE67mNosDYtOiA0iI2uIRFCAnXJCZ8f/iHx2xVMHMNWlwyoil4IUcjj+D7FRcsT5alE=" - - secure: "Od7BwllgFXVfzFe8ooTNm05TR+Xd5QjHW0oqhU8vclaQs2oX4e0eNIsebXQfLi3xDgd1pz5uUQC/Z4S0NqACwyUuUvPdGYYmRPTR7Dh8HgGJ4ojSdN3RwaHsxUqG7Ajts9rIHOtRpY28xOChVRNX0Z7eAPlvxYU4Ed2ZEo356r0=" - - secure: "ROxa8HHuba+Dfixljq6poW1+Uwv8EaZUtTTTB7KEtAHJRN8rwoNS4TC0U0PEHcYAL+ivxP3zIfWOCoWreJGoa+V8y9BtLSuamUj/SSsuoHRdJjq5BmcHI/77P11HAzCH6Ul/GxsRB52/IRHwJyfKkh8XUMVSsCl7AG4CKUgt63Y=" - - secure: "MKZ3y6IYp3Z67T+BO4Brw+my8sRMSMdWWgvUcyBpwQZ64w7ccHJCce4W8WHCPNko/eczHHCJELPG28VNyPTWIV/Jt2ZJ6L9qLCjsQpDPOdJdDaAKc9Df4sm8fB0FBiPVDwMYPQF1/Sy2gK7FZf0YR3LOeoyzswRgmj5bQMdVEeU=" + - secure: IvdIao/ZBKZ7KcMdbnbpPH5dyujVnr1PAlE9hV+Nu5YujloIDUqTFpSFXB+wnp0CLMlW2kBR6YBhh71mp5M2XSqf+PtWB3b+ts7oz1vwhfUI857P5lMBHapekkNJk874sMjPdAUIprRnRBmVBfZVLMrSDE7LKqnuHXZjSkDGFYk= + - secure: XCtBrBNHGL+c55erAzMGgfCbS7dXSAFrMqIQCiPD6ib9rde3G8aDMvsseY7jSO2ygspB4ubVr+WqNkC5yHMcNUQvkX/auNpSkJbzBFG/2lhC9NBvBAiFJZn5jmcVnQ19vgO2Zjd37B1NrIwT7sW49eVeG0zn/A+qRxWeagPy3SQ= + - secure: YBbdzseg5yDFpQIiMoc3P2BTmqef4o+KAvrLMEbobXjIkiglUQ7UHCoRWClX74fTKAwuC7JvK7o5xJGLnaY43jJADXrGtE8/d44HNJaieE67mNosDYtOiA0iI2uIRFCAnXJCZ8f/iHx2xVMHMNWlwyoil4IUcjj+D7FRcsT5alE= + - secure: Od7BwllgFXVfzFe8ooTNm05TR+Xd5QjHW0oqhU8vclaQs2oX4e0eNIsebXQfLi3xDgd1pz5uUQC/Z4S0NqACwyUuUvPdGYYmRPTR7Dh8HgGJ4ojSdN3RwaHsxUqG7Ajts9rIHOtRpY28xOChVRNX0Z7eAPlvxYU4Ed2ZEo356r0= + - secure: ROxa8HHuba+Dfixljq6poW1+Uwv8EaZUtTTTB7KEtAHJRN8rwoNS4TC0U0PEHcYAL+ivxP3zIfWOCoWreJGoa+V8y9BtLSuamUj/SSsuoHRdJjq5BmcHI/77P11HAzCH6Ul/GxsRB52/IRHwJyfKkh8XUMVSsCl7AG4CKUgt63Y= + - secure: MKZ3y6IYp3Z67T+BO4Brw+my8sRMSMdWWgvUcyBpwQZ64w7ccHJCce4W8WHCPNko/eczHHCJELPG28VNyPTWIV/Jt2ZJ6L9qLCjsQpDPOdJdDaAKc9Df4sm8fB0FBiPVDwMYPQF1/Sy2gK7FZf0YR3LOeoyzswRgmj5bQMdVEeU= + - secure: QlUWsbFDH89PrCC9WZxjON4cylTKBUg7zoYoQiTw90+FCvokaas4PaXDPVmzY1AxPv/ZQWSrcMgLhz43GASD8Ty96bOIKBB8tO6k0FVzff9r9bpiHssNiW0kDp657BFON4UWG75T6wJxKp4jsttvLfhBFMBLKg+fpYlKnaOPqDc= diff --git a/appveyor.yml b/appveyor.yml index fc32b35163c7..f11a41a3c2b4 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -18,8 +18,10 @@ environment: - JAVA_HOME: C:\Program Files\Java\jdk1.7.0 GOOGLE_CLOUD_PROJECT: secure: hbX+cAXrU588+iTMKyzGOQ== - SECRET: - secure: P4H6q90j3t0GC527rKUrpMzYs1z4aqzMh7pfNVqr2ZIJB8H07oeaD0zlosK8An15VQw7q5WTWImiU+yzX1aErct+k2uIah0iArGuEcrKOtQV/4JD10P7QHPsSMXdDXFzbDXsDi6Wf4UDQH7tFGPNU+VrCcXPMfkIlMkYg5tD10TktjdCEJ6YNw0J6SldFeDHDyBkVbmP6SAiQTpqjqO3NDI8i15mH84CWNT90khz4t8Wnhyvnv+J3u89w9Lp/AFoJfkrK2fjDUhR3K1flyG689Skyng2NCSF5wZcq5IPGMRqR+18js4MykeybPVNmEtBBZh+rzPey42oxtQPIX9I6KwPfkXlu2tXuPcbPCpHH5Y= + CREDENTIALS_SECRET: + secure: P4H6q90j3t0GC527rKUrpMzYs1z4aqzMh7pfNVqr2ZIJB8H07oeaD0zlosK8An15VQw7q5WTWImiU+yzX1aErct+k2uIah0iArGuEcrKOtQV/4JD10P7QHPsSMXdDXFzbDXsDi6Wf4UDQH7tFGPNU+VrCcXPMfkIlMkYg5tD10TktjdCEJ6YNw0J6SldFeDHDyBkVbmP6SAiQTpqjqO3NDI8i15mH84CWNT90khz4t8Wnhyvnv+J3u89w9Lp/AFoJfkrK2fjDUhR3K1flyG689Skyng2NCSF5wZcq5IPGMRqR+18js4MykeybPVNmEtBBZh+rzPey42oxtQPIX9I6KwPfkXlu2tXuPcbPCpHH5Y= + API_KEY_SECRET: + secure: tlK82v6dlvXT76+w9PNmdf/oABZbzCdiA7JNLE+iUfQ= # install required tools (maven, secure-file, encrypted files) install: @@ -27,9 +29,12 @@ install: - cmd: echo %M2_HOME% - ps: $origin = git config --get remote.origin.url; git clone --quiet -b appveyor $origin appveyor - cmd: nuget install secure-file -ExcludeVersion - - cmd: IF DEFINED SECRET (secure-file\tools\secure-file -decrypt appveyor\key.json.enc -secret %SECRET% -out appveyor\key.json) - - cmd: IF DEFINED SECRET (SET GOOGLE_APPLICATION_CREDENTIALS=%APPVEYOR_BUILD_FOLDER%\appveyor\key.json) - - cmd: ECHO %GOOGLE_APPLICATION_CREDENTIALS% + - cmd: IF DEFINED CREDENTIALS_SECRET (secure-file\tools\secure-file -decrypt appveyor\key.json.enc -secret %CREDENTIALS_SECRET% -out appveyor\key.json) + - cmd: IF DEFINED CREDENTIALS_SECRET (SET GOOGLE_APPLICATION_CREDENTIALS=%APPVEYOR_BUILD_FOLDER%\appveyor\key.json) + - cmd: ECHO GOOGLE_APPLICATION_CREDENTIALS=%GOOGLE_APPLICATION_CREDENTIALS% + - cmd: IF DEFINED API_KEY_SECRET (secure-file\tools\secure-file -decrypt appveyor\api_key.enc -secret %API_KEY_SECRET% -out appveyor\api_key) + - cmd: IF DEFINED API_KEY_SECRET (SET /P GOOGLE_API_KEY=<%APPVEYOR_BUILD_FOLDER%\appveyor\api_key) + - cmd: ECHO GOOGLE_API_KEY defined # build and install artifacts build_script: diff --git a/utilities/integration_test_env.sh b/utilities/integration_test_env.sh index a1bebe4dcb69..41e0d9a73e81 100755 --- a/utilities/integration_test_env.sh +++ b/utilities/integration_test_env.sh @@ -1,3 +1,4 @@ # Export test env variables export GCLOUD_PROJECT="gcloud-devel" export GOOGLE_APPLICATION_CREDENTIALS=$TRAVIS_BUILD_DIR/signing-tools/gcloud-devel-travis.json +export GOOGLE_API_KEY=$(< $TRAVIS_BUILD_DIR/signing-tools/api_key) diff --git a/utilities/verify.sh b/utilities/verify.sh index db233405ed41..263db299f076 100755 --- a/utilities/verify.sh +++ b/utilities/verify.sh @@ -11,6 +11,7 @@ if [ "${TRAVIS_PULL_REQUEST}" == "false" ]; then mkdir $TRAVIS_BUILD_DIR/signing-tools chmod 700 $TRAVIS_BUILD_DIR/signing-tools tar xvf $TRAVIS_BUILD_DIR/signing-tools.tar -C $TRAVIS_BUILD_DIR/signing-tools + echo $api_key_password | gpg --passphrase-fd 0 target/travis/api_key.gpg --output $TRAVIS_BUILD_DIR/signing-tools/api_key else # Skip integration tests when testing pull requests. mvn_opts+=" -DskipITs"