Skip to content

Github Release

Github Release #68

Workflow file for this run

# release package
name: Github Release
on:
workflow_dispatch:
push:
tags:
- "v*.*.*"
jobs:
build-binaries:
runs-on: ubuntu-latest
permissions:
contents: read
id-token: write
# strategy:
# matrix:
# arch: [x64,arm64]
# platform: [linux,macos,win]
# exclude:
# - platform: win
# arch: arm64
steps:
- name: Checkout
uses: actions/checkout@v4
- uses: aws-actions/configure-aws-credentials@v4
with:
role-to-assume: ${{ secrets.AWS_ROLE }}
aws-region: us-west-2
- uses: actions/setup-node@v4
with:
node-version: '18.x'
cache: yarn
- run: yarn
- run: yarn build
- uses: actions/cache@v3
id: cache
with:
path: packages/cli/tmp
key: preevy-oclif-pack-node18
- name: pack and upload tarballs
working-directory: packages/cli
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
TARGETS: linux-x64,linux-arm64,darwin-x64,darwin-arm64,win32-x64
run: |
yarn oclif pack tarballs --parallel --no-xz --targets $TARGETS
yarn oclif upload tarballs --no-xz --targets $TARGETS
# - uses: depot/setup-action@v1
# with:
# oidc: true
# - name: Build using Docker (with depot)
# run: mkdir preevy-bin && depot build --project ${{ vars.DEPOT_PROJECT_ID }} --build-arg CLI_TARGET=${{ matrix.platform }}-${{ matrix.arch }} -f Dockerfile.cli --target=cli --output=type=tar,dest=./preevy-bin/preevy-${{ matrix.platform }}-${{ matrix.arch }}.tar --progress=plain --platform=linux/${{ matrix.arch == 'x64' && 'amd64' || matrix.arch }} .
# - uses: apple-actions/import-codesign-certs@v2
# if: ${{ matrix.platform == 'macos' }}
# with:
# p12-file-base64: ${{ secrets.APPLE_CERT_DATA }}
# p12-password: ${{ secrets.APPLE_CERT_PASS }}
# - name: Sign mac binaries
# if: ${{ matrix.platform == 'macos' }}
# env:
# CERT_CN: ${{ vars.APPLE_CERT_CN }}
# run: |
# tar -xf ./preevy-bin/preevy-${{ matrix.platform }}-${{ matrix.arch }}.tar
# codesign --remove-signature ./preevy
# security find-identity -v
# codesign --verbose=4 --sign "$CERT_CN" ./preevy
# tar -cf ./preevy-bin/preevy-${{ matrix.platform }}-${{ matrix.arch }}.tar ./preevy
# - name: Upload artifacts
# uses: actions/upload-artifact@v4
# with:
# name: preevy-bin-${{ matrix.platform }}-${{ matrix.arch }}
# path: ./preevy-bin/**
# release:
# runs-on: ubuntu-latest
# needs: build-binaries
# steps:
# - name: Checkout
# uses: actions/checkout@v4
# - uses: depot/setup-action@v1
# - name: Download artifacts
# uses: actions/download-artifact@v4
# with:
# pattern: preevy-bin-*
# path: ./preevy-bin
# merge-multiple: true
# - name: Release
# uses: softprops/action-gh-release@v1
# with:
# generate_release_notes: true
# draft: ${{ !startsWith(github.ref, 'refs/tags/') }}
# prerelease: ${{ !startsWith(github.ref, 'refs/tags/') }}
# files: |
# ./preevy-bin/**