ZeroBot-Plugin/.github/workflows/release.yml
2021-03-13 18:59:21 +08:00

60 lines
1.6 KiB
YAML

name: Compile ZeroBot-Plugin
on:
push:
branches:
- master
release:
types:
- created
env:
GITHUB_TOKEN: ${{ github.token }}
jobs:
my-job:
name: Build ZeroBot-Plugin 🚀
runs-on: ubuntu-latest
steps:
- name: Set up Go
uses: actions/setup-go@v2
with:
go-version: 1.15
- name: Check out code into the Go module directory
uses: actions/checkout@v2
- name: Cache Go
id: cache
uses: actions/cache@v2
with:
# A list of files, directories, and wildcard patterns to cache and restore
path: ~/go/pkg/mod
key: ${{ runner.os }}-build-${{ hashFiles('**/go.sum') }}
- name: Tidy Go modules
run: go mod tidy
- name: Build windows
run: export GOOS=windows; export GOARCH=amd64; export CGO_ENABLED=1; go build -ldflags="-s -w -extldflags '-static'" -o artifacts/ZeroBot-Plugin-linux
- name: Upload Build Artifact
uses: actions/upload-artifact@v2
with:
# Artifact name
name: ZeroBot-Plugin
# A file, directory or wildcard pattern that describes what to upload
path: ./artifacts
- name: Gets latest created release info
id: latest_release_info
uses: jossef/action-latest-release-info@v1.1.0
- name: Upload asset to github release page
id: upload-release-asset
uses: actions/upload-release-asset@v1
with:
upload_url: ${{ steps.latest_release_info.outputs.upload_url }}
asset_path: ./artifacts/ZeroBot-Plugin-windows.exe
asset_name: ZeroBot-Plugin-windows.exe
asset_content_type: application/zip