Package com.pulumi.aws.rds
Class CustomDbEngineVersion
- java.lang.Object
-
- com.pulumi.resources.Resource
-
- com.pulumi.resources.CustomResource
-
- com.pulumi.aws.rds.CustomDbEngineVersion
-
public class CustomDbEngineVersion extends com.pulumi.resources.CustomResourceProvides an custom engine version (CEV) resource for Amazon RDS Custom. For additional information, see [Working with CEVs for RDS Custom for Oracle](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/custom-cev.html) and [Working with CEVs for RDS Custom for SQL Server](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/custom-cev-sqlserver.html) in the the [RDS User Guide](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Welcome.html). ## Example Usage ### RDS Custom for Oracle Usage
### RDS Custom for Oracle External Manifest Usagepackage generated_program; import com.pulumi.Context; import com.pulumi.Pulumi; import com.pulumi.core.Output; import com.pulumi.aws.kms.Key; import com.pulumi.aws.kms.KeyArgs; import com.pulumi.aws.rds.CustomDbEngineVersion; import com.pulumi.aws.rds.CustomDbEngineVersionArgs; import java.util.ArrayList; import java.util.Arrays; import java.util.Map; import java.io.File; import java.nio.file.Files; import java.nio.file.Paths; public class App { public static void main(String[] args) { Pulumi.run(App::stack); } public static void stack(Context ctx) { var example = new Key("example", KeyArgs.builder() .description("KMS symmetric key for RDS Custom for Oracle") .build()); var exampleCustomDbEngineVersion = new CustomDbEngineVersion("exampleCustomDbEngineVersion", CustomDbEngineVersionArgs.builder() .databaseInstallationFilesS3BucketName("DOC-EXAMPLE-BUCKET") .databaseInstallationFilesS3Prefix("1915_GI/") .engine("custom-oracle-ee-cdb") .engineVersion("19.cdb_cev1") .kmsKeyId(example.arn()) .manifest(""" { \t\"databaseInstallationFileNames\":[\"V982063-01.zip\"] } """) .tags(Map.ofEntries( Map.entry("Name", "example"), Map.entry("Key", "value") )) .build()); } }
### RDS Custom for SQL Server Usagepackage generated_program; import com.pulumi.Context; import com.pulumi.Pulumi; import com.pulumi.core.Output; import com.pulumi.aws.kms.Key; import com.pulumi.aws.kms.KeyArgs; import com.pulumi.aws.rds.CustomDbEngineVersion; import com.pulumi.aws.rds.CustomDbEngineVersionArgs; import com.pulumi.std.StdFunctions; import com.pulumi.std.inputs.Filebase64sha256Args; import java.util.ArrayList; import java.util.Arrays; import java.util.Map; import java.io.File; import java.nio.file.Files; import java.nio.file.Paths; public class App { public static void main(String[] args) { Pulumi.run(App::stack); } public static void stack(Context ctx) { var example = new Key("example", KeyArgs.builder() .description("KMS symmetric key for RDS Custom for Oracle") .build()); var exampleCustomDbEngineVersion = new CustomDbEngineVersion("exampleCustomDbEngineVersion", CustomDbEngineVersionArgs.builder() .databaseInstallationFilesS3BucketName("DOC-EXAMPLE-BUCKET") .databaseInstallationFilesS3Prefix("1915_GI/") .engine("custom-oracle-ee-cdb") .engineVersion("19.cdb_cev1") .kmsKeyId(example.arn()) .filename("manifest_1915_GI.json") .manifestHash(StdFunctions.filebase64sha256(Filebase64sha256Args.builder() .input(json) .build()).result()) .tags(Map.ofEntries( Map.entry("Name", "example"), Map.entry("Key", "value") )) .build()); } }
### RDS Custom for SQL Server Usage with AMI from another regionpackage generated_program; import com.pulumi.Context; import com.pulumi.Pulumi; import com.pulumi.core.Output; import com.pulumi.aws.rds.CustomDbEngineVersion; import com.pulumi.aws.rds.CustomDbEngineVersionArgs; import java.util.ArrayList; import java.util.Arrays; import java.util.Map; import java.io.File; import java.nio.file.Files; import java.nio.file.Paths; public class App { public static void main(String[] args) { Pulumi.run(App::stack); } public static void stack(Context ctx) { // CEV creation requires an AMI owned by the operator var test = new CustomDbEngineVersion("test", CustomDbEngineVersionArgs.builder() .engine("custom-sqlserver-se") .engineVersion("15.00.4249.2.cev-1") .sourceImageId("ami-0aa12345678a12ab1") .build()); } }
## Import Using `pulumi import`, import custom engine versions for Amazon RDS custom using the `engine` and `engineVersion` separated by a colon (`:`). For example: ```sh $ pulumi import aws:rds/customDbEngineVersion:CustomDbEngineVersion example custom-oracle-ee-cdb:19.cdb_cev1 ```package generated_program; import com.pulumi.Context; import com.pulumi.Pulumi; import com.pulumi.core.Output; import com.pulumi.aws.ec2.AmiCopy; import com.pulumi.aws.ec2.AmiCopyArgs; import com.pulumi.aws.rds.CustomDbEngineVersion; import com.pulumi.aws.rds.CustomDbEngineVersionArgs; import java.util.ArrayList; import java.util.Arrays; import java.util.Map; import java.io.File; import java.nio.file.Files; import java.nio.file.Paths; public class App { public static void main(String[] args) { Pulumi.run(App::stack); } public static void stack(Context ctx) { var example = new AmiCopy("example", AmiCopyArgs.builder() .name("sqlserver-se-2019-15.00.4249.2") .description("A copy of ami-xxxxxxxx") .sourceAmiId("ami-xxxxxxxx") .sourceAmiRegion("us-east-1") .build()); // CEV creation requires an AMI owned by the operator var test = new CustomDbEngineVersion("test", CustomDbEngineVersionArgs.builder() .engine("custom-sqlserver-se") .engineVersion("15.00.4249.2.cev-1") .sourceImageId(example.id()) .build()); } }
-
-
Constructor Summary
Constructors Constructor Description CustomDbEngineVersion(java.lang.String name)CustomDbEngineVersion(java.lang.String name, CustomDbEngineVersionArgs args)CustomDbEngineVersion(java.lang.String name, CustomDbEngineVersionArgs args, com.pulumi.resources.CustomResourceOptions options)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description com.pulumi.core.Output<java.lang.String>arn()com.pulumi.core.Output<java.lang.String>createTime()com.pulumi.core.Output<java.util.Optional<java.lang.String>>databaseInstallationFilesS3BucketName()com.pulumi.core.Output<java.util.Optional<java.lang.String>>databaseInstallationFilesS3Prefix()com.pulumi.core.Output<java.lang.String>dbParameterGroupFamily()com.pulumi.core.Output<java.util.Optional<java.lang.String>>description()com.pulumi.core.Output<java.lang.String>engine()com.pulumi.core.Output<java.lang.String>engineVersion()com.pulumi.core.Output<java.util.Optional<java.lang.String>>filename()static CustomDbEngineVersionget(java.lang.String name, com.pulumi.core.Output<java.lang.String> id, CustomDbEngineVersionState state, com.pulumi.resources.CustomResourceOptions options)Get an existing Host resource's state with the given name, ID, and optional extra properties used to qualify the lookup.com.pulumi.core.Output<java.lang.String>imageId()com.pulumi.core.Output<java.lang.String>kmsKeyId()com.pulumi.core.Output<java.lang.String>majorEngineVersion()com.pulumi.core.Output<java.util.Optional<java.lang.String>>manifest()com.pulumi.core.Output<java.lang.String>manifestComputed()com.pulumi.core.Output<java.util.Optional<java.lang.String>>manifestHash()com.pulumi.core.Output<java.lang.String>region()com.pulumi.core.Output<java.util.Optional<java.lang.String>>sourceImageId()com.pulumi.core.Output<java.lang.String>status()com.pulumi.core.Output<java.util.Optional<java.util.Map<java.lang.String,java.lang.String>>>tags()com.pulumi.core.Output<java.util.Map<java.lang.String,java.lang.String>>tagsAll()
-
-
-
Constructor Detail
-
CustomDbEngineVersion
public CustomDbEngineVersion(java.lang.String name)
- Parameters:
name- The _unique_ name of the resulting resource.
-
CustomDbEngineVersion
public CustomDbEngineVersion(java.lang.String name, CustomDbEngineVersionArgs args)- Parameters:
name- The _unique_ name of the resulting resource.args- The arguments to use to populate this resource's properties.
-
CustomDbEngineVersion
public CustomDbEngineVersion(java.lang.String name, CustomDbEngineVersionArgs args, @Nullable com.pulumi.resources.CustomResourceOptions options)- Parameters:
name- The _unique_ name of the resulting resource.args- The arguments to use to populate this resource's properties.options- A bag of options that control this resource's behavior.
-
-
Method Detail
-
arn
public com.pulumi.core.Output<java.lang.String> arn()
- Returns:
- ARN for the custom engine version.
-
createTime
public com.pulumi.core.Output<java.lang.String> createTime()
- Returns:
- Date and time that the CEV was created.
-
databaseInstallationFilesS3BucketName
public com.pulumi.core.Output<java.util.Optional<java.lang.String>> databaseInstallationFilesS3BucketName()
- Returns:
- Name of the Amazon S3 bucket that contains the database installation files.
-
databaseInstallationFilesS3Prefix
public com.pulumi.core.Output<java.util.Optional<java.lang.String>> databaseInstallationFilesS3Prefix()
- Returns:
- Prefix for the Amazon S3 bucket that contains the database installation files.
-
dbParameterGroupFamily
public com.pulumi.core.Output<java.lang.String> dbParameterGroupFamily()
- Returns:
- Name of the DB parameter group family for the CEV.
-
description
public com.pulumi.core.Output<java.util.Optional<java.lang.String>> description()
- Returns:
- Description of the CEV.
-
engine
public com.pulumi.core.Output<java.lang.String> engine()
- Returns:
- Name of the database engine. Valid values are `custom-oracle*`, `custom-sqlserver*`.
-
engineVersion
public com.pulumi.core.Output<java.lang.String> engineVersion()
- Returns:
- Version of the database engine.
-
filename
public com.pulumi.core.Output<java.util.Optional<java.lang.String>> filename()
- Returns:
- Name of the manifest file within the local filesystem. Conflicts with `manifest`.
-
imageId
public com.pulumi.core.Output<java.lang.String> imageId()
- Returns:
- ID of the AMI that was created with the CEV.
-
kmsKeyId
public com.pulumi.core.Output<java.lang.String> kmsKeyId()
- Returns:
- ARN of the AWS KMS key that is used to encrypt the database installation files. Required for RDS Custom for Oracle.
-
majorEngineVersion
public com.pulumi.core.Output<java.lang.String> majorEngineVersion()
- Returns:
- Major version of the database engine.
-
manifest
public com.pulumi.core.Output<java.util.Optional<java.lang.String>> manifest()
- Returns:
- Manifest file, in JSON format, that contains the list of database installation files. Conflicts with `filename`.
-
manifestComputed
public com.pulumi.core.Output<java.lang.String> manifestComputed()
- Returns:
- Returned manifest file, in JSON format, service generated and often different from input `manifest`.
-
manifestHash
public com.pulumi.core.Output<java.util.Optional<java.lang.String>> manifestHash()
- Returns:
- Triggers updates. Must be set to a base64-encoded SHA256 hash of the manifest source specified with `filename`. The usual way to set this is filebase64sha256("manifest.json") where "manifest.json" is the local filename of the manifest source.
-
region
public com.pulumi.core.Output<java.lang.String> region()
- Returns:
- Region where this resource will be [managed](https://docs.aws.amazon.com/general/latest/gr/rande.html#regional-endpoints). Defaults to the Region set in the provider configuration.
-
sourceImageId
public com.pulumi.core.Output<java.util.Optional<java.lang.String>> sourceImageId()
- Returns:
- ID of the AMI to create the CEV from. Required for RDS Custom for SQL Server. For RDS Custom for Oracle, you can specify an AMI ID that was used in a different Oracle CEV.
-
status
public com.pulumi.core.Output<java.lang.String> status()
- Returns:
- Status of the CEV. Valid values are `available`, `inactive`, `inactive-except-restore`.
-
tags
public com.pulumi.core.Output<java.util.Optional<java.util.Map<java.lang.String,java.lang.String>>> tags()
- Returns:
- Map of tags to assign to the resource. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
-
tagsAll
public com.pulumi.core.Output<java.util.Map<java.lang.String,java.lang.String>> tagsAll()
- Returns:
- Map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
-
get
public static CustomDbEngineVersion get(java.lang.String name, com.pulumi.core.Output<java.lang.String> id, @Nullable CustomDbEngineVersionState state, @Nullable com.pulumi.resources.CustomResourceOptions options)
Get an existing Host resource's state with the given name, ID, and optional extra properties used to qualify the lookup.- Parameters:
name- The _unique_ name of the resulting resource.id- The _unique_ provider ID of the resource to lookup.state-options- Optional settings to control the behavior of the CustomResource.
-
-