open-beta-for-linux-shell-runners-in-bitbucket-pipelines
Asked by Luis Plaza:

Hi!

i have followed the instructions to run a linux shell runner inside a Fedora toolbox with sudo but when I execute the pipeline I get this error. Executing the same pipeline in Cloud without "runs-on: linux.shell" does not give any error

```
############### pipeline log ###############?


+ COMMIT_MESSAGE=`git log --format=%B -n 1 $BITBUCKET_COMMIT`

+ echo $COMMIT_MESSAGE
https://bitbucket.org/*****/*****.bitbucket.io/src/ceadf3eef179b28f0866afe2b06f5dd953bd0087/bitbucket-pipelines.yml edited online with Bitbucket

+ git add *

+ git commit -m "[skip ci] $COMMIT_MESSAGE"
[master a7b6c0e] [skip ci] https://bitbucket.org/*****/*****.bitbucket.io/src/ceadf3eef179b28f0866afe2b06f5dd953bd0087/bitbucket-pipelines.yml edited online with Bitbucket
14 files changed, 18 insertions(+), 18 deletions(-)
rename assets/js/{app.3f245bd5.js => app.2868e4dd.js} (71%)
rename assets/js/{page--node-modules--gridsome--app--pages--404-vue.a707283e.js => page--node-modules--gridsome--app--pages--404-vue.33767589.js} (100%)
rename assets/js/{page--src--pages--index-vue.dec68bcf.js => page--src--pages--index-vue.abc7fc82.js} (100%)
rename assets/js/{page--src--templates--doc-vue.15ab01ca.js => page--src--templates--doc-vue.cbc82f0e.js} (100%)

+ git push --force
fatal: could not read Username for 'https://bitbucket.org': No such device or address
Skipping cache upload for failed step
Searching for files matching artifact pattern dev/dist/**

Searching for files matching artifact pattern reports/*.txt

Searching for test report files in directories named [test-reports, TestResults, test-results, surefire-reports, failsafe-reports] down to a depth of 4
Finished scanning for test reports. Found 0 test report files.
Merged test suites, total number tests is 0, with 0 failures and 0 errors.
```

```
############### runner console log ###############?

[2022-08-20 10:56:43,248] Updating runner state to "ONLINE".
[2022-08-20 10:57:13,248] Updating runner state to "ONLINE".
[2022-08-20 10:57:21,863] Setting runner state to executing step.
[2022-08-20 10:57:21,869] Getting step StepId{accountUuid={675f07d4-4e09-4b47-a1b8-57db8749bc14}, repositoryUuid={579eace5-e767-4cff-869b-92960c547af0}, pipelineUuid={eb3f7559-2ea2-412b-a502-d73fc3b6f5fe}, stepUuid={be94b5de-8329-4866-80f8-aa08eb9cb07e}}.
[2022-08-20 10:57:21,871] Getting oauth token for step.
[2022-08-20 10:57:21,874] Getting environment variables for step.
[2022-08-20 10:57:22,343] Getting all artifacts for step.
[2022-08-20 10:57:22,347] Getting SSH private key.
[2022-08-20 10:57:22,349] Getting known hosts.
[2022-08-20 10:57:22,593] Setting up directories.
[2022-08-20 10:57:22,596] Starting log uploader.
[2022-08-20 10:57:22,598] Setting up step timeout: PT2H
[2022-08-20 10:57:22,599] Starting websocket listening to STEP_COMPLETED events.
[2022-08-20 10:57:22,600] Checking for step completion every PT30S seconds.
[2022-08-20 10:57:22,864] Updating step progress to CLONING.
[2022-08-20 10:57:23,299] Generating clone script.
[2022-08-20 10:57:23,302] Adding log file: /opt/atlassian-bitbucket-pipelines-runner/bin/../temp/c6e40ebc-52b2-5cfe-98d6-5637703ac6d5/tmp/clone3378810082693487482.log
[2022-08-20 10:57:23,303] Executing clone script.
[2022-08-20 10:57:23,599] Appending log line to main log.
[2022-08-20 10:57:26,237] Script exited with exit code: 0
[2022-08-20 10:57:26,238] Not downloading artifacts. (artifactsDownloadEnabled: true, numberOfArtifacts: 0)
[2022-08-20 10:57:26,238] Updating step progress to DOWNLOADING_CACHES.
[2022-08-20 10:57:26,537] Getting content uri for cache.
[2022-08-20 10:57:26,603] Appending log line to main log.
[2022-08-20 10:57:26,848] Cache not found.
[2022-08-20 10:57:26,849] Updating step progress to BUILDING.
[2022-08-20 10:57:27,128] Generating build script.
[2022-08-20 10:57:27,136] Adding log file: /opt/atlassian-bitbucket-pipelines-runner/bin/../temp/c6e40ebc-52b2-5cfe-98d6-5637703ac6d5/tmp/build636216867360966679.log
[2022-08-20 10:57:27,137] Executing build script in native script.
[2022-08-20 10:57:27,600] Appending log line to main log.
[2022-08-20 10:57:29,599] Appending log line to main log.
[2022-08-20 10:57:30,599] Appending log line to main log.
[2022-08-20 10:57:31,599] Appending log line to main log.
[2022-08-20 10:57:32,599] Appending log line to main log.
[2022-08-20 10:57:38,601] Appending log line to main log.
[2022-08-20 10:57:39,609] Appending log line to main log.
[2022-08-20 10:57:43,248] Updating runner state to "ONLINE".
[2022-08-20 10:58:13,249] Updating runner state to "ONLINE".
[2022-08-20 10:58:15,601] Appending log line to main log.
```

Kind regards,

Luis


Answers:
author: Syahrul
body: Hey [@Luis Plaza](/t5/user/viewprofilepage/user-id/1289723)

G'day.

The error indicated that git was unable to resolve the username to Bitbucket.org. So you need to manually configure git by adding the following steps to tell git config to authenticate with your username and [App Password](https://support.atlassian.com/bitbucket-cloud/docs/app-passwords/)

```
`git remote set-url origin https://<your username>:${APP_SECRET}@bitbucket.org/${BITBUCKET_REPO_OWNER}/${BITBUCKET_REPO_SLUG}`
```

With that said, I believe your build succeeded when the runner was removed because of the Linux Shell runner limitation with SSH. The Bitbucket pipeline cloud works because it's configured to use the pipeline SSH.

However, as mentioned on our page [here,](https://support.atlassian.com/bitbucket-cloud/docs/set-up-runners-for-linux-shell/) there's a limitation with the Bitbucket pipelines SSH key. It won't use your pipeline SSH configuration, which caused the issue.

As suggested above, the workaround is to use HTTPS to push back and authenticate through App Password.

Cheers,  
Syahrul


Tags: bitbucket-cloud

cloud

linux

shell