Skip to content

Commit

Permalink
Merge branch 'main' into elmattic/eth-trace-block
Browse files Browse the repository at this point in the history
  • Loading branch information
elmattic authored Jan 9, 2025
2 parents 284a66f + e6df30c commit d1e1ac6
Show file tree
Hide file tree
Showing 4 changed files with 131 additions and 0 deletions.
2 changes: 2 additions & 0 deletions .github/workflows/docker.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,13 +12,15 @@ on:
- "*"
paths-ignore:
- 'docs/**'
- '.github/workflows/docs-*.yml'
merge_group:
pull_request:
# This needs to be declared explicitly so that the job is actually
# run when moved out of draft.
types: [opened, synchronize, reopened, ready_for_review]
paths-ignore:
- 'docs/**'
- '.github/workflows/docs-*.yml'

env:
CI: 1
Expand Down
99 changes: 99 additions & 0 deletions .github/workflows/docs-required-override.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,99 @@
# This workflow is triggered by changes on the documentation. Normally, if only documentation is modified, the required Forest checks are not triggered which makes it impossible to merge the PR. See <https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/collaborating-on-repositories-with-code-quality-features/troubleshooting-required-status-checks#handling-skipped-but-required-checks>. The workaround is to provide no-op jobs that are triggered by the same events as the docs-check job. This way, the "required checks" are passing and the PR can be merged.
# We check that changes affect only the documentation and that no other changes are present. If this is the case, we trigger the no-op jobs.

name: Docs Required Override
concurrency:
group: '${{ github.workflow }}-${{ github.ref }}'
cancel-in-progress: '${{ github.ref != ''refs/heads/main'' }}'

on:
workflow_dispatch:
merge_group:
pull_request:
branches:
- main
paths:
- '**.md'
- 'docs/**'
- '.github/workflows/docs-*.yml'
push:
branches:
- main
paths:
- '**.md'
- 'docs/**'
- '.github/workflows/docs-*.yml'

jobs:
# We need this because merge groups dont support path filters
# https://github.com/community/community/discussions/45899
changes-docs:
runs-on: ubuntu-latest
outputs:
changesFound: ${{ steps.filter.outputs.changesFound }}
steps:
- uses: actions/checkout@v4
- uses: dorny/paths-filter@v3
id: filter
with:
filters: |
changesFound:
- 'docs/**'
- '**.md'
- '.github/workflows/docs-*.yml'
changes-not-docs:
runs-on: ubuntu-latest
outputs:
otherChangesFound: ${{ steps.filter.outputs.otherChangesFound }}
steps:
- uses: actions/checkout@v4
- uses: dorny/paths-filter@v3
id: filter
with:
predicate-quantifier: every
filters: |
otherChangesFound:
- '**'
- '!docs/**'
- '!**.md'
- '!.github/workflows/docs-*.yml'
override_integration_tests:
name: Integration tests status
runs-on: ubuntu-latest
needs:
- changes-docs
- changes-not-docs
if: ${{ (needs.changes-docs.outputs.changesFound == 'true') && (needs.changes-not-docs.outputs.otherChangesFound == 'false') }}
steps:
- run: echo "No-op job to trigger the required checks."

override_unit_tests:
name: tests
runs-on: ubuntu-latest
needs:
- changes-docs
- changes-not-docs
if: ${{ (needs.changes-docs.outputs.changesFound == 'true') && (needs.changes-not-docs.outputs.otherChangesFound == 'false') }}
steps:
- run: echo "No-op job to trigger the required checks."

override_unit_tests_release:
name: tests-release
runs-on: ubuntu-latest
needs:
- changes-docs
- changes-not-docs
if: ${{ (needs.changes-docs.outputs.changesFound == 'true') && (needs.changes-not-docs.outputs.otherChangesFound == 'false') }}
steps:
- run: echo "No-op job to trigger the required checks."

override_docker_build:
name: Build images and push to GHCR
runs-on: ubuntu-latest
needs:
- changes-docs
- changes-not-docs
if: ${{ (needs.changes-docs.outputs.changesFound == 'true') && (needs.changes-not-docs.outputs.otherChangesFound == 'false') }}
steps:
- run: echo "No-op job to trigger the required checks."
28 changes: 28 additions & 0 deletions .github/workflows/forest.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,11 +10,13 @@ concurrency:
- main
paths-ignore:
- 'docs/**'
- '.github/workflows/docs-*.yml'
push:
branches:
- main
paths-ignore:
- 'docs/**'
- '.github/workflows/docs-*.yml'
schedule:
- cron: 0 0 * * *
env:
Expand Down Expand Up @@ -565,3 +567,29 @@ jobs:
- name: Dump docker logs
if: always()
uses: jwalton/gh-docker-logs@v2
# Umbrella job to aggregate all integration tests and get their status
integration-tests-status:
needs:
- build-macos
- build-ubuntu
- cargo-publish-dry-run
- forest-cli-check
- calibnet-check
- calibnet-stateless-mode-check
- state-migrations-check
- calibnet-wallet-check
- calibnet-export-check
- calibnet-no-discovery-checks
- calibnet-kademlia-checks
- calibnet-eth-mapping-check
- db-migration-checks
- db-migration-checks-car-db
- local-devnet-check
- local-devnet-curio-check
- calibnet-rpc-checks
- bootstrap-checks-forest
- bootstrap-checks-lotus
name: Integration tests status
runs-on: ubuntu-24.04
steps:
- run: echo "All integration tests passed."
2 changes: 2 additions & 0 deletions .github/workflows/unit-tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,11 +16,13 @@ on:
types: [opened, synchronize, reopened, ready_for_review]
paths-ignore:
- 'docs/**'
- '.github/workflows/docs-*.yml'
push:
branches:
- main
paths-ignore:
- 'docs/**'
- '.github/workflows/docs-*.yml'
schedule:
- cron: "0 0 * * *"

Expand Down

0 comments on commit d1e1ac6

Please sign in to comment.