2016-07-28 17:34:32 +02:00
|
|
|
stages:
|
2016-11-04 06:45:26 +01:00
|
|
|
- test
|
2017-03-08 23:34:00 +01:00
|
|
|
- build
|
2018-08-26 00:44:08 +02:00
|
|
|
- publish
|
2018-10-02 01:03:58 +02:00
|
|
|
- optional
|
2018-08-26 00:44:08 +02:00
|
|
|
|
|
|
|
image: parity/rust:gitlab-ci
|
|
|
|
|
2016-07-28 17:34:32 +02:00
|
|
|
variables:
|
2018-08-26 00:44:08 +02:00
|
|
|
CI_SERVER_NAME: "GitLab CI"
|
2018-10-02 01:03:58 +02:00
|
|
|
CARGO_HOME: "${CI_PROJECT_DIR}/.cargo"
|
2018-08-26 00:44:08 +02:00
|
|
|
CARGO_TARGET: x86_64-unknown-linux-gnu
|
|
|
|
|
|
|
|
.releaseable_branches: # list of git refs for building GitLab artifacts (think "pre-release binaries")
|
|
|
|
only: &releaseable_branches
|
2018-10-10 14:51:36 +02:00
|
|
|
- stable
|
|
|
|
- beta
|
|
|
|
- tags
|
|
|
|
- schedules
|
2018-10-09 15:32:07 +02:00
|
|
|
|
2018-08-26 00:44:08 +02:00
|
|
|
|
|
|
|
.collect_artifacts: &collect_artifacts
|
2016-11-07 15:07:37 +01:00
|
|
|
artifacts:
|
2018-10-09 15:32:07 +02:00
|
|
|
name: "${CI_JOB_NAME}_${SCHEDULE_TAG:-${CI_COMMIT_REF_NAME}}"
|
2018-08-26 00:44:08 +02:00
|
|
|
when: on_success
|
|
|
|
expire_in: 1 mos
|
2016-11-07 15:07:37 +01:00
|
|
|
paths:
|
2018-08-26 00:44:08 +02:00
|
|
|
- artifacts/
|
|
|
|
|
2018-09-12 16:46:56 +02:00
|
|
|
.determine_version: &determine_version
|
|
|
|
- VERSION="$(sed -r -n '1,/^version/s/^version = "([^"]+)".*$/\1/p' Cargo.toml)"
|
|
|
|
- DATE_STR="$(date +%Y%m%d)"
|
|
|
|
- ID_SHORT="$(echo ${CI_COMMIT_SHA} | cut -c 1-7)"
|
2018-10-09 15:32:07 +02:00
|
|
|
- test "${SCHEDULE_TAG:-${CI_COMMIT_REF_NAME}}" = "nightly" && VERSION="${VERSION}-${ID_SHORT}-${DATE_STR}"
|
2018-09-12 16:46:56 +02:00
|
|
|
- export VERSION
|
|
|
|
- echo "Version = ${VERSION}"
|
|
|
|
|
2018-10-02 01:03:58 +02:00
|
|
|
test-linux:
|
2018-09-15 13:43:19 +02:00
|
|
|
stage: test
|
2018-10-01 12:55:17 +02:00
|
|
|
variables:
|
2018-10-02 01:03:58 +02:00
|
|
|
RUN_TESTS: all
|
2018-09-15 13:43:19 +02:00
|
|
|
script:
|
2018-10-02 01:03:58 +02:00
|
|
|
- scripts/gitlab/test-all.sh stable
|
2018-09-15 13:43:19 +02:00
|
|
|
tags:
|
|
|
|
- rust-stable
|
|
|
|
|
2018-11-29 10:57:49 +01:00
|
|
|
test-audit:
|
|
|
|
stage: test
|
|
|
|
script:
|
|
|
|
- scripts/gitlab/cargo-audit.sh
|
|
|
|
tags:
|
|
|
|
- rust-stable
|
|
|
|
|
2018-10-02 01:03:58 +02:00
|
|
|
build-linux:
|
|
|
|
stage: build
|
|
|
|
only: *releaseable_branches
|
2018-09-15 13:43:19 +02:00
|
|
|
script:
|
2018-10-02 01:03:58 +02:00
|
|
|
- scripts/gitlab/build-unix.sh
|
|
|
|
<<: *collect_artifacts
|
2018-09-15 13:43:19 +02:00
|
|
|
tags:
|
|
|
|
- rust-stable
|
|
|
|
|
2018-10-02 01:03:58 +02:00
|
|
|
build-darwin:
|
|
|
|
stage: build
|
|
|
|
only: *releaseable_branches
|
2018-09-14 15:55:14 +02:00
|
|
|
variables:
|
|
|
|
CARGO_TARGET: x86_64-apple-darwin
|
|
|
|
CC: gcc
|
|
|
|
CXX: g++
|
|
|
|
script:
|
2018-10-02 01:03:58 +02:00
|
|
|
- scripts/gitlab/build-unix.sh
|
2018-09-14 15:55:14 +02:00
|
|
|
tags:
|
2018-10-02 01:03:58 +02:00
|
|
|
- rust-osx
|
|
|
|
<<: *collect_artifacts
|
2018-09-14 15:55:14 +02:00
|
|
|
|
2018-10-02 01:03:58 +02:00
|
|
|
build-windows:
|
|
|
|
stage: build
|
|
|
|
only: *releaseable_branches
|
2018-09-14 15:55:14 +02:00
|
|
|
variables:
|
|
|
|
CARGO_TARGET: x86_64-pc-windows-msvc
|
|
|
|
script:
|
2018-10-02 01:03:58 +02:00
|
|
|
- sh scripts/gitlab/build-windows.sh
|
2018-09-14 15:55:14 +02:00
|
|
|
tags:
|
|
|
|
- rust-windows
|
2018-10-02 01:03:58 +02:00
|
|
|
<<: *collect_artifacts
|
2018-08-26 00:44:08 +02:00
|
|
|
|
2018-10-02 01:03:58 +02:00
|
|
|
publish-docker:
|
|
|
|
stage: publish
|
|
|
|
only: *releaseable_branches
|
|
|
|
cache: {}
|
|
|
|
dependencies:
|
|
|
|
- build-linux
|
|
|
|
tags:
|
|
|
|
- shell
|
2018-08-26 00:44:08 +02:00
|
|
|
script:
|
2018-10-02 01:03:58 +02:00
|
|
|
- scripts/gitlab/publish-docker.sh parity
|
2018-08-26 00:44:08 +02:00
|
|
|
|
beta backports v2.2.6 (#10113)
* version: bump beta to v2.2.6
* Update pwasm-utils to 0.6.1 (#10134)
* version: mark upgrade critical on kovan
* Identity fix (#10128)
* fix #10125
fix service transaction version detection if --identity is enabled, change test to match how --identity actually works
* fix wrong var
* get the index of v, not /
* idx, not idx.len()
* Update ethcore/sync/src/chain/propagator.rs
Co-Authored-By: joshua-mir <43032097+joshua-mir@users.noreply.github.com>
* Update ethcore/sync/src/chain/propagator.rs
Co-Authored-By: joshua-mir <43032097+joshua-mir@users.noreply.github.com>
* change version prefix to a const
* space
Co-Authored-By: joshua-mir <43032097+joshua-mir@users.noreply.github.com>
* [Hit return to continue]
* ethcore: update hardcoded headers for foundation
* ethcore: update hardcoded headers for ropsten
* ethcore: update hardcoded headers for kovan
* ethcore: use consistant formatting
* ethcore: restore spaces after colon in chain spec
* ethcore: fix bootnodes in chain specs
* ethcore: fix bootnodes in chain specs
* ethcore: enforce newline at the end of chainspecs
* Follow-up to #10105 (#10107)
* HF in POA Sokol (2019-01-04) (#10077)
* HF in POA Sokol (2019-01-04)
https://github.com/poanetwork/poa-chain-spec/pull/91
* Update POA Core bootnodes
* Autogen docs for the "Configuring Parity Ethereum" wiki page. (#10067)
* publish docs changes for autogen config docs
* Update publish-docs.sh
adding an environment variable so js knows not to download git master and just grab the local repo
* Update publish-docs.sh
made some changes making this unnecessary
* fix env variable
env variable passes to node properly now
* use yarn
* test pipeline, revert me
* fix test pipeline, revert me
* change runner tag
* change runner tag 2
* change runner tag
* global git config
* supress upload_files output
* Update .gitlab-ci.yml
reverting testing changes
* Replace tag if exists
Very unlikely to be important/useful
* Autogen docs for the "Configuring Parity Ethereum" wiki page. (#10067)
* publish docs changes for autogen config docs
* Update publish-docs.sh
adding an environment variable so js knows not to download git master and just grab the local repo
* Update publish-docs.sh
made some changes making this unnecessary
* fix env variable
env variable passes to node properly now
* use yarn
* test pipeline, revert me
* fix test pipeline, revert me
* change runner tag
* change runner tag 2
* change runner tag
* global git config
* supress upload_files output
* Update .gitlab-ci.yml
reverting testing changes
* Replace tag if exists
Very unlikely to be important/useful
* finality: dont require chain head to be in the chain (#10054)
* Fill transaction hash on ethGetLog of light client. (#9938)
* Fill transaction hash on ethGetLog of light client. This is enifficient
but we keep align with spec.
* Using better variables names.
* Expose old fast light get log as `parity_getLogsLight`.
* Update rpc/src/v1/helpers/light_fetch.rs
Fix indent.
Co-Authored-By: cheme <emericchevalier.pro@gmail.com>
* Factor common code between light_logs and logs.
* Remove useless check
* Rename parity light logs to 'parity_getLogsNoTransactionHash'.
Fix indent and extra white lines.
* Use vec instead of tree map to avoid inner function.
* better loop
* fix pubsub new_blocks notifications to include all blocks (#9987)
Fix: new blocks notifications sometimes missing in pubsub RPC
Implement new struct to pass to `new_blocks()` with extra parameter - `has_more_blocks_to_import`, which was previously used to determine whether the notification should be sent. Now it's up to each implementation to decide what to do.
Updated all implementations to behave as before, except `eth_pubsub`, which will send notification even when the queue is not empty.
Update tests.
* Revert part of 70a6db7
* HF in POA Core (2019-01-18) - Constantinople (#10155)
https://github.com/poanetwork/poa-chain-spec/pull/100
* ci: re-enable snap publishing (#10142)
* ci: enable snap publishing~
* ci: add publish snap script
* ci: add snapcraft skeleton
* ci: group export statements
* ci: enable snaps on pr branch
* ci: enable snaps on pr branch
* ci: set default BUILD_ARCH
* ci: enable snaps on pr branch
* ci: enable snaps on pr branch
* ci: add libdb to snap
* ci: reinitiate gitlabci
* ci: reinitiate publish-snap script
* ci: fix yaml syntax
* cargo/gitlab env vars
* debug, revert me
* version?
* debug vars
* vars
* vars fix
* vars fix
* revert
* Update scripts/gitlab/publish-snap.sh
Co-Authored-By: 5chdn <5chdn@users.noreply.github.com>
* ci: read track from cargo toml
* Make sure parent block is not in importing queue when importing ancient blocks (#10138)
* Make sure parent block is not in importing queue when importing ancient blocks
* Clear queue when an ancient import fails
* Lock only once in clear
* Add comments why queued check is needed
* Should push the value back to the queue
* Directly check in chain.read()
* Remove extra empty line
* Revert unused verification change
2019-01-09 15:15:57 +01:00
|
|
|
publish-snap:
|
|
|
|
stage: publish
|
|
|
|
only: *releaseable_branches
|
|
|
|
image: parity/snapcraft:gitlab-ci
|
|
|
|
variables:
|
|
|
|
BUILD_ARCH: amd64
|
|
|
|
cache: {}
|
|
|
|
before_script: *determine_version
|
|
|
|
dependencies:
|
|
|
|
- build-linux
|
|
|
|
tags:
|
|
|
|
- rust-stable
|
|
|
|
script:
|
|
|
|
- scripts/gitlab/publish-snap.sh
|
|
|
|
allow_failure: true
|
|
|
|
<<: *collect_artifacts
|
|
|
|
|
2018-10-02 01:03:58 +02:00
|
|
|
publish-awss3:
|
|
|
|
stage: publish
|
|
|
|
only: *releaseable_branches
|
|
|
|
cache: {}
|
|
|
|
dependencies:
|
|
|
|
- build-linux
|
|
|
|
- build-darwin
|
|
|
|
- build-windows
|
|
|
|
before_script: *determine_version
|
2018-08-26 00:44:08 +02:00
|
|
|
script:
|
2018-10-02 01:03:58 +02:00
|
|
|
- scripts/gitlab/publish-awss3.sh
|
|
|
|
tags:
|
|
|
|
- shell
|
2018-08-26 00:44:08 +02:00
|
|
|
|
2018-11-29 10:57:49 +01:00
|
|
|
publish-docs:
|
|
|
|
stage: publish
|
2018-10-02 01:03:58 +02:00
|
|
|
only:
|
|
|
|
- tags
|
2018-10-09 12:50:31 +02:00
|
|
|
except:
|
|
|
|
- nightly
|
2018-10-02 01:03:58 +02:00
|
|
|
cache: {}
|
2016-11-04 07:59:48 +01:00
|
|
|
script:
|
2018-11-29 10:57:49 +01:00
|
|
|
- scripts/gitlab/publish-docs.sh
|
2016-11-04 07:59:48 +01:00
|
|
|
tags:
|
beta backports v2.2.6 (#10113)
* version: bump beta to v2.2.6
* Update pwasm-utils to 0.6.1 (#10134)
* version: mark upgrade critical on kovan
* Identity fix (#10128)
* fix #10125
fix service transaction version detection if --identity is enabled, change test to match how --identity actually works
* fix wrong var
* get the index of v, not /
* idx, not idx.len()
* Update ethcore/sync/src/chain/propagator.rs
Co-Authored-By: joshua-mir <43032097+joshua-mir@users.noreply.github.com>
* Update ethcore/sync/src/chain/propagator.rs
Co-Authored-By: joshua-mir <43032097+joshua-mir@users.noreply.github.com>
* change version prefix to a const
* space
Co-Authored-By: joshua-mir <43032097+joshua-mir@users.noreply.github.com>
* [Hit return to continue]
* ethcore: update hardcoded headers for foundation
* ethcore: update hardcoded headers for ropsten
* ethcore: update hardcoded headers for kovan
* ethcore: use consistant formatting
* ethcore: restore spaces after colon in chain spec
* ethcore: fix bootnodes in chain specs
* ethcore: fix bootnodes in chain specs
* ethcore: enforce newline at the end of chainspecs
* Follow-up to #10105 (#10107)
* HF in POA Sokol (2019-01-04) (#10077)
* HF in POA Sokol (2019-01-04)
https://github.com/poanetwork/poa-chain-spec/pull/91
* Update POA Core bootnodes
* Autogen docs for the "Configuring Parity Ethereum" wiki page. (#10067)
* publish docs changes for autogen config docs
* Update publish-docs.sh
adding an environment variable so js knows not to download git master and just grab the local repo
* Update publish-docs.sh
made some changes making this unnecessary
* fix env variable
env variable passes to node properly now
* use yarn
* test pipeline, revert me
* fix test pipeline, revert me
* change runner tag
* change runner tag 2
* change runner tag
* global git config
* supress upload_files output
* Update .gitlab-ci.yml
reverting testing changes
* Replace tag if exists
Very unlikely to be important/useful
* Autogen docs for the "Configuring Parity Ethereum" wiki page. (#10067)
* publish docs changes for autogen config docs
* Update publish-docs.sh
adding an environment variable so js knows not to download git master and just grab the local repo
* Update publish-docs.sh
made some changes making this unnecessary
* fix env variable
env variable passes to node properly now
* use yarn
* test pipeline, revert me
* fix test pipeline, revert me
* change runner tag
* change runner tag 2
* change runner tag
* global git config
* supress upload_files output
* Update .gitlab-ci.yml
reverting testing changes
* Replace tag if exists
Very unlikely to be important/useful
* finality: dont require chain head to be in the chain (#10054)
* Fill transaction hash on ethGetLog of light client. (#9938)
* Fill transaction hash on ethGetLog of light client. This is enifficient
but we keep align with spec.
* Using better variables names.
* Expose old fast light get log as `parity_getLogsLight`.
* Update rpc/src/v1/helpers/light_fetch.rs
Fix indent.
Co-Authored-By: cheme <emericchevalier.pro@gmail.com>
* Factor common code between light_logs and logs.
* Remove useless check
* Rename parity light logs to 'parity_getLogsNoTransactionHash'.
Fix indent and extra white lines.
* Use vec instead of tree map to avoid inner function.
* better loop
* fix pubsub new_blocks notifications to include all blocks (#9987)
Fix: new blocks notifications sometimes missing in pubsub RPC
Implement new struct to pass to `new_blocks()` with extra parameter - `has_more_blocks_to_import`, which was previously used to determine whether the notification should be sent. Now it's up to each implementation to decide what to do.
Updated all implementations to behave as before, except `eth_pubsub`, which will send notification even when the queue is not empty.
Update tests.
* Revert part of 70a6db7
* HF in POA Core (2019-01-18) - Constantinople (#10155)
https://github.com/poanetwork/poa-chain-spec/pull/100
* ci: re-enable snap publishing (#10142)
* ci: enable snap publishing~
* ci: add publish snap script
* ci: add snapcraft skeleton
* ci: group export statements
* ci: enable snaps on pr branch
* ci: enable snaps on pr branch
* ci: set default BUILD_ARCH
* ci: enable snaps on pr branch
* ci: enable snaps on pr branch
* ci: add libdb to snap
* ci: reinitiate gitlabci
* ci: reinitiate publish-snap script
* ci: fix yaml syntax
* cargo/gitlab env vars
* debug, revert me
* version?
* debug vars
* vars
* vars fix
* vars fix
* revert
* Update scripts/gitlab/publish-snap.sh
Co-Authored-By: 5chdn <5chdn@users.noreply.github.com>
* ci: read track from cargo toml
* Make sure parent block is not in importing queue when importing ancient blocks (#10138)
* Make sure parent block is not in importing queue when importing ancient blocks
* Clear queue when an ancient import fails
* Lock only once in clear
* Add comments why queued check is needed
* Should push the value back to the queue
* Directly check in chain.read()
* Remove extra empty line
* Revert unused verification change
2019-01-09 15:15:57 +01:00
|
|
|
- linux-docker
|
2018-08-26 00:44:08 +02:00
|
|
|
|
version: mark 2.2.0 beta (#9820)
* version: mark 2.2.0 beta
* ci: remove failing tests for android, windows, and macos (#9788)
* ci: remove failing tests for android, windows, and macos
* ci: restore android build jobs
* Move state root verification before gas used (#9841)
* Classic.json Bootnode Update (#9828)
* fix: Update bootnodes list to only responsive nodes
* feat: Add more bootnodes to classic.json list
* feat: Add retested bootnodes
* Implement NoProof for json tests and update tests reference (replaces #9744) (#9814)
* Update test reference.
Block test are really not working so I disabled a few by commenting
directly in source.
* Move ethtest commit cursor.
* Implements 'NoProof' engine from https://github.com/ethereum/tests/issues/464 .
Since tests has been regenerated those one were failing on block
difficulty check.
Update ethereum/tests, waiting for cost fix (block test are still
commented).
* Update tests submodule reference to latest (all test passing except an
identified case).
Fix block reward of constantinople json.
* Restore broken test by using old json tests files.
* Use CanonNoSeal instead of a custom engine, still have to include some
additional tests code.
* Gas upper limit check in json_chain test was bad, moving the test to
verification, the test is running in `verify_header_param`.
Note that test was previously only for ethash, and now for any engine.
* Restore old behavior (gas uper limit only for ethash engine), at the
cost of an additional trait method.
* Proper rpc test fix.
* Update tests submodule, add SStore bug tests.
* Fix json issue tabulation.
Update tests submodule to latest master (lot of new sstore tests
passing)
* Switch ethereum/tests to tag 6.0.0-beta.1 (no tests changes from latest
synch).
* Display hex with separator, use indirection instead of clone for copy
types.
2018-11-02 10:02:46 +01:00
|
|
|
build-android:
|
2018-10-02 01:03:58 +02:00
|
|
|
stage: optional
|
2018-08-26 00:44:08 +02:00
|
|
|
image: parity/rust-android:gitlab-ci
|
|
|
|
variables:
|
|
|
|
CARGO_TARGET: armv7-linux-androideabi
|
ci: always run build pipelines for win, mac, linux, and android (#9537)
* ci: always run build pipelines for win, mac, linux, and android
* ci: always run build pipelines for win, mac, linux, and android
* ci: disallow failure for publish scripts
* ci: enable tests on master
* ci: run tests in debug mode to speed things up
* ci: only build windows, darwin, and android targets on PRs
* ci: reenable darwin and android pipelines on PR
* ci: revert tests to run in release mode
2018-09-13 13:15:15 +02:00
|
|
|
script:
|
version: mark 2.2.0 beta (#9820)
* version: mark 2.2.0 beta
* ci: remove failing tests for android, windows, and macos (#9788)
* ci: remove failing tests for android, windows, and macos
* ci: restore android build jobs
* Move state root verification before gas used (#9841)
* Classic.json Bootnode Update (#9828)
* fix: Update bootnodes list to only responsive nodes
* feat: Add more bootnodes to classic.json list
* feat: Add retested bootnodes
* Implement NoProof for json tests and update tests reference (replaces #9744) (#9814)
* Update test reference.
Block test are really not working so I disabled a few by commenting
directly in source.
* Move ethtest commit cursor.
* Implements 'NoProof' engine from https://github.com/ethereum/tests/issues/464 .
Since tests has been regenerated those one were failing on block
difficulty check.
Update ethereum/tests, waiting for cost fix (block test are still
commented).
* Update tests submodule reference to latest (all test passing except an
identified case).
Fix block reward of constantinople json.
* Restore broken test by using old json tests files.
* Use CanonNoSeal instead of a custom engine, still have to include some
additional tests code.
* Gas upper limit check in json_chain test was bad, moving the test to
verification, the test is running in `verify_header_param`.
Note that test was previously only for ethash, and now for any engine.
* Restore old behavior (gas uper limit only for ethash engine), at the
cost of an additional trait method.
* Proper rpc test fix.
* Update tests submodule, add SStore bug tests.
* Fix json issue tabulation.
Update tests submodule to latest master (lot of new sstore tests
passing)
* Switch ethereum/tests to tag 6.0.0-beta.1 (no tests changes from latest
synch).
* Display hex with separator, use indirection instead of clone for copy
types.
2018-11-02 10:02:46 +01:00
|
|
|
- scripts/gitlab/build-unix.sh
|
2018-08-31 16:41:21 +02:00
|
|
|
tags:
|
|
|
|
- rust-arm
|
2018-11-29 10:57:49 +01:00
|
|
|
allow_failure: true
|
2018-08-26 00:44:08 +02:00
|
|
|
|
2018-10-02 01:03:58 +02:00
|
|
|
test-beta:
|
|
|
|
stage: optional
|
2018-08-26 00:44:08 +02:00
|
|
|
variables:
|
2018-10-02 01:03:58 +02:00
|
|
|
RUN_TESTS: cargo
|
2017-01-25 19:48:36 +01:00
|
|
|
script:
|
2018-10-02 01:03:58 +02:00
|
|
|
- scripts/gitlab/test-all.sh beta
|
2017-01-25 19:48:36 +01:00
|
|
|
tags:
|
2018-10-02 01:03:58 +02:00
|
|
|
- rust-beta
|
2018-11-29 10:57:49 +01:00
|
|
|
allow_failure: true
|
2018-08-26 00:44:08 +02:00
|
|
|
|
2018-10-02 01:03:58 +02:00
|
|
|
test-nightly:
|
|
|
|
stage: optional
|
2018-08-26 00:44:08 +02:00
|
|
|
variables:
|
2018-10-02 01:03:58 +02:00
|
|
|
RUN_TESTS: all
|
2016-10-31 19:51:29 +01:00
|
|
|
script:
|
2018-10-02 01:03:58 +02:00
|
|
|
- scripts/gitlab/test-all.sh nightly
|
2016-11-07 17:16:34 +01:00
|
|
|
tags:
|
2018-10-02 01:03:58 +02:00
|
|
|
- rust-nightly
|
2018-11-29 10:57:49 +01:00
|
|
|
allow_failure: true
|