Last updated Dec 8, 2017

Bamboo API Changes for Bamboo 2.3

Bamboo 2.3 includes several improvements as well as new plugin points for developers. This page will be updated with details on these changes shortly.

Remote API Changes in Bamboo 2.3

Please note, we have made significant changes to Bamboo's remote API to improve it in Bamboo 2.3. However, it is likely that a number of existing Bamboo plugins will not work as a result.

We strongly recommend that you read through all of the changes listed below and update your plugins accordingly. If you encounter any issues that are not covered by the information on this page, please let us know by logging a ticket in the 'Bamboo' project on jira.atlassian.com/ and we will amend the information below, as required.

Method Deprecation for Builder Plugins

The following abstract method on the Command class has been deprecated

1
2
public Commandline getCommandLine(ReadOnlyCapabilitySet capabilitySet)

This will effect plugins who extend this class directly or extends the AbstractBuilder. Instead you should use the following methods

1
2
    /**
     * What is the executable for the command line to execute.  Variable substitution is not required for executable, substitution will be performed later.
     * @param capabilitySet- for the current context
     * @return the executable as a string
     */
    @NotNull
    public String getCommandExecutable(ReadOnlyCapabilitySet capabilitySet)

/**
     * What are the arguments for the command line to execute Variable substitution is not required for arguments, substitution will be performed later.
     * @param capabilitySet - for the current context
     * @return the arguments as a string[].  Spaces/division of strings in the array should not matter.
     */
    @NotNull
    public String[] getCommandArguments(ReadOnlyCapabilitySet capabilitySet)

Renamed Methods in BuildPlanDefinition

The methods getBuilder() and getRepository() in the BuildPlanDefinition interface have been renamed to getBuilderV2() and getRepositoryV2() respectively, (see below). You will need to update these method calls in your plugins to be compatible with 2.3

1
2
@Nullable
RepositoryV2 getRepositoryV2();

BuilderV2 getBuilderV2();

Rate this page: