mirror of
https://github.com/fumiama/WireGold.git
synced 2026-06-04 23:40:26 +08:00
feat: add version tag
This commit is contained in:
71
.github/workflows/release.yml
vendored
71
.github/workflows/release.yml
vendored
@@ -6,52 +6,69 @@ on:
|
|||||||
|
|
||||||
env:
|
env:
|
||||||
GITHUB_TOKEN: ${{ github.token }}
|
GITHUB_TOKEN: ${{ github.token }}
|
||||||
|
CGO_ENABLED: 0
|
||||||
|
LDFLAGS: -s -w -checklinkname=0
|
||||||
|
VERSION_PKG: github.com/fumiama/WireGold/config
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
my-job:
|
build:
|
||||||
name: Build WireGold on Push Tag 🚀
|
name: Build ${{ matrix.name }}
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
include:
|
||||||
|
- { name: linux-x64, goos: linux, goarch: amd64 }
|
||||||
|
- { name: linux-x86, goos: linux, goarch: "386" }
|
||||||
|
- { name: windows-x64, goos: windows, goarch: amd64, ext: .exe }
|
||||||
|
- { name: windows-x86, goos: windows, goarch: "386", ext: .exe }
|
||||||
|
- { name: linux-arm64, goos: linux, goarch: arm64, goarm: "7" }
|
||||||
|
- { name: linux-armv6, goos: linux, goarch: arm, goarm: "6" }
|
||||||
|
- { name: linux-mips, goos: linux, goarch: mips }
|
||||||
|
- { name: linux-mips-softfloat, goos: linux, goarch: mips, gomips: softfloat }
|
||||||
|
- { name: linux-mipsel, goos: linux, goarch: mipsle }
|
||||||
|
- { name: linux-mipsel-softfloat, goos: linux, goarch: mipsle, gomips: softfloat }
|
||||||
|
env:
|
||||||
|
GOOS: ${{ matrix.goos }}
|
||||||
|
GOARCH: ${{ matrix.goarch }}
|
||||||
|
GOARM: ${{ matrix.goarm }}
|
||||||
|
GOMIPS: ${{ matrix.gomips }}
|
||||||
steps:
|
steps:
|
||||||
|
|
||||||
- name: Set up Go
|
- name: Set up Go
|
||||||
uses: actions/setup-go@master
|
uses: actions/setup-go@master
|
||||||
with:
|
with:
|
||||||
go-version: ^1.25
|
go-version: ^1.25
|
||||||
|
|
||||||
- name: Check out code into the Go module directory
|
- name: Check out code
|
||||||
uses: actions/checkout@master
|
uses: actions/checkout@master
|
||||||
|
|
||||||
- name: Cache Go
|
- name: Cache Go
|
||||||
id: cache
|
|
||||||
uses: actions/cache@v4
|
uses: actions/cache@v4
|
||||||
with:
|
with:
|
||||||
# A list of files, directories, and wildcard patterns to cache and restore
|
|
||||||
path: ~/go/pkg/mod
|
path: ~/go/pkg/mod
|
||||||
key: ${{ runner.os }}-build-${{ hashFiles('**/go.sum') }}
|
key: ${{ runner.os }}-build-${{ hashFiles('**/go.sum') }}
|
||||||
|
|
||||||
- name: Tidy Go modules
|
- name: Tidy Go modules
|
||||||
run: go mod tidy
|
run: go mod tidy
|
||||||
|
|
||||||
- name: Build linux-x64
|
- name: Build
|
||||||
run: CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build -ldflags="-s -w -checklinkname=0" -o artifacts/wg-linux-x64 -trimpath
|
run: go build -ldflags="${LDFLAGS} -X ${VERSION_PKG}.Version=${GITHUB_REF_NAME#v}" -o wg-${{ matrix.name }}${{ matrix.ext }} -trimpath
|
||||||
- name: Build linux-x86
|
|
||||||
run: CGO_ENABLED=0 GOOS=linux GOARCH=386 go build -ldflags="-s -w -checklinkname=0" -o artifacts/wg-linux-x86 -trimpath
|
- name: Upload artifact
|
||||||
- name: Build windows-x64
|
uses: actions/upload-artifact@v4
|
||||||
run: CGO_ENABLED=0 GOOS=windows GOARCH=amd64 go build -ldflags="-s -w -checklinkname=0" -o artifacts/wg-windows-x64.exe -trimpath
|
with:
|
||||||
- name: Build windows-x86
|
name: wg-${{ matrix.name }}
|
||||||
run: CGO_ENABLED=0 GOOS=windows GOARCH=386 go build -ldflags="-s -w -checklinkname=0" -o artifacts/wg-windows-x86.exe -trimpath
|
path: wg-${{ matrix.name }}${{ matrix.ext }}
|
||||||
- name: Build arm64
|
|
||||||
run: CGO_ENABLED=0 GOOS=linux GOARCH=arm64 GOARM=7 go build -ldflags="-s -w -checklinkname=0" -o artifacts/wg-linux-arm64 -trimpath
|
release:
|
||||||
- name: Build armv6
|
name: Upload Release 🚀
|
||||||
run: CGO_ENABLED=0 GOOS=linux GOARCH=arm GOARM=6 go build -ldflags="-s -w -checklinkname=0" -o artifacts/wg-linux-armv6 -trimpath
|
needs: build
|
||||||
- name: Build mips
|
runs-on: ubuntu-latest
|
||||||
run: CGO_ENABLED=0 GOOS=linux GOARCH=mips go build -ldflags="-s -w -checklinkname=0" -o artifacts/wg-linux-mips -trimpath
|
steps:
|
||||||
- name: Build mips-softfloat
|
- name: Download artifacts
|
||||||
run: CGO_ENABLED=0 GOOS=linux GOARCH=mips GOMIPS=softfloat go build -ldflags="-s -w -checklinkname=0" -o artifacts/wg-linux-mips-softfloat -trimpath
|
uses: actions/download-artifact@v4
|
||||||
- name: Build mipsel
|
with:
|
||||||
run: CGO_ENABLED=0 GOOS=linux GOARCH=mipsle go build -ldflags="-s -w -checklinkname=0" -o artifacts/wg-linux-mipsel -trimpath
|
path: artifacts
|
||||||
- name: Build mipsel-softfloat
|
merge-multiple: true
|
||||||
run: CGO_ENABLED=0 GOOS=linux GOARCH=mipsle GOMIPS=softfloat go build -ldflags="-s -w -checklinkname=0" -o artifacts/wg-linux-mipsel-softfloat -trimpath
|
|
||||||
|
|
||||||
- name: Upload binaries to release
|
- name: Upload binaries to release
|
||||||
uses: svenstaro/upload-release-action@v2
|
uses: svenstaro/upload-release-action@v2
|
||||||
@@ -60,4 +77,4 @@ jobs:
|
|||||||
file: artifacts/wg-*
|
file: artifacts/wg-*
|
||||||
tag: ${{ github.ref }}
|
tag: ${{ github.ref }}
|
||||||
overwrite: true
|
overwrite: true
|
||||||
file_glob: true
|
file_glob: true
|
||||||
|
|||||||
@@ -1,3 +1,9 @@
|
|||||||
package config
|
package config
|
||||||
|
|
||||||
|
import "time"
|
||||||
|
|
||||||
|
// ShowDebugLog turn on to print verbose logs.
|
||||||
const ShowDebugLog = false
|
const ShowDebugLog = false
|
||||||
|
|
||||||
|
// Version will show in help message to distinguish different builds.
|
||||||
|
var Version = "dev-" + time.Now().Format(time.DateOnly)
|
||||||
|
|||||||
9
main.go
9
main.go
@@ -168,7 +168,14 @@ func main() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func displayHelp(hint string) {
|
func displayHelp(hint string) {
|
||||||
fmt.Println(hint)
|
if hint != "" {
|
||||||
|
fmt.Println(hint)
|
||||||
|
fmt.Println("")
|
||||||
|
}
|
||||||
|
fmt.Println("WireGold Version:", config.Version)
|
||||||
|
fmt.Println("Author: Fumiama Minamoto")
|
||||||
|
fmt.Println("Released with GPL-3.0 license")
|
||||||
|
fmt.Println("")
|
||||||
flag.Usage()
|
flag.Usage()
|
||||||
os.Exit(0)
|
os.Exit(0)
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user