// Code generated by smithy-go-codegen DO NOT EDIT. package types import ( smithydocument "github.com/aws/smithy-go/document" "time" ) // Information about the application. type AppSummary struct { // The unique ID of the application. AppId *string // The creation time of the application. CreationTime *time.Time // The description of the application. Description *string // The ID of the application. ImportedAppId *string // The last modified time of the application. LastModified *time.Time // The timestamp of the application's most recent successful replication. LatestReplicationTime *time.Time // Status of the launch configuration. LaunchConfigurationStatus AppLaunchConfigurationStatus // Details about the latest launch of the application. LaunchDetails *LaunchDetails // The launch status of the application. LaunchStatus AppLaunchStatus // A message related to the launch status of the application. LaunchStatusMessage *string // The name of the application. Name *string // Status of the replication configuration. ReplicationConfigurationStatus AppReplicationConfigurationStatus // The replication status of the application. ReplicationStatus AppReplicationStatus // A message related to the replication status of the application. ReplicationStatusMessage *string // The name of the service role in the customer's account used by Server Migration // Service. RoleName *string // Status of the application. Status AppStatus // A message related to the status of the application StatusMessage *string // The number of server groups present in the application. TotalServerGroups *int32 // The number of servers present in the application. TotalServers *int32 noSmithyDocumentSerde } // Configuration for validating an application. type AppValidationConfiguration struct { // The validation strategy. AppValidationStrategy AppValidationStrategy // The name of the configuration. Name *string // The validation parameters. SsmValidationParameters *SSMValidationParameters // The ID of the validation. ValidationId *string noSmithyDocumentSerde } // Output from validating an application. type AppValidationOutput struct { // Output from using SSM to validate the application. SsmOutput *SSMOutput noSmithyDocumentSerde } // Represents a connector. type Connector struct { // The time the connector was associated. AssociatedOn *time.Time // The capabilities of the connector. CapabilityList []ConnectorCapability // The ID of the connector. ConnectorId *string // The IP address of the connector. IpAddress *string // The MAC address of the connector. MacAddress *string // The status of the connector. Status ConnectorStatus // The connector version. Version *string // The ID of the VM manager. VmManagerId *string // The name of the VM manager. VmManagerName *string // The VM management product. VmManagerType VmManagerType noSmithyDocumentSerde } // Details about the latest launch of an application. type LaunchDetails struct { // The latest time that this application was launched successfully. LatestLaunchTime *time.Time // The ID of the latest stack launched for this application. StackId *string // The name of the latest stack launched for this application. StackName *string noSmithyDocumentSerde } // Contains the status of validating an application. type NotificationContext struct { // The status of the validation. Status ValidationStatus // The status message. StatusMessage *string // The ID of the validation. ValidationId *string noSmithyDocumentSerde } // Represents a replication job. type ReplicationJob struct { // The description of the replication job. Description *string // Indicates whether the replication job should produce encrypted AMIs. Encrypted *bool // The time between consecutive replication runs, in hours. Frequency *int32 // The ID of the KMS key for replication jobs that produce encrypted AMIs. This // value can be any of the following: // - KMS key ID // - KMS key alias // - ARN referring to the KMS key ID // - ARN referring to the KMS key alias // If encrypted is enabled but a KMS key ID is not specified, the customer's // default KMS key for Amazon EBS is used. KmsKeyId *string // The ID of the latest Amazon Machine Image (AMI). LatestAmiId *string // The license type to be used for the AMI created by a successful replication run. LicenseType LicenseType // The start time of the next replication run. NextReplicationRunStartTime *time.Time // The number of recent AMIs to keep in the customer's account for a replication // job. By default, the value is set to zero, meaning that all AMIs are kept. NumberOfRecentAmisToKeep *int32 // The ID of the replication job. ReplicationJobId *string // Information about the replication runs. ReplicationRunList []ReplicationRun // The name of the IAM role to be used by Server Migration Service. RoleName *string // Indicates whether to run the replication job one time. RunOnce *bool // The seed replication time. SeedReplicationTime *time.Time // The ID of the server. ServerId *string // The type of server. ServerType ServerType // The state of the replication job. State ReplicationJobState // The description of the current status of the replication job. StatusMessage *string // Information about the VM server. VmServer *VmServer noSmithyDocumentSerde } // Represents a replication run. type ReplicationRun struct { // The ID of the Amazon Machine Image (AMI) from the replication run. AmiId *string // The completion time of the last replication run. CompletedTime *time.Time // The description of the replication run. Description *string // Indicates whether the replication run should produce an encrypted AMI. Encrypted *bool // The ID of the KMS key for replication jobs that produce encrypted AMIs. This // value can be any of the following: // - KMS key ID // - KMS key alias // - ARN referring to the KMS key ID // - ARN referring to the KMS key alias // If encrypted is true but a KMS key ID is not specified, the customer's default // KMS key for Amazon EBS is used. KmsKeyId *string // The ID of the replication run. ReplicationRunId *string // The start time of the next replication run. ScheduledStartTime *time.Time // Details about the current stage of the replication run. StageDetails *ReplicationRunStageDetails // The state of the replication run. State ReplicationRunState // The description of the current status of the replication job. StatusMessage *string // The type of replication run. Type ReplicationRunType noSmithyDocumentSerde } // Details of the current stage of a replication run. type ReplicationRunStageDetails struct { // The current stage of a replication run. Stage *string // The progress of the current stage of a replication run. StageProgress *string noSmithyDocumentSerde } // Location of an Amazon S3 object. type S3Location struct { // The Amazon S3 bucket name. Bucket *string // The Amazon S3 bucket key. Key *string noSmithyDocumentSerde } // Represents a server. type Server struct { // The ID of the replication job. ReplicationJobId *string // Indicates whether the replication job is deleted or failed. ReplicationJobTerminated *bool // The ID of the server. ServerId *string // The type of server. ServerType ServerType // Information about the VM server. VmServer *VmServer noSmithyDocumentSerde } // Logical grouping of servers. type ServerGroup struct { // The name of a server group. Name *string // The ID of a server group. ServerGroupId *string // The servers that belong to a server group. ServerList []Server noSmithyDocumentSerde } // Launch configuration for a server group. type ServerGroupLaunchConfiguration struct { // The launch order of servers in the server group. LaunchOrder *int32 // The ID of the server group with which the launch configuration is associated. ServerGroupId *string // The launch configuration for servers in the server group. ServerLaunchConfigurations []ServerLaunchConfiguration noSmithyDocumentSerde } // Replication configuration for a server group. type ServerGroupReplicationConfiguration struct { // The ID of the server group with which this replication configuration is // associated. ServerGroupId *string // The replication configuration for servers in the server group. ServerReplicationConfigurations []ServerReplicationConfiguration noSmithyDocumentSerde } // Configuration for validating an instance. type ServerGroupValidationConfiguration struct { // The ID of the server group. ServerGroupId *string // The validation configuration. ServerValidationConfigurations []ServerValidationConfiguration noSmithyDocumentSerde } // Launch configuration for a server. type ServerLaunchConfiguration struct { // Indicates whether a publicly accessible IP address is created when launching // the server. AssociatePublicIpAddress *bool // Location of an Amazon S3 object. ConfigureScript *S3Location // The type of configuration script. ConfigureScriptType ScriptType // The name of the Amazon EC2 SSH key to be used for connecting to the launched // server. Ec2KeyName *string // The name of the IAM instance profile. IamInstanceProfileName *string // The instance type to use when launching the server. InstanceType *string // The logical ID of the server in the CloudFormation template. LogicalId *string // The ID of the security group that applies to the launched server. SecurityGroup *string // The ID of the server with which the launch configuration is associated. Server *Server // The ID of the subnet the server should be launched into. Subnet *string // Location of the user-data script to be executed when launching the server. UserData *UserData // The ID of the VPC into which the server should be launched. Vpc *string noSmithyDocumentSerde } // Replication configuration of a server. type ServerReplicationConfiguration struct { // The ID of the server with which this replication configuration is associated. Server *Server // The parameters for replicating the server. ServerReplicationParameters *ServerReplicationParameters noSmithyDocumentSerde } // The replication parameters for replicating a server. type ServerReplicationParameters struct { // Indicates whether the replication job produces encrypted AMIs. Encrypted *bool // The frequency of creating replication jobs for the server. Frequency *int32 // The ID of the KMS key for replication jobs that produce encrypted AMIs. This // value can be any of the following: // - KMS key ID // - KMS key alias // - ARN referring to the KMS key ID // - ARN referring to the KMS key alias // If encrypted is enabled but a KMS key ID is not specified, the customer's // default KMS key for Amazon EBS is used. KmsKeyId *string // The license type for creating a replication job for the server. LicenseType LicenseType // The number of recent AMIs to keep when creating a replication job for this // server. NumberOfRecentAmisToKeep *int32 // Indicates whether to run the replication job one time. RunOnce *bool // The seed time for creating a replication job for the server. SeedTime *time.Time noSmithyDocumentSerde } // Configuration for validating an instance. type ServerValidationConfiguration struct { // The name of the configuration. Name *string // Represents a server. Server *Server // The validation strategy. ServerValidationStrategy ServerValidationStrategy // The validation parameters. UserDataValidationParameters *UserDataValidationParameters // The ID of the validation. ValidationId *string noSmithyDocumentSerde } // Contains output from validating an instance. type ServerValidationOutput struct { // Represents a server. Server *Server noSmithyDocumentSerde } // Contains the location of a validation script. type Source struct { // Location of an Amazon S3 object. S3Location *S3Location noSmithyDocumentSerde } // Contains the location of validation output. type SSMOutput struct { // Location of an Amazon S3 object. S3Location *S3Location noSmithyDocumentSerde } // Contains validation parameters. type SSMValidationParameters struct { // The command to run the validation script. Command *string // The timeout interval, in seconds. ExecutionTimeoutSeconds int32 // The ID of the instance. The instance must have the following tag: // UserForSMSApplicationValidation=true. InstanceId *string // The name of the S3 bucket for output. OutputS3BucketName *string // The type of validation script. ScriptType ScriptType // The location of the validation script. Source *Source noSmithyDocumentSerde } // Key/value pair that can be assigned to an application. type Tag struct { // The tag key. Key *string // The tag value. Value *string noSmithyDocumentSerde } // A script that runs on first launch of an Amazon EC2 instance. Used for // configuring the server during launch. type UserData struct { // Amazon S3 location of the user-data script. S3Location *S3Location noSmithyDocumentSerde } // Contains validation parameters. type UserDataValidationParameters struct { // The type of validation script. ScriptType ScriptType // The location of the validation script. Source *Source noSmithyDocumentSerde } // Contains validation output. type ValidationOutput struct { // The output from validating an application. AppValidationOutput *AppValidationOutput // The latest time that the validation was performed. LatestValidationTime *time.Time // The name of the validation. Name *string // The output from validation an instance. ServerValidationOutput *ServerValidationOutput // The status of the validation. Status ValidationStatus // The status message. StatusMessage *string // The ID of the validation. ValidationId *string noSmithyDocumentSerde } // Represents a VM server. type VmServer struct { // The name of the VM manager. VmManagerName *string // The type of VM management product. VmManagerType VmManagerType // The name of the VM. VmName *string // The VM folder path in the vCenter Server virtual machine inventory tree. VmPath *string // The VM server location. VmServerAddress *VmServerAddress noSmithyDocumentSerde } // Represents a VM server location. type VmServerAddress struct { // The ID of the VM. VmId *string // The ID of the VM manager. VmManagerId *string noSmithyDocumentSerde } type noSmithyDocumentSerde = smithydocument.NoSerde