Changes for 5.13

Here's a list of API changes for Bamboo 5.13:

Script task configuration changes

We've changed configuration keys for the script task:

Key Status Change description
interpreter

NEW

Specifies script interpreter to be used while running a script. The allowed values are:

  • RUN_AS_EXECUTABLE
  • POWERSHELL
  • LEGACY_SH_BAT
runWithPowershell

REMOVED

Replaced by the POWERSHELL interpreter

Removed methods

c.a.b.buildqueue.manager

The following deprecated methods have been removed:

  com.atlassian.bamboo.buildqueue.manager.AgentManager
    /**
     * Gets all agents which can run a given {@link com.atlassian.bamboo.v2.build.agent.capability.RequirementSet}
     *
     * @deprecated since 5.0 use methods of {@link com.atlassian.bamboo.plan.ExecutableAgentsHelper}
     * @return
     */
    @Deprecated
    @NotNull
    Collection<BuildAgent> getExecutableAgents(RequirementSet requirementSet, boolean includeDisabled);

    /**
     * Gets all agents which can run a given {@link com.atlassian.bamboo.v2.build.agent.capability.RequirementSet}
     *
     * @deprecated since 5.0 use methods of {@link com.atlassian.bamboo.plan.ExecutableAgentsHelper}
     * @return
     */
    @Deprecated
    @NotNull
    Collection<BuildAgent> getExecutableAgents(RequirementSet requirements, DisabledAgentsInclusion includeDisabled, OfflineAgentsInclusion includeOffline);

    /**
     * Retrieves a list of all images which satisfy the given requirements set.
     *
     * @param requirementSet to check
     * @deprecated since 5.0 use methods of {@link com.atlassian.bamboo.plan.ExecutableAgentsHelper}
     *
     * @return Any configured {@link com.atlassian.bamboo.agent.elastic.server.ElasticImageConfiguration} which can
     *         build the requirement set (currently this can be 1 or none)
     */
    @Deprecated
    @NotNull
    Collection<ElasticImageConfiguration> getExecutableImages(@NotNull RequirementSet requirementSet);

    /**
     * Retrieves a list of all images which satisfy the given requirements set.
     *
     * @param requirementSet  to check
     * @param includeDisabled whether to include images configurations which are currently disabled
     * @deprecated since 5.0 use methods of {@link com.atlassian.bamboo.plan.ExecutableAgentsHelper}
     *
     * @return Any configured {@link com.atlassian.bamboo.agent.elastic.server.ElasticImageConfiguration} which can
     *         build the requirement set (currently this can be 1 or none)
     */
    @Deprecated
    @NotNull
    Collection<ElasticImageConfiguration> getExecutableImages(@NotNull RequirementSet requirementSet, boolean includeDisabled);

 
    /**
     * Returns a matrix of how many agents match each requirement in the set. Also adds the total number of agents that
     * matches the set
     *
     * @param requirementSet
     * @param includeDisabled
     *
     * @deprecated since 5.0 use methods of {@link com.atlassian.bamboo.plan.ExecutableAgentsHelper}
     */
    @Deprecated
    @NotNull
    ExecutableAgentsMatrix getExecutableAgentsMatrix(@NotNull RequirementSet requirementSet, boolean includeDisabled);

    /**
     * Returns a matrix of how many agents match each requirement in the set. Also adds the total number of agents that
     * matches the set
     *
     * @param requirementSet
     * @param includeDisabled
     * @param includeOffline
     *
     * @deprecated since 5.0 use methods of {@link com.atlassian.bamboo.plan.ExecutableAgentsHelper}
     */
    @Deprecated
    @NotNull
    ExecutableAgentsMatrix getExecutableAgentsMatrix(@NotNull RequirementSet requirementSet, DisabledAgentsInclusion includeDisabled, OfflineAgentsInclusion includeOffline);

c.a.b.v2.build.agent.capability

The following deprecated methods have been removed:

  com.atlassian.bamboo.v2.build.agent.capability.CapabilitySetManager
    /**
     * Collection of buildables for  which this capability set can meet the requirements of
     * @deprecated since 5.0.  Will not filter by agent assignments. Use {@link com.atlassian.bamboo.plan.ExecutableAgentsHelper#getExecutableBuildables(com.atlassian.bamboo.plan.ExecutableAgentsHelper.ExecutableQuery)}
     */
    @NotNull
    @Deprecated
    Collection<ImmutableBuildable> getExecutableBuildables(@NotNull ReadOnlyCapabilitySet capabilitySet);

Repository configuration changes for Bitbucket Cloud, Git, and Mercurial

We've modified the repositories configuration model in Bamboo. The list below contains all changes in properties that are used by Bamboo to store configuration of repositories, both in the database and in runtime (for example, the data passed to agents).

Git repository configuration changes

Before Now Comment
repository.git.sharedCrendentials = <credentialsId>

repository.git.sharedCredentials = <credentialsId>

NOT SET

repository.git.sharedCrendentials

Typo fix

repository.git.authenticationType = SHARED_CREDENTIALS

repository.git.authenticationType = SSH_KEYPAIR

repository.git.sshCredentialsSource = SHARED_CREDENTIALS

Refactoring shared credentials to be a sub-type of actual authentication method

repository.git.authenticationType = SSH_KEYPAIR

repository.git.authenticationType = SSH_KEYPAIR

repository.git.sshCredentialsSource = CUSTOM

repository.git.authenticationType = PASSWORD

repository.git.authenticationType = PASSWORD

repository.git.passwordCredentialsSource = CUSTOM

Mercurial repository configuration changes

Before Now Comment
repository.hg.authenticationType = PASSWORD
repository.hg.username = <username>
repository.hg.password = <encrypted-password>
repository.hg.authenticationType = PASSWORD
repository.hg.password.source = CUSTOM
repository.hg.password.username = <username>
repository.hg.password.password = <encrypted-password>

NOT SET

repository.hg.username
repository.hg.password
Introducing credentials source property and renaming
repository.hg.authenticationType = SSH_PROXY
repository.hg.ssh.keyFromFile = <sshKey>
repository.hg.ssh.passphrase = <encrypted-passphrase>
repository.hg.authenticationType = SSH_PROXY
repository.hg.ssh_proxy.source = CUSTOM
repository.hg.ssh_proxy.privateKey = <sshKey>
repository.hg.ssh_proxy.passphrase = <encrypted-passphrase>

NOT SET

repository.hg.ssh.keyFromFile
repository.hg.ssh.passphrase
Introducing credentials source property and renaming
repository.hg.authenticationType = KEYFILE
repository.hg.ssh.keyFromFile = <encrypted-sshKey>
repository.hg.authenticationType = KEYFILE
repository.hg.keyfile.privateKey = <encrypted-sshKey>

NOT SET

repository.hg.ssh.keyFromFile
Renaming
repository.hg.authenticationType = SHARED_CREDENTIALS
repository.hg.sharedCredentials = <credentialsId>
repository.hg.authenticationType = SSH_PROXY
repository.hg.ssh_proxy.source = SHARED_CREDENTIALS
repository.hg.ssh_proxy.sharedCredentials = <credentialsId>

NOT SET

repository.hg.sharedCredentials
Moving to SSH_PROXY authentication type as a different source of credentials. Now SHARED_CREDENTIALS is no longer an authentication type.

Values marked as encrypted- need to be passed through EncryptionService.encrypt before storing in configuration.

Bitbucket repository configuration changes

Before Now Comment

repository.bitbucket.username = <username>

NOT SET

repository.bitbucket.password

repository.bitbucket.accessLevel = PUBLIC

repository.bitbucket.owner = <username>

repository.bitbucket.authenticationType = NONE

NOT SET

repository.bitbucket.username

repository.bitbucket.password

We've emphasised the difference between public and private repositories in the UI, which required some changes in the model.

Additionally, we've introduced the authentication type so that the users can override it.

repository.bitbucket.username = <username>

repository.bitbucket.password = <password>

repository.bitbucket.accessLevel = PRIVATE

repository.bitbucket.passwordCredentialsSource = CUSTOM

repository.bitbucket.username = <username>

repository.bitbucket.password = <password>

repository.bitbucket.authenticationType = PASSWORD

NOT SET

repository.bitbucket.owner

Was this page helpful?

Have a question about this article?

See questions about this article

Powered by Confluence and Scroll Viewport