diff options
author | Bob Summerwill <bob@summerwill.net> | 2016-08-02 13:04:56 +0800 |
---|---|---|
committer | Bob Summerwill <bob@summerwill.net> | 2016-08-02 13:04:56 +0800 |
commit | 46be8bcda83b8a51823845acb36cd18f27fff9cc (patch) | |
tree | db37618722ea2bed708ea7611275e8d95a388d66 | |
parent | 85a61fe886c2d99d397bf30cc01d971558130287 (diff) | |
download | dexon-solidity-46be8bcda83b8a51823845acb36cd18f27fff9cc.tar.gz dexon-solidity-46be8bcda83b8a51823845acb36cd18f27fff9cc.tar.zst dexon-solidity-46be8bcda83b8a51823845acb36cd18f27fff9cc.zip |
Constraint Emscripten publish step to Ubuntu runs.
More detailed comments for public step and for unit-test retry logic.
Reordered caching steps alphabetically.
-rw-r--r-- | .travis.yml | 42 | ||||
-rwxr-xr-x | scripts/release_emscripten.sh | 33 |
2 files changed, 58 insertions, 17 deletions
diff --git a/.travis.yml b/.travis.yml index 2ec5bf46..1ee16333 100644 --- a/.travis.yml +++ b/.travis.yml @@ -68,12 +68,11 @@ git: cache: ccache: true directories: + - cryptopp + - boost_1_57_0 - build - build-emscripten - - boost_1_57_0 - jsoncpp - - cryptopp - install: - ./scripts/install_deps.sh @@ -87,13 +86,34 @@ before_script: && ./scripts/release.sh $ZIP_SUFFIX script: # There are a variety of reliability issues with the Solidity unit-tests at the time of - # writing, so we're actually running them 3 times in a row, to try to flush all of these - # issues out as quickly as possible. See https://github.com/ethereum/solidity/issues/769 + # writing (especially on macOS), so within TravisCI we will try to run the unit-tests + # up to 3 times before giving up and declaring the tests as broken. + # + # We should aim to remove this "retry logic" as soon as we can, because it is a + # band-aid for issues which need solving at their root. Some of those issues will be + # in Solidity's RPC setup and some will be in 'eth'. It seems unlikely that Solidity + # itself is broken from the failure messages which we are seeing. + # + # More details on known issues at https://github.com/ethereum/solidity/issues/769 - cd $TRAVIS_BUILD_DIR && (./scripts/tests.sh || ./scripts/tests.sh || ./scripts/tests.sh) env: global: - ENCRYPTION_LABEL="296c219a3f41" +# This is the deploy target for the Emscripten build. +# It publishes the JS file which was compiled as part of the earlier 'build_emscripten.sh' +# step to https://github.com/ethereum/solc-bin/tree/gh-pages/bin. +# Both the build and deploy steps for Emscripten are only run within the Ubuntu +# configurations (not for macOS). That is controlled by conditionals within the bash +# scripts because TravisCI doesn't provide much in the way of conditional logic. + +deploy: + provider: script + script: scripts/release_emscripten.sh + skip_cleanup: true + on: + branch: develop + # This is the deploy target for the native build (Linux and macOS) # which generates development ZIPs per commit. We are in agreement # that this is probably noisy overkill, so will want to renable this @@ -110,15 +130,3 @@ env: # repo: ethereum/solidity # branch: develop -# This is the deploy target for the Emscripten build, which publishes -# generated JS for particular Solidity commits into -# https://github.com/ethereum/solc-bin/tree/gh-pages/bin -# Disabled, but can be renamed when we have the "standalone" changes -# published back into the 'develop' branch. -# -deploy: - provider: script - script: scripts/travis-emscripten/publish_binary.sh - skip_cleanup: true - on: - branch: develop diff --git a/scripts/release_emscripten.sh b/scripts/release_emscripten.sh new file mode 100755 index 00000000..8db9a049 --- /dev/null +++ b/scripts/release_emscripten.sh @@ -0,0 +1,33 @@ +#!/usr/bin/env bash + +#------------------------------------------------------------------------------ +# Bash script which calls the Emscripten "publish binary" script on Ubuntu +# and does nothing on macOS. We should probably merge these two scripts in +# the near future. +# +# The documentation for solidity is hosted at: +# +# https://solidity.readthedocs.org +# +# ------------------------------------------------------------------------------ +# This file is part of solidity. +# +# solidity is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# solidity is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with solidity. If not, see <http://www.gnu.org/licenses/> +# +# (c) 2016 solidity contributors. +#------------------------------------------------------------------------------ + +if [[ "$OSTYPE" != "darwin"* ]]; then + ./scripts/travis-emscripten/publish_binary.sh +fi |