CustomDbEngineVersion

class CustomDbEngineVersion : KotlinCustomResource

Provides an custom engine version (CEV) resource for Amazon RDS Custom. For additional information, see Working with CEVs for RDS Custom for Oracle and Working with CEVs for RDS Custom for SQL Server in the the RDS User Guide.

Example Usage

RDS Custom for Oracle Usage

package 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.List;
import java.util.ArrayList;
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 exampleKey = new Key("exampleKey", 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(exampleKey.arn())
.manifest("""
{
"databaseInstallationFileNames":["V982063-01.zip"]
}
""")
.tags(Map.ofEntries(
Map.entry("Name", "example"),
Map.entry("Key", "value")
))
.build());
}
}

RDS Custom for Oracle External Manifest Usage

package 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.List;
import java.util.ArrayList;
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 exampleKey = new Key("exampleKey", 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(exampleKey.arn())
.filename("manifest_1915_GI.json")
.manifestHash(computeFileBase64Sha256(manifest_1915_GI.json()))
.tags(Map.ofEntries(
Map.entry("Name", "example"),
Map.entry("Key", "value")
))
.build());
}
}

RDS Custom for SQL Server Usage

package 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.List;
import java.util.ArrayList;
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 test = new CustomDbEngineVersion("test", CustomDbEngineVersionArgs.builder()
.engine("custom-sqlserver-se")
.engineVersion("15.00.4249.2.cev-1")
.sourceImageId("ami-0aa12345678a12ab1")
.build());
}
}

RDS Custom for SQL Server Usage with AMI from another region

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.List;
import java.util.ArrayList;
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()
.description("A copy of ami-xxxxxxxx")
.sourceAmiId("ami-xxxxxxxx")
.sourceAmiRegion("us-east-1")
.build());
var test = new CustomDbEngineVersion("test", CustomDbEngineVersionArgs.builder()
.engine("custom-sqlserver-se")
.engineVersion("15.00.4249.2.cev-1")
.sourceImageId(example.id())
.build());
}
}

Import

Using pulumi import, import custom engine versions for Amazon RDS custom using the engine and engine_version separated by a colon (:). For example:

$ pulumi import aws:rds/customDbEngineVersion:CustomDbEngineVersion example custom-oracle-ee-cdb:19.cdb_cev1

Properties

Link copied to clipboard
val arn: Output<String>

The Amazon Resource Name (ARN) for the custom engine version.

Link copied to clipboard
val createTime: Output<String>

The date and time that the CEV was created.

Link copied to clipboard

The name of the Amazon S3 bucket that contains the database installation files.

Link copied to clipboard

The prefix for the Amazon S3 bucket that contains the database installation files.

Link copied to clipboard

The name of the DB parameter group family for the CEV.

Link copied to clipboard
val description: Output<String>?

The description of the CEV.

Link copied to clipboard
val engine: Output<String>

The name of the database engine. Valid values are custom-oracle*, custom-sqlserver*.

Link copied to clipboard
val engineVersion: Output<String>

The version of the database engine.

Link copied to clipboard
val filename: Output<String>?

The name of the manifest file within the local filesystem. Conflicts with manifest.

Link copied to clipboard
val id: Output<String>
Link copied to clipboard
val imageId: Output<String>

The ID of the AMI that was created with the CEV.

Link copied to clipboard
val kmsKeyId: Output<String>

The ARN of the AWS KMS key that is used to encrypt the database installation files. Required for RDS Custom for Oracle.

Link copied to clipboard

The major version of the database engine.

Link copied to clipboard
val manifest: Output<String>?

The manifest file, in JSON format, that contains the list of database installation files. Conflicts with filename.

Link copied to clipboard

The returned manifest file, in JSON format, service generated and often different from input manifest.

Link copied to clipboard
val manifestHash: Output<String>?

Used to trigger 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.

Link copied to clipboard
val pulumiChildResources: Set<KotlinResource>
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
val sourceImageId: Output<String>?

The 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.

Link copied to clipboard
val status: Output<String>

The status of the CEV. Valid values are available, inactive, inactive-except-restore.

Link copied to clipboard
val tags: Output<Map<String, String>>?

A mapping of tags to assign to the resource. If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.

Link copied to clipboard
val tagsAll: Output<Map<String, String>>

A map of tags assigned to the resource, including those inherited from the provider default_tags configuration block.

Link copied to clipboard
val urn: Output<String>