Files
vantage/.gitea/workflows/agent-release.yml
T

102 lines
3.5 KiB
YAML

name: Agent Release
on:
push:
tags:
- "agent/v*"
jobs:
build:
runs-on: ubuntu-docker
container: node:26
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Set up Go
uses: actions/setup-go@v5
with:
go-version: "1.26"
cache: true
cache-dependency-path: agent/go.sum
- name: Extract version
id: version
run: echo "VERSION=${GITHUB_REF_NAME#agent/}" >> $GITHUB_OUTPUT
- name: Build
working-directory: agent
env:
VERSION: ${{ steps.version.outputs.VERSION }}
run: |
mkdir -p dist
GOOS=linux GOARCH=amd64 go build \
-ldflags="-s -w -X main.Version=${VERSION}" \
-o dist/vantage-agent-linux-amd64 ./cmd
GOOS=linux GOARCH=arm64 go build \
-ldflags="-s -w -X main.Version=${VERSION}" \
-o dist/vantage-agent-linux-arm64 ./cmd
GOOS=windows GOARCH=amd64 go build \
-ldflags="-s -w -X main.Version=${VERSION}" \
-o dist/vantage-agent-windows-amd64.exe ./cmd
- name: Checksums
working-directory: agent/dist
run: sha256sum vantage-agent-linux-amd64 vantage-agent-linux-arm64 vantage-agent-windows-amd64.exe > checksums.txt
- name: Create release
uses: https://gitea.com/actions/gitea-release-action@v1
with:
token: ${{ secrets.RELEASE_TOKEN }}
files: |
agent/dist/vantage-agent-linux-amd64
agent/dist/vantage-agent-linux-arm64
agent/dist/vantage-agent-windows-amd64.exe
agent/dist/checksums.txt
msi:
needs: build
runs-on: ubuntu-docker
container: mcr.microsoft.com/dotnet/sdk:9.0
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Set up Go
uses: actions/setup-go@v5
with:
go-version: "1.26"
cache: true
cache-dependency-path: agent/go.sum
- name: Build agent exe
working-directory: agent
run: |
GOOS=windows GOARCH=amd64 go build \
-o ../installer/vantage-agent-windows-amd64.exe ./cmd
- name: Fetch nssm
working-directory: installer
run: |
apt-get update && apt-get install -y unzip curl
curl -fsSL -o nssm.zip https://nssm.cc/release/nssm-2.24.zip
unzip -j nssm.zip 'nssm-2.24/win64/nssm.exe' -d .
- name: Install WiX
run: dotnet tool install --global wix --version 5.*
- name: Build MSI
working-directory: installer
run: |
export PATH="$PATH:/root/.dotnet/tools"
wix build vantage-agent.wxs -o vantage-agent.msi
sha256sum vantage-agent.msi > checksums-msi.txt
- name: Attach MSI to release
uses: https://gitea.com/actions/gitea-release-action@v1
with:
token: ${{ secrets.RELEASE_TOKEN }}
files: |
installer/vantage-agent.msi
installer/checksums-msi.txt