Skip to content

Merge remote-tracking branch 'origin/develop' into feature/GPHWPP-423… #2900

Merge remote-tracking branch 'origin/develop' into feature/GPHWPP-423…

Merge remote-tracking branch 'origin/develop' into feature/GPHWPP-423… #2900

Workflow file for this run

#
# this is the integration workflow that is triggered by a push to the develop branches
#
# it will
# - build the project
# - test the project
# - gather the workflow artifacts
#
name: 'integration'
on:
push:
# run for all branches except main (because testing is also done in pre-release workflow)
branches-ignore:
- 'main'
concurrency:
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
cancel-in-progress: true
permissions:
# write-all is too much, but we need to write to packages
# see https://github.com/orgs/community/discussions/57724 for more info
contents: read
packages: write
attestations: write
id-token: write
jobs:
devcontainer:
uses: ./.github/workflows/build-devcontainer-image.yaml
secrets: inherit
build:
name: build and test
runs-on: ubuntu-latest
needs:
- devcontainer
steps:
- name: checkout branch from git
uses: actions/checkout@v5
with:
fetch-depth: 0
- name: Login to GitHub Container Registry
uses: docker/login-action@v3
with:
registry: ghcr.io
username: ${{ github.repository_owner }}
password: ${{ secrets.GITHUB_TOKEN }}
- uses: './.github/shared/actions/devcontainer-shell-run'
name: install project
with:
runCmd: |
pnpm install --frozen-lockfile
- uses: './.github/shared/actions/devcontainer-shell-run'
name: build project
with:
runCmd: |
pnpm run build
- uses: './.github/shared/actions/devcontainer-shell-run'
name: test project
with:
runCmd: |
TEST_PRODUCTION=true pnpm run test
- uses: './.github/shared/actions/devcontainer-shell-run'
id: gather_workflow_artifacts
name: gather_workflow_artifacts
if: always()
with:
runCmd: |
pnpm exec ./scripts/_get-workflow-artefacts.sh
- name: attach workflow artifacts
uses: actions/upload-artifact@v4
if: always()
with:
include-hidden-files: true
# see https://github.com/actions/upload-artifact/issues/424
path: |-
${{ steps.gather_workflow_artifacts.outputs.runCmdOutput }}
lint:
runs-on: ubuntu-latest
needs:
- devcontainer
steps:
- name: checkout branch from git
uses: actions/checkout@v5
with:
fetch-depth: 0
- name: Login to GitHub Container Registry
uses: docker/login-action@v3
with:
registry: ghcr.io
username: ${{ github.repository_owner }}
password: ${{ secrets.GITHUB_TOKEN }}
- uses: './.github/shared/actions/devcontainer-shell-run'
name: install
with:
runCmd: |
pnpm install --frozen-lockfile
- uses: './.github/shared/actions/devcontainer-shell-run'
name: build necessary dockers
with:
runCmd: |
pnpm run build --filter ecs-php --filter dennis-i18n
- uses: './.github/shared/actions/devcontainer-shell-run'
name: lint_project
with:
runCmd: |
pnpm run lint
# # automatically approve and merge dependabot PRs
# dependabot:
# runs-on: ubuntu-latest
# needs:
# - test
# permissions:
# pull-requests: write
# contents: write
# if: ${{ github.actor == 'dependabot[bot]' && github.event_name == 'pull_request'}}
# steps:
# - id: metadata
# uses: dependabot/fetch-metadata@v2
# with:
# github-token: '${{ secrets.GITHUB_TOKEN }}'
# - run: |
# gh pr review --approve "$PR_URL"
# gh pr merge --squash --auto "$PR_URL"
# env:
# PR_URL: ${{github.event.pull_request.html_url}}
# GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}}