generated from bcgov/quickstart-openshift
-
Notifications
You must be signed in to change notification settings - Fork 4
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
9 changed files
with
204 additions
and
137 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,40 @@ | ||
--- | ||
name: Deploy Dev | ||
|
||
on: | ||
workflow_dispatch: | ||
inputs: | ||
tag: | ||
description: "Image tag to deploy" | ||
required: false | ||
type: string | ||
default: "latest" | ||
workflow_call: | ||
inputs: | ||
tag: | ||
description: "Image tag to deploy" | ||
required: false | ||
type: string | ||
default: "latest" | ||
jobs: | ||
deploy-dev: | ||
name: Deploys (DEV) | ||
uses: ./.github/workflows/deploy.yml | ||
secrets: inherit | ||
with: | ||
autoscaling: false | ||
environment: dev | ||
release: ${{inputs.tag}} | ||
tag: ${{ inputs.tag }} | ||
triggers: '' #omit=always; | ||
params: | | ||
--set-string global.license='c28f0c' \ | ||
--set-string global.zone='dev' \ | ||
--set-string global.vault.role='nonprod' \ | ||
--set-string global.vault.zone='dev' \ | ||
--set-string global.pr_num='${{ inputs.tag }}' \ | ||
--set-json dops.containers[0].resources='{"limits": {"cpu": "1000m", "memory": "2000Mi"}, "requests": {"cpu": "25m", "memory": "50Mi"}}' \ | ||
--set-json frontend.containers[0].resources='{"limits": {"cpu": "75m", "memory": "150Mi"}, "requests": {"cpu": "25m", "memory": "50Mi"}}' \ | ||
--set-json scheduler.containers[0].resources='{"limits": {"cpu": "75m", "memory": "150Mi"}, "requests": {"cpu": "25m", "memory": "50Mi"}}' \ | ||
--set-json policy.containers[0].resources='{"limits": {"cpu": "75m", "memory": "150Mi"}, "requests": {"cpu": "25m", "memory": "50Mi"}}' \ | ||
--set-json vehicles.containers[0].resources='{"limits": {"cpu": "300m", "memory": "500Mi"}, "requests": {"cpu": "200m", "memory": "400Mi"}}' \ |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -11,10 +11,11 @@ on: | |
- '!.github/workflows/merge.yml' | ||
workflow_dispatch: | ||
inputs: | ||
pr_no: | ||
description: "PR-numbered container set to deploy" | ||
type: number | ||
required: true | ||
pr: | ||
description: "PR num of image to deploy" | ||
required: false | ||
type: string | ||
|
||
|
||
concurrency: | ||
group: ${{ github.workflow }} | ||
|
@@ -29,27 +30,21 @@ jobs: | |
timeout-minutes: 1 | ||
steps: | ||
# Get PR number for squash merges to main | ||
- name: Get PR Number From Event | ||
if: ${{ github.event_name == 'push' }} | ||
id: pr_no | ||
uses: bcgov-nr/[email protected] | ||
- name: PR Number | ||
id: pr | ||
uses: bcgov-nr/[email protected] | ||
run: echo pr=${{ steps.pr_no.outputs.pr || inputs.pr}} >> $GITHUB_OUTPUT | ||
|
||
deploys-test: | ||
name: Deploys (test) | ||
name: Deploys (Test) | ||
needs: [vars] | ||
uses: ./.github/workflows/deploy.yml | ||
uses: ./.github/workflows/test.yml | ||
secrets: inherit | ||
with: | ||
autoscaling: true | ||
environment: test | ||
release: test | ||
tag: ${{ needs.vars.outputs.pr }} | ||
params: | | ||
--set-string global.license='c28f0c' \ | ||
--set-string global.zone='test' \ | ||
--set-string global.vault.role='nonprod' \ | ||
--set-string global.vault.zone='test' \ | ||
--set-string global.pr_num='${{ needs.vars.outputs.pr }}' \ | ||
|
||
promote-images-test: | ||
name: Promote Images - Test | ||
|
@@ -69,57 +64,14 @@ jobs: | |
target: ${{ needs.vars.outputs.pr }} | ||
tags: test #Promote images AFTER successful deploy | ||
|
||
deploys-prod: | ||
name: Deploys (prod) | ||
release-please: | ||
name: Release-Please | ||
needs: [promote-images-test, vars] | ||
uses: ./.github/workflows/deploy.yml | ||
secrets: inherit | ||
with: | ||
autoscaling: true | ||
environment: prod | ||
tag: ${{ needs.vars.outputs.pr }} | ||
release: prod | ||
params: | | ||
--set-string global.license='c28f0c' \ | ||
--set-string global.zone='prod' \ | ||
--set-string global.vault.role='prod' \ | ||
--set-string global.vault.zone='prod' \ | ||
--set-string global.pr_num='${{ needs.vars.outputs.pr }}' \ | ||
promote-images-prod: | ||
name: Promote Images - Prod | ||
needs: [deploys-prod, vars] | ||
runs-on: ubuntu-22.04 | ||
permissions: | ||
packages: write | ||
strategy: | ||
matrix: | ||
package: [dops, vehicles, frontend, scheduler, policy] | ||
timeout-minutes: 2 | ||
steps: | ||
- uses: shrink/actions-docker-registry-tag@v4 | ||
- uses: google-github-actions/release-please-action@v3 | ||
with: | ||
registry: ghcr.io | ||
repository: ${{ github.repository }}/${{ matrix.package }} | ||
target: ${{ needs.vars.outputs.pr }} | ||
tags: prod #Promote images AFTER successful deploy | ||
|
||
create-release: | ||
name: Create release | ||
runs-on: ubuntu-22.04 | ||
needs: [deploys-prod, vars] | ||
env: | ||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | ||
steps: | ||
- name: Generate release tag | ||
id: generate_release_tag | ||
shell: bash | ||
run: | | ||
echo next_release_tag=$(expr $(echo $(curl https://api.github.com/repos/bcgov/onroutebc/releases/latest | grep tag_name | cut -d '-' -f3 - | cut -d '"' -f1 -) + 1)) >> $GITHUB_OUTPUT | ||
- name: Create Release | ||
run: | | ||
gh release create "${{ github.event.repository.name }}-release-${{ steps.generate_release_tag.outputs.next_release_tag }}" \ | ||
--repo=${{ github.repository }} \ | ||
--title="${{ github.event.repository.name }}-release-${{ steps.generate_release_tag.outputs.next_release_tag }}" \ | ||
--generate-notes | ||
release-type: simple | ||
package-name: release-please-action | ||
changelog-types: '[{"type":"ORV2","section":"Features","hidden":false},{"type":"feat","section":"Features","hidden":false},{"type":"fix","section":"Bug Fixes","hidden":false},{"type":"build","section":"Miscellaneous","hidden":false},{"type":"chore","section":"Miscellaneous","hidden":false},{"type":"ci","section":"Miscellaneous","hidden":false},{"type":"docs","section":"Miscellaneous","hidden":false},{"type":"perf","section":"Miscellaneous","hidden":false},{"type":"refactor","section":"Miscellaneous","hidden":false},{"type":"revert","section":"Miscellaneous","hidden":false},{"type":"style","section":"Miscellaneous","hidden":false},{"type":"test","section":"Miscellaneous","hidden":false}]' |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,34 @@ | ||
name: Deploy Prod | ||
|
||
on: | ||
workflow_dispatch: | ||
inputs: | ||
tag: | ||
description: "Image tag to deploy" | ||
required: false | ||
type: string | ||
default: "prod" | ||
workflow_call: | ||
inputs: | ||
tag: | ||
description: "Image tag to deploy" | ||
required: false | ||
type: string | ||
default: "prod" | ||
|
||
jobs: | ||
deploys-prod: | ||
name: Deploys (PROD) | ||
uses: ./.github/workflows/deploy.yml | ||
secrets: inherit | ||
with: | ||
autoscaling: true | ||
environment: prod | ||
tag: ${{ inputs.tag }} | ||
release: prod | ||
params: | | ||
--set-string global.license='c28f0c' \ | ||
--set-string global.zone='prod' \ | ||
--set-string global.vault.role='prod' \ | ||
--set-string global.vault.zone='prod' \ | ||
--set-string global.pr_num='${{ inputs.tag }}' \ |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,40 @@ | ||
--- | ||
name: Release | ||
|
||
on: | ||
release: | ||
types: [published] | ||
workflow_dispatch: | ||
|
||
concurrency: | ||
group: ${{ github.workflow }} | ||
cancel-in-progress: true | ||
|
||
jobs: | ||
vars: | ||
name: Set Variables | ||
outputs: | ||
release-name: ${{ steps.release-name.outputs.release-name }} | ||
runs-on: ubuntu-22.04 | ||
timeout-minutes: 1 | ||
steps: | ||
- name: Release Name | ||
id: release-name | ||
run: | | ||
echo release-name=$(curl https://api.github.com/repos/bcgov/onroutebc/releases/latest | jq -r .tag_name) >> $GITHUB_OUTPUT | ||
deploys-uat: | ||
name: Deploys (Uat) | ||
needs: [vars] | ||
uses: ./.github/workflows/uat.yml | ||
secrets: inherit | ||
with: | ||
tag: ${{ needs.vars.outputs.release-name }} | ||
|
||
deploys-prod: | ||
name: Deploys (Prod) | ||
needs: [deploys-uat, vars] | ||
uses: ./.github/workflows/prod.yml | ||
secrets: inherit | ||
with: | ||
tag: ${{ needs.vars.outputs.release-name }} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,35 @@ | ||
--- | ||
name: Deploy Test | ||
|
||
on: | ||
workflow_dispatch: | ||
inputs: | ||
tag: | ||
description: "Image tag to deploy" | ||
required: false | ||
type: string | ||
default: "test" | ||
workflow_call: | ||
inputs: | ||
tag: | ||
description: "Image tag to deploy" | ||
required: false | ||
type: string | ||
default: "test" | ||
|
||
jobs: | ||
deploy-test: | ||
name: Deploys (TEST) | ||
uses: ./.github/workflows/deploy.yml | ||
secrets: inherit | ||
with: | ||
autoscaling: true | ||
environment: test | ||
release: test | ||
tag: ${{ inputs.tag }} | ||
params: | | ||
--set-string global.license='c28f0c' \ | ||
--set-string global.zone='test' \ | ||
--set-string global.vault.role='nonprod' \ | ||
--set-string global.vault.zone='test' \ | ||
--set-string global.pr_num='${{ inputs.tag }}' \ |
Oops, something went wrong.