snappymail/.github/workflows/builder.yml
2022-08-31 19:20:47 +00:00

60 lines
1.6 KiB
YAML

name: Builder
on:
push:
tags:
- 'v*'
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
with:
fetch-depth: 1
- uses: actions/setup-node@v1
with:
node-version: 12.x
- name: Create Cache
uses: actions/cache@v2
with:
path: '**/node_modules'
key: os-${{ runner.os }}-modules-${{ hashFiles('**/yarn.lock') }}
- run: yarn install --frozen-lockfile --check-files
- run: yarn build
- name: Move all assets to release folder
run: |
mkdir ./release
cp `ls ./build/dist/releases/**/**/*.zip | xargs` ./release
- name: Configure GPG Key
run: |
export GPG_TTY=$(tty)
echo "$GPG_SIGNING_KEY" | gpg --batch --import
for ff in `ls ./release/*.zip`; do gpg --detach-sign --batch --pinentry-mode loopback --armor --openpgp --yes -u 87DA4591 --passphrase="$GPG_PASSPHRASE" $ff; done
env:
GPG_SIGNING_KEY: ${{ secrets.GPG_SIGNING_KEY }}
GPG_PASSPHRASE: ${{ secrets.GPG_PASSPHRASE }}
- name: Create Release
id: create_release
uses: actions/create-release@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
tag_name: ${{ github.ref }}
release_name: ${{ github.ref }}
body: Release ${{ github.ref }}
draft: false
prerelease: false
- name: Upload Release Assets
uses: shogo82148/actions-upload-release-asset@v1
with:
upload_url: ${{ steps.create_release.outputs.upload_url }}
asset_path: ./release/*