Skip to content

chore(deps): update dependency ejs to v3.1.10 [security] #71

chore(deps): update dependency ejs to v3.1.10 [security]

chore(deps): update dependency ejs to v3.1.10 [security] #71

name: buildTestPublishContainerDeploy
on:
push:
branches:
- main
release:
types:
- published
pull_request:
workflow_dispatch:
jobs:
build-and-test:
runs-on: ubuntu-latest
steps:
- name: Checkout πŸ›ŽοΈ
uses: actions/checkout@v4.1.4
with:
persist-credentials: false
- uses: actions/setup-node@v4.0.2
with:
node-version: ${{ vars.NODE_VERSION }}
- name: Install and Test πŸ”§
run: |
npm ci
yarn test
publish-container:
if: ${{ github.repository == 'bcgov/des-notifybc' && github.event_name != 'pull_request' }}
needs: build-and-test
runs-on: ubuntu-latest
steps:
- name: Checkout πŸ›ŽοΈ
uses: actions/checkout@v4.1.4
with:
persist-credentials: false
- name: Docker meta
id: meta
uses: docker/metadata-action@v5
with:
images: |
ghcr.io/bcgov/des-notify-bc
tags: |
type=semver,pattern={{version}}
type=semver,pattern={{major}}.{{minor}}
type=semver,pattern={{major}}
- name: Login to GitHub Container Registry
uses: docker/login-action@v3.1.0
with:
registry: ghcr.io
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
- name: Publish Container πŸš€
uses: docker/build-push-action@v5.3.0
with:
context: .
push: true
tags: ${{ steps.meta.outputs.tags }}
labels: ${{ steps.meta.outputs.labels }}
build-args: nodeVersion=${{ vars.NODE_VERSION }}
deploy:
if: ${{ github.repository == 'bcgov/des-notifybc' && github.event_name == 'push' }}
needs: publish-container
runs-on: ubuntu-latest
steps:
- name: Checkout πŸ›ŽοΈ
uses: actions/checkout@v4.1.4
with:
persist-credentials: false
- name: Decrypt values.ocp4.dev.yaml.gpg
run: ./.github/scripts/decrypt_secret.sh
env:
GPG_PASSPHRASE: ${{ secrets.GPG_PASSPHRASE }}
- name: Install oc
uses: redhat-actions/oc-installer@v1
- name: Authenticate to OCP4 and set context
uses: redhat-actions/oc-login@v1
with:
openshift_server_url: ${{ secrets.OPENSHIFT_SERVER_URL }}
openshift_token: ${{ secrets.OPENSHIFT_API_TOKEN }}
namespace: ${{ secrets.OPENSHIFT_PROJECT }}-dev
- name: Download notifyBCContainerTag
uses: actions/download-artifact@v2
with:
name: notifyBCContainerTag
- name: helm upgrade πŸš€
run: |
export notifyBCContainerTag=`cat notifyBCContainerTag.txt`
helm upgrade -f helm/platform-specific/openshift.yaml \
-f .github/values.ocp4.dev.yaml --set \
image.tag="$notifyBCContainerTag" `helm ls -q` helm
oc get deployment -o name | xargs oc rollout restart