@@ -42,23 +42,34 @@ jobs:
42
42
SIGNING_KEY_ALIAS : ${{ secrets.SIGNING_KEY_ALIAS }}
43
43
SIGNING_KEY_PASSWORD : ${{ secrets.SIGNING_KEY_PASSWORD }}
44
44
SIGNING_STORE_PASSWORD : ${{ secrets.SIGNING_STORE_PASSWORD }}
45
- - name : Sign and Checksum APK
46
- run : ./gradlew copyFinalAPK -Psigning.gnupg.passphrase=${{ secrets.GPG_SIGNING_PASSWORD }} -Psigning.gnupg.executable=gpg
47
- - name : List the files
48
- run : |
49
- tree gpslogger/build/outputs/
50
- ls -lah gpslogger/
51
- - uses : actions/attest-build-provenance@v1
52
- id : attest
53
- with :
54
- subject-path : gpslogger/gpslogger-*.apk
45
+ - name : Copy and rename the APK
46
+ run : ./gradlew copyFinalAPK -Psigning.gnupg.passphrase=${{ secrets.GPG_SIGNING_PASSWORD }} -Psigning.gnupg.executable=gpg
55
47
- name : Get APK and WORKFLOW REF
56
48
id : references
57
49
run : |
58
50
APK_FILE_NAME=$(find gpslogger/ -maxdepth 1 -name "gpslogger-*.apk" -print -quit | xargs basename)
59
- logIndex=$(jq -r '.verificationMaterial.tlogEntries[0].logIndex' < ${{ steps.attest.outputs.bundle-path }})
60
51
echo "APK_FILE_NAME=$APK_FILE_NAME" >> "$GITHUB_OUTPUT"
61
52
echo "GITHUB_WORKFLOW_REF=$GITHUB_WORKFLOW_REF" >> "$GITHUB_OUTPUT"
53
+ - name : GPG Sign the APK
54
+ run : |
55
+ gpg --pinentry-mode loopback --passphrase ${{ secrets.GPG_SIGNING_PASSWORD }} --yes -ab --output gpslogger/${{ steps.references.outputs.APK_FILE_NAME }}.asc gpslogger/${{ steps.references.outputs.APK_FILE_NAME }}
56
+ - name : Checksum the APK
57
+ run : |
58
+ cd gpslogger
59
+ sha256sum gpslogger-132-rc2.apk > gpslogger-132-rc2.apk.SHA256
60
+ - name : Cosign Attestation of the APK
61
+ uses : actions/attest-build-provenance@v1
62
+ id : attest
63
+ with :
64
+ subject-path : gpslogger/gpslogger-*.apk
65
+ - name : List the files
66
+ run : |
67
+ tree gpslogger/build/outputs/
68
+ ls -lah gpslogger/
69
+ - name : Get LOGINDEX
70
+ id : logindex
71
+ run : |
72
+ logIndex=$(jq -r '.verificationMaterial.tlogEntries[0].logIndex' < ${{ steps.attest.outputs.bundle-path }})
62
73
echo "REKOR_LOGINDEX=$logIndex" >> "$GITHUB_OUTPUT"
63
74
- name : Copy cosign bundle
64
75
run : cp ${{ steps.attest.outputs.bundle-path }} gpslogger/${{ steps.references.outputs.APK_FILE_NAME }}.cosign.bundle
84
95
cosign verify-blob ${{ steps.references.outputs.APK_FILE_NAME }} --bundle ${{ steps.references.outputs.APK_FILE_NAME }}.cosign.bundle --new-bundle-format --cert-oidc-issuer https://token.actions.githubusercontent.com --cert-identity https://github.com/${{ steps.references.outputs.GITHUB_WORKFLOW_REF }}
85
96
```
86
97
87
- [Rekor transparency log](https://search.sigstore.dev?logIndex=${{ steps.references .outputs.REKOR_LOGINDEX }})
98
+ [Rekor transparency log](https://search.sigstore.dev?logIndex=${{ steps.logindex .outputs.REKOR_LOGINDEX }})
88
99
files : |
89
100
gpslogger/gpslogger-*.apk
90
101
gpslogger/gpslogger-*.apk.asc
0 commit comments