All checks were successful
Release / Build & publish (push) Successful in 1m26s
49 lines
1.3 KiB
YAML
49 lines
1.3 KiB
YAML
name: Release
|
|
|
|
on:
|
|
push:
|
|
tags:
|
|
- "v*"
|
|
|
|
jobs:
|
|
release:
|
|
name: Build & publish
|
|
runs-on: Linux-Runner
|
|
timeout-minutes: 10
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
|
|
- name: Set up Go
|
|
uses: actions/setup-go@v5
|
|
with:
|
|
go-version: '1.22'
|
|
|
|
- name: Set up Node.js
|
|
uses: actions/setup-node@v4
|
|
with:
|
|
node-version: '20'
|
|
|
|
- name: Cross-compile
|
|
shell: bash
|
|
run: |
|
|
mkdir -p dist
|
|
CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build -ldflags "-s -w" -o "dist/judge-linux-amd64" ./cmd/cli
|
|
CGO_ENABLED=0 GOOS=windows GOARCH=amd64 go build -ldflags "-s -w" -o "dist/judge-windows-amd64.exe" ./cmd/cli
|
|
|
|
- name: Build VS Code extension
|
|
shell: bash
|
|
run: |
|
|
npm install -g @vscode/vsce
|
|
cd editor/vscode-jdg
|
|
vsce package -o "../../dist/jdg-language-${{ github.ref_name }}.vsix"
|
|
|
|
- name: Create release
|
|
uses: https://gitea.com/actions/gitea-release-action@main
|
|
with:
|
|
files: |-
|
|
dist/judge-linux-amd64
|
|
dist/judge-windows-amd64.exe
|
|
dist/jdg-language-${{ github.ref_name }}.vsix
|
|
api_key: ${{ secrets.RELEASE_TOKEN }}
|
|
title: ${{ github.ref_name }}
|