50 lines
1.7 KiB
YAML
50 lines
1.7 KiB
YAML
kind: pipeline
|
|
type: docker
|
|
name: release
|
|
|
|
trigger:
|
|
event:
|
|
- tag
|
|
ref:
|
|
include:
|
|
- refs/tags/v*
|
|
|
|
steps:
|
|
- name: build
|
|
image: golang:1.26
|
|
environment:
|
|
CGO_ENABLED: "0"
|
|
commands:
|
|
- mkdir -p dist/linux-amd64 dist/darwin-arm64 dist/windows-amd64
|
|
- GOOS=linux GOARCH=amd64 go build -trimpath -ldflags "-s -w -X gitea.epss.net.cn/klesh/ss/internal/cli.Version=${DRONE_TAG}" -o dist/linux-amd64/ssm ./cmd/ssm
|
|
- GOOS=darwin GOARCH=arm64 go build -trimpath -ldflags "-s -w -X gitea.epss.net.cn/klesh/ss/internal/cli.Version=${DRONE_TAG}" -o dist/darwin-arm64/ssm ./cmd/ssm
|
|
- GOOS=windows GOARCH=amd64 go build -trimpath -ldflags "-s -w -X gitea.epss.net.cn/klesh/ss/internal/cli.Version=${DRONE_TAG}" -o dist/windows-amd64/ssm.exe ./cmd/ssm
|
|
|
|
- name: package
|
|
image: golang:1.26
|
|
commands:
|
|
- apt-get update -qq && apt-get install -qq -y zip > /dev/null
|
|
- cd dist
|
|
- tar -C linux-amd64 -czf ssm-${DRONE_TAG}-linux-amd64.tar.gz ssm
|
|
- tar -C darwin-arm64 -czf ssm-${DRONE_TAG}-darwin-arm64.tar.gz ssm
|
|
- (cd windows-amd64 && zip -q ../ssm-${DRONE_TAG}-windows-amd64.zip ssm.exe)
|
|
- sha256sum ssm-${DRONE_TAG}-linux-amd64.tar.gz ssm-${DRONE_TAG}-darwin-arm64.tar.gz ssm-${DRONE_TAG}-windows-amd64.zip > checksums.txt
|
|
- rm -rf linux-amd64 darwin-arm64 windows-amd64
|
|
- ls -la
|
|
depends_on:
|
|
- build
|
|
|
|
- name: gitea-release
|
|
image: plugins/gitea-release
|
|
settings:
|
|
base_url: https://gitea.epss.net.cn
|
|
api_key:
|
|
from_secret: drone_release
|
|
files:
|
|
- dist/*
|
|
title: ${DRONE_TAG}
|
|
checksum:
|
|
- sha256
|
|
depends_on:
|
|
- package
|