It's not the same without you

Join the community to find out what other Atlassian users are discussing, debating and creating.

Atlassian Community Hero Image Collage

Is it mandatory to have the capability on Server?

I am looking to create a Bamboo plan where the Source respository is Perforce. I have a remote agent that has the Perforce executable created as a capability.

However I still can't create the plan because Bamboo is looking for Perforce Client executable defined as a server capability.

Is this expected? Do we need the executable on the Server side even if it is there on the remote agent? Does it mean the source will be downloaded on the server? Can I instead force the build to use the remote agent and its capability?

2 answers

1 accepted

I think yes, you need the p4 executable on the Server side. Bamboo server needs to collect the code changes since last build and this operation is performed server-side, prior to the build execution (on local or remote agents). Does this mean the p4 repository source will be downloaded on the server? I think no - the Bamboo server will just poll remote the p4 repository for relevant changes - source content is irrelevant.

Bamboo server needs to collect the code changes since last build and this operation is performed server-side, prior to the build execution (on local or remote agents)

Ah ok, that makes sense.

Regarding the last part of the question - which agent will the build run on? I have a local Agent (default one) and the remote agent. Can I force the build to always run on the Remote Agent?

Yes, you can (however it's a kind of workaround). You need to add custom capability to the remote agent (bamboo->administration->agents->the agent->somewhere there). For example add custom capability "isRemote". Simultaneously you have to add requirement to all your plan jobs (bamboo -> all plans -> configure the plan -> jobX -> requirements) which would require the "isRemote" custom capability to be present on the building agent. That way the Bamboo will dispatch the plan's jobs only to remote agents (assuming you don't add "isRemote" custom capability to the local agents as well :) ).

Does it make sense?

Yup, that will work for me. Thanks Piotr!

1 vote
nic Community Leader Feb 03, 2012

Yes, I think you need the Perforce executable on the remote machine (to get the files from the repo) as well as the Bamboo machine (to get the repo information about what's being built).

What I don't know is if they can share the executable somehow. ou could rig it so the Bamboo server uses the p4 client to drop files onto shared storage so the remote doesn't need it, but I still think Bamboo needs the executable client to enable it to talk to the repo.

Thanks Nic, for the quick answer. It would have been awesome if the server could share the execuatble on the Remote. I think it is the other way that is possible now.

nic Community Leader Feb 03, 2012

Yes, it would be nice. The closest I think I can get is getting the Bamboo server to fetch the stuff to be built from Perforce (i.e with a p4 client), and then pushingit to the build server, so you don't need p4 there. Not sharing, but making it unnecessary.

I don't think there's any getting away from having p4 access of some sort on the Bamboo server, and as it's a proprietary thingy, it's really hard to build into a CI service (on the brighter side, Perforce are much more friendly than other non-open SCM providers and say "help yourself to the client side stuff", and their binaries are monolithic, so you drop one executable on your system, do a tiny bit of config, and it works)

Suggest an answer

Log in or Sign up to answer
Community showcase
Published in Bamboo

Unable to add or edit Bitbucket Cloud repository in Bamboo

On 31 May, a GDPR-related change went live in the Bitbucket Cloud API that resulted in users not being able to create or edit Bitbucket Cloud Linked repositories in Bamboo. This API update removed t...

307 views 2 6
Read article

Community Events

Connect with like-minded Atlassian users at free events near you!

Find an event

Connect with like-minded Atlassian users at free events near you!

Unfortunately there are no Community Events near you at the moment.

Host an event

You're one step closer to meeting fellow Atlassian users at your local event. Learn more about Community Events

Events near you