Skip to content

Commit b0a0497

Browse files
notleshCrystalin
andauthored
v0.9.19 Dependency Update (#1438)
* Point cumulus, polkadot, and substrate to moonbeam repos * s/moonbeam-polkadot-v0.9.18/moonbeam-polkadot-v0.9.19/ * Bump tracing crate version * Update Cargo.lock * Revert some version changes * No-op impl for LengthToFee * Bump frontier commit * Use parameter_types! to define byte fee * Specify rust edition of 2021 * Update Cargo.lock * Remove max_past_logs from EthApiServer::new call * Bump frontier commit (fix for GenesisAccount not being pub) * Use fp_evm instead of pallet_evm for GenesisAccount * Use v2::Id from polkadot_primitives * Bump frontier commit (includes LRU cache) * Use v2 from polkadot_primitives in command.rs * Pass None for aux_revert * Comment out benchmark command temporarily * Bump crowdloan-rewards commit * Re-implement benchmark for pallet subcommand * Don't shadow runner with a duplicate * Impl BenchmarkCmd::Block * Impl benchmark storage * Impl aux revert in Revert subcommand * Update Cargo.lock * fmt * toml sort * Fix tests * More test fixes * Bump polkadot commit * Bump cumulus commit * Use match_types instead of match_type * Fixes prepare-polkadot docker CI * Bump frontier * fmt * Remove unused imports * Bump frontier * Adjust events index * Expect hex-string instead of int in test * editorconfig * prettier * Fixing para-test CI (#1479) Co-authored-by: Crystalin <[email protected]>
1 parent 6909718 commit b0a0497

File tree

85 files changed

+1698
-1463
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

85 files changed

+1698
-1463
lines changed

.github/workflows/build.yml

Lines changed: 82 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -195,6 +195,25 @@ jobs:
195195
./scripts/build-alphanet-relay-image.sh
196196
docker push $DOCKER_TAG
197197
fi
198+
- name: Check & prepare para-test docker image
199+
run: |
200+
POLKADOT_REPO=${{ needs.set-tags.outputs.polkadot_repo }}
201+
POLKADOT_COMMIT=${{ needs.set-tags.outputs.polkadot_commit }}
202+
DOCKER_TAG="purestake/polkadot-para-tests:sha-$POLKADOT_COMMIT"
203+
POLKADOT_EXISTS=$(docker manifest inspect $DOCKER_TAG > /dev/null && \
204+
echo "true" || echo "false")
205+
if [[ "$POLKADOT_EXISTS" == "false" ]]; then
206+
mkdir -p build
207+
MOONBEAM_DOCKER_TAG="purestake/moonbase-relay-testnet:sha-$POLKADOT_COMMIT"
208+
docker create --pull always -ti --name dummy $MOONBEAM_DOCKER_TAG bash
209+
docker cp dummy:/usr/local/bin/polkadot build/polkadot
210+
docker rm -f dummy
211+
docker build . --pull --no-cache -f docker/polkadot-para-tests.Dockerfile \
212+
--network=host \
213+
--build-arg HOST_UID="$UID" \
214+
-t $DOCKER_TAG
215+
docker push $DOCKER_TAG
216+
fi
198217
199218
####### Building and Testing binaries #######
200219

@@ -219,8 +238,6 @@ jobs:
219238
RUSTFLAGS: "-C opt-level=3 -D warnings"
220239
# MOONBEAM_LOG: info
221240
# DEBUG: "test*"
222-
outputs:
223-
RUSTC: ${{ steps.get-rust-versions.outputs.rustc }}
224241
steps:
225242
- name: Checkout
226243
uses: actions/checkout@v2
@@ -251,9 +268,6 @@ jobs:
251268
fi
252269
$SCCACHE_BIN -s
253270
echo "RUSTC_WRAPPER=$SCCACHE_BIN" >> $GITHUB_ENV
254-
- id: get-rust-versions
255-
run: |
256-
echo "::set-output name=rustc::$(rustc --version)"
257271
- name: Build Node
258272
run: |
259273
env
@@ -312,7 +326,7 @@ jobs:
312326

313327
typescript-tests:
314328
runs-on: self-hosted
315-
needs: ["set-tags", "build"]
329+
needs: ["set-tags", "build", "prepare-polkadot"]
316330
steps:
317331
- name: Checkout
318332
uses: actions/checkout@v2
@@ -327,16 +341,33 @@ jobs:
327341
with:
328342
node-version: 14.x
329343
- name: Typescript integration tests (against dev service)
330-
env:
331-
BINARY_PATH: ../build/moonbeam
332344
run: |
333345
chmod uog+x build/moonbeam
346+
347+
#### Preparing the repository
334348
cd moonbeam-types-bundle
335349
npm install
336350
npm run build
337351
cd ../tests
338352
npm install
339-
node_modules/.bin/mocha --parallel -j 4 -r ts-node/register 'tests/**/test-*.ts'
353+
cd ..
354+
355+
#### Retrieving docker image as base to run tests
356+
POLKADOT_REPO=${{ needs.set-tags.outputs.polkadot_repo }}
357+
POLKADOT_COMMIT=${{ needs.set-tags.outputs.polkadot_commit }}
358+
DOCKER_TAG="purestake/polkadot-para-tests:sha-$POLKADOT_COMMIT"
359+
360+
docker run \
361+
-e BINARY_PATH='../build/moonbeam' \
362+
-v $(pwd):/moonbeam:z \
363+
-u $UID \
364+
-w /moonbeam/tests \
365+
$DOCKER_TAG \
366+
node node_modules/.bin/mocha \
367+
--parallel -j 4 \
368+
--exit \
369+
-r ts-node/register \
370+
'tests/**/test-*.ts'
340371
341372
# We determine whether there are unmodified package-lock.json files by:
342373
# 1. Asking git for a list of all modified files
@@ -398,7 +429,7 @@ jobs:
398429
npm run build
399430
cd ../tests
400431
npm install
401-
node_modules/.bin/mocha --parallel -j 2 -r ts-node/register 'tracing-tests/**/test-*.ts'
432+
node_modules/.bin/mocha --exit --parallel -j 2 -r ts-node/register 'tracing-tests/**/test-*.ts'
402433
403434
typescript-para-tests:
404435
runs-on: self-hosted
@@ -437,11 +468,51 @@ jobs:
437468
run: |
438469
chmod uog+x build/polkadot
439470
chmod uog+x build/moonbeam
471+
472+
#### Preparing the repository
440473
cd moonbeam-types-bundle
441474
npm install
442475
cd ../tests
443476
npm install
444-
node_modules/.bin/mocha -r ts-node/register 'para-tests/**/test-*.ts'
477+
cd ..
478+
479+
POLKADOT_REPO=${{ needs.set-tags.outputs.polkadot_repo }}
480+
POLKADOT_COMMIT=${{ needs.set-tags.outputs.polkadot_commit }}
481+
DOCKER_TAG="purestake/polkadot-para-tests:sha-$POLKADOT_COMMIT"
482+
483+
#### Retrieve binary to avoid para-node script to rely on docker
484+
mkdir -p build
485+
localVersion=$(grep 'spec_version: [0-9]*' runtime/moonbase/src/lib.rs | grep -o '[0-9]*')
486+
baseRuntime=$(git tag -l -n 'runtime-[0-9]*' | \
487+
cut -d' ' -f 1 | cut -d'-' -f 2 | \
488+
sed "1 i ${localVersion}" | \
489+
sort -n -r | \
490+
uniq | \
491+
grep -A1 "${localVersion}" | \
492+
tail -1)
493+
rev=$(git rev-list -1 runtime-$baseRuntime)
494+
sha8=${rev:0:8}
495+
dockerImage=purestake/moonbeam:sha-${sha8}
496+
binaryPath=build/moonbeam-${sha8}
497+
docker create --pull always --name moonbeam-tmp ${dockerImage} && \
498+
docker cp moonbeam-tmp:/moonbeam/moonbeam ${binaryPath} && \
499+
docker rm moonbeam-tmp
500+
501+
echo "Running para-tests inside docker: $DOCKER_TAG"
502+
docker run \
503+
-e OVERRIDE_RUNTIME_PATH='./runtimes' \
504+
-e BINARY_PATH='../build/moonbeam' \
505+
-e MOONBEAM_LOG='info' \
506+
-e RELAY_BINARY_PATH='/binaries/polkadot' \
507+
-e RUNTIME_DIRECTORY='/tmp/runtimes' \
508+
-e BINARY_DIRECTORY='../build/' \
509+
-e SPECS_DIRECTORY='/tmp/specs' \
510+
-v $(pwd):/moonbeam:z \
511+
-v $(pwd)/${binaryPath}:/binaries/moonbeam:z \
512+
-u $UID \
513+
-w /moonbeam/tests \
514+
$DOCKER_TAG \
515+
node node_modules/.bin/mocha --exit -r ts-node/register 'para-tests/**/test-*.ts'
445516
446517
docker-parachain:
447518
runs-on: ubuntu-latest

0 commit comments

Comments
 (0)