Skip to content

Commit

Permalink
Merge branch 'master' into Optimist
Browse files Browse the repository at this point in the history
  • Loading branch information
ndkazu committed Sep 26, 2024
2 parents 8586c18 + 6c3219e commit 93a9e9f
Show file tree
Hide file tree
Showing 256 changed files with 5,120 additions and 2,179 deletions.
2 changes: 1 addition & 1 deletion .github/env
Original file line number Diff line number Diff line change
@@ -1 +1 @@
IMAGE="docker.io/paritytech/ci-unified:bullseye-1.77.0-2024-04-10-v202407161507"
IMAGE="docker.io/paritytech/ci-unified:bullseye-1.81.0-2024-09-11-v202409111034"
2 changes: 1 addition & 1 deletion .github/scripts/cmd/cmd.py
Original file line number Diff line number Diff line change
Expand Up @@ -100,7 +100,7 @@ def main():

# loop over remaining runtimes to collect available pallets
for runtime in runtimesMatrix.values():
os.system(f"forklift cargo build -p {runtime['package']} --profile {profile} --features runtime-benchmarks")
os.system(f"forklift cargo build -p {runtime['package']} --profile {profile} --features={runtime['bench_features']}")
print(f'-- listing pallets for benchmark for {runtime["name"]}')
wasm_file = f"target/{profile}/wbuild/{runtime['package']}/{runtime['package'].replace('-', '_')}.wasm"
output = os.popen(
Expand Down
30 changes: 15 additions & 15 deletions .github/scripts/cmd/test_cmd.py
Original file line number Diff line number Diff line change
Expand Up @@ -7,10 +7,10 @@

# Mock data for runtimes-matrix.json
mock_runtimes_matrix = [
{"name": "dev", "package": "kitchensink-runtime", "path": "substrate/frame", "header": "substrate/HEADER-APACHE2", "template": "substrate/.maintain/frame-weight-template.hbs"},
{"name": "westend", "package": "westend-runtime", "path": "polkadot/runtime/westend", "header": "polkadot/file_header.txt", "template": "polkadot/xcm/pallet-xcm-benchmarks/template.hbs"},
{"name": "rococo", "package": "rococo-runtime", "path": "polkadot/runtime/rococo", "header": "polkadot/file_header.txt", "template": "polkadot/xcm/pallet-xcm-benchmarks/template.hbs"},
{"name": "asset-hub-westend", "package": "asset-hub-westend-runtime", "path": "cumulus/parachains/runtimes/assets/asset-hub-westend", "header": "cumulus/file_header.txt", "template": "cumulus/templates/xcm-bench-template.hbs"},
{"name": "dev", "package": "kitchensink-runtime", "path": "substrate/frame", "header": "substrate/HEADER-APACHE2", "template": "substrate/.maintain/frame-weight-template.hbs", "bench_features": "runtime-benchmarks,riscv"},
{"name": "westend", "package": "westend-runtime", "path": "polkadot/runtime/westend", "header": "polkadot/file_header.txt", "template": "polkadot/xcm/pallet-xcm-benchmarks/template.hbs", "bench_features": "runtime-benchmarks"},
{"name": "rococo", "package": "rococo-runtime", "path": "polkadot/runtime/rococo", "header": "polkadot/file_header.txt", "template": "polkadot/xcm/pallet-xcm-benchmarks/template.hbs", "bench_features": "runtime-benchmarks"},
{"name": "asset-hub-westend", "package": "asset-hub-westend-runtime", "path": "cumulus/parachains/runtimes/assets/asset-hub-westend", "header": "cumulus/file_header.txt", "template": "cumulus/templates/xcm-bench-template.hbs", "bench_features": "runtime-benchmarks"},
]

def get_mock_bench_output(runtime, pallets, output_path, header, template = None):
Expand Down Expand Up @@ -84,10 +84,10 @@ def test_bench_command_normal_execution_all_runtimes(self):

expected_calls = [
# Build calls
call("forklift cargo build -p kitchensink-runtime --profile release --features runtime-benchmarks"),
call("forklift cargo build -p westend-runtime --profile release --features runtime-benchmarks"),
call("forklift cargo build -p rococo-runtime --profile release --features runtime-benchmarks"),
call("forklift cargo build -p asset-hub-westend-runtime --profile release --features runtime-benchmarks"),
call("forklift cargo build -p kitchensink-runtime --profile release --features=runtime-benchmarks,riscv"),
call("forklift cargo build -p westend-runtime --profile release --features=runtime-benchmarks"),
call("forklift cargo build -p rococo-runtime --profile release --features=runtime-benchmarks"),
call("forklift cargo build -p asset-hub-westend-runtime --profile release --features=runtime-benchmarks"),

call(get_mock_bench_output('kitchensink', 'pallet_balances', './substrate/frame/balances/src/weights.rs', os.path.abspath('substrate/HEADER-APACHE2'), "substrate/.maintain/frame-weight-template.hbs")),
call(get_mock_bench_output('westend', 'pallet_balances', './polkadot/runtime/westend/src/weights', os.path.abspath('polkadot/file_header.txt'))),
Expand Down Expand Up @@ -118,7 +118,7 @@ def test_bench_command_normal_execution(self):

expected_calls = [
# Build calls
call("forklift cargo build -p westend-runtime --profile release --features runtime-benchmarks"),
call("forklift cargo build -p westend-runtime --profile release --features=runtime-benchmarks"),

# Westend runtime calls
call(get_mock_bench_output('westend', 'pallet_balances', './polkadot/runtime/westend/src/weights', header_path)),
Expand Down Expand Up @@ -149,7 +149,7 @@ def test_bench_command_normal_execution_xcm(self):

expected_calls = [
# Build calls
call("forklift cargo build -p westend-runtime --profile release --features runtime-benchmarks"),
call("forklift cargo build -p westend-runtime --profile release --features=runtime-benchmarks"),

# Westend runtime calls
call(get_mock_bench_output(
Expand Down Expand Up @@ -185,8 +185,8 @@ def test_bench_command_two_runtimes_two_pallets(self):

expected_calls = [
# Build calls
call("forklift cargo build -p westend-runtime --profile release --features runtime-benchmarks"),
call("forklift cargo build -p rococo-runtime --profile release --features runtime-benchmarks"),
call("forklift cargo build -p westend-runtime --profile release --features=runtime-benchmarks"),
call("forklift cargo build -p rococo-runtime --profile release --features=runtime-benchmarks"),
# Westend runtime calls
call(get_mock_bench_output('westend', 'pallet_staking', './polkadot/runtime/westend/src/weights', header_path)),
call(get_mock_bench_output('westend', 'pallet_balances', './polkadot/runtime/westend/src/weights', header_path)),
Expand Down Expand Up @@ -220,7 +220,7 @@ def test_bench_command_one_dev_runtime(self):

expected_calls = [
# Build calls
call("forklift cargo build -p kitchensink-runtime --profile release --features runtime-benchmarks"),
call("forklift cargo build -p kitchensink-runtime --profile release --features=runtime-benchmarks,riscv"),
# Westend runtime calls
call(get_mock_bench_output(
'kitchensink',
Expand Down Expand Up @@ -254,7 +254,7 @@ def test_bench_command_one_cumulus_runtime(self):

expected_calls = [
# Build calls
call("forklift cargo build -p asset-hub-westend-runtime --profile release --features runtime-benchmarks"),
call("forklift cargo build -p asset-hub-westend-runtime --profile release --features=runtime-benchmarks"),
# Asset-hub-westend runtime calls
call(get_mock_bench_output(
'asset-hub-westend',
Expand Down Expand Up @@ -288,7 +288,7 @@ def test_bench_command_one_cumulus_runtime_xcm(self):

expected_calls = [
# Build calls
call("forklift cargo build -p asset-hub-westend-runtime --profile release --features runtime-benchmarks"),
call("forklift cargo build -p asset-hub-westend-runtime --profile release --features=runtime-benchmarks"),
# Asset-hub-westend runtime calls
call(get_mock_bench_output(
'asset-hub-westend',
Expand Down
6 changes: 1 addition & 5 deletions .github/scripts/generate-prdoc.py
Original file line number Diff line number Diff line change
Expand Up @@ -67,7 +67,6 @@ def create_prdoc(pr, audience, title, description, patch, bump, force):
# Go up until we find a Cargo.toml
p = os.path.join(workspace.path, p)
while not os.path.exists(os.path.join(p, "Cargo.toml")):
print(f"Could not find Cargo.toml in {p}")
if p == '/':
exit(1)
p = os.path.dirname(p)
Expand All @@ -76,7 +75,6 @@ def create_prdoc(pr, audience, title, description, patch, bump, force):
manifest = toml.load(f)

if not "package" in manifest:
print(f"File was not in any crate: {p}")
continue

crate_name = manifest["package"]["name"]
Expand All @@ -85,8 +83,6 @@ def create_prdoc(pr, audience, title, description, patch, bump, force):
else:
print(f"Skipping unpublished crate: {crate_name}")

print(f"Modified crates: {modified_crates.keys()}")

for crate_name in modified_crates.keys():
entry = { "name": crate_name }

Expand Down Expand Up @@ -137,4 +133,4 @@ def main(args):

if __name__ == "__main__":
args = setup_parser().parse_args()
main(args)
main(args)
2 changes: 1 addition & 1 deletion .github/workflows/check-runtime-migration.yml
Original file line number Diff line number Diff line change
Expand Up @@ -17,13 +17,13 @@ concurrency:
cancel-in-progress: true

jobs:

preflight:
uses: ./.github/workflows/reusable-preflight.yml

# More info can be found here: https://github.com/paritytech/polkadot/pull/5865
check-runtime-migration:
runs-on: ${{ needs.preflight.outputs.RUNNER }}
if: ${{ needs.preflight.outputs.changes_rust }}
# We need to set this to rather long to allow the snapshot to be created, but the average time
# should be much lower.
timeout-minutes: 60
Expand Down
15 changes: 7 additions & 8 deletions .github/workflows/checks.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,14 +15,13 @@ concurrency:
permissions: {}

jobs:

preflight:
uses: ./.github/workflows/reusable-preflight.yml

cargo-clippy:
runs-on: ${{ needs.preflight.outputs.RUNNER }}
needs: [preflight]
# if: ${{ needs.preflight.outputs.changes_rust }}
if: ${{ needs.preflight.outputs.changes_rust }}
timeout-minutes: 40
container:
image: ${{ needs.preflight.outputs.IMAGE }}
Expand All @@ -33,31 +32,31 @@ jobs:
- uses: actions/checkout@6d193bf28034eafb982f37bd894289fe649468fc # v4.1.7
- name: script
run: |
forklift cargo clippy --all-targets --locked --workspace
forklift cargo clippy --all-targets --all-features --locked --workspace
forklift cargo clippy --all-targets --locked --workspace --quiet
forklift cargo clippy --all-targets --all-features --locked --workspace --quiet
check-try-runtime:
runs-on: ${{ needs.preflight.outputs.RUNNER }}
needs: [preflight]
# if: ${{ needs.preflight.outputs.changes_rust }}
if: ${{ needs.preflight.outputs.changes_rust }}
timeout-minutes: 40
container:
image: ${{ needs.preflight.outputs.IMAGE }}
steps:
- uses: actions/checkout@6d193bf28034eafb982f37bd894289fe649468fc # v4.1.7
- name: script
run: |
forklift cargo check --locked --all --features try-runtime
forklift cargo check --locked --all --features try-runtime --quiet
# this is taken from cumulus
# Check that parachain-template will compile with `try-runtime` feature flag.
forklift cargo check --locked -p parachain-template-node --features try-runtime
# add after https://github.com/paritytech/substrate/pull/14502 is merged
# experimental code may rely on try-runtime and vice-versa
forklift cargo check --locked --all --features try-runtime,experimental
forklift cargo check --locked --all --features try-runtime,experimental --quiet
# check-core-crypto-features works fast without forklift
check-core-crypto-features:
runs-on: ${{ needs.preflight.outputs.RUNNER }}
needs: [preflight]
# if: ${{ needs.preflight.outputs.changes_rust }}
if: ${{ needs.preflight.outputs.changes_rust }}
timeout-minutes: 30
container:
image: ${{ needs.preflight.outputs.IMAGE }}
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/command-prdoc.yml
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ on:
- "Runtime Dev"
- "Runtime User"
- "Node Dev"
- "Node User"
- "Node Operator"
overwrite:
type: choice
description: Overwrite existing PrDoc
Expand Down
11 changes: 7 additions & 4 deletions .github/workflows/docs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,15 +9,17 @@ on:
merge_group:

concurrency:
group: ${{ github.ref }}
cancel-in-progress: ${{ github.ref != 'refs/heads/master' }}
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
cancel-in-progress: true

jobs:
preflight:
if: contains(github.event.label.name, 'GHA-migration')
uses: ./.github/workflows/reusable-preflight.yml

test-rustdoc:
runs-on: arc-runners-polkadot-sdk-beefy
runs-on: ${{ needs.preflight.outputs.RUNNER }}
if: ${{ needs.preflight.outputs.changes_rust }}
needs: [preflight]
container:
image: ${{ needs.preflight.outputs.IMAGE }}
Expand All @@ -38,7 +40,8 @@ jobs:
RUSTFLAGS: "-Cdebug-assertions=y -Dwarnings"

build-rustdoc:
runs-on: arc-runners-polkadot-sdk-beefy
runs-on: ${{ needs.preflight.outputs.RUNNER }}
if: ${{ needs.preflight.outputs.changes_rust }}
needs: [preflight, test-rustdoc]
container:
image: ${{ needs.preflight.outputs.IMAGE }}
Expand Down
13 changes: 13 additions & 0 deletions .github/workflows/runtimes-matrix.json
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@
"path": "substrate/frame",
"header": "substrate/HEADER-APACHE2",
"template": "substrate/.maintain/frame-weight-template.hbs",
"bench_features": "runtime-benchmarks,riscv",
"uri": null,
"is_relay": false
},
Expand All @@ -15,6 +16,7 @@
"header": "polkadot/file_header.txt",
"template": "polkadot/xcm/pallet-xcm-benchmarks/template.hbs",
"uri": "wss://try-runtime-westend.polkadot.io:443",
"bench_features": "runtime-benchmarks",
"is_relay": true
},
{
Expand All @@ -24,6 +26,7 @@
"header": "polkadot/file_header.txt",
"template": "polkadot/xcm/pallet-xcm-benchmarks/template.hbs",
"uri": "wss://try-runtime-rococo.polkadot.io:443",
"bench_features": "runtime-benchmarks",
"is_relay": true
},
{
Expand All @@ -32,6 +35,7 @@
"path": "cumulus/parachains/runtimes/assets/asset-hub-westend",
"header": "cumulus/file_header.txt",
"template": "cumulus/templates/xcm-bench-template.hbs",
"bench_features": "runtime-benchmarks",
"uri": "wss://westend-asset-hub-rpc.polkadot.io:443",
"is_relay": false
},
Expand All @@ -49,6 +53,7 @@
"package": "bridge-hub-rococo-runtime",
"path": "cumulus/parachains/runtimes/bridges/bridge-hub-rococo",
"header": "cumulus/file_header.txt",
"bench_features": "runtime-benchmarks",
"template": "cumulus/templates/xcm-bench-template.hbs",
"uri": "wss://rococo-bridge-hub-rpc.polkadot.io:443",
"is_relay": false
Expand All @@ -58,6 +63,7 @@
"package": "bridge-hub-rococo-runtime",
"path": "cumulus/parachains/runtimes/bridges/bridge-hub-westend",
"header": "cumulus/file_header.txt",
"bench_features": "runtime-benchmarks",
"template": "cumulus/templates/xcm-bench-template.hbs",
"uri": "wss://westend-bridge-hub-rpc.polkadot.io:443",
"is_relay": false
Expand All @@ -67,6 +73,7 @@
"package": "collectives-westend-runtime",
"path": "cumulus/parachains/runtimes/collectives/collectives-westend",
"header": "cumulus/file_header.txt",
"bench_features": "runtime-benchmarks",
"template": "cumulus/templates/xcm-bench-template.hbs",
"uri": "wss://westend-collectives-rpc.polkadot.io:443"
},
Expand All @@ -75,6 +82,7 @@
"package": "contracts-rococo-runtime",
"path": "cumulus/parachains/runtimes/contracts/contracts-rococo",
"header": "cumulus/file_header.txt",
"bench_features": "runtime-benchmarks",
"template": "cumulus/templates/xcm-bench-template.hbs",
"uri": "wss://rococo-contracts-rpc.polkadot.io:443",
"is_relay": false
Expand All @@ -84,6 +92,7 @@
"package": "coretime-rococo-runtime",
"path": "cumulus/parachains/runtimes/coretime/coretime-rococo",
"header": "cumulus/file_header.txt",
"bench_features": "runtime-benchmarks",
"template": "cumulus/templates/xcm-bench-template.hbs",
"uri": "wss://rococo-coretime-rpc.polkadot.io:443",
"is_relay": false
Expand All @@ -93,6 +102,7 @@
"package": "coretime-westend-runtime",
"path": "cumulus/parachains/runtimes/coretime/coretime-westend",
"header": "cumulus/file_header.txt",
"bench_features": "runtime-benchmarks",
"template": "cumulus/templates/xcm-bench-template.hbs",
"uri": "wss://westend-coretime-rpc.polkadot.io:443",
"is_relay": false
Expand All @@ -102,6 +112,7 @@
"package": "glutton-westend-runtime",
"path": "cumulus/parachains/runtimes/gluttons/glutton-westend",
"header": "cumulus/file_header.txt",
"bench_features": "runtime-benchmarks",
"template": "cumulus/templates/xcm-bench-template.hbs",
"uri": null,
"is_relay": false
Expand All @@ -111,6 +122,7 @@
"package": "people-rococo-runtime",
"path": "cumulus/parachains/runtimes/people/people-rococo",
"header": "cumulus/file_header.txt",
"bench_features": "runtime-benchmarks",
"template": "cumulus/templates/xcm-bench-template.hbs",
"uri": "wss://rococo-people-rpc.polkadot.io:443",
"is_relay": false
Expand All @@ -120,6 +132,7 @@
"package": "people-westend-runtime",
"path": "cumulus/parachains/runtimes/people/people-westend",
"header": "cumulus/file_header.txt",
"bench_features": "runtime-benchmarks",
"template": "cumulus/templates/xcm-bench-template.hbs",
"uri": "wss://westend-people-rpc.polkadot.io:443",
"is_relay": false
Expand Down
12 changes: 6 additions & 6 deletions .github/workflows/tests-linux-stable.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,13 +13,12 @@ concurrency:
cancel-in-progress: true

jobs:

preflight:
uses: ./.github/workflows/reusable-preflight.yml

test-linux-stable-int:
needs: [preflight]
# if: ${{ needs.preflight.outputs.changes_rust }}
if: ${{ needs.preflight.outputs.changes_rust }}
runs-on: ${{ needs.preflight.outputs.RUNNER }}
timeout-minutes: 60
container:
Expand All @@ -40,7 +39,7 @@ jobs:
# https://github.com/paritytech/ci_cd/issues/864
test-linux-stable-runtime-benchmarks:
needs: [preflight]
# if: ${{ needs.preflight.outputs.changes_rust }}
if: ${{ needs.preflight.outputs.changes_rust }}
runs-on: ${{ needs.preflight.outputs.RUNNER }}
timeout-minutes: 60
container:
Expand All @@ -54,11 +53,11 @@ jobs:
- name: Checkout
uses: actions/checkout@v4
- name: script
run: forklift cargo nextest run --workspace --features runtime-benchmarks benchmark --locked --cargo-profile testnet
run: forklift cargo nextest run --workspace --features runtime-benchmarks benchmark --locked --cargo-profile testnet --cargo-quiet

test-linux-stable:
needs: [preflight]
# if: ${{ needs.preflight.outputs.changes_rust }}
if: ${{ needs.preflight.outputs.changes_rust }}
runs-on: ${{ matrix.runners }}
timeout-minutes: 60
strategy:
Expand Down Expand Up @@ -91,12 +90,13 @@ jobs:
--locked \
--release \
--no-fail-fast \
--cargo-quiet \
--features try-runtime,experimental,riscv,ci-only-tests \
--partition count:${{ matrix.partition }}
# run runtime-api tests with `enable-staging-api` feature on the 1st node
- name: runtime-api tests
if: ${{ matrix.partition == '1/3' }}
run: forklift cargo nextest run -p sp-api-test --features enable-staging-api
run: forklift cargo nextest run -p sp-api-test --features enable-staging-api --cargo-quiet

confirm-required-jobs-passed:
runs-on: ubuntu-latest
Expand Down
Loading

0 comments on commit 93a9e9f

Please sign in to comment.