From a0c1427714316c30cf7c9598d4ec88ec79c362f4 Mon Sep 17 00:00:00 2001 From: Derek Roberts Date: Thu, 26 Oct 2023 15:27:35 -0700 Subject: [PATCH] Cleanup --- .github/workflows/pr-open.yml | 230 ++++++++++++++++++---------------- 1 file changed, 123 insertions(+), 107 deletions(-) diff --git a/.github/workflows/pr-open.yml b/.github/workflows/pr-open.yml index 7900a85b4..f5b67b15c 100644 --- a/.github/workflows/pr-open.yml +++ b/.github/workflows/pr-open.yml @@ -8,122 +8,138 @@ concurrency: cancel-in-progress: true jobs: - prep: - name: Prep - permissions: - pull-requests: write - runs-on: ubuntu-22.04 - steps: - - name: PR Greeting - if: github.event.action == 'opened' || github.event.action == 'reopened' - env: - DOMAIN: apps.silver.devops.gov.bc.ca - uses: bcgov-nr/action-pr-description-add@v0.0.2 - with: - github_token: ${{ secrets.GITHUB_TOKEN }} - add_markdown: | - --- - Thanks for the PR! + # prep: + # name: Prep + # permissions: + # pull-requests: write + # runs-on: ubuntu-22.04 + # steps: + # - name: PR Greeting + # if: github.event.action == 'opened' || github.event.action == 'reopened' + # env: + # DOMAIN: apps.silver.devops.gov.bc.ca + # uses: bcgov-nr/action-pr-description-add@v0.0.2 + # with: + # github_token: ${{ secrets.GITHUB_TOKEN }} + # add_markdown: | + # --- + # Thanks for the PR! - Any successful deployments (not always required) will be available below. - - [api](https://fom-${{ github.event.number }}.${{ env.DOMAIN }}/api) - - [admin](https://fom-${{ github.event.number }}.${{ env.DOMAIN }}/admin) - - [public](https://fom-${{ github.event.number }}.${{ env.DOMAIN }}/public) + # Any successful deployments (not always required) will be available below. + # - [api](https://fom-${{ github.event.number }}.${{ env.DOMAIN }}/api) + # - [admin](https://fom-${{ github.event.number }}.${{ env.DOMAIN }}/admin) + # - [public](https://fom-${{ github.event.number }}.${{ env.DOMAIN }}/public) - Once merged, code will be promoted and handed off to following workflow run. - - [Main Merge Workflow](https://github.com/${{ github.repository }}/actions/workflows/merge-main.yml) + # Once merged, code will be promoted and handed off to following workflow run. + # - [Main Merge Workflow](https://github.com/${{ github.repository }}/actions/workflows/merge-main.yml) - - name: OpenShift Init - uses: bcgov-nr/action-deployer-openshift@v1.1.1 - with: - oc_namespace: ${{ vars.OC_NAMESPACE }} - oc_server: ${{ vars.OC_SERVER }} - oc_token: ${{ secrets.OC_TOKEN }} - file: libs/openshift.init.yml - overwrite: false - parameters: -p ZONE=${{ github.event.number }} - triggers: ('db/' 'libs/' 'api/' 'admin/' 'public/') + # - name: OpenShift Init + # uses: bcgov-nr/action-deployer-openshift@v1.1.1 + # with: + # oc_namespace: ${{ vars.OC_NAMESPACE }} + # oc_server: ${{ vars.OC_SERVER }} + # oc_token: ${{ secrets.OC_TOKEN }} + # file: libs/openshift.init.yml + # overwrite: false + # parameters: -p ZONE=${{ github.event.number }} + # triggers: ('db/' 'libs/' 'api/' 'admin/' 'public/') + + # builds: + # name: Builds + # runs-on: ubuntu-22.04 + # permissions: + # packages: write + # strategy: + # matrix: + # package: [admin, api, db, public] + # include: + # - package: admin + # build_context: ./ + # build_file: admin/Dockerfile + # triggers: ('admin/' 'libs/') + # - package: api + # build_context: ./ + # build_file: api/Dockerfile + # triggers: ('api/' 'libs/') + # - package: db + # triggers: ('db') + # - package: public + # build_context: ./ + # build_file: public/Dockerfile + # triggers: ('public/' 'libs/') + # steps: + # - uses: actions/checkout@v3 + # - uses: bcgov-nr/action-builder-ghcr@v2.0.0 + # with: + # package: ${{ matrix.package }} + # build_context: ${{ matrix.build_context }} + # build_file: ${{ matrix.build_file }} + # keep_versions: 100 + # tag: ${{ github.event.number }} + # tag_fallback: test + # token: ${{ secrets.GITHUB_TOKEN }} + # triggers: ${{ matrix.triggers }} + + # deploys: + # name: Deploys + # needs: [prep, builds] + # runs-on: ubuntu-22.04 + # timeout-minutes: 10 + # strategy: + # matrix: + # name: [api, admin, db, public] + # include: + # - name: api + # file: api/openshift.deploy.yml + # overwrite: true + # parameters: + # -p CERTBOT=false -p REPLICA_COUNT=1 + # -p FOM_EMAIL_NOTIFY=SIBIFSAF@victoria1.gov.bc.ca + # -p DB_TESTDATA=true + # -p AWS_USER_POOLS_WEB_CLIENT_ID="7hpo4qa7j0hs0rkfl2pm0sto5k" + # -p LOGOUT_CHAIN_URL="https://logontest7.gov.bc.ca/clp-cgi/logoff.cgi?retnow=1&returl=https://dev.loginproxy.gov.bc.ca/auth/realms/standard/protocol/openid-connect/logout?redirect_uri=" + # triggers: ('db/' 'libs/' 'api/') + # - name: admin + # file: admin/openshift.deploy.yml + # overwrite: true + # parameters: -p CERTBOT=false -p REPLICA_COUNT=1 + # triggers: ('db/' 'libs/' 'api/' 'admin/') + # - name: db + # file: db/openshift.deploy.yml + # overwrite: false + # triggers: ('db/' 'libs/' 'api/' 'admin/' 'public/') + # - name: public + # file: public/openshift.deploy.yml + # overwrite: true + # parameters: -p CERTBOT=false -p REPLICA_COUNT=1 + # triggers: ('db/' 'libs/' 'api/' 'public/') + # steps: + # - uses: bcgov-nr/action-deployer-openshift@v1.1.1 + # with: + # file: ${{ matrix.file }} + # oc_namespace: ${{ vars.OC_NAMESPACE }} + # oc_server: ${{ vars.OC_SERVER }} + # oc_token: ${{ secrets.OC_TOKEN }} + # overwrite: ${{ matrix.overwrite }} + # penetration_test: false + # parameters: + # -p PROMOTE=ghcr.io/${{ github.repository }}/${{ matrix.name }}:${{ github.event.number }} + # -p URL=fom-${{ github.event.number }}.apps.silver.devops.gov.bc.ca + # -p ZONE=${{ github.event.number }} ${{ matrix.parameters }} + # triggers: ${{ matrix.triggers }} - builds: - name: Builds - runs-on: ubuntu-22.04 - permissions: - packages: write - strategy: - matrix: - package: [admin, api, db, public] - include: - - package: admin - build_context: ./ - build_file: admin/Dockerfile - triggers: ('admin/' 'libs/') - - package: api - build_context: ./ - build_file: api/Dockerfile - triggers: ('api/' 'libs/') - - package: db - triggers: ('db') - - package: public - build_context: ./ - build_file: public/Dockerfile - triggers: ('public/' 'libs/') - steps: - - uses: actions/checkout@v3 - - uses: bcgov-nr/action-builder-ghcr@v2.0.0 - with: - package: ${{ matrix.package }} - build_context: ${{ matrix.build_context }} - build_file: ${{ matrix.build_file }} - keep_versions: 100 - tag: ${{ github.event.number }} - tag_fallback: test - token: ${{ secrets.GITHUB_TOKEN }} - # triggers: ${{ matrix.triggers }} - deploys: - name: Deploys - needs: [prep, builds] + cleanup: + name: cleanup runs-on: ubuntu-22.04 timeout-minutes: 10 strategy: matrix: name: [api, admin, db, public] - include: - - name: api - file: api/openshift.deploy.yml - overwrite: true - parameters: - -p CERTBOT=false -p REPLICA_COUNT=1 - -p FOM_EMAIL_NOTIFY=SIBIFSAF@victoria1.gov.bc.ca - -p DB_TESTDATA=true - -p AWS_USER_POOLS_WEB_CLIENT_ID="7hpo4qa7j0hs0rkfl2pm0sto5k" - -p LOGOUT_CHAIN_URL="https://logontest7.gov.bc.ca/clp-cgi/logoff.cgi?retnow=1&returl=https://dev.loginproxy.gov.bc.ca/auth/realms/standard/protocol/openid-connect/logout?redirect_uri=" - triggers: ('db/' 'libs/' 'api/') - - name: admin - file: admin/openshift.deploy.yml - overwrite: true - parameters: -p CERTBOT=false -p REPLICA_COUNT=1 - triggers: ('db/' 'libs/' 'api/' 'admin/') - - name: db - file: db/openshift.deploy.yml - overwrite: false - triggers: ('db/' 'libs/' 'api/' 'admin/' 'public/') - - name: public - file: public/openshift.deploy.yml - overwrite: true - parameters: -p CERTBOT=false -p REPLICA_COUNT=1 - triggers: ('db/' 'libs/' 'api/' 'public/') steps: - - uses: bcgov-nr/action-deployer-openshift@v1.1.1 + - uses: actions/delete-package-versions@v4 with: - file: ${{ matrix.file }} - oc_namespace: ${{ vars.OC_NAMESPACE }} - oc_server: ${{ vars.OC_SERVER }} - oc_token: ${{ secrets.OC_TOKEN }} - overwrite: ${{ matrix.overwrite }} - penetration_test: false - parameters: - -p PROMOTE=ghcr.io/${{ github.repository }}/${{ matrix.name }}:${{ github.event.number }} - -p URL=fom-${{ github.event.number }}.apps.silver.devops.gov.bc.ca - -p ZONE=${{ github.event.number }} ${{ matrix.parameters }} - triggers: ${{ matrix.triggers }} + package-name: "${{ github.event.repository.name }}/${{ inputs.name }}" + package-type: "container" + min-versions-to-keep: 100 + ignore-versions: "^(prod|test|demo)$"