Interface DeploymentImportService

All Known Implementing Classes:
DeploymentImportServiceImpl

@ExperimentalApi public interface DeploymentImportService
Service to import deployment project configurations from human readable format.
Since:
6.1
  • Method Summary

    Modifier and Type
    Method
    Description
    @NotNull com.atlassian.bamboo.specs.api.model.deployment.DeploymentProperties
    convertYamlToDeployment(@NotNull String yaml, @NotNull RssPermissions rssPermissions)
    Converts data from a YAML document to deployment properties.
    @NotNull com.atlassian.bamboo.specs.api.model.permission.DeploymentPermissionsProperties
    Converts data from a YAML document to deployment permissions properties.
    @NotNull com.atlassian.bamboo.specs.api.model.permission.EnvironmentPermissionsProperties
    Converts data from a YAML document to environment permissions properties.
    importDeployment(@NotNull com.atlassian.bamboo.specs.api.model.deployment.DeploymentProperties deploymentProperties, @Nullable com.atlassian.user.User userForCreation, @NotNull RssPermissions rssPermissions, boolean noChangesInProperties)
    Validates exported deployment properties within Bamboo context (e.g.
    void
    importDeploymentEnvironmentPermissions(@NotNull com.atlassian.bamboo.specs.api.model.permission.EnvironmentPermissionsProperties environmentPermission, @NotNull RssPermissions rssPermissions)
    Import permissions for deployment environment.
    void
    importDeploymentPermissions(@NotNull com.atlassian.bamboo.specs.api.model.permission.DeploymentPermissionsProperties deploymentPermissionProperties, @NotNull RssPermissions rssPermissions)
    Import permissions for deployment project.
    void
    importDeploymentPermissions(@Nullable String deploymentName, @Nullable com.atlassian.bamboo.specs.api.model.BambooOidProperties deploymentOid, @NotNull com.atlassian.bamboo.specs.api.model.permission.PermissionsProperties defaultEnvironmentPermissions, @NotNull List<com.atlassian.bamboo.specs.api.model.permission.EnvironmentPermissionsProperties> environmentPermissions, @NotNull RssPermissions rssPermissions)
    Import environments permissions in a bulk.
    void
    validate(com.atlassian.bamboo.specs.api.model.deployment.DeploymentProperties deploymentProperties, @NotNull RssPermissions rssPermissions)
    Validates exported deployment properties within Bamboo context (e.g.
  • Method Details

    • convertYamlToDeployment

      @NotNull @NotNull com.atlassian.bamboo.specs.api.model.deployment.DeploymentProperties convertYamlToDeployment(@NotNull @NotNull String yaml, @NotNull @NotNull RssPermissions rssPermissions) throws com.atlassian.bamboo.specs.api.exceptions.PropertiesValidationException, YamlValidationException
      Converts data from a YAML document to deployment properties.

      This method performs validation of YAML types and of the properties without Bamboo context (e.g. no database integrity is verified).

      Parameters:
      yaml - YAML String containing definition of deployment
      Returns:
      deployment properties after contextless validation
      Throws:
      YamlValidationException - if the format of the YAML file is invalid
      com.atlassian.bamboo.specs.api.exceptions.PropertiesValidationException - if the imported properties were not valid
    • validate

      void validate(com.atlassian.bamboo.specs.api.model.deployment.DeploymentProperties deploymentProperties, @NotNull @NotNull RssPermissions rssPermissions) throws YamlValidationException
      Validates exported deployment properties within Bamboo context (e.g. verifying database integrity).
      Parameters:
      deploymentProperties - deployment properties to import
      rssPermissions - deployment projects which are allowed for modification; since 6.2
      Throws:
      YamlValidationException - if validation failed
    • convertYamlToDeploymentPermissions

      @NotNull @NotNull com.atlassian.bamboo.specs.api.model.permission.DeploymentPermissionsProperties convertYamlToDeploymentPermissions(String yaml) throws YamlValidationException
      Converts data from a YAML document to deployment permissions properties.

      This method performs validation of YAML types and of the properties without Bamboo context (e.g. no database integrity is verified).

      Parameters:
      yaml - YAML String containing definition of deployment permissions
      Returns:
      deployment permissions properties after contextless validation
      Throws:
      YamlValidationException - if the format of the YAML file is invalid
      com.atlassian.bamboo.specs.api.exceptions.PropertiesValidationException - if the imported properties were not valid
    • convertYamlToEnvironmentPermissions

      @NotNull @NotNull com.atlassian.bamboo.specs.api.model.permission.EnvironmentPermissionsProperties convertYamlToEnvironmentPermissions(String yaml) throws YamlValidationException
      Converts data from a YAML document to environment permissions properties.

      This method performs validation of YAML types and of the properties without Bamboo context (e.g. no database integrity is verified).

      Parameters:
      yaml - YAML String containing definition of environment permissions
      Returns:
      environment permissions properties after contextless validation
      Throws:
      YamlValidationException - if the format of the YAML file is invalid
      com.atlassian.bamboo.specs.api.exceptions.PropertiesValidationException - if the imported properties were not valid
    • importDeployment

      @NotNull @NotNull DeploymentProject importDeployment(@NotNull @NotNull com.atlassian.bamboo.specs.api.model.deployment.DeploymentProperties deploymentProperties, @Nullable @Nullable com.atlassian.user.User userForCreation, @NotNull @NotNull RssPermissions rssPermissions, boolean noChangesInProperties) throws com.atlassian.bamboo.specs.api.exceptions.PropertiesValidationException
      Validates exported deployment properties within Bamboo context (e.g. verifying database integrity), then imports the data into the database.
      Parameters:
      deploymentProperties - deployment properties to import
      userForCreation - user invoking the import
      rssPermissions - deployment projects which are allowed for modification; since 6.2
      Returns:
      saved deployment entity
      Throws:
      com.atlassian.bamboo.specs.api.exceptions.PropertiesValidationException - if data validation fails
    • importDeploymentPermissions

      void importDeploymentPermissions(@NotNull @NotNull com.atlassian.bamboo.specs.api.model.permission.DeploymentPermissionsProperties deploymentPermissionProperties, @NotNull @NotNull RssPermissions rssPermissions) throws com.atlassian.bamboo.specs.api.exceptions.PropertiesValidationException
      Import permissions for deployment project.
      Parameters:
      deploymentPermissionProperties - deployment permissions to import
      Throws:
      com.atlassian.bamboo.specs.api.exceptions.PropertiesValidationException - if data validation fails
    • importDeploymentEnvironmentPermissions

      void importDeploymentEnvironmentPermissions(@NotNull @NotNull com.atlassian.bamboo.specs.api.model.permission.EnvironmentPermissionsProperties environmentPermission, @NotNull @NotNull RssPermissions rssPermissions) throws com.atlassian.bamboo.specs.api.exceptions.PropertiesValidationException
      Import permissions for deployment environment.
      Parameters:
      environmentPermission - environment permissions to import.
      Throws:
      com.atlassian.bamboo.specs.api.exceptions.PropertiesValidationException - if data validation fails
    • importDeploymentPermissions

      void importDeploymentPermissions(@Nullable @Nullable String deploymentName, @Nullable @Nullable com.atlassian.bamboo.specs.api.model.BambooOidProperties deploymentOid, @NotNull @NotNull com.atlassian.bamboo.specs.api.model.permission.PermissionsProperties defaultEnvironmentPermissions, @NotNull @NotNull List<com.atlassian.bamboo.specs.api.model.permission.EnvironmentPermissionsProperties> environmentPermissions, @NotNull @NotNull RssPermissions rssPermissions)
      Import environments permissions in a bulk.
      Parameters:
      deploymentName - name of the deployment project
      deploymentOid - oid name of the deployment project
      defaultEnvironmentPermissions - default environment permission will be used for all environments if they not specified at #environmentPermissions argument
      environmentPermissions - environment permissions
      rssPermissions - repository permissions