* feat(release): add guarded prerelease and stable pipeline * feat(release): add guided dws-release entry (cherry picked from commit f7fa7b78f325f3574f0487862fc3e65bba5cdc96)
71 lines
1.6 KiB
YAML
71 lines
1.6 KiB
YAML
# GoReleaser configuration for dws
|
|
# Docs: https://goreleaser.com
|
|
#
|
|
# To release, use scripts/release/release.sh. It seals main, validates the
|
|
# CHANGELOG and packages, then pushes the annotated tag for CI/CD to publish.
|
|
#
|
|
# To test locally (no publish):
|
|
# goreleaser release --snapshot --clean
|
|
|
|
version: 2
|
|
|
|
builds:
|
|
- main: ./cmd
|
|
binary: dws
|
|
env:
|
|
- CGO_ENABLED=0
|
|
flags:
|
|
- -buildmode=pie
|
|
- -trimpath
|
|
ldflags:
|
|
- -s -w
|
|
- -X github.com/DingTalk-Real-AI/dingtalk-workspace-cli/internal/app.version=v{{.Version}}
|
|
- -X github.com/DingTalk-Real-AI/dingtalk-workspace-cli/internal/app.gitCommit={{.ShortCommit}}
|
|
- -X github.com/DingTalk-Real-AI/dingtalk-workspace-cli/internal/app.buildTime={{.Date}}
|
|
goos:
|
|
- darwin
|
|
- linux
|
|
- windows
|
|
goarch:
|
|
- amd64
|
|
- arm64
|
|
|
|
archives:
|
|
- formats:
|
|
- tar.gz
|
|
name_template: "dws-{{ .Os }}-{{ .Arch }}"
|
|
format_overrides:
|
|
- goos: windows
|
|
formats:
|
|
- zip
|
|
files:
|
|
- LICENSE
|
|
- NOTICE
|
|
- README.md
|
|
- CHANGELOG.md
|
|
|
|
checksum:
|
|
name_template: "checksums.txt"
|
|
algorithm: sha256
|
|
|
|
changelog:
|
|
sort: asc
|
|
filters:
|
|
exclude:
|
|
- "^docs:"
|
|
- "^test:"
|
|
- "^ci:"
|
|
- "^chore:"
|
|
|
|
release:
|
|
github:
|
|
# 用当前运行 CI 的仓库 owner: fork CI 发到 fork, 官方 CI 发到官方, 两边都对
|
|
owner: "{{ .Env.GITHUB_REPOSITORY_OWNER }}"
|
|
name: dingtalk-workspace-cli
|
|
# Keep the release private until post-processing has replaced the Darwin
|
|
# archives and verified every finalized asset digest.
|
|
draft: true
|
|
prerelease: auto
|
|
name_template: "v{{.Version}}"
|
|
mode: replace
|