customdb_engine_versions
Creates, updates, deletes or gets a customdb_engine_version
resource or lists customdb_engine_versions
in a region
Overview
Name | customdb_engine_versions |
Type | Resource |
Description | Creates a custom DB engine version (CEV). |
Id | aws.rds.customdb_engine_versions |
Fields
Name | Datatype | Description |
---|---|---|
database_installation_files_s3_bucket_name | string | The name of an Amazon S3 bucket that contains database installation files for your CEV. For example, a valid bucket name is my-custom-installation-files . |
database_installation_files_s3_prefix | string | The Amazon S3 directory that contains the database installation files for your CEV. For example, a valid bucket name is 123456789012/cev1 . If this setting isn't specified, no prefix is assumed. |
description | string | An optional description of your CEV. |
engine | string | The database engine to use for your custom engine version (CEV). Valid values: + custom-oracle-ee + custom-oracle-ee-cdb |
engine_version | string | The name of your CEV. The name format is major version.customized_string . For example, a valid CEV name is 19.my_cev1 . This setting is required for RDS Custom for Oracle, but optional for Amazon RDS. The combination of Engine and EngineVersion is unique per customer per Region.*Constraints:* Minimum length is 1. Maximum length is 60. *Pattern:* ^[a-z0-9_.-]{1,60$ } |
kms_key_id | string | The AWS KMS key identifier for an encrypted CEV. A symmetric encryption KMS key is required for RDS Custom, but optional for Amazon RDS. If you have an existing symmetric encryption KMS key in your account, you can use it with RDS Custom. No further action is necessary. If you don't already have a symmetric encryption KMS key in your account, follow the instructions in [Creating a symmetric encryption KMS key](https://docs.aws.amazon.com/kms/latest/developerguide/create-keys.html#create-symmetric-cmk) in the *Key Management Service Developer Guide*. You can choose the same symmetric encryption key when you create a CEV and a DB instance, or choose different keys. |
manifest | string | The CEV manifest, which is a JSON document that describes the installation .zip files stored in Amazon S3. Specify the name/value pairs in a file or a quoted string. RDS Custom applies the patches in the order in which they are listed. The following JSON fields are valid: + MediaImportTemplateVersion Version of the CEV manifest. The date is in the format YYYY-MM-DD. + databaseInstallationFileNames Ordered list of installation files for the CEV. + opatchFileNames Ordered list of OPatch installers used for the Oracle DB engine. + psuRuPatchFileNames The PSU and RU patches for this CEV. + OtherPatchFileNames The patches that are not in the list of PSU and RU patches. Amazon RDS applies these patches after applying the PSU and RU patches. For more information, see [Creating the CEV manifest](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/custom-cev.html#custom-cev.preparing.manifest) in the *Amazon RDS User Guide*. |
db_engine_version_arn | string | |
source_custom_db_engine_version_identifier | string | The ARN of a CEV to use as a source for creating a new CEV. You can specify a different Amazon Machine Imagine (AMI) by using either Source or UseAwsProvidedLatestImage . You can't specify a different JSON manifest when you specify SourceCustomDbEngineVersionIdentifier . |
use_aws_provided_latest_image | boolean | Specifies whether to use the latest service-provided Amazon Machine Image (AMI) for the CEV. If you specify UseAwsProvidedLatestImage , you can't also specify ImageId . |
image_id | string | A value that indicates the ID of the AMI. |
status | string | A value that indicates the status of a custom engine version (CEV). |
tags | array | A list of tags. For more information, see [Tagging Amazon RDS Resources](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_Tagging.html) in the *Amazon RDS User Guide.* |
region | string | AWS region. |
For more information, see AWS::RDS::CustomDBEngineVersion
.
Methods
Name | Accessible by | Required Params |
---|---|---|
create_resource | INSERT | Engine, EngineVersion, region |
delete_resource | DELETE | data__Identifier, region |
update_resource | UPDATE | data__Identifier, data__PatchDocument, region |
list_resources | SELECT | region |
get_resource | SELECT | data__Identifier, region |
SELECT
examples
Gets all customdb_engine_versions
in a region.
SELECT
region,
database_installation_files_s3_bucket_name,
database_installation_files_s3_prefix,
description,
engine,
engine_version,
kms_key_id,
manifest,
db_engine_version_arn,
source_custom_db_engine_version_identifier,
use_aws_provided_latest_image,
image_id,
status,
tags
FROM aws.rds.customdb_engine_versions
WHERE region = 'us-east-1';
Gets all properties from an individual customdb_engine_version
.
SELECT
region,
database_installation_files_s3_bucket_name,
database_installation_files_s3_prefix,
description,
engine,
engine_version,
kms_key_id,
manifest,
db_engine_version_arn,
source_custom_db_engine_version_identifier,
use_aws_provided_latest_image,
image_id,
status,
tags
FROM aws.rds.customdb_engine_versions
WHERE region = 'us-east-1' AND data__Identifier = '<Engine>|<EngineVersion>';
INSERT
example
Use the following StackQL query and manifest file to create a new customdb_engine_version
resource, using stack-deploy
.
- Required Properties
- All Properties
- Manifest
/*+ create */
INSERT INTO aws.rds.customdb_engine_versions (
Engine,
EngineVersion,
region
)
SELECT
'{{ Engine }}',
'{{ EngineVersion }}',
'{{ region }}';
/*+ create */
INSERT INTO aws.rds.customdb_engine_versions (
DatabaseInstallationFilesS3BucketName,
DatabaseInstallationFilesS3Prefix,
Description,
Engine,
EngineVersion,
KMSKeyId,
Manifest,
SourceCustomDbEngineVersionIdentifier,
UseAwsProvidedLatestImage,
ImageId,
Status,
Tags,
region
)
SELECT
'{{ DatabaseInstallationFilesS3BucketName }}',
'{{ DatabaseInstallationFilesS3Prefix }}',
'{{ Description }}',
'{{ Engine }}',
'{{ EngineVersion }}',
'{{ KMSKeyId }}',
'{{ Manifest }}',
'{{ SourceCustomDbEngineVersionIdentifier }}',
'{{ UseAwsProvidedLatestImage }}',
'{{ ImageId }}',
'{{ Status }}',
'{{ Tags }}',
'{{ region }}';
version: 1
name: stack name
description: stack description
providers:
- aws
globals:
- name: region
value: '{{ vars.AWS_REGION }}'
resources:
- name: customdb_engine_version
props:
- name: DatabaseInstallationFilesS3BucketName
value: '{{ DatabaseInstallationFilesS3BucketName }}'
- name: DatabaseInstallationFilesS3Prefix
value: '{{ DatabaseInstallationFilesS3Prefix }}'
- name: Description
value: '{{ Description }}'
- name: Engine
value: '{{ Engine }}'
- name: EngineVersion
value: '{{ EngineVersion }}'
- name: KMSKeyId
value: '{{ KMSKeyId }}'
- name: Manifest
value: '{{ Manifest }}'
- name: SourceCustomDbEngineVersionIdentifier
value: '{{ SourceCustomDbEngineVersionIdentifier }}'
- name: UseAwsProvidedLatestImage
value: '{{ UseAwsProvidedLatestImage }}'
- name: ImageId
value: '{{ ImageId }}'
- name: Status
value: '{{ Status }}'
- name: Tags
value:
- Key: '{{ Key }}'
Value: '{{ Value }}'
DELETE
example
/*+ delete */
DELETE FROM aws.rds.customdb_engine_versions
WHERE data__Identifier = '<Engine|EngineVersion>'
AND region = 'us-east-1';
Permissions
To operate on the customdb_engine_versions
resource, the following permissions are required:
Create
ec2:CopySnapshot,
ec2:DeleteSnapshot,
ec2:DescribeSnapshots,
kms:CreateGrant,
kms:Decrypt,
kms:DescribeKey,
kms:GenerateDataKey,
kms:ReEncrypt,
mediaimport:CreateDatabaseBinarySnapshot,
rds:AddTagsToResource,
rds:CreateCustomDBEngineVersion,
rds:DescribeDBEngineVersions,
rds:ModifyCustomDBEngineVersion,
s3:CreateBucket,
s3:GetObject,
s3:GetObjectAcl,
s3:GetObjectTagging,
s3:ListBucket,
s3:PutBucketObjectLockConfiguration,
s3:PutBucketPolicy,
s3:PutBucketVersioning
Read
rds:DescribeDBEngineVersions
Update
rds:AddTagsToResource,
rds:DescribeDBEngineVersions,
rds:ModifyCustomDBEngineVersion,
rds:RemoveTagsFromResource
Delete
rds:DeleteCustomDBEngineVersion,
rds:DescribeDBEngineVersions
List
rds:DescribeDBEngineVersions