Skip to content
v2.276.0

PythonVersion Enum ​

Python version.

Example ​

ts
import * as cdk from 'aws-cdk-lib';
import * as iam from 'aws-cdk-lib/aws-iam';
declare const stack: cdk.Stack;
declare const role: iam.IRole;
declare const script: glue.Code;
declare const extraPythonFile: glue.Code;
new glue.PythonShellJob(stack, 'PythonShellJob', {
  jobName: 'PythonShellJobCustomName',
  description: 'This is a description',
  pythonVersion: glue.PythonVersion.THREE_NINE,
  maxCapacity: glue.MaxCapacity.DPU_1,
  role,
  script,
  extraPythonFiles: [extraPythonFile],
  glueVersion: glue.GlueVersion.V3_0,
  continuousLogging: { enabled: false },
  maxConcurrentRuns: 100,
  timeout: cdk.Duration.hours(2),
  connections: [glue.Connection.fromConnectionName(stack, 'Connection', 'connectionName')],
  securityConfiguration: glue.SecurityConfiguration.fromSecurityConfigurationName(stack, 'SecurityConfig', 'securityConfigName'),
  tags: {
    FirstTagName: 'FirstTagValue',
    SecondTagName: 'SecondTagValue',
    XTagName: 'XTagValue',
  },
  maxRetries: 2,
});
python
import aws_cdk as cdk
import aws_cdk.aws_iam as iam
# stack: cdk.Stack
# role: iam.IRole
# script: glue.Code
# extra_python_file: glue.Code

glue.PythonShellJob(stack, "PythonShellJob",
    job_name="PythonShellJobCustomName",
    description="This is a description",
    python_version=glue.PythonVersion.THREE_NINE,
    max_capacity=glue.MaxCapacity.DPU_1,
    role=role,
    script=script,
    extra_python_files=[extra_python_file],
    glue_version=glue.GlueVersion.V3_0,
    continuous_logging=glue.ContinuousLoggingProps(enabled=False),
    max_concurrent_runs=100,
    timeout=cdk.Duration.hours(2),
    connections=[glue.Connection.from_connection_name(stack, "Connection", "connectionName")],
    security_configuration=glue.SecurityConfiguration.from_security_configuration_name(stack, "SecurityConfig", "securityConfigName"),
    tags={
        "FirstTagName": "FirstTagValue",
        "SecondTagName": "SecondTagValue",
        "XTagName": "XTagValue"
    },
    max_retries=2
)
java
import software.amazon.awscdk.*;
import software.amazon.awscdk.services.iam.*;
Stack stack;
IRole role;
Code script;
Code extraPythonFile;

PythonShellJob.Builder.create(stack, "PythonShellJob")
        .jobName("PythonShellJobCustomName")
        .description("This is a description")
        .pythonVersion(PythonVersion.THREE_NINE)
        .maxCapacity(MaxCapacity.DPU_1)
        .role(role)
        .script(script)
        .extraPythonFiles(List.of(extraPythonFile))
        .glueVersion(GlueVersion.V3_0)
        .continuousLogging(ContinuousLoggingProps.builder().enabled(false).build())
        .maxConcurrentRuns(100)
        .timeout(Duration.hours(2))
        .connections(List.of(Connection.fromConnectionName(stack, "Connection", "connectionName")))
        .securityConfiguration(SecurityConfiguration.fromSecurityConfigurationName(stack, "SecurityConfig", "securityConfigName"))
        .tags(Map.of(
                "FirstTagName", "FirstTagValue",
                "SecondTagName", "SecondTagValue",
                "XTagName", "XTagValue"))
        .maxRetries(2)
        .build();
csharp
// Install: dotnet add package Amazon.CDK.Lib
using Amazon.CDK;
using Amazon.CDK.AWS.IAM;
Stack stack;
IRole role;
Code script;
Code extraPythonFile;

new PythonShellJob(stack, "PythonShellJob", new PythonShellJobProps {
    JobName = "PythonShellJobCustomName",
    Description = "This is a description",
    PythonVersion = PythonVersion.THREE_NINE,
    MaxCapacity = MaxCapacity.DPU_1,
    Role = role,
    Script = script,
    ExtraPythonFiles = new [] { extraPythonFile },
    GlueVersion = GlueVersion.V3_0,
    ContinuousLogging = new ContinuousLoggingProps { Enabled = false },
    MaxConcurrentRuns = 100,
    Timeout = Duration.Hours(2),
    Connections = new [] { Connection.FromConnectionName(stack, "Connection", "connectionName") },
    SecurityConfiguration = SecurityConfiguration.FromSecurityConfigurationName(stack, "SecurityConfig", "securityConfigName"),
    Tags = new Dictionary<string, string> {
        { "FirstTagName", "FirstTagValue" },
        { "SecondTagName", "SecondTagValue" },
        { "XTagName", "XTagValue" }
    },
    MaxRetries = 2
});
go
// Install: go get github.com/aws/aws-cdk-go/awscdk/v2
import cdk "github.com/aws/aws-cdk-go/awscdk"
import iam "github.com/aws/aws-cdk-go/awscdk"
var stack Stack
var role IRole
var script Code
var extraPythonFile Code

glue.NewPythonShellJob(stack, jsii.String("PythonShellJob"), &PythonShellJobProps{
	JobName: jsii.String("PythonShellJobCustomName"),
	Description: jsii.String("This is a description"),
	PythonVersion: glue.PythonVersion_THREE_NINE,
	MaxCapacity: glue.MaxCapacity_DPU_1,
	Role: Role,
	Script: Script,
	ExtraPythonFiles: []Code{
		extraPythonFile,
	},
	GlueVersion: glue.GlueVersion_V3_0,
	ContinuousLogging: &ContinuousLoggingProps{
		Enabled: jsii.Boolean(false),
	},
	MaxConcurrentRuns: jsii.Number(100),
	Timeout: cdk.Duration_Hours(jsii.Number(2)),
	Connections: []IConnection{
		glue.Connection_FromConnectionName(stack, jsii.String("Connection"), jsii.String("connectionName")),
	},
	SecurityConfiguration: glue.SecurityConfiguration_FromSecurityConfigurationName(stack, jsii.String("SecurityConfig"), jsii.String("securityConfigName")),
	Tags: map[string]*string{
		"FirstTagName": jsii.String("FirstTagValue"),
		"SecondTagName": jsii.String("SecondTagValue"),
		"XTagName": jsii.String("XTagValue"),
	},
	MaxRetries: jsii.Number(2),
})

Members ​

MemberDescription
TWOPython 2 (the exact version depends on GlueVersion and JobCommand used).
THREEPython 3 (the exact version depends on GlueVersion and JobCommand used).
THREE_NINEPython 3.9 (the exact version depends on GlueVersion and JobCommand used).

Referenced by ​