我有以下 .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 來說非常有效,但我現(xiàn)在需要做同樣的事情,以便它構建一個 Windows 可執(zhí)行文件。然后我計劃運行預定的腳本來下載工件。另一個選擇是我在 Windows 服務器上運行虛擬 Linux 服務器并使用它來運行我的 go 二進制文件。我知道我需要將圖像更改為 Windows,但無法在網(wǎng)上找到合適的圖像(為 golang 配置的圖像)?;蛘呤欠窨梢宰屵@個 docker 鏡像構建一個 windows exe?
1 回答

犯罪嫌疑人X
TA貢獻2080條經(jīng)驗 獲得超4個贊
這不是一個gitlab問題,而是一個go問題。
從 Go 1.5 版本開始,交叉編譯變得非常容易。
GOOS=windows GOARCH=386 go build -o hello.exe hello.go
您現(xiàn)在可以在 Windows 計算機上運行 hello.exe
- 1 回答
- 0 關注
- 131 瀏覽
添加回答
舉報
0/150
提交
取消