I am new to pipelines and runners. I want to simply build my python code after a pull-request or when I want. But my build script is in another repository. I don't know how to get this file. On my local machine, I simply do, from my current repository:
../tools/build.sh
I created a Windows-64 Workspace runner in the bitbucket interface, and then copy-pasted the 3 lines to download and start it on my local machine:
Expand-Archive .\atlassian-bitbucket-pipelines-runner.zip
cd .\atlassian-bitbucket-pipelines-runner\bin
.\start.ps1 -accountUuid '<ACCOUNT_ID>' -runnerUuid '<etc.>
Then my runner is working.
[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".
...
But I can't get into a bash prompt. Where are my source files located? I imagine in '.'
. But do I have other repos accessible in a Workspace
runner, or should I git clone
them to have access to the files?
Bonus question: how do I debug this, without having to change my bitbucket-pipelines.yml
file online and send my request through bitbucket online UI, for a very painful debugging? I would like to enter my runner locally on a bash, like in a Docker container, and see the filesystem, start my build, etc.
Note that on an Ubuntu self-hosted runner, I manage to enter the docker container (Windows runners are not docker containers if I understood well), but I can't find any source code:
root@623d8692a688:/opt/atlassian/pipelines/runner# ls
bin docker entrypoint.sh README.md target
and I see no repository in my filesystem...
Thanks a lot for any help or hint!
Hi @PJ127
Welcome to the community.
In order to run scripts from another repository in Pipelines Windows Runners, you can clone the specific repository and run the scripts.
To debug Windows runners, you'll need to access the runners directory from where you installed the runner and access the file called "runner.log".
You can also refer to this existing documentation on Troubleshooting runners.
Regards,
Mark C
Thank you for your answer. That very morning I managed to find the solution (thanks for confirming the git clone step).
As for the debugging or runners, I didn't make myself clear: I want to enter the shell and test commands, not debug afterwards. I found a way.
I added a `sleep` step at the beginning of `script`:
pipelines:
default:
- step:
runs-on:
- self.hosted
- windows
script:
- sleep 6000
Then I click on Run pipeline
from the bitbucket interface. Finally, in a second Powershell (the first one is executing the runner, see my question), I can peacefully navigate in the filesystem, not yet deleted:
d:
cd dev/atlassian-bitbucket-pipelines-runner/temp/cf337094-48aa-5bd5-98a4-bf0712e387bf/1717479636626/build
ls
git clone ...
<testing other commands>
See my StackOverflow answer for more details.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.