为了账号安全,请及时绑定邮箱和手机立即绑定

如何使用适用于 Windows 的 GitLab 管道进行构建

如何使用适用于 Windows 的 GitLab 管道进行构建

Go
MMMHUHU 2023-06-26 16:42:46
我有以下 .gitlab-ci.yml...stages:  - test  - build  - artimage: golang:1.9.2variables:  BIN_NAME: example  ARTIFACTS_DIR: artifacts  GO_PROJECT: example  GOPATH: /gobefore_script:  - mkdir -p ${GOPATH}/src/${GO_PROJECT}  - mkdir -p ${CI_PROJECT_DIR}/${ARTIFACTS_DIR}  - go get -u github.com/golang/dep/cmd/dep  - cp -r ${CI_PROJECT_DIR}/* ${GOPATH}/src/${GO_PROJECT}/  - cd ${GOPATH}/src/${GO_PROJECT}test:  stage: test  script:    # Run all tests    go test -run ''build:  stage: build  script:    # Compile and name the binary as `hello`    - go build -o hello    - pwd    - ls -l hello    # Execute the binary    - ./hello    # Move to gitlab build directory    - mv ./hello ${CI_PROJECT_DIR}  artifacts:    paths:    - ./hello这对于 Linux 来说非常有效,但我现在需要做同样的事情,以便它构建一个 Windows 可执行文件。然后我计划运行预定的脚本来下载工件。另一个选择是我在 Windows 服务器上运行虚拟 Linux 服务器并使用它来运行我的 go 二进制文件。我知道我需要将图像更改为 Windows,但无法在网上找到合适的图像(为 golang 配置的图像)。或者是否可以让这个 docker 镜像构建一个 windows exe?
查看完整描述

1 回答

?
犯罪嫌疑人X

TA贡献2080条经验 获得超4个赞

这不是一个gitlab问题,而是一个go问题。

从 Go 1.5 版本开始,交叉编译变得非常容易。

GOOS=windows GOARCH=386 go build -o hello.exe hello.go

您现在可以在 Windows 计算机上运行 hello.exe


查看完整回答
反对 回复 2023-06-26
  • 1 回答
  • 0 关注
  • 103 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信