Source code for troposphere.emrcontainers

# Copyright (c) 2012-2025, Mark Peek <mark@peek.org>
# All rights reserved.
#
# See LICENSE file for full license.
#
# *** Do not modify - this file is autogenerated ***


from . import AWSObject, AWSProperty, PropsDictType, Tags
from .validators import boolean, integer


[docs]class EMREKSConfiguration(AWSProperty): """ `EMREKSConfiguration <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emrcontainers-endpoint-emreksconfiguration.html>`__ """ props: PropsDictType = { "Classification": (str, True), "Configurations": ([object], False), "Properties": (dict, False), }
[docs]class CloudWatchMonitoringConfiguration(AWSProperty): """ `CloudWatchMonitoringConfiguration <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emrcontainers-endpoint-cloudwatchmonitoringconfiguration.html>`__ """ props: PropsDictType = { "LogGroupName": (str, True), "LogStreamNamePrefix": (str, False), }
[docs]class ContainerLogRotationConfiguration(AWSProperty): """ `ContainerLogRotationConfiguration <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emrcontainers-endpoint-containerlogrotationconfiguration.html>`__ """ props: PropsDictType = { "MaxFilesToKeep": (integer, True), "RotationSize": (str, True), }
[docs]class S3MonitoringConfiguration(AWSProperty): """ `S3MonitoringConfiguration <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emrcontainers-endpoint-s3monitoringconfiguration.html>`__ """ props: PropsDictType = { "LogUri": (str, True), }
[docs]class MonitoringConfiguration(AWSProperty): """ `MonitoringConfiguration <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emrcontainers-endpoint-monitoringconfiguration.html>`__ """ props: PropsDictType = { "CloudWatchMonitoringConfiguration": (CloudWatchMonitoringConfiguration, False), "ContainerLogRotationConfiguration": (ContainerLogRotationConfiguration, False), "PersistentAppUI": (str, False), "S3MonitoringConfiguration": (S3MonitoringConfiguration, False), }
[docs]class ConfigurationOverrides(AWSProperty): """ `ConfigurationOverrides <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emrcontainers-endpoint-configurationoverrides.html>`__ """ props: PropsDictType = { "ApplicationConfiguration": ([EMREKSConfiguration], False), "MonitoringConfiguration": (MonitoringConfiguration, False), }
[docs]class Endpoint(AWSObject): """ `Endpoint <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emrcontainers-endpoint.html>`__ """ resource_type = "AWS::EMRContainers::Endpoint" props: PropsDictType = { "ConfigurationOverrides": (ConfigurationOverrides, False), "ExecutionRoleArn": (str, True), "Name": (str, False), "ReleaseLabel": (str, True), "Tags": (Tags, False), "Type": (str, True), "VirtualClusterId": (str, True), }
[docs]class EksInfo(AWSProperty): """ `EksInfo <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emrcontainers-virtualcluster-eksinfo.html>`__ """ props: PropsDictType = { "Namespace": (str, True), }
[docs]class ContainerInfo(AWSProperty): """ `ContainerInfo <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emrcontainers-virtualcluster-containerinfo.html>`__ """ props: PropsDictType = { "EksInfo": (EksInfo, True), }
[docs]class ContainerProvider(AWSProperty): """ `ContainerProvider <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emrcontainers-virtualcluster-containerprovider.html>`__ """ props: PropsDictType = { "Id": (str, True), "Info": (ContainerInfo, True), "Type": (str, True), }
[docs]class IAMConfiguration(AWSProperty): """ `IAMConfiguration <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emrcontainers-securityconfiguration-iamconfiguration.html>`__ """ props: PropsDictType = { "SystemRole": (str, False), }
[docs]class IdentityCenterConfiguration(AWSProperty): """ `IdentityCenterConfiguration <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emrcontainers-securityconfiguration-identitycenterconfiguration.html>`__ """ props: PropsDictType = { "EnableIdentityCenter": (boolean, False), "IdentityCenterApplicationAssignmentRequired": (boolean, False), "IdentityCenterInstanceARN": (str, False), }
[docs]class AuthenticationConfiguration(AWSProperty): """ `AuthenticationConfiguration <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emrcontainers-securityconfiguration-authenticationconfiguration.html>`__ """ props: PropsDictType = { "IAMConfiguration": (IAMConfiguration, False), "IdentityCenterConfiguration": (IdentityCenterConfiguration, False), }
[docs]class SecureNamespaceInfo(AWSProperty): """ `SecureNamespaceInfo <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emrcontainers-securityconfiguration-securenamespaceinfo.html>`__ """ props: PropsDictType = { "ClusterId": (str, False), "Namespace": (str, False), }
[docs]class LakeFormationConfiguration(AWSProperty): """ `LakeFormationConfiguration <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emrcontainers-securityconfiguration-lakeformationconfiguration.html>`__ """ props: PropsDictType = { "AuthorizedSessionTagValue": (str, False), "QueryAccessControlEnabled": (boolean, False), "QueryEngineRoleArn": (str, False), "SecureNamespaceInfo": (SecureNamespaceInfo, False), }
[docs]class AuthorizationConfiguration(AWSProperty): """ `AuthorizationConfiguration <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emrcontainers-securityconfiguration-authorizationconfiguration.html>`__ """ props: PropsDictType = { "LakeFormationConfiguration": (LakeFormationConfiguration, False), }
[docs]class LocalDiskEncryptionConfiguration(AWSProperty): """ `LocalDiskEncryptionConfiguration <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emrcontainers-securityconfiguration-localdiskencryptionconfiguration.html>`__ """ props: PropsDictType = { "AwsKmsKeyId": (str, False), "EncryptionKeyProviderType": (str, False), }
[docs]class S3EncryptionConfiguration(AWSProperty): """ `S3EncryptionConfiguration <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emrcontainers-securityconfiguration-s3encryptionconfiguration.html>`__ """ props: PropsDictType = { "EncryptionOption": (str, False), "KMSKeyId": (str, False), }
[docs]class AtRestEncryptionConfiguration(AWSProperty): """ `AtRestEncryptionConfiguration <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emrcontainers-securityconfiguration-atrestencryptionconfiguration.html>`__ """ props: PropsDictType = { "LocalDiskEncryptionConfiguration": (LocalDiskEncryptionConfiguration, False), "S3EncryptionConfiguration": (S3EncryptionConfiguration, False), }
[docs]class TLSCertificateConfiguration(AWSProperty): """ `TLSCertificateConfiguration <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emrcontainers-securityconfiguration-tlscertificateconfiguration.html>`__ """ props: PropsDictType = { "CertificateProviderType": (str, False), "PrivateKeySecretArn": (str, False), "PublicKeySecretArn": (str, False), }
[docs]class InTransitEncryptionConfiguration(AWSProperty): """ `InTransitEncryptionConfiguration <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emrcontainers-securityconfiguration-intransitencryptionconfiguration.html>`__ """ props: PropsDictType = { "TLSCertificateConfiguration": (TLSCertificateConfiguration, False), }
[docs]class EncryptionConfiguration(AWSProperty): """ `EncryptionConfiguration <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emrcontainers-securityconfiguration-encryptionconfiguration.html>`__ """ props: PropsDictType = { "AtRestEncryptionConfiguration": (AtRestEncryptionConfiguration, False), "InTransitEncryptionConfiguration": (InTransitEncryptionConfiguration, False), }
[docs]class SecurityConfigurationData(AWSProperty): """ `SecurityConfigurationData <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emrcontainers-securityconfiguration-securityconfigurationdata.html>`__ """ props: PropsDictType = { "AuthenticationConfiguration": (AuthenticationConfiguration, False), "AuthorizationConfiguration": (AuthorizationConfiguration, False), "EncryptionConfiguration": (EncryptionConfiguration, False), }
[docs]class SecurityConfiguration(AWSObject): """ `SecurityConfiguration <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emrcontainers-securityconfiguration.html>`__ """ resource_type = "AWS::EMRContainers::SecurityConfiguration" props: PropsDictType = { "ContainerProvider": (ContainerProvider, False), "Name": (str, False), "SecurityConfigurationData": (SecurityConfigurationData, True), "Tags": (Tags, False), }
[docs]class VirtualCluster(AWSObject): """ `VirtualCluster <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emrcontainers-virtualcluster.html>`__ """ resource_type = "AWS::EMRContainers::VirtualCluster" props: PropsDictType = { "ContainerProvider": (ContainerProvider, True), "Name": (str, True), "SecurityConfigurationId": (str, False), "Tags": (Tags, False), }
[docs]class Certificate(AWSProperty): """ `Certificate <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emrcontainers-endpoint-certificate.html>`__ """ props: PropsDictType = { "CertificateArn": (str, False), "CertificateData": (str, False), }