2021-05-22 16:12:26 -07:00
|
|
|
name: Release
|
|
|
|
|
|
|
|
on:
|
|
|
|
push:
|
|
|
|
tags:
|
|
|
|
- 'v*'
|
|
|
|
|
|
|
|
jobs:
|
|
|
|
build:
|
|
|
|
name: Release
|
|
|
|
runs-on: ubuntu-latest
|
|
|
|
steps:
|
|
|
|
|
|
|
|
- name: Set up Go 1.x
|
|
|
|
uses: actions/setup-go@v2
|
|
|
|
with:
|
2023-08-09 20:33:17 -07:00
|
|
|
go-version: ^1.21
|
2021-05-22 16:12:26 -07:00
|
|
|
|
|
|
|
- name: Check out code into the Go module directory
|
|
|
|
uses: actions/checkout@v1
|
|
|
|
with:
|
|
|
|
fetch-depth: 0
|
|
|
|
|
|
|
|
- name: Install fpm
|
|
|
|
run: |
|
|
|
|
sudo apt-get update
|
|
|
|
sudo apt-get install -y rpm ruby ruby-dev
|
|
|
|
sudo gem install fpm
|
|
|
|
|
|
|
|
- name: Build
|
|
|
|
run: |
|
|
|
|
export VERSION=$(git describe --tags --abbrev=0 HEAD)
|
|
|
|
GOOS=linux make build
|
|
|
|
GOOS=darwin make build
|
|
|
|
GOOS=windows EXTENSION=.exe make build
|
|
|
|
make package-deb package-rpm
|
2021-06-11 09:57:59 -07:00
|
|
|
ARCH=arm64 GOARCH=arm64 GOOS=linux make build
|
|
|
|
ARCH=arm64 make package-deb package-rpm
|
2021-05-22 16:12:26 -07:00
|
|
|
|
|
|
|
- name: Create Release
|
|
|
|
id: create_release
|
|
|
|
uses: actions/create-release@v1
|
|
|
|
env:
|
|
|
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
|
|
|
with:
|
|
|
|
tag_name: ${{ github.ref }}
|
|
|
|
release_name: Release ${{ github.ref }}
|
|
|
|
draft: false
|
|
|
|
prerelease: false
|
|
|
|
|
|
|
|
- name: Upload Release Asset
|
|
|
|
uses: actions/github-script@v2
|
|
|
|
with:
|
|
|
|
github-token: ${{secrets.GITHUB_TOKEN}}
|
|
|
|
script: |
|
|
|
|
const fs = require('fs').promises;
|
|
|
|
const upload_url = '${{ steps.create_release.outputs.upload_url }}';
|
|
|
|
for (let file of await fs.readdir('./dist')) {
|
|
|
|
console.log('uploading', file);
|
|
|
|
await github.repos.uploadReleaseAsset({
|
|
|
|
url: upload_url,
|
|
|
|
name: file,
|
|
|
|
data: await fs.readFile(`./dist/${file}`)
|
|
|
|
});
|
|
|
|
}
|
|
|
|
|