Skip to content

Commit 5eda3b2

Browse files
committed
workflow to v4
1 parent 8a60093 commit 5eda3b2

File tree

2 files changed

+40
-53
lines changed

2 files changed

+40
-53
lines changed

.github/workflows/pio-build.yaml

Lines changed: 9 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -86,18 +86,6 @@ jobs:
8686
cat firmware.sign ./SmartEVSE-3/.pio/build/release/firmware.bin > ./SmartEVSE-3/.pio/build/release/firmware.signed.bin
8787
# Remove the temporary file
8888
rm -f "$secret_file"
89-
- name: Upload firmware.bin
90-
uses: actions/upload-artifact@v3
91-
with:
92-
name: dists_zip
93-
path: ./SmartEVSE-3/.pio/build/release/*.bin
94-
retention-days: 10
95-
- name: Upload HowToFlash.txt
96-
uses: actions/upload-artifact@v3
97-
with:
98-
name: dists_zip
99-
path: ./SmartEVSE-3/HowToFlash.txt
100-
retention-days: 10
10189
- name: Build debug version
10290
env:
10391
super_secret: ${{ secrets.SECRET_RSA_KEY }}
@@ -115,12 +103,18 @@ jobs:
115103
rm -f "$secret_file"
116104
mv ./SmartEVSE-3/.pio/build/release/firmware.bin ./SmartEVSE-3/.pio/build/release/firmware.debug.bin
117105
mv ./SmartEVSE-3/.pio/build/release/firmware.signed.bin ./SmartEVSE-3/.pio/build/release/firmware.debug.signed.bin
118-
- name: Upload Artifact debug firmware
119-
uses: actions/upload-artifact@v3
106+
107+
# Combined upload for all artifacts using v4
108+
- name: Upload all artifacts
109+
uses: actions/upload-artifact@v4
120110
with:
121111
name: dists_zip
122-
path: ./SmartEVSE-3/.pio/build/release/*.bin
112+
path: |
113+
./SmartEVSE-3/.pio/build/release/*.bin
114+
./SmartEVSE-3/HowToFlash.txt
123115
retention-days: 10
116+
compression-level: 6
117+
overwrite: true
124118

125119
outputs:
126120
artifact: dists_zip

.github/workflows/pio-release.yaml

Lines changed: 31 additions & 38 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@ jobs:
1515
minor: ${{ steps.get_version.outputs.minor }}
1616
patch: ${{ steps.get_version.outputs.patch }}
1717
prerelease: ${{ steps.get_version.outputs.prerelease }}
18+
1819
build:
1920
needs: version
2021
uses: ./.github/workflows/pio-build.yaml
@@ -24,6 +25,7 @@ jobs:
2425
patch: ${{ needs.version.outputs.patch }}
2526
prerelease: ${{ needs.version.outputs.prerelease }}
2627
secrets: inherit
28+
2729
release:
2830
permissions: write-all
2931
needs: build
@@ -33,53 +35,44 @@ jobs:
3335
- name: Get current tag
3436
id: tag
3537
run: echo "tag=${GITHUB_REF##*/}" >> $GITHUB_OUTPUT
38+
3639
- uses: actions/checkout@v4
37-
- uses: actions/download-artifact@v3
40+
41+
- name: Download artifacts
42+
uses: actions/download-artifact@v4
3843
id: download
3944
with:
45+
name: ${{ needs.build.outputs.artifact }}
4046
path: dist
47+
4148
- name: Create Release
4249
id: create_release
43-
uses: actions/create-release@v1
44-
env:
45-
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
50+
uses: softprops/action-gh-release@v1
4651
with:
47-
tag_name: ${{ github.ref }}
48-
release_name: Release ${{ github.ref }}
52+
tag_name: ${{ github.ref_name }}
53+
name: Release ${{ github.ref_name }}
4954
draft: false
5055
prerelease: true
51-
- name: Zip
52-
run: zip -j ${{ steps.tag.outputs.tag }}-dist.zip ./dist/${{ needs.build.outputs.artifact }}/*
56+
token: ${{ secrets.GITHUB_TOKEN }}
57+
58+
- name: Zip artifacts
59+
run: zip -j ${{ steps.tag.outputs.tag }}-dist.zip ./dist/*
60+
5361
- name: Upload Release Asset
54-
id: upload-release-asset
55-
uses: actions/upload-release-asset@v1
56-
env:
57-
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
62+
uses: softprops/action-gh-release@v1
5863
with:
59-
upload_url: ${{ steps.create_release.outputs.upload_url }}
60-
asset_path: ./${{ steps.tag.outputs.tag }}-dist.zip
61-
asset_name: ${{ steps.tag.outputs.tag }}-dist.zip
62-
asset_content_type: application/zip
63-
64-
- name: Install AWS CLI
65-
run: |
66-
sudo apt-get update
67-
sudo apt-get install -y awscli
68-
69-
- name: Configure AWS credentials
70-
env:
71-
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }}
72-
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
73-
run: |
74-
aws configure set aws_access_key_id $AWS_ACCESS_KEY_ID
75-
aws configure set aws_secret_access_key $AWS_SECRET_ACCESS_KEY
76-
aws configure set default.region eu-west-2
77-
78-
- name: Upload file to S3
79-
env:
80-
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }}
81-
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
64+
token: ${{ secrets.GITHUB_TOKEN }}
65+
files: ${{ steps.tag.outputs.tag }}-dist.zip
66+
tag_name: ${{ github.ref_name }}
67+
68+
- name: Configure AWS Credentials
69+
uses: aws-actions/configure-aws-credentials@v4
70+
with:
71+
aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }}
72+
aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
73+
aws-region: eu-west-2
74+
75+
- name: Upload files to S3
8276
run: |
83-
aws s3 cp ./dist/${{ needs.build.outputs.artifact }}/firmware.debug.signed.bin s3://smartevse-3/${{ github.repository_owner }}_firmware.debug.signed.bin
84-
aws s3 cp ./dist/${{ needs.build.outputs.artifact }}/firmware.signed.bin s3://smartevse-3/${{ github.repository_owner }}_firmware.signed.bin
85-
77+
aws s3 cp ./dist/firmware.debug.signed.bin s3://smartevse-3/${{ github.repository_owner }}_firmware.debug.signed.bin
78+
aws s3 cp ./dist/firmware.signed.bin s3://smartevse-3/${{ github.repository_owner }}_firmware.signed.bin

0 commit comments

Comments
 (0)