Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Ep split release pipelines #21

Merged
merged 59 commits into from
Nov 21, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
59 commits
Select commit Hold shift + click to select a range
edf79aa
Migrate pallet-transaction-storage and pallet-indices to benchmark v2…
programskillforverification Nov 8, 2024
05ad547
fix prospective-parachains best backable chain reversion bug (#6417)
alindima Nov 11, 2024
b601d57
Remove network starter that is no longer needed (#6400)
nazar-pc Nov 11, 2024
ace62f1
`fatxpool`: size limits implemented (#6262)
michalkucharczyk Nov 11, 2024
a5de3b1
pallet-membership: Do not verify the `MembershipChanged` in bechmarks…
bkchr Nov 11, 2024
dd9514f
add FeeManager to pallet xcm (#5363)
jpserrat Nov 11, 2024
1b0cbe9
Use relay chain block number in the broker pallet instead of block nu…
davidk-pt Nov 11, 2024
aff3a07
migrate pallet-nft-fractionalization to benchmarking v2 syntax (#6301)
clangenb Nov 11, 2024
9f8656b
[pallet-revive] adjust fee dry-run calculation (#6393)
pgherveou Nov 12, 2024
9f603b1
NoOp Impl Polling Trait (#5311)
Doordashcon Nov 12, 2024
b570baf
Migrate pallet-child-bounties benchmark to v2 (#6310)
aurexav Nov 12, 2024
872d949
Introduce `ConstUint` to make dependent types in `DefaultConfig` more…
conr2d Nov 12, 2024
a875f18
Use type alias for transactions (#6431)
nazar-pc Nov 12, 2024
34d2ff8
[Release|CI/CD] Fix audiences changelog template (#6444)
EgorPopelyaev Nov 12, 2024
4c059c0
XCMv5: add ExecuteWithOrigin instruction (#6304)
franciscoaguirre Nov 12, 2024
0a0af0e
rpc server: fix host filter for localhost on ipv6 (#6454)
niklasad1 Nov 12, 2024
0156ca8
[pallet-revive] eth-rpc fixes (#6453)
pgherveou Nov 12, 2024
5aeaa66
Remove debug message about pruning active leaves (#6440)
AndreiEres Nov 13, 2024
8e3d929
[Tx ext stage 2: 1/4] Add `TransactionSource` as argument in `Transac…
gui1117 Nov 13, 2024
95d98e6
remove pallet::getter from pallet-staking (#6184)
Zebedeusz Nov 13, 2024
e87bffc
Refactor pallet `society` (#6367)
re-gius Nov 13, 2024
ac2546b
frame-benchmarking: Use correct components for pallet instances (#6435)
bkchr Nov 13, 2024
a84f259
Get rid of `libp2p` dependency in `sc-authority-discovery` (#5842)
ndkazu Nov 13, 2024
e617d1d
backing: improve session buffering for runtime information (#6284)
sw10pa Nov 13, 2024
6b84431
Add litep2p network protocol benches (#6455)
AndreiEres Nov 13, 2024
bff395f
Fixed bridges zombienet tests because of removed NetworkId::Rococo/We…
bkontur Nov 13, 2024
a1af8ed
Fix staking benchmark (#6463)
gui1117 Nov 14, 2024
a8e7c09
add pipeline to build runtimes
EgorPopelyaev Nov 14, 2024
ae4b68b
Follow up work on `TransactionExtension` - fix weights and clean up `…
georgepisaltu Nov 14, 2024
5da4063
feat: add workflow to test readme generation (#6359)
virajbhartiya Nov 14, 2024
dbeea18
[pallet-revive] set logs_bloom (#6460)
pgherveou Nov 14, 2024
5bc571b
Support more types in TypeWithDefault (#6411)
NingLin-P Nov 14, 2024
39eba14
[pallet-revive] use evm decimals in call host fn (#6466)
pgherveou Nov 15, 2024
8bea091
network/litep2p: Update litep2p network backend to version 0.8.1 (#6484)
lexnv Nov 15, 2024
a77940b
sp-trie: minor fix to avoid possible panic during node decoding (#6486)
TDemeco Nov 15, 2024
4df9433
migrate pallet-nomination-pool-benchmarking to benchmarking syntax v2…
clangenb Nov 15, 2024
603a392
Migrate some pallets to benchmark v2 (#6311)
programskillforverification Nov 18, 2024
95be9c1
Mention that account might still be required in doc for feeless if. (…
gui1117 Nov 18, 2024
06a68be
Pure state sync refactoring (part-1) (#6249)
liuchengxu Nov 18, 2024
e98c1ac
[WIP][ci] Add worfklow stopper (#4551)
alvicsam Nov 18, 2024
7d5d720
Remove `ProspectiveParachainsMode` usage in backing subsystem (#6215)
tdimitrov Nov 18, 2024
b71bd53
sp-runtime: Be a little bit more functional :D (#6526)
bkchr Nov 18, 2024
5721e55
`TransactionPool` API uses `async_trait` (#6528)
michalkucharczyk Nov 19, 2024
5e8348f
sp-trie: correctly avoid panicking when decoding bad compact proofs (…
TDemeco Nov 19, 2024
293d4a5
[pallet-revive] Update delegate_call to accept address and weight (#6…
ermalkaleci Nov 19, 2024
0449b21
Fix metrics not shutting down if there are open connections (#6220)
tmpolaczyk Nov 19, 2024
8d4138f
Validator Re-Enabling (#5724)
Overkillus Nov 19, 2024
09757a4
Migrate pallet-democracy benchmarks to benchmark v2 syntax (#6509)
ndkazu Nov 19, 2024
cccf341
Forward logging directives to Polkadot workers (#6534)
bkchr Nov 19, 2024
ce20d0a
Support block gap created by fast sync (#5703)
liuchengxu Nov 19, 2024
07a5933
Pure state sync refactoring (part-2) (#6521)
liuchengxu Nov 19, 2024
ca8beae
Add and test events in `pallet-conviction-voting` (#6544)
rockbmb Nov 20, 2024
65a92ba
Increase default trie cache size to 1GiB (#6546)
bkchr Nov 20, 2024
bd0d0cd
Bridges testing improvements (#6536)
bkontur Nov 20, 2024
70b6c7b
Migrate pallet-scheduler benchmark to v2 (#6292)
aurexav Nov 20, 2024
a872278
Removes constraint in `BlockNumberProvider` from treasury (#6522)
gupnik Nov 21, 2024
622c02e
Merge branch 'master' of https://github.com/paritytech/polkadot-sdk i…
EgorPopelyaev Nov 21, 2024
b5c6e64
add profile
EgorPopelyaev Nov 21, 2024
105cc31
exclude trigger on push
EgorPopelyaev Nov 21, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
7 changes: 7 additions & 0 deletions .config/nextest.toml
Original file line number Diff line number Diff line change
Expand Up @@ -124,3 +124,10 @@ serial-integration = { max-threads = 1 }
[[profile.default.overrides]]
filter = 'test(/(^ui$|_ui|ui_)/)'
test-group = 'serial-integration'

# Running eth-rpc tests sequentially
# These tests rely on a shared resource (the RPC and Node)
# and would cause race conditions due to transaction nonces if run in parallel.
[[profile.default.overrides]]
filter = 'package(pallet-revive-eth-rpc) and test(/^tests::/)'
test-group = 'serial-integration'
28 changes: 28 additions & 0 deletions .github/actions/workflow-stopper/action.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
name: "stop all workflows"
description: "Action stops all workflows in a PR to save compute resources."
inputs:
app-id:
description: "App id"
required: true
app-key:
description: "App token"
required: true
runs:
using: "composite"
steps:
- name: Worfklow stopper - Generate token
uses: actions/create-github-app-token@v1
id: app-token
with:
app-id: ${{ inputs.app-id }}
private-key: ${{ inputs.app-key }}
owner: "paritytech"
repositories: "workflow-stopper"
- name: Workflow stopper - Stop all workflows
uses: octokit/request-action@v2.x
with:
route: POST /repos/paritytech/workflow-stopper/actions/workflows/stopper.yml/dispatches
ref: main
inputs: '${{ format(''{{ "github_sha": "{0}", "github_repository": "{1}", "github_ref_name": "{2}", "github_workflow_id": "{3}", "github_job_name": "{4}" }}'', github.event.pull_request.head.sha, github.repository, github.ref_name, github.run_id, github.job) }}'
env:
GITHUB_TOKEN: ${{ steps.app-token.outputs.token }}
36 changes: 36 additions & 0 deletions .github/scripts/check-missing-readme-generation.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
#!/bin/bash
echo "Running script relative to `pwd`"
# Find all README.docify.md files
DOCIFY_FILES=$(find . -name "README.docify.md")

# Initialize a variable to track directories needing README regeneration
NEED_REGENERATION=""

for file in $DOCIFY_FILES; do
echo "Processing $file"

# Get the directory containing the docify file
DIR=$(dirname "$file")

# Go to the directory and run cargo build
cd "$DIR"
cargo check --features generate-readme || { echo "Readme generation for $DIR failed. Ensure the crate compiles successfully and has a `generate-readme` feature which guards markdown compilation in the crate as follows: https://docs.rs/docify/latest/docify/macro.compile_markdown.html#conventions." && exit 1; }

# Check if README.md has any uncommitted changes
git diff --exit-code README.md

if [ $? -ne 0 ]; then
echo "Error: Found uncommitted changes in $DIR/README.md"
NEED_REGENERATION="$NEED_REGENERATION $DIR"
fi

# Return to the original directory
cd - > /dev/null
done

# Check if any directories need README regeneration
if [ -n "$NEED_REGENERATION" ]; then
echo "The following directories need README regeneration:"
echo "$NEED_REGENERATION"
exit 1
fi
15 changes: 14 additions & 1 deletion .github/workflows/build-misc.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,6 @@ permissions:
contents: read

jobs:

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

Expand All @@ -38,11 +37,18 @@ jobs:
- name: Build
env:
SUBSTRATE_RUNTIME_TARGET: riscv
id: required
run: |
forklift cargo check -p minimal-template-runtime
forklift cargo check -p westend-runtime
forklift cargo check -p rococo-runtime
forklift cargo check -p polkadot-test-runtime
- name: Stop all workflows if failed
if: ${{ failure() && steps.required.conclusion == 'failure' }}
uses: ./.github/actions/workflow-stopper
with:
app-id: ${{ secrets.WORKFLOW_STOPPER_RUNNER_APP_ID }}
app-key: ${{ secrets.WORKFLOW_STOPPER_RUNNER_APP_KEY }}

build-subkey:
timeout-minutes: 20
Expand All @@ -62,9 +68,16 @@ jobs:
- name: Build
env:
SKIP_WASM_BUILD: 1
id: required
run: |
cd ./substrate/bin/utils/subkey
forklift cargo build --locked --release
- name: Stop all workflows if failed
if: ${{ failure() && steps.required.conclusion == 'failure' }}
uses: ./.github/actions/workflow-stopper
with:
app-id: ${{ secrets.WORKFLOW_STOPPER_RUNNER_APP_ID }}
app-key: ${{ secrets.WORKFLOW_STOPPER_RUNNER_APP_KEY }}

confirm-required-build-misc-jobs-passed:
runs-on: ubuntu-latest
Expand Down
15 changes: 15 additions & 0 deletions .github/workflows/check-frame-omni-bencher.yml
Original file line number Diff line number Diff line change
Expand Up @@ -36,9 +36,16 @@ jobs:
- name: Checkout
uses: actions/checkout@v4
- name: script
id: required
run: |
forklift cargo build --locked --quiet --release -p asset-hub-westend-runtime --features runtime-benchmarks
forklift cargo run --locked --release -p frame-omni-bencher --quiet -- v1 benchmark pallet --runtime target/release/wbuild/asset-hub-westend-runtime/asset_hub_westend_runtime.compact.compressed.wasm --all --steps 2 --repeat 1 --quiet
- name: Stop all workflows if failed
if: ${{ failure() && steps.required.conclusion == 'failure' }}
uses: ./.github/actions/workflow-stopper
with:
app-id: ${{ secrets.WORKFLOW_STOPPER_RUNNER_APP_ID }}
app-key: ${{ secrets.WORKFLOW_STOPPER_RUNNER_APP_KEY }}

runtime-matrix:
runs-on: ubuntu-latest
Expand Down Expand Up @@ -80,6 +87,7 @@ jobs:
uses: actions/checkout@v4

- name: script
id: required
run: |
RUNTIME_BLOB_NAME=$(echo $PACKAGE_NAME | sed 's/-/_/g').compact.compressed.wasm
RUNTIME_BLOB_PATH=./target/release/wbuild/$PACKAGE_NAME/$RUNTIME_BLOB_NAME
Expand All @@ -90,6 +98,13 @@ jobs:
cmd="./target/release/frame-omni-bencher v1 benchmark pallet --runtime $RUNTIME_BLOB_PATH --all --steps 2 --repeat 1 $FLAGS"
echo "Running command: $cmd"
eval "$cmd"
- name: Stop all workflows if failed
if: ${{ failure() && steps.required.conclusion == 'failure' }}
uses: ./.github/actions/workflow-stopper
with:
app-id: ${{ secrets.WORKFLOW_STOPPER_RUNNER_APP_ID }}
app-key: ${{ secrets.WORKFLOW_STOPPER_RUNNER_APP_KEY }}

confirm-frame-omni-benchers-passed:
runs-on: ubuntu-latest
name: All benchmarks passed
Expand Down
13 changes: 11 additions & 2 deletions .github/workflows/check-runtime-migration.yml
Original file line number Diff line number Diff line change
Expand Up @@ -101,20 +101,29 @@ jobs:
./try-runtime create-snapshot --uri ${{ matrix.uri }} snapshot.raw

- name: Build Runtime
id: required1
run: |
echo "---------- Building ${{ matrix.package }} runtime ----------"
time forklift cargo build --release --locked -p ${{ matrix.package }} --features try-runtime -q
forklift cargo build --release --locked -p ${{ matrix.package }} --features try-runtime -q

- name: Run Check
id: required2
run: |
echo "Running ${{ matrix.network }} runtime migration check"
export RUST_LOG=remote-ext=debug,runtime=debug

echo "---------- Executing on-runtime-upgrade for ${{ matrix.network }} ----------"
time ./try-runtime ${{ matrix.command_extra_args }} \
./try-runtime ${{ matrix.command_extra_args }} \
--runtime ./target/release/wbuild/${{ matrix.package }}/${{ matrix.wasm }} \
on-runtime-upgrade --disable-spec-version-check --checks=all ${{ matrix.subcommand_extra_args }} snap -p snapshot.raw
sleep 5
- name: Stop all workflows if failed
if: ${{ failure() && (steps.required1.conclusion == 'failure' || steps.required2.conclusion == 'failure') }}
uses: ./.github/actions/workflow-stopper
with:
app-id: ${{ secrets.WORKFLOW_STOPPER_RUNNER_APP_ID }}
app-key: ${{ secrets.WORKFLOW_STOPPER_RUNNER_APP_KEY }}

# name of this job must be unique across all workflows
# otherwise GitHub will mark all these jobs as required
confirm-required-checks-passed:
Expand Down
35 changes: 34 additions & 1 deletion .github/workflows/checks-quick.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,6 @@ concurrency:
permissions: {}

jobs:

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

Expand All @@ -28,7 +27,14 @@ jobs:
steps:
- uses: actions/checkout@6d193bf28034eafb982f37bd894289fe649468fc # v4.1.7
- name: Cargo fmt
id: required
run: cargo +nightly fmt --all -- --check
- name: Stop all workflows if failed
if: ${{ failure() && steps.required.conclusion == 'failure' }}
uses: ./.github/actions/workflow-stopper
with:
app-id: ${{ secrets.WORKFLOW_STOPPER_RUNNER_APP_ID }}
app-key: ${{ secrets.WORKFLOW_STOPPER_RUNNER_APP_KEY }}
check-dependency-rules:
runs-on: ubuntu-latest
timeout-minutes: 20
Expand Down Expand Up @@ -172,6 +178,32 @@ jobs:
env:
ASSERT_REGEX: "FAIL-CI"
GIT_DEPTH: 1
check-readme:
runs-on: ubuntu-latest
timeout-minutes: 10
steps:
- uses: actions/checkout@v4

- name: Install prerequisites
run: |
sudo apt-get update
sudo apt-get install -y protobuf-compiler

- name: Set rust version from env file
run: |
RUST_VERSION=$(cat .github/env | sed -E 's/.*ci-unified:([^-]+)-([^-]+).*/\2/')
echo $RUST_VERSION
echo "RUST_VERSION=${RUST_VERSION}" >> $GITHUB_ENV

- name: Install Rust
uses: actions-rust-lang/setup-rust-toolchain@11df97af8e8102fd60b60a77dfbf58d40cd843b8 # v1.10.1
with:
cache: false
toolchain: ${{ env.RUST_VERSION }}
components: cargo, clippy, rust-docs, rust-src, rustfmt, rustc, rust-std

- name: Find README.docify.md files and check generated READMEs
run: .github/scripts/check-missing-readme-generation.sh

confirm-required-checks-quick-jobs-passed:
runs-on: ubuntu-latest
Expand All @@ -187,6 +219,7 @@ jobs:
- check-markdown
- check-umbrella
- check-fail-ci
- check-readme
if: always() && !cancelled()
steps:
- run: |
Expand Down
23 changes: 23 additions & 0 deletions .github/workflows/checks.yml
Original file line number Diff line number Diff line change
Expand Up @@ -31,9 +31,17 @@ jobs:
steps:
- uses: actions/checkout@6d193bf28034eafb982f37bd894289fe649468fc # v4.1.7
- name: script
id: required
run: |
cargo clippy --all-targets --locked --workspace --quiet
cargo clippy --all-targets --all-features --locked --workspace --quiet
- name: Stop all workflows if failed
if: ${{ failure() && steps.required.conclusion == 'failure' }}
uses: ./.github/actions/workflow-stopper
with:
app-id: ${{ secrets.WORKFLOW_STOPPER_RUNNER_APP_ID }}
app-key: ${{ secrets.WORKFLOW_STOPPER_RUNNER_APP_KEY }}

check-try-runtime:
runs-on: ${{ needs.preflight.outputs.RUNNER }}
needs: [preflight]
Expand All @@ -44,6 +52,7 @@ jobs:
steps:
- uses: actions/checkout@6d193bf28034eafb982f37bd894289fe649468fc # v4.1.7
- name: script
id: required
run: |
forklift cargo check --locked --all --features try-runtime --quiet
# this is taken from cumulus
Expand All @@ -52,6 +61,13 @@ jobs:
# 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 --quiet
- name: Stop all workflows if failed
if: ${{ failure() && steps.required.conclusion == 'failure' }}
uses: ./.github/actions/workflow-stopper
with:
app-id: ${{ secrets.WORKFLOW_STOPPER_RUNNER_APP_ID }}
app-key: ${{ secrets.WORKFLOW_STOPPER_RUNNER_APP_KEY }}

# check-core-crypto-features works fast without forklift
check-core-crypto-features:
runs-on: ${{ needs.preflight.outputs.RUNNER }}
Expand All @@ -63,6 +79,7 @@ jobs:
steps:
- uses: actions/checkout@6d193bf28034eafb982f37bd894289fe649468fc # v4.1.7
- name: script
id: required
run: |
cd substrate/primitives/core
./check-features-variants.sh
Expand All @@ -73,6 +90,12 @@ jobs:
cd substrate/primitives/keyring
./check-features-variants.sh
cd -
- name: Stop all workflows if failed
if: ${{ failure() && steps.required.conclusion == 'failure' }}
uses: ./.github/actions/workflow-stopper
with:
app-id: ${{ secrets.WORKFLOW_STOPPER_RUNNER_APP_ID }}
app-key: ${{ secrets.WORKFLOW_STOPPER_RUNNER_APP_KEY }}
# name of this job must be unique across all workflows
# otherwise GitHub will mark all these jobs as required
confirm-required-checks-passed:
Expand Down
14 changes: 14 additions & 0 deletions .github/workflows/docs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -25,8 +25,15 @@ jobs:
steps:
- uses: actions/checkout@v4
- run: forklift cargo test --doc --workspace
id: required
env:
RUSTFLAGS: "-Cdebug-assertions=y -Dwarnings"
- name: Stop all workflows if failed
if: ${{ failure() && steps.required.conclusion == 'failure' }}
uses: ./.github/actions/workflow-stopper
with:
app-id: ${{ secrets.WORKFLOW_STOPPER_RUNNER_APP_ID }}
app-key: ${{ secrets.WORKFLOW_STOPPER_RUNNER_APP_KEY }}

build-rustdoc:
runs-on: ${{ needs.preflight.outputs.RUNNER }}
Expand All @@ -38,6 +45,7 @@ jobs:
steps:
- uses: actions/checkout@v4
- run: forklift cargo doc --all-features --workspace --no-deps
id: required
env:
SKIP_WASM_BUILD: 1
RUSTDOCFLAGS: "-Dwarnings --default-theme=ayu --html-in-header ./docs/sdk/assets/header.html --extend-css ./docs/sdk/assets/theme.css --html-after-content ./docs/sdk/assets/after-content.html"
Expand All @@ -60,6 +68,12 @@ jobs:
path: ./crate-docs/
retention-days: 1
if-no-files-found: error
- name: Stop all workflows if failed
if: ${{ failure() && steps.required.conclusion == 'failure' }}
uses: ./.github/actions/workflow-stopper
with:
app-id: ${{ secrets.WORKFLOW_STOPPER_RUNNER_APP_ID }}
app-key: ${{ secrets.WORKFLOW_STOPPER_RUNNER_APP_KEY }}

build-implementers-guide:
runs-on: ubuntu-latest
Expand Down
Loading