From 6827196e9e34bbac3d8bcb1e09ffa9676acd8a4a Mon Sep 17 00:00:00 2001 From: Aaron Contreras Date: Thu, 22 Feb 2024 07:28:30 -0500 Subject: [PATCH] Add Dangerfile Warns that a PR involves migrations and pings Markus. --- .github/workflows/danger.yml | 26 ++++++++++++++++++++++++++ Dangerfile | 9 +++++++++ 2 files changed, 35 insertions(+) create mode 100644 .github/workflows/danger.yml create mode 100644 Dangerfile diff --git a/.github/workflows/danger.yml b/.github/workflows/danger.yml new file mode 100644 index 00000000000..8b30f3873e4 --- /dev/null +++ b/.github/workflows/danger.yml @@ -0,0 +1,26 @@ +name: migration-warning-on-release-branches + +on: + pull_request: + branches: + - release/* + paths: + - 'db/migrate/**.rb' + - 'modules/**/db/migrate/*.rb' + +jobs: + danger: + if: github.repository == 'opf/openproject' + runs-on: [ubuntu-latest] + timeout-minutes: 10 + steps: + - uses: actions/checkout@v4 + - uses: ruby/setup-ruby@v1 + with: + ruby-version: '3.2.3' + - uses: MeilCli/danger-action@v5 + with: + danger_file: 'Dangerfile' + danger_id: 'danger-pr' + env: + DANGER_GITHUB_API_TOKEN: ${{ secrets.GITHUB_TOKEN }} diff --git a/Dangerfile b/Dangerfile new file mode 100644 index 00000000000..3e464b81f62 --- /dev/null +++ b/Dangerfile @@ -0,0 +1,9 @@ +CORE_OR_MODULE_MIGRATIONS_REGEX = %r{(modules/.*)?db/migrate/.*\.rb} + +def added_or_modified_migrations? + (git.modified_files + git.added_files).grep(CORE_OR_MODULE_MIGRATIONS_REGEX) +end + +if added_or_modified_migrations? + warn "This PR has migration-related changes on a release branch. Ping @opf/operations" +end