Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
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
  •  
  •  
  •  
33 changes: 0 additions & 33 deletions .forklift/config-gitlab.toml

This file was deleted.

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.88.0-2025-06-27-v202507221446"
IMAGE="docker.io/paritytech/ci-unified:bullseye-1.88.0-2025-06-27-v202509090751"
6 changes: 3 additions & 3 deletions .github/scripts/parse-zombienet-tests.py
Original file line number Diff line number Diff line change
Expand Up @@ -24,13 +24,13 @@
import argparse
import yaml
import json
import fnmatch
import re

def parse_args():
parser = argparse.ArgumentParser(description="Parse test matrix YAML file with optional filtering")
parser.add_argument("--matrix", required=True, help="Path to the YAML matrix file")
parser.add_argument("--flaky-tests", default="", help="Newline-separated list of flaky job names")
parser.add_argument("--test-pattern", default="", help="Pattern to match job_name (substring or glob)")
parser.add_argument("--test-pattern", default="", help="Regex pattern to match job_name")
return parser.parse_args()

def load_jobs(matrix_path):
Expand All @@ -46,7 +46,7 @@ def filter_jobs(jobs, flaky_tests, test_pattern):

# If test_pattern provided then don't care about flaky tests, just check test_pattern
if test_pattern and len(test_pattern) > 0:
if fnmatch.fnmatch(name, f"*{test_pattern}*"):
if re.search(test_pattern, name):
filtered.append(job)
elif name not in flaky_set:
filtered.append(job)
Expand Down
7 changes: 6 additions & 1 deletion .github/workflows/benchmarks-subsystem.yml
Original file line number Diff line number Diff line change
Expand Up @@ -65,7 +65,7 @@ jobs:
- name: Run Benchmarks
id: run-benchmarks
run: |
forklift cargo bench -p ${{ matrix.features.name }} --bench ${{ matrix.features.bench }} --features subsystem-benchmarks || echo "Benchmarks failed"
forklift cargo bench -p ${{ matrix.features.name }} --bench ${{ matrix.features.bench }} --features subsystem-benchmarks
ls -lsa ./charts

- name: Upload artifacts
Expand Down Expand Up @@ -117,6 +117,7 @@ jobs:
benchmark-data-dir-path: ./bench/${{ env.BENCH }}
github-token: ${{ steps.app-token.outputs.token }}
auto-push: true
max-items-in-chart: 500

- name: Generate ${{ env.BENCH }}
env:
Expand All @@ -129,6 +130,7 @@ jobs:
benchmark-data-dir-path: ./bench/${{ env.BENCH }}
github-token: ${{ steps.app-token.outputs.token }}
auto-push: true
max-items-in-chart: 500

- name: Generate ${{ env.BENCH }}
env:
Expand All @@ -141,6 +143,7 @@ jobs:
benchmark-data-dir-path: ./bench/${{ env.BENCH }}
github-token: ${{ steps.app-token.outputs.token }}
auto-push: true
max-items-in-chart: 500

- name: Generate ${{ env.BENCH }}
env:
Expand All @@ -153,6 +156,7 @@ jobs:
benchmark-data-dir-path: ./bench/${{ env.BENCH }}
github-token: ${{ steps.app-token.outputs.token }}
auto-push: true
max-items-in-chart: 500

- name: Generate ${{ env.BENCH }}
env:
Expand All @@ -165,3 +169,4 @@ jobs:
benchmark-data-dir-path: ./bench/${{ env.BENCH }}
github-token: ${{ steps.app-token.outputs.token }}
auto-push: true
max-items-in-chart: 500
7 changes: 2 additions & 5 deletions .github/workflows/release-30_publish_release_draft.yml
Original file line number Diff line number Diff line change
Expand Up @@ -128,9 +128,6 @@ jobs:

echo "Version: $VERSION"

ls -la ${{ github.workspace}}/runtimes
ls -la ${{ github.workspace}}/prdoc/stable2556

./scripts/release/build-changelogs.sh

- name: Archive artifact context.json
Expand All @@ -147,7 +144,7 @@ jobs:
GITHUB_TOKEN: ${{ steps.generate_write_token.outputs.token }}
run: |
gh release create ${{ env.REL_TAG }} \
--repo ${{ github.repository }} \
--repo paritytech/polkadot-sdk \
--draft \
--title "Polkadot ${{ env.REL_TAG }}" \
--notes-file ${{ github.workspace}}/scripts/release/RELEASE_DRAFT.md
Expand Down Expand Up @@ -266,7 +263,7 @@ jobs:

post_to_matrix:
runs-on: ubuntu-latest
needs: [ validate-inputs, publish-release-draft ]
needs: [ validate-inputs, publish-release-draft, publish-runtimes, publish-release-artifacts ]
environment: release
strategy:
matrix:
Expand Down
26 changes: 26 additions & 0 deletions .github/workflows/release-reusable-rc-build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -179,6 +179,32 @@ jobs:

- name: Install protobuf
run: brew install protobuf

- name: Install solc
run: brew install solidity

- name: Install resolc
run: |
VERSION="0.3.0"
ASSET_URL="https://github.com/paritytech/revive/releases/download/v$VERSION/resolc-universal-apple-darwin"
echo "Downloading resolc v$VERSION from $ASSET_URL"
curl -Lsf --show-error -o $HOME/.cargo/bin/resolc "$ASSET_URL"
chmod +x $HOME/.cargo/bin/resolc
xattr -c $HOME/.cargo/bin/resolc
resolc --version

- name: Install llvm
run: |
brew install llvm@21

- name: Set dynamic library path
run: |
LLVM_PATH=$(brew --prefix llvm)
export LIBCLANG_PATH="$LLVM_PATH/lib"
export LDFLAGS="-L$LLVM_PATH/lib"
export CPPFLAGS="-I$LLVM_PATH/include"
echo "DYLD_LIBRARY_PATH=$LLVM_PATH/lib" >> $GITHUB_ENV

- name: Install gpg
run: |
brew install gnupg
Expand Down
94 changes: 94 additions & 0 deletions .github/workflows/tests-linux-stable-xp.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,94 @@
# GHA for test-linux-stable-int, test-linux-stable, test-linux-stable-oldkernel with new runners
name: tests linux stable experimental

on:
push:
branches:
- master
pull_request:
types: [opened, synchronize, reopened, ready_for_review]
merge_group:
concurrency:
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
cancel-in-progress: true

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

# No filter for 'all_security_features_work' and 'nonexistent_cache_dir'
# run all tests on cattery runners
test-linux-stable-no-try-runtime:
needs: [preflight]
if: ${{ needs.preflight.outputs.changes_rust }}
runs-on: parity-large-test
timeout-minutes: 60
container:
image: ${{ needs.preflight.outputs.IMAGE }}
options: --privileged
strategy:
fail-fast: false
matrix:
partition: [1/2, 2/2]
env:
RUST_TOOLCHAIN: stable
# Enable debug assertions since we are running optimized builds for testing
# but still want to have debug assertions.
RUSTFLAGS: "-Cdebug-assertions=y -Dwarnings"
steps:
- name: Checkout
uses: actions/checkout@v4
- name: script
id: required
run: |
forklift cargo nextest run --workspace \
--locked \
--release \
--no-fail-fast \
--features experimental,ci-only-tests \
--partition count:${{ matrix.partition }}
# - name: Stop all workflows if failed
# if: ${{ failure() && steps.required.conclusion == 'failure' && !github.event.pull_request.head.repo.fork }}
# uses: ./.github/actions/workflow-stopper
# with:
# app-id: ${{ secrets.WORKFLOW_STOPPER_RUNNER_APP_ID }}
# app-key: ${{ secrets.WORKFLOW_STOPPER_RUNNER_APP_KEY }}

test-linux-stable:
needs: [preflight]
runs-on: ${{ matrix.runners }}
timeout-minutes: 60
strategy:
fail-fast: false
matrix:
partition: [1/3, 2/3, 3/3]
runners: [parity-large-test, parity-oldlinux-test]
container:
image: ${{ needs.preflight.outputs.IMAGE }}
# needed for tests that use unshare syscall
options: --privileged
env:
RUST_TOOLCHAIN: stable
# Enable debug assertions since we are running optimized builds for testing
# but still want to have debug assertions.
RUSTFLAGS: "-Cdebug-assertions=y -Dwarnings"
steps:
- name: Checkout
uses: actions/checkout@v4
- name: script
id: required
run: |
# Fixes "detected dubious ownership" error in the ci
git config --global --add safe.directory '*'
forklift cargo nextest run \
--workspace \
--locked \
--release \
--no-fail-fast \
--cargo-quiet \
--features try-runtime,experimental,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 --cargo-quiet
16 changes: 16 additions & 0 deletions .github/workflows/tests-misc.yml
Original file line number Diff line number Diff line change
Expand Up @@ -370,6 +370,21 @@ jobs:
components: cargo, clippy, rust-docs, rust-src, rustfmt, rustc, rust-std
- name: Install protobuf
run: brew install protobuf
- name: install solc
run: brew install solidity
- name: Install resolc
run: |
VERSION="0.3.0"
ASSET_URL="https://github.com/paritytech/revive/releases/download/v$VERSION/resolc-universal-apple-darwin"
echo "Downloading resolc v$VERSION from $ASSET_URL"
curl -Lsf --show-error -o $HOME/.cargo/bin/resolc "$ASSET_URL"
chmod +x $HOME/.cargo/bin/resolc
xattr -c $HOME/.cargo/bin/resolc
resolc --version
- name: Install llvm
run: |
brew install llvm@20
brew link llvm@20
- name: cargo info
run: |
echo "######## rustup show ########"
Expand Down Expand Up @@ -406,3 +421,4 @@ jobs:
else
echo '### Good job! All the required jobs passed 🚀' >> $GITHUB_STEP_SUMMARY
fi

2 changes: 0 additions & 2 deletions .github/zombienet-flaky-tests
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,5 @@ zombienet-polkadot-functional-spam-statement-distribution-requests
zombienet-polkadot-misc-0001-parachains-paritydb
zombienet-polkadot-functional-duplicate-collations
zombienet-substrate-0002-validators-warp-sync
zombienet-cumulus-0002-pov_recovery
zombienet-cumulus-0006-rpc_collator_builds_blocks
zombienet-cumulus-0009-elastic_scaling_pov_recovery
zombienet-cumulus-0010-elastic_scaling_multiple_block_per_slot
7 changes: 6 additions & 1 deletion .github/zombienet-tests/ZOMBIENET_CI.md
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@ Usage: .github/scripts/dispatch-zombienet-workflow.sh -w <workflow-file> -b <bra
-w: Workflow file (required)
-b: Branch name (required)
-m: Max triggers (optional, default: infinite)
-p: Test pattern (optional)
-p: Test pattern (optional, supports regex)
```

The script automatically creates a CSV file (`workflow_results_YYYYMMDD_HHMMSS.csv`) containing job results with columns: job_id, job_name, conclusion, started_at, branch, job_url.
Expand All @@ -60,6 +60,11 @@ The script automatically creates a CSV file (`workflow_results_YYYYMMDD_HHMMSS.c
.github/scripts/dispatch-zombienet-workflow.sh -w zombienet_substrate.yml -b "my-branch" -p zombienet-substrate-0000-block-building
```

**Run multiple specific tests using regex pattern:**
```bash
.github/scripts/dispatch-zombienet-workflow.sh -w zombienet_cumulus.yml -b "my-branch" -p "zombienet-cumulus-0002-pov_recovery|zombienet-cumulus-0006-rpc_collator_builds_blocks"
```

### Requirements

- Run from `polkadot-sdk` repository root
Expand Down
6 changes: 0 additions & 6 deletions .github/zombienet-tests/zombienet_cumulus_tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,9 +4,6 @@
cumulus-image: "test-parachain"
use-zombienet-sdk: true

# Disabled, occasionally fails
# Takes too much CPU when spawning all nodes at the same time
# Re-enable when https://github.com/paritytech/zombienet-sdk/issues/371 is implemented
- job-name: "zombienet-cumulus-0002-pov_recovery"
test-filter: "zombie_ci::pov_recovery::pov_recovery"
runner-type: "large"
Expand All @@ -31,9 +28,6 @@
cumulus-image: "test-parachain"
use-zombienet-sdk: true

# Disabled, occasionally fails
# Takes too much CPU when spawning all nodes at the same time
# Re-enable when https://github.com/paritytech/zombienet-sdk/issues/371 is implemented
- job-name: "zombienet-cumulus-0006-rpc_collator_builds_blocks"
test-filter: "zombie_ci::rpc_collator_build_blocks::rpc_collator_builds_blocks"
runner-type: "large"
Expand Down
Loading
Loading