✨ go build
This commit is contained in:
parent
f8a3ae00a3
commit
3c95e509a0
|
@ -33,3 +33,6 @@ build/
|
|||
.vscode/
|
||||
|
||||
/*.exe
|
||||
/gitlab-go-windows-*
|
||||
/gitlab-go-linux-*
|
||||
/gitlab-go-darwin-*
|
||||
|
|
|
@ -1,6 +1,43 @@
|
|||
stages:
|
||||
- build
|
||||
- sync
|
||||
|
||||
build:golang:1.21:
|
||||
stage: build
|
||||
image: golang:1.21
|
||||
script:
|
||||
- go version
|
||||
- go env -w GOPROXY=https://goproxy.cn,direct
|
||||
- GOOS=windows GOARCH=amd64 go build -v -ldflags "-s -w -buildid=" -trimpath -o gitlab-go-windows-amd64.exe .
|
||||
- GOOS=windows GOARCH=arm64 go build -v -ldflags "-s -w -buildid=" -trimpath -o gitlab-go-windows-arm64.exe .
|
||||
- GOOS=linux GOARCH=amd64 go build -v -ldflags "-s -w -buildid=" -trimpath -o gitlab-go-linux-amd64 .
|
||||
- GOOS=linux GOARCH=arm64 go build -v -ldflags "-s -w -buildid=" -trimpath -o gitlab-go-linux-arm64 .
|
||||
- GOOS=darwin GOARCH=amd64 go build -v -ldflags "-s -w -buildid=" -trimpath -o gitlab-go-darwin-amd64 .
|
||||
- GOOS=darwin GOARCH=arm64 go build -v -ldflags "-s -w -buildid=" -trimpath -o gitlab-go-darwin-arm64 .
|
||||
- ./gitlab-go-linux-amd64 --version
|
||||
- ./gitlab-go-linux-amd64
|
||||
artifacts:
|
||||
name: "${CI_JOB_NAME}"
|
||||
expire_in: 1 week
|
||||
paths:
|
||||
- gitlab-go-linux-*
|
||||
|
||||
build:golang:1.21-alpine3.18:
|
||||
stage: build
|
||||
image: golang:1.21-alpine3.18
|
||||
script:
|
||||
- go version
|
||||
- go env -w GOPROXY=https://goproxy.cn,direct
|
||||
- GOOS=linux GOARCH=amd64 go build -v -ldflags "-s -w -buildid=" -trimpath -o gitlab-go-linux-alpine-amd64 .
|
||||
- GOOS=linux GOARCH=arm64 go build -v -ldflags "-s -w -buildid=" -trimpath -o gitlab-go-linux-alpine-arm64 .
|
||||
- ./gitlab-go-linux-alpine-amd64 --version
|
||||
- ./gitlab-go-linux-alpine-amd64
|
||||
artifacts:
|
||||
name: "${CI_JOB_NAME}"
|
||||
expire_in: 1 week
|
||||
paths:
|
||||
- gitlab-go-linux-*
|
||||
|
||||
# 嵌入
|
||||
include:
|
||||
# 同步代码
|
||||
|
|
38
README.md
38
README.md
|
@ -46,5 +46,41 @@ go test -v
|
|||
### build
|
||||
|
||||
```shell
|
||||
go build main.go
|
||||
go build
|
||||
# GOOS=:设置构建的目标操作系统(darwin | freebsd | linux | windows)
|
||||
# GOARCH=:设置构建的目标操作系统(386 | amd64 | arm | arm64)
|
||||
# -v:打印编译过程中的详细信息
|
||||
# -ldflags:设置在编译时传递给链接器的参数
|
||||
# -trimpath:去掉所有包含 go path 的路径
|
||||
# -o:指定构建后输出的文件名
|
||||
```
|
||||
|
||||
- Windows
|
||||
- amd64
|
||||
```shell
|
||||
GOOS=windows GOARCH=amd64 go build -v -ldflags "-s -w -buildid=" -trimpath -o gitlab-go-windows-amd64.exe .
|
||||
```
|
||||
- arm64
|
||||
```shell
|
||||
GOOS=windows GOARCH=arm64 go build -v -ldflags "-s -w -buildid=" -trimpath -o gitlab-go-windows-arm64.exe .
|
||||
```
|
||||
|
||||
- Linux
|
||||
- amd64
|
||||
```shell
|
||||
GOOS=linux GOARCH=amd64 go build -v -ldflags "-s -w -buildid=" -trimpath -o gitlab-go-linux-amd64 .
|
||||
```
|
||||
- arm64
|
||||
```shell
|
||||
GOOS=linux GOARCH=arm64 go build -v -ldflags "-s -w -buildid=" -trimpath -o gitlab-go-linux-arm64 .
|
||||
```
|
||||
|
||||
- Darwin
|
||||
- amd64
|
||||
```shell
|
||||
GOOS=darwin GOARCH=amd64 go build -v -ldflags "-s -w -buildid=" -trimpath -o gitlab-go-darwin-amd64 .
|
||||
```
|
||||
- arm64
|
||||
```shell
|
||||
GOOS=darwin GOARCH=arm64 go build -v -ldflags "-s -w -buildid=" -trimpath -o gitlab-go-darwin-arm64 .
|
||||
```
|
||||
|
|
Loading…
Reference in New Issue