Skip to content

Commit 7e1cacf

Browse files
committed
fix: restructure CD workflows to use v3.2.5 individual actions for clean check names
Changed from reusable workflows (which show nested job names like deploy/build, deploy/deploy) to single-job workflows using v3.2.5 individual build and deploy actions. This provides clean check names matching node-react-template: - ci/lint - ci/sonarqube - ci/review - ci/test - cd/deploy (single check instead of nested)
1 parent 5303023 commit 7e1cacf

File tree

3 files changed

+134
-60
lines changed

3 files changed

+134
-60
lines changed

.github/workflows/cd.yml

Lines changed: 50 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -7,28 +7,56 @@ on:
77
jobs:
88
deploy:
99
if: github.event.pull_request.state == 'open' && github.event.pull_request.draft == false
10-
uses: jalantechnologies/github-ci/.github/workflows/[email protected]
10+
runs-on: ubuntu-latest
1111
concurrency:
1212
group: cd-preview-${{ github.event.pull_request.head.ref }}
1313
cancel-in-progress: true
14-
with:
15-
hosting_provider: ${{ vars.HOSTING_PROVIDER }}
16-
app_name: flask-react-template
17-
app_env: preview
18-
app_hostname: '{1}.preview.platform.bettrhq.com'
19-
branch: ${{ github.event.pull_request.head.ref }}
20-
build_args: |
21-
APP_ENV=preview
22-
checks: "[]"
23-
docker_registry: ${{ vars.DOCKER_REGISTRY }}
24-
docker_username: ${{ vars.DOCKER_USERNAME }}
25-
aws_cluster_name: ${{ vars.AWS_CLUSTER_NAME }}
26-
aws_region: ${{ vars.AWS_REGION }}
27-
pull_request_number: ${{ github.event.number }}
28-
do_cluster_id: ${{ vars.DO_CLUSTER_ID }}
29-
secrets:
30-
docker_password: ${{ secrets.DOCKER_PASSWORD }}
31-
doppler_token: ${{ secrets.DOPPLER_PREVIEW_TOKEN }}
32-
aws_access_key_id: ${{ secrets.AWS_ACCESS_KEY_ID }}
33-
aws_secret_access_key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
34-
do_access_token: ${{ secrets.DO_ACCESS_TOKEN }}
14+
steps:
15+
- name: Checkout app
16+
uses: actions/checkout@v3
17+
with:
18+
path: app
19+
20+
- name: Checkout github-ci
21+
uses: actions/checkout@v3
22+
with:
23+
repository: jalantechnologies/github-ci
24+
path: platform
25+
ref: v3.2.5
26+
27+
- name: Extract branch name
28+
id: extract_branch
29+
run: |
30+
BRANCH_NAME=$(echo ${{ github.event.pull_request.head.ref }} | sed -e 's/^refs\/heads\///g')
31+
BRANCH_HASH=$(sha1sum < <(printf '%s' $BRANCH_NAME) | cut -c -15)
32+
echo "branch_hash=$(echo $BRANCH_HASH)" >> $GITHUB_OUTPUT
33+
34+
- name: Build Docker image
35+
id: build
36+
uses: ./platform/.github/actions/build
37+
with:
38+
app_name: flask-react-template
39+
tag: ${{ steps.extract_branch.outputs.branch_hash }}
40+
build_args: APP_ENV=preview
41+
context: app/.
42+
docker_registry: ${{ vars.DOCKER_REGISTRY }}
43+
docker_username: ${{ vars.DOCKER_USERNAME }}
44+
docker_password: ${{ secrets.DOCKER_PASSWORD }}
45+
46+
- name: Deploy to preview
47+
uses: ./platform/.github/actions/deploy
48+
with:
49+
app_name: flask-react-template
50+
app_env: preview
51+
app_hostname: '{1}.preview.platform.bettrhq.com'
52+
branch: ${{ github.event.pull_request.head.ref }}
53+
deploy_id: ${{ github.run_number }}
54+
deploy_root: app/lib/kube
55+
deploy_labels: gh/pr=${{ github.event.number }}
56+
deploy_image: ${{ steps.build.outputs.image_ref }}
57+
docker_registry: ${{ vars.DOCKER_REGISTRY }}
58+
docker_username: ${{ vars.DOCKER_USERNAME }}
59+
docker_password: ${{ secrets.DOCKER_PASSWORD }}
60+
do_access_token: ${{ secrets.DO_ACCESS_TOKEN }}
61+
do_cluster_id: ${{ vars.DO_CLUSTER_ID }}
62+
doppler_token: ${{ secrets.DOPPLER_PREVIEW_TOKEN }}

.github/workflows/permanent_preview.yml

Lines changed: 42 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -7,25 +7,48 @@ on:
77

88
jobs:
99
deploy:
10-
uses: jalantechnologies/github-ci/.github/workflows/[email protected]
10+
runs-on: ubuntu-latest
1111
concurrency:
1212
group: cd-permanent-preview
1313
cancel-in-progress: true
14-
with:
15-
hosting_provider: ${{ vars.HOSTING_PROVIDER }}
16-
app_name: flask-react-template
17-
app_env: preview
18-
app_hostname: preview.flask-react-template.platform.bettrhq.com
19-
branch: main
20-
checks: "[]"
21-
docker_registry: ${{ vars.DOCKER_REGISTRY }}
22-
docker_username: ${{ vars.DOCKER_USERNAME }}
23-
aws_cluster_name: ${{ vars.AWS_CLUSTER_NAME }}
24-
aws_region: ${{ vars.AWS_REGION }}
25-
do_cluster_id: ${{ vars.DO_CLUSTER_ID }}
26-
secrets:
27-
docker_password: ${{ secrets.DOCKER_PASSWORD }}
28-
doppler_token: ${{ secrets.DOPPLER_PREVIEW_TOKEN }}
29-
aws_access_key_id: ${{ secrets.AWS_ACCESS_KEY_ID }}
30-
aws_secret_access_key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
31-
do_access_token: ${{ secrets.DO_ACCESS_TOKEN }}
14+
steps:
15+
- name: Checkout app
16+
uses: actions/checkout@v3
17+
with:
18+
path: app
19+
20+
- name: Checkout github-ci
21+
uses: actions/checkout@v3
22+
with:
23+
repository: jalantechnologies/github-ci
24+
path: platform
25+
ref: v3.2.5
26+
27+
- name: Build Docker image
28+
id: build
29+
uses: ./platform/.github/actions/build
30+
with:
31+
app_name: flask-react-template
32+
tag: preview
33+
context: app/.
34+
docker_registry: ${{ vars.DOCKER_REGISTRY }}
35+
docker_username: ${{ vars.DOCKER_USERNAME }}
36+
docker_password: ${{ secrets.DOCKER_PASSWORD }}
37+
38+
- name: Deploy to permanent preview
39+
uses: ./platform/.github/actions/deploy
40+
with:
41+
app_name: flask-react-template
42+
app_env: preview
43+
app_hostname: preview.flask-react-template.platform.bettrhq.com
44+
branch: main
45+
deploy_id: ${{ github.run_number }}
46+
deploy_root: app/lib/kube
47+
deploy_labels: gh/env=preview
48+
deploy_image: ${{ steps.build.outputs.image_ref }}
49+
docker_registry: ${{ vars.DOCKER_REGISTRY }}
50+
docker_username: ${{ vars.DOCKER_USERNAME }}
51+
docker_password: ${{ secrets.DOCKER_PASSWORD }}
52+
do_access_token: ${{ secrets.DO_ACCESS_TOKEN }}
53+
do_cluster_id: ${{ vars.DO_CLUSTER_ID }}
54+
doppler_token: ${{ secrets.DOPPLER_PREVIEW_TOKEN }}

.github/workflows/production.yml

Lines changed: 42 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -7,25 +7,48 @@ on:
77

88
jobs:
99
deploy:
10-
uses: jalantechnologies/github-ci/.github/workflows/[email protected]
10+
runs-on: ubuntu-latest
1111
concurrency:
1212
group: cd-production
1313
cancel-in-progress: true
14-
with:
15-
hosting_provider: ${{ vars.HOSTING_PROVIDER }}
16-
app_name: flask-react-template
17-
app_env: production
18-
app_hostname: flask-react-template.platform.bettrhq.com
19-
branch: main
20-
checks: "[]"
21-
docker_registry: ${{ vars.DOCKER_REGISTRY }}
22-
docker_username: ${{ vars.DOCKER_USERNAME }}
23-
aws_cluster_name: ${{ vars.AWS_CLUSTER_NAME }}
24-
aws_region: ${{ vars.AWS_REGION }}
25-
do_cluster_id: ${{ vars.DO_CLUSTER_ID }}
26-
secrets:
27-
docker_password: ${{ secrets.DOCKER_PASSWORD }}
28-
doppler_token: ${{ secrets.DOPPLER_PRODUCTION_TOKEN }}
29-
aws_access_key_id: ${{ secrets.AWS_ACCESS_KEY_ID }}
30-
aws_secret_access_key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
31-
do_access_token: ${{ secrets.DO_ACCESS_TOKEN }}
14+
steps:
15+
- name: Checkout app
16+
uses: actions/checkout@v3
17+
with:
18+
path: app
19+
20+
- name: Checkout github-ci
21+
uses: actions/checkout@v3
22+
with:
23+
repository: jalantechnologies/github-ci
24+
path: platform
25+
ref: v3.2.5
26+
27+
- name: Build Docker image
28+
id: build
29+
uses: ./platform/.github/actions/build
30+
with:
31+
app_name: flask-react-template
32+
tag: production
33+
context: app/.
34+
docker_registry: ${{ vars.DOCKER_REGISTRY }}
35+
docker_username: ${{ vars.DOCKER_USERNAME }}
36+
docker_password: ${{ secrets.DOCKER_PASSWORD }}
37+
38+
- name: Deploy to production
39+
uses: ./platform/.github/actions/deploy
40+
with:
41+
app_name: flask-react-template
42+
app_env: production
43+
app_hostname: flask-react-template.platform.bettrhq.com
44+
branch: main
45+
deploy_id: ${{ github.run_number }}
46+
deploy_root: app/lib/kube
47+
deploy_labels: gh/env=production
48+
deploy_image: ${{ steps.build.outputs.image_ref }}
49+
docker_registry: ${{ vars.DOCKER_REGISTRY }}
50+
docker_username: ${{ vars.DOCKER_USERNAME }}
51+
docker_password: ${{ secrets.DOCKER_PASSWORD }}
52+
do_access_token: ${{ secrets.DO_ACCESS_TOKEN }}
53+
do_cluster_id: ${{ vars.DO_CLUSTER_ID }}
54+
doppler_token: ${{ secrets.DOPPLER_PRODUCTION_TOKEN }}

0 commit comments

Comments
 (0)