@@ -12,41 +12,46 @@ jobs:
1212 contents : write
1313 steps :
1414 - name : Prepare StartOS SDK
15- uses : start9Labs /sdk@v2
15+ uses : start9labs /sdk@v2
1616
1717 - name : Checkout services repository
1818 uses : actions/checkout@v4
1919 with :
2020 submodules : recursive
2121
2222 - name : Build the service package
23+ id : build
24+ env :
25+ S9DEVKEY : ${{ secrets.S9DEVKEY }}
2326 run : |
2427 start-cli init
28+ if [[ -n "$S9DEVKEY" ]]; then
29+ echo "Using developer key from secrets to sign the package."
30+ printf '%s' "$S9DEVKEY" > ~/.startos/developer.key.pem
31+ else
32+ echo "Using newly generated developer key to sign the package."
33+ fi
2534 RUST_LOG=debug RUST_BACKTRACE=1 make
26-
27- - name : Setting package ID and title from the manifest
28- id : package
29- run : |
30- PACKAGE_ID=$(start-cli s9pk inspect *.s9pk manifest | jq -r '.id')
31- PACKAGE_TITLE=$(start-cli s9pk inspect *.s9pk manifest | jq -r '.title')
35+ sleep 2
36+ MANIFEST_JSON=$(start-cli s9pk inspect *.s9pk manifest)
37+ PACKAGE_ID=$(echo "$MANIFEST_JSON" | jq -r '.id')
38+ PACKAGE_TITLE=$(echo "$MANIFEST_JSON" | jq -r '.title')
3239 echo "package_id=${PACKAGE_ID}" >> $GITHUB_ENV
3340 echo "package_title=${PACKAGE_TITLE}" >> $GITHUB_ENV
3441 printf "\n SHA256SUM: $(sha256sum ${PACKAGE_ID}.s9pk) \n"
3542 shell : bash
3643
3744 - name : Generate sha256 checksum
3845 run : |
39- sha256sum ${PACKAGE_ID} .s9pk > ${PACKAGE_ID }.s9pk.sha256
46+ sha256sum ${{ env.package_id }} .s9pk > ${{ env.package_id } }.s9pk.sha256
4047 shell : bash
4148
4249 - name : Generate changelog
4350 run : |
4451 echo "## What's Changed" > change-log.txt
4552 echo "" >> change-log.txt
46-
47- RELEASE_NOTES=$(start-cli s9pk inspect *.s9pk manifest | jq -r '.releaseNotes')
53+ RELEASE_NOTES=$(start-cli s9pk inspect *.s9pk manifest | jq -r '.releaseNotes')
4854 echo "${RELEASE_NOTES}" >> change-log.txt
49-
5055 echo "## SHA256 Hash" >> change-log.txt
5156 echo '```' >> change-log.txt
5257 sha256sum ${{ env.package_id }}.s9pk >> change-log.txt
@@ -66,12 +71,13 @@ jobs:
6671
6772 - name : Publish to Registry
6873 env :
69- S9USER : ${{ secrets.S9USER }}
70- S9PASS : ${{ secrets.S9PASS }}
74+ S9DEVKEY : ${{ secrets.S9DEVKEY }}
7175 S9REGISTRY : ${{ secrets.S9REGISTRY }}
7276 run : |
73- if [[ -z "$S9USER" || -z "$S9PASS " || -z "$S9REGISTRY" ]]; then
74- echo "Publish skipped: missing registry credentials ."
77+ if [[ -z "$S9DEVKEY " || -z "$S9REGISTRY" ]]; then
78+ echo "Publish skipped: One or both of S9DEVKEY and S9REGISTRY secrets are not set ."
7579 else
76- start-sdk publish https://$S9USER:$S9PASS@$S9REGISTRY ${{ env.package_id }}.s9pk
80+ echo "Publishing package to registry..."
81+ start-cli --registry https://$S9REGISTRY registry package add ${{ env.package_id }}.s9pk ${{ github.server_url }}/${{ github.repository }}/releases/download/${{ github.ref_name }}/${{ env.package_id }}.s9pk
7782 fi
83+ shell : bash
0 commit comments