From aadf8fd86655d6398b64fda65d72783829cdcb78 Mon Sep 17 00:00:00 2001 From: Jamil Date: Fri, 7 Jul 2023 16:25:21 -0700 Subject: [PATCH] Pass-checks workflow per subdir (#1749) --- .github/workflows/elixir-pass-checks.yml | 44 ++++++++++ .github/workflows/kotlin-pass-checks.yml | 23 +++++ .../workflows/pass-nontriggered-checks.yml | 86 ------------------- .github/workflows/rust-pass-checks.yml | 43 ++++++++++ .github/workflows/swift-pass-checks.yml | 23 +++++ .github/workflows/terraform-pass-checks.yml | 18 ++++ 6 files changed, 151 insertions(+), 86 deletions(-) create mode 100644 .github/workflows/elixir-pass-checks.yml create mode 100644 .github/workflows/kotlin-pass-checks.yml delete mode 100644 .github/workflows/pass-nontriggered-checks.yml create mode 100644 .github/workflows/rust-pass-checks.yml create mode 100644 .github/workflows/swift-pass-checks.yml create mode 100644 .github/workflows/terraform-pass-checks.yml diff --git a/.github/workflows/elixir-pass-checks.yml b/.github/workflows/elixir-pass-checks.yml new file mode 100644 index 000000000..4d42a727c --- /dev/null +++ b/.github/workflows/elixir-pass-checks.yml @@ -0,0 +1,44 @@ +# Workaround for the problem described here: +# https://docs.github.com/en/repositories/configuring-branches-and-merges-in-your-repository/managing-protected-branches/troubleshooting-required-status-checks +name: Elixir +on: + merge_group: + types: [checks_requested] + pull_request: + paths-ignore: + - "elixir/**" + - ".github/workflows/elixir.yml" + workflow_call: + +jobs: + elixir_unit-test: + runs-on: ubuntu-latest + steps: + - run: 'echo "no build required"' + elixir_type-check: + runs-on: ubuntu-latest + steps: + - run: 'echo "no build required"' + elixir_static-analysis: + runs-on: ubuntu-latest + steps: + - run: 'echo "no build required"' + elixir_migrations-and-seed-test: + runs-on: ubuntu-latest + steps: + - run: 'echo "no build required"' + elixir_acceptance-test: + strategy: + matrix: + MIX_TEST_PARTITION: [1, 2, 3, 4] + runs-on: ubuntu-latest + steps: + - run: 'echo "no build required"' + elixir_web-container-build: + runs-on: ubuntu-latest + steps: + - run: 'echo "no build required"' + elixir_api-container-build: + runs-on: ubuntu-latest + steps: + - run: 'echo "no build required"' diff --git a/.github/workflows/kotlin-pass-checks.yml b/.github/workflows/kotlin-pass-checks.yml new file mode 100644 index 000000000..f923fbe47 --- /dev/null +++ b/.github/workflows/kotlin-pass-checks.yml @@ -0,0 +1,23 @@ +# Workaround for the problem described here: +# https://docs.github.com/en/repositories/configuring-branches-and-merges-in-your-repository/managing-protected-branches/troubleshooting-required-status-checks +name: Kotlin +on: + pull_request: + paths-ignore: + - "kotlin/**" + - "rust/connlib/**" + - ".github/workflows/kotlin.yml" + merge_group: + types: [checks_requested] + workflow_call: + workflow_dispatch: + +jobs: + kotlin_draft-release: + runs-on: ubuntu-latest + steps: + - run: 'echo "no build required"' + kotlin_build: + runs-on: ubuntu-latest + steps: + - run: 'echo "no build required"' diff --git a/.github/workflows/pass-nontriggered-checks.yml b/.github/workflows/pass-nontriggered-checks.yml deleted file mode 100644 index 3a6ddd6b7..000000000 --- a/.github/workflows/pass-nontriggered-checks.yml +++ /dev/null @@ -1,86 +0,0 @@ -# This workflow is a workaround to the problem described here: -# https://docs.github.com/en/repositories/configuring-branches-and-merges-in-your-repository/managing-protected-branches/troubleshooting-required-status-checks#example -# -# Using Path filtering to trigger workflows leads to unmergable PRs if a "required status check" is -# not triggered in the workflow run. Here we overload all job names selected by "required status checks" -# and simply return true so the PR can be merged. -name: Pass Non-triggered Checks -on: - pull_request: - paths-ignore: - - "elixir/**" - - "kotlin/**" - - "rust/**" - - "swift/**" - - "terraform/**" - workflow_dispatch: - -jobs: - elixir_acceptance-test: - runs-on: ubuntu-latest - steps: - - run: 'echo "No build required"' - elixir_api-container-build: - runs-on: ubuntu-latest - steps: - - run: 'echo "No build required"' - elixir_migrations-and-seed-test: - runs-on: ubuntu-latest - steps: - - run: 'echo "No build required"' - elixir_static-analysis: - runs-on: ubuntu-latest - steps: - - run: 'echo "No build required"' - elixir_web-container-build: - runs-on: ubuntu-latest - steps: - - run: 'echo "No build required"' - elixir_type-check: - runs-on: ubuntu-latest - steps: - - run: 'echo "No build required"' - elixir_unit-test: - runs-on: ubuntu-latest - steps: - - run: 'echo "No build required"' - kotlin_draft-release: - runs-on: ubuntu-latest - steps: - - run: 'echo "No build required"' - kotlin_build: - runs-on: ubuntu-latest - steps: - - run: 'echo "No build required"' - swift_draft-release: - runs-on: ubuntu-latest - steps: - - run: 'echo "No build required"' - swift_build: - runs-on: ubuntu-latest - steps: - - run: 'echo "No build required"' - rust_cross-compile-relay: - runs-on: ubuntu-latest - steps: - - run: 'echo "No build required"' - rust_build-android: - runs-on: ubuntu-latest - steps: - - run: 'echo "No build required"' - rust_build-apple: - runs-on: ubuntu-latest - steps: - - run: 'echo "No build required"' - rust_draft-release: - runs-on: ubuntu-latest - steps: - - run: 'echo "No build required"' - rust_test: - runs-on: ubuntu-latest - steps: - - run: 'echo "No build required"' - terraform_plan-deploy: - runs-on: ubuntu-latest - steps: - - run: 'echo "No build required"' diff --git a/.github/workflows/rust-pass-checks.yml b/.github/workflows/rust-pass-checks.yml new file mode 100644 index 000000000..67832e93d --- /dev/null +++ b/.github/workflows/rust-pass-checks.yml @@ -0,0 +1,43 @@ +# Workaround for the problem described here: +# https://docs.github.com/en/repositories/configuring-branches-and-merges-in-your-repository/managing-protected-branches/troubleshooting-required-status-checks +name: Rust +on: + merge_group: + types: [checks_requested] + pull_request: + paths-ignore: + - "rust/**" + - ".github/workflows/rust.yml" + workflow_call: + workflow_dispatch: + +jobs: + rust_draft-release: + runs-on: ubuntu-latest + steps: + - run: 'echo "No build required"' + rust_test: + strategy: + matrix: + runs-on: + - ubuntu-20.04 + - ubuntu-22.04 + - macos-11 + - macos-12 + - windows-2019 + - windows-2022 + runs-on: ${{ matrix.runs-on }} + steps: + - run: 'echo "No build required"' + rust_build-android: + runs-on: ubuntu-latest + steps: + - run: 'echo "No build required"' + rust_build-apple: + runs-on: ubuntu-latest + steps: + - run: 'echo "No build required"' + rust_cross-compile-relay: # cross is separate from test because cross-compiling yields different artifacts and we cannot reuse the cache. + runs-on: ubuntu-latest + steps: + - run: 'echo "No build required"' diff --git a/.github/workflows/swift-pass-checks.yml b/.github/workflows/swift-pass-checks.yml new file mode 100644 index 000000000..34e90d41d --- /dev/null +++ b/.github/workflows/swift-pass-checks.yml @@ -0,0 +1,23 @@ +# Workaround for the problem described here: +# https://docs.github.com/en/repositories/configuring-branches-and-merges-in-your-repository/managing-protected-branches/troubleshooting-required-status-checks +name: Swift +on: + pull_request: + paths-ginore: + - "swift/**" + - "rust/connlib/**" + - ".github/workflows/swift.yml" + merge_group: + types: [checks_requested] + workflow_call: + workflow_dispatch: + +jobs: + swift_draft-release: + runs-on: ubuntu-latest + steps: + - run: 'echo "No build required"' + swift_build: + runs-on: ubuntu-latest + steps: + - run: 'echo "No build required"' diff --git a/.github/workflows/terraform-pass-checks.yml b/.github/workflows/terraform-pass-checks.yml new file mode 100644 index 000000000..db6b7dc99 --- /dev/null +++ b/.github/workflows/terraform-pass-checks.yml @@ -0,0 +1,18 @@ +# Workaround for the problem described here: +# https://docs.github.com/en/repositories/configuring-branches-and-merges-in-your-repository/managing-protected-branches/troubleshooting-required-status-checks +name: Terraform +on: + merge_group: + type: [checks_requested] + pull_request: + paths-ignore: + - "terraform/**" + - ".github/workflows/terraform.yml" + workflow_call: + workflow_dispatch: + +jobs: + terraform_plan-deploy: + runs-on: ubuntu-latest + steps: + - run: 'echo "No build required"'