Skip to content

Commit 9cd781b

Browse files
committed
CR Feedback
1 parent 18bf0e1 commit 9cd781b

4 files changed

Lines changed: 75 additions & 70 deletions

File tree

.github/workflows/deploy.yml

Lines changed: 12 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -18,43 +18,45 @@ on:
1818
OTEL_BUILD_TAG:
1919
type: 'string'
2020
required: true
21+
secrets:
2122
AWS_ACCESS_KEY_ID:
22-
type: 'string'
2323
required: true
2424
AWS_SECRET_ACCESS_KEY:
25-
type: 'string'
2625
required: true
2726
AWS_DEFAULT_REGION:
28-
type: 'string'
2927
required: true
3028
AWS_ECR_ACCOUNT:
31-
type: 'string'
3229
required: true
3330

3431
jobs:
3532
deploy-to-ecr:
3633
runs-on: ubuntu-latest
3734
steps:
35+
- name: Pull from GHCR
36+
run: |
37+
docker pull ghcr.io/sillsdev/appbuilder-buildengine-api:${{ inputs.DOCKER_TAG }}
38+
docker pull ghcr.io/sillsdev/appbuilder-buildengine-otel:${{ inputs.DOCKER_TAG }}
39+
3840
- name: Configure AWS credentials
3941
id: aws
4042
uses: aws-actions/configure-aws-credentials@v4
4143
with:
42-
aws-access-key-id: ${{ inputs.AWS_ACCESS_KEY_ID }}
43-
aws-secret-access-key: ${{ inputs.AWS_SECRET_ACCESS_KEY }}
44-
aws-region: ${{ inputs.AWS_DEFAULT_REGION }}
44+
aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }}
45+
aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
46+
aws-region: ${{ secrets.AWS_DEFAULT_REGION }}
4547

4648
- name: Login to AWS ECR
4749
id: ecr
4850
uses: aws-actions/amazon-ecr-login@v2
4951
with:
50-
registries: ${{ inputs.AWS_ECR_ACCOUNT }}
52+
registries: ${{ secrets.AWS_ECR_ACCOUNT }}
5153

5254
- name: Build deployment target variables
5355
id: vars
5456
run: |
5557
echo "Setting up deployment variables..."
56-
echo "IMAGE_URL=${{ steps.ecr.outputs.registry }}.amazonaws.com/appbuilder-buildengine-api-origin" >> $GITHUB_OUTPUT
57-
echo "OTEL_URL=${{ steps.ecr.outputs.registry }}.amazonaws.com/appbuilder-buildengine-api-otel-collector" >> $GITHUB_OUTPUT
58+
echo "IMAGE_URL=${{ steps.ecr.outputs.registry }}/appbuilder-buildengine-api-origin" >> $GITHUB_OUTPUT
59+
echo "OTEL_URL=${{ steps.ecr.outputs.registry }}/appbuilder-buildengine-api-otel-collector" >> $GITHUB_OUTPUT
5860
5961
- name: Push to AWS ECR
6062
run: |

.github/workflows/main.yml

Lines changed: 60 additions & 56 deletions
Original file line numberDiff line numberDiff line change
@@ -9,16 +9,21 @@ on:
99

1010
env:
1111
BUILD_ENGINE_BUILD_TAG: "build-engine-api:${{ github.run_number }}"
12-
OTEL_BUILD_TAG: "scriptoria-otel:${{ github.run_number }}"
12+
OTEL_BUILD_TAG: "build-engine-otel:${{ github.run_number }}"
1313

1414
jobs:
1515
check:
1616
uses: "./.github/workflows/setup.yml"
1717
secrets:
1818
AUTH0_SECRET: ${{ secrets.AUTH0_SECRET }}
19-
deploy-to-ecr:
19+
push-to-ghcr:
2020
runs-on: ubuntu-latest
2121
needs: check
22+
outputs:
23+
DOCKER_TAG: ${{ steps.branch.outputs.DOCKER_TAG }}
24+
ECS_CLUSTER: ${{ steps.branch.outputs.ECS_CLUSTER }}
25+
BUILD_ENGINE_BUILD_TAG: ${{ env.BUILD_ENGINE_BUILD_TAG }}
26+
OTEL_BUILD_TAG: ${{ env.OTEL_BUILD_TAG }}
2227
if: ${{ success() && (github.ref == 'refs/heads/develop' || github.ref == 'refs/heads/master') }}
2328
steps:
2429
- name: Checkout
@@ -41,7 +46,7 @@ jobs:
4146
uses: docker/build-push-action@v4
4247
with:
4348
push: false
44-
tags: ${{ env.BUILD_ENGINE_BUILD_TAG }}
49+
tags: ${{ env.OTEL_BUILD_TAG }}
4550
context: .
4651
load: true
4752
file: Dockerfile.otel
@@ -52,8 +57,8 @@ jobs:
5257
if [[ "${GITHUB_HEAD_REF}" != "" ]]; then BRANCH="${GITHUB_HEAD_REF}"; else BRANCH="${GITHUB_REF_NAME}"; fi
5358
case $BRANCH in develop) DOCKER_TAG="staging" ;; master) DOCKER_TAG="production" ;; *) DOCKER_TAG="${BRANCH//\//-}" ;; esac
5459
case $BRANCH in develop) ECS_CLUSTER="scriptoria-stg";; master) ECS_CLUSTER="scriptoria-prd" ;; *) ECS_CLUSTER="none" ;; esac
55-
echo "DockerTag=${DOCKER_TAG}" >> $GITHUB_OUTPUT
56-
echo "EcsCluster=${ECS_CLUSTER}" >> $GITHUB_OUTPUT
60+
echo "DOCKER_TAG=${DOCKER_TAG}" >> $GITHUB_OUTPUT
61+
echo "ECS_CLUSTER=${ECS_CLUSTER}" >> $GITHUB_OUTPUT
5762
5863
- name: Login to GitHub Container Registry
5964
uses: docker/login-action@v2
@@ -64,56 +69,55 @@ jobs:
6469

6570
- name: Push to GHCR
6671
run: |
67-
docker tag ${{ env.BUILD_ENGINE_BUILD_TAG }} ghcr.io/sillsdev/appbuilder-buildengine-api:${{ steps.branch.outputs.DockerTag }}
68-
docker push ghcr.io/sillsdev/appbuilder-buildengine-api:${{ steps.branch.outputs.DockerTag }}
69-
# push OTEL???
70-
71-
- name: Deploy SIL
72-
uses: "./.github/workflows/deploy.yml"
73-
with:
74-
BUILD_NUMBER: ${{ github.run_number }}
75-
ECS_CLUSTER: ${{ steps.branch.outputs.EcsCluster }}
76-
DOCKER_TAG: ${{ steps.branch.outputs.DockerTag }}
77-
BUILD_ENGINE_BUILD_TAG: ${{ env.BUILD_ENGINE_BUILD_TAG }}
78-
OTEL_BUILD_TAG: ${{ env.OTEL_BUILD_TAG }}
79-
AWS_ACCESS_KEY_ID: ${{ secrets.SIL__AWS_ACCESS_KEY_ID }}
80-
AWS_SECRET_ACCESS_KEY: ${{ secrets.SIL__AWS_SECRET_ACCESS_KEY }}
81-
AWS_DEFAULT_REGION: ${{ secrets.SIL__AWS_DEFAULT_REGION }}
82-
AWS_ECR_ACCOUNT: ${{ secrets.SIL__AWS_ECR_ACCOUNT }}
72+
docker tag ${{ env.BUILD_ENGINE_BUILD_TAG }} ghcr.io/sillsdev/appbuilder-buildengine-api:${{ steps.branch.outputs.DOCKER_TAG }}
73+
docker push ghcr.io/sillsdev/appbuilder-buildengine-api:${{ steps.branch.outputs.DOCKER_TAG }}
8374
84-
- name: Deploy FCBH
85-
if: false # Temporarily disabled - remove this line to re-enable
86-
# if: ${{ steps.branch.outputs.EcsCluster == 'scriptoria-prd' }} # Restore this when re-enabling
87-
uses: "./.github/workflows/deploy.yml"
88-
with:
89-
BUILD_NUMBER: ${{ github.run_number }}
90-
ECS_CLUSTER: ${{ steps.branch.outputs.EcsCluster }}
91-
DOCKER_TAG: ${{ steps.branch.outputs.DockerTag }}
92-
BUILD_ENGINE_BUILD_TAG: ${{ env.BUILD_ENGINE_BUILD_TAG }}
93-
OTEL_BUILD_TAG: ${{ env.OTEL_BUILD_TAG }}
94-
AWS_ACCESS_KEY_ID: ${{ secrets.FCBH__AWS_ACCESS_KEY_ID }}
95-
AWS_SECRET_ACCESS_KEY: ${{ secrets.FCBH__AWS_SECRET_ACCESS_KEY }}
96-
AWS_DEFAULT_REGION: ${{ secrets.FCBH__AWS_DEFAULT_REGION }}
97-
AWS_ECR_ACCOUNT: ${{ secrets.FCBH__AWS_ECR_ACCOUNT }}
98-
99-
- name: Deploy LU
100-
if: ${{ steps.branch.outputs.EcsCluster == 'scriptoria-stg' }}
101-
uses: "./.github/workflows/deploy.yml"
102-
with:
103-
BUILD_NUMBER: ${{ github.run_number }}
104-
ECS_CLUSTER: ${{ steps.branch.outputs.EcsCluster }}
105-
DOCKER_TAG: ${{ steps.branch.outputs.DockerTag }}
106-
BUILD_ENGINE_BUILD_TAG: ${{ env.BUILD_ENGINE_BUILD_TAG }}
107-
OTEL_BUILD_TAG: ${{ env.OTEL_BUILD_TAG }}
108-
AWS_ACCESS_KEY_ID: ${{ secrets.LU__AWS_ACCESS_KEY_ID }}
109-
AWS_SECRET_ACCESS_KEY: ${{ secrets.LU__AWS_SECRET_ACCESS_KEY }}
110-
AWS_DEFAULT_REGION: ${{ secrets.LU__AWS_DEFAULT_REGION }}
111-
AWS_ECR_ACCOUNT: ${{ secrets.LU__AWS_ECR_ACCOUNT }}
75+
docker tag ${{ env.OTEL_BUILD_TAG }} ghcr.io/sillsdev/appbuilder-buildengine-otel:${{ steps.branch.outputs.DOCKER_TAG }}
76+
docker push ghcr.io/sillsdev/appbuilder-buildengine-otel:${{ steps.branch.outputs.DOCKER_TAG }}
11277
113-
- name: Clean up older packages
114-
uses: actions/delete-package-versions@v4
115-
with:
116-
package-name: "appbuilder-buildengine-api"
117-
package-type: "container"
118-
min-versions-to-keep: 6
119-
delete-only-untagged-versions: "true"
78+
deploy-sil:
79+
needs: push-to-ghcr
80+
if: ${{ success() && (github.ref == 'refs/heads/develop' || github.ref == 'refs/heads/master') }}
81+
uses: "./.github/workflows/deploy.yml"
82+
with:
83+
BUILD_NUMBER: ${{ github.run_number }}
84+
ECS_CLUSTER: ${{ needs.push-to-ghcr.outputs.ECS_CLUSTER }}
85+
DOCKER_TAG: ${{ needs.push-to-ghcr.outputs.DOCKER_TAG }}
86+
BUILD_ENGINE_BUILD_TAG: ${{ needs.push-to-ghcr.outputs.BUILD_ENGINE_BUILD_TAG }}
87+
OTEL_BUILD_TAG: ${{ needs.push-to-ghcr.outputs.OTEL_BUILD_TAG }}
88+
secrets:
89+
AWS_ACCESS_KEY_ID: ${{ secrets.SIL__AWS_ACCESS_KEY_ID }}
90+
AWS_SECRET_ACCESS_KEY: ${{ secrets.SIL__AWS_SECRET_ACCESS_KEY }}
91+
AWS_DEFAULT_REGION: ${{ secrets.SIL__AWS_DEFAULT_REGION }}
92+
AWS_ECR_ACCOUNT: ${{ secrets.SIL__AWS_ECR_ACCOUNT }}
93+
deploy-fcbh:
94+
needs: push-to-ghcr
95+
if: false # Temporarily disabled - remove this line to re-enable
96+
# if: ${{ success() && (github.ref == 'refs/heads/develop' || github.ref == 'refs/heads/master') && needs.push-to-ghcr.outputs.ECS_CLUSTER == 'scriptoria-prd' }} # Restore this when re-enabling
97+
uses: "./.github/workflows/deploy.yml"
98+
with:
99+
BUILD_NUMBER: ${{ github.run_number }}
100+
ECS_CLUSTER: ${{ needs.push-to-ghcr.outputs.ECS_CLUSTER }}
101+
DOCKER_TAG: ${{ needs.push-to-ghcr.outputs.DOCKER_TAG }}
102+
BUILD_ENGINE_BUILD_TAG: ${{ needs.push-to-ghcr.outputs.BUILD_ENGINE_BUILD_TAG }}
103+
OTEL_BUILD_TAG: ${{ needs.push-to-ghcr.outputs.OTEL_BUILD_TAG }}
104+
secrets:
105+
AWS_ACCESS_KEY_ID: ${{ secrets.FCBH__AWS_ACCESS_KEY_ID }}
106+
AWS_SECRET_ACCESS_KEY: ${{ secrets.FCBH__AWS_SECRET_ACCESS_KEY }}
107+
AWS_DEFAULT_REGION: ${{ secrets.FCBH__AWS_DEFAULT_REGION }}
108+
AWS_ECR_ACCOUNT: ${{ secrets.FCBH__AWS_ECR_ACCOUNT }}
109+
deploy-lu:
110+
needs: push-to-ghcr
111+
if: ${{ success() && (github.ref == 'refs/heads/develop' || github.ref == 'refs/heads/master') && needs.push-to-ghcr.outputs.ECS_CLUSTER == 'scriptoria-stg' }}
112+
uses: "./.github/workflows/deploy.yml"
113+
with:
114+
BUILD_NUMBER: ${{ github.run_number }}
115+
ECS_CLUSTER: ${{ needs.push-to-ghcr.outputs.ECS_CLUSTER }}
116+
DOCKER_TAG: ${{ needs.push-to-ghcr.outputs.DOCKER_TAG }}
117+
BUILD_ENGINE_BUILD_TAG: ${{ needs.push-to-ghcr.outputs.BUILD_ENGINE_BUILD_TAG }}
118+
OTEL_BUILD_TAG: ${{ needs.push-to-ghcr.outputs.OTEL_BUILD_TAG }}
119+
secrets:
120+
AWS_ACCESS_KEY_ID: ${{ secrets.LU__AWS_ACCESS_KEY_ID }}
121+
AWS_SECRET_ACCESS_KEY: ${{ secrets.LU__AWS_SECRET_ACCESS_KEY }}
122+
AWS_DEFAULT_REGION: ${{ secrets.LU__AWS_DEFAULT_REGION }}
123+
AWS_ECR_ACCOUNT: ${{ secrets.LU__AWS_ECR_ACCOUNT }}

.github/workflows/setup.yml

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -30,9 +30,6 @@ jobs:
3030
echo
3131
echo Docker version
3232
docker --version
33-
echo
34-
echo Environment variables
35-
env
3633
BACKUP_AUTH0_SECRET=$(hexdump -vn32 -e'8/4 "%08x" 1 "\n"' /dev/urandom)
3734
echo "BACKUP_AUTH0_SECRET=${BACKUP_AUTH0_SECRET}" >> $GITHUB_OUTPUT
3835

src/lib/server/models/artifact-handle.ts

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,9 @@ export function handleArtifact(provider: ProviderForArtifacts, key: string, cont
2727
provider.artifact_files = name;
2828
}
2929

30-
if (type === Build.Artifact.VersionCode) {
30+
const code = (contents && parseInt(contents)) || NaN;
31+
32+
if (type === Build.Artifact.VersionCode && !isNaN(code)) {
3133
provider.version_code = Number(contents);
3234
}
3335
}

0 commit comments

Comments
 (0)