up-to-date action can be activated by auto-merge-bot (#272) #5
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
name: Check Migrations | |
on: | |
push: | |
branches: ["main", "release-*"] | |
pull_request: | |
workflow_dispatch: | |
# Cancel a currently running workflow from the same PR, branch or tag when a new workflow is | |
# triggered (ref https://stackoverflow.com/a/72408109) | |
concurrency: | |
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }} | |
cancel-in-progress: true | |
# drop permissions for default token | |
permissions: {} | |
jobs: | |
runtime-matrix: | |
runs-on: ubuntu-latest | |
outputs: | |
runtime: ${{ steps.runtime.outputs.runtime }} | |
name: Extract tasks from matrix | |
steps: | |
- uses: actions/checkout@v2 | |
- id: runtime | |
run: | | |
# Filter out runtimes that don't have a URI | |
TASKS=$(jq '[.[] | select(.uri != null)]' .github/workflows/runtimes-matrix.json) | |
SKIPPED_TASKS=$(jq '[.[] | select(.uri == null)]' .github/workflows/runtimes-matrix.json) | |
echo --- Running the following tasks --- | |
echo $TASKS | |
echo --- Skipping the following tasks due to not having a uri field --- | |
echo $SKIPPED_TASKS | |
# Strip whitespace from Tasks now that we've logged it | |
TASKS=$(echo $TASKS | jq -c .) | |
echo "runtime=$TASKS" >> $GITHUB_OUTPUT | |
check-migrations: | |
needs: [runtime-matrix] | |
continue-on-error: true | |
runs-on: ubuntu-latest | |
strategy: | |
matrix: | |
runtime: ${{ fromJSON(needs.runtime-matrix.outputs.runtime) }} | |
steps: | |
- name: Checkout sources | |
uses: actions/checkout@v3 | |
- name: Build EXTRA_ARGS | |
run: | | |
# When running on relay, we don't need weight checks. | |
EXTRA_FLAGS="" | |
if [[ "${{ matrix.runtime.is_relay }}" == "true" ]]; then | |
EXTRA_FLAGS+="--no-weight-warnings" | |
echo "Disabling weight checks since we are on a relay" | |
else | |
echo "Enabling weight checks since we are not on a relay" | |
fi | |
# Disable the spec version check when we dont want to release. | |
if ! .github/changelog-processor.py CHANGELOG.md --should-release ; then | |
EXTRA_FLAGS+=" --disable-spec-version-check" | |
echo "Disabling the spec version check since we are not releasing" | |
else | |
echo "Enabling the spec version check since we are releasing" | |
fi | |
echo "Flags: $EXTRA_FLAGS" | |
echo "EXTRA_ARGS=$EXTRA_FLAGS" >> $GITHUB_ENV | |
- name: Run ${{ matrix.runtime.name }} Runtime Checks | |
uses: "paritytech/[email protected]" | |
with: | |
runtime-package: ${{ matrix.runtime.package }} | |
node-uri: ${{ matrix.runtime.uri }} | |
checks: "pre-and-post" | |
extra-args: ${{ env.EXTRA_ARGS }} |