Skip to content

Commit

Permalink
ci: add reusable workflows (#618)
Browse files Browse the repository at this point in the history
* ci: add reusable workflow

* ci: update actions

* ci: abstract test

* ci: add build job

* ci: abstract e2e

* ci: add secrets

* style: fix with prettier

* ci: use latest cypress action

* ci: cancel previous runs if not on release branch

* ci: abstract release

* ci: remove git author

* ci: remove redundant build task

* ci: add comment

* ci: add workflow name

* ci: abstract netlify workflows

* ci: only run workflows that need secrets where they are available

* ci: add reusable commitlint workflows

* ci: update commitlint action

* ci: cancel previous pr title linting runs

* style: fix with prettier

* ci: downgrade commitlint to v5

* ci: update netlify deploy

* ci: use head_ref for pull_request action trigger

* ci: add reusable issue workflow

* ci: use gh cli to close issues

* style: fix formatting

* ci: move reusable workflows to separate test repo

* ci: specify branch to deploy production from

* ci: fix pull request condition

* ci: refer to workflows by version

* ci: add name for comment wf

* ci: move upstream workflows

* ci: address review comments
  • Loading branch information
ismay authored Jul 29, 2024
1 parent 9b7fa45 commit 8ae67a2
Show file tree
Hide file tree
Showing 9 changed files with 75 additions and 294 deletions.
11 changes: 4 additions & 7 deletions .github/workflows/comment-and-close.yml
Original file line number Diff line number Diff line change
@@ -1,13 +1,10 @@
name: comment-and-close

on:
issues:
types: [opened]

jobs:
comment-and-close:
runs-on: ubuntu-latest
steps:
- uses: vardevs/candc@v1
with:
close-comment: 'If you would like to file a bug report or feature request, please refer to our issue tracker: https://jira.dhis2.org'
exempt-users: dhis2-bot,dependabot,kodiakhq
github-token: ${{secrets.DHIS2_BOT_GITHUB_TOKEN}}
uses: dhis2/workflows-platform/.github/workflows/comment-and-close.yml@v1
if: !contains(github.event.issues.sender.login , fromJson('["dhis2-bot", "kodiakhq", "dependabot"]'))
14 changes: 14 additions & 0 deletions .github/workflows/deploy-pr.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
name: deploy-pr

on:
pull_request:

concurrency:
group: ${{ github.workflow }}-${{ github.head_ref }}
cancel-in-progress: true

jobs:
deploy:
uses: dhis2/workflows-platform/.github/workflows/deploy-pr.yml@v1
if: '!github.event.pull_request.head.repo.fork'
secrets: inherit
17 changes: 17 additions & 0 deletions .github/workflows/deploy-production.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
name: deploy-production

on:
push:
branches:
- master

concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true

jobs:
deploy:
uses: dhis2/workflows-platform/.github/workflows/deploy-production.yml@v1
secrets: inherit
with:
branch: master
54 changes: 0 additions & 54 deletions .github/workflows/dhis2-netlify-deploy-pr.yml

This file was deleted.

56 changes: 0 additions & 56 deletions .github/workflows/dhis2-netlify-deploy-production.yml

This file was deleted.

139 changes: 0 additions & 139 deletions .github/workflows/dhis2-verify-app.yml

This file was deleted.

38 changes: 0 additions & 38 deletions .github/workflows/dhis2-verify-commits.yml

This file was deleted.

13 changes: 13 additions & 0 deletions .github/workflows/lint-pr-title.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
name: lint-pr-title

on:
pull_request:
types: ['opened', 'edited', 'reopened', 'synchronize']

concurrency:
group: ${{ github.workflow }}-${{ github.head_ref }}
cancel-in-progress: true

jobs:
lint-pr-title:
uses: dhis2/workflows-platform/.github/workflows/lint-pr-title.yml@v1
27 changes: 27 additions & 0 deletions .github/workflows/test-and-release.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
name: test-and-release

on: push

concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
# Cancel previous runs if not on a release branch
cancel-in-progress: ${{ !contains(github.ref, fromJSON('["master", "main"]')) }}

jobs:
lint-commits:
uses: dhis2/workflows-platform/.github/workflows/lint-commits.yml@v1
lint:
uses: dhis2/workflows-platform/.github/workflows/lint.yml@v1
test:
uses: dhis2/workflows-platform/.github/workflows/test.yml@v1
e2e:
uses: dhis2/workflows-platform/.github/workflows/e2e.yml@v1
# Skips forks and dependabot PRs
if: '!github.event.push.repository.fork'
secrets: inherit
release:
needs: [lint-commits, lint, test, e2e]
uses: dhis2/workflows-platform/.github/workflows/release.yml@v1
# Skips forks and dependabot PRs
if: '!github.event.push.repository.fork'
secrets: inherit

1 comment on commit 8ae67a2

@dhis2-bot
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please sign in to comment.