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

Come for the products,
stay for the community

The Atlassian Community can help you and your team get more value out of Atlassian products and practices.

Atlassian Community about banner
4,457,877
Community Members
 
Community Events
176
Community Groups

What's the recommended way of actually getting work done in a self-hosted Bitbucket runner

I can't find any information on how to make self-hosted runners work in a useful way. All examples provided by the documentation pretty much just makes an echo call, and I don't need a self-hosted runner for that. :)

What is the recommended way to expose a compiler and a few additional tools to a self-hosted Linux runner so that it can actually do some build work?

1 answer

1 accepted

1 vote
Answer accepted

Hi @kristoffer

You could do most of all things on your self-hosted runner as on the Bitbucket Pipelines.

You've always been able to execute CI/CD workflows via Bitbucket Pipelines using Atlassian's infrastructure. This is the easiest way to use Bitbucket Pipelines because you don't need to host or manage any servers. Atlassian host it and manage it for you.

But sometimes you need more control of your hardware, software, and the environment your builds are executed into.

For example, you may need builds to access internal systems that are behind the firewall, or configure your hardware with more memory to run complex builds.

So, self-hosted Runners allow you to execute your pipelines builds on your own infrastructure, so you have more control over your server configurations and budgets.

 

More details you could find in the blog.

 

Cheers,
Oleksandr Kyrdan

Thanks for the answer @o_kyrdan , not exactly what I'm looking for though.

You mention:

But sometimes you need more control of your hardware, software, and the environment your builds are executed into.

And this is what I'd like more info and documentation on. What would be the recommended way to more control software in a self-hosted runner?

In the mentioned blog there's only the same (sorry to say) useless example found that seem to always show up when describing what can be done in a self-hosted runner.

echo "This step will run on a self hosted runner with 32 GB of memory.";

Ok, so I can output text, that's neat, but I'd like to call scripts, tools, compilers etc. I need also. How do I go about that?

/K

After some trial and error I got it now.

It just didn't occur to me that the script part of the yaml steps is being executed inside the docker container of choice inside the docker container of the self-hosted runner, as oppose to directly in the self-hosted runner, leaving you to do all plumbing yourself.

/K

Like o_kyrdan likes this

@kristoffer

Thank you for sharing your experience with the community.

Please, feel free to ask any questions and write articles about self-hosted runners that could help other users to setup and use.

 

Best regards,
Oleksandr Kyrdan

Suggest an answer

Log in or Sign up to answer
TAGS

Atlassian Community Events