github.com/pulumi/pulumi-aws/sdk/v6@v6.32.0/go/aws/glue/job.go (about) 1 // Code generated by the Pulumi Terraform Bridge (tfgen) Tool DO NOT EDIT. 2 // *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** 3 4 package glue 5 6 import ( 7 "context" 8 "reflect" 9 10 "errors" 11 "github.com/pulumi/pulumi-aws/sdk/v6/go/aws/internal" 12 "github.com/pulumi/pulumi/sdk/v3/go/pulumi" 13 ) 14 15 // Provides a Glue Job resource. 16 // 17 // > Glue functionality, such as monitoring and logging of jobs, is typically managed with the `defaultArguments` argument. See the [Special Parameters Used by AWS Glue](https://docs.aws.amazon.com/glue/latest/dg/aws-glue-programming-etl-glue-arguments.html) topic in the Glue developer guide for additional information. 18 // 19 // ## Example Usage 20 // 21 // ### Python Job 22 // 23 // <!--Start PulumiCodeChooser --> 24 // ```go 25 // package main 26 // 27 // import ( 28 // 29 // "fmt" 30 // 31 // "github.com/pulumi/pulumi-aws/sdk/v6/go/aws/glue" 32 // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" 33 // 34 // ) 35 // 36 // func main() { 37 // pulumi.Run(func(ctx *pulumi.Context) error { 38 // _, err := glue.NewJob(ctx, "example", &glue.JobArgs{ 39 // Name: pulumi.String("example"), 40 // RoleArn: pulumi.Any(exampleAwsIamRole.Arn), 41 // Command: &glue.JobCommandArgs{ 42 // ScriptLocation: pulumi.String(fmt.Sprintf("s3://%v/example.py", exampleAwsS3Bucket.Bucket)), 43 // }, 44 // }) 45 // if err != nil { 46 // return err 47 // } 48 // return nil 49 // }) 50 // } 51 // 52 // ``` 53 // <!--End PulumiCodeChooser --> 54 // 55 // ### Ray Job 56 // 57 // <!--Start PulumiCodeChooser --> 58 // ```go 59 // package main 60 // 61 // import ( 62 // 63 // "fmt" 64 // 65 // "github.com/pulumi/pulumi-aws/sdk/v6/go/aws/glue" 66 // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" 67 // 68 // ) 69 // 70 // func main() { 71 // pulumi.Run(func(ctx *pulumi.Context) error { 72 // _, err := glue.NewJob(ctx, "example", &glue.JobArgs{ 73 // Name: pulumi.String("example"), 74 // RoleArn: pulumi.Any(exampleAwsIamRole.Arn), 75 // GlueVersion: pulumi.String("4.0"), 76 // WorkerType: pulumi.String("Z.2X"), 77 // Command: &glue.JobCommandArgs{ 78 // Name: pulumi.String("glueray"), 79 // PythonVersion: pulumi.String("3.9"), 80 // Runtime: pulumi.String("Ray2.4"), 81 // ScriptLocation: pulumi.String(fmt.Sprintf("s3://%v/example.py", exampleAwsS3Bucket.Bucket)), 82 // }, 83 // }) 84 // if err != nil { 85 // return err 86 // } 87 // return nil 88 // }) 89 // } 90 // 91 // ``` 92 // <!--End PulumiCodeChooser --> 93 // 94 // ### Scala Job 95 // 96 // <!--Start PulumiCodeChooser --> 97 // ```go 98 // package main 99 // 100 // import ( 101 // 102 // "fmt" 103 // 104 // "github.com/pulumi/pulumi-aws/sdk/v6/go/aws/glue" 105 // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" 106 // 107 // ) 108 // 109 // func main() { 110 // pulumi.Run(func(ctx *pulumi.Context) error { 111 // _, err := glue.NewJob(ctx, "example", &glue.JobArgs{ 112 // Name: pulumi.String("example"), 113 // RoleArn: pulumi.Any(exampleAwsIamRole.Arn), 114 // Command: &glue.JobCommandArgs{ 115 // ScriptLocation: pulumi.String(fmt.Sprintf("s3://%v/example.scala", exampleAwsS3Bucket.Bucket)), 116 // }, 117 // DefaultArguments: pulumi.StringMap{ 118 // "--job-language": pulumi.String("scala"), 119 // }, 120 // }) 121 // if err != nil { 122 // return err 123 // } 124 // return nil 125 // }) 126 // } 127 // 128 // ``` 129 // <!--End PulumiCodeChooser --> 130 // 131 // ### Streaming Job 132 // 133 // <!--Start PulumiCodeChooser --> 134 // ```go 135 // package main 136 // 137 // import ( 138 // 139 // "fmt" 140 // 141 // "github.com/pulumi/pulumi-aws/sdk/v6/go/aws/glue" 142 // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" 143 // 144 // ) 145 // 146 // func main() { 147 // pulumi.Run(func(ctx *pulumi.Context) error { 148 // _, err := glue.NewJob(ctx, "example", &glue.JobArgs{ 149 // Name: pulumi.String("example streaming job"), 150 // RoleArn: pulumi.Any(exampleAwsIamRole.Arn), 151 // Command: &glue.JobCommandArgs{ 152 // Name: pulumi.String("gluestreaming"), 153 // ScriptLocation: pulumi.String(fmt.Sprintf("s3://%v/example.script", exampleAwsS3Bucket.Bucket)), 154 // }, 155 // }) 156 // if err != nil { 157 // return err 158 // } 159 // return nil 160 // }) 161 // } 162 // 163 // ``` 164 // <!--End PulumiCodeChooser --> 165 // 166 // ### Enabling CloudWatch Logs and Metrics 167 // 168 // <!--Start PulumiCodeChooser --> 169 // ```go 170 // package main 171 // 172 // import ( 173 // 174 // "github.com/pulumi/pulumi-aws/sdk/v6/go/aws/cloudwatch" 175 // "github.com/pulumi/pulumi-aws/sdk/v6/go/aws/glue" 176 // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" 177 // 178 // ) 179 // 180 // func main() { 181 // pulumi.Run(func(ctx *pulumi.Context) error { 182 // example, err := cloudwatch.NewLogGroup(ctx, "example", &cloudwatch.LogGroupArgs{ 183 // Name: pulumi.String("example"), 184 // RetentionInDays: pulumi.Int(14), 185 // }) 186 // if err != nil { 187 // return err 188 // } 189 // _, err = glue.NewJob(ctx, "example", &glue.JobArgs{ 190 // DefaultArguments: pulumi.StringMap{ 191 // "--continuous-log-logGroup": example.Name, 192 // "--enable-continuous-cloudwatch-log": pulumi.String("true"), 193 // "--enable-continuous-log-filter": pulumi.String("true"), 194 // "--enable-metrics": pulumi.String(""), 195 // }, 196 // }) 197 // if err != nil { 198 // return err 199 // } 200 // return nil 201 // }) 202 // } 203 // 204 // ``` 205 // <!--End PulumiCodeChooser --> 206 // 207 // ## Import 208 // 209 // Using `pulumi import`, import Glue Jobs using `name`. For example: 210 // 211 // ```sh 212 // $ pulumi import aws:glue/job:Job MyJob MyJob 213 // ``` 214 type Job struct { 215 pulumi.CustomResourceState 216 217 // Amazon Resource Name (ARN) of Glue Job 218 Arn pulumi.StringOutput `pulumi:"arn"` 219 // The command of the job. Defined below. 220 Command JobCommandOutput `pulumi:"command"` 221 // The list of connections used for this job. 222 Connections pulumi.StringArrayOutput `pulumi:"connections"` 223 // The map of default arguments for this job. You can specify arguments here that your own job-execution script consumes, as well as arguments that AWS Glue itself consumes. For information about how to specify and consume your own Job arguments, see the [Calling AWS Glue APIs in Python](http://docs.aws.amazon.com/glue/latest/dg/aws-glue-programming-python-calling.html) topic in the developer guide. For information about the key-value pairs that AWS Glue consumes to set up your job, see the [Special Parameters Used by AWS Glue](http://docs.aws.amazon.com/glue/latest/dg/aws-glue-programming-python-glue-arguments.html) topic in the developer guide. 224 DefaultArguments pulumi.StringMapOutput `pulumi:"defaultArguments"` 225 // Description of the job. 226 Description pulumi.StringPtrOutput `pulumi:"description"` 227 // Indicates whether the job is run with a standard or flexible execution class. The standard execution class is ideal for time-sensitive workloads that require fast job startup and dedicated resources. Valid value: `FLEX`, `STANDARD`. 228 ExecutionClass pulumi.StringPtrOutput `pulumi:"executionClass"` 229 // Execution property of the job. Defined below. 230 ExecutionProperty JobExecutionPropertyOutput `pulumi:"executionProperty"` 231 // The version of glue to use, for example "1.0". Ray jobs should set this to 4.0 or greater. For information about available versions, see the [AWS Glue Release Notes](https://docs.aws.amazon.com/glue/latest/dg/release-notes.html). 232 GlueVersion pulumi.StringOutput `pulumi:"glueVersion"` 233 // The maximum number of AWS Glue data processing units (DPUs) that can be allocated when this job runs. `Required` when `pythonshell` is set, accept either `0.0625` or `1.0`. Use `numberOfWorkers` and `workerType` arguments instead with `glueVersion` `2.0` and above. 234 MaxCapacity pulumi.Float64Output `pulumi:"maxCapacity"` 235 // The maximum number of times to retry this job if it fails. 236 MaxRetries pulumi.IntPtrOutput `pulumi:"maxRetries"` 237 // The name you assign to this job. It must be unique in your account. 238 Name pulumi.StringOutput `pulumi:"name"` 239 // Non-overridable arguments for this job, specified as name-value pairs. 240 NonOverridableArguments pulumi.StringMapOutput `pulumi:"nonOverridableArguments"` 241 // Notification property of the job. Defined below. 242 NotificationProperty JobNotificationPropertyOutput `pulumi:"notificationProperty"` 243 // The number of workers of a defined workerType that are allocated when a job runs. 244 NumberOfWorkers pulumi.IntOutput `pulumi:"numberOfWorkers"` 245 // The ARN of the IAM role associated with this job. 246 RoleArn pulumi.StringOutput `pulumi:"roleArn"` 247 // The name of the Security Configuration to be associated with the job. 248 SecurityConfiguration pulumi.StringPtrOutput `pulumi:"securityConfiguration"` 249 // Key-value map of resource tags. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. 250 Tags pulumi.StringMapOutput `pulumi:"tags"` 251 // A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block. 252 // 253 // Deprecated: Please use `tags` instead. 254 TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"` 255 // The job timeout in minutes. The default is 2880 minutes (48 hours) for `glueetl` and `pythonshell` jobs, and null (unlimited) for `gluestreaming` jobs. 256 Timeout pulumi.IntOutput `pulumi:"timeout"` 257 // The type of predefined worker that is allocated when a job runs. Accepts a value of Standard, G.1X, G.2X, or G.025X for Spark jobs. Accepts the value Z.2X for Ray jobs. 258 // * For the Standard worker type, each worker provides 4 vCPU, 16 GB of memory and a 50GB disk, and 2 executors per worker. 259 // * For the G.1X worker type, each worker maps to 1 DPU (4 vCPU, 16 GB of memory, 64 GB disk), and provides 1 executor per worker. Recommended for memory-intensive jobs. 260 // * For the G.2X worker type, each worker maps to 2 DPU (8 vCPU, 32 GB of memory, 128 GB disk), and provides 1 executor per worker. Recommended for memory-intensive jobs. 261 // * For the G.4X worker type, each worker maps to 4 DPU (16 vCPUs, 64 GB of memory) with 256GB disk (approximately 235GB free), and provides 1 executor per worker. Recommended for memory-intensive jobs. Only available for Glue version 3.0. Available AWS Regions: US East (Ohio), US East (N. Virginia), US West (Oregon), Asia Pacific (Singapore), Asia Pacific (Sydney), Asia Pacific (Tokyo), Canada (Central), Europe (Frankfurt), Europe (Ireland), and Europe (Stockholm). 262 // * For the G.8X worker type, each worker maps to 8 DPU (32 vCPUs, 128 GB of memory) with 512GB disk (approximately 487GB free), and provides 1 executor per worker. Recommended for memory-intensive jobs. Only available for Glue version 3.0. Available AWS Regions: US East (Ohio), US East (N. Virginia), US West (Oregon), Asia Pacific (Singapore), Asia Pacific (Sydney), Asia Pacific (Tokyo), Canada (Central), Europe (Frankfurt), Europe (Ireland), and Europe (Stockholm). 263 // * For the G.025X worker type, each worker maps to 0.25 DPU (2 vCPU, 4GB of memory, 64 GB disk), and provides 1 executor per worker. Recommended for low volume streaming jobs. Only available for Glue version 3.0. 264 // * For the Z.2X worker type, each worker maps to 2 M-DPU (8vCPU, 64 GB of m emory, 128 GB disk), and provides up to 8 Ray workers based on the autoscaler. 265 WorkerType pulumi.StringOutput `pulumi:"workerType"` 266 } 267 268 // NewJob registers a new resource with the given unique name, arguments, and options. 269 func NewJob(ctx *pulumi.Context, 270 name string, args *JobArgs, opts ...pulumi.ResourceOption) (*Job, error) { 271 if args == nil { 272 return nil, errors.New("missing one or more required arguments") 273 } 274 275 if args.Command == nil { 276 return nil, errors.New("invalid value for required argument 'Command'") 277 } 278 if args.RoleArn == nil { 279 return nil, errors.New("invalid value for required argument 'RoleArn'") 280 } 281 opts = internal.PkgResourceDefaultOpts(opts) 282 var resource Job 283 err := ctx.RegisterResource("aws:glue/job:Job", name, args, &resource, opts...) 284 if err != nil { 285 return nil, err 286 } 287 return &resource, nil 288 } 289 290 // GetJob gets an existing Job resource's state with the given name, ID, and optional 291 // state properties that are used to uniquely qualify the lookup (nil if not required). 292 func GetJob(ctx *pulumi.Context, 293 name string, id pulumi.IDInput, state *JobState, opts ...pulumi.ResourceOption) (*Job, error) { 294 var resource Job 295 err := ctx.ReadResource("aws:glue/job:Job", name, id, state, &resource, opts...) 296 if err != nil { 297 return nil, err 298 } 299 return &resource, nil 300 } 301 302 // Input properties used for looking up and filtering Job resources. 303 type jobState struct { 304 // Amazon Resource Name (ARN) of Glue Job 305 Arn *string `pulumi:"arn"` 306 // The command of the job. Defined below. 307 Command *JobCommand `pulumi:"command"` 308 // The list of connections used for this job. 309 Connections []string `pulumi:"connections"` 310 // The map of default arguments for this job. You can specify arguments here that your own job-execution script consumes, as well as arguments that AWS Glue itself consumes. For information about how to specify and consume your own Job arguments, see the [Calling AWS Glue APIs in Python](http://docs.aws.amazon.com/glue/latest/dg/aws-glue-programming-python-calling.html) topic in the developer guide. For information about the key-value pairs that AWS Glue consumes to set up your job, see the [Special Parameters Used by AWS Glue](http://docs.aws.amazon.com/glue/latest/dg/aws-glue-programming-python-glue-arguments.html) topic in the developer guide. 311 DefaultArguments map[string]string `pulumi:"defaultArguments"` 312 // Description of the job. 313 Description *string `pulumi:"description"` 314 // Indicates whether the job is run with a standard or flexible execution class. The standard execution class is ideal for time-sensitive workloads that require fast job startup and dedicated resources. Valid value: `FLEX`, `STANDARD`. 315 ExecutionClass *string `pulumi:"executionClass"` 316 // Execution property of the job. Defined below. 317 ExecutionProperty *JobExecutionProperty `pulumi:"executionProperty"` 318 // The version of glue to use, for example "1.0". Ray jobs should set this to 4.0 or greater. For information about available versions, see the [AWS Glue Release Notes](https://docs.aws.amazon.com/glue/latest/dg/release-notes.html). 319 GlueVersion *string `pulumi:"glueVersion"` 320 // The maximum number of AWS Glue data processing units (DPUs) that can be allocated when this job runs. `Required` when `pythonshell` is set, accept either `0.0625` or `1.0`. Use `numberOfWorkers` and `workerType` arguments instead with `glueVersion` `2.0` and above. 321 MaxCapacity *float64 `pulumi:"maxCapacity"` 322 // The maximum number of times to retry this job if it fails. 323 MaxRetries *int `pulumi:"maxRetries"` 324 // The name you assign to this job. It must be unique in your account. 325 Name *string `pulumi:"name"` 326 // Non-overridable arguments for this job, specified as name-value pairs. 327 NonOverridableArguments map[string]string `pulumi:"nonOverridableArguments"` 328 // Notification property of the job. Defined below. 329 NotificationProperty *JobNotificationProperty `pulumi:"notificationProperty"` 330 // The number of workers of a defined workerType that are allocated when a job runs. 331 NumberOfWorkers *int `pulumi:"numberOfWorkers"` 332 // The ARN of the IAM role associated with this job. 333 RoleArn *string `pulumi:"roleArn"` 334 // The name of the Security Configuration to be associated with the job. 335 SecurityConfiguration *string `pulumi:"securityConfiguration"` 336 // Key-value map of resource tags. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. 337 Tags map[string]string `pulumi:"tags"` 338 // A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block. 339 // 340 // Deprecated: Please use `tags` instead. 341 TagsAll map[string]string `pulumi:"tagsAll"` 342 // The job timeout in minutes. The default is 2880 minutes (48 hours) for `glueetl` and `pythonshell` jobs, and null (unlimited) for `gluestreaming` jobs. 343 Timeout *int `pulumi:"timeout"` 344 // The type of predefined worker that is allocated when a job runs. Accepts a value of Standard, G.1X, G.2X, or G.025X for Spark jobs. Accepts the value Z.2X for Ray jobs. 345 // * For the Standard worker type, each worker provides 4 vCPU, 16 GB of memory and a 50GB disk, and 2 executors per worker. 346 // * For the G.1X worker type, each worker maps to 1 DPU (4 vCPU, 16 GB of memory, 64 GB disk), and provides 1 executor per worker. Recommended for memory-intensive jobs. 347 // * For the G.2X worker type, each worker maps to 2 DPU (8 vCPU, 32 GB of memory, 128 GB disk), and provides 1 executor per worker. Recommended for memory-intensive jobs. 348 // * For the G.4X worker type, each worker maps to 4 DPU (16 vCPUs, 64 GB of memory) with 256GB disk (approximately 235GB free), and provides 1 executor per worker. Recommended for memory-intensive jobs. Only available for Glue version 3.0. Available AWS Regions: US East (Ohio), US East (N. Virginia), US West (Oregon), Asia Pacific (Singapore), Asia Pacific (Sydney), Asia Pacific (Tokyo), Canada (Central), Europe (Frankfurt), Europe (Ireland), and Europe (Stockholm). 349 // * For the G.8X worker type, each worker maps to 8 DPU (32 vCPUs, 128 GB of memory) with 512GB disk (approximately 487GB free), and provides 1 executor per worker. Recommended for memory-intensive jobs. Only available for Glue version 3.0. Available AWS Regions: US East (Ohio), US East (N. Virginia), US West (Oregon), Asia Pacific (Singapore), Asia Pacific (Sydney), Asia Pacific (Tokyo), Canada (Central), Europe (Frankfurt), Europe (Ireland), and Europe (Stockholm). 350 // * For the G.025X worker type, each worker maps to 0.25 DPU (2 vCPU, 4GB of memory, 64 GB disk), and provides 1 executor per worker. Recommended for low volume streaming jobs. Only available for Glue version 3.0. 351 // * For the Z.2X worker type, each worker maps to 2 M-DPU (8vCPU, 64 GB of m emory, 128 GB disk), and provides up to 8 Ray workers based on the autoscaler. 352 WorkerType *string `pulumi:"workerType"` 353 } 354 355 type JobState struct { 356 // Amazon Resource Name (ARN) of Glue Job 357 Arn pulumi.StringPtrInput 358 // The command of the job. Defined below. 359 Command JobCommandPtrInput 360 // The list of connections used for this job. 361 Connections pulumi.StringArrayInput 362 // The map of default arguments for this job. You can specify arguments here that your own job-execution script consumes, as well as arguments that AWS Glue itself consumes. For information about how to specify and consume your own Job arguments, see the [Calling AWS Glue APIs in Python](http://docs.aws.amazon.com/glue/latest/dg/aws-glue-programming-python-calling.html) topic in the developer guide. For information about the key-value pairs that AWS Glue consumes to set up your job, see the [Special Parameters Used by AWS Glue](http://docs.aws.amazon.com/glue/latest/dg/aws-glue-programming-python-glue-arguments.html) topic in the developer guide. 363 DefaultArguments pulumi.StringMapInput 364 // Description of the job. 365 Description pulumi.StringPtrInput 366 // Indicates whether the job is run with a standard or flexible execution class. The standard execution class is ideal for time-sensitive workloads that require fast job startup and dedicated resources. Valid value: `FLEX`, `STANDARD`. 367 ExecutionClass pulumi.StringPtrInput 368 // Execution property of the job. Defined below. 369 ExecutionProperty JobExecutionPropertyPtrInput 370 // The version of glue to use, for example "1.0". Ray jobs should set this to 4.0 or greater. For information about available versions, see the [AWS Glue Release Notes](https://docs.aws.amazon.com/glue/latest/dg/release-notes.html). 371 GlueVersion pulumi.StringPtrInput 372 // The maximum number of AWS Glue data processing units (DPUs) that can be allocated when this job runs. `Required` when `pythonshell` is set, accept either `0.0625` or `1.0`. Use `numberOfWorkers` and `workerType` arguments instead with `glueVersion` `2.0` and above. 373 MaxCapacity pulumi.Float64PtrInput 374 // The maximum number of times to retry this job if it fails. 375 MaxRetries pulumi.IntPtrInput 376 // The name you assign to this job. It must be unique in your account. 377 Name pulumi.StringPtrInput 378 // Non-overridable arguments for this job, specified as name-value pairs. 379 NonOverridableArguments pulumi.StringMapInput 380 // Notification property of the job. Defined below. 381 NotificationProperty JobNotificationPropertyPtrInput 382 // The number of workers of a defined workerType that are allocated when a job runs. 383 NumberOfWorkers pulumi.IntPtrInput 384 // The ARN of the IAM role associated with this job. 385 RoleArn pulumi.StringPtrInput 386 // The name of the Security Configuration to be associated with the job. 387 SecurityConfiguration pulumi.StringPtrInput 388 // Key-value map of resource tags. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. 389 Tags pulumi.StringMapInput 390 // A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block. 391 // 392 // Deprecated: Please use `tags` instead. 393 TagsAll pulumi.StringMapInput 394 // The job timeout in minutes. The default is 2880 minutes (48 hours) for `glueetl` and `pythonshell` jobs, and null (unlimited) for `gluestreaming` jobs. 395 Timeout pulumi.IntPtrInput 396 // The type of predefined worker that is allocated when a job runs. Accepts a value of Standard, G.1X, G.2X, or G.025X for Spark jobs. Accepts the value Z.2X for Ray jobs. 397 // * For the Standard worker type, each worker provides 4 vCPU, 16 GB of memory and a 50GB disk, and 2 executors per worker. 398 // * For the G.1X worker type, each worker maps to 1 DPU (4 vCPU, 16 GB of memory, 64 GB disk), and provides 1 executor per worker. Recommended for memory-intensive jobs. 399 // * For the G.2X worker type, each worker maps to 2 DPU (8 vCPU, 32 GB of memory, 128 GB disk), and provides 1 executor per worker. Recommended for memory-intensive jobs. 400 // * For the G.4X worker type, each worker maps to 4 DPU (16 vCPUs, 64 GB of memory) with 256GB disk (approximately 235GB free), and provides 1 executor per worker. Recommended for memory-intensive jobs. Only available for Glue version 3.0. Available AWS Regions: US East (Ohio), US East (N. Virginia), US West (Oregon), Asia Pacific (Singapore), Asia Pacific (Sydney), Asia Pacific (Tokyo), Canada (Central), Europe (Frankfurt), Europe (Ireland), and Europe (Stockholm). 401 // * For the G.8X worker type, each worker maps to 8 DPU (32 vCPUs, 128 GB of memory) with 512GB disk (approximately 487GB free), and provides 1 executor per worker. Recommended for memory-intensive jobs. Only available for Glue version 3.0. Available AWS Regions: US East (Ohio), US East (N. Virginia), US West (Oregon), Asia Pacific (Singapore), Asia Pacific (Sydney), Asia Pacific (Tokyo), Canada (Central), Europe (Frankfurt), Europe (Ireland), and Europe (Stockholm). 402 // * For the G.025X worker type, each worker maps to 0.25 DPU (2 vCPU, 4GB of memory, 64 GB disk), and provides 1 executor per worker. Recommended for low volume streaming jobs. Only available for Glue version 3.0. 403 // * For the Z.2X worker type, each worker maps to 2 M-DPU (8vCPU, 64 GB of m emory, 128 GB disk), and provides up to 8 Ray workers based on the autoscaler. 404 WorkerType pulumi.StringPtrInput 405 } 406 407 func (JobState) ElementType() reflect.Type { 408 return reflect.TypeOf((*jobState)(nil)).Elem() 409 } 410 411 type jobArgs struct { 412 // The command of the job. Defined below. 413 Command JobCommand `pulumi:"command"` 414 // The list of connections used for this job. 415 Connections []string `pulumi:"connections"` 416 // The map of default arguments for this job. You can specify arguments here that your own job-execution script consumes, as well as arguments that AWS Glue itself consumes. For information about how to specify and consume your own Job arguments, see the [Calling AWS Glue APIs in Python](http://docs.aws.amazon.com/glue/latest/dg/aws-glue-programming-python-calling.html) topic in the developer guide. For information about the key-value pairs that AWS Glue consumes to set up your job, see the [Special Parameters Used by AWS Glue](http://docs.aws.amazon.com/glue/latest/dg/aws-glue-programming-python-glue-arguments.html) topic in the developer guide. 417 DefaultArguments map[string]string `pulumi:"defaultArguments"` 418 // Description of the job. 419 Description *string `pulumi:"description"` 420 // Indicates whether the job is run with a standard or flexible execution class. The standard execution class is ideal for time-sensitive workloads that require fast job startup and dedicated resources. Valid value: `FLEX`, `STANDARD`. 421 ExecutionClass *string `pulumi:"executionClass"` 422 // Execution property of the job. Defined below. 423 ExecutionProperty *JobExecutionProperty `pulumi:"executionProperty"` 424 // The version of glue to use, for example "1.0". Ray jobs should set this to 4.0 or greater. For information about available versions, see the [AWS Glue Release Notes](https://docs.aws.amazon.com/glue/latest/dg/release-notes.html). 425 GlueVersion *string `pulumi:"glueVersion"` 426 // The maximum number of AWS Glue data processing units (DPUs) that can be allocated when this job runs. `Required` when `pythonshell` is set, accept either `0.0625` or `1.0`. Use `numberOfWorkers` and `workerType` arguments instead with `glueVersion` `2.0` and above. 427 MaxCapacity *float64 `pulumi:"maxCapacity"` 428 // The maximum number of times to retry this job if it fails. 429 MaxRetries *int `pulumi:"maxRetries"` 430 // The name you assign to this job. It must be unique in your account. 431 Name *string `pulumi:"name"` 432 // Non-overridable arguments for this job, specified as name-value pairs. 433 NonOverridableArguments map[string]string `pulumi:"nonOverridableArguments"` 434 // Notification property of the job. Defined below. 435 NotificationProperty *JobNotificationProperty `pulumi:"notificationProperty"` 436 // The number of workers of a defined workerType that are allocated when a job runs. 437 NumberOfWorkers *int `pulumi:"numberOfWorkers"` 438 // The ARN of the IAM role associated with this job. 439 RoleArn string `pulumi:"roleArn"` 440 // The name of the Security Configuration to be associated with the job. 441 SecurityConfiguration *string `pulumi:"securityConfiguration"` 442 // Key-value map of resource tags. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. 443 Tags map[string]string `pulumi:"tags"` 444 // The job timeout in minutes. The default is 2880 minutes (48 hours) for `glueetl` and `pythonshell` jobs, and null (unlimited) for `gluestreaming` jobs. 445 Timeout *int `pulumi:"timeout"` 446 // The type of predefined worker that is allocated when a job runs. Accepts a value of Standard, G.1X, G.2X, or G.025X for Spark jobs. Accepts the value Z.2X for Ray jobs. 447 // * For the Standard worker type, each worker provides 4 vCPU, 16 GB of memory and a 50GB disk, and 2 executors per worker. 448 // * For the G.1X worker type, each worker maps to 1 DPU (4 vCPU, 16 GB of memory, 64 GB disk), and provides 1 executor per worker. Recommended for memory-intensive jobs. 449 // * For the G.2X worker type, each worker maps to 2 DPU (8 vCPU, 32 GB of memory, 128 GB disk), and provides 1 executor per worker. Recommended for memory-intensive jobs. 450 // * For the G.4X worker type, each worker maps to 4 DPU (16 vCPUs, 64 GB of memory) with 256GB disk (approximately 235GB free), and provides 1 executor per worker. Recommended for memory-intensive jobs. Only available for Glue version 3.0. Available AWS Regions: US East (Ohio), US East (N. Virginia), US West (Oregon), Asia Pacific (Singapore), Asia Pacific (Sydney), Asia Pacific (Tokyo), Canada (Central), Europe (Frankfurt), Europe (Ireland), and Europe (Stockholm). 451 // * For the G.8X worker type, each worker maps to 8 DPU (32 vCPUs, 128 GB of memory) with 512GB disk (approximately 487GB free), and provides 1 executor per worker. Recommended for memory-intensive jobs. Only available for Glue version 3.0. Available AWS Regions: US East (Ohio), US East (N. Virginia), US West (Oregon), Asia Pacific (Singapore), Asia Pacific (Sydney), Asia Pacific (Tokyo), Canada (Central), Europe (Frankfurt), Europe (Ireland), and Europe (Stockholm). 452 // * For the G.025X worker type, each worker maps to 0.25 DPU (2 vCPU, 4GB of memory, 64 GB disk), and provides 1 executor per worker. Recommended for low volume streaming jobs. Only available for Glue version 3.0. 453 // * For the Z.2X worker type, each worker maps to 2 M-DPU (8vCPU, 64 GB of m emory, 128 GB disk), and provides up to 8 Ray workers based on the autoscaler. 454 WorkerType *string `pulumi:"workerType"` 455 } 456 457 // The set of arguments for constructing a Job resource. 458 type JobArgs struct { 459 // The command of the job. Defined below. 460 Command JobCommandInput 461 // The list of connections used for this job. 462 Connections pulumi.StringArrayInput 463 // The map of default arguments for this job. You can specify arguments here that your own job-execution script consumes, as well as arguments that AWS Glue itself consumes. For information about how to specify and consume your own Job arguments, see the [Calling AWS Glue APIs in Python](http://docs.aws.amazon.com/glue/latest/dg/aws-glue-programming-python-calling.html) topic in the developer guide. For information about the key-value pairs that AWS Glue consumes to set up your job, see the [Special Parameters Used by AWS Glue](http://docs.aws.amazon.com/glue/latest/dg/aws-glue-programming-python-glue-arguments.html) topic in the developer guide. 464 DefaultArguments pulumi.StringMapInput 465 // Description of the job. 466 Description pulumi.StringPtrInput 467 // Indicates whether the job is run with a standard or flexible execution class. The standard execution class is ideal for time-sensitive workloads that require fast job startup and dedicated resources. Valid value: `FLEX`, `STANDARD`. 468 ExecutionClass pulumi.StringPtrInput 469 // Execution property of the job. Defined below. 470 ExecutionProperty JobExecutionPropertyPtrInput 471 // The version of glue to use, for example "1.0". Ray jobs should set this to 4.0 or greater. For information about available versions, see the [AWS Glue Release Notes](https://docs.aws.amazon.com/glue/latest/dg/release-notes.html). 472 GlueVersion pulumi.StringPtrInput 473 // The maximum number of AWS Glue data processing units (DPUs) that can be allocated when this job runs. `Required` when `pythonshell` is set, accept either `0.0625` or `1.0`. Use `numberOfWorkers` and `workerType` arguments instead with `glueVersion` `2.0` and above. 474 MaxCapacity pulumi.Float64PtrInput 475 // The maximum number of times to retry this job if it fails. 476 MaxRetries pulumi.IntPtrInput 477 // The name you assign to this job. It must be unique in your account. 478 Name pulumi.StringPtrInput 479 // Non-overridable arguments for this job, specified as name-value pairs. 480 NonOverridableArguments pulumi.StringMapInput 481 // Notification property of the job. Defined below. 482 NotificationProperty JobNotificationPropertyPtrInput 483 // The number of workers of a defined workerType that are allocated when a job runs. 484 NumberOfWorkers pulumi.IntPtrInput 485 // The ARN of the IAM role associated with this job. 486 RoleArn pulumi.StringInput 487 // The name of the Security Configuration to be associated with the job. 488 SecurityConfiguration pulumi.StringPtrInput 489 // Key-value map of resource tags. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. 490 Tags pulumi.StringMapInput 491 // The job timeout in minutes. The default is 2880 minutes (48 hours) for `glueetl` and `pythonshell` jobs, and null (unlimited) for `gluestreaming` jobs. 492 Timeout pulumi.IntPtrInput 493 // The type of predefined worker that is allocated when a job runs. Accepts a value of Standard, G.1X, G.2X, or G.025X for Spark jobs. Accepts the value Z.2X for Ray jobs. 494 // * For the Standard worker type, each worker provides 4 vCPU, 16 GB of memory and a 50GB disk, and 2 executors per worker. 495 // * For the G.1X worker type, each worker maps to 1 DPU (4 vCPU, 16 GB of memory, 64 GB disk), and provides 1 executor per worker. Recommended for memory-intensive jobs. 496 // * For the G.2X worker type, each worker maps to 2 DPU (8 vCPU, 32 GB of memory, 128 GB disk), and provides 1 executor per worker. Recommended for memory-intensive jobs. 497 // * For the G.4X worker type, each worker maps to 4 DPU (16 vCPUs, 64 GB of memory) with 256GB disk (approximately 235GB free), and provides 1 executor per worker. Recommended for memory-intensive jobs. Only available for Glue version 3.0. Available AWS Regions: US East (Ohio), US East (N. Virginia), US West (Oregon), Asia Pacific (Singapore), Asia Pacific (Sydney), Asia Pacific (Tokyo), Canada (Central), Europe (Frankfurt), Europe (Ireland), and Europe (Stockholm). 498 // * For the G.8X worker type, each worker maps to 8 DPU (32 vCPUs, 128 GB of memory) with 512GB disk (approximately 487GB free), and provides 1 executor per worker. Recommended for memory-intensive jobs. Only available for Glue version 3.0. Available AWS Regions: US East (Ohio), US East (N. Virginia), US West (Oregon), Asia Pacific (Singapore), Asia Pacific (Sydney), Asia Pacific (Tokyo), Canada (Central), Europe (Frankfurt), Europe (Ireland), and Europe (Stockholm). 499 // * For the G.025X worker type, each worker maps to 0.25 DPU (2 vCPU, 4GB of memory, 64 GB disk), and provides 1 executor per worker. Recommended for low volume streaming jobs. Only available for Glue version 3.0. 500 // * For the Z.2X worker type, each worker maps to 2 M-DPU (8vCPU, 64 GB of m emory, 128 GB disk), and provides up to 8 Ray workers based on the autoscaler. 501 WorkerType pulumi.StringPtrInput 502 } 503 504 func (JobArgs) ElementType() reflect.Type { 505 return reflect.TypeOf((*jobArgs)(nil)).Elem() 506 } 507 508 type JobInput interface { 509 pulumi.Input 510 511 ToJobOutput() JobOutput 512 ToJobOutputWithContext(ctx context.Context) JobOutput 513 } 514 515 func (*Job) ElementType() reflect.Type { 516 return reflect.TypeOf((**Job)(nil)).Elem() 517 } 518 519 func (i *Job) ToJobOutput() JobOutput { 520 return i.ToJobOutputWithContext(context.Background()) 521 } 522 523 func (i *Job) ToJobOutputWithContext(ctx context.Context) JobOutput { 524 return pulumi.ToOutputWithContext(ctx, i).(JobOutput) 525 } 526 527 // JobArrayInput is an input type that accepts JobArray and JobArrayOutput values. 528 // You can construct a concrete instance of `JobArrayInput` via: 529 // 530 // JobArray{ JobArgs{...} } 531 type JobArrayInput interface { 532 pulumi.Input 533 534 ToJobArrayOutput() JobArrayOutput 535 ToJobArrayOutputWithContext(context.Context) JobArrayOutput 536 } 537 538 type JobArray []JobInput 539 540 func (JobArray) ElementType() reflect.Type { 541 return reflect.TypeOf((*[]*Job)(nil)).Elem() 542 } 543 544 func (i JobArray) ToJobArrayOutput() JobArrayOutput { 545 return i.ToJobArrayOutputWithContext(context.Background()) 546 } 547 548 func (i JobArray) ToJobArrayOutputWithContext(ctx context.Context) JobArrayOutput { 549 return pulumi.ToOutputWithContext(ctx, i).(JobArrayOutput) 550 } 551 552 // JobMapInput is an input type that accepts JobMap and JobMapOutput values. 553 // You can construct a concrete instance of `JobMapInput` via: 554 // 555 // JobMap{ "key": JobArgs{...} } 556 type JobMapInput interface { 557 pulumi.Input 558 559 ToJobMapOutput() JobMapOutput 560 ToJobMapOutputWithContext(context.Context) JobMapOutput 561 } 562 563 type JobMap map[string]JobInput 564 565 func (JobMap) ElementType() reflect.Type { 566 return reflect.TypeOf((*map[string]*Job)(nil)).Elem() 567 } 568 569 func (i JobMap) ToJobMapOutput() JobMapOutput { 570 return i.ToJobMapOutputWithContext(context.Background()) 571 } 572 573 func (i JobMap) ToJobMapOutputWithContext(ctx context.Context) JobMapOutput { 574 return pulumi.ToOutputWithContext(ctx, i).(JobMapOutput) 575 } 576 577 type JobOutput struct{ *pulumi.OutputState } 578 579 func (JobOutput) ElementType() reflect.Type { 580 return reflect.TypeOf((**Job)(nil)).Elem() 581 } 582 583 func (o JobOutput) ToJobOutput() JobOutput { 584 return o 585 } 586 587 func (o JobOutput) ToJobOutputWithContext(ctx context.Context) JobOutput { 588 return o 589 } 590 591 // Amazon Resource Name (ARN) of Glue Job 592 func (o JobOutput) Arn() pulumi.StringOutput { 593 return o.ApplyT(func(v *Job) pulumi.StringOutput { return v.Arn }).(pulumi.StringOutput) 594 } 595 596 // The command of the job. Defined below. 597 func (o JobOutput) Command() JobCommandOutput { 598 return o.ApplyT(func(v *Job) JobCommandOutput { return v.Command }).(JobCommandOutput) 599 } 600 601 // The list of connections used for this job. 602 func (o JobOutput) Connections() pulumi.StringArrayOutput { 603 return o.ApplyT(func(v *Job) pulumi.StringArrayOutput { return v.Connections }).(pulumi.StringArrayOutput) 604 } 605 606 // The map of default arguments for this job. You can specify arguments here that your own job-execution script consumes, as well as arguments that AWS Glue itself consumes. For information about how to specify and consume your own Job arguments, see the [Calling AWS Glue APIs in Python](http://docs.aws.amazon.com/glue/latest/dg/aws-glue-programming-python-calling.html) topic in the developer guide. For information about the key-value pairs that AWS Glue consumes to set up your job, see the [Special Parameters Used by AWS Glue](http://docs.aws.amazon.com/glue/latest/dg/aws-glue-programming-python-glue-arguments.html) topic in the developer guide. 607 func (o JobOutput) DefaultArguments() pulumi.StringMapOutput { 608 return o.ApplyT(func(v *Job) pulumi.StringMapOutput { return v.DefaultArguments }).(pulumi.StringMapOutput) 609 } 610 611 // Description of the job. 612 func (o JobOutput) Description() pulumi.StringPtrOutput { 613 return o.ApplyT(func(v *Job) pulumi.StringPtrOutput { return v.Description }).(pulumi.StringPtrOutput) 614 } 615 616 // Indicates whether the job is run with a standard or flexible execution class. The standard execution class is ideal for time-sensitive workloads that require fast job startup and dedicated resources. Valid value: `FLEX`, `STANDARD`. 617 func (o JobOutput) ExecutionClass() pulumi.StringPtrOutput { 618 return o.ApplyT(func(v *Job) pulumi.StringPtrOutput { return v.ExecutionClass }).(pulumi.StringPtrOutput) 619 } 620 621 // Execution property of the job. Defined below. 622 func (o JobOutput) ExecutionProperty() JobExecutionPropertyOutput { 623 return o.ApplyT(func(v *Job) JobExecutionPropertyOutput { return v.ExecutionProperty }).(JobExecutionPropertyOutput) 624 } 625 626 // The version of glue to use, for example "1.0". Ray jobs should set this to 4.0 or greater. For information about available versions, see the [AWS Glue Release Notes](https://docs.aws.amazon.com/glue/latest/dg/release-notes.html). 627 func (o JobOutput) GlueVersion() pulumi.StringOutput { 628 return o.ApplyT(func(v *Job) pulumi.StringOutput { return v.GlueVersion }).(pulumi.StringOutput) 629 } 630 631 // The maximum number of AWS Glue data processing units (DPUs) that can be allocated when this job runs. `Required` when `pythonshell` is set, accept either `0.0625` or `1.0`. Use `numberOfWorkers` and `workerType` arguments instead with `glueVersion` `2.0` and above. 632 func (o JobOutput) MaxCapacity() pulumi.Float64Output { 633 return o.ApplyT(func(v *Job) pulumi.Float64Output { return v.MaxCapacity }).(pulumi.Float64Output) 634 } 635 636 // The maximum number of times to retry this job if it fails. 637 func (o JobOutput) MaxRetries() pulumi.IntPtrOutput { 638 return o.ApplyT(func(v *Job) pulumi.IntPtrOutput { return v.MaxRetries }).(pulumi.IntPtrOutput) 639 } 640 641 // The name you assign to this job. It must be unique in your account. 642 func (o JobOutput) Name() pulumi.StringOutput { 643 return o.ApplyT(func(v *Job) pulumi.StringOutput { return v.Name }).(pulumi.StringOutput) 644 } 645 646 // Non-overridable arguments for this job, specified as name-value pairs. 647 func (o JobOutput) NonOverridableArguments() pulumi.StringMapOutput { 648 return o.ApplyT(func(v *Job) pulumi.StringMapOutput { return v.NonOverridableArguments }).(pulumi.StringMapOutput) 649 } 650 651 // Notification property of the job. Defined below. 652 func (o JobOutput) NotificationProperty() JobNotificationPropertyOutput { 653 return o.ApplyT(func(v *Job) JobNotificationPropertyOutput { return v.NotificationProperty }).(JobNotificationPropertyOutput) 654 } 655 656 // The number of workers of a defined workerType that are allocated when a job runs. 657 func (o JobOutput) NumberOfWorkers() pulumi.IntOutput { 658 return o.ApplyT(func(v *Job) pulumi.IntOutput { return v.NumberOfWorkers }).(pulumi.IntOutput) 659 } 660 661 // The ARN of the IAM role associated with this job. 662 func (o JobOutput) RoleArn() pulumi.StringOutput { 663 return o.ApplyT(func(v *Job) pulumi.StringOutput { return v.RoleArn }).(pulumi.StringOutput) 664 } 665 666 // The name of the Security Configuration to be associated with the job. 667 func (o JobOutput) SecurityConfiguration() pulumi.StringPtrOutput { 668 return o.ApplyT(func(v *Job) pulumi.StringPtrOutput { return v.SecurityConfiguration }).(pulumi.StringPtrOutput) 669 } 670 671 // Key-value map of resource tags. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. 672 func (o JobOutput) Tags() pulumi.StringMapOutput { 673 return o.ApplyT(func(v *Job) pulumi.StringMapOutput { return v.Tags }).(pulumi.StringMapOutput) 674 } 675 676 // A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block. 677 // 678 // Deprecated: Please use `tags` instead. 679 func (o JobOutput) TagsAll() pulumi.StringMapOutput { 680 return o.ApplyT(func(v *Job) pulumi.StringMapOutput { return v.TagsAll }).(pulumi.StringMapOutput) 681 } 682 683 // The job timeout in minutes. The default is 2880 minutes (48 hours) for `glueetl` and `pythonshell` jobs, and null (unlimited) for `gluestreaming` jobs. 684 func (o JobOutput) Timeout() pulumi.IntOutput { 685 return o.ApplyT(func(v *Job) pulumi.IntOutput { return v.Timeout }).(pulumi.IntOutput) 686 } 687 688 // The type of predefined worker that is allocated when a job runs. Accepts a value of Standard, G.1X, G.2X, or G.025X for Spark jobs. Accepts the value Z.2X for Ray jobs. 689 // * For the Standard worker type, each worker provides 4 vCPU, 16 GB of memory and a 50GB disk, and 2 executors per worker. 690 // * For the G.1X worker type, each worker maps to 1 DPU (4 vCPU, 16 GB of memory, 64 GB disk), and provides 1 executor per worker. Recommended for memory-intensive jobs. 691 // * For the G.2X worker type, each worker maps to 2 DPU (8 vCPU, 32 GB of memory, 128 GB disk), and provides 1 executor per worker. Recommended for memory-intensive jobs. 692 // * For the G.4X worker type, each worker maps to 4 DPU (16 vCPUs, 64 GB of memory) with 256GB disk (approximately 235GB free), and provides 1 executor per worker. Recommended for memory-intensive jobs. Only available for Glue version 3.0. Available AWS Regions: US East (Ohio), US East (N. Virginia), US West (Oregon), Asia Pacific (Singapore), Asia Pacific (Sydney), Asia Pacific (Tokyo), Canada (Central), Europe (Frankfurt), Europe (Ireland), and Europe (Stockholm). 693 // * For the G.8X worker type, each worker maps to 8 DPU (32 vCPUs, 128 GB of memory) with 512GB disk (approximately 487GB free), and provides 1 executor per worker. Recommended for memory-intensive jobs. Only available for Glue version 3.0. Available AWS Regions: US East (Ohio), US East (N. Virginia), US West (Oregon), Asia Pacific (Singapore), Asia Pacific (Sydney), Asia Pacific (Tokyo), Canada (Central), Europe (Frankfurt), Europe (Ireland), and Europe (Stockholm). 694 // * For the G.025X worker type, each worker maps to 0.25 DPU (2 vCPU, 4GB of memory, 64 GB disk), and provides 1 executor per worker. Recommended for low volume streaming jobs. Only available for Glue version 3.0. 695 // * For the Z.2X worker type, each worker maps to 2 M-DPU (8vCPU, 64 GB of m emory, 128 GB disk), and provides up to 8 Ray workers based on the autoscaler. 696 func (o JobOutput) WorkerType() pulumi.StringOutput { 697 return o.ApplyT(func(v *Job) pulumi.StringOutput { return v.WorkerType }).(pulumi.StringOutput) 698 } 699 700 type JobArrayOutput struct{ *pulumi.OutputState } 701 702 func (JobArrayOutput) ElementType() reflect.Type { 703 return reflect.TypeOf((*[]*Job)(nil)).Elem() 704 } 705 706 func (o JobArrayOutput) ToJobArrayOutput() JobArrayOutput { 707 return o 708 } 709 710 func (o JobArrayOutput) ToJobArrayOutputWithContext(ctx context.Context) JobArrayOutput { 711 return o 712 } 713 714 func (o JobArrayOutput) Index(i pulumi.IntInput) JobOutput { 715 return pulumi.All(o, i).ApplyT(func(vs []interface{}) *Job { 716 return vs[0].([]*Job)[vs[1].(int)] 717 }).(JobOutput) 718 } 719 720 type JobMapOutput struct{ *pulumi.OutputState } 721 722 func (JobMapOutput) ElementType() reflect.Type { 723 return reflect.TypeOf((*map[string]*Job)(nil)).Elem() 724 } 725 726 func (o JobMapOutput) ToJobMapOutput() JobMapOutput { 727 return o 728 } 729 730 func (o JobMapOutput) ToJobMapOutputWithContext(ctx context.Context) JobMapOutput { 731 return o 732 } 733 734 func (o JobMapOutput) MapIndex(k pulumi.StringInput) JobOutput { 735 return pulumi.All(o, k).ApplyT(func(vs []interface{}) *Job { 736 return vs[0].(map[string]*Job)[vs[1].(string)] 737 }).(JobOutput) 738 } 739 740 func init() { 741 pulumi.RegisterInputType(reflect.TypeOf((*JobInput)(nil)).Elem(), &Job{}) 742 pulumi.RegisterInputType(reflect.TypeOf((*JobArrayInput)(nil)).Elem(), JobArray{}) 743 pulumi.RegisterInputType(reflect.TypeOf((*JobMapInput)(nil)).Elem(), JobMap{}) 744 pulumi.RegisterOutputType(JobOutput{}) 745 pulumi.RegisterOutputType(JobArrayOutput{}) 746 pulumi.RegisterOutputType(JobMapOutput{}) 747 }