From 1d5a2f42b2ce88b8269b22561d983130c4846698 Mon Sep 17 00:00:00 2001 From: Eric Arellano Date: Wed, 16 Jan 2019 23:41:16 -0700 Subject: [PATCH] Hotfix for #6981 breaking release.sh (#7091) ## Problem #6981 led to the `Deploy unstable multiplatform pants.pex` shard failing consistently. The error can be reproduced locally via `./build-support/bin/release.sh -p`. The error message, however, is not very descriptive, even with `set -x` and `PANTS_VERBOSE=9`. ## Solution The likely culprit is removing `osx_image: xcode8` from the `OSX build wheels` shard. We had this hardcoded before #7091 for a reason, and removing it is probably what messed things up. The removal was not intentional, merely an oversight. Also, this changes the wheel shards to not have py2 vs py3 setups, as they don't use a PEX so the distinction is not meaningful at the moment. ## Result The result *cannot* be verified until being merged into master. This is because Travis never allows the `deploy` stage to happen from pull requests, as it's a security concern. --- .travis.yml | 44 ++++++------------------ build-support/travis/travis.yml.mustache | 44 ++++++------------------ 2 files changed, 20 insertions(+), 68 deletions(-) diff --git a/.travis.yml b/.travis.yml index b2d20898c93..22e8c17d468 100644 --- a/.travis.yml +++ b/.travis.yml @@ -321,46 +321,30 @@ py3_osx_build_engine: &py3_osx_build_engine # ------------------------------------------------------------------------- base_build_wheels: &base_build_wheels + stage: *test env: - &base_build_wheels_env RUN_PANTS_FROM_PEX=1 PREPARE_DEPLOY=1 script: - ./build-support/bin/release.sh -n -py2_linux_build_wheels: &py2_linux_build_wheels +linux_build_wheels: &linux_build_wheels <<: *py2_linux_test_config <<: *base_build_wheels - name: "Build Linux wheels (Py2 PEX)" + name: "Build Linux wheels (No PEX)" env: - *py2_linux_test_config_env - *base_build_wheels_env - - CACHE_NAME=linuxwheelsbuild.py2 + - CACHE_NAME=linuxwheelsbuild -py3_linux_build_wheels: &py3_linux_build_wheels - <<: *py3_linux_test_config - <<: *base_build_wheels - name: "Build Linux wheels (Py3 PEX)" - env: - - *py3_linux_test_config_env - - *base_build_wheels_env - - CACHE_NAME=linuxwheelsbuild.py3 - -py2_osx_build_wheels: &py2_osx_build_wheels +osx_build_wheels: &osx_build_wheels <<: *py2_osx_test_config <<: *base_build_wheels - name: "Build OSX wheels (Py2 PEX)" + name: "Build OSX wheels (No PEX)" + osx_image: xcode8 env: - *py2_osx_test_config_env - *base_build_wheels_env - - CACHE_NAME=osxwheelsbuild.py2 - -py3_osx_build_wheels: &py3_osx_build_wheels - <<: *py3_osx_test_config - <<: *base_build_wheels - name: "Build OSX wheels (Py3 PEX)" - env: - - *py3_osx_test_config_env - - *base_build_wheels_env - - CACHE_NAME=osxwheelsbuild.py3 + - CACHE_NAME=osxwheelsbuild # ------------------------------------------------------------------------- # OSX sanity checks @@ -577,16 +561,8 @@ matrix: - <<: *py2_osx_build_engine - <<: *py3_osx_build_engine - # TODO(6450): add support for Py3 in the release script. This can't be done until - # Pants is ready to be built and released as a Py3 wheel. - - <<: *py2_linux_build_wheels - stage: *test - # - <<: *py3_linux_build_wheels - - # TODO(6450): see above about adding support for Py3 in release script. - - <<: *py2_osx_build_wheels - stage: *test - # - <<: *py3_osx_build_wheels + - <<: *linux_build_wheels + - <<: *osx_build_wheels - <<: *py2_osx_10_12_sanity_check - <<: *py3_osx_10_12_sanity_check diff --git a/build-support/travis/travis.yml.mustache b/build-support/travis/travis.yml.mustache index 58ba3677823..f424c148b09 100644 --- a/build-support/travis/travis.yml.mustache +++ b/build-support/travis/travis.yml.mustache @@ -300,46 +300,30 @@ py3_osx_build_engine: &py3_osx_build_engine # ------------------------------------------------------------------------- base_build_wheels: &base_build_wheels + stage: *test env: - &base_build_wheels_env RUN_PANTS_FROM_PEX=1 PREPARE_DEPLOY=1 script: - ./build-support/bin/release.sh -n -py2_linux_build_wheels: &py2_linux_build_wheels +linux_build_wheels: &linux_build_wheels <<: *py2_linux_test_config <<: *base_build_wheels - name: "Build Linux wheels (Py2 PEX)" + name: "Build Linux wheels (No PEX)" env: - *py2_linux_test_config_env - *base_build_wheels_env - - CACHE_NAME=linuxwheelsbuild.py2 + - CACHE_NAME=linuxwheelsbuild -py3_linux_build_wheels: &py3_linux_build_wheels - <<: *py3_linux_test_config - <<: *base_build_wheels - name: "Build Linux wheels (Py3 PEX)" - env: - - *py3_linux_test_config_env - - *base_build_wheels_env - - CACHE_NAME=linuxwheelsbuild.py3 - -py2_osx_build_wheels: &py2_osx_build_wheels +osx_build_wheels: &osx_build_wheels <<: *py2_osx_test_config <<: *base_build_wheels - name: "Build OSX wheels (Py2 PEX)" + name: "Build OSX wheels (No PEX)" + osx_image: xcode8 env: - *py2_osx_test_config_env - *base_build_wheels_env - - CACHE_NAME=osxwheelsbuild.py2 - -py3_osx_build_wheels: &py3_osx_build_wheels - <<: *py3_osx_test_config - <<: *base_build_wheels - name: "Build OSX wheels (Py3 PEX)" - env: - - *py3_osx_test_config_env - - *base_build_wheels_env - - CACHE_NAME=osxwheelsbuild.py3 + - CACHE_NAME=osxwheelsbuild # ------------------------------------------------------------------------- # OSX sanity checks @@ -556,16 +540,8 @@ matrix: - <<: *py2_osx_build_engine - <<: *py3_osx_build_engine - # TODO(6450): add support for Py3 in the release script. This can't be done until - # Pants is ready to be built and released as a Py3 wheel. - - <<: *py2_linux_build_wheels - stage: *test - # - <<: *py3_linux_build_wheels - - # TODO(6450): see above about adding support for Py3 in release script. - - <<: *py2_osx_build_wheels - stage: *test - # - <<: *py3_osx_build_wheels + - <<: *linux_build_wheels + - <<: *osx_build_wheels - <<: *py2_osx_10_12_sanity_check - <<: *py3_osx_10_12_sanity_check