This repository has been archived by the owner on Nov 15, 2023. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 379
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
6 changed files
with
97 additions
and
0 deletions.
There are no files selected for viewing
File renamed without changes.
File renamed without changes.
97 changes: 97 additions & 0 deletions
97
.github/workflows/release-21_extrinsic-ordering-check-from-two.yml
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,97 @@ | ||
# This workflow performs the Extrinsic Ordering Check on demand using two reference binaries | ||
|
||
name: Release - Extrinsic API Check with reference bins | ||
on: | ||
workflow_dispatch: | ||
inputs: | ||
reference_binary_url: | ||
description: A url to a Linux binary for the node containing the reference runtime to test against | ||
default: https://releases.parity.io/polkadot/x86_64-debian:stretch/v0.9.26/polkadot | ||
required: true | ||
binary_url: | ||
description: A url to a Linux binary for the node containing the runtime to test | ||
default: https://releases.parity.io/polkadot/x86_64-debian:stretch/v0.9.27-rc1/polkadot | ||
required: true | ||
|
||
jobs: | ||
check: | ||
name: Run check | ||
runs-on: ubuntu-latest | ||
env: | ||
BIN_URL: ${{github.event.inputs.binary_url}} | ||
REF_URL: ${{github.event.inputs.reference_binary_url}} | ||
strategy: | ||
fail-fast: false | ||
matrix: | ||
chain: [polkadot, kusama, westend, rococo] | ||
|
||
steps: | ||
- name: Checkout sources | ||
uses: actions/checkout@v3 | ||
|
||
- name: Fetch reference binary | ||
run: | | ||
echo Fetching $REF_URL | ||
curl $REF_URL -o polkadot-ref | ||
chmod a+x polkadot-ref | ||
./polkadot-ref --version | ||
- name: Fetch test binary | ||
run: | | ||
echo Fetching $BIN_URL | ||
curl $BIN_URL -o polkadot | ||
chmod a+x polkadot | ||
./polkadot --version | ||
- name: Start local reference node | ||
run: | | ||
echo Running reference on ${{ matrix.chain }}-local | ||
./polkadot-ref --chain=${{ matrix.chain }}-local --rpc-port=9934 --ws-port=9945 --base-path=polkadot-ref-base/ & | ||
- name: Start local test node | ||
run: | | ||
echo Running test on ${{ matrix.chain }}-local | ||
./polkadot --chain=${{ matrix.chain }}-local & | ||
- name: Prepare output | ||
run: | | ||
REF_VERSION=$(./polkadot-ref --version) | ||
BIN_VERSION=$(./polkadot --version) | ||
echo "Metadata comparison:" >> output.txt | ||
echo "Date: $(date)" >> output.txt | ||
echo "Ref. binary: $REF_URL" >> output.txt | ||
echo "Test binary: $BIN_URL" >> output.txt | ||
echo "Ref. version: $REF_VERSION" >> output.txt | ||
echo "Test version: $BIN_VERSION" >> output.txt | ||
echo "Chain: ${{ matrix.chain }}-local" >> output.txt | ||
echo "----------------------------------------------------------------------" >> output.txt | ||
- name: Pull polkadot-js-tools image | ||
run: docker pull jacogr/polkadot-js-tools | ||
|
||
- name: Compare the metadata | ||
run: | | ||
CMD="docker run --pull always --network host jacogr/polkadot-js-tools metadata ws://localhost:9945 ws://localhost:9944" | ||
echo -e "Running:\n$CMD" | ||
$CMD >> output.txt | ||
sed -z -i 's/\n\n/\n/g' output.txt | ||
cat output.txt | egrep -n -i '' | ||
SUMMARY=$(./scripts/ci/github/extrinsic-ordering-filter.sh output.txt) | ||
echo -e $SUMMARY | ||
echo -e $SUMMARY >> output.txt | ||
- name: Show result | ||
run: | | ||
cat output.txt | ||
- name: Save output as artifact | ||
uses: actions/upload-artifact@v3 | ||
with: | ||
name: ${{ matrix.chain }} | ||
path: | | ||
output.txt | ||
- name: Stop our local nodes | ||
run: | | ||
pkill polkadot-ref | ||
pkill polkadot |
File renamed without changes.
File renamed without changes.
File renamed without changes.