youngmon/atlassian-qna huggingface dataset:
Bamboo relative submodule urls checkout fails
Asked by Beau Herger:

Hello! We are using Bamboo 9.3 integrated with Bitbucket Cloud.

<br />

We have found that when we utilize relative urls in our submodule definitions (.gitmodules), the build can either successfully clone the repo and submodules, or fail to retrieve certain submodules. This seems to be dependent on the remote build agent.

We presume this is somehow dependent on how the agent and Bamboo server are caching repos?

Can you explain how Bamboo works in this scenario?

Are relative submodule urls supported, and if so, is there certain guidance to be understood/followed to enable them properly?


Answers:
author: Eduardo Alvarenga
body: Hello [@Beau Herger](/t5/user/viewprofilepage/user-id/833539),

From version 8.1, Bamboo supports submodules with relative paths natively. That's actually required for Bamboo to manage the Git authentication completely when the "SSH key applies to submodules" is selected after enabling Submodules on the [Bitbucket Cloud Linked repository](https://confluence.atlassian.com/bamboo/bitbucket-cloud-289277000.html).

Bamboo will try to use the same credentials you have provided to retrieve the submodule data after cloning the main repository:

```
/usr/bin/git -c credential.helper= -c 'credential.helper=store --file=/tmp/gitCredentialsxxxxxxx.tmp' submodule update --init --recursive
```

If the provided credentials are not granted access to the referenced submodule, the fetch will fail.

Make sure the credentials you are using on the main repository are also shared with the submodules and it should just work.

Alternatively, if you want to have full control over the credentials you are using, you'll have to switch to the Repository Authentication Type to "SSH private key", then generate an SSH keypair, distribute the public key to both main and submodule repositories and enable the "*SSH key applies to submodules*" option under the Linked repository's advanced options. Bamboo will then use SSH to communicate with Bitbucket Cloud not HTTP any longer.

Cheers,

Eduardo Alvarenga  
Atlassian Support APAC

**--please don't forget to Accept the answer if the reply is helpful--**

comments: author: Beau Herger
body: Thank you for the response, Eduardo. We are already following the suggestions you made with use of "SSH private key" authentication of the repo and "SSH key applies to submodules". The key pair is applied at the workspace level in bitbucket cloud so there should be clear access without copying keys into submodules.

In the period between my question and response, or problem has seemed to fix itself without any configuration changes. I will accept the answer to close the question.
unable to delete plan through REST API
Asked by SunadhRaj.Malaka:

1. i want to delete plan through REST API as per Atlassian documentation reference

i have got this REST API

```
curl -k -u {username} \
 -H 'X-Atlassian-Token: no-check' \
 -H 'Accept: application/json' \
 -H 'Content-Type: application/x-www-form-urlencoded' \
 -d 'buildKey={planKey}' \
 -X POST 'http://localhost:8085/chain/admin/deleteChain!doDelete.action'
```

2. when i trying to implement this i am facing authentication some error .

3.i have give permission in UI , and i am the admin of that plan, and project as well.

Can anyone with suggestions.

![ex.PNG](/t5/image/serverpage/image-id/261707i487E2EF9351BF905/image-size/large?v=v2&px=999 "ex.PNG")


Answers:
author: Eduardo Alvarenga
body: Hello [@SunadhRaj.Malaka](/t5/user/viewprofilepage/user-id/5237432)

I can see two issues here:

1 - You are enclosing your username with *{}* characters. This is used as a delimiter and should not be used on the request. Try using simply ***sumalaka*** and not ***{sumalaka}*** as the username. There is a clear error message stating that user is not authorised.

2 - This is not a Bamboo REST API call. That's actually an HTML form submission that may change between releases. If you are looking to use the REST API please try this:

* <https://developer.atlassian.com/server/bamboo/rest/api-group-api/#api-api-latest-plan-projectkey-buildkey-delete>
* Example:

  ```
  $ curl -u sumalaka:password --request DELETE --url 'http://localhost:8085/rest/api/latest/plan/PROJ-PLAN'
  ```

Best regards,

Eduardo Alvarenga  
Atlassian Support APAC

**--please don't forget to Accept the answer if the reply is helpful--**

comments: author: SunadhRaj.Malaka
body: Thankyou useful


author: Eduardo Alvarenga
body: Thank you! Make sure to **Accept the Answer** if it helped you.
Default or override in variable interpolation
Asked by Timothy Goff:

In my build plan I have a a variable injection step which sets a variable (\`  
bamboo.inject.DOCKER_IMAGE_PATH_MAIN\`). This variable is the path to a docker image generated in the build which will then be used as the execution environment for the subsequent deployment plan.  
I am able to successfully reference that variable in the deployment spes:

```
 DockerConfiguration dockerConfiguration = new DockerConfiguration().image("${bamboo.inject.DOCKER_IMAGE_PATH_MAIN}");
```

and it is interpolated as expected. However, if I attempt to deploy a release from a build which does not have this variable injected, the \`${bamboo.inject.DOCKER_IMAGE_PATH_MAIN}\` string is left as is and docker (understandably) complains it cant find that image.  
In Bash, I could do something like

```
${bamboo.inject.DOCKER_IMAGE_PATH_MAIN:-bamboo.DOCKER_IMAGE_DEFAULT_PATH}?
```

to fall back to the value of DOCKER_IMAGE_DEFAULT_PATH if DOCKER_IMAGE_PATH_MAIN is not defined.

I was wondering if there is a way to define this sort of logic in bamboo variable interpolation, or alternatively, if there was a way to set a value for an injected variable at deploy time.

Thanks


Answers:
author: Marcin Gardias
body: You can define a variable with the same name at global, plan or Deployment Environment level. If injected variable exist it will override, if not, it will resolve to the 'broader scope' variable.


author: Eduardo Alvarenga
body: Check [@Marcin Gardias](/t5/user/viewprofilepage/user-id/781649) comment below.

comments: author: Marcin Gardias
body: Actually, deployments do inherit variables from the build that created the release that is being deployed BUT: inject variable task has to be set to create variables in RESULT scope (in other words: not LOCAL)
In Bamboo, when viewing a wallboard, where can I find a list of possible filters I can use?
Asked by Rhobin Jay Faigones:

Sample wallboard url is:

[https://my.bamboo.com/telemetry.action?filter=project\&projectKey=ABC](https://my.bamboo.com/telemetry.action?filter=project&projectKey=ABC)

This url is taken from the **Project wallboard** button at the Project ABC default page.

I want to know what other filters are there for me to have more effective wallboard view of the builds.

If I go to my **Dashboard** , then **Wallboard** \>**Favourite Plans**, it has this url:

<https://my.bamboo.com/telemetry.action?filter=favourites>

...where the filter is favourites. These observations made me think if possible to get an idea what other filters I can use hopefully.

Thanks in advance!


Answers:
author: Eduardo Alvarenga
body: Hello [@Rhobin Jay Faigones](/t5/user/viewprofilepage/user-id/5214688)

The other option that can be applied is ***showPlanAndBranches*** . It works when specifying the *planKey.* For example:

* [https://my.bamboo.com/telemetry.action?planKey=ABC-GHI\&filter=showPlanAndBranches](https://my.bamboo.com/telemetry.action?planKey=ABC-GHI&filter=showPlanAndBranches)

Will show all branches for a specific Plan and their latest result.

No other filters or options are available.

Sincerely,

Eduardo Alvarenga  
Atlassian Support APAC

**--please don't forget to Accept the answer if the reply is helpful--**


Tags: telemetry
YAML Specs approach and Best Practices
Asked by Sean Conlon:

We have an on-prem Bamboo and Bitbucket setup, and we are looking to introduce Specs into our environment. We have about 60 Projects, and close to 200 Build Plans (all Java).

However, we see the pros and cons of using Java Specs and Yaml Specs, but we are looking for some guidance and best practices on how to use each one, which will help us decide which setup fits us best.

If we use YAML, should we (1) include the YAML Spec file in a given project? Or should we (2) have a single Bitbucket repository that contains all of the the YAML files?

In scenario 1, how do we prevent developers from disabling certain features that we (DevOps Team) want to enforce?

In scenario 2, how do we make updates to a single build plan without impacting all of the projects included in that Linked Repo? Is Bamboo smart enough to know which Plan was updated and only impact that Plan?

Any direction on best practices for both Java Specs and YAML Specs would be greatly appreciated.


Answers:
author: Marcin Gardias
body: If you use YAML, storing Specs with the project is the only option, so if you want scenario 2, you need Java Specs.

In both scenarios Bamboo will have to compile all the specs it finds, but will only update items that actually change.

One benefit of scenario 1 vs 2, is that in scenario 1, assuming you use Bitbucket, [Specs for branches](https://confluence.atlassian.com/bamboo/enhanced-plan-branch-configuration-1018767259.html) feature is active, in scenario 2 it is not and you get 'regular' plan branches. What that means that in scenario 1 you get way more options to customize your plan branches.

Lastly, since you are a Java shop, I strongly recommend using Java Specs. I find Java Specs way easier to work with. Especially, that you have many plans and probably would like to be able to extract common configuration patterns into some kind of shared utilities.


Tags: server

spec

yaml
How to generate ssh key using puttygen for bamboo 6.4
Asked by Steve Pranadhita:

Hi, I am getting errors when trying to use OpenSSH format pem private key for our v6.4 bamboo to access our atlassian bitbucket repo using ssh key.

We kept getting this error with and without passphrase:

```
com.atlassian.bamboo.repository.RepositoryException: Cannot decode connection params	at com.atlassian.bamboo.plugins.git.NativeGitOperationHelper.beforeRepositoryAccess(NativeGitOperationHelper.java:229)
......

```

```
Caused by: java.io.IOException: unrecognised object: OPENSSH PRIVATE KEY	at org.bouncycastle.openssl.PEMParser.readObject(Unknown Source)	at com.atlassian.bamboo.plugins.ssh.ProxyConnectionDataBuilderImpl.withKeyFromReader(ProxyConnectionDataBuilderImpl.java:88)
......
```

I assume bamboo can read OpenSSH format according to <https://confluence.atlassian.com/bamkb/error-while-opening-ssh-session-when-using-putty-format-keys-608731364.html>


Answers:
author: Eduardo Alvarenga
body: Hello [@Steve Pranadhita](/t5/user/viewprofilepage/user-id/1310582)

As you are running Bamboo 6.4, that version will not support the OpenSSH pem format. That is only available on the most recent versions of the product.

Please convert the key to the old PEM format and try again.

```
$ ssh-keygen -m PEM -t rsa -C user@domain -f ~/.ssh/id_rsa_pem
```

Sincerely,

Eduardo Alvarenga  
Atlassian Support APAC

**--please don't forget to Accept the answer if the reply is helpful--**

comments: author: Steve Pranadhita
body: Thanks heaps, yes it helps, it is now able to return with a success on Test Connection however a separate issue arises the build plan seems to still use the old 'cached' repository ssh key details somehow, I might have to reclone the plan or the build job. Thanks for the immediate help!


Tags: git

ssh
bamboo requirement capability variable with pipe | operator doesn't work in Bamboo YAML specs
Asked by ananda3:

We have a `requirements capability variable`

var = org1\|org2\|org3

when used this variable in bamboo yaml specs, it gets treated as string text and not as it gets processed from UI config.  

Please help how this can be handled.


Answers:
author: Eduardo Alvarenga
body: Hello [@ananda3](/t5/user/viewprofilepage/user-id/5048241)

Bamboo YAML Specs will match a Regex under Requirements.

For example, I want my plan to accept **my_requirement** as either **org1** , **org2** or **org3**:  

```
---
version: 2
plan:
  project-key: ABC
  key: GHI
  name: GHI
stages:
- Default Stage:
  manual: false
  final: false
  jobs:
  - Default Job
Default Job:
  key: JOB1
  tasks:
  - checkout:
      force-clean-build: 'false'
      description: Checkout Default Repository
  artifact-subscriptions: []
  requirements:
  - my_requirement: ^(org1|org2|org3)$
...
```

Please check your YAML code for a valid regular expression.

Thank you,

Eduardo Alvarenga  
Atlassian Support APAC

**--please don't forget to Accept the answer if the reply is helpful--**

comments: author: ananda3
body: [@Eduardo Alvarenga](/t5/user/viewprofilepage/user-id/4365410) this way I agree that my_requirement will be accepted as it is hardcoded in specs. However, my use case is that I want it to be configured from outside of the bamboo specs and dynamically bind with in the specs via project variable.

As mentioned, we have Requirements required capability defined with as a variable (e.g. my_requirement). Now, the condition that is put in place in UI config is  

"my_requirement matches org1\|org2\|org3"  

I want to map my requirement in bamboo specs as following:

project_org_variable = org1\|org2\|org3

```
requirements:
  - my_requirement: ${bamboo_project_org_variable}
```

But, this doesn't work. Our use case is that if org1 is down then we can just update the project variable to org2\|org3 and there is no need to update bamboo specs for this.  

If I follow above approach, it comes as below in the spec file  

requirements:  
- my_requirement: 'org1\|org2\|org3'  

I need a way to get rid of these quotes.


author: Eduardo Alvarenga
body: Hello [@ananda3](/t5/user/viewprofilepage/user-id/5048241)

Adding variables to the Agent can Capabilities requirement fields is currently not supported in Bamboo.

We have a feature request you can vote on and follow to be notified of any changes in the future.

* [BAM-12232 - Allow having variables in agent capabilities and job requirements](https://jira.atlassian.com/browse/BAM-12232)

Make sure you add a comment with your specific business case so the developers can consider it to expedite the feature implementation.

Cheers,

Eduardo Alvarenga  
Atlassian Support APAC

**--please don't forget to Accept the answer if the reply is helpful--**


Tags: build

spec

variable

yaml-specs
Is it possible to get paginated results for the /rest/api/latest/queue endpoint?
Asked by HN:

I'm interested in getting paginated results from the \`/rest/api/latest/queue\` endpoint so I can limit the results.

Pagination is not documented in <https://docs.atlassian.com/atlassian-bamboo/REST/8.2.4/#d2e3179>.

An API call to the endpoint returns the desired \`max-result\` parameter nested within\`queuedBuilds\`.

```
{
"expand": "queuedBuilds",
"link": {
"href": "https://bamboo.com/rest/api/latest/queue",
"rel": "self"
},
"queuedBuilds": {
"size": 25,
"start-index": 0,
"max-result": 25
}
```

Setting \`max-result\` as a query parameter takes no effect. e.g:

```
https://bamboo.com/rest/api/latest/queue?expand=queuedBuilds.queuedBuilds&max-result=1
```

Is this not supported or documented elsewhere?


Answers:
author: Eduardo Alvarenga
body: Hello [@HN](/t5/user/viewprofilepage/user-id/690346),

Thanks for reporting that!

I have created a bug issue. Make sure to watch it so you will get updated once it gets moved forward in development.

* [BAM-22256 - Bamboo's /rest/api/latest/queue endpoint pagination does not work](https://jira.atlassian.com/browse/BAM-22256)

Best regards,

Eduardo Alvarenga  
Atlassian Support APAC

**--please don't forget to Accept the answer if the reply is helpful--**
I need to start build number from 1 for every release
Asked by Madhu:

Hi Team,

Can you please help how to achieve below requirement,

I wanted to start build number 1 for every release.

Please let us know how can i get this.

Thanks \& Regards

Madhu Balineni


Answers:
author: Eduardo Alvarenga
body: Hello [@Madhu](/t5/user/viewprofilepage/user-id/5179315),

If you are looking to reset the build numbers please check the following KB article:

* [Changing the current build number in Bamboo](https://confluence.atlassian.com/bamkb/changing-the-current-build-number-in-bamboo-759858218.html)

Thank you,

Eduardo Alvarenga  
Atlassian Support APAC

**--please don't forget to Accept the answer if the reply is helpful--**
Bamboo becomes unavailable after running multiple docker jobs
Asked by taavi tyrnpuu:

Hello!  
I am writing to report an issue we are experiencing with our Bamboo installation which is causing significant disruption to our workflows. We've noticed that when multiple jobs, specifically ones that utilize Docker, run concurrently, Bamboo basically becomes unavailable.

Our setup includes various stages of builds, and most of these stages make use of Docker for encapsulation and reproducibility of our environment. However, when there are numerous Docker-related jobs running simultaneously, Bamboo's UI becomes inaccessible and we cannot monitor the status of our builds. Furthermore, it seems to affect the performance of queued builds, with jobs taking a longer time to start or even failing to start altogether.

Here are the specifics of our setup:

Bamboo Version: 9.2.1  
Docker Version: Docker version 20.10.21, build 20.10.21-0ubuntu1\~22.04.3  
OS Version: Ubuntu 22.04  
Number of concurrent jobs typically running: up to 5 jobs.  
Hardware specifications: RAM 256GB, 64 CPU.


Answers:
author: Eduardo Alvarenga
body: Hello [@taavi tyrnpuu](/t5/user/viewprofilepage/user-id/201835),

Your issue looks a bit complex, meaning we may not be able to fully help you here without getting to know your instance configuration fully. As this is a public forum, we don't recommend providing internal information for obvious reasons. We suggest, in case you have a valid Bamboo Support Entitlement Number, that you open a ticket with Atlassian so our Support Engineers can help you with this issue. Go to <https://support.atlassian.com/contact> to open a ticket with us.

If you don't have such a license, we can still try something here. Can you confirm how your build agents are distributed? Are they Remote or Elastic? Are the builds being dispatched to such external agents? Or are you running builds on Local Agents?

Sincerely,

Eduardo Alvarenga  
Atlassian Support APAC

**--please don't forget to Accept the answer if the reply is helpful--**


Tags: server
Why can't I select Bamboo for a new issue on the support site?
Asked by Bob Rzadzki:

From support.atlassian.com, I navigate to the Contact Support page. To start a new issue, I have to select the product it's for from the dropdown. In this case, that's Bamboo Datacenter, which is not listed. In fact, Bamboo is not listed on either the Server or Cloud/Datacenter tabs.

What's going on here? Bamboo keeps breaking in new and frustrating ways and now I can't find a way to reach support about it.


Answers:
author: Eduardo Alvarenga
body: Hello [@Bob Rzadzki](/t5/user/viewprofilepage/user-id/331547)

On the "***Which product is this for?*** " dialogue you can type "**Bamboo**" to locate it.

![support-form.jpg](https://community.atlassian.com/t5/image/serverpage/image-id/257919i4E6274AA7CA501A0/image-size/large?v=v2&px=999 "support-form.jpg")

You can also click on the drop-down menu \>\> **Data Center/Server** \>\> **Scroll down** \>\> **Bamboo**

![support-form-2.jpg](https://community.atlassian.com/t5/image/serverpage/image-id/257922i40C67ECA026A8C29/image-size/large?v=v2&px=999 "support-form-2.jpg")

Kind regards,

Eduardo Alvarenga  
Atlassian Support APAC

**--please don't forget to Accept the answer if the reply is helpful--**

comments: author: Bob Rzadzki
body: Thank you, Eduardo - I didn't realize I could type into that field.

Previously, I've scrolled to find Bamboo, and it wasn't available this time, as though the scroll was stopping short.

I appreciate your help. Marking this as solved.
Components Limit at Hobby Plan
Asked by Leonardo Vinicius:

Hello, I'd like to ask if the limit number of components at the Hobby Plan of StatusPage is 1100, or is different than that. That info is not available on the pricing page, only that 25 is the limit for the starter plan


Answers:
author: Andy Gladstone
body: [@Leonardo Vinicius](/t5/user/viewprofilepage/user-id/5259149) Welcome to the Atlassian Community.

There is a limit of 1100 components on all paid Statuspage plans. The 25 you reference is only a limitation on the Free plan.

Here is a link to the documentation about Components:

<https://support.atlassian.com/statuspage/docs/what-is-a-component/>

I hope this helps!

comments: author: Leonardo Vinicius
body: [@Andy Gladstone](/t5/user/viewprofilepage/user-id/3498028)thanks for that Andy :)


author: Andy Gladstone
body: [@Leonardo Vinicius](/t5/user/viewprofilepage/user-id/5259149) if my answer helped you, please consider marking it as accepted soothers looking for similar issues can more easily find it.


Tags: cloud
Status Request initiated from Service Desk not showing up
Asked by Ike Perez:

Greetings all,

I am using Status Page for Jira Service Management. We can create incidents from the application with no problem. If we create an incident from Jira, it does create it but it does not allow us to view it from the app, it doesn't show up in the app nor does it embed in our portal. It is active because we get email notifications alerting us of the time lapse. We can make updates and close the incident from Jira but can never see it. Any ideas? Thanks in advance


Answers:
author: Jesse Klein
body: Hello Ike,

This is Jesse from the Statuspage support team. Welcome to the community! When you say you are unable to view an incident from the app, which app are you referring to? JSM or Statsupage?

The JSM/Statsupage integration lets users see if there are incidents in your JSM portal as it is defined in this help document: <https://support.atlassian.com/statuspage/docs/set-up-a-jira-service-management-integration/>

We also have a Jira Software integration that allows you to create and post incidents from Jira software but this also doesn't show the incident within Jira: <https://support.atlassian.com/statuspage/docs/set-up-the-jira-software-integration/>

If you are trying to view the incident, it would show up within Statsupage itself or within your JSM help center if you have an active incident. I would love to understand which tools you were using and where you were trying to see your Statsupage incidents. Thanks for your time!

Regards,  
Jesse

comments: author: Ike Perez
body: That last paragraph is not happening. Once created from within JSM, I get message incident successfully created but am not able to view from anywhere. If I click on the link provided within JSM it takes be to Statuspage incident page with error (access denied).

After a day I do get notifications of the incident being opened for a long time. I can close the incident from within JSM and that gets rid of it.

NOTE: The two configuration links you provided were already done


author: Jesse Klein
body: Hello Ike,

Thanks for clarifying! The access denied error could mean that it's a private page that you don't have access to. It could mean that it is a trial. In order to better assist you with your specifics, I would recommend opening a support ticket with us so we can see why it would be throwing this error. You can submit one at support.atlassian.com. Thanks again for your time!

Regards,  
Jesse


author: Ike Perez
body: It is a private page and I am the one that created it. I will open a ticket. Thank you


Tags: cloud