/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include #include namespace Aws { namespace Utils { namespace Json { class JsonValue; class JsonView; } // namespace Json } // namespace Utils namespace OpsWorks { namespace Model { /** *

Describes a deployment of a stack or app.

See Also:

AWS * API Reference

*/ class Deployment { public: AWS_OPSWORKS_API Deployment(); AWS_OPSWORKS_API Deployment(Aws::Utils::Json::JsonView jsonValue); AWS_OPSWORKS_API Deployment& operator=(Aws::Utils::Json::JsonView jsonValue); AWS_OPSWORKS_API Aws::Utils::Json::JsonValue Jsonize() const; /** *

The deployment ID.

*/ inline const Aws::String& GetDeploymentId() const{ return m_deploymentId; } /** *

The deployment ID.

*/ inline bool DeploymentIdHasBeenSet() const { return m_deploymentIdHasBeenSet; } /** *

The deployment ID.

*/ inline void SetDeploymentId(const Aws::String& value) { m_deploymentIdHasBeenSet = true; m_deploymentId = value; } /** *

The deployment ID.

*/ inline void SetDeploymentId(Aws::String&& value) { m_deploymentIdHasBeenSet = true; m_deploymentId = std::move(value); } /** *

The deployment ID.

*/ inline void SetDeploymentId(const char* value) { m_deploymentIdHasBeenSet = true; m_deploymentId.assign(value); } /** *

The deployment ID.

*/ inline Deployment& WithDeploymentId(const Aws::String& value) { SetDeploymentId(value); return *this;} /** *

The deployment ID.

*/ inline Deployment& WithDeploymentId(Aws::String&& value) { SetDeploymentId(std::move(value)); return *this;} /** *

The deployment ID.

*/ inline Deployment& WithDeploymentId(const char* value) { SetDeploymentId(value); return *this;} /** *

The stack ID.

*/ inline const Aws::String& GetStackId() const{ return m_stackId; } /** *

The stack ID.

*/ inline bool StackIdHasBeenSet() const { return m_stackIdHasBeenSet; } /** *

The stack ID.

*/ inline void SetStackId(const Aws::String& value) { m_stackIdHasBeenSet = true; m_stackId = value; } /** *

The stack ID.

*/ inline void SetStackId(Aws::String&& value) { m_stackIdHasBeenSet = true; m_stackId = std::move(value); } /** *

The stack ID.

*/ inline void SetStackId(const char* value) { m_stackIdHasBeenSet = true; m_stackId.assign(value); } /** *

The stack ID.

*/ inline Deployment& WithStackId(const Aws::String& value) { SetStackId(value); return *this;} /** *

The stack ID.

*/ inline Deployment& WithStackId(Aws::String&& value) { SetStackId(std::move(value)); return *this;} /** *

The stack ID.

*/ inline Deployment& WithStackId(const char* value) { SetStackId(value); return *this;} /** *

The app ID.

*/ inline const Aws::String& GetAppId() const{ return m_appId; } /** *

The app ID.

*/ inline bool AppIdHasBeenSet() const { return m_appIdHasBeenSet; } /** *

The app ID.

*/ inline void SetAppId(const Aws::String& value) { m_appIdHasBeenSet = true; m_appId = value; } /** *

The app ID.

*/ inline void SetAppId(Aws::String&& value) { m_appIdHasBeenSet = true; m_appId = std::move(value); } /** *

The app ID.

*/ inline void SetAppId(const char* value) { m_appIdHasBeenSet = true; m_appId.assign(value); } /** *

The app ID.

*/ inline Deployment& WithAppId(const Aws::String& value) { SetAppId(value); return *this;} /** *

The app ID.

*/ inline Deployment& WithAppId(Aws::String&& value) { SetAppId(std::move(value)); return *this;} /** *

The app ID.

*/ inline Deployment& WithAppId(const char* value) { SetAppId(value); return *this;} /** *

Date when the deployment was created.

*/ inline const Aws::String& GetCreatedAt() const{ return m_createdAt; } /** *

Date when the deployment was created.

*/ inline bool CreatedAtHasBeenSet() const { return m_createdAtHasBeenSet; } /** *

Date when the deployment was created.

*/ inline void SetCreatedAt(const Aws::String& value) { m_createdAtHasBeenSet = true; m_createdAt = value; } /** *

Date when the deployment was created.

*/ inline void SetCreatedAt(Aws::String&& value) { m_createdAtHasBeenSet = true; m_createdAt = std::move(value); } /** *

Date when the deployment was created.

*/ inline void SetCreatedAt(const char* value) { m_createdAtHasBeenSet = true; m_createdAt.assign(value); } /** *

Date when the deployment was created.

*/ inline Deployment& WithCreatedAt(const Aws::String& value) { SetCreatedAt(value); return *this;} /** *

Date when the deployment was created.

*/ inline Deployment& WithCreatedAt(Aws::String&& value) { SetCreatedAt(std::move(value)); return *this;} /** *

Date when the deployment was created.

*/ inline Deployment& WithCreatedAt(const char* value) { SetCreatedAt(value); return *this;} /** *

Date when the deployment completed.

*/ inline const Aws::String& GetCompletedAt() const{ return m_completedAt; } /** *

Date when the deployment completed.

*/ inline bool CompletedAtHasBeenSet() const { return m_completedAtHasBeenSet; } /** *

Date when the deployment completed.

*/ inline void SetCompletedAt(const Aws::String& value) { m_completedAtHasBeenSet = true; m_completedAt = value; } /** *

Date when the deployment completed.

*/ inline void SetCompletedAt(Aws::String&& value) { m_completedAtHasBeenSet = true; m_completedAt = std::move(value); } /** *

Date when the deployment completed.

*/ inline void SetCompletedAt(const char* value) { m_completedAtHasBeenSet = true; m_completedAt.assign(value); } /** *

Date when the deployment completed.

*/ inline Deployment& WithCompletedAt(const Aws::String& value) { SetCompletedAt(value); return *this;} /** *

Date when the deployment completed.

*/ inline Deployment& WithCompletedAt(Aws::String&& value) { SetCompletedAt(std::move(value)); return *this;} /** *

Date when the deployment completed.

*/ inline Deployment& WithCompletedAt(const char* value) { SetCompletedAt(value); return *this;} /** *

The deployment duration.

*/ inline int GetDuration() const{ return m_duration; } /** *

The deployment duration.

*/ inline bool DurationHasBeenSet() const { return m_durationHasBeenSet; } /** *

The deployment duration.

*/ inline void SetDuration(int value) { m_durationHasBeenSet = true; m_duration = value; } /** *

The deployment duration.

*/ inline Deployment& WithDuration(int value) { SetDuration(value); return *this;} /** *

The user's IAM ARN.

*/ inline const Aws::String& GetIamUserArn() const{ return m_iamUserArn; } /** *

The user's IAM ARN.

*/ inline bool IamUserArnHasBeenSet() const { return m_iamUserArnHasBeenSet; } /** *

The user's IAM ARN.

*/ inline void SetIamUserArn(const Aws::String& value) { m_iamUserArnHasBeenSet = true; m_iamUserArn = value; } /** *

The user's IAM ARN.

*/ inline void SetIamUserArn(Aws::String&& value) { m_iamUserArnHasBeenSet = true; m_iamUserArn = std::move(value); } /** *

The user's IAM ARN.

*/ inline void SetIamUserArn(const char* value) { m_iamUserArnHasBeenSet = true; m_iamUserArn.assign(value); } /** *

The user's IAM ARN.

*/ inline Deployment& WithIamUserArn(const Aws::String& value) { SetIamUserArn(value); return *this;} /** *

The user's IAM ARN.

*/ inline Deployment& WithIamUserArn(Aws::String&& value) { SetIamUserArn(std::move(value)); return *this;} /** *

The user's IAM ARN.

*/ inline Deployment& WithIamUserArn(const char* value) { SetIamUserArn(value); return *this;} /** *

A user-defined comment.

*/ inline const Aws::String& GetComment() const{ return m_comment; } /** *

A user-defined comment.

*/ inline bool CommentHasBeenSet() const { return m_commentHasBeenSet; } /** *

A user-defined comment.

*/ inline void SetComment(const Aws::String& value) { m_commentHasBeenSet = true; m_comment = value; } /** *

A user-defined comment.

*/ inline void SetComment(Aws::String&& value) { m_commentHasBeenSet = true; m_comment = std::move(value); } /** *

A user-defined comment.

*/ inline void SetComment(const char* value) { m_commentHasBeenSet = true; m_comment.assign(value); } /** *

A user-defined comment.

*/ inline Deployment& WithComment(const Aws::String& value) { SetComment(value); return *this;} /** *

A user-defined comment.

*/ inline Deployment& WithComment(Aws::String&& value) { SetComment(std::move(value)); return *this;} /** *

A user-defined comment.

*/ inline Deployment& WithComment(const char* value) { SetComment(value); return *this;} /** *

Used to specify a stack or deployment command.

*/ inline const DeploymentCommand& GetCommand() const{ return m_command; } /** *

Used to specify a stack or deployment command.

*/ inline bool CommandHasBeenSet() const { return m_commandHasBeenSet; } /** *

Used to specify a stack or deployment command.

*/ inline void SetCommand(const DeploymentCommand& value) { m_commandHasBeenSet = true; m_command = value; } /** *

Used to specify a stack or deployment command.

*/ inline void SetCommand(DeploymentCommand&& value) { m_commandHasBeenSet = true; m_command = std::move(value); } /** *

Used to specify a stack or deployment command.

*/ inline Deployment& WithCommand(const DeploymentCommand& value) { SetCommand(value); return *this;} /** *

Used to specify a stack or deployment command.

*/ inline Deployment& WithCommand(DeploymentCommand&& value) { SetCommand(std::move(value)); return *this;} /** *

The deployment status:

  • running

  • *

    successful

  • failed

*/ inline const Aws::String& GetStatus() const{ return m_status; } /** *

The deployment status:

  • running

  • *

    successful

  • failed

*/ inline bool StatusHasBeenSet() const { return m_statusHasBeenSet; } /** *

The deployment status:

  • running

  • *

    successful

  • failed

*/ inline void SetStatus(const Aws::String& value) { m_statusHasBeenSet = true; m_status = value; } /** *

The deployment status:

  • running

  • *

    successful

  • failed

*/ inline void SetStatus(Aws::String&& value) { m_statusHasBeenSet = true; m_status = std::move(value); } /** *

The deployment status:

  • running

  • *

    successful

  • failed

*/ inline void SetStatus(const char* value) { m_statusHasBeenSet = true; m_status.assign(value); } /** *

The deployment status:

  • running

  • *

    successful

  • failed

*/ inline Deployment& WithStatus(const Aws::String& value) { SetStatus(value); return *this;} /** *

The deployment status:

  • running

  • *

    successful

  • failed

*/ inline Deployment& WithStatus(Aws::String&& value) { SetStatus(std::move(value)); return *this;} /** *

The deployment status:

  • running

  • *

    successful

  • failed

*/ inline Deployment& WithStatus(const char* value) { SetStatus(value); return *this;} /** *

A string that contains user-defined custom JSON. It can be used to override * the corresponding default stack configuration attribute values for stack or to * pass data to recipes. The string should be in the following format:

* "{\"key1\": \"value1\", \"key2\": \"value2\",...}"

For more * information on custom JSON, see Use * Custom JSON to Modify the Stack Configuration Attributes.

*/ inline const Aws::String& GetCustomJson() const{ return m_customJson; } /** *

A string that contains user-defined custom JSON. It can be used to override * the corresponding default stack configuration attribute values for stack or to * pass data to recipes. The string should be in the following format:

* "{\"key1\": \"value1\", \"key2\": \"value2\",...}"

For more * information on custom JSON, see Use * Custom JSON to Modify the Stack Configuration Attributes.

*/ inline bool CustomJsonHasBeenSet() const { return m_customJsonHasBeenSet; } /** *

A string that contains user-defined custom JSON. It can be used to override * the corresponding default stack configuration attribute values for stack or to * pass data to recipes. The string should be in the following format:

* "{\"key1\": \"value1\", \"key2\": \"value2\",...}"

For more * information on custom JSON, see Use * Custom JSON to Modify the Stack Configuration Attributes.

*/ inline void SetCustomJson(const Aws::String& value) { m_customJsonHasBeenSet = true; m_customJson = value; } /** *

A string that contains user-defined custom JSON. It can be used to override * the corresponding default stack configuration attribute values for stack or to * pass data to recipes. The string should be in the following format:

* "{\"key1\": \"value1\", \"key2\": \"value2\",...}"

For more * information on custom JSON, see Use * Custom JSON to Modify the Stack Configuration Attributes.

*/ inline void SetCustomJson(Aws::String&& value) { m_customJsonHasBeenSet = true; m_customJson = std::move(value); } /** *

A string that contains user-defined custom JSON. It can be used to override * the corresponding default stack configuration attribute values for stack or to * pass data to recipes. The string should be in the following format:

* "{\"key1\": \"value1\", \"key2\": \"value2\",...}"

For more * information on custom JSON, see Use * Custom JSON to Modify the Stack Configuration Attributes.

*/ inline void SetCustomJson(const char* value) { m_customJsonHasBeenSet = true; m_customJson.assign(value); } /** *

A string that contains user-defined custom JSON. It can be used to override * the corresponding default stack configuration attribute values for stack or to * pass data to recipes. The string should be in the following format:

* "{\"key1\": \"value1\", \"key2\": \"value2\",...}"

For more * information on custom JSON, see Use * Custom JSON to Modify the Stack Configuration Attributes.

*/ inline Deployment& WithCustomJson(const Aws::String& value) { SetCustomJson(value); return *this;} /** *

A string that contains user-defined custom JSON. It can be used to override * the corresponding default stack configuration attribute values for stack or to * pass data to recipes. The string should be in the following format:

* "{\"key1\": \"value1\", \"key2\": \"value2\",...}"

For more * information on custom JSON, see Use * Custom JSON to Modify the Stack Configuration Attributes.

*/ inline Deployment& WithCustomJson(Aws::String&& value) { SetCustomJson(std::move(value)); return *this;} /** *

A string that contains user-defined custom JSON. It can be used to override * the corresponding default stack configuration attribute values for stack or to * pass data to recipes. The string should be in the following format:

* "{\"key1\": \"value1\", \"key2\": \"value2\",...}"

For more * information on custom JSON, see Use * Custom JSON to Modify the Stack Configuration Attributes.

*/ inline Deployment& WithCustomJson(const char* value) { SetCustomJson(value); return *this;} /** *

The IDs of the target instances.

*/ inline const Aws::Vector& GetInstanceIds() const{ return m_instanceIds; } /** *

The IDs of the target instances.

*/ inline bool InstanceIdsHasBeenSet() const { return m_instanceIdsHasBeenSet; } /** *

The IDs of the target instances.

*/ inline void SetInstanceIds(const Aws::Vector& value) { m_instanceIdsHasBeenSet = true; m_instanceIds = value; } /** *

The IDs of the target instances.

*/ inline void SetInstanceIds(Aws::Vector&& value) { m_instanceIdsHasBeenSet = true; m_instanceIds = std::move(value); } /** *

The IDs of the target instances.

*/ inline Deployment& WithInstanceIds(const Aws::Vector& value) { SetInstanceIds(value); return *this;} /** *

The IDs of the target instances.

*/ inline Deployment& WithInstanceIds(Aws::Vector&& value) { SetInstanceIds(std::move(value)); return *this;} /** *

The IDs of the target instances.

*/ inline Deployment& AddInstanceIds(const Aws::String& value) { m_instanceIdsHasBeenSet = true; m_instanceIds.push_back(value); return *this; } /** *

The IDs of the target instances.

*/ inline Deployment& AddInstanceIds(Aws::String&& value) { m_instanceIdsHasBeenSet = true; m_instanceIds.push_back(std::move(value)); return *this; } /** *

The IDs of the target instances.

*/ inline Deployment& AddInstanceIds(const char* value) { m_instanceIdsHasBeenSet = true; m_instanceIds.push_back(value); return *this; } private: Aws::String m_deploymentId; bool m_deploymentIdHasBeenSet = false; Aws::String m_stackId; bool m_stackIdHasBeenSet = false; Aws::String m_appId; bool m_appIdHasBeenSet = false; Aws::String m_createdAt; bool m_createdAtHasBeenSet = false; Aws::String m_completedAt; bool m_completedAtHasBeenSet = false; int m_duration; bool m_durationHasBeenSet = false; Aws::String m_iamUserArn; bool m_iamUserArnHasBeenSet = false; Aws::String m_comment; bool m_commentHasBeenSet = false; DeploymentCommand m_command; bool m_commandHasBeenSet = false; Aws::String m_status; bool m_statusHasBeenSet = false; Aws::String m_customJson; bool m_customJsonHasBeenSet = false; Aws::Vector m_instanceIds; bool m_instanceIdsHasBeenSet = false; }; } // namespace Model } // namespace OpsWorks } // namespace Aws