gpt4 book ai didi

go - 如何添加go二进制作为bitbucket管道工件?

转载 作者:行者123 更新时间:2023-12-01 20:27:13 25 4
gpt4 key购买 nike

您好,我正在尝试将管道的输出二进制文件添加到内置工件中。

image: golang:1.13

pipelines:
default:
- step:
script:
- PACKAGE_PATH="${GOPATH}/src/bitbucket.org/${BITBUCKET_REPO_FULL_NAME}"
- mkdir -pv "${PACKAGE_PATH}"
- tar -cO --exclude-vcs --exclude=bitbucket-pipelines.yml . | tar -xv -C "${PACKAGE_PATH}"
- cd "${PACKAGE_PATH}"
- go get -v
- env GOOS=windows GOARCH=amd64 go build
- go build -v
- ls
artifacts:
- fx_update.exe



但是,二进制文件不会出现在工件中:

enter image description here

所以我把这个 ls命令放到那里,看看.exe是否存在,确实是:

enter image description here

有谁知道为什么它没有按照我的意愿去做?

最佳答案

那是因为您在创建工件之前cd到包目录。工件定义是相对于构建目录的,而不是相对于当前工作目录的(有关更多详细信息,请参见本页https://confluence.atlassian.com/bitbucket/using-artifacts-in-steps-935389074.html)。您可以通过将fx_update.exe复制到基本构建目录来解决此问题:

- step:
script:
- PACKAGE_PATH="${GOPATH}/src/bitbucket.org/${BITBUCKET_REPO_FULL_NAME}"
- mkdir -pv "${PACKAGE_PATH}"
- tar -cO --exclude-vcs --exclude=bitbucket-pipelines.yml . | tar -xv -C "${PACKAGE_PATH}"
- cd "${PACKAGE_PATH}"
- go get -v
- env GOOS=windows GOARCH=amd64 go build
- go build -v
- cp fx_update.exe ${BITBUCKET_CLONE_DIR}
artifacts:
- fx_update.exe

关于go - 如何添加go二进制作为bitbucket管道工件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59562743/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com