Skip to content

Commit

Permalink
testing gpg signing
Browse files Browse the repository at this point in the history
  • Loading branch information
Matte22 committed Feb 28, 2024
1 parent f196796 commit e0167fb
Show file tree
Hide file tree
Showing 2 changed files with 44 additions and 24 deletions.
66 changes: 43 additions & 23 deletions .github/workflows/build-binary-artifacts.yml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
# Modify build script

# attempt to sign the artifacts after they are built in the workflow
# if the signings fails then emit a warning and still upload only the binaries but exit with a non-zero status code
# if the signings fails then emit a warning and exit with a non-zero status code
# if the signing is successful then import the public key and verify the signatures
# if the verification fails then emit a warning and exit with a non-zero status code
# if the verification is successful then emit a success message and upload the singing file and the signed artifacts
Expand All @@ -10,7 +10,7 @@
#[[ $1 == "--sign" ]] && gpg --default-key $signing_key --armor --detach-sig $windows_archive
#[[ $1 == "--sign" ]] && gpg --default-key $signing_key --armor --detach-sig $linux_archive

name: Build Binary Artifacts
name: Build and Sign Binary Artifacts
on:
workflow_dispatch:
push:
Expand Down Expand Up @@ -47,29 +47,49 @@ jobs:
id: run_build_script
run: ./build.sh

- name: Upload Artifacts
uses: actions/upload-artifact@v3
with:
name: binary-artifacts
path: |
./dist/
if-no-files-found: error

- name: Import GPG Public Key
id: import_gpg_public
run: gpg --import ./nuwcdivnpt-bot.gpg.asc

- name: Get version from package.json
id: package_version
run: echo "PACKAGE_VERSION=$(jq -r '.version' package.json)" >> $GITHUB_ENV

- name: Verify Signatures
id: verify_signatures
working-directory: ./dist
- name: Signt Artifacts
id: sign_tartifacts
run: |
gpg --default-key [email protected] --armor --detach-sig ./dist/stigman-watcher-linux-${{ env.PACKAGE_VERSION }}.tar.gz
gpg --default-key [email protected] --armor --detach-sig ./dist/stigman-watcher-win-${{ env.PACKAGE_VERSION }}.zip;

- name: Sign Artifacts
id: sign_artifacts
run: |
if ! gpg --verify stigman-watcher-linux-${{ env.PACKAGE_VERSION }}.tar.gz.asc stigman-watcher-linux-${{ env.PACKAGE_VERSION }}.tar.gz; then
echo "::warning ::Signature verification for Linux failed"
fi
if ! gpg --verify stigman-watcher-win-${{ env.PACKAGE_VERSION }}.zip.asc stigman-watcher-win-${{ env.PACKAGE_VERSION }}.zip; then
echo "::warning ::Signature verification for Windows failed"
fi
if ! gpg --default-key [email protected] --armor --detach-sig ./dist/stigman-watcher-linux-${{ env.PACKAGE_VERSION }}.tar.gz
gpg --default-key [email protected] --armor --detach-sig ./dist/stigman-watcher-win-${{ env.PACKAGE_VERSION }}.zip;
then
echo "::warning ::Signing failed"
exit 1
fi
# - name: Import GPG Public Key
# id: import_gpg_public
# run: gpg --import ./nuwcdivnpt-bot.gpg.asc



# - name: Verify Signatures
# id: verify_signatures
# working-directory: ./dist
# run: |
# if ! gpg --verify stigman-watcher-linux-${{ env.PACKAGE_VERSION }}.tar.gz.asc stigman-watcher-linux-${{ env.PACKAGE_VERSION }}.tar.gz; then
# echo "::warning ::Signature verification for Linux failed"
# fi
# if ! gpg --verify stigman-watcher-win-${{ env.PACKAGE_VERSION }}.zip.asc stigman-watcher-win-${{ env.PACKAGE_VERSION }}.zip; then
# echo "::warning ::Signature verification for Windows failed"
# fi
# - name: Upload Artifacts
# uses: actions/upload-artifact@v3
# with:
# name: binary-artifacts
# path: |
# ./dist/
# if-no-files-found: error
2 changes: 1 addition & 1 deletion build.sh
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@ npm ci

# Bundle
printf "[BUILD_TASK] Bundling\n"
npx esbuild indeawdwdx.js --bundle --platform=node --outfile=bundle.js
npx esbuild index.js --bundle --platform=node --outfile=bundle.js
check_exit_status "Bundling" 1

# version=$(git describe --tags | sed 's/\(.*\)-.*/\1/')
Expand Down

0 comments on commit e0167fb

Please sign in to comment.