From 57807416953ea0fad233c1d03ec58b77365e4738 Mon Sep 17 00:00:00 2001 From: Floris Bruynooghe Date: Mon, 8 Jan 2024 14:47:39 +0100 Subject: [PATCH 01/33] chore(ci): Do not test nightly rust on every PR Normal CI jobs for PRs now only run using the stable rust compiler, this gives fewer surprises to users. Instead the beta compiler is run in a new workflow which runs once a week. --- .github/workflows/beta.yaml | 19 +++++++++++++++++++ .github/workflows/tests.yaml | 8 ++++++-- 2 files changed, 25 insertions(+), 2 deletions(-) create mode 100644 .github/workflows/beta.yaml diff --git a/.github/workflows/beta.yaml b/.github/workflows/beta.yaml new file mode 100644 index 0000000000..92af26dc81 --- /dev/null +++ b/.github/workflows/beta.yaml @@ -0,0 +1,19 @@ +# Run tests using the beta Rust compiler + +name: Beta Rust + +on: + schedule: + # 06:50 UTC every Monday + - cron: '50 6 * * 1' + workflow_dispatch: + +concurrency: + group: beta-${{ github.workflow }}-${{ github.ref }} + cancel-in-progress: true + +jobs: + tests: + uses: './.github/workflows/tests.yaml' + with: + rust-version: beta diff --git a/.github/workflows/tests.yaml b/.github/workflows/tests.yaml index 9584816b77..97c64d3024 100644 --- a/.github/workflows/tests.yaml +++ b/.github/workflows/tests.yaml @@ -5,6 +5,10 @@ name: Tests on: workflow_call: inputs: + rust-version: + description: 'The version of the rust compiler to run' + type: string + default: 'stable' flaky: description: 'Whether to also run flaky tests' type: boolean @@ -29,7 +33,7 @@ jobs: fail-fast: false matrix: name: [ubuntu-latest, macOS-arm-latest] - rust: [nightly, stable] + rust: [${{ inputs.rust-version }}] features: [all, none, default] include: - name: ubuntu-latest @@ -114,7 +118,7 @@ jobs: fail-fast: false matrix: name: [windows-latest] - rust: [nightly, stable] + rust: [${{ inputs.rust-version}}] features: [all, none, default] target: - x86_64-pc-windows-msvc From 15d817a8fbfb117eb50fbcf4f5d02f13989547f7 Mon Sep 17 00:00:00 2001 From: Floris Bruynooghe Date: Mon, 8 Jan 2024 14:58:42 +0100 Subject: [PATCH 02/33] is it happier like this? --- .github/workflows/tests.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/tests.yaml b/.github/workflows/tests.yaml index 97c64d3024..0cc95ba5cd 100644 --- a/.github/workflows/tests.yaml +++ b/.github/workflows/tests.yaml @@ -33,7 +33,7 @@ jobs: fail-fast: false matrix: name: [ubuntu-latest, macOS-arm-latest] - rust: [${{ inputs.rust-version }}] + rust: [ ${{ inputs.rust-version }} ] features: [all, none, default] include: - name: ubuntu-latest From c423ec51ef2c5d50e362b2ee4728f5f447af50d6 Mon Sep 17 00:00:00 2001 From: Floris Bruynooghe Date: Mon, 8 Jan 2024 16:15:12 +0100 Subject: [PATCH 03/33] try as not a list? --- .github/workflows/tests.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/tests.yaml b/.github/workflows/tests.yaml index 0cc95ba5cd..1a4a885cd7 100644 --- a/.github/workflows/tests.yaml +++ b/.github/workflows/tests.yaml @@ -33,7 +33,7 @@ jobs: fail-fast: false matrix: name: [ubuntu-latest, macOS-arm-latest] - rust: [ ${{ inputs.rust-version }} ] + rust: ${{ inputs.rust-version }} features: [all, none, default] include: - name: ubuntu-latest From a3b2e1922a33eb16efb2a46bb9fed8b76aa1ee27 Mon Sep 17 00:00:00 2001 From: Floris Bruynooghe Date: Mon, 8 Jan 2024 16:16:13 +0100 Subject: [PATCH 04/33] of course we have this twice --- .github/workflows/tests.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/tests.yaml b/.github/workflows/tests.yaml index 1a4a885cd7..af59f015a1 100644 --- a/.github/workflows/tests.yaml +++ b/.github/workflows/tests.yaml @@ -118,7 +118,7 @@ jobs: fail-fast: false matrix: name: [windows-latest] - rust: [${{ inputs.rust-version}}] + rust: ${{ inputs.rust-version}} features: [all, none, default] target: - x86_64-pc-windows-msvc From 7a6201d5ae8f7e624429a1f1636c9fa02edc495d Mon Sep 17 00:00:00 2001 From: Floris Bruynooghe Date: Mon, 8 Jan 2024 16:18:54 +0100 Subject: [PATCH 05/33] one of these must work surely --- .github/workflows/tests.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/tests.yaml b/.github/workflows/tests.yaml index af59f015a1..e15e68423e 100644 --- a/.github/workflows/tests.yaml +++ b/.github/workflows/tests.yaml @@ -33,7 +33,7 @@ jobs: fail-fast: false matrix: name: [ubuntu-latest, macOS-arm-latest] - rust: ${{ inputs.rust-version }} + rust: [ '${{ inputs.rust-version }}' ] features: [all, none, default] include: - name: ubuntu-latest @@ -118,7 +118,7 @@ jobs: fail-fast: false matrix: name: [windows-latest] - rust: ${{ inputs.rust-version}} + rust: [ '${{ inputs.rust-version}}' ] features: [all, none, default] target: - x86_64-pc-windows-msvc From 53a0a78f4e40ce0fdf6542d464a8163010bd61b5 Mon Sep 17 00:00:00 2001 From: Floris Bruynooghe Date: Thu, 11 Jan 2024 10:40:09 +0100 Subject: [PATCH 06/33] Try hooking up notifications --- .github/workflows/beta.yaml | 19 +++++++++++++++++++ .github/workflows/tests.yaml | 2 ++ 2 files changed, 21 insertions(+) diff --git a/.github/workflows/beta.yaml b/.github/workflows/beta.yaml index 92af26dc81..ed501fd84b 100644 --- a/.github/workflows/beta.yaml +++ b/.github/workflows/beta.yaml @@ -17,3 +17,22 @@ jobs: uses: './.github/workflows/tests.yaml' with: rust-version: beta + notify: + needs: tests + if: ${{ always() }} + runs-on: ubuntu-latest + steps: + - uses: n0-computer/discord-webhook-notify@v1 + if: ${{ failure() }} + with: + severity: error + details: rustc beta tests failed + webhookUrl: ${{ secrets.DISCORD_N0_GITHUB_CHANNEL_WEBHOOK_URL }} + # TODO: temporarily to test the notification + - uses: n0-computer/discord-webhook-notify@v1 + if: ${{ success() }} + with: + severity: info + details: rustc beta tests succeeded + webhookUrl: ${{ secrets.DISCORD_N0_GITHUB_CHANNEL_WEBHOOK_URL }} + diff --git a/.github/workflows/tests.yaml b/.github/workflows/tests.yaml index e15e68423e..d5f8e145c8 100644 --- a/.github/workflows/tests.yaml +++ b/.github/workflows/tests.yaml @@ -109,6 +109,8 @@ jobs: export RUST_LOG=DEBUG fi cargo test --workspace --all-features --doc + # TODO: just to test the workflow + false build_and_test_windows: timeout-minutes: 30 From 10c0641434a44c1dedca2583999f89539b001c75 Mon Sep 17 00:00:00 2001 From: Floris Bruynooghe Date: Thu, 11 Jan 2024 10:41:20 +0100 Subject: [PATCH 07/33] test --- .github/workflows/beta.yaml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/beta.yaml b/.github/workflows/beta.yaml index ed501fd84b..41ca873be0 100644 --- a/.github/workflows/beta.yaml +++ b/.github/workflows/beta.yaml @@ -7,6 +7,8 @@ on: # 06:50 UTC every Monday - cron: '50 6 * * 1' workflow_dispatch: + # TODO: temporary to test in PR only + pull_request: concurrency: group: beta-${{ github.workflow }}-${{ github.ref }} From 808953defc84577dd718492b8c07fe26de570303 Mon Sep 17 00:00:00 2001 From: Floris Bruynooghe Date: Thu, 11 Jan 2024 11:03:27 +0100 Subject: [PATCH 08/33] try depend on upstream jobs --- .github/workflows/beta.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/beta.yaml b/.github/workflows/beta.yaml index 41ca873be0..05ae7f8bda 100644 --- a/.github/workflows/beta.yaml +++ b/.github/workflows/beta.yaml @@ -20,7 +20,7 @@ jobs: with: rust-version: beta notify: - needs: tests + needs: [build_and_test_nix, build_and_test_windows] if: ${{ always() }} runs-on: ubuntu-latest steps: From 42c9332336d3bae4cc7789b3042d2bec5082d47a Mon Sep 17 00:00:00 2001 From: Floris Bruynooghe Date: Thu, 11 Jan 2024 11:07:45 +0100 Subject: [PATCH 09/33] unknown jobs? sad --- .github/workflows/beta.yaml | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/.github/workflows/beta.yaml b/.github/workflows/beta.yaml index 05ae7f8bda..52ccc31754 100644 --- a/.github/workflows/beta.yaml +++ b/.github/workflows/beta.yaml @@ -20,21 +20,21 @@ jobs: with: rust-version: beta notify: - needs: [build_and_test_nix, build_and_test_windows] - if: ${{ always() }} + needs: tests + if: ${{ failure() }} runs-on: ubuntu-latest steps: - uses: n0-computer/discord-webhook-notify@v1 - if: ${{ failure() }} + # if: ${{ failure() }} with: severity: error details: rustc beta tests failed webhookUrl: ${{ secrets.DISCORD_N0_GITHUB_CHANNEL_WEBHOOK_URL }} # TODO: temporarily to test the notification - - uses: n0-computer/discord-webhook-notify@v1 - if: ${{ success() }} - with: - severity: info - details: rustc beta tests succeeded - webhookUrl: ${{ secrets.DISCORD_N0_GITHUB_CHANNEL_WEBHOOK_URL }} + # - uses: n0-computer/discord-webhook-notify@v1 + # if: ${{ success() }} + # with: + # severity: info + # details: rustc beta tests succeeded + # webhookUrl: ${{ secrets.DISCORD_N0_GITHUB_CHANNEL_WEBHOOK_URL }} From dcc259fb3093491c4e0a240b06e19b14bb1fccfc Mon Sep 17 00:00:00 2001 From: Floris Bruynooghe Date: Thu, 11 Jan 2024 11:11:00 +0100 Subject: [PATCH 10/33] sad --- .github/workflows/beta.yaml | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/.github/workflows/beta.yaml b/.github/workflows/beta.yaml index 52ccc31754..41ca873be0 100644 --- a/.github/workflows/beta.yaml +++ b/.github/workflows/beta.yaml @@ -21,20 +21,20 @@ jobs: rust-version: beta notify: needs: tests - if: ${{ failure() }} + if: ${{ always() }} runs-on: ubuntu-latest steps: - uses: n0-computer/discord-webhook-notify@v1 - # if: ${{ failure() }} + if: ${{ failure() }} with: severity: error details: rustc beta tests failed webhookUrl: ${{ secrets.DISCORD_N0_GITHUB_CHANNEL_WEBHOOK_URL }} # TODO: temporarily to test the notification - # - uses: n0-computer/discord-webhook-notify@v1 - # if: ${{ success() }} - # with: - # severity: info - # details: rustc beta tests succeeded - # webhookUrl: ${{ secrets.DISCORD_N0_GITHUB_CHANNEL_WEBHOOK_URL }} + - uses: n0-computer/discord-webhook-notify@v1 + if: ${{ success() }} + with: + severity: info + details: rustc beta tests succeeded + webhookUrl: ${{ secrets.DISCORD_N0_GITHUB_CHANNEL_WEBHOOK_URL }} From 1660eb573f1de29b84c0c78ae5ded7cea625a59f Mon Sep 17 00:00:00 2001 From: Floris Bruynooghe Date: Thu, 11 Jan 2024 11:11:43 +0100 Subject: [PATCH 11/33] do not run all tests while playing around --- .github/workflows/ci.yml | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index ceb702ce83..530c73559d 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -1,8 +1,9 @@ name: CI on: - pull_request: - types: [ 'labeled', 'unlabeled', 'opened', 'synchronize', 'reopened' ] + # TODO: temp + # pull_request: + # types: [ 'labeled', 'unlabeled', 'opened', 'synchronize', 'reopened' ] merge_group: push: branches: From 37e01ee5411bc12ebf68c794c1ec5d6d9dfce358 Mon Sep 17 00:00:00 2001 From: Floris Bruynooghe Date: Thu, 11 Jan 2024 11:22:49 +0100 Subject: [PATCH 12/33] show me some more --- .github/workflows/beta.yaml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/beta.yaml b/.github/workflows/beta.yaml index 41ca873be0..da7b6776d1 100644 --- a/.github/workflows/beta.yaml +++ b/.github/workflows/beta.yaml @@ -24,6 +24,8 @@ jobs: if: ${{ always() }} runs-on: ubuntu-latest steps: + - run: | + printf '${{ toJSON(needs) }}\n' - uses: n0-computer/discord-webhook-notify@v1 if: ${{ failure() }} with: From 2143eda99492daece7bff5bbc41d2788a7f4825b Mon Sep 17 00:00:00 2001 From: Floris Bruynooghe Date: Thu, 11 Jan 2024 11:27:28 +0100 Subject: [PATCH 13/33] better name --- .github/workflows/tests.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/tests.yaml b/.github/workflows/tests.yaml index d5f8e145c8..b2ac90156a 100644 --- a/.github/workflows/tests.yaml +++ b/.github/workflows/tests.yaml @@ -56,7 +56,7 @@ jobs: with: ref: ${{ inputs.git-ref }} - - name: Install ${{ matrix.rust }} + - name: Install ${{ matrix.rust }} rust uses: dtolnay/rust-toolchain@master with: toolchain: ${{ matrix.rust }} From 743f28cd25ce48ea6c8f7fa07c9ba4b2e4bf39e0 Mon Sep 17 00:00:00 2001 From: Floris Bruynooghe Date: Thu, 11 Jan 2024 12:04:00 +0100 Subject: [PATCH 14/33] show me some results --- .github/workflows/beta.yaml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/beta.yaml b/.github/workflows/beta.yaml index da7b6776d1..e1d7fdfca8 100644 --- a/.github/workflows/beta.yaml +++ b/.github/workflows/beta.yaml @@ -26,6 +26,8 @@ jobs: steps: - run: | printf '${{ toJSON(needs) }}\n' + result=$(${{ toJSON(needs) }} | jq .tests.result | tr -d \") + echo $result - uses: n0-computer/discord-webhook-notify@v1 if: ${{ failure() }} with: From a905c64984ae326b0e537dc74f13b3ad618b163e Mon Sep 17 00:00:00 2001 From: Floris Bruynooghe Date: Thu, 11 Jan 2024 12:08:51 +0100 Subject: [PATCH 15/33] disable some stuff to test --- .github/workflows/tests.yaml | 148 +++++++++++++++++------------------ 1 file changed, 74 insertions(+), 74 deletions(-) diff --git a/.github/workflows/tests.yaml b/.github/workflows/tests.yaml index b2ac90156a..dd5c091945 100644 --- a/.github/workflows/tests.yaml +++ b/.github/workflows/tests.yaml @@ -41,11 +41,11 @@ jobs: release-os: linux release-arch: amd64 runner: [self-hosted, linux, X64] - - name: macOS-arm-latest - os: macOS-latest - release-os: darwin - release-arch: aarch64 - runner: [self-hosted, macOS, ARM64] + # - name: macOS-arm-latest + # os: macOS-latest + # release-os: darwin + # release-arch: aarch64 + # runner: [self-hosted, macOS, ARM64] env: # Using self-hosted runners so use local cache for sccache and # not SCCACHE_GHA_ENABLED. @@ -112,72 +112,72 @@ jobs: # TODO: just to test the workflow false - build_and_test_windows: - timeout-minutes: 30 - name: "Tests" - runs-on: ${{ matrix.runner }} - strategy: - fail-fast: false - matrix: - name: [windows-latest] - rust: [ '${{ inputs.rust-version}}' ] - features: [all, none, default] - target: - - x86_64-pc-windows-msvc - include: - - name: windows-latest - os: windows - runner: [self-hosted, windows, x64] - env: - # Using self-hosted runners so use local cache for sccache and - # not SCCACHE_GHA_ENABLED. - RUSTC_WRAPPER: "sccache" - steps: - - name: Checkout - uses: actions/checkout@v4 - with: - ref: ${{ inputs.git-ref }} - - - name: Install ${{ matrix.rust }} - run: | - rustup toolchain install ${{ matrix.rust }} - rustup toolchain default ${{ matrix.rust }} - rustup target add ${{ matrix.target }} - rustup set default-host ${{ matrix.target }} - - - name: Install cargo-nextest - shell: powershell - run: | - $tmp = New-TemporaryFile | Rename-Item -NewName { $_ -replace 'tmp$', 'zip' } -PassThru - Invoke-WebRequest -OutFile $tmp https://get.nexte.st/latest/windows - $outputDir = if ($Env:CARGO_HOME) { Join-Path $Env:CARGO_HOME "bin" } else { "~/.cargo/bin" } - $tmp | Expand-Archive -DestinationPath $outputDir -Force - $tmp | Remove-Item - - - name: Select features - run: | - switch ("${{ matrix.features }}") { - "all" { - echo "FEATURES=--all-features" | Out-File -FilePath $Env:GITHUB_ENV -Encoding utf8 -Append - } - "none" { - echo "FEATURES=--no-default-features" | Out-File -FilePath $Env:GITHUB_ENV -Encoding utf8 -Append - } - "default" { - echo "FEATURES=" | Out-File -FilePath $Env:GITHUB_ENV -Encoding utf8 -Append - } - default { - Exit 1 - } - } - - - name: Install sccache - uses: mozilla-actions/sccache-action@v0.0.3 - - - uses: msys2/setup-msys2@v2 - - - name: tests - run: | - cargo nextest run --workspace ${{ env.FEATURES }} --lib --bins --tests --target ${{ matrix.target }} ${{ inputs.flaky && '--run-ignored all' }} - env: - RUST_LOG: "TRACE" + # build_and_test_windows: + # timeout-minutes: 30 + # name: "Tests" + # runs-on: ${{ matrix.runner }} + # strategy: + # fail-fast: false + # matrix: + # name: [windows-latest] + # rust: [ '${{ inputs.rust-version}}' ] + # features: [all, none, default] + # target: + # - x86_64-pc-windows-msvc + # include: + # - name: windows-latest + # os: windows + # runner: [self-hosted, windows, x64] + # env: + # # Using self-hosted runners so use local cache for sccache and + # # not SCCACHE_GHA_ENABLED. + # RUSTC_WRAPPER: "sccache" + # steps: + # - name: Checkout + # uses: actions/checkout@v4 + # with: + # ref: ${{ inputs.git-ref }} + + # - name: Install ${{ matrix.rust }} + # run: | + # rustup toolchain install ${{ matrix.rust }} + # rustup toolchain default ${{ matrix.rust }} + # rustup target add ${{ matrix.target }} + # rustup set default-host ${{ matrix.target }} + + # - name: Install cargo-nextest + # shell: powershell + # run: | + # $tmp = New-TemporaryFile | Rename-Item -NewName { $_ -replace 'tmp$', 'zip' } -PassThru + # Invoke-WebRequest -OutFile $tmp https://get.nexte.st/latest/windows + # $outputDir = if ($Env:CARGO_HOME) { Join-Path $Env:CARGO_HOME "bin" } else { "~/.cargo/bin" } + # $tmp | Expand-Archive -DestinationPath $outputDir -Force + # $tmp | Remove-Item + + # - name: Select features + # run: | + # switch ("${{ matrix.features }}") { + # "all" { + # echo "FEATURES=--all-features" | Out-File -FilePath $Env:GITHUB_ENV -Encoding utf8 -Append + # } + # "none" { + # echo "FEATURES=--no-default-features" | Out-File -FilePath $Env:GITHUB_ENV -Encoding utf8 -Append + # } + # "default" { + # echo "FEATURES=" | Out-File -FilePath $Env:GITHUB_ENV -Encoding utf8 -Append + # } + # default { + # Exit 1 + # } + # } + + # - name: Install sccache + # uses: mozilla-actions/sccache-action@v0.0.3 + + # - uses: msys2/setup-msys2@v2 + + # - name: tests + # run: | + # cargo nextest run --workspace ${{ env.FEATURES }} --lib --bins --tests --target ${{ matrix.target }} ${{ inputs.flaky && '--run-ignored all' }} + # env: + # RUST_LOG: "TRACE" From 0f7953dd3fe1bd5d3f44091ad17a9fd4b8daa0df Mon Sep 17 00:00:00 2001 From: Floris Bruynooghe Date: Thu, 11 Jan 2024 12:09:02 +0100 Subject: [PATCH 16/33] add some links --- .github/workflows/beta.yaml | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/.github/workflows/beta.yaml b/.github/workflows/beta.yaml index e1d7fdfca8..b7e117fb17 100644 --- a/.github/workflows/beta.yaml +++ b/.github/workflows/beta.yaml @@ -32,13 +32,17 @@ jobs: if: ${{ failure() }} with: severity: error - details: rustc beta tests failed + details: | + rustc beta tests failed + see https://github.com/n0-computer/iroh/actions/workflows/beta.yaml webhookUrl: ${{ secrets.DISCORD_N0_GITHUB_CHANNEL_WEBHOOK_URL }} # TODO: temporarily to test the notification - uses: n0-computer/discord-webhook-notify@v1 if: ${{ success() }} with: severity: info - details: rustc beta tests succeeded + details: | + rustc beta tests succeeded + see https://github.com/n0-computer/iroh/actions/workflows/beta.yaml webhookUrl: ${{ secrets.DISCORD_N0_GITHUB_CHANNEL_WEBHOOK_URL }} From 18699eea39391fd6627827e5309bffddf2408c90 Mon Sep 17 00:00:00 2001 From: Floris Bruynooghe Date: Thu, 11 Jan 2024 12:09:47 +0100 Subject: [PATCH 17/33] maybe don't parse ahead of time? --- .github/workflows/beta.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/beta.yaml b/.github/workflows/beta.yaml index b7e117fb17..2e08edbcd7 100644 --- a/.github/workflows/beta.yaml +++ b/.github/workflows/beta.yaml @@ -26,7 +26,7 @@ jobs: steps: - run: | printf '${{ toJSON(needs) }}\n' - result=$(${{ toJSON(needs) }} | jq .tests.result | tr -d \") + result=$(${{ needs }} | jq .tests.result | tr -d \") echo $result - uses: n0-computer/discord-webhook-notify@v1 if: ${{ failure() }} From 086b8c86fd409d2e777aeeffe631394269f508ce Mon Sep 17 00:00:00 2001 From: Floris Bruynooghe Date: Thu, 11 Jan 2024 12:11:27 +0100 Subject: [PATCH 18/33] single-line json? --- .github/workflows/beta.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/beta.yaml b/.github/workflows/beta.yaml index 2e08edbcd7..49ecae7357 100644 --- a/.github/workflows/beta.yaml +++ b/.github/workflows/beta.yaml @@ -26,7 +26,7 @@ jobs: steps: - run: | printf '${{ toJSON(needs) }}\n' - result=$(${{ needs }} | jq .tests.result | tr -d \") + result=$(echo "${{ toJSON(needs) }}" | jq .tests.result | tr -d \") echo $result - uses: n0-computer/discord-webhook-notify@v1 if: ${{ failure() }} From d38b979db636702fb2a464284f667f60151932b7 Mon Sep 17 00:00:00 2001 From: Floris Bruynooghe Date: Thu, 11 Jan 2024 12:12:38 +0100 Subject: [PATCH 19/33] single quotes --- .github/workflows/beta.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/beta.yaml b/.github/workflows/beta.yaml index 49ecae7357..4d24b9738f 100644 --- a/.github/workflows/beta.yaml +++ b/.github/workflows/beta.yaml @@ -26,7 +26,7 @@ jobs: steps: - run: | printf '${{ toJSON(needs) }}\n' - result=$(echo "${{ toJSON(needs) }}" | jq .tests.result | tr -d \") + result=$(echo '${{ toJSON(needs) }}' | jq .tests.result | tr -d \") echo $result - uses: n0-computer/discord-webhook-notify@v1 if: ${{ failure() }} From 7157d85c412aa33847d4acfee1e3257471bc1d4f Mon Sep 17 00:00:00 2001 From: Floris Bruynooghe Date: Thu, 11 Jan 2024 12:17:31 +0100 Subject: [PATCH 20/33] use extracted results --- .github/workflows/beta.yaml | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/.github/workflows/beta.yaml b/.github/workflows/beta.yaml index 4d24b9738f..108adeb399 100644 --- a/.github/workflows/beta.yaml +++ b/.github/workflows/beta.yaml @@ -24,12 +24,14 @@ jobs: if: ${{ always() }} runs-on: ubuntu-latest steps: - - run: | + - name: Extract test results + run: | printf '${{ toJSON(needs) }}\n' result=$(echo '${{ toJSON(needs) }}' | jq .tests.result | tr -d \") - echo $result + echo TESTS_RESULT=$result + echo TESTS_RESULT=$result >>$GITHUB_ENV - uses: n0-computer/discord-webhook-notify@v1 - if: ${{ failure() }} + if: ${{ env.TEST_RESULTS == 'failure' }} with: severity: error details: | From 5a8d20c8773141a0c8da14488a8d77797b0398ee Mon Sep 17 00:00:00 2001 From: Floris Bruynooghe Date: Thu, 11 Jan 2024 12:19:04 +0100 Subject: [PATCH 21/33] what now? --- .github/workflows/beta.yaml | 11 +++-------- 1 file changed, 3 insertions(+), 8 deletions(-) diff --git a/.github/workflows/beta.yaml b/.github/workflows/beta.yaml index 108adeb399..8d0e9544f3 100644 --- a/.github/workflows/beta.yaml +++ b/.github/workflows/beta.yaml @@ -39,12 +39,7 @@ jobs: see https://github.com/n0-computer/iroh/actions/workflows/beta.yaml webhookUrl: ${{ secrets.DISCORD_N0_GITHUB_CHANNEL_WEBHOOK_URL }} # TODO: temporarily to test the notification - - uses: n0-computer/discord-webhook-notify@v1 - if: ${{ success() }} - with: - severity: info - details: | - rustc beta tests succeeded - see https://github.com/n0-computer/iroh/actions/workflows/beta.yaml - webhookUrl: ${{ secrets.DISCORD_N0_GITHUB_CHANNEL_WEBHOOK_URL }} + - run: | + echo $TEST_RESULTS + if: ${{ env.TEST_RESULTS != 'failure' }} From 2562320522992f5e2717eb0b350d9d3bc29d5737 Mon Sep 17 00:00:00 2001 From: Floris Bruynooghe Date: Thu, 11 Jan 2024 12:21:26 +0100 Subject: [PATCH 22/33] f --- .github/workflows/beta.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/beta.yaml b/.github/workflows/beta.yaml index 8d0e9544f3..60715fbc95 100644 --- a/.github/workflows/beta.yaml +++ b/.github/workflows/beta.yaml @@ -31,7 +31,7 @@ jobs: echo TESTS_RESULT=$result echo TESTS_RESULT=$result >>$GITHUB_ENV - uses: n0-computer/discord-webhook-notify@v1 - if: ${{ env.TEST_RESULTS == 'failure' }} + if: ${{ env.TEST_RESULTS == failure }} with: severity: error details: | @@ -41,5 +41,5 @@ jobs: # TODO: temporarily to test the notification - run: | echo $TEST_RESULTS - if: ${{ env.TEST_RESULTS != 'failure' }} + if: ${{ env.TEST_RESULTS != failure }} From d386fd2f0f8727218f2004a9da37f715f8ba0a5d Mon Sep 17 00:00:00 2001 From: Floris Bruynooghe Date: Thu, 11 Jan 2024 12:23:51 +0100 Subject: [PATCH 23/33] go --- .github/workflows/beta.yaml | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/.github/workflows/beta.yaml b/.github/workflows/beta.yaml index 60715fbc95..4e231b069b 100644 --- a/.github/workflows/beta.yaml +++ b/.github/workflows/beta.yaml @@ -31,7 +31,7 @@ jobs: echo TESTS_RESULT=$result echo TESTS_RESULT=$result >>$GITHUB_ENV - uses: n0-computer/discord-webhook-notify@v1 - if: ${{ env.TEST_RESULTS == failure }} + if: ${{ env.TEST_RESULTS == 'failure' }} with: severity: error details: | @@ -41,5 +41,7 @@ jobs: # TODO: temporarily to test the notification - run: | echo $TEST_RESULTS - if: ${{ env.TEST_RESULTS != failure }} + echo ${{ env.TEST_RESULTS == 'failure' }} + echo ${{ env.TEST_RESULTS != 'failure' }} + if: ${{ env.TEST_RESULTS != 'failure' }} From e83a096e32f94ba82109eab6aa565c3a78be9c36 Mon Sep 17 00:00:00 2001 From: Floris Bruynooghe Date: Thu, 11 Jan 2024 12:24:48 +0100 Subject: [PATCH 24/33] what --- .github/workflows/beta.yaml | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/.github/workflows/beta.yaml b/.github/workflows/beta.yaml index 4e231b069b..0347430c94 100644 --- a/.github/workflows/beta.yaml +++ b/.github/workflows/beta.yaml @@ -30,6 +30,10 @@ jobs: result=$(echo '${{ toJSON(needs) }}' | jq .tests.result | tr -d \") echo TESTS_RESULT=$result echo TESTS_RESULT=$result >>$GITHUB_ENV + - run: | + echo $TEST_RESULTS + echo ${{ env.TEST_RESULTS == 'failure' }} + echo ${{ env.TEST_RESULTS != 'failure' }} - uses: n0-computer/discord-webhook-notify@v1 if: ${{ env.TEST_RESULTS == 'failure' }} with: @@ -38,10 +42,4 @@ jobs: rustc beta tests failed see https://github.com/n0-computer/iroh/actions/workflows/beta.yaml webhookUrl: ${{ secrets.DISCORD_N0_GITHUB_CHANNEL_WEBHOOK_URL }} - # TODO: temporarily to test the notification - - run: | - echo $TEST_RESULTS - echo ${{ env.TEST_RESULTS == 'failure' }} - echo ${{ env.TEST_RESULTS != 'failure' }} - if: ${{ env.TEST_RESULTS != 'failure' }} From 2e6c5abe5a4d6268363cc567a46a35fd4aa53aeb Mon Sep 17 00:00:00 2001 From: Floris Bruynooghe Date: Thu, 11 Jan 2024 12:27:11 +0100 Subject: [PATCH 25/33] oh --- .github/workflows/beta.yaml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/.github/workflows/beta.yaml b/.github/workflows/beta.yaml index 0347430c94..0b929b7eab 100644 --- a/.github/workflows/beta.yaml +++ b/.github/workflows/beta.yaml @@ -25,6 +25,7 @@ jobs: runs-on: ubuntu-latest steps: - name: Extract test results + if: ${{ always() }} run: | printf '${{ toJSON(needs) }}\n' result=$(echo '${{ toJSON(needs) }}' | jq .tests.result | tr -d \") @@ -34,8 +35,9 @@ jobs: echo $TEST_RESULTS echo ${{ env.TEST_RESULTS == 'failure' }} echo ${{ env.TEST_RESULTS != 'failure' }} + if: ${{ always() }} - uses: n0-computer/discord-webhook-notify@v1 - if: ${{ env.TEST_RESULTS == 'failure' }} + if: ${{ always() && env.TEST_RESULTS == 'failure' }} with: severity: error details: | From 7c3170a381d91f3de8ab52e261d05d0939cb2a12 Mon Sep 17 00:00:00 2001 From: Floris Bruynooghe Date: Thu, 11 Jan 2024 12:28:19 +0100 Subject: [PATCH 26/33] lol me --- .github/workflows/beta.yaml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/beta.yaml b/.github/workflows/beta.yaml index 0b929b7eab..76d6ada9d6 100644 --- a/.github/workflows/beta.yaml +++ b/.github/workflows/beta.yaml @@ -32,12 +32,12 @@ jobs: echo TESTS_RESULT=$result echo TESTS_RESULT=$result >>$GITHUB_ENV - run: | - echo $TEST_RESULTS - echo ${{ env.TEST_RESULTS == 'failure' }} - echo ${{ env.TEST_RESULTS != 'failure' }} + echo $TEST_RESULT + echo ${{ env.TEST_RESULT == 'failure' }} + echo ${{ env.TEST_RESULT != 'failure' }} if: ${{ always() }} - uses: n0-computer/discord-webhook-notify@v1 - if: ${{ always() && env.TEST_RESULTS == 'failure' }} + if: ${{ always() && env.TEST_RESULT == 'failure' }} with: severity: error details: | From b8be0c7ff31cc145efc142824f18052ebc8750d0 Mon Sep 17 00:00:00 2001 From: Floris Bruynooghe Date: Thu, 11 Jan 2024 12:30:45 +0100 Subject: [PATCH 27/33] c --- .github/workflows/beta.yaml | 11 +++-------- 1 file changed, 3 insertions(+), 8 deletions(-) diff --git a/.github/workflows/beta.yaml b/.github/workflows/beta.yaml index 76d6ada9d6..cb223c5155 100644 --- a/.github/workflows/beta.yaml +++ b/.github/workflows/beta.yaml @@ -25,19 +25,14 @@ jobs: runs-on: ubuntu-latest steps: - name: Extract test results - if: ${{ always() }} run: | printf '${{ toJSON(needs) }}\n' result=$(echo '${{ toJSON(needs) }}' | jq .tests.result | tr -d \") echo TESTS_RESULT=$result echo TESTS_RESULT=$result >>$GITHUB_ENV - - run: | - echo $TEST_RESULT - echo ${{ env.TEST_RESULT == 'failure' }} - echo ${{ env.TEST_RESULT != 'failure' }} - if: ${{ always() }} - - uses: n0-computer/discord-webhook-notify@v1 - if: ${{ always() && env.TEST_RESULT == 'failure' }} + - name: Notify discord on failure + uses: n0-computer/discord-webhook-notify@v1 + if: ${{ env.TEST_RESULT == 'failure' }} with: severity: error details: | From 5bcf7cf0b09e1ad9e59d6cc8fbf2aef54003a704 Mon Sep 17 00:00:00 2001 From: Floris Bruynooghe Date: Thu, 11 Jan 2024 12:31:26 +0100 Subject: [PATCH 28/33] always anyway? --- .github/workflows/beta.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/beta.yaml b/.github/workflows/beta.yaml index cb223c5155..4ca3b3d7d4 100644 --- a/.github/workflows/beta.yaml +++ b/.github/workflows/beta.yaml @@ -32,7 +32,7 @@ jobs: echo TESTS_RESULT=$result >>$GITHUB_ENV - name: Notify discord on failure uses: n0-computer/discord-webhook-notify@v1 - if: ${{ env.TEST_RESULT == 'failure' }} + if: ${{ always() && env.TEST_RESULT == 'failure' }} with: severity: error details: | From a7fd2d07246b9c5f378a6d7a61d73235ac5df5a2 Mon Sep 17 00:00:00 2001 From: Floris Bruynooghe Date: Thu, 11 Jan 2024 12:47:00 +0100 Subject: [PATCH 29/33] quotes for the lulz --- .github/workflows/beta.yaml | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/.github/workflows/beta.yaml b/.github/workflows/beta.yaml index 4ca3b3d7d4..f6fd99b63f 100644 --- a/.github/workflows/beta.yaml +++ b/.github/workflows/beta.yaml @@ -27,12 +27,15 @@ jobs: - name: Extract test results run: | printf '${{ toJSON(needs) }}\n' - result=$(echo '${{ toJSON(needs) }}' | jq .tests.result | tr -d \") + result=$(echo '${{ toJSON(needs) }}' | jq -r .tests.result) echo TESTS_RESULT=$result - echo TESTS_RESULT=$result >>$GITHUB_ENV + echo "TESTS_RESULT=$result" >>"$GITHUB_ENV" + - run: | + echo ${{ env.TEST_RESULT == 'failure' }} + echo ${{ env.TEST_RESULT != 'failure' }} - name: Notify discord on failure uses: n0-computer/discord-webhook-notify@v1 - if: ${{ always() && env.TEST_RESULT == 'failure' }} + if: ${{ env.TEST_RESULT == 'failure' }} with: severity: error details: | From bd860253f2c3224b23ff65ce146c913bdf7e996e Mon Sep 17 00:00:00 2001 From: Floris Bruynooghe Date: Thu, 11 Jan 2024 12:50:01 +0100 Subject: [PATCH 30/33] spelling, it's hard --- .github/workflows/beta.yaml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/beta.yaml b/.github/workflows/beta.yaml index f6fd99b63f..d9dd7bd08f 100644 --- a/.github/workflows/beta.yaml +++ b/.github/workflows/beta.yaml @@ -31,11 +31,11 @@ jobs: echo TESTS_RESULT=$result echo "TESTS_RESULT=$result" >>"$GITHUB_ENV" - run: | - echo ${{ env.TEST_RESULT == 'failure' }} - echo ${{ env.TEST_RESULT != 'failure' }} + echo ${{ env.TESTS_RESULT == 'failure' }} + echo ${{ env.TESTS_RESULT != 'failure' }} - name: Notify discord on failure uses: n0-computer/discord-webhook-notify@v1 - if: ${{ env.TEST_RESULT == 'failure' }} + if: ${{ env.TESTS_RESULT == 'failure' }} with: severity: error details: | From 59979fd341636f9b9709a8eca563b464dc817dd1 Mon Sep 17 00:00:00 2001 From: Floris Bruynooghe Date: Thu, 11 Jan 2024 12:54:12 +0100 Subject: [PATCH 31/33] get tests back in full --- .github/workflows/beta.yaml | 7 +- .github/workflows/tests.yaml | 148 +++++++++++++++++------------------ 2 files changed, 76 insertions(+), 79 deletions(-) diff --git a/.github/workflows/beta.yaml b/.github/workflows/beta.yaml index d9dd7bd08f..e1be08e1cf 100644 --- a/.github/workflows/beta.yaml +++ b/.github/workflows/beta.yaml @@ -30,16 +30,13 @@ jobs: result=$(echo '${{ toJSON(needs) }}' | jq -r .tests.result) echo TESTS_RESULT=$result echo "TESTS_RESULT=$result" >>"$GITHUB_ENV" - - run: | - echo ${{ env.TESTS_RESULT == 'failure' }} - echo ${{ env.TESTS_RESULT != 'failure' }} - name: Notify discord on failure uses: n0-computer/discord-webhook-notify@v1 if: ${{ env.TESTS_RESULT == 'failure' }} with: severity: error details: | - rustc beta tests failed - see https://github.com/n0-computer/iroh/actions/workflows/beta.yaml + Rustc beta tests failed + See https://github.com/n0-computer/iroh/actions/workflows/beta.yaml webhookUrl: ${{ secrets.DISCORD_N0_GITHUB_CHANNEL_WEBHOOK_URL }} diff --git a/.github/workflows/tests.yaml b/.github/workflows/tests.yaml index dd5c091945..b2ac90156a 100644 --- a/.github/workflows/tests.yaml +++ b/.github/workflows/tests.yaml @@ -41,11 +41,11 @@ jobs: release-os: linux release-arch: amd64 runner: [self-hosted, linux, X64] - # - name: macOS-arm-latest - # os: macOS-latest - # release-os: darwin - # release-arch: aarch64 - # runner: [self-hosted, macOS, ARM64] + - name: macOS-arm-latest + os: macOS-latest + release-os: darwin + release-arch: aarch64 + runner: [self-hosted, macOS, ARM64] env: # Using self-hosted runners so use local cache for sccache and # not SCCACHE_GHA_ENABLED. @@ -112,72 +112,72 @@ jobs: # TODO: just to test the workflow false - # build_and_test_windows: - # timeout-minutes: 30 - # name: "Tests" - # runs-on: ${{ matrix.runner }} - # strategy: - # fail-fast: false - # matrix: - # name: [windows-latest] - # rust: [ '${{ inputs.rust-version}}' ] - # features: [all, none, default] - # target: - # - x86_64-pc-windows-msvc - # include: - # - name: windows-latest - # os: windows - # runner: [self-hosted, windows, x64] - # env: - # # Using self-hosted runners so use local cache for sccache and - # # not SCCACHE_GHA_ENABLED. - # RUSTC_WRAPPER: "sccache" - # steps: - # - name: Checkout - # uses: actions/checkout@v4 - # with: - # ref: ${{ inputs.git-ref }} - - # - name: Install ${{ matrix.rust }} - # run: | - # rustup toolchain install ${{ matrix.rust }} - # rustup toolchain default ${{ matrix.rust }} - # rustup target add ${{ matrix.target }} - # rustup set default-host ${{ matrix.target }} - - # - name: Install cargo-nextest - # shell: powershell - # run: | - # $tmp = New-TemporaryFile | Rename-Item -NewName { $_ -replace 'tmp$', 'zip' } -PassThru - # Invoke-WebRequest -OutFile $tmp https://get.nexte.st/latest/windows - # $outputDir = if ($Env:CARGO_HOME) { Join-Path $Env:CARGO_HOME "bin" } else { "~/.cargo/bin" } - # $tmp | Expand-Archive -DestinationPath $outputDir -Force - # $tmp | Remove-Item - - # - name: Select features - # run: | - # switch ("${{ matrix.features }}") { - # "all" { - # echo "FEATURES=--all-features" | Out-File -FilePath $Env:GITHUB_ENV -Encoding utf8 -Append - # } - # "none" { - # echo "FEATURES=--no-default-features" | Out-File -FilePath $Env:GITHUB_ENV -Encoding utf8 -Append - # } - # "default" { - # echo "FEATURES=" | Out-File -FilePath $Env:GITHUB_ENV -Encoding utf8 -Append - # } - # default { - # Exit 1 - # } - # } - - # - name: Install sccache - # uses: mozilla-actions/sccache-action@v0.0.3 - - # - uses: msys2/setup-msys2@v2 - - # - name: tests - # run: | - # cargo nextest run --workspace ${{ env.FEATURES }} --lib --bins --tests --target ${{ matrix.target }} ${{ inputs.flaky && '--run-ignored all' }} - # env: - # RUST_LOG: "TRACE" + build_and_test_windows: + timeout-minutes: 30 + name: "Tests" + runs-on: ${{ matrix.runner }} + strategy: + fail-fast: false + matrix: + name: [windows-latest] + rust: [ '${{ inputs.rust-version}}' ] + features: [all, none, default] + target: + - x86_64-pc-windows-msvc + include: + - name: windows-latest + os: windows + runner: [self-hosted, windows, x64] + env: + # Using self-hosted runners so use local cache for sccache and + # not SCCACHE_GHA_ENABLED. + RUSTC_WRAPPER: "sccache" + steps: + - name: Checkout + uses: actions/checkout@v4 + with: + ref: ${{ inputs.git-ref }} + + - name: Install ${{ matrix.rust }} + run: | + rustup toolchain install ${{ matrix.rust }} + rustup toolchain default ${{ matrix.rust }} + rustup target add ${{ matrix.target }} + rustup set default-host ${{ matrix.target }} + + - name: Install cargo-nextest + shell: powershell + run: | + $tmp = New-TemporaryFile | Rename-Item -NewName { $_ -replace 'tmp$', 'zip' } -PassThru + Invoke-WebRequest -OutFile $tmp https://get.nexte.st/latest/windows + $outputDir = if ($Env:CARGO_HOME) { Join-Path $Env:CARGO_HOME "bin" } else { "~/.cargo/bin" } + $tmp | Expand-Archive -DestinationPath $outputDir -Force + $tmp | Remove-Item + + - name: Select features + run: | + switch ("${{ matrix.features }}") { + "all" { + echo "FEATURES=--all-features" | Out-File -FilePath $Env:GITHUB_ENV -Encoding utf8 -Append + } + "none" { + echo "FEATURES=--no-default-features" | Out-File -FilePath $Env:GITHUB_ENV -Encoding utf8 -Append + } + "default" { + echo "FEATURES=" | Out-File -FilePath $Env:GITHUB_ENV -Encoding utf8 -Append + } + default { + Exit 1 + } + } + + - name: Install sccache + uses: mozilla-actions/sccache-action@v0.0.3 + + - uses: msys2/setup-msys2@v2 + + - name: tests + run: | + cargo nextest run --workspace ${{ env.FEATURES }} --lib --bins --tests --target ${{ matrix.target }} ${{ inputs.flaky && '--run-ignored all' }} + env: + RUST_LOG: "TRACE" From ee93ded26ad05b29351b4531cd31560fc2f8265f Mon Sep 17 00:00:00 2001 From: Floris Bruynooghe Date: Thu, 11 Jan 2024 13:00:19 +0100 Subject: [PATCH 32/33] make this pass again --- .github/workflows/tests.yaml | 2 -- 1 file changed, 2 deletions(-) diff --git a/.github/workflows/tests.yaml b/.github/workflows/tests.yaml index b2ac90156a..c1d765ef5f 100644 --- a/.github/workflows/tests.yaml +++ b/.github/workflows/tests.yaml @@ -109,8 +109,6 @@ jobs: export RUST_LOG=DEBUG fi cargo test --workspace --all-features --doc - # TODO: just to test the workflow - false build_and_test_windows: timeout-minutes: 30 From 74055272fb1f0c5b28cdf02c58282a16c1ba0ea2 Mon Sep 17 00:00:00 2001 From: Floris Bruynooghe Date: Thu, 11 Jan 2024 13:01:19 +0100 Subject: [PATCH 33/33] Fixup triggers to the non-testing values --- .github/workflows/beta.yaml | 2 -- .github/workflows/ci.yml | 5 ++--- 2 files changed, 2 insertions(+), 5 deletions(-) diff --git a/.github/workflows/beta.yaml b/.github/workflows/beta.yaml index e1be08e1cf..cc8988c853 100644 --- a/.github/workflows/beta.yaml +++ b/.github/workflows/beta.yaml @@ -7,8 +7,6 @@ on: # 06:50 UTC every Monday - cron: '50 6 * * 1' workflow_dispatch: - # TODO: temporary to test in PR only - pull_request: concurrency: group: beta-${{ github.workflow }}-${{ github.ref }} diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 530c73559d..ceb702ce83 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -1,9 +1,8 @@ name: CI on: - # TODO: temp - # pull_request: - # types: [ 'labeled', 'unlabeled', 'opened', 'synchronize', 'reopened' ] + pull_request: + types: [ 'labeled', 'unlabeled', 'opened', 'synchronize', 'reopened' ] merge_group: push: branches: