snappymail/.github/workflows/builder.yml
RainLoop Team 8ebaa0aab8 CI
2021-01-16 22:07:24 +03:00

70 lines
1.9 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
- run: yarn build-pro
- name: Move all assets to release folder
run: |
mkdir ./release
cp `ls ./build/dist/releases/**/**/*.zip | xargs` ./release
- name: Configure GPG Key
run: |
mkdir -p ~/.gnupg/
chown -R $(whoami) ~/.gnupg/
echo "$GPG_SIGNING_KEY" > ~/.gnupg/private.key
find ~/.gnupg -type f -exec chmod 600 {} \;
find ~/.gnupg -type d -exec chmod 700 {} \;
echo "---"
gpg --import --yes ~/.gnupg/private.key
echo "---"
gpg --list-secret-keys --keyid-format LONG
ls ./release/*.zip
echo "---"
for ff in `ls ./release/*.zip`; do gpg --detach-sign --armor --openpgp --pinentry-mode loopback --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: true
prerelease: true
- name: Upload Release Assets
uses: shogo82148/actions-upload-release-asset@v1
with:
upload_url: ${{ steps.create_release.outputs.upload_url }}
asset_path: ./release/*