Bamboo Specs - Create new plan on existing project? Edited

How do I go about attaching new plans to existing projects? 

At the moment I'm getting: 

Exception in thread "main" com.atlassian.bamboo.specs.api.exceptions.BambooSpecsPublishingException: An error occurred while publishing plan APN-MODULES: Duplicate project name modules

thrown, which technically makes sense as that project does already exist. 

I can't find anything in the reference API or Java docs for how to create a plan on a project that has already been created. 

The method I'm using to create a new plan: 

    public static Plan createPlan(String planName, String planKey, String planDescription, String projectName, String projectKey) {

        Project project = new Project()
                .name(projectName)
                .key(projectKey);

        return new Plan(project, planName, planKey)
                .description(planDescription);
    }

Any help is much appreciated. 

3 answers

1 accepted

This widget could not be displayed.

To add plans to an existing project you must set the OID on the project object.

.oid(new BambooOid("<PROJECT_OID>"))

You can get the OID by viewing an existing plan in the project "as Java specs".

That is observed to be true for Bamboo 6.4.1, but not necessary for newer versions of Bamboo like  6.6.1 (which is the one I tested).

This widget could not be displayed.

Are you sure you didn't make mistake in project key?

What happens if you skip .name(projectName) from project definition?  (it should work if project with given key already exists)

@Marcin GardiasI'm having the same issues as @Chris Turner.  If I create a Project object using an existing name and key then I get a "Project with this name already exists" error.  I'm on Bamboo 6.4.1.

If I do not set the ".name" of the Project object, per your suggestion, I get a "Please enter a project name" error.

 

Is it possible to use Bamboo specs with an existing Bamboo project?

Thanks

This widget could not be displayed.

On 6.5, I was able to use an existing plan by using name, key, and oid:

 

Project project() {
return new Project()
.name("project_name")
.key("project_key")
.oid(new BambooOid("project_oid"));
}

Suggest an answer

Log in or Sign up to answer
Atlassian Summit 2018

Meet the community IRL

Atlassian Summit is an excellent opportunity for in-person support, training, and networking.

Learn more
Community showcase
Posted Wednesday in New to Jira

Are you planning to trial, or are currently trialling Jira Software? - We want to talk to you!

Hello! I'm Rayen, a product manager at Atlassian. My team and I are working hard to improve the trial experience for Jira Software Cloud. We are interested in   talking to 20 people planning t...

124 views 2 0
Join discussion

Atlassian User Groups

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

Find a group

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

Find my local user group

Unfortunately there are no AUG chapters near you at the moment.

Start an AUG

You're one step closer to meeting fellow Atlassian users at your local meet up. Learn more about AUGs

Groups near you