Class Job
(deprecated) A Glue Job.
Inherited Members
Namespace: Amazon.CDK.AWS.Glue.Alpha
Assembly: Amazon.CDK.AWS.Glue.Alpha.dll
Syntax (csharp)
[Obsolete]
public abstract class Job : JobBase, IJob, IResource, IGrantable, IJobRef, IConstruct, IDependable, IEnvironmentAware
Syntax (vb)
<Obsolete>
Public MustInherit Class Job Inherits JobBase Implements IJob, IResource, IGrantable, IJobRef, IConstruct, IDependable, IEnvironmentAware
Remarks
Stability: Deprecated
Resource: AWS::Glue::Job
ExampleMetadata: fixture=_generated
Examples
// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
using Amazon.CDK.AWS.Glue.Alpha;
using Amazon.CDK.AWS.IAM;
Role role;
var job = Job.FromJobAttributes(this, "MyJob", new JobAttributes {
JobName = "jobName",
// the properties below are optional
Role = role
});
Synopsis
Constructors
| Job(Construct, string, IResourceProps?) | (deprecated) A Glue Job. |
Properties
| Role | (deprecated) The IAM role Glue assumes to run this job. |
Methods
| CodeS3ObjectUrl(Code) | (deprecated) A Glue Job. |
| FromJobAttributes(Construct, string, IJobAttributes) | (deprecated) Identifies an existing Glue Job from a subset of attributes that can be referenced from within another Stack or Construct. |
| MergeDefaultArguments(IDictionary<string, string>?) | (deprecated) Merge the customer-supplied |
| SetManagedArgument(string, string?) | (deprecated) Declare |
| SetupContinuousLogging(IRole, IContinuousLoggingProps?, ISecurityConfiguration?) | (deprecated) Register (and, when enabled, emit) the continuous-logging arguments this job manages. |
Constructors
Job(Construct, string, IResourceProps?)
(deprecated) A Glue Job.
protected Job(Construct scope, string id, IResourceProps? props = null)
Parameters
- scope Construct
- id string
- props IResourceProps
Remarks
Stability: Deprecated
Resource: AWS::Glue::Job
ExampleMetadata: fixture=_generated
Examples
// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
using Amazon.CDK.AWS.Glue.Alpha;
using Amazon.CDK.AWS.IAM;
Role role;
var job = Job.FromJobAttributes(this, "MyJob", new JobAttributes {
JobName = "jobName",
// the properties below are optional
Role = role
});
Properties
Role
(deprecated) The IAM role Glue assumes to run this job.
[Obsolete]
public abstract IRole Role { get; }
Property Value
Remarks
Stability: Deprecated
Methods
CodeS3ObjectUrl(Code)
(deprecated) A Glue Job.
[Obsolete]
protected virtual string CodeS3ObjectUrl(Code code)
Parameters
- code Code
Returns
Remarks
Stability: Deprecated
FromJobAttributes(Construct, string, IJobAttributes)
(deprecated) Identifies an existing Glue Job from a subset of attributes that can be referenced from within another Stack or Construct.
[Obsolete]
public static IJob FromJobAttributes(Construct scope, string id, IJobAttributes attrs)
Parameters
- scope Construct
The scope creating construct (usually
this).- id string
The construct's id.
- attrs IJobAttributes
Attributes for the Glue Job we want to import.
Returns
Remarks
Stability: Deprecated
MergeDefaultArguments(IDictionary<string, string>?)
(deprecated) Merge the customer-supplied defaultArguments with the arguments this construct manages.
[Obsolete]
protected virtual IDictionary<string, string> MergeDefaultArguments(IDictionary<string, string>? defaultArguments = null)
Parameters
- defaultArguments IDictionary<string, string>
the caller-supplied escape-hatch arguments, if any.
Returns
Remarks
The construct owns every argument it emits — whether the value comes from a dedicated typed
prop (e.g. continuousLogging, enableMetrics, sparkUI) or from the job class itself
(e.g. --job-language). Those arguments, plus the arguments Glue reserves for its own use,
MUST be configured through their dedicated props rather than the untyped defaultArguments
map, so there is exactly one way to express each intent. Passing such a key through
defaultArguments therefore throws instead of silently winning or being silently dropped.
A managed key whose supplied value is identical to the construct's value is not contradictory, so it is allowed rather than rejected (auto-correcting config is preferred over errors). Glue-reserved keys are never emitted by the construct, so there is no value to reconcile and they always throw.
The reserved set is _managedArgumentKeys — every key the construct declared through
{@link setManagedArgument}, whether or not a value was emitted for it. It is deliberately NOT
derived from the keys that carry a value: a typed prop that turns a feature off (e.g.
enableMetrics: false) emits no value but still reserves its key, so defaultArguments cannot
silently re-enable it.
Conflict detection relies on string equality of the argument keys, which cannot see through
unresolved tokens (e.g. a key produced by CfnJson that only resolves at deploy time). If a
key is a token, the check is skipped for that key and a synthesis-time warning is emitted, so
the (rare) case where a token key resolves to a managed argument at deploy time — in which the
construct-managed value would silently take precedence — is surfaced rather than hidden.
Stability: Deprecated
See: https://docs.aws.amazon.com/glue/latest/dg/aws-glue-programming-etl-glue-arguments.html
SetManagedArgument(string, string?)
(deprecated) Declare key as construct-managed and, when value is defined, emit it into the job's arguments.
[Obsolete]
protected virtual void SetManagedArgument(string key, string? value = null)
Parameters
- key string
the Glue argument key, e.g.
--enable-metrics.- value string
the value to emit, or
undefinedto reserve the key without emitting it.
Remarks
This is the single sink for every argument a job construct derives from its typed props (or
from the job class itself). Call it once per managed key, passing undefined as the value when
the corresponding feature is turned off or unset — the key is still reserved from
defaultArguments either way, so a disabled feature cannot be re-enabled through the escape
hatch. There is deliberately no other way for a subclass to emit a managed argument, so the
reserved set can never drift from what is emitted.
Stability: Deprecated
SetupContinuousLogging(IRole, IContinuousLoggingProps?, ISecurityConfiguration?)
(deprecated) Register (and, when enabled, emit) the continuous-logging arguments this job manages.
[Obsolete]
protected virtual void SetupContinuousLogging(IRole role, IContinuousLoggingProps? props = null, ISecurityConfiguration? securityConfiguration = null)
Parameters
- role IRole
The IAM role to grant write access to a custom log group, if one is provided.
- props IContinuousLoggingProps
The properties for continuous logging configuration.
- securityConfiguration ISecurityConfiguration
The security configuration attached to the job, if any.
Remarks
All five continuous-logging keys are reserved on every job type regardless of configuration:
they are always registered through {@link setManagedArgument}, and carry a value only when
logging is enabled. This keeps defaultArguments from re-enabling logging a user turned off.
Stability: Deprecated