MIGRATIONHUB

AssociateCreatedArtifact

valid {
    input.Body.ProgressUpdateStream == STRING
    input.Body.MigrationTaskName == STRING
    input.Body.CreatedArtifact.Name == STRING
    input.Body.CreatedArtifact.Description == STRING
    input.Body.DryRun == BOOLEAN
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

AssociateDiscoveredResource

valid {
    input.Body.ProgressUpdateStream == STRING
    input.Body.MigrationTaskName == STRING
    input.Body.DiscoveredResource.ConfigurationId == STRING
    input.Body.DiscoveredResource.Description == STRING
    input.Body.DryRun == BOOLEAN
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

CreateProgressUpdateStream

valid {
    input.Body.ProgressUpdateStreamName == STRING
    input.Body.DryRun == BOOLEAN
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

DeleteProgressUpdateStream

valid {
    input.Body.ProgressUpdateStreamName == STRING
    input.Body.DryRun == BOOLEAN
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

DescribeApplicationState

valid {
    input.Body.ApplicationId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

DescribeMigrationTask

valid {
    input.Body.ProgressUpdateStream == STRING
    input.Body.MigrationTaskName == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

DisassociateCreatedArtifact

valid {
    input.Body.ProgressUpdateStream == STRING
    input.Body.MigrationTaskName == STRING
    input.Body.CreatedArtifactName == STRING
    input.Body.DryRun == BOOLEAN
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

DisassociateDiscoveredResource

valid {
    input.Body.ProgressUpdateStream == STRING
    input.Body.MigrationTaskName == STRING
    input.Body.ConfigurationId == STRING
    input.Body.DryRun == BOOLEAN
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

ImportMigrationTask

valid {
    input.Body.ProgressUpdateStream == STRING
    input.Body.MigrationTaskName == STRING
    input.Body.DryRun == BOOLEAN
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

ListApplicationStates

valid {
    input.Body.ApplicationIds[_] == STRING
    input.Body.NextToken == STRING
    input.Body.MaxResults == INTEGER
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

ListCreatedArtifacts

valid {
    input.Body.ProgressUpdateStream == STRING
    input.Body.MigrationTaskName == STRING
    input.Body.NextToken == STRING
    input.Body.MaxResults == INTEGER
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

ListDiscoveredResources

valid {
    input.Body.ProgressUpdateStream == STRING
    input.Body.MigrationTaskName == STRING
    input.Body.NextToken == STRING
    input.Body.MaxResults == INTEGER
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

ListMigrationTasks

valid {
    input.Body.NextToken == STRING
    input.Body.MaxResults == INTEGER
    input.Body.ResourceName == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

ListProgressUpdateStreams

valid {
    input.Body.NextToken == STRING
    input.Body.MaxResults == INTEGER
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

NotifyApplicationState

enum_ApplicationStatus := [ "NOT_STARTED", "IN_PROGRESS", "COMPLETED" ]

valid {
    input.Body.ApplicationId == STRING
    input.Body.Status == enum_ApplicationStatus[_]
    input.Body.UpdateDateTime == TIMESTAMP
    input.Body.DryRun == BOOLEAN
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

NotifyMigrationTaskState

enum_Status := [ "NOT_STARTED", "IN_PROGRESS", "FAILED", "COMPLETED" ]

valid {
    input.Body.ProgressUpdateStream == STRING
    input.Body.MigrationTaskName == STRING
    input.Body.Task.Status == enum_Status[_]
    input.Body.Task.StatusDetail == STRING
    input.Body.Task.ProgressPercent == INTEGER
    input.Body.UpdateDateTime == TIMESTAMP
    input.Body.NextUpdateSeconds == INTEGER
    input.Body.DryRun == BOOLEAN
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

PutResourceAttributes

enum_ResourceAttributeType := [ "IPV4_ADDRESS", "IPV6_ADDRESS", "MAC_ADDRESS", "FQDN", "VM_MANAGER_ID", "VM_MANAGED_OBJECT_REFERENCE", "VM_NAME", "VM_PATH", "BIOS_ID", "MOTHERBOARD_SERIAL_NUMBER" ]

valid {
    input.Body.ProgressUpdateStream == STRING
    input.Body.MigrationTaskName == STRING
    input.Body.ResourceAttributeList[_].Type == enum_ResourceAttributeType[_]
    input.Body.ResourceAttributeList[_].Value == STRING
    input.Body.DryRun == BOOLEAN
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}