amazonka-proton-2.0: Amazon Proton SDK.
Copyright(c) 2013-2023 Brendan Hay
LicenseMozilla Public License, v. 2.0.
MaintainerBrendan Hay
Stabilityauto-generated
Portabilitynon-portable (GHC extensions)
Safe HaskellSafe-Inferred
LanguageHaskell2010

Amazonka.Proton.UpdateEnvironment

Description

Update an environment.

If the environment is associated with an environment account connection, don't update or include the protonServiceRoleArn and provisioningRepository parameter to update or connect to an environment account connection.

You can only update to a new environment account connection if that connection was created in the same environment account that the current environment account connection was created in. The account connection must also be associated with the current environment.

If the environment isn't associated with an environment account connection, don't update or include the environmentAccountConnectionId parameter. You can't update or connect the environment to an environment account connection if it isn't already associated with an environment connection.

You can update either the environmentAccountConnectionId or protonServiceRoleArn parameter and value. You can’t update both.

If the environment was configured for Amazon Web Services-managed provisioning, omit the provisioningRepository parameter.

If the environment was configured for self-managed provisioning, specify the provisioningRepository parameter and omit the protonServiceRoleArn and environmentAccountConnectionId parameters.

For more information, see Environments and Provisioning methods in the Proton User Guide.

There are four modes for updating an environment. The deploymentType field defines the mode.

[] NONE

In this mode, a deployment doesn't occur. Only the requested metadata parameters are updated.

[] CURRENT_VERSION

In this mode, the environment is deployed and updated with the new spec that you provide. Only requested parameters are updated. Don’t include minor or major version parameters when you use this deployment-type.

[] MINOR_VERSION

In this mode, the environment is deployed and updated with the published, recommended (latest) minor version of the current major version in use, by default. You can also specify a different minor version of the current major version in use.

[] MAJOR_VERSION

In this mode, the environment is deployed and updated with the published, recommended (latest) major and minor version of the current template, by default. You can also specify a different major version that's higher than the major version in use and a minor version.

Synopsis

Creating a Request

data UpdateEnvironment Source #

See: newUpdateEnvironment smart constructor.

Constructors

UpdateEnvironment' 

Fields

  • codebuildRoleArn :: Maybe Text

    The Amazon Resource Name (ARN) of the IAM service role that allows Proton to provision infrastructure using CodeBuild-based provisioning on your behalf.

  • componentRoleArn :: Maybe Text

    The Amazon Resource Name (ARN) of the IAM service role that Proton uses when provisioning directly defined components in this environment. It determines the scope of infrastructure that a component can provision.

    The environment must have a componentRoleArn to allow directly defined components to be associated with the environment.

    For more information about components, see Proton components in the Proton User Guide.

  • description :: Maybe (Sensitive Text)

    A description of the environment update.

  • environmentAccountConnectionId :: Maybe Text

    The ID of the environment account connection.

    You can only update to a new environment account connection if it was created in the same environment account that the current environment account connection was created in and is associated with the current environment.

  • protonServiceRoleArn :: Maybe Text

    The Amazon Resource Name (ARN) of the Proton service role that allows Proton to make API calls to other services your behalf.

  • provisioningRepository :: Maybe RepositoryBranchInput

    The linked repository that you use to host your rendered infrastructure templates for self-managed provisioning. A linked repository is a repository that has been registered with Proton. For more information, see CreateRepository.

  • spec :: Maybe (Sensitive Text)

    The formatted specification that defines the update.

  • templateMajorVersion :: Maybe Text

    The major version of the environment to update.

  • templateMinorVersion :: Maybe Text

    The minor version of the environment to update.

  • deploymentType :: DeploymentUpdateType

    There are four modes for updating an environment. The deploymentType field defines the mode.

    [] NONE

    In this mode, a deployment doesn't occur. Only the requested metadata parameters are updated.

    [] CURRENT_VERSION

    In this mode, the environment is deployed and updated with the new spec that you provide. Only requested parameters are updated. Don’t include major or minor version parameters when you use this deployment-type.

    [] MINOR_VERSION

    In this mode, the environment is deployed and updated with the published, recommended (latest) minor version of the current major version in use, by default. You can also specify a different minor version of the current major version in use.

    [] MAJOR_VERSION

    In this mode, the environment is deployed and updated with the published, recommended (latest) major and minor version of the current template, by default. You can also specify a different major version that is higher than the major version in use and a minor version (optional).

  • name :: Text

    The name of the environment to update.

Instances

Instances details
ToJSON UpdateEnvironment Source # 
Instance details

Defined in Amazonka.Proton.UpdateEnvironment

ToHeaders UpdateEnvironment Source # 
Instance details

Defined in Amazonka.Proton.UpdateEnvironment

ToPath UpdateEnvironment Source # 
Instance details

Defined in Amazonka.Proton.UpdateEnvironment

ToQuery UpdateEnvironment Source # 
Instance details

Defined in Amazonka.Proton.UpdateEnvironment

AWSRequest UpdateEnvironment Source # 
Instance details

Defined in Amazonka.Proton.UpdateEnvironment

Associated Types

type AWSResponse UpdateEnvironment #

Generic UpdateEnvironment Source # 
Instance details

Defined in Amazonka.Proton.UpdateEnvironment

Associated Types

type Rep UpdateEnvironment :: Type -> Type #

Show UpdateEnvironment Source # 
Instance details

Defined in Amazonka.Proton.UpdateEnvironment

NFData UpdateEnvironment Source # 
Instance details

Defined in Amazonka.Proton.UpdateEnvironment

Methods

rnf :: UpdateEnvironment -> () #

Eq UpdateEnvironment Source # 
Instance details

Defined in Amazonka.Proton.UpdateEnvironment

Hashable UpdateEnvironment Source # 
Instance details

Defined in Amazonka.Proton.UpdateEnvironment

type AWSResponse UpdateEnvironment Source # 
Instance details

Defined in Amazonka.Proton.UpdateEnvironment

type Rep UpdateEnvironment Source # 
Instance details

Defined in Amazonka.Proton.UpdateEnvironment

type Rep UpdateEnvironment = D1 ('MetaData "UpdateEnvironment" "Amazonka.Proton.UpdateEnvironment" "amazonka-proton-2.0-LlJ92rKPVfGGXHsLqGeI74" 'False) (C1 ('MetaCons "UpdateEnvironment'" 'PrefixI 'True) (((S1 ('MetaSel ('Just "codebuildRoleArn") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Text)) :*: S1 ('MetaSel ('Just "componentRoleArn") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Text))) :*: (S1 ('MetaSel ('Just "description") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe (Sensitive Text))) :*: (S1 ('MetaSel ('Just "environmentAccountConnectionId") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Text)) :*: S1 ('MetaSel ('Just "protonServiceRoleArn") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Text))))) :*: ((S1 ('MetaSel ('Just "provisioningRepository") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe RepositoryBranchInput)) :*: (S1 ('MetaSel ('Just "spec") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe (Sensitive Text))) :*: S1 ('MetaSel ('Just "templateMajorVersion") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Text)))) :*: (S1 ('MetaSel ('Just "templateMinorVersion") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Text)) :*: (S1 ('MetaSel ('Just "deploymentType") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 DeploymentUpdateType) :*: S1 ('MetaSel ('Just "name") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Text))))))

newUpdateEnvironment Source #

Create a value of UpdateEnvironment with all optional fields omitted.

Use generic-lens or optics to modify other optional fields.

The following record fields are available, with the corresponding lenses provided for backwards compatibility:

UpdateEnvironment, updateEnvironment_codebuildRoleArn - The Amazon Resource Name (ARN) of the IAM service role that allows Proton to provision infrastructure using CodeBuild-based provisioning on your behalf.

UpdateEnvironment, updateEnvironment_componentRoleArn - The Amazon Resource Name (ARN) of the IAM service role that Proton uses when provisioning directly defined components in this environment. It determines the scope of infrastructure that a component can provision.

The environment must have a componentRoleArn to allow directly defined components to be associated with the environment.

For more information about components, see Proton components in the Proton User Guide.

UpdateEnvironment, updateEnvironment_description - A description of the environment update.

UpdateEnvironment, updateEnvironment_environmentAccountConnectionId - The ID of the environment account connection.

You can only update to a new environment account connection if it was created in the same environment account that the current environment account connection was created in and is associated with the current environment.

UpdateEnvironment, updateEnvironment_protonServiceRoleArn - The Amazon Resource Name (ARN) of the Proton service role that allows Proton to make API calls to other services your behalf.

UpdateEnvironment, updateEnvironment_provisioningRepository - The linked repository that you use to host your rendered infrastructure templates for self-managed provisioning. A linked repository is a repository that has been registered with Proton. For more information, see CreateRepository.

UpdateEnvironment, updateEnvironment_spec - The formatted specification that defines the update.

UpdateEnvironment, updateEnvironment_templateMajorVersion - The major version of the environment to update.

UpdateEnvironment, updateEnvironment_templateMinorVersion - The minor version of the environment to update.

$sel:deploymentType:UpdateEnvironment', updateEnvironment_deploymentType - There are four modes for updating an environment. The deploymentType field defines the mode.

[] NONE

In this mode, a deployment doesn't occur. Only the requested metadata parameters are updated.

[] CURRENT_VERSION

In this mode, the environment is deployed and updated with the new spec that you provide. Only requested parameters are updated. Don’t include major or minor version parameters when you use this deployment-type.

[] MINOR_VERSION

In this mode, the environment is deployed and updated with the published, recommended (latest) minor version of the current major version in use, by default. You can also specify a different minor version of the current major version in use.

[] MAJOR_VERSION

In this mode, the environment is deployed and updated with the published, recommended (latest) major and minor version of the current template, by default. You can also specify a different major version that is higher than the major version in use and a minor version (optional).

UpdateEnvironment, updateEnvironment_name - The name of the environment to update.

Request Lenses

updateEnvironment_codebuildRoleArn :: Lens' UpdateEnvironment (Maybe Text) Source #

The Amazon Resource Name (ARN) of the IAM service role that allows Proton to provision infrastructure using CodeBuild-based provisioning on your behalf.

updateEnvironment_componentRoleArn :: Lens' UpdateEnvironment (Maybe Text) Source #

The Amazon Resource Name (ARN) of the IAM service role that Proton uses when provisioning directly defined components in this environment. It determines the scope of infrastructure that a component can provision.

The environment must have a componentRoleArn to allow directly defined components to be associated with the environment.

For more information about components, see Proton components in the Proton User Guide.

updateEnvironment_description :: Lens' UpdateEnvironment (Maybe Text) Source #

A description of the environment update.

updateEnvironment_environmentAccountConnectionId :: Lens' UpdateEnvironment (Maybe Text) Source #

The ID of the environment account connection.

You can only update to a new environment account connection if it was created in the same environment account that the current environment account connection was created in and is associated with the current environment.

updateEnvironment_protonServiceRoleArn :: Lens' UpdateEnvironment (Maybe Text) Source #

The Amazon Resource Name (ARN) of the Proton service role that allows Proton to make API calls to other services your behalf.

updateEnvironment_provisioningRepository :: Lens' UpdateEnvironment (Maybe RepositoryBranchInput) Source #

The linked repository that you use to host your rendered infrastructure templates for self-managed provisioning. A linked repository is a repository that has been registered with Proton. For more information, see CreateRepository.

updateEnvironment_spec :: Lens' UpdateEnvironment (Maybe Text) Source #

The formatted specification that defines the update.

updateEnvironment_templateMajorVersion :: Lens' UpdateEnvironment (Maybe Text) Source #

The major version of the environment to update.

updateEnvironment_templateMinorVersion :: Lens' UpdateEnvironment (Maybe Text) Source #

The minor version of the environment to update.

updateEnvironment_deploymentType :: Lens' UpdateEnvironment DeploymentUpdateType Source #

There are four modes for updating an environment. The deploymentType field defines the mode.

[] NONE

In this mode, a deployment doesn't occur. Only the requested metadata parameters are updated.

[] CURRENT_VERSION

In this mode, the environment is deployed and updated with the new spec that you provide. Only requested parameters are updated. Don’t include major or minor version parameters when you use this deployment-type.

[] MINOR_VERSION

In this mode, the environment is deployed and updated with the published, recommended (latest) minor version of the current major version in use, by default. You can also specify a different minor version of the current major version in use.

[] MAJOR_VERSION

In this mode, the environment is deployed and updated with the published, recommended (latest) major and minor version of the current template, by default. You can also specify a different major version that is higher than the major version in use and a minor version (optional).

updateEnvironment_name :: Lens' UpdateEnvironment Text Source #

The name of the environment to update.

Destructuring the Response

data UpdateEnvironmentResponse Source #

See: newUpdateEnvironmentResponse smart constructor.

Constructors

UpdateEnvironmentResponse' 

Fields

Instances

Instances details
Generic UpdateEnvironmentResponse Source # 
Instance details

Defined in Amazonka.Proton.UpdateEnvironment

Associated Types

type Rep UpdateEnvironmentResponse :: Type -> Type #

Show UpdateEnvironmentResponse Source # 
Instance details

Defined in Amazonka.Proton.UpdateEnvironment

NFData UpdateEnvironmentResponse Source # 
Instance details

Defined in Amazonka.Proton.UpdateEnvironment

Eq UpdateEnvironmentResponse Source # 
Instance details

Defined in Amazonka.Proton.UpdateEnvironment

type Rep UpdateEnvironmentResponse Source # 
Instance details

Defined in Amazonka.Proton.UpdateEnvironment

type Rep UpdateEnvironmentResponse = D1 ('MetaData "UpdateEnvironmentResponse" "Amazonka.Proton.UpdateEnvironment" "amazonka-proton-2.0-LlJ92rKPVfGGXHsLqGeI74" 'False) (C1 ('MetaCons "UpdateEnvironmentResponse'" 'PrefixI 'True) (S1 ('MetaSel ('Just "httpStatus") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Int) :*: S1 ('MetaSel ('Just "environment") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Environment)))

newUpdateEnvironmentResponse Source #

Create a value of UpdateEnvironmentResponse with all optional fields omitted.

Use generic-lens or optics to modify other optional fields.

The following record fields are available, with the corresponding lenses provided for backwards compatibility:

$sel:httpStatus:UpdateEnvironmentResponse', updateEnvironmentResponse_httpStatus - The response's http status code.

$sel:environment:UpdateEnvironmentResponse', updateEnvironmentResponse_environment - The environment detail data that's returned by Proton.

Response Lenses

updateEnvironmentResponse_environment :: Lens' UpdateEnvironmentResponse Environment Source #

The environment detail data that's returned by Proton.