Skip to content

Commit d0c411a

Browse files
committed
Fix build #47
1 parent 56e2a6c commit d0c411a

1 file changed

Lines changed: 90 additions & 22 deletions

File tree

.github/workflows/build.yml

Lines changed: 90 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -12,24 +12,19 @@ on:
1212

1313
env:
1414
AWS_ACCOUNT_ID: '013230744746'
15-
RELEASE_ACCESS_KEY_ID: AKIAQGFE5ESVJ7IYEUVR
16-
REPO_BUCKET: gutenberg-ext-imglambda-repobucket-1i58nyytyztdl
15+
RELEASE_ACCESS_KEY_ID_US_EAST_1: AKIAQGFE5ESVJ7IYEUVR
16+
RELEASE_ACCESS_KEY_ID_AP_NORTHEAST_1: AKIAQGFE5ESVG2GCWRBX
17+
REPO_BUCKET_US_EAST_1: gutenberg-ext-imglambda-repobucket-1i58nyytyztdl
18+
REPO_BUCKET_AP_NORTHEAST_1: gutenberg-ext-imglambda-repobucket-mm723a9uponj
1719
TEST_ACCESS_KEY_ID: AKIAQGFE5ESVKGVB3XGS
1820
TEST_GENERATED_BUCKET: gutenberg-ext-imglambda-testgeneratedbucket-n8c79jl0mzd2
1921
TEST_ORIGINAL_BUCKET: gutenberg-ext-imglambda-testoriginalbucket-fz28m8cblu5t
2022
PYTHON_VERSION: 3.13.5
2123

2224
jobs:
23-
build:
24-
runs-on: ubuntu-24.04
25+
buildnumber:
26+
runs-on: ubuntu-24.04-arm
2527
steps:
26-
- uses: actions/checkout@main
27-
- uses: actions/setup-python@main
28-
with:
29-
python-version: '~${{env.PYTHON_VERSION}}'
30-
- name: Python Poetry Action
31-
uses: abatilo/actions-poetry@master
32-
- run: script/recreate-release-venv
3328
- name: Generate build number
3429
uses: onyxmueller/build-tag-number@main
3530
with:
@@ -38,19 +33,67 @@ jobs:
3833
- name: Print new build number
3934
run: echo "Build number is $BUILD_NUMBER"
4035
- name: Save the build number
41-
run: echo "$BUILD_NUMBER" > work/BUILD_NUMBER
36+
run: echo "$BUILD_NUMBER" > BUILD_NUMBER
4237
- name: Embed build number into code
4338
run: echo "build-$BUILD_NUMBER" > VERSION
44-
- run: script/create-lambda
4539
- uses: actions/upload-artifact@main
4640
with:
47-
name: artifact
48-
path: work/imglambda.zip
41+
name: build-number
42+
path: BUILD_NUMBER
4943
if-no-files-found: error
44+
45+
build-amd64:
46+
runs-on: ubuntu-24.04
47+
env:
48+
# Workaround for https://github.com/github/vscode-github-actions/issues/222
49+
BUILD_NUMBER: ""
50+
steps:
51+
- uses: actions/download-artifact@main
52+
with:
53+
name: build-number
54+
- name: set BUILD_NUMBER
55+
run: echo "BUILD_NUMBER=$(< ./BUILD_NUMBER)" >> $GITHUB_ENV
56+
- uses: actions/checkout@main
57+
- uses: actions/setup-python@main
58+
with:
59+
python-version: '~${{env.PYTHON_VERSION}}'
60+
- name: Python Poetry Action
61+
uses: abatilo/actions-poetry@master
62+
- run: script/recreate-release-venv
63+
- name: Embed build number into code
64+
run: echo "build-$BUILD_NUMBER" > VERSION
65+
- run: script/create-lambda
5066
- uses: actions/upload-artifact@main
67+
with:
68+
name: artifact-amd64
69+
path: work/imglambda-amd64.zip
70+
if-no-files-found: error
71+
72+
build-arm64:
73+
runs-on: ubuntu-24.04-arm
74+
env:
75+
# Workaround for https://github.com/github/vscode-github-actions/issues/222
76+
BUILD_NUMBER: ""
77+
steps:
78+
- uses: actions/download-artifact@main
5179
with:
5280
name: build-number
53-
path: work/BUILD_NUMBER
81+
- name: set BUILD_NUMBER
82+
run: echo "BUILD_NUMBER=$(< ./BUILD_NUMBER)" >> $GITHUB_ENV
83+
- uses: actions/checkout@main
84+
- uses: actions/setup-python@main
85+
with:
86+
python-version: '~${{env.PYTHON_VERSION}}'
87+
- name: Python Poetry Action
88+
uses: abatilo/actions-poetry@master
89+
- run: script/recreate-release-venv
90+
- name: Embed build number into code
91+
run: echo "build-$BUILD_NUMBER" > VERSION
92+
- run: script/create-lambda
93+
- uses: actions/upload-artifact@main
94+
with:
95+
name: artifact-arm64
96+
path: work/imglambda-arm64.zip
5497
if-no-files-found: error
5598

5699
test:
@@ -82,7 +125,9 @@ jobs:
82125

83126
release:
84127
needs:
85-
- build
128+
- buildnumber
129+
- build-amd64
130+
- build-arm64
86131
- test
87132
if: github.ref == 'refs/heads/master'
88133
runs-on: ubuntu-24.04
@@ -93,7 +138,10 @@ jobs:
93138
steps:
94139
- uses: actions/download-artifact@main
95140
with:
96-
name: artifact
141+
name: artifact-amd64
142+
- uses: actions/download-artifact@main
143+
with:
144+
name: artifact-arm64
97145
- uses: actions/download-artifact@main
98146
with:
99147
name: build-number
@@ -113,12 +161,32 @@ jobs:
113161
GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}}
114162
with:
115163
upload_url: ${{steps.create_release.outputs.upload_url}}
116-
asset_path: ./imglambda.zip
164+
asset_path: ./imglambda-amd64.zip
117165
asset_name: imglambda.build-${{env.BUILD_NUMBER}}-awslambda-python3.13-amd64.zip
118166
asset_content_type: application/octet-stream
167+
- uses: actions/upload-release-asset@main
168+
env:
169+
GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}}
170+
with:
171+
upload_url: ${{steps.create_release.outputs.upload_url}}
172+
asset_path: ./imglambda-arm64.zip
173+
asset_name: imglambda.build-${{env.BUILD_NUMBER}}-awslambda-python3.13-arm64.zip
174+
asset_content_type: application/octet-stream
119175
- uses: aws-actions/configure-aws-credentials@main
120176
with:
121-
aws-access-key-id: ${{env.RELEASE_ACCESS_KEY_ID}}
122-
aws-secret-access-key: ${{secrets.RELEASE_AWS_SECRET_ACCESS_KEY}}
177+
aws-access-key-id: ${{env.RELEASE_ACCESS_KEY_ID_US_EAST_1}}
178+
aws-secret-access-key: ${{secrets.RELEASE_AWS_SECRET_ACCESS_KEY_US_EAST_1}}
123179
aws-region: us-east-1
124-
- run: aws s3 cp ./imglambda.zip s3://${{env.REPO_BUCKET}}/imglambda.build-${{env.BUILD_NUMBER}}-awslambda-python3.13-amd64.zip
180+
- run: >-
181+
aws s3 cp
182+
./imglambda-amd64.zip
183+
s3://${{env.REPO_BUCKET_US_EAST_1}}/imglambda.build-${{env.BUILD_NUMBER}}-awslambda-python3.13-amd64.zip
184+
- uses: aws-actions/configure-aws-credentials@main
185+
with:
186+
aws-access-key-id: ${{env.RELEASE_ACCESS_KEY_ID_US_EAST_1}}
187+
aws-secret-access-key: ${{secrets.RELEASE_AWS_SECRET_ACCESS_KEY_AP_NORTHEAST_1}}
188+
aws-region: ap-northeast-1
189+
- run: >-
190+
aws s3 cp
191+
./imglambda-arm64.zip
192+
s3://${{env.REPO_BUCKET_AP_NORTHEAST_1}}/imglambda.build-${{env.BUILD_NUMBER}}-awslambda-python3.13-arm64.zip

0 commit comments

Comments
 (0)