bcgov/document-generation-showcase

View on GitHub
.github/workflows/on-pr-opened.yaml

Summary

Maintainability
Test Coverage
name: Pull Request Opened

env:
  ACRONYM: dgrsc
  APP_NAME: document-generation-showcase
  NAMESPACE_PREFIX: bb0279

on:
  pull_request:
    branches:
      - master
    types:
      - opened
      - reopened
      - synchronize

concurrency:
  group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
  cancel-in-progress: true

jobs:
  build:
    name: Build & Push
    if: "! github.event.pull_request.head.repo.fork"
    runs-on: ubuntu-latest
    timeout-minutes: 10
    steps:
      - name: Checkout
        uses: actions/checkout@v4
      - name: Build & Push
        uses: ./.github/actions/build-push-container
        with:
          context: .
          image_name: ${{ env.APP_NAME }}
          github_username: ${{ github.repository_owner }}
          github_token: ${{ secrets.GITHUB_TOKEN }}

  deploy-pr-dev:
    name: Deploy Pull Request to Dev
    environment:
      name: pr
      url: https://${{ env.ACRONYM }}-dev-pr-${{ github.event.number }}.apps.silver.devops.gov.bc.ca
    runs-on: ubuntu-latest
    needs: build
    timeout-minutes: 12
    steps:
      - name: Checkout
        uses: actions/checkout@v4
      - name: Deploy to Dev
        uses: ./.github/actions/deploy-to-environment
        with:
          app_name: ${{ env.APP_NAME }}
          acronym: ${{ env.ACRONYM }}
          environment: pr
          job_name: pr-${{ github.event.number }}
          namespace_prefix: ${{ env.NAMESPACE_PREFIX }}
          namespace_environment: dev
          openshift_server: ${{ secrets.OPENSHIFT_SERVER }}
          openshift_token: ${{ secrets.OPENSHIFT_TOKEN }}
      - name: Release Comment on PR
        uses: marocchino/sticky-pull-request-comment@v2.9.0
        if: success()
        with:
          header: release
          message: |
            Release ${{ github.sha }} deployed at <https://${{ env.ACRONYM }}-dev-pr-${{ github.event.number }}.apps.silver.devops.gov.bc.ca>