Skip to content

Add Apple certificate import step #4

Add Apple certificate import step

Add Apple certificate import step #4

Workflow file for this run

name: Release
on:
push:
tags:
- '[0-9]*.[0-9]*.[0-9]*'
jobs:
release:
runs-on: macos-latest
permissions:
contents: write
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Set up Go
uses: actions/setup-go@v5
with:
go-version: '1.21'
- name: Create release directory
run: mkdir -p release
- name: Import Apple certificate
uses: apple-actions/import-codesign-certs@v2
with:
p12-file-base64: ${{ secrets.APPLE_DEVELOPER_ID_CERT }}
p12-password: ${{ secrets.APPLE_DEVELOPER_ID_PASSWORD }}
- name: Build for macOS
run: |
GOOS=darwin GOARCH=amd64 go build -ldflags "-X main.version=${GITHUB_REF_NAME}" -o release/asc-darwin-amd64 .
GOOS=darwin GOARCH=arm64 go build -ldflags "-X main.version=${GITHUB_REF_NAME}" -o release/asc-darwin-arm64 .
- name: Code sign macOS binaries
if: env.APPLE_DEVELOPER_ID != ''
run: |
for binary in release/asc-darwin-*; do
codesign --force --sign "${{ secrets.APPLE_DEVELOPER_ID }}" --timestamp --options=runtime "$binary"
done
env:
APPLE_DEVELOPER_ID: ${{ secrets.APPLE_DEVELOPER_ID }}
- name: Build for Linux
run: |
GOOS=linux GOARCH=amd64 go build -o release/asc-linux-amd64 .
GOOS=linux GOARCH=arm64 go build -o release/asc-linux-arm64 .
- name: Build for Windows
run: |
GOOS=windows GOARCH=amd64 go build -o release/asc-windows-amd64.exe .
- name: Create checksums
run: |
cd release
shasum -a 256 * > checksums.txt
- name: Display files
run: ls -la release/
- name: Create GitHub Release
uses: softprops/action-gh-release@v2
with:
files: release/**
generate_release_notes: true
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}