我是管道和跑步者的新手。 我想在拉取请求之后或在我想要的时候简单地构建我的 python 代码。 但是 我的构建脚本位于另一个存储库中。我不知道如何获取这个文件。 在我的本地计算机上,我只是从当前存储库中执行此操作:
../tools/build.sh
我在 bitbucket 界面中创建了一个 Windows-64 Workspace 运行程序,然后复制粘贴 3 行以下载并在我的本地计算机上启动它:
Expand-Archive .\atlassian-bitbucket-pipelines-runner.zip
cd .\atlassian-bitbucket-pipelines-runner\bin
.\start.ps1 -accountUuid '<ACCOUNT_ID>' -runnerUuid '<etc.>
然后我的跑步者开始工作了。
[2024-05-30 10:03:15,341] Runner version: 2.1.0
[2024-05-30 10:03:20,832] Runner runtime: windows-powershell
[2024-05-30 10:03:20,973] Starting websocket listening to RUNNER_UPDATED events.
[2024-05-30 10:03:21,236] Updating runner status to "ONLINE" and checking for new steps assigned to the runner after 0 seconds and then every 30 seconds.
[2024-05-30 10:03:21,553] Updating runner state to "ONLINE".
[2024-05-30 10:03:51,246] Updating runner state to "ONLINE".
...
但我无法进入 bash 提示符。我的源文件位于哪里?我想象在
.
。但是我是否可以在 Workspace
运行程序中访问其他存储库,或者我应该 git clone
来访问这些文件?
额外问题:如何调试这个,而不必在线更改我的
bitbucket-pipelines.yml
文件并通过 bitbucket 在线 UI 发送我的请求,进行非常痛苦的调试?我想在 bash 上本地输入我的运行程序(例如在 Docker 容器中),然后查看文件系统、启动构建等。
请注意,在 Ubuntu 自托管运行器上,我设法进入了 docker 容器(如果我理解得很好的话,Windows 运行器不是 docker 容器),但我找不到任何源代码:
root@623d8692a688:/opt/atlassian/pipelines/runner# ls
bin docker entrypoint.sh README.md target
我的文件系统中没有看到任何存储库...
非常感谢您的帮助或提示!
我成功地做到了我想要的:
sleep
的开头添加了script
步骤:pipelines:
default:
- step:
runs-on:
- self.hosted
- windows
script:
- sleep 6000
然后我从 bitbucket 界面单击
Run pipeline
。最后,在第二个 Powershell 中(第一个正在执行运行程序,请参阅我的问题),我可以在文件系统中平静地导航,尚未删除:
d:
cd dev/atlassian-bitbucket-pipelines-runner/temp/cf337094-48aa-5bd5-98a4-bf0712e387bf/1717479636626/build
ls
git clone ...
<testing other commands>
script:
- git clone [email protected]:suricog/tools.git ../tools
- sh ../tools/useful_scripts/build.sh -v
- pytest -v