Create
cancel
Showing results for 
Search instead for 
Did you mean: 
Sign up Log in
Celebration

Earn badges and make progress

You're on your way to the next level! Join the Kudos program to earn points and save your progress.

Deleted user Avatar
Deleted user

Level 1: Seed

25 / 150 points

Next: Root

Avatar

1 badge earned

Collect

Participate in fun challenges

Challenges come and go, but your rewards stay with you. Do more to earn more!

Challenges
Coins

Gift kudos to your peers

What goes around comes around! Share the love by gifting kudos to your peers.

Recognition
Ribbon

Rise up in the ranks

Keep earning points to reach the top of the leaderboard. It resets every quarter so you always have a chance!

Leaderboard

Podman and Bitbucket self-hosted runner

Hi, is it possible to use bitbucket self-hosted runners using podman? Thanks

3 answers

1 accepted

0 votes
Answer accepted
Theodora Boudale
Atlassian Team
Atlassian Team members are employees working across the company in a wide variety of roles.
Oct 28, 2022

Hi Felix,

We offer two different types of Runners for Linux:

The Docker ones require Docker to run, however, the Shell ones do not, and they use Bash to run the pipelines steps on your machine.

I am not familiar with Podman, but if it's a tool you can use from Bash, you can look into our Linux Shell Runners.

Kind regards,
Theodora

perfect, we'll try with the shell runners

Like Theodora Boudale likes this

Did you have any luck with this @Felix Schendel ?  Looking to do the same.

Yes, we went with the shell runners. They have some limitations (mentioned in the link) but those were fine for us.

It is now possible to pass the podman socket to the runner. Within RHEL i enabled the socket using:

systemctl enable --now podman.socket

However the runner itself attempts to parse the version string out of the API and is doing some kind of string regex or manipulation which fails, as shown in the stack trace below:

Exception in thread "main" java.lang.NumberFormatException: For input string: "4."
at java.base/java.lang.NumberFormatException.forInputString(Unknown Source)
at java.base/java.lang.Integer.parseInt(Unknown Source)
at java.base/java.lang.Integer.parseInt(Unknown Source)
at com.atlassian.pipelines.runner.core.runtime.linux.docker.LinuxDockerRuntimeSetup.lambda$verifyDockerRequirements$2(LinuxDockerRuntimeSetup.java:91)

I do not know if it is possible to fake the version response out of podman, but certainly we are way into unsupported territory.

Wouter Bunthof
I'm New Here
I'm New Here
Those new to the Atlassian Community have posted less than three times. Give them a warm welcome!
Dec 19, 2023

I've got a similar issue, but my error is 

Exception in thread "main" java.lang.NumberFormatException: For input string: "3."

 However I'm also running V3 podman.

Version: 3.0.1

Did you find any solution?

In our case we can't install docker on the host so if podman is not supported it makes no sense to use pipelines unfortunately.

To further describe the issue: it seems docker image "docker-public.packages.atlassian.com/sox/atlassian/bitbucket-pipelines-runner" relies on the docker daemon. We tried to mount the podman socket instead of the docker one but it was still complaining with sth like:


connect(..) failed: Connection refused: /var/run/docker.sock

Any ideas welcome! Hope someone has successfully used self-hosted runners using podman.

Suggest an answer

Log in or Sign up to answer
DEPLOYMENT TYPE
CLOUD
PERMISSIONS LEVEL
Site Admin
TAGS
AUG Leaders

Atlassian Community Events