1// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. 2 3package emr 4 5import ( 6 "fmt" 7 "time" 8 9 "github.com/aws/aws-sdk-go/aws" 10 "github.com/aws/aws-sdk-go/aws/awsutil" 11 "github.com/aws/aws-sdk-go/aws/request" 12 "github.com/aws/aws-sdk-go/private/protocol" 13 "github.com/aws/aws-sdk-go/private/protocol/jsonrpc" 14) 15 16const opAddInstanceFleet = "AddInstanceFleet" 17 18// AddInstanceFleetRequest generates a "aws/request.Request" representing the 19// client's request for the AddInstanceFleet operation. The "output" return 20// value will be populated with the request's response once the request completes 21// successfully. 22// 23// Use "Send" method on the returned Request to send the API call to the service. 24// the "output" return value is not valid until after Send returns without error. 25// 26// See AddInstanceFleet for more information on using the AddInstanceFleet 27// API call, and error handling. 28// 29// This method is useful when you want to inject custom logic or configuration 30// into the SDK's request lifecycle. Such as custom headers, or retry logic. 31// 32// 33// // Example sending a request using the AddInstanceFleetRequest method. 34// req, resp := client.AddInstanceFleetRequest(params) 35// 36// err := req.Send() 37// if err == nil { // resp is now filled 38// fmt.Println(resp) 39// } 40// 41// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/AddInstanceFleet 42func (c *EMR) AddInstanceFleetRequest(input *AddInstanceFleetInput) (req *request.Request, output *AddInstanceFleetOutput) { 43 op := &request.Operation{ 44 Name: opAddInstanceFleet, 45 HTTPMethod: "POST", 46 HTTPPath: "/", 47 } 48 49 if input == nil { 50 input = &AddInstanceFleetInput{} 51 } 52 53 output = &AddInstanceFleetOutput{} 54 req = c.newRequest(op, input, output) 55 return 56} 57 58// AddInstanceFleet API operation for Amazon EMR. 59// 60// Adds an instance fleet to a running cluster. 61// 62// The instance fleet configuration is available only in Amazon EMR versions 63// 4.8.0 and later, excluding 5.0.x. 64// 65// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 66// with awserr.Error's Code and Message methods to get detailed information about 67// the error. 68// 69// See the AWS API reference guide for Amazon EMR's 70// API operation AddInstanceFleet for usage and error information. 71// 72// Returned Error Types: 73// * InternalServerException 74// This exception occurs when there is an internal failure in the Amazon EMR 75// service. 76// 77// * InvalidRequestException 78// This exception occurs when there is something wrong with user input. 79// 80// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/AddInstanceFleet 81func (c *EMR) AddInstanceFleet(input *AddInstanceFleetInput) (*AddInstanceFleetOutput, error) { 82 req, out := c.AddInstanceFleetRequest(input) 83 return out, req.Send() 84} 85 86// AddInstanceFleetWithContext is the same as AddInstanceFleet with the addition of 87// the ability to pass a context and additional request options. 88// 89// See AddInstanceFleet for details on how to use this API operation. 90// 91// The context must be non-nil and will be used for request cancellation. If 92// the context is nil a panic will occur. In the future the SDK may create 93// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 94// for more information on using Contexts. 95func (c *EMR) AddInstanceFleetWithContext(ctx aws.Context, input *AddInstanceFleetInput, opts ...request.Option) (*AddInstanceFleetOutput, error) { 96 req, out := c.AddInstanceFleetRequest(input) 97 req.SetContext(ctx) 98 req.ApplyOptions(opts...) 99 return out, req.Send() 100} 101 102const opAddInstanceGroups = "AddInstanceGroups" 103 104// AddInstanceGroupsRequest generates a "aws/request.Request" representing the 105// client's request for the AddInstanceGroups operation. The "output" return 106// value will be populated with the request's response once the request completes 107// successfully. 108// 109// Use "Send" method on the returned Request to send the API call to the service. 110// the "output" return value is not valid until after Send returns without error. 111// 112// See AddInstanceGroups for more information on using the AddInstanceGroups 113// API call, and error handling. 114// 115// This method is useful when you want to inject custom logic or configuration 116// into the SDK's request lifecycle. Such as custom headers, or retry logic. 117// 118// 119// // Example sending a request using the AddInstanceGroupsRequest method. 120// req, resp := client.AddInstanceGroupsRequest(params) 121// 122// err := req.Send() 123// if err == nil { // resp is now filled 124// fmt.Println(resp) 125// } 126// 127// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/AddInstanceGroups 128func (c *EMR) AddInstanceGroupsRequest(input *AddInstanceGroupsInput) (req *request.Request, output *AddInstanceGroupsOutput) { 129 op := &request.Operation{ 130 Name: opAddInstanceGroups, 131 HTTPMethod: "POST", 132 HTTPPath: "/", 133 } 134 135 if input == nil { 136 input = &AddInstanceGroupsInput{} 137 } 138 139 output = &AddInstanceGroupsOutput{} 140 req = c.newRequest(op, input, output) 141 return 142} 143 144// AddInstanceGroups API operation for Amazon EMR. 145// 146// Adds one or more instance groups to a running cluster. 147// 148// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 149// with awserr.Error's Code and Message methods to get detailed information about 150// the error. 151// 152// See the AWS API reference guide for Amazon EMR's 153// API operation AddInstanceGroups for usage and error information. 154// 155// Returned Error Types: 156// * InternalServerError 157// Indicates that an error occurred while processing the request and that the 158// request was not completed. 159// 160// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/AddInstanceGroups 161func (c *EMR) AddInstanceGroups(input *AddInstanceGroupsInput) (*AddInstanceGroupsOutput, error) { 162 req, out := c.AddInstanceGroupsRequest(input) 163 return out, req.Send() 164} 165 166// AddInstanceGroupsWithContext is the same as AddInstanceGroups with the addition of 167// the ability to pass a context and additional request options. 168// 169// See AddInstanceGroups for details on how to use this API operation. 170// 171// The context must be non-nil and will be used for request cancellation. If 172// the context is nil a panic will occur. In the future the SDK may create 173// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 174// for more information on using Contexts. 175func (c *EMR) AddInstanceGroupsWithContext(ctx aws.Context, input *AddInstanceGroupsInput, opts ...request.Option) (*AddInstanceGroupsOutput, error) { 176 req, out := c.AddInstanceGroupsRequest(input) 177 req.SetContext(ctx) 178 req.ApplyOptions(opts...) 179 return out, req.Send() 180} 181 182const opAddJobFlowSteps = "AddJobFlowSteps" 183 184// AddJobFlowStepsRequest generates a "aws/request.Request" representing the 185// client's request for the AddJobFlowSteps operation. The "output" return 186// value will be populated with the request's response once the request completes 187// successfully. 188// 189// Use "Send" method on the returned Request to send the API call to the service. 190// the "output" return value is not valid until after Send returns without error. 191// 192// See AddJobFlowSteps for more information on using the AddJobFlowSteps 193// API call, and error handling. 194// 195// This method is useful when you want to inject custom logic or configuration 196// into the SDK's request lifecycle. Such as custom headers, or retry logic. 197// 198// 199// // Example sending a request using the AddJobFlowStepsRequest method. 200// req, resp := client.AddJobFlowStepsRequest(params) 201// 202// err := req.Send() 203// if err == nil { // resp is now filled 204// fmt.Println(resp) 205// } 206// 207// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/AddJobFlowSteps 208func (c *EMR) AddJobFlowStepsRequest(input *AddJobFlowStepsInput) (req *request.Request, output *AddJobFlowStepsOutput) { 209 op := &request.Operation{ 210 Name: opAddJobFlowSteps, 211 HTTPMethod: "POST", 212 HTTPPath: "/", 213 } 214 215 if input == nil { 216 input = &AddJobFlowStepsInput{} 217 } 218 219 output = &AddJobFlowStepsOutput{} 220 req = c.newRequest(op, input, output) 221 return 222} 223 224// AddJobFlowSteps API operation for Amazon EMR. 225// 226// AddJobFlowSteps adds new steps to a running cluster. A maximum of 256 steps 227// are allowed in each job flow. 228// 229// If your cluster is long-running (such as a Hive data warehouse) or complex, 230// you may require more than 256 steps to process your data. You can bypass 231// the 256-step limitation in various ways, including using SSH to connect to 232// the master node and submitting queries directly to the software running on 233// the master node, such as Hive and Hadoop. For more information on how to 234// do this, see Add More than 256 Steps to a Cluster (https://docs.aws.amazon.com/emr/latest/ManagementGuide/AddMoreThan256Steps.html) 235// in the Amazon EMR Management Guide. 236// 237// A step specifies the location of a JAR file stored either on the master node 238// of the cluster or in Amazon S3. Each step is performed by the main function 239// of the main class of the JAR file. The main class can be specified either 240// in the manifest of the JAR or by using the MainFunction parameter of the 241// step. 242// 243// Amazon EMR executes each step in the order listed. For a step to be considered 244// complete, the main function must exit with a zero exit code and all Hadoop 245// jobs started while the step was running must have completed and run successfully. 246// 247// You can only add steps to a cluster that is in one of the following states: 248// STARTING, BOOTSTRAPPING, RUNNING, or WAITING. 249// 250// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 251// with awserr.Error's Code and Message methods to get detailed information about 252// the error. 253// 254// See the AWS API reference guide for Amazon EMR's 255// API operation AddJobFlowSteps for usage and error information. 256// 257// Returned Error Types: 258// * InternalServerError 259// Indicates that an error occurred while processing the request and that the 260// request was not completed. 261// 262// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/AddJobFlowSteps 263func (c *EMR) AddJobFlowSteps(input *AddJobFlowStepsInput) (*AddJobFlowStepsOutput, error) { 264 req, out := c.AddJobFlowStepsRequest(input) 265 return out, req.Send() 266} 267 268// AddJobFlowStepsWithContext is the same as AddJobFlowSteps with the addition of 269// the ability to pass a context and additional request options. 270// 271// See AddJobFlowSteps for details on how to use this API operation. 272// 273// The context must be non-nil and will be used for request cancellation. If 274// the context is nil a panic will occur. In the future the SDK may create 275// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 276// for more information on using Contexts. 277func (c *EMR) AddJobFlowStepsWithContext(ctx aws.Context, input *AddJobFlowStepsInput, opts ...request.Option) (*AddJobFlowStepsOutput, error) { 278 req, out := c.AddJobFlowStepsRequest(input) 279 req.SetContext(ctx) 280 req.ApplyOptions(opts...) 281 return out, req.Send() 282} 283 284const opAddTags = "AddTags" 285 286// AddTagsRequest generates a "aws/request.Request" representing the 287// client's request for the AddTags operation. The "output" return 288// value will be populated with the request's response once the request completes 289// successfully. 290// 291// Use "Send" method on the returned Request to send the API call to the service. 292// the "output" return value is not valid until after Send returns without error. 293// 294// See AddTags for more information on using the AddTags 295// API call, and error handling. 296// 297// This method is useful when you want to inject custom logic or configuration 298// into the SDK's request lifecycle. Such as custom headers, or retry logic. 299// 300// 301// // Example sending a request using the AddTagsRequest method. 302// req, resp := client.AddTagsRequest(params) 303// 304// err := req.Send() 305// if err == nil { // resp is now filled 306// fmt.Println(resp) 307// } 308// 309// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/AddTags 310func (c *EMR) AddTagsRequest(input *AddTagsInput) (req *request.Request, output *AddTagsOutput) { 311 op := &request.Operation{ 312 Name: opAddTags, 313 HTTPMethod: "POST", 314 HTTPPath: "/", 315 } 316 317 if input == nil { 318 input = &AddTagsInput{} 319 } 320 321 output = &AddTagsOutput{} 322 req = c.newRequest(op, input, output) 323 req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 324 return 325} 326 327// AddTags API operation for Amazon EMR. 328// 329// Adds tags to an Amazon EMR resource. Tags make it easier to associate clusters 330// in various ways, such as grouping clusters to track your Amazon EMR resource 331// allocation costs. For more information, see Tag Clusters (https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-plan-tags.html). 332// 333// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 334// with awserr.Error's Code and Message methods to get detailed information about 335// the error. 336// 337// See the AWS API reference guide for Amazon EMR's 338// API operation AddTags for usage and error information. 339// 340// Returned Error Types: 341// * InternalServerException 342// This exception occurs when there is an internal failure in the Amazon EMR 343// service. 344// 345// * InvalidRequestException 346// This exception occurs when there is something wrong with user input. 347// 348// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/AddTags 349func (c *EMR) AddTags(input *AddTagsInput) (*AddTagsOutput, error) { 350 req, out := c.AddTagsRequest(input) 351 return out, req.Send() 352} 353 354// AddTagsWithContext is the same as AddTags with the addition of 355// the ability to pass a context and additional request options. 356// 357// See AddTags for details on how to use this API operation. 358// 359// The context must be non-nil and will be used for request cancellation. If 360// the context is nil a panic will occur. In the future the SDK may create 361// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 362// for more information on using Contexts. 363func (c *EMR) AddTagsWithContext(ctx aws.Context, input *AddTagsInput, opts ...request.Option) (*AddTagsOutput, error) { 364 req, out := c.AddTagsRequest(input) 365 req.SetContext(ctx) 366 req.ApplyOptions(opts...) 367 return out, req.Send() 368} 369 370const opCancelSteps = "CancelSteps" 371 372// CancelStepsRequest generates a "aws/request.Request" representing the 373// client's request for the CancelSteps operation. The "output" return 374// value will be populated with the request's response once the request completes 375// successfully. 376// 377// Use "Send" method on the returned Request to send the API call to the service. 378// the "output" return value is not valid until after Send returns without error. 379// 380// See CancelSteps for more information on using the CancelSteps 381// API call, and error handling. 382// 383// This method is useful when you want to inject custom logic or configuration 384// into the SDK's request lifecycle. Such as custom headers, or retry logic. 385// 386// 387// // Example sending a request using the CancelStepsRequest method. 388// req, resp := client.CancelStepsRequest(params) 389// 390// err := req.Send() 391// if err == nil { // resp is now filled 392// fmt.Println(resp) 393// } 394// 395// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/CancelSteps 396func (c *EMR) CancelStepsRequest(input *CancelStepsInput) (req *request.Request, output *CancelStepsOutput) { 397 op := &request.Operation{ 398 Name: opCancelSteps, 399 HTTPMethod: "POST", 400 HTTPPath: "/", 401 } 402 403 if input == nil { 404 input = &CancelStepsInput{} 405 } 406 407 output = &CancelStepsOutput{} 408 req = c.newRequest(op, input, output) 409 return 410} 411 412// CancelSteps API operation for Amazon EMR. 413// 414// Cancels a pending step or steps in a running cluster. Available only in Amazon 415// EMR versions 4.8.0 and later, excluding version 5.0.0. A maximum of 256 steps 416// are allowed in each CancelSteps request. CancelSteps is idempotent but asynchronous; 417// it does not guarantee that a step will be canceled, even if the request is 418// successfully submitted. When you use Amazon EMR versions 5.28.0 and later, 419// you can cancel steps that are in a PENDING or RUNNING state. In earlier versions 420// of Amazon EMR, you can only cancel steps that are in a PENDING state. 421// 422// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 423// with awserr.Error's Code and Message methods to get detailed information about 424// the error. 425// 426// See the AWS API reference guide for Amazon EMR's 427// API operation CancelSteps for usage and error information. 428// 429// Returned Error Types: 430// * InternalServerError 431// Indicates that an error occurred while processing the request and that the 432// request was not completed. 433// 434// * InvalidRequestException 435// This exception occurs when there is something wrong with user input. 436// 437// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/CancelSteps 438func (c *EMR) CancelSteps(input *CancelStepsInput) (*CancelStepsOutput, error) { 439 req, out := c.CancelStepsRequest(input) 440 return out, req.Send() 441} 442 443// CancelStepsWithContext is the same as CancelSteps with the addition of 444// the ability to pass a context and additional request options. 445// 446// See CancelSteps for details on how to use this API operation. 447// 448// The context must be non-nil and will be used for request cancellation. If 449// the context is nil a panic will occur. In the future the SDK may create 450// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 451// for more information on using Contexts. 452func (c *EMR) CancelStepsWithContext(ctx aws.Context, input *CancelStepsInput, opts ...request.Option) (*CancelStepsOutput, error) { 453 req, out := c.CancelStepsRequest(input) 454 req.SetContext(ctx) 455 req.ApplyOptions(opts...) 456 return out, req.Send() 457} 458 459const opCreateSecurityConfiguration = "CreateSecurityConfiguration" 460 461// CreateSecurityConfigurationRequest generates a "aws/request.Request" representing the 462// client's request for the CreateSecurityConfiguration operation. The "output" return 463// value will be populated with the request's response once the request completes 464// successfully. 465// 466// Use "Send" method on the returned Request to send the API call to the service. 467// the "output" return value is not valid until after Send returns without error. 468// 469// See CreateSecurityConfiguration for more information on using the CreateSecurityConfiguration 470// API call, and error handling. 471// 472// This method is useful when you want to inject custom logic or configuration 473// into the SDK's request lifecycle. Such as custom headers, or retry logic. 474// 475// 476// // Example sending a request using the CreateSecurityConfigurationRequest method. 477// req, resp := client.CreateSecurityConfigurationRequest(params) 478// 479// err := req.Send() 480// if err == nil { // resp is now filled 481// fmt.Println(resp) 482// } 483// 484// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/CreateSecurityConfiguration 485func (c *EMR) CreateSecurityConfigurationRequest(input *CreateSecurityConfigurationInput) (req *request.Request, output *CreateSecurityConfigurationOutput) { 486 op := &request.Operation{ 487 Name: opCreateSecurityConfiguration, 488 HTTPMethod: "POST", 489 HTTPPath: "/", 490 } 491 492 if input == nil { 493 input = &CreateSecurityConfigurationInput{} 494 } 495 496 output = &CreateSecurityConfigurationOutput{} 497 req = c.newRequest(op, input, output) 498 return 499} 500 501// CreateSecurityConfiguration API operation for Amazon EMR. 502// 503// Creates a security configuration, which is stored in the service and can 504// be specified when a cluster is created. 505// 506// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 507// with awserr.Error's Code and Message methods to get detailed information about 508// the error. 509// 510// See the AWS API reference guide for Amazon EMR's 511// API operation CreateSecurityConfiguration for usage and error information. 512// 513// Returned Error Types: 514// * InternalServerException 515// This exception occurs when there is an internal failure in the Amazon EMR 516// service. 517// 518// * InvalidRequestException 519// This exception occurs when there is something wrong with user input. 520// 521// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/CreateSecurityConfiguration 522func (c *EMR) CreateSecurityConfiguration(input *CreateSecurityConfigurationInput) (*CreateSecurityConfigurationOutput, error) { 523 req, out := c.CreateSecurityConfigurationRequest(input) 524 return out, req.Send() 525} 526 527// CreateSecurityConfigurationWithContext is the same as CreateSecurityConfiguration with the addition of 528// the ability to pass a context and additional request options. 529// 530// See CreateSecurityConfiguration for details on how to use this API operation. 531// 532// The context must be non-nil and will be used for request cancellation. If 533// the context is nil a panic will occur. In the future the SDK may create 534// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 535// for more information on using Contexts. 536func (c *EMR) CreateSecurityConfigurationWithContext(ctx aws.Context, input *CreateSecurityConfigurationInput, opts ...request.Option) (*CreateSecurityConfigurationOutput, error) { 537 req, out := c.CreateSecurityConfigurationRequest(input) 538 req.SetContext(ctx) 539 req.ApplyOptions(opts...) 540 return out, req.Send() 541} 542 543const opCreateStudio = "CreateStudio" 544 545// CreateStudioRequest generates a "aws/request.Request" representing the 546// client's request for the CreateStudio operation. The "output" return 547// value will be populated with the request's response once the request completes 548// successfully. 549// 550// Use "Send" method on the returned Request to send the API call to the service. 551// the "output" return value is not valid until after Send returns without error. 552// 553// See CreateStudio for more information on using the CreateStudio 554// API call, and error handling. 555// 556// This method is useful when you want to inject custom logic or configuration 557// into the SDK's request lifecycle. Such as custom headers, or retry logic. 558// 559// 560// // Example sending a request using the CreateStudioRequest method. 561// req, resp := client.CreateStudioRequest(params) 562// 563// err := req.Send() 564// if err == nil { // resp is now filled 565// fmt.Println(resp) 566// } 567// 568// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/CreateStudio 569func (c *EMR) CreateStudioRequest(input *CreateStudioInput) (req *request.Request, output *CreateStudioOutput) { 570 op := &request.Operation{ 571 Name: opCreateStudio, 572 HTTPMethod: "POST", 573 HTTPPath: "/", 574 } 575 576 if input == nil { 577 input = &CreateStudioInput{} 578 } 579 580 output = &CreateStudioOutput{} 581 req = c.newRequest(op, input, output) 582 return 583} 584 585// CreateStudio API operation for Amazon EMR. 586// 587// Creates a new Amazon EMR Studio. 588// 589// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 590// with awserr.Error's Code and Message methods to get detailed information about 591// the error. 592// 593// See the AWS API reference guide for Amazon EMR's 594// API operation CreateStudio for usage and error information. 595// 596// Returned Error Types: 597// * InternalServerException 598// This exception occurs when there is an internal failure in the Amazon EMR 599// service. 600// 601// * InvalidRequestException 602// This exception occurs when there is something wrong with user input. 603// 604// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/CreateStudio 605func (c *EMR) CreateStudio(input *CreateStudioInput) (*CreateStudioOutput, error) { 606 req, out := c.CreateStudioRequest(input) 607 return out, req.Send() 608} 609 610// CreateStudioWithContext is the same as CreateStudio with the addition of 611// the ability to pass a context and additional request options. 612// 613// See CreateStudio for details on how to use this API operation. 614// 615// The context must be non-nil and will be used for request cancellation. If 616// the context is nil a panic will occur. In the future the SDK may create 617// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 618// for more information on using Contexts. 619func (c *EMR) CreateStudioWithContext(ctx aws.Context, input *CreateStudioInput, opts ...request.Option) (*CreateStudioOutput, error) { 620 req, out := c.CreateStudioRequest(input) 621 req.SetContext(ctx) 622 req.ApplyOptions(opts...) 623 return out, req.Send() 624} 625 626const opCreateStudioSessionMapping = "CreateStudioSessionMapping" 627 628// CreateStudioSessionMappingRequest generates a "aws/request.Request" representing the 629// client's request for the CreateStudioSessionMapping operation. The "output" return 630// value will be populated with the request's response once the request completes 631// successfully. 632// 633// Use "Send" method on the returned Request to send the API call to the service. 634// the "output" return value is not valid until after Send returns without error. 635// 636// See CreateStudioSessionMapping for more information on using the CreateStudioSessionMapping 637// API call, and error handling. 638// 639// This method is useful when you want to inject custom logic or configuration 640// into the SDK's request lifecycle. Such as custom headers, or retry logic. 641// 642// 643// // Example sending a request using the CreateStudioSessionMappingRequest method. 644// req, resp := client.CreateStudioSessionMappingRequest(params) 645// 646// err := req.Send() 647// if err == nil { // resp is now filled 648// fmt.Println(resp) 649// } 650// 651// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/CreateStudioSessionMapping 652func (c *EMR) CreateStudioSessionMappingRequest(input *CreateStudioSessionMappingInput) (req *request.Request, output *CreateStudioSessionMappingOutput) { 653 op := &request.Operation{ 654 Name: opCreateStudioSessionMapping, 655 HTTPMethod: "POST", 656 HTTPPath: "/", 657 } 658 659 if input == nil { 660 input = &CreateStudioSessionMappingInput{} 661 } 662 663 output = &CreateStudioSessionMappingOutput{} 664 req = c.newRequest(op, input, output) 665 req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 666 return 667} 668 669// CreateStudioSessionMapping API operation for Amazon EMR. 670// 671// Maps a user or group to the Amazon EMR Studio specified by StudioId, and 672// applies a session policy to refine Studio permissions for that user or group. 673// 674// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 675// with awserr.Error's Code and Message methods to get detailed information about 676// the error. 677// 678// See the AWS API reference guide for Amazon EMR's 679// API operation CreateStudioSessionMapping for usage and error information. 680// 681// Returned Error Types: 682// * InternalServerError 683// Indicates that an error occurred while processing the request and that the 684// request was not completed. 685// 686// * InvalidRequestException 687// This exception occurs when there is something wrong with user input. 688// 689// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/CreateStudioSessionMapping 690func (c *EMR) CreateStudioSessionMapping(input *CreateStudioSessionMappingInput) (*CreateStudioSessionMappingOutput, error) { 691 req, out := c.CreateStudioSessionMappingRequest(input) 692 return out, req.Send() 693} 694 695// CreateStudioSessionMappingWithContext is the same as CreateStudioSessionMapping with the addition of 696// the ability to pass a context and additional request options. 697// 698// See CreateStudioSessionMapping for details on how to use this API operation. 699// 700// The context must be non-nil and will be used for request cancellation. If 701// the context is nil a panic will occur. In the future the SDK may create 702// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 703// for more information on using Contexts. 704func (c *EMR) CreateStudioSessionMappingWithContext(ctx aws.Context, input *CreateStudioSessionMappingInput, opts ...request.Option) (*CreateStudioSessionMappingOutput, error) { 705 req, out := c.CreateStudioSessionMappingRequest(input) 706 req.SetContext(ctx) 707 req.ApplyOptions(opts...) 708 return out, req.Send() 709} 710 711const opDeleteSecurityConfiguration = "DeleteSecurityConfiguration" 712 713// DeleteSecurityConfigurationRequest generates a "aws/request.Request" representing the 714// client's request for the DeleteSecurityConfiguration operation. The "output" return 715// value will be populated with the request's response once the request completes 716// successfully. 717// 718// Use "Send" method on the returned Request to send the API call to the service. 719// the "output" return value is not valid until after Send returns without error. 720// 721// See DeleteSecurityConfiguration for more information on using the DeleteSecurityConfiguration 722// API call, and error handling. 723// 724// This method is useful when you want to inject custom logic or configuration 725// into the SDK's request lifecycle. Such as custom headers, or retry logic. 726// 727// 728// // Example sending a request using the DeleteSecurityConfigurationRequest method. 729// req, resp := client.DeleteSecurityConfigurationRequest(params) 730// 731// err := req.Send() 732// if err == nil { // resp is now filled 733// fmt.Println(resp) 734// } 735// 736// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/DeleteSecurityConfiguration 737func (c *EMR) DeleteSecurityConfigurationRequest(input *DeleteSecurityConfigurationInput) (req *request.Request, output *DeleteSecurityConfigurationOutput) { 738 op := &request.Operation{ 739 Name: opDeleteSecurityConfiguration, 740 HTTPMethod: "POST", 741 HTTPPath: "/", 742 } 743 744 if input == nil { 745 input = &DeleteSecurityConfigurationInput{} 746 } 747 748 output = &DeleteSecurityConfigurationOutput{} 749 req = c.newRequest(op, input, output) 750 req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 751 return 752} 753 754// DeleteSecurityConfiguration API operation for Amazon EMR. 755// 756// Deletes a security configuration. 757// 758// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 759// with awserr.Error's Code and Message methods to get detailed information about 760// the error. 761// 762// See the AWS API reference guide for Amazon EMR's 763// API operation DeleteSecurityConfiguration for usage and error information. 764// 765// Returned Error Types: 766// * InternalServerException 767// This exception occurs when there is an internal failure in the Amazon EMR 768// service. 769// 770// * InvalidRequestException 771// This exception occurs when there is something wrong with user input. 772// 773// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/DeleteSecurityConfiguration 774func (c *EMR) DeleteSecurityConfiguration(input *DeleteSecurityConfigurationInput) (*DeleteSecurityConfigurationOutput, error) { 775 req, out := c.DeleteSecurityConfigurationRequest(input) 776 return out, req.Send() 777} 778 779// DeleteSecurityConfigurationWithContext is the same as DeleteSecurityConfiguration with the addition of 780// the ability to pass a context and additional request options. 781// 782// See DeleteSecurityConfiguration for details on how to use this API operation. 783// 784// The context must be non-nil and will be used for request cancellation. If 785// the context is nil a panic will occur. In the future the SDK may create 786// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 787// for more information on using Contexts. 788func (c *EMR) DeleteSecurityConfigurationWithContext(ctx aws.Context, input *DeleteSecurityConfigurationInput, opts ...request.Option) (*DeleteSecurityConfigurationOutput, error) { 789 req, out := c.DeleteSecurityConfigurationRequest(input) 790 req.SetContext(ctx) 791 req.ApplyOptions(opts...) 792 return out, req.Send() 793} 794 795const opDeleteStudio = "DeleteStudio" 796 797// DeleteStudioRequest generates a "aws/request.Request" representing the 798// client's request for the DeleteStudio operation. The "output" return 799// value will be populated with the request's response once the request completes 800// successfully. 801// 802// Use "Send" method on the returned Request to send the API call to the service. 803// the "output" return value is not valid until after Send returns without error. 804// 805// See DeleteStudio for more information on using the DeleteStudio 806// API call, and error handling. 807// 808// This method is useful when you want to inject custom logic or configuration 809// into the SDK's request lifecycle. Such as custom headers, or retry logic. 810// 811// 812// // Example sending a request using the DeleteStudioRequest method. 813// req, resp := client.DeleteStudioRequest(params) 814// 815// err := req.Send() 816// if err == nil { // resp is now filled 817// fmt.Println(resp) 818// } 819// 820// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/DeleteStudio 821func (c *EMR) DeleteStudioRequest(input *DeleteStudioInput) (req *request.Request, output *DeleteStudioOutput) { 822 op := &request.Operation{ 823 Name: opDeleteStudio, 824 HTTPMethod: "POST", 825 HTTPPath: "/", 826 } 827 828 if input == nil { 829 input = &DeleteStudioInput{} 830 } 831 832 output = &DeleteStudioOutput{} 833 req = c.newRequest(op, input, output) 834 req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 835 return 836} 837 838// DeleteStudio API operation for Amazon EMR. 839// 840// Removes an Amazon EMR Studio from the Studio metadata store. 841// 842// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 843// with awserr.Error's Code and Message methods to get detailed information about 844// the error. 845// 846// See the AWS API reference guide for Amazon EMR's 847// API operation DeleteStudio for usage and error information. 848// 849// Returned Error Types: 850// * InternalServerException 851// This exception occurs when there is an internal failure in the Amazon EMR 852// service. 853// 854// * InvalidRequestException 855// This exception occurs when there is something wrong with user input. 856// 857// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/DeleteStudio 858func (c *EMR) DeleteStudio(input *DeleteStudioInput) (*DeleteStudioOutput, error) { 859 req, out := c.DeleteStudioRequest(input) 860 return out, req.Send() 861} 862 863// DeleteStudioWithContext is the same as DeleteStudio with the addition of 864// the ability to pass a context and additional request options. 865// 866// See DeleteStudio for details on how to use this API operation. 867// 868// The context must be non-nil and will be used for request cancellation. If 869// the context is nil a panic will occur. In the future the SDK may create 870// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 871// for more information on using Contexts. 872func (c *EMR) DeleteStudioWithContext(ctx aws.Context, input *DeleteStudioInput, opts ...request.Option) (*DeleteStudioOutput, error) { 873 req, out := c.DeleteStudioRequest(input) 874 req.SetContext(ctx) 875 req.ApplyOptions(opts...) 876 return out, req.Send() 877} 878 879const opDeleteStudioSessionMapping = "DeleteStudioSessionMapping" 880 881// DeleteStudioSessionMappingRequest generates a "aws/request.Request" representing the 882// client's request for the DeleteStudioSessionMapping operation. The "output" return 883// value will be populated with the request's response once the request completes 884// successfully. 885// 886// Use "Send" method on the returned Request to send the API call to the service. 887// the "output" return value is not valid until after Send returns without error. 888// 889// See DeleteStudioSessionMapping for more information on using the DeleteStudioSessionMapping 890// API call, and error handling. 891// 892// This method is useful when you want to inject custom logic or configuration 893// into the SDK's request lifecycle. Such as custom headers, or retry logic. 894// 895// 896// // Example sending a request using the DeleteStudioSessionMappingRequest method. 897// req, resp := client.DeleteStudioSessionMappingRequest(params) 898// 899// err := req.Send() 900// if err == nil { // resp is now filled 901// fmt.Println(resp) 902// } 903// 904// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/DeleteStudioSessionMapping 905func (c *EMR) DeleteStudioSessionMappingRequest(input *DeleteStudioSessionMappingInput) (req *request.Request, output *DeleteStudioSessionMappingOutput) { 906 op := &request.Operation{ 907 Name: opDeleteStudioSessionMapping, 908 HTTPMethod: "POST", 909 HTTPPath: "/", 910 } 911 912 if input == nil { 913 input = &DeleteStudioSessionMappingInput{} 914 } 915 916 output = &DeleteStudioSessionMappingOutput{} 917 req = c.newRequest(op, input, output) 918 req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 919 return 920} 921 922// DeleteStudioSessionMapping API operation for Amazon EMR. 923// 924// Removes a user or group from an Amazon EMR Studio. 925// 926// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 927// with awserr.Error's Code and Message methods to get detailed information about 928// the error. 929// 930// See the AWS API reference guide for Amazon EMR's 931// API operation DeleteStudioSessionMapping for usage and error information. 932// 933// Returned Error Types: 934// * InternalServerError 935// Indicates that an error occurred while processing the request and that the 936// request was not completed. 937// 938// * InvalidRequestException 939// This exception occurs when there is something wrong with user input. 940// 941// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/DeleteStudioSessionMapping 942func (c *EMR) DeleteStudioSessionMapping(input *DeleteStudioSessionMappingInput) (*DeleteStudioSessionMappingOutput, error) { 943 req, out := c.DeleteStudioSessionMappingRequest(input) 944 return out, req.Send() 945} 946 947// DeleteStudioSessionMappingWithContext is the same as DeleteStudioSessionMapping with the addition of 948// the ability to pass a context and additional request options. 949// 950// See DeleteStudioSessionMapping for details on how to use this API operation. 951// 952// The context must be non-nil and will be used for request cancellation. If 953// the context is nil a panic will occur. In the future the SDK may create 954// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 955// for more information on using Contexts. 956func (c *EMR) DeleteStudioSessionMappingWithContext(ctx aws.Context, input *DeleteStudioSessionMappingInput, opts ...request.Option) (*DeleteStudioSessionMappingOutput, error) { 957 req, out := c.DeleteStudioSessionMappingRequest(input) 958 req.SetContext(ctx) 959 req.ApplyOptions(opts...) 960 return out, req.Send() 961} 962 963const opDescribeCluster = "DescribeCluster" 964 965// DescribeClusterRequest generates a "aws/request.Request" representing the 966// client's request for the DescribeCluster operation. The "output" return 967// value will be populated with the request's response once the request completes 968// successfully. 969// 970// Use "Send" method on the returned Request to send the API call to the service. 971// the "output" return value is not valid until after Send returns without error. 972// 973// See DescribeCluster for more information on using the DescribeCluster 974// API call, and error handling. 975// 976// This method is useful when you want to inject custom logic or configuration 977// into the SDK's request lifecycle. Such as custom headers, or retry logic. 978// 979// 980// // Example sending a request using the DescribeClusterRequest method. 981// req, resp := client.DescribeClusterRequest(params) 982// 983// err := req.Send() 984// if err == nil { // resp is now filled 985// fmt.Println(resp) 986// } 987// 988// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/DescribeCluster 989func (c *EMR) DescribeClusterRequest(input *DescribeClusterInput) (req *request.Request, output *DescribeClusterOutput) { 990 op := &request.Operation{ 991 Name: opDescribeCluster, 992 HTTPMethod: "POST", 993 HTTPPath: "/", 994 } 995 996 if input == nil { 997 input = &DescribeClusterInput{} 998 } 999 1000 output = &DescribeClusterOutput{} 1001 req = c.newRequest(op, input, output) 1002 return 1003} 1004 1005// DescribeCluster API operation for Amazon EMR. 1006// 1007// Provides cluster-level details including status, hardware and software configuration, 1008// VPC settings, and so on. 1009// 1010// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1011// with awserr.Error's Code and Message methods to get detailed information about 1012// the error. 1013// 1014// See the AWS API reference guide for Amazon EMR's 1015// API operation DescribeCluster for usage and error information. 1016// 1017// Returned Error Types: 1018// * InternalServerException 1019// This exception occurs when there is an internal failure in the Amazon EMR 1020// service. 1021// 1022// * InvalidRequestException 1023// This exception occurs when there is something wrong with user input. 1024// 1025// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/DescribeCluster 1026func (c *EMR) DescribeCluster(input *DescribeClusterInput) (*DescribeClusterOutput, error) { 1027 req, out := c.DescribeClusterRequest(input) 1028 return out, req.Send() 1029} 1030 1031// DescribeClusterWithContext is the same as DescribeCluster with the addition of 1032// the ability to pass a context and additional request options. 1033// 1034// See DescribeCluster for details on how to use this API operation. 1035// 1036// The context must be non-nil and will be used for request cancellation. If 1037// the context is nil a panic will occur. In the future the SDK may create 1038// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1039// for more information on using Contexts. 1040func (c *EMR) DescribeClusterWithContext(ctx aws.Context, input *DescribeClusterInput, opts ...request.Option) (*DescribeClusterOutput, error) { 1041 req, out := c.DescribeClusterRequest(input) 1042 req.SetContext(ctx) 1043 req.ApplyOptions(opts...) 1044 return out, req.Send() 1045} 1046 1047const opDescribeJobFlows = "DescribeJobFlows" 1048 1049// DescribeJobFlowsRequest generates a "aws/request.Request" representing the 1050// client's request for the DescribeJobFlows operation. The "output" return 1051// value will be populated with the request's response once the request completes 1052// successfully. 1053// 1054// Use "Send" method on the returned Request to send the API call to the service. 1055// the "output" return value is not valid until after Send returns without error. 1056// 1057// See DescribeJobFlows for more information on using the DescribeJobFlows 1058// API call, and error handling. 1059// 1060// This method is useful when you want to inject custom logic or configuration 1061// into the SDK's request lifecycle. Such as custom headers, or retry logic. 1062// 1063// 1064// // Example sending a request using the DescribeJobFlowsRequest method. 1065// req, resp := client.DescribeJobFlowsRequest(params) 1066// 1067// err := req.Send() 1068// if err == nil { // resp is now filled 1069// fmt.Println(resp) 1070// } 1071// 1072// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/DescribeJobFlows 1073// 1074// Deprecated: DescribeJobFlows has been deprecated 1075func (c *EMR) DescribeJobFlowsRequest(input *DescribeJobFlowsInput) (req *request.Request, output *DescribeJobFlowsOutput) { 1076 if c.Client.Config.Logger != nil { 1077 c.Client.Config.Logger.Log("This operation, DescribeJobFlows, has been deprecated") 1078 } 1079 op := &request.Operation{ 1080 Name: opDescribeJobFlows, 1081 HTTPMethod: "POST", 1082 HTTPPath: "/", 1083 } 1084 1085 if input == nil { 1086 input = &DescribeJobFlowsInput{} 1087 } 1088 1089 output = &DescribeJobFlowsOutput{} 1090 req = c.newRequest(op, input, output) 1091 return 1092} 1093 1094// DescribeJobFlows API operation for Amazon EMR. 1095// 1096// This API is no longer supported and will eventually be removed. We recommend 1097// you use ListClusters, DescribeCluster, ListSteps, ListInstanceGroups and 1098// ListBootstrapActions instead. 1099// 1100// DescribeJobFlows returns a list of job flows that match all of the supplied 1101// parameters. The parameters can include a list of job flow IDs, job flow states, 1102// and restrictions on job flow creation date and time. 1103// 1104// Regardless of supplied parameters, only job flows created within the last 1105// two months are returned. 1106// 1107// If no parameters are supplied, then job flows matching either of the following 1108// criteria are returned: 1109// 1110// * Job flows created and completed in the last two weeks 1111// 1112// * Job flows created within the last two months that are in one of the 1113// following states: RUNNING, WAITING, SHUTTING_DOWN, STARTING 1114// 1115// Amazon EMR can return a maximum of 512 job flow descriptions. 1116// 1117// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1118// with awserr.Error's Code and Message methods to get detailed information about 1119// the error. 1120// 1121// See the AWS API reference guide for Amazon EMR's 1122// API operation DescribeJobFlows for usage and error information. 1123// 1124// Returned Error Types: 1125// * InternalServerError 1126// Indicates that an error occurred while processing the request and that the 1127// request was not completed. 1128// 1129// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/DescribeJobFlows 1130// 1131// Deprecated: DescribeJobFlows has been deprecated 1132func (c *EMR) DescribeJobFlows(input *DescribeJobFlowsInput) (*DescribeJobFlowsOutput, error) { 1133 req, out := c.DescribeJobFlowsRequest(input) 1134 return out, req.Send() 1135} 1136 1137// DescribeJobFlowsWithContext is the same as DescribeJobFlows with the addition of 1138// the ability to pass a context and additional request options. 1139// 1140// See DescribeJobFlows for details on how to use this API operation. 1141// 1142// The context must be non-nil and will be used for request cancellation. If 1143// the context is nil a panic will occur. In the future the SDK may create 1144// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1145// for more information on using Contexts. 1146// 1147// Deprecated: DescribeJobFlowsWithContext has been deprecated 1148func (c *EMR) DescribeJobFlowsWithContext(ctx aws.Context, input *DescribeJobFlowsInput, opts ...request.Option) (*DescribeJobFlowsOutput, error) { 1149 req, out := c.DescribeJobFlowsRequest(input) 1150 req.SetContext(ctx) 1151 req.ApplyOptions(opts...) 1152 return out, req.Send() 1153} 1154 1155const opDescribeNotebookExecution = "DescribeNotebookExecution" 1156 1157// DescribeNotebookExecutionRequest generates a "aws/request.Request" representing the 1158// client's request for the DescribeNotebookExecution operation. The "output" return 1159// value will be populated with the request's response once the request completes 1160// successfully. 1161// 1162// Use "Send" method on the returned Request to send the API call to the service. 1163// the "output" return value is not valid until after Send returns without error. 1164// 1165// See DescribeNotebookExecution for more information on using the DescribeNotebookExecution 1166// API call, and error handling. 1167// 1168// This method is useful when you want to inject custom logic or configuration 1169// into the SDK's request lifecycle. Such as custom headers, or retry logic. 1170// 1171// 1172// // Example sending a request using the DescribeNotebookExecutionRequest method. 1173// req, resp := client.DescribeNotebookExecutionRequest(params) 1174// 1175// err := req.Send() 1176// if err == nil { // resp is now filled 1177// fmt.Println(resp) 1178// } 1179// 1180// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/DescribeNotebookExecution 1181func (c *EMR) DescribeNotebookExecutionRequest(input *DescribeNotebookExecutionInput) (req *request.Request, output *DescribeNotebookExecutionOutput) { 1182 op := &request.Operation{ 1183 Name: opDescribeNotebookExecution, 1184 HTTPMethod: "POST", 1185 HTTPPath: "/", 1186 } 1187 1188 if input == nil { 1189 input = &DescribeNotebookExecutionInput{} 1190 } 1191 1192 output = &DescribeNotebookExecutionOutput{} 1193 req = c.newRequest(op, input, output) 1194 return 1195} 1196 1197// DescribeNotebookExecution API operation for Amazon EMR. 1198// 1199// Provides details of a notebook execution. 1200// 1201// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1202// with awserr.Error's Code and Message methods to get detailed information about 1203// the error. 1204// 1205// See the AWS API reference guide for Amazon EMR's 1206// API operation DescribeNotebookExecution for usage and error information. 1207// 1208// Returned Error Types: 1209// * InternalServerError 1210// Indicates that an error occurred while processing the request and that the 1211// request was not completed. 1212// 1213// * InvalidRequestException 1214// This exception occurs when there is something wrong with user input. 1215// 1216// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/DescribeNotebookExecution 1217func (c *EMR) DescribeNotebookExecution(input *DescribeNotebookExecutionInput) (*DescribeNotebookExecutionOutput, error) { 1218 req, out := c.DescribeNotebookExecutionRequest(input) 1219 return out, req.Send() 1220} 1221 1222// DescribeNotebookExecutionWithContext is the same as DescribeNotebookExecution with the addition of 1223// the ability to pass a context and additional request options. 1224// 1225// See DescribeNotebookExecution for details on how to use this API operation. 1226// 1227// The context must be non-nil and will be used for request cancellation. If 1228// the context is nil a panic will occur. In the future the SDK may create 1229// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1230// for more information on using Contexts. 1231func (c *EMR) DescribeNotebookExecutionWithContext(ctx aws.Context, input *DescribeNotebookExecutionInput, opts ...request.Option) (*DescribeNotebookExecutionOutput, error) { 1232 req, out := c.DescribeNotebookExecutionRequest(input) 1233 req.SetContext(ctx) 1234 req.ApplyOptions(opts...) 1235 return out, req.Send() 1236} 1237 1238const opDescribeReleaseLabel = "DescribeReleaseLabel" 1239 1240// DescribeReleaseLabelRequest generates a "aws/request.Request" representing the 1241// client's request for the DescribeReleaseLabel operation. The "output" return 1242// value will be populated with the request's response once the request completes 1243// successfully. 1244// 1245// Use "Send" method on the returned Request to send the API call to the service. 1246// the "output" return value is not valid until after Send returns without error. 1247// 1248// See DescribeReleaseLabel for more information on using the DescribeReleaseLabel 1249// API call, and error handling. 1250// 1251// This method is useful when you want to inject custom logic or configuration 1252// into the SDK's request lifecycle. Such as custom headers, or retry logic. 1253// 1254// 1255// // Example sending a request using the DescribeReleaseLabelRequest method. 1256// req, resp := client.DescribeReleaseLabelRequest(params) 1257// 1258// err := req.Send() 1259// if err == nil { // resp is now filled 1260// fmt.Println(resp) 1261// } 1262// 1263// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/DescribeReleaseLabel 1264func (c *EMR) DescribeReleaseLabelRequest(input *DescribeReleaseLabelInput) (req *request.Request, output *DescribeReleaseLabelOutput) { 1265 op := &request.Operation{ 1266 Name: opDescribeReleaseLabel, 1267 HTTPMethod: "POST", 1268 HTTPPath: "/", 1269 } 1270 1271 if input == nil { 1272 input = &DescribeReleaseLabelInput{} 1273 } 1274 1275 output = &DescribeReleaseLabelOutput{} 1276 req = c.newRequest(op, input, output) 1277 return 1278} 1279 1280// DescribeReleaseLabel API operation for Amazon EMR. 1281// 1282// Provides EMR release label details, such as releases available the region 1283// where the API request is run, and the available applications for a specific 1284// EMR release label. Can also list EMR release versions that support a specified 1285// version of Spark. 1286// 1287// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1288// with awserr.Error's Code and Message methods to get detailed information about 1289// the error. 1290// 1291// See the AWS API reference guide for Amazon EMR's 1292// API operation DescribeReleaseLabel for usage and error information. 1293// 1294// Returned Error Types: 1295// * InternalServerException 1296// This exception occurs when there is an internal failure in the Amazon EMR 1297// service. 1298// 1299// * InvalidRequestException 1300// This exception occurs when there is something wrong with user input. 1301// 1302// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/DescribeReleaseLabel 1303func (c *EMR) DescribeReleaseLabel(input *DescribeReleaseLabelInput) (*DescribeReleaseLabelOutput, error) { 1304 req, out := c.DescribeReleaseLabelRequest(input) 1305 return out, req.Send() 1306} 1307 1308// DescribeReleaseLabelWithContext is the same as DescribeReleaseLabel with the addition of 1309// the ability to pass a context and additional request options. 1310// 1311// See DescribeReleaseLabel for details on how to use this API operation. 1312// 1313// The context must be non-nil and will be used for request cancellation. If 1314// the context is nil a panic will occur. In the future the SDK may create 1315// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1316// for more information on using Contexts. 1317func (c *EMR) DescribeReleaseLabelWithContext(ctx aws.Context, input *DescribeReleaseLabelInput, opts ...request.Option) (*DescribeReleaseLabelOutput, error) { 1318 req, out := c.DescribeReleaseLabelRequest(input) 1319 req.SetContext(ctx) 1320 req.ApplyOptions(opts...) 1321 return out, req.Send() 1322} 1323 1324const opDescribeSecurityConfiguration = "DescribeSecurityConfiguration" 1325 1326// DescribeSecurityConfigurationRequest generates a "aws/request.Request" representing the 1327// client's request for the DescribeSecurityConfiguration operation. The "output" return 1328// value will be populated with the request's response once the request completes 1329// successfully. 1330// 1331// Use "Send" method on the returned Request to send the API call to the service. 1332// the "output" return value is not valid until after Send returns without error. 1333// 1334// See DescribeSecurityConfiguration for more information on using the DescribeSecurityConfiguration 1335// API call, and error handling. 1336// 1337// This method is useful when you want to inject custom logic or configuration 1338// into the SDK's request lifecycle. Such as custom headers, or retry logic. 1339// 1340// 1341// // Example sending a request using the DescribeSecurityConfigurationRequest method. 1342// req, resp := client.DescribeSecurityConfigurationRequest(params) 1343// 1344// err := req.Send() 1345// if err == nil { // resp is now filled 1346// fmt.Println(resp) 1347// } 1348// 1349// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/DescribeSecurityConfiguration 1350func (c *EMR) DescribeSecurityConfigurationRequest(input *DescribeSecurityConfigurationInput) (req *request.Request, output *DescribeSecurityConfigurationOutput) { 1351 op := &request.Operation{ 1352 Name: opDescribeSecurityConfiguration, 1353 HTTPMethod: "POST", 1354 HTTPPath: "/", 1355 } 1356 1357 if input == nil { 1358 input = &DescribeSecurityConfigurationInput{} 1359 } 1360 1361 output = &DescribeSecurityConfigurationOutput{} 1362 req = c.newRequest(op, input, output) 1363 return 1364} 1365 1366// DescribeSecurityConfiguration API operation for Amazon EMR. 1367// 1368// Provides the details of a security configuration by returning the configuration 1369// JSON. 1370// 1371// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1372// with awserr.Error's Code and Message methods to get detailed information about 1373// the error. 1374// 1375// See the AWS API reference guide for Amazon EMR's 1376// API operation DescribeSecurityConfiguration for usage and error information. 1377// 1378// Returned Error Types: 1379// * InternalServerException 1380// This exception occurs when there is an internal failure in the Amazon EMR 1381// service. 1382// 1383// * InvalidRequestException 1384// This exception occurs when there is something wrong with user input. 1385// 1386// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/DescribeSecurityConfiguration 1387func (c *EMR) DescribeSecurityConfiguration(input *DescribeSecurityConfigurationInput) (*DescribeSecurityConfigurationOutput, error) { 1388 req, out := c.DescribeSecurityConfigurationRequest(input) 1389 return out, req.Send() 1390} 1391 1392// DescribeSecurityConfigurationWithContext is the same as DescribeSecurityConfiguration with the addition of 1393// the ability to pass a context and additional request options. 1394// 1395// See DescribeSecurityConfiguration for details on how to use this API operation. 1396// 1397// The context must be non-nil and will be used for request cancellation. If 1398// the context is nil a panic will occur. In the future the SDK may create 1399// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1400// for more information on using Contexts. 1401func (c *EMR) DescribeSecurityConfigurationWithContext(ctx aws.Context, input *DescribeSecurityConfigurationInput, opts ...request.Option) (*DescribeSecurityConfigurationOutput, error) { 1402 req, out := c.DescribeSecurityConfigurationRequest(input) 1403 req.SetContext(ctx) 1404 req.ApplyOptions(opts...) 1405 return out, req.Send() 1406} 1407 1408const opDescribeStep = "DescribeStep" 1409 1410// DescribeStepRequest generates a "aws/request.Request" representing the 1411// client's request for the DescribeStep operation. The "output" return 1412// value will be populated with the request's response once the request completes 1413// successfully. 1414// 1415// Use "Send" method on the returned Request to send the API call to the service. 1416// the "output" return value is not valid until after Send returns without error. 1417// 1418// See DescribeStep for more information on using the DescribeStep 1419// API call, and error handling. 1420// 1421// This method is useful when you want to inject custom logic or configuration 1422// into the SDK's request lifecycle. Such as custom headers, or retry logic. 1423// 1424// 1425// // Example sending a request using the DescribeStepRequest method. 1426// req, resp := client.DescribeStepRequest(params) 1427// 1428// err := req.Send() 1429// if err == nil { // resp is now filled 1430// fmt.Println(resp) 1431// } 1432// 1433// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/DescribeStep 1434func (c *EMR) DescribeStepRequest(input *DescribeStepInput) (req *request.Request, output *DescribeStepOutput) { 1435 op := &request.Operation{ 1436 Name: opDescribeStep, 1437 HTTPMethod: "POST", 1438 HTTPPath: "/", 1439 } 1440 1441 if input == nil { 1442 input = &DescribeStepInput{} 1443 } 1444 1445 output = &DescribeStepOutput{} 1446 req = c.newRequest(op, input, output) 1447 return 1448} 1449 1450// DescribeStep API operation for Amazon EMR. 1451// 1452// Provides more detail about the cluster step. 1453// 1454// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1455// with awserr.Error's Code and Message methods to get detailed information about 1456// the error. 1457// 1458// See the AWS API reference guide for Amazon EMR's 1459// API operation DescribeStep for usage and error information. 1460// 1461// Returned Error Types: 1462// * InternalServerException 1463// This exception occurs when there is an internal failure in the Amazon EMR 1464// service. 1465// 1466// * InvalidRequestException 1467// This exception occurs when there is something wrong with user input. 1468// 1469// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/DescribeStep 1470func (c *EMR) DescribeStep(input *DescribeStepInput) (*DescribeStepOutput, error) { 1471 req, out := c.DescribeStepRequest(input) 1472 return out, req.Send() 1473} 1474 1475// DescribeStepWithContext is the same as DescribeStep with the addition of 1476// the ability to pass a context and additional request options. 1477// 1478// See DescribeStep for details on how to use this API operation. 1479// 1480// The context must be non-nil and will be used for request cancellation. If 1481// the context is nil a panic will occur. In the future the SDK may create 1482// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1483// for more information on using Contexts. 1484func (c *EMR) DescribeStepWithContext(ctx aws.Context, input *DescribeStepInput, opts ...request.Option) (*DescribeStepOutput, error) { 1485 req, out := c.DescribeStepRequest(input) 1486 req.SetContext(ctx) 1487 req.ApplyOptions(opts...) 1488 return out, req.Send() 1489} 1490 1491const opDescribeStudio = "DescribeStudio" 1492 1493// DescribeStudioRequest generates a "aws/request.Request" representing the 1494// client's request for the DescribeStudio operation. The "output" return 1495// value will be populated with the request's response once the request completes 1496// successfully. 1497// 1498// Use "Send" method on the returned Request to send the API call to the service. 1499// the "output" return value is not valid until after Send returns without error. 1500// 1501// See DescribeStudio for more information on using the DescribeStudio 1502// API call, and error handling. 1503// 1504// This method is useful when you want to inject custom logic or configuration 1505// into the SDK's request lifecycle. Such as custom headers, or retry logic. 1506// 1507// 1508// // Example sending a request using the DescribeStudioRequest method. 1509// req, resp := client.DescribeStudioRequest(params) 1510// 1511// err := req.Send() 1512// if err == nil { // resp is now filled 1513// fmt.Println(resp) 1514// } 1515// 1516// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/DescribeStudio 1517func (c *EMR) DescribeStudioRequest(input *DescribeStudioInput) (req *request.Request, output *DescribeStudioOutput) { 1518 op := &request.Operation{ 1519 Name: opDescribeStudio, 1520 HTTPMethod: "POST", 1521 HTTPPath: "/", 1522 } 1523 1524 if input == nil { 1525 input = &DescribeStudioInput{} 1526 } 1527 1528 output = &DescribeStudioOutput{} 1529 req = c.newRequest(op, input, output) 1530 return 1531} 1532 1533// DescribeStudio API operation for Amazon EMR. 1534// 1535// Returns details for the specified Amazon EMR Studio including ID, Name, VPC, 1536// Studio access URL, and so on. 1537// 1538// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1539// with awserr.Error's Code and Message methods to get detailed information about 1540// the error. 1541// 1542// See the AWS API reference guide for Amazon EMR's 1543// API operation DescribeStudio for usage and error information. 1544// 1545// Returned Error Types: 1546// * InternalServerException 1547// This exception occurs when there is an internal failure in the Amazon EMR 1548// service. 1549// 1550// * InvalidRequestException 1551// This exception occurs when there is something wrong with user input. 1552// 1553// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/DescribeStudio 1554func (c *EMR) DescribeStudio(input *DescribeStudioInput) (*DescribeStudioOutput, error) { 1555 req, out := c.DescribeStudioRequest(input) 1556 return out, req.Send() 1557} 1558 1559// DescribeStudioWithContext is the same as DescribeStudio with the addition of 1560// the ability to pass a context and additional request options. 1561// 1562// See DescribeStudio for details on how to use this API operation. 1563// 1564// The context must be non-nil and will be used for request cancellation. If 1565// the context is nil a panic will occur. In the future the SDK may create 1566// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1567// for more information on using Contexts. 1568func (c *EMR) DescribeStudioWithContext(ctx aws.Context, input *DescribeStudioInput, opts ...request.Option) (*DescribeStudioOutput, error) { 1569 req, out := c.DescribeStudioRequest(input) 1570 req.SetContext(ctx) 1571 req.ApplyOptions(opts...) 1572 return out, req.Send() 1573} 1574 1575const opGetBlockPublicAccessConfiguration = "GetBlockPublicAccessConfiguration" 1576 1577// GetBlockPublicAccessConfigurationRequest generates a "aws/request.Request" representing the 1578// client's request for the GetBlockPublicAccessConfiguration operation. The "output" return 1579// value will be populated with the request's response once the request completes 1580// successfully. 1581// 1582// Use "Send" method on the returned Request to send the API call to the service. 1583// the "output" return value is not valid until after Send returns without error. 1584// 1585// See GetBlockPublicAccessConfiguration for more information on using the GetBlockPublicAccessConfiguration 1586// API call, and error handling. 1587// 1588// This method is useful when you want to inject custom logic or configuration 1589// into the SDK's request lifecycle. Such as custom headers, or retry logic. 1590// 1591// 1592// // Example sending a request using the GetBlockPublicAccessConfigurationRequest method. 1593// req, resp := client.GetBlockPublicAccessConfigurationRequest(params) 1594// 1595// err := req.Send() 1596// if err == nil { // resp is now filled 1597// fmt.Println(resp) 1598// } 1599// 1600// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/GetBlockPublicAccessConfiguration 1601func (c *EMR) GetBlockPublicAccessConfigurationRequest(input *GetBlockPublicAccessConfigurationInput) (req *request.Request, output *GetBlockPublicAccessConfigurationOutput) { 1602 op := &request.Operation{ 1603 Name: opGetBlockPublicAccessConfiguration, 1604 HTTPMethod: "POST", 1605 HTTPPath: "/", 1606 } 1607 1608 if input == nil { 1609 input = &GetBlockPublicAccessConfigurationInput{} 1610 } 1611 1612 output = &GetBlockPublicAccessConfigurationOutput{} 1613 req = c.newRequest(op, input, output) 1614 return 1615} 1616 1617// GetBlockPublicAccessConfiguration API operation for Amazon EMR. 1618// 1619// Returns the Amazon EMR block public access configuration for your account 1620// in the current Region. For more information see Configure Block Public Access 1621// for Amazon EMR (https://docs.aws.amazon.com/emr/latest/ManagementGuide/configure-block-public-access.html) 1622// in the Amazon EMR Management Guide. 1623// 1624// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1625// with awserr.Error's Code and Message methods to get detailed information about 1626// the error. 1627// 1628// See the AWS API reference guide for Amazon EMR's 1629// API operation GetBlockPublicAccessConfiguration for usage and error information. 1630// 1631// Returned Error Types: 1632// * InternalServerException 1633// This exception occurs when there is an internal failure in the Amazon EMR 1634// service. 1635// 1636// * InvalidRequestException 1637// This exception occurs when there is something wrong with user input. 1638// 1639// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/GetBlockPublicAccessConfiguration 1640func (c *EMR) GetBlockPublicAccessConfiguration(input *GetBlockPublicAccessConfigurationInput) (*GetBlockPublicAccessConfigurationOutput, error) { 1641 req, out := c.GetBlockPublicAccessConfigurationRequest(input) 1642 return out, req.Send() 1643} 1644 1645// GetBlockPublicAccessConfigurationWithContext is the same as GetBlockPublicAccessConfiguration with the addition of 1646// the ability to pass a context and additional request options. 1647// 1648// See GetBlockPublicAccessConfiguration for details on how to use this API operation. 1649// 1650// The context must be non-nil and will be used for request cancellation. If 1651// the context is nil a panic will occur. In the future the SDK may create 1652// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1653// for more information on using Contexts. 1654func (c *EMR) GetBlockPublicAccessConfigurationWithContext(ctx aws.Context, input *GetBlockPublicAccessConfigurationInput, opts ...request.Option) (*GetBlockPublicAccessConfigurationOutput, error) { 1655 req, out := c.GetBlockPublicAccessConfigurationRequest(input) 1656 req.SetContext(ctx) 1657 req.ApplyOptions(opts...) 1658 return out, req.Send() 1659} 1660 1661const opGetManagedScalingPolicy = "GetManagedScalingPolicy" 1662 1663// GetManagedScalingPolicyRequest generates a "aws/request.Request" representing the 1664// client's request for the GetManagedScalingPolicy operation. The "output" return 1665// value will be populated with the request's response once the request completes 1666// successfully. 1667// 1668// Use "Send" method on the returned Request to send the API call to the service. 1669// the "output" return value is not valid until after Send returns without error. 1670// 1671// See GetManagedScalingPolicy for more information on using the GetManagedScalingPolicy 1672// API call, and error handling. 1673// 1674// This method is useful when you want to inject custom logic or configuration 1675// into the SDK's request lifecycle. Such as custom headers, or retry logic. 1676// 1677// 1678// // Example sending a request using the GetManagedScalingPolicyRequest method. 1679// req, resp := client.GetManagedScalingPolicyRequest(params) 1680// 1681// err := req.Send() 1682// if err == nil { // resp is now filled 1683// fmt.Println(resp) 1684// } 1685// 1686// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/GetManagedScalingPolicy 1687func (c *EMR) GetManagedScalingPolicyRequest(input *GetManagedScalingPolicyInput) (req *request.Request, output *GetManagedScalingPolicyOutput) { 1688 op := &request.Operation{ 1689 Name: opGetManagedScalingPolicy, 1690 HTTPMethod: "POST", 1691 HTTPPath: "/", 1692 } 1693 1694 if input == nil { 1695 input = &GetManagedScalingPolicyInput{} 1696 } 1697 1698 output = &GetManagedScalingPolicyOutput{} 1699 req = c.newRequest(op, input, output) 1700 return 1701} 1702 1703// GetManagedScalingPolicy API operation for Amazon EMR. 1704// 1705// Fetches the attached managed scaling policy for an Amazon EMR cluster. 1706// 1707// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1708// with awserr.Error's Code and Message methods to get detailed information about 1709// the error. 1710// 1711// See the AWS API reference guide for Amazon EMR's 1712// API operation GetManagedScalingPolicy for usage and error information. 1713// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/GetManagedScalingPolicy 1714func (c *EMR) GetManagedScalingPolicy(input *GetManagedScalingPolicyInput) (*GetManagedScalingPolicyOutput, error) { 1715 req, out := c.GetManagedScalingPolicyRequest(input) 1716 return out, req.Send() 1717} 1718 1719// GetManagedScalingPolicyWithContext is the same as GetManagedScalingPolicy with the addition of 1720// the ability to pass a context and additional request options. 1721// 1722// See GetManagedScalingPolicy for details on how to use this API operation. 1723// 1724// The context must be non-nil and will be used for request cancellation. If 1725// the context is nil a panic will occur. In the future the SDK may create 1726// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1727// for more information on using Contexts. 1728func (c *EMR) GetManagedScalingPolicyWithContext(ctx aws.Context, input *GetManagedScalingPolicyInput, opts ...request.Option) (*GetManagedScalingPolicyOutput, error) { 1729 req, out := c.GetManagedScalingPolicyRequest(input) 1730 req.SetContext(ctx) 1731 req.ApplyOptions(opts...) 1732 return out, req.Send() 1733} 1734 1735const opGetStudioSessionMapping = "GetStudioSessionMapping" 1736 1737// GetStudioSessionMappingRequest generates a "aws/request.Request" representing the 1738// client's request for the GetStudioSessionMapping operation. The "output" return 1739// value will be populated with the request's response once the request completes 1740// successfully. 1741// 1742// Use "Send" method on the returned Request to send the API call to the service. 1743// the "output" return value is not valid until after Send returns without error. 1744// 1745// See GetStudioSessionMapping for more information on using the GetStudioSessionMapping 1746// API call, and error handling. 1747// 1748// This method is useful when you want to inject custom logic or configuration 1749// into the SDK's request lifecycle. Such as custom headers, or retry logic. 1750// 1751// 1752// // Example sending a request using the GetStudioSessionMappingRequest method. 1753// req, resp := client.GetStudioSessionMappingRequest(params) 1754// 1755// err := req.Send() 1756// if err == nil { // resp is now filled 1757// fmt.Println(resp) 1758// } 1759// 1760// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/GetStudioSessionMapping 1761func (c *EMR) GetStudioSessionMappingRequest(input *GetStudioSessionMappingInput) (req *request.Request, output *GetStudioSessionMappingOutput) { 1762 op := &request.Operation{ 1763 Name: opGetStudioSessionMapping, 1764 HTTPMethod: "POST", 1765 HTTPPath: "/", 1766 } 1767 1768 if input == nil { 1769 input = &GetStudioSessionMappingInput{} 1770 } 1771 1772 output = &GetStudioSessionMappingOutput{} 1773 req = c.newRequest(op, input, output) 1774 return 1775} 1776 1777// GetStudioSessionMapping API operation for Amazon EMR. 1778// 1779// Fetches mapping details for the specified Amazon EMR Studio and identity 1780// (user or group). 1781// 1782// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1783// with awserr.Error's Code and Message methods to get detailed information about 1784// the error. 1785// 1786// See the AWS API reference guide for Amazon EMR's 1787// API operation GetStudioSessionMapping for usage and error information. 1788// 1789// Returned Error Types: 1790// * InternalServerError 1791// Indicates that an error occurred while processing the request and that the 1792// request was not completed. 1793// 1794// * InvalidRequestException 1795// This exception occurs when there is something wrong with user input. 1796// 1797// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/GetStudioSessionMapping 1798func (c *EMR) GetStudioSessionMapping(input *GetStudioSessionMappingInput) (*GetStudioSessionMappingOutput, error) { 1799 req, out := c.GetStudioSessionMappingRequest(input) 1800 return out, req.Send() 1801} 1802 1803// GetStudioSessionMappingWithContext is the same as GetStudioSessionMapping with the addition of 1804// the ability to pass a context and additional request options. 1805// 1806// See GetStudioSessionMapping for details on how to use this API operation. 1807// 1808// The context must be non-nil and will be used for request cancellation. If 1809// the context is nil a panic will occur. In the future the SDK may create 1810// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1811// for more information on using Contexts. 1812func (c *EMR) GetStudioSessionMappingWithContext(ctx aws.Context, input *GetStudioSessionMappingInput, opts ...request.Option) (*GetStudioSessionMappingOutput, error) { 1813 req, out := c.GetStudioSessionMappingRequest(input) 1814 req.SetContext(ctx) 1815 req.ApplyOptions(opts...) 1816 return out, req.Send() 1817} 1818 1819const opListBootstrapActions = "ListBootstrapActions" 1820 1821// ListBootstrapActionsRequest generates a "aws/request.Request" representing the 1822// client's request for the ListBootstrapActions operation. The "output" return 1823// value will be populated with the request's response once the request completes 1824// successfully. 1825// 1826// Use "Send" method on the returned Request to send the API call to the service. 1827// the "output" return value is not valid until after Send returns without error. 1828// 1829// See ListBootstrapActions for more information on using the ListBootstrapActions 1830// API call, and error handling. 1831// 1832// This method is useful when you want to inject custom logic or configuration 1833// into the SDK's request lifecycle. Such as custom headers, or retry logic. 1834// 1835// 1836// // Example sending a request using the ListBootstrapActionsRequest method. 1837// req, resp := client.ListBootstrapActionsRequest(params) 1838// 1839// err := req.Send() 1840// if err == nil { // resp is now filled 1841// fmt.Println(resp) 1842// } 1843// 1844// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/ListBootstrapActions 1845func (c *EMR) ListBootstrapActionsRequest(input *ListBootstrapActionsInput) (req *request.Request, output *ListBootstrapActionsOutput) { 1846 op := &request.Operation{ 1847 Name: opListBootstrapActions, 1848 HTTPMethod: "POST", 1849 HTTPPath: "/", 1850 Paginator: &request.Paginator{ 1851 InputTokens: []string{"Marker"}, 1852 OutputTokens: []string{"Marker"}, 1853 LimitToken: "", 1854 TruncationToken: "", 1855 }, 1856 } 1857 1858 if input == nil { 1859 input = &ListBootstrapActionsInput{} 1860 } 1861 1862 output = &ListBootstrapActionsOutput{} 1863 req = c.newRequest(op, input, output) 1864 return 1865} 1866 1867// ListBootstrapActions API operation for Amazon EMR. 1868// 1869// Provides information about the bootstrap actions associated with a cluster. 1870// 1871// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1872// with awserr.Error's Code and Message methods to get detailed information about 1873// the error. 1874// 1875// See the AWS API reference guide for Amazon EMR's 1876// API operation ListBootstrapActions for usage and error information. 1877// 1878// Returned Error Types: 1879// * InternalServerException 1880// This exception occurs when there is an internal failure in the Amazon EMR 1881// service. 1882// 1883// * InvalidRequestException 1884// This exception occurs when there is something wrong with user input. 1885// 1886// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/ListBootstrapActions 1887func (c *EMR) ListBootstrapActions(input *ListBootstrapActionsInput) (*ListBootstrapActionsOutput, error) { 1888 req, out := c.ListBootstrapActionsRequest(input) 1889 return out, req.Send() 1890} 1891 1892// ListBootstrapActionsWithContext is the same as ListBootstrapActions with the addition of 1893// the ability to pass a context and additional request options. 1894// 1895// See ListBootstrapActions for details on how to use this API operation. 1896// 1897// The context must be non-nil and will be used for request cancellation. If 1898// the context is nil a panic will occur. In the future the SDK may create 1899// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1900// for more information on using Contexts. 1901func (c *EMR) ListBootstrapActionsWithContext(ctx aws.Context, input *ListBootstrapActionsInput, opts ...request.Option) (*ListBootstrapActionsOutput, error) { 1902 req, out := c.ListBootstrapActionsRequest(input) 1903 req.SetContext(ctx) 1904 req.ApplyOptions(opts...) 1905 return out, req.Send() 1906} 1907 1908// ListBootstrapActionsPages iterates over the pages of a ListBootstrapActions operation, 1909// calling the "fn" function with the response data for each page. To stop 1910// iterating, return false from the fn function. 1911// 1912// See ListBootstrapActions method for more information on how to use this operation. 1913// 1914// Note: This operation can generate multiple requests to a service. 1915// 1916// // Example iterating over at most 3 pages of a ListBootstrapActions operation. 1917// pageNum := 0 1918// err := client.ListBootstrapActionsPages(params, 1919// func(page *emr.ListBootstrapActionsOutput, lastPage bool) bool { 1920// pageNum++ 1921// fmt.Println(page) 1922// return pageNum <= 3 1923// }) 1924// 1925func (c *EMR) ListBootstrapActionsPages(input *ListBootstrapActionsInput, fn func(*ListBootstrapActionsOutput, bool) bool) error { 1926 return c.ListBootstrapActionsPagesWithContext(aws.BackgroundContext(), input, fn) 1927} 1928 1929// ListBootstrapActionsPagesWithContext same as ListBootstrapActionsPages except 1930// it takes a Context and allows setting request options on the pages. 1931// 1932// The context must be non-nil and will be used for request cancellation. If 1933// the context is nil a panic will occur. In the future the SDK may create 1934// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1935// for more information on using Contexts. 1936func (c *EMR) ListBootstrapActionsPagesWithContext(ctx aws.Context, input *ListBootstrapActionsInput, fn func(*ListBootstrapActionsOutput, bool) bool, opts ...request.Option) error { 1937 p := request.Pagination{ 1938 NewRequest: func() (*request.Request, error) { 1939 var inCpy *ListBootstrapActionsInput 1940 if input != nil { 1941 tmp := *input 1942 inCpy = &tmp 1943 } 1944 req, _ := c.ListBootstrapActionsRequest(inCpy) 1945 req.SetContext(ctx) 1946 req.ApplyOptions(opts...) 1947 return req, nil 1948 }, 1949 } 1950 1951 for p.Next() { 1952 if !fn(p.Page().(*ListBootstrapActionsOutput), !p.HasNextPage()) { 1953 break 1954 } 1955 } 1956 1957 return p.Err() 1958} 1959 1960const opListClusters = "ListClusters" 1961 1962// ListClustersRequest generates a "aws/request.Request" representing the 1963// client's request for the ListClusters operation. The "output" return 1964// value will be populated with the request's response once the request completes 1965// successfully. 1966// 1967// Use "Send" method on the returned Request to send the API call to the service. 1968// the "output" return value is not valid until after Send returns without error. 1969// 1970// See ListClusters for more information on using the ListClusters 1971// API call, and error handling. 1972// 1973// This method is useful when you want to inject custom logic or configuration 1974// into the SDK's request lifecycle. Such as custom headers, or retry logic. 1975// 1976// 1977// // Example sending a request using the ListClustersRequest method. 1978// req, resp := client.ListClustersRequest(params) 1979// 1980// err := req.Send() 1981// if err == nil { // resp is now filled 1982// fmt.Println(resp) 1983// } 1984// 1985// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/ListClusters 1986func (c *EMR) ListClustersRequest(input *ListClustersInput) (req *request.Request, output *ListClustersOutput) { 1987 op := &request.Operation{ 1988 Name: opListClusters, 1989 HTTPMethod: "POST", 1990 HTTPPath: "/", 1991 Paginator: &request.Paginator{ 1992 InputTokens: []string{"Marker"}, 1993 OutputTokens: []string{"Marker"}, 1994 LimitToken: "", 1995 TruncationToken: "", 1996 }, 1997 } 1998 1999 if input == nil { 2000 input = &ListClustersInput{} 2001 } 2002 2003 output = &ListClustersOutput{} 2004 req = c.newRequest(op, input, output) 2005 return 2006} 2007 2008// ListClusters API operation for Amazon EMR. 2009// 2010// Provides the status of all clusters visible to this account. Allows you to 2011// filter the list of clusters based on certain criteria; for example, filtering 2012// by cluster creation date and time or by status. This call returns a maximum 2013// of 50 clusters in unsorted order per call, but returns a marker to track 2014// the paging of the cluster list across multiple ListClusters calls. 2015// 2016// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 2017// with awserr.Error's Code and Message methods to get detailed information about 2018// the error. 2019// 2020// See the AWS API reference guide for Amazon EMR's 2021// API operation ListClusters for usage and error information. 2022// 2023// Returned Error Types: 2024// * InternalServerException 2025// This exception occurs when there is an internal failure in the Amazon EMR 2026// service. 2027// 2028// * InvalidRequestException 2029// This exception occurs when there is something wrong with user input. 2030// 2031// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/ListClusters 2032func (c *EMR) ListClusters(input *ListClustersInput) (*ListClustersOutput, error) { 2033 req, out := c.ListClustersRequest(input) 2034 return out, req.Send() 2035} 2036 2037// ListClustersWithContext is the same as ListClusters with the addition of 2038// the ability to pass a context and additional request options. 2039// 2040// See ListClusters for details on how to use this API operation. 2041// 2042// The context must be non-nil and will be used for request cancellation. If 2043// the context is nil a panic will occur. In the future the SDK may create 2044// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2045// for more information on using Contexts. 2046func (c *EMR) ListClustersWithContext(ctx aws.Context, input *ListClustersInput, opts ...request.Option) (*ListClustersOutput, error) { 2047 req, out := c.ListClustersRequest(input) 2048 req.SetContext(ctx) 2049 req.ApplyOptions(opts...) 2050 return out, req.Send() 2051} 2052 2053// ListClustersPages iterates over the pages of a ListClusters operation, 2054// calling the "fn" function with the response data for each page. To stop 2055// iterating, return false from the fn function. 2056// 2057// See ListClusters method for more information on how to use this operation. 2058// 2059// Note: This operation can generate multiple requests to a service. 2060// 2061// // Example iterating over at most 3 pages of a ListClusters operation. 2062// pageNum := 0 2063// err := client.ListClustersPages(params, 2064// func(page *emr.ListClustersOutput, lastPage bool) bool { 2065// pageNum++ 2066// fmt.Println(page) 2067// return pageNum <= 3 2068// }) 2069// 2070func (c *EMR) ListClustersPages(input *ListClustersInput, fn func(*ListClustersOutput, bool) bool) error { 2071 return c.ListClustersPagesWithContext(aws.BackgroundContext(), input, fn) 2072} 2073 2074// ListClustersPagesWithContext same as ListClustersPages except 2075// it takes a Context and allows setting request options on the pages. 2076// 2077// The context must be non-nil and will be used for request cancellation. If 2078// the context is nil a panic will occur. In the future the SDK may create 2079// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2080// for more information on using Contexts. 2081func (c *EMR) ListClustersPagesWithContext(ctx aws.Context, input *ListClustersInput, fn func(*ListClustersOutput, bool) bool, opts ...request.Option) error { 2082 p := request.Pagination{ 2083 NewRequest: func() (*request.Request, error) { 2084 var inCpy *ListClustersInput 2085 if input != nil { 2086 tmp := *input 2087 inCpy = &tmp 2088 } 2089 req, _ := c.ListClustersRequest(inCpy) 2090 req.SetContext(ctx) 2091 req.ApplyOptions(opts...) 2092 return req, nil 2093 }, 2094 } 2095 2096 for p.Next() { 2097 if !fn(p.Page().(*ListClustersOutput), !p.HasNextPage()) { 2098 break 2099 } 2100 } 2101 2102 return p.Err() 2103} 2104 2105const opListInstanceFleets = "ListInstanceFleets" 2106 2107// ListInstanceFleetsRequest generates a "aws/request.Request" representing the 2108// client's request for the ListInstanceFleets operation. The "output" return 2109// value will be populated with the request's response once the request completes 2110// successfully. 2111// 2112// Use "Send" method on the returned Request to send the API call to the service. 2113// the "output" return value is not valid until after Send returns without error. 2114// 2115// See ListInstanceFleets for more information on using the ListInstanceFleets 2116// API call, and error handling. 2117// 2118// This method is useful when you want to inject custom logic or configuration 2119// into the SDK's request lifecycle. Such as custom headers, or retry logic. 2120// 2121// 2122// // Example sending a request using the ListInstanceFleetsRequest method. 2123// req, resp := client.ListInstanceFleetsRequest(params) 2124// 2125// err := req.Send() 2126// if err == nil { // resp is now filled 2127// fmt.Println(resp) 2128// } 2129// 2130// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/ListInstanceFleets 2131func (c *EMR) ListInstanceFleetsRequest(input *ListInstanceFleetsInput) (req *request.Request, output *ListInstanceFleetsOutput) { 2132 op := &request.Operation{ 2133 Name: opListInstanceFleets, 2134 HTTPMethod: "POST", 2135 HTTPPath: "/", 2136 Paginator: &request.Paginator{ 2137 InputTokens: []string{"Marker"}, 2138 OutputTokens: []string{"Marker"}, 2139 LimitToken: "", 2140 TruncationToken: "", 2141 }, 2142 } 2143 2144 if input == nil { 2145 input = &ListInstanceFleetsInput{} 2146 } 2147 2148 output = &ListInstanceFleetsOutput{} 2149 req = c.newRequest(op, input, output) 2150 return 2151} 2152 2153// ListInstanceFleets API operation for Amazon EMR. 2154// 2155// Lists all available details about the instance fleets in a cluster. 2156// 2157// The instance fleet configuration is available only in Amazon EMR versions 2158// 4.8.0 and later, excluding 5.0.x versions. 2159// 2160// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 2161// with awserr.Error's Code and Message methods to get detailed information about 2162// the error. 2163// 2164// See the AWS API reference guide for Amazon EMR's 2165// API operation ListInstanceFleets for usage and error information. 2166// 2167// Returned Error Types: 2168// * InternalServerException 2169// This exception occurs when there is an internal failure in the Amazon EMR 2170// service. 2171// 2172// * InvalidRequestException 2173// This exception occurs when there is something wrong with user input. 2174// 2175// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/ListInstanceFleets 2176func (c *EMR) ListInstanceFleets(input *ListInstanceFleetsInput) (*ListInstanceFleetsOutput, error) { 2177 req, out := c.ListInstanceFleetsRequest(input) 2178 return out, req.Send() 2179} 2180 2181// ListInstanceFleetsWithContext is the same as ListInstanceFleets with the addition of 2182// the ability to pass a context and additional request options. 2183// 2184// See ListInstanceFleets for details on how to use this API operation. 2185// 2186// The context must be non-nil and will be used for request cancellation. If 2187// the context is nil a panic will occur. In the future the SDK may create 2188// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2189// for more information on using Contexts. 2190func (c *EMR) ListInstanceFleetsWithContext(ctx aws.Context, input *ListInstanceFleetsInput, opts ...request.Option) (*ListInstanceFleetsOutput, error) { 2191 req, out := c.ListInstanceFleetsRequest(input) 2192 req.SetContext(ctx) 2193 req.ApplyOptions(opts...) 2194 return out, req.Send() 2195} 2196 2197// ListInstanceFleetsPages iterates over the pages of a ListInstanceFleets operation, 2198// calling the "fn" function with the response data for each page. To stop 2199// iterating, return false from the fn function. 2200// 2201// See ListInstanceFleets method for more information on how to use this operation. 2202// 2203// Note: This operation can generate multiple requests to a service. 2204// 2205// // Example iterating over at most 3 pages of a ListInstanceFleets operation. 2206// pageNum := 0 2207// err := client.ListInstanceFleetsPages(params, 2208// func(page *emr.ListInstanceFleetsOutput, lastPage bool) bool { 2209// pageNum++ 2210// fmt.Println(page) 2211// return pageNum <= 3 2212// }) 2213// 2214func (c *EMR) ListInstanceFleetsPages(input *ListInstanceFleetsInput, fn func(*ListInstanceFleetsOutput, bool) bool) error { 2215 return c.ListInstanceFleetsPagesWithContext(aws.BackgroundContext(), input, fn) 2216} 2217 2218// ListInstanceFleetsPagesWithContext same as ListInstanceFleetsPages except 2219// it takes a Context and allows setting request options on the pages. 2220// 2221// The context must be non-nil and will be used for request cancellation. If 2222// the context is nil a panic will occur. In the future the SDK may create 2223// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2224// for more information on using Contexts. 2225func (c *EMR) ListInstanceFleetsPagesWithContext(ctx aws.Context, input *ListInstanceFleetsInput, fn func(*ListInstanceFleetsOutput, bool) bool, opts ...request.Option) error { 2226 p := request.Pagination{ 2227 NewRequest: func() (*request.Request, error) { 2228 var inCpy *ListInstanceFleetsInput 2229 if input != nil { 2230 tmp := *input 2231 inCpy = &tmp 2232 } 2233 req, _ := c.ListInstanceFleetsRequest(inCpy) 2234 req.SetContext(ctx) 2235 req.ApplyOptions(opts...) 2236 return req, nil 2237 }, 2238 } 2239 2240 for p.Next() { 2241 if !fn(p.Page().(*ListInstanceFleetsOutput), !p.HasNextPage()) { 2242 break 2243 } 2244 } 2245 2246 return p.Err() 2247} 2248 2249const opListInstanceGroups = "ListInstanceGroups" 2250 2251// ListInstanceGroupsRequest generates a "aws/request.Request" representing the 2252// client's request for the ListInstanceGroups operation. The "output" return 2253// value will be populated with the request's response once the request completes 2254// successfully. 2255// 2256// Use "Send" method on the returned Request to send the API call to the service. 2257// the "output" return value is not valid until after Send returns without error. 2258// 2259// See ListInstanceGroups for more information on using the ListInstanceGroups 2260// API call, and error handling. 2261// 2262// This method is useful when you want to inject custom logic or configuration 2263// into the SDK's request lifecycle. Such as custom headers, or retry logic. 2264// 2265// 2266// // Example sending a request using the ListInstanceGroupsRequest method. 2267// req, resp := client.ListInstanceGroupsRequest(params) 2268// 2269// err := req.Send() 2270// if err == nil { // resp is now filled 2271// fmt.Println(resp) 2272// } 2273// 2274// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/ListInstanceGroups 2275func (c *EMR) ListInstanceGroupsRequest(input *ListInstanceGroupsInput) (req *request.Request, output *ListInstanceGroupsOutput) { 2276 op := &request.Operation{ 2277 Name: opListInstanceGroups, 2278 HTTPMethod: "POST", 2279 HTTPPath: "/", 2280 Paginator: &request.Paginator{ 2281 InputTokens: []string{"Marker"}, 2282 OutputTokens: []string{"Marker"}, 2283 LimitToken: "", 2284 TruncationToken: "", 2285 }, 2286 } 2287 2288 if input == nil { 2289 input = &ListInstanceGroupsInput{} 2290 } 2291 2292 output = &ListInstanceGroupsOutput{} 2293 req = c.newRequest(op, input, output) 2294 return 2295} 2296 2297// ListInstanceGroups API operation for Amazon EMR. 2298// 2299// Provides all available details about the instance groups in a cluster. 2300// 2301// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 2302// with awserr.Error's Code and Message methods to get detailed information about 2303// the error. 2304// 2305// See the AWS API reference guide for Amazon EMR's 2306// API operation ListInstanceGroups for usage and error information. 2307// 2308// Returned Error Types: 2309// * InternalServerException 2310// This exception occurs when there is an internal failure in the Amazon EMR 2311// service. 2312// 2313// * InvalidRequestException 2314// This exception occurs when there is something wrong with user input. 2315// 2316// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/ListInstanceGroups 2317func (c *EMR) ListInstanceGroups(input *ListInstanceGroupsInput) (*ListInstanceGroupsOutput, error) { 2318 req, out := c.ListInstanceGroupsRequest(input) 2319 return out, req.Send() 2320} 2321 2322// ListInstanceGroupsWithContext is the same as ListInstanceGroups with the addition of 2323// the ability to pass a context and additional request options. 2324// 2325// See ListInstanceGroups for details on how to use this API operation. 2326// 2327// The context must be non-nil and will be used for request cancellation. If 2328// the context is nil a panic will occur. In the future the SDK may create 2329// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2330// for more information on using Contexts. 2331func (c *EMR) ListInstanceGroupsWithContext(ctx aws.Context, input *ListInstanceGroupsInput, opts ...request.Option) (*ListInstanceGroupsOutput, error) { 2332 req, out := c.ListInstanceGroupsRequest(input) 2333 req.SetContext(ctx) 2334 req.ApplyOptions(opts...) 2335 return out, req.Send() 2336} 2337 2338// ListInstanceGroupsPages iterates over the pages of a ListInstanceGroups operation, 2339// calling the "fn" function with the response data for each page. To stop 2340// iterating, return false from the fn function. 2341// 2342// See ListInstanceGroups method for more information on how to use this operation. 2343// 2344// Note: This operation can generate multiple requests to a service. 2345// 2346// // Example iterating over at most 3 pages of a ListInstanceGroups operation. 2347// pageNum := 0 2348// err := client.ListInstanceGroupsPages(params, 2349// func(page *emr.ListInstanceGroupsOutput, lastPage bool) bool { 2350// pageNum++ 2351// fmt.Println(page) 2352// return pageNum <= 3 2353// }) 2354// 2355func (c *EMR) ListInstanceGroupsPages(input *ListInstanceGroupsInput, fn func(*ListInstanceGroupsOutput, bool) bool) error { 2356 return c.ListInstanceGroupsPagesWithContext(aws.BackgroundContext(), input, fn) 2357} 2358 2359// ListInstanceGroupsPagesWithContext same as ListInstanceGroupsPages except 2360// it takes a Context and allows setting request options on the pages. 2361// 2362// The context must be non-nil and will be used for request cancellation. If 2363// the context is nil a panic will occur. In the future the SDK may create 2364// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2365// for more information on using Contexts. 2366func (c *EMR) ListInstanceGroupsPagesWithContext(ctx aws.Context, input *ListInstanceGroupsInput, fn func(*ListInstanceGroupsOutput, bool) bool, opts ...request.Option) error { 2367 p := request.Pagination{ 2368 NewRequest: func() (*request.Request, error) { 2369 var inCpy *ListInstanceGroupsInput 2370 if input != nil { 2371 tmp := *input 2372 inCpy = &tmp 2373 } 2374 req, _ := c.ListInstanceGroupsRequest(inCpy) 2375 req.SetContext(ctx) 2376 req.ApplyOptions(opts...) 2377 return req, nil 2378 }, 2379 } 2380 2381 for p.Next() { 2382 if !fn(p.Page().(*ListInstanceGroupsOutput), !p.HasNextPage()) { 2383 break 2384 } 2385 } 2386 2387 return p.Err() 2388} 2389 2390const opListInstances = "ListInstances" 2391 2392// ListInstancesRequest generates a "aws/request.Request" representing the 2393// client's request for the ListInstances operation. The "output" return 2394// value will be populated with the request's response once the request completes 2395// successfully. 2396// 2397// Use "Send" method on the returned Request to send the API call to the service. 2398// the "output" return value is not valid until after Send returns without error. 2399// 2400// See ListInstances for more information on using the ListInstances 2401// API call, and error handling. 2402// 2403// This method is useful when you want to inject custom logic or configuration 2404// into the SDK's request lifecycle. Such as custom headers, or retry logic. 2405// 2406// 2407// // Example sending a request using the ListInstancesRequest method. 2408// req, resp := client.ListInstancesRequest(params) 2409// 2410// err := req.Send() 2411// if err == nil { // resp is now filled 2412// fmt.Println(resp) 2413// } 2414// 2415// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/ListInstances 2416func (c *EMR) ListInstancesRequest(input *ListInstancesInput) (req *request.Request, output *ListInstancesOutput) { 2417 op := &request.Operation{ 2418 Name: opListInstances, 2419 HTTPMethod: "POST", 2420 HTTPPath: "/", 2421 Paginator: &request.Paginator{ 2422 InputTokens: []string{"Marker"}, 2423 OutputTokens: []string{"Marker"}, 2424 LimitToken: "", 2425 TruncationToken: "", 2426 }, 2427 } 2428 2429 if input == nil { 2430 input = &ListInstancesInput{} 2431 } 2432 2433 output = &ListInstancesOutput{} 2434 req = c.newRequest(op, input, output) 2435 return 2436} 2437 2438// ListInstances API operation for Amazon EMR. 2439// 2440// Provides information for all active EC2 instances and EC2 instances terminated 2441// in the last 30 days, up to a maximum of 2,000. EC2 instances in any of the 2442// following states are considered active: AWAITING_FULFILLMENT, PROVISIONING, 2443// BOOTSTRAPPING, RUNNING. 2444// 2445// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 2446// with awserr.Error's Code and Message methods to get detailed information about 2447// the error. 2448// 2449// See the AWS API reference guide for Amazon EMR's 2450// API operation ListInstances for usage and error information. 2451// 2452// Returned Error Types: 2453// * InternalServerException 2454// This exception occurs when there is an internal failure in the Amazon EMR 2455// service. 2456// 2457// * InvalidRequestException 2458// This exception occurs when there is something wrong with user input. 2459// 2460// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/ListInstances 2461func (c *EMR) ListInstances(input *ListInstancesInput) (*ListInstancesOutput, error) { 2462 req, out := c.ListInstancesRequest(input) 2463 return out, req.Send() 2464} 2465 2466// ListInstancesWithContext is the same as ListInstances with the addition of 2467// the ability to pass a context and additional request options. 2468// 2469// See ListInstances for details on how to use this API operation. 2470// 2471// The context must be non-nil and will be used for request cancellation. If 2472// the context is nil a panic will occur. In the future the SDK may create 2473// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2474// for more information on using Contexts. 2475func (c *EMR) ListInstancesWithContext(ctx aws.Context, input *ListInstancesInput, opts ...request.Option) (*ListInstancesOutput, error) { 2476 req, out := c.ListInstancesRequest(input) 2477 req.SetContext(ctx) 2478 req.ApplyOptions(opts...) 2479 return out, req.Send() 2480} 2481 2482// ListInstancesPages iterates over the pages of a ListInstances operation, 2483// calling the "fn" function with the response data for each page. To stop 2484// iterating, return false from the fn function. 2485// 2486// See ListInstances method for more information on how to use this operation. 2487// 2488// Note: This operation can generate multiple requests to a service. 2489// 2490// // Example iterating over at most 3 pages of a ListInstances operation. 2491// pageNum := 0 2492// err := client.ListInstancesPages(params, 2493// func(page *emr.ListInstancesOutput, lastPage bool) bool { 2494// pageNum++ 2495// fmt.Println(page) 2496// return pageNum <= 3 2497// }) 2498// 2499func (c *EMR) ListInstancesPages(input *ListInstancesInput, fn func(*ListInstancesOutput, bool) bool) error { 2500 return c.ListInstancesPagesWithContext(aws.BackgroundContext(), input, fn) 2501} 2502 2503// ListInstancesPagesWithContext same as ListInstancesPages except 2504// it takes a Context and allows setting request options on the pages. 2505// 2506// The context must be non-nil and will be used for request cancellation. If 2507// the context is nil a panic will occur. In the future the SDK may create 2508// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2509// for more information on using Contexts. 2510func (c *EMR) ListInstancesPagesWithContext(ctx aws.Context, input *ListInstancesInput, fn func(*ListInstancesOutput, bool) bool, opts ...request.Option) error { 2511 p := request.Pagination{ 2512 NewRequest: func() (*request.Request, error) { 2513 var inCpy *ListInstancesInput 2514 if input != nil { 2515 tmp := *input 2516 inCpy = &tmp 2517 } 2518 req, _ := c.ListInstancesRequest(inCpy) 2519 req.SetContext(ctx) 2520 req.ApplyOptions(opts...) 2521 return req, nil 2522 }, 2523 } 2524 2525 for p.Next() { 2526 if !fn(p.Page().(*ListInstancesOutput), !p.HasNextPage()) { 2527 break 2528 } 2529 } 2530 2531 return p.Err() 2532} 2533 2534const opListNotebookExecutions = "ListNotebookExecutions" 2535 2536// ListNotebookExecutionsRequest generates a "aws/request.Request" representing the 2537// client's request for the ListNotebookExecutions operation. The "output" return 2538// value will be populated with the request's response once the request completes 2539// successfully. 2540// 2541// Use "Send" method on the returned Request to send the API call to the service. 2542// the "output" return value is not valid until after Send returns without error. 2543// 2544// See ListNotebookExecutions for more information on using the ListNotebookExecutions 2545// API call, and error handling. 2546// 2547// This method is useful when you want to inject custom logic or configuration 2548// into the SDK's request lifecycle. Such as custom headers, or retry logic. 2549// 2550// 2551// // Example sending a request using the ListNotebookExecutionsRequest method. 2552// req, resp := client.ListNotebookExecutionsRequest(params) 2553// 2554// err := req.Send() 2555// if err == nil { // resp is now filled 2556// fmt.Println(resp) 2557// } 2558// 2559// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/ListNotebookExecutions 2560func (c *EMR) ListNotebookExecutionsRequest(input *ListNotebookExecutionsInput) (req *request.Request, output *ListNotebookExecutionsOutput) { 2561 op := &request.Operation{ 2562 Name: opListNotebookExecutions, 2563 HTTPMethod: "POST", 2564 HTTPPath: "/", 2565 Paginator: &request.Paginator{ 2566 InputTokens: []string{"Marker"}, 2567 OutputTokens: []string{"Marker"}, 2568 LimitToken: "", 2569 TruncationToken: "", 2570 }, 2571 } 2572 2573 if input == nil { 2574 input = &ListNotebookExecutionsInput{} 2575 } 2576 2577 output = &ListNotebookExecutionsOutput{} 2578 req = c.newRequest(op, input, output) 2579 return 2580} 2581 2582// ListNotebookExecutions API operation for Amazon EMR. 2583// 2584// Provides summaries of all notebook executions. You can filter the list based 2585// on multiple criteria such as status, time range, and editor id. Returns a 2586// maximum of 50 notebook executions and a marker to track the paging of a longer 2587// notebook execution list across multiple ListNotebookExecution calls. 2588// 2589// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 2590// with awserr.Error's Code and Message methods to get detailed information about 2591// the error. 2592// 2593// See the AWS API reference guide for Amazon EMR's 2594// API operation ListNotebookExecutions for usage and error information. 2595// 2596// Returned Error Types: 2597// * InternalServerError 2598// Indicates that an error occurred while processing the request and that the 2599// request was not completed. 2600// 2601// * InvalidRequestException 2602// This exception occurs when there is something wrong with user input. 2603// 2604// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/ListNotebookExecutions 2605func (c *EMR) ListNotebookExecutions(input *ListNotebookExecutionsInput) (*ListNotebookExecutionsOutput, error) { 2606 req, out := c.ListNotebookExecutionsRequest(input) 2607 return out, req.Send() 2608} 2609 2610// ListNotebookExecutionsWithContext is the same as ListNotebookExecutions with the addition of 2611// the ability to pass a context and additional request options. 2612// 2613// See ListNotebookExecutions for details on how to use this API operation. 2614// 2615// The context must be non-nil and will be used for request cancellation. If 2616// the context is nil a panic will occur. In the future the SDK may create 2617// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2618// for more information on using Contexts. 2619func (c *EMR) ListNotebookExecutionsWithContext(ctx aws.Context, input *ListNotebookExecutionsInput, opts ...request.Option) (*ListNotebookExecutionsOutput, error) { 2620 req, out := c.ListNotebookExecutionsRequest(input) 2621 req.SetContext(ctx) 2622 req.ApplyOptions(opts...) 2623 return out, req.Send() 2624} 2625 2626// ListNotebookExecutionsPages iterates over the pages of a ListNotebookExecutions operation, 2627// calling the "fn" function with the response data for each page. To stop 2628// iterating, return false from the fn function. 2629// 2630// See ListNotebookExecutions method for more information on how to use this operation. 2631// 2632// Note: This operation can generate multiple requests to a service. 2633// 2634// // Example iterating over at most 3 pages of a ListNotebookExecutions operation. 2635// pageNum := 0 2636// err := client.ListNotebookExecutionsPages(params, 2637// func(page *emr.ListNotebookExecutionsOutput, lastPage bool) bool { 2638// pageNum++ 2639// fmt.Println(page) 2640// return pageNum <= 3 2641// }) 2642// 2643func (c *EMR) ListNotebookExecutionsPages(input *ListNotebookExecutionsInput, fn func(*ListNotebookExecutionsOutput, bool) bool) error { 2644 return c.ListNotebookExecutionsPagesWithContext(aws.BackgroundContext(), input, fn) 2645} 2646 2647// ListNotebookExecutionsPagesWithContext same as ListNotebookExecutionsPages except 2648// it takes a Context and allows setting request options on the pages. 2649// 2650// The context must be non-nil and will be used for request cancellation. If 2651// the context is nil a panic will occur. In the future the SDK may create 2652// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2653// for more information on using Contexts. 2654func (c *EMR) ListNotebookExecutionsPagesWithContext(ctx aws.Context, input *ListNotebookExecutionsInput, fn func(*ListNotebookExecutionsOutput, bool) bool, opts ...request.Option) error { 2655 p := request.Pagination{ 2656 NewRequest: func() (*request.Request, error) { 2657 var inCpy *ListNotebookExecutionsInput 2658 if input != nil { 2659 tmp := *input 2660 inCpy = &tmp 2661 } 2662 req, _ := c.ListNotebookExecutionsRequest(inCpy) 2663 req.SetContext(ctx) 2664 req.ApplyOptions(opts...) 2665 return req, nil 2666 }, 2667 } 2668 2669 for p.Next() { 2670 if !fn(p.Page().(*ListNotebookExecutionsOutput), !p.HasNextPage()) { 2671 break 2672 } 2673 } 2674 2675 return p.Err() 2676} 2677 2678const opListReleaseLabels = "ListReleaseLabels" 2679 2680// ListReleaseLabelsRequest generates a "aws/request.Request" representing the 2681// client's request for the ListReleaseLabels operation. The "output" return 2682// value will be populated with the request's response once the request completes 2683// successfully. 2684// 2685// Use "Send" method on the returned Request to send the API call to the service. 2686// the "output" return value is not valid until after Send returns without error. 2687// 2688// See ListReleaseLabels for more information on using the ListReleaseLabels 2689// API call, and error handling. 2690// 2691// This method is useful when you want to inject custom logic or configuration 2692// into the SDK's request lifecycle. Such as custom headers, or retry logic. 2693// 2694// 2695// // Example sending a request using the ListReleaseLabelsRequest method. 2696// req, resp := client.ListReleaseLabelsRequest(params) 2697// 2698// err := req.Send() 2699// if err == nil { // resp is now filled 2700// fmt.Println(resp) 2701// } 2702// 2703// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/ListReleaseLabels 2704func (c *EMR) ListReleaseLabelsRequest(input *ListReleaseLabelsInput) (req *request.Request, output *ListReleaseLabelsOutput) { 2705 op := &request.Operation{ 2706 Name: opListReleaseLabels, 2707 HTTPMethod: "POST", 2708 HTTPPath: "/", 2709 Paginator: &request.Paginator{ 2710 InputTokens: []string{"NextToken"}, 2711 OutputTokens: []string{"NextToken"}, 2712 LimitToken: "MaxResults", 2713 TruncationToken: "", 2714 }, 2715 } 2716 2717 if input == nil { 2718 input = &ListReleaseLabelsInput{} 2719 } 2720 2721 output = &ListReleaseLabelsOutput{} 2722 req = c.newRequest(op, input, output) 2723 return 2724} 2725 2726// ListReleaseLabels API operation for Amazon EMR. 2727// 2728// Retrieves release labels of EMR services in the region where the API is called. 2729// 2730// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 2731// with awserr.Error's Code and Message methods to get detailed information about 2732// the error. 2733// 2734// See the AWS API reference guide for Amazon EMR's 2735// API operation ListReleaseLabels for usage and error information. 2736// 2737// Returned Error Types: 2738// * InternalServerException 2739// This exception occurs when there is an internal failure in the Amazon EMR 2740// service. 2741// 2742// * InvalidRequestException 2743// This exception occurs when there is something wrong with user input. 2744// 2745// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/ListReleaseLabels 2746func (c *EMR) ListReleaseLabels(input *ListReleaseLabelsInput) (*ListReleaseLabelsOutput, error) { 2747 req, out := c.ListReleaseLabelsRequest(input) 2748 return out, req.Send() 2749} 2750 2751// ListReleaseLabelsWithContext is the same as ListReleaseLabels with the addition of 2752// the ability to pass a context and additional request options. 2753// 2754// See ListReleaseLabels for details on how to use this API operation. 2755// 2756// The context must be non-nil and will be used for request cancellation. If 2757// the context is nil a panic will occur. In the future the SDK may create 2758// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2759// for more information on using Contexts. 2760func (c *EMR) ListReleaseLabelsWithContext(ctx aws.Context, input *ListReleaseLabelsInput, opts ...request.Option) (*ListReleaseLabelsOutput, error) { 2761 req, out := c.ListReleaseLabelsRequest(input) 2762 req.SetContext(ctx) 2763 req.ApplyOptions(opts...) 2764 return out, req.Send() 2765} 2766 2767// ListReleaseLabelsPages iterates over the pages of a ListReleaseLabels operation, 2768// calling the "fn" function with the response data for each page. To stop 2769// iterating, return false from the fn function. 2770// 2771// See ListReleaseLabels method for more information on how to use this operation. 2772// 2773// Note: This operation can generate multiple requests to a service. 2774// 2775// // Example iterating over at most 3 pages of a ListReleaseLabels operation. 2776// pageNum := 0 2777// err := client.ListReleaseLabelsPages(params, 2778// func(page *emr.ListReleaseLabelsOutput, lastPage bool) bool { 2779// pageNum++ 2780// fmt.Println(page) 2781// return pageNum <= 3 2782// }) 2783// 2784func (c *EMR) ListReleaseLabelsPages(input *ListReleaseLabelsInput, fn func(*ListReleaseLabelsOutput, bool) bool) error { 2785 return c.ListReleaseLabelsPagesWithContext(aws.BackgroundContext(), input, fn) 2786} 2787 2788// ListReleaseLabelsPagesWithContext same as ListReleaseLabelsPages except 2789// it takes a Context and allows setting request options on the pages. 2790// 2791// The context must be non-nil and will be used for request cancellation. If 2792// the context is nil a panic will occur. In the future the SDK may create 2793// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2794// for more information on using Contexts. 2795func (c *EMR) ListReleaseLabelsPagesWithContext(ctx aws.Context, input *ListReleaseLabelsInput, fn func(*ListReleaseLabelsOutput, bool) bool, opts ...request.Option) error { 2796 p := request.Pagination{ 2797 NewRequest: func() (*request.Request, error) { 2798 var inCpy *ListReleaseLabelsInput 2799 if input != nil { 2800 tmp := *input 2801 inCpy = &tmp 2802 } 2803 req, _ := c.ListReleaseLabelsRequest(inCpy) 2804 req.SetContext(ctx) 2805 req.ApplyOptions(opts...) 2806 return req, nil 2807 }, 2808 } 2809 2810 for p.Next() { 2811 if !fn(p.Page().(*ListReleaseLabelsOutput), !p.HasNextPage()) { 2812 break 2813 } 2814 } 2815 2816 return p.Err() 2817} 2818 2819const opListSecurityConfigurations = "ListSecurityConfigurations" 2820 2821// ListSecurityConfigurationsRequest generates a "aws/request.Request" representing the 2822// client's request for the ListSecurityConfigurations operation. The "output" return 2823// value will be populated with the request's response once the request completes 2824// successfully. 2825// 2826// Use "Send" method on the returned Request to send the API call to the service. 2827// the "output" return value is not valid until after Send returns without error. 2828// 2829// See ListSecurityConfigurations for more information on using the ListSecurityConfigurations 2830// API call, and error handling. 2831// 2832// This method is useful when you want to inject custom logic or configuration 2833// into the SDK's request lifecycle. Such as custom headers, or retry logic. 2834// 2835// 2836// // Example sending a request using the ListSecurityConfigurationsRequest method. 2837// req, resp := client.ListSecurityConfigurationsRequest(params) 2838// 2839// err := req.Send() 2840// if err == nil { // resp is now filled 2841// fmt.Println(resp) 2842// } 2843// 2844// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/ListSecurityConfigurations 2845func (c *EMR) ListSecurityConfigurationsRequest(input *ListSecurityConfigurationsInput) (req *request.Request, output *ListSecurityConfigurationsOutput) { 2846 op := &request.Operation{ 2847 Name: opListSecurityConfigurations, 2848 HTTPMethod: "POST", 2849 HTTPPath: "/", 2850 Paginator: &request.Paginator{ 2851 InputTokens: []string{"Marker"}, 2852 OutputTokens: []string{"Marker"}, 2853 LimitToken: "", 2854 TruncationToken: "", 2855 }, 2856 } 2857 2858 if input == nil { 2859 input = &ListSecurityConfigurationsInput{} 2860 } 2861 2862 output = &ListSecurityConfigurationsOutput{} 2863 req = c.newRequest(op, input, output) 2864 return 2865} 2866 2867// ListSecurityConfigurations API operation for Amazon EMR. 2868// 2869// Lists all the security configurations visible to this account, providing 2870// their creation dates and times, and their names. This call returns a maximum 2871// of 50 clusters per call, but returns a marker to track the paging of the 2872// cluster list across multiple ListSecurityConfigurations calls. 2873// 2874// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 2875// with awserr.Error's Code and Message methods to get detailed information about 2876// the error. 2877// 2878// See the AWS API reference guide for Amazon EMR's 2879// API operation ListSecurityConfigurations for usage and error information. 2880// 2881// Returned Error Types: 2882// * InternalServerException 2883// This exception occurs when there is an internal failure in the Amazon EMR 2884// service. 2885// 2886// * InvalidRequestException 2887// This exception occurs when there is something wrong with user input. 2888// 2889// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/ListSecurityConfigurations 2890func (c *EMR) ListSecurityConfigurations(input *ListSecurityConfigurationsInput) (*ListSecurityConfigurationsOutput, error) { 2891 req, out := c.ListSecurityConfigurationsRequest(input) 2892 return out, req.Send() 2893} 2894 2895// ListSecurityConfigurationsWithContext is the same as ListSecurityConfigurations with the addition of 2896// the ability to pass a context and additional request options. 2897// 2898// See ListSecurityConfigurations for details on how to use this API operation. 2899// 2900// The context must be non-nil and will be used for request cancellation. If 2901// the context is nil a panic will occur. In the future the SDK may create 2902// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2903// for more information on using Contexts. 2904func (c *EMR) ListSecurityConfigurationsWithContext(ctx aws.Context, input *ListSecurityConfigurationsInput, opts ...request.Option) (*ListSecurityConfigurationsOutput, error) { 2905 req, out := c.ListSecurityConfigurationsRequest(input) 2906 req.SetContext(ctx) 2907 req.ApplyOptions(opts...) 2908 return out, req.Send() 2909} 2910 2911// ListSecurityConfigurationsPages iterates over the pages of a ListSecurityConfigurations operation, 2912// calling the "fn" function with the response data for each page. To stop 2913// iterating, return false from the fn function. 2914// 2915// See ListSecurityConfigurations method for more information on how to use this operation. 2916// 2917// Note: This operation can generate multiple requests to a service. 2918// 2919// // Example iterating over at most 3 pages of a ListSecurityConfigurations operation. 2920// pageNum := 0 2921// err := client.ListSecurityConfigurationsPages(params, 2922// func(page *emr.ListSecurityConfigurationsOutput, lastPage bool) bool { 2923// pageNum++ 2924// fmt.Println(page) 2925// return pageNum <= 3 2926// }) 2927// 2928func (c *EMR) ListSecurityConfigurationsPages(input *ListSecurityConfigurationsInput, fn func(*ListSecurityConfigurationsOutput, bool) bool) error { 2929 return c.ListSecurityConfigurationsPagesWithContext(aws.BackgroundContext(), input, fn) 2930} 2931 2932// ListSecurityConfigurationsPagesWithContext same as ListSecurityConfigurationsPages except 2933// it takes a Context and allows setting request options on the pages. 2934// 2935// The context must be non-nil and will be used for request cancellation. If 2936// the context is nil a panic will occur. In the future the SDK may create 2937// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2938// for more information on using Contexts. 2939func (c *EMR) ListSecurityConfigurationsPagesWithContext(ctx aws.Context, input *ListSecurityConfigurationsInput, fn func(*ListSecurityConfigurationsOutput, bool) bool, opts ...request.Option) error { 2940 p := request.Pagination{ 2941 NewRequest: func() (*request.Request, error) { 2942 var inCpy *ListSecurityConfigurationsInput 2943 if input != nil { 2944 tmp := *input 2945 inCpy = &tmp 2946 } 2947 req, _ := c.ListSecurityConfigurationsRequest(inCpy) 2948 req.SetContext(ctx) 2949 req.ApplyOptions(opts...) 2950 return req, nil 2951 }, 2952 } 2953 2954 for p.Next() { 2955 if !fn(p.Page().(*ListSecurityConfigurationsOutput), !p.HasNextPage()) { 2956 break 2957 } 2958 } 2959 2960 return p.Err() 2961} 2962 2963const opListSteps = "ListSteps" 2964 2965// ListStepsRequest generates a "aws/request.Request" representing the 2966// client's request for the ListSteps operation. The "output" return 2967// value will be populated with the request's response once the request completes 2968// successfully. 2969// 2970// Use "Send" method on the returned Request to send the API call to the service. 2971// the "output" return value is not valid until after Send returns without error. 2972// 2973// See ListSteps for more information on using the ListSteps 2974// API call, and error handling. 2975// 2976// This method is useful when you want to inject custom logic or configuration 2977// into the SDK's request lifecycle. Such as custom headers, or retry logic. 2978// 2979// 2980// // Example sending a request using the ListStepsRequest method. 2981// req, resp := client.ListStepsRequest(params) 2982// 2983// err := req.Send() 2984// if err == nil { // resp is now filled 2985// fmt.Println(resp) 2986// } 2987// 2988// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/ListSteps 2989func (c *EMR) ListStepsRequest(input *ListStepsInput) (req *request.Request, output *ListStepsOutput) { 2990 op := &request.Operation{ 2991 Name: opListSteps, 2992 HTTPMethod: "POST", 2993 HTTPPath: "/", 2994 Paginator: &request.Paginator{ 2995 InputTokens: []string{"Marker"}, 2996 OutputTokens: []string{"Marker"}, 2997 LimitToken: "", 2998 TruncationToken: "", 2999 }, 3000 } 3001 3002 if input == nil { 3003 input = &ListStepsInput{} 3004 } 3005 3006 output = &ListStepsOutput{} 3007 req = c.newRequest(op, input, output) 3008 return 3009} 3010 3011// ListSteps API operation for Amazon EMR. 3012// 3013// Provides a list of steps for the cluster in reverse order unless you specify 3014// stepIds with the request or filter by StepStates. You can specify a maximum 3015// of 10 stepIDs. The CLI automatically paginates results to return a list greater 3016// than 50 steps. To return more than 50 steps using the CLI, specify a Marker, 3017// which is a pagination token that indicates the next set of steps to retrieve. 3018// 3019// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 3020// with awserr.Error's Code and Message methods to get detailed information about 3021// the error. 3022// 3023// See the AWS API reference guide for Amazon EMR's 3024// API operation ListSteps for usage and error information. 3025// 3026// Returned Error Types: 3027// * InternalServerException 3028// This exception occurs when there is an internal failure in the Amazon EMR 3029// service. 3030// 3031// * InvalidRequestException 3032// This exception occurs when there is something wrong with user input. 3033// 3034// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/ListSteps 3035func (c *EMR) ListSteps(input *ListStepsInput) (*ListStepsOutput, error) { 3036 req, out := c.ListStepsRequest(input) 3037 return out, req.Send() 3038} 3039 3040// ListStepsWithContext is the same as ListSteps with the addition of 3041// the ability to pass a context and additional request options. 3042// 3043// See ListSteps for details on how to use this API operation. 3044// 3045// The context must be non-nil and will be used for request cancellation. If 3046// the context is nil a panic will occur. In the future the SDK may create 3047// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 3048// for more information on using Contexts. 3049func (c *EMR) ListStepsWithContext(ctx aws.Context, input *ListStepsInput, opts ...request.Option) (*ListStepsOutput, error) { 3050 req, out := c.ListStepsRequest(input) 3051 req.SetContext(ctx) 3052 req.ApplyOptions(opts...) 3053 return out, req.Send() 3054} 3055 3056// ListStepsPages iterates over the pages of a ListSteps operation, 3057// calling the "fn" function with the response data for each page. To stop 3058// iterating, return false from the fn function. 3059// 3060// See ListSteps method for more information on how to use this operation. 3061// 3062// Note: This operation can generate multiple requests to a service. 3063// 3064// // Example iterating over at most 3 pages of a ListSteps operation. 3065// pageNum := 0 3066// err := client.ListStepsPages(params, 3067// func(page *emr.ListStepsOutput, lastPage bool) bool { 3068// pageNum++ 3069// fmt.Println(page) 3070// return pageNum <= 3 3071// }) 3072// 3073func (c *EMR) ListStepsPages(input *ListStepsInput, fn func(*ListStepsOutput, bool) bool) error { 3074 return c.ListStepsPagesWithContext(aws.BackgroundContext(), input, fn) 3075} 3076 3077// ListStepsPagesWithContext same as ListStepsPages except 3078// it takes a Context and allows setting request options on the pages. 3079// 3080// The context must be non-nil and will be used for request cancellation. If 3081// the context is nil a panic will occur. In the future the SDK may create 3082// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 3083// for more information on using Contexts. 3084func (c *EMR) ListStepsPagesWithContext(ctx aws.Context, input *ListStepsInput, fn func(*ListStepsOutput, bool) bool, opts ...request.Option) error { 3085 p := request.Pagination{ 3086 NewRequest: func() (*request.Request, error) { 3087 var inCpy *ListStepsInput 3088 if input != nil { 3089 tmp := *input 3090 inCpy = &tmp 3091 } 3092 req, _ := c.ListStepsRequest(inCpy) 3093 req.SetContext(ctx) 3094 req.ApplyOptions(opts...) 3095 return req, nil 3096 }, 3097 } 3098 3099 for p.Next() { 3100 if !fn(p.Page().(*ListStepsOutput), !p.HasNextPage()) { 3101 break 3102 } 3103 } 3104 3105 return p.Err() 3106} 3107 3108const opListStudioSessionMappings = "ListStudioSessionMappings" 3109 3110// ListStudioSessionMappingsRequest generates a "aws/request.Request" representing the 3111// client's request for the ListStudioSessionMappings operation. The "output" return 3112// value will be populated with the request's response once the request completes 3113// successfully. 3114// 3115// Use "Send" method on the returned Request to send the API call to the service. 3116// the "output" return value is not valid until after Send returns without error. 3117// 3118// See ListStudioSessionMappings for more information on using the ListStudioSessionMappings 3119// API call, and error handling. 3120// 3121// This method is useful when you want to inject custom logic or configuration 3122// into the SDK's request lifecycle. Such as custom headers, or retry logic. 3123// 3124// 3125// // Example sending a request using the ListStudioSessionMappingsRequest method. 3126// req, resp := client.ListStudioSessionMappingsRequest(params) 3127// 3128// err := req.Send() 3129// if err == nil { // resp is now filled 3130// fmt.Println(resp) 3131// } 3132// 3133// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/ListStudioSessionMappings 3134func (c *EMR) ListStudioSessionMappingsRequest(input *ListStudioSessionMappingsInput) (req *request.Request, output *ListStudioSessionMappingsOutput) { 3135 op := &request.Operation{ 3136 Name: opListStudioSessionMappings, 3137 HTTPMethod: "POST", 3138 HTTPPath: "/", 3139 Paginator: &request.Paginator{ 3140 InputTokens: []string{"Marker"}, 3141 OutputTokens: []string{"Marker"}, 3142 LimitToken: "", 3143 TruncationToken: "", 3144 }, 3145 } 3146 3147 if input == nil { 3148 input = &ListStudioSessionMappingsInput{} 3149 } 3150 3151 output = &ListStudioSessionMappingsOutput{} 3152 req = c.newRequest(op, input, output) 3153 return 3154} 3155 3156// ListStudioSessionMappings API operation for Amazon EMR. 3157// 3158// Returns a list of all user or group session mappings for the Amazon EMR Studio 3159// specified by StudioId. 3160// 3161// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 3162// with awserr.Error's Code and Message methods to get detailed information about 3163// the error. 3164// 3165// See the AWS API reference guide for Amazon EMR's 3166// API operation ListStudioSessionMappings for usage and error information. 3167// 3168// Returned Error Types: 3169// * InternalServerError 3170// Indicates that an error occurred while processing the request and that the 3171// request was not completed. 3172// 3173// * InvalidRequestException 3174// This exception occurs when there is something wrong with user input. 3175// 3176// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/ListStudioSessionMappings 3177func (c *EMR) ListStudioSessionMappings(input *ListStudioSessionMappingsInput) (*ListStudioSessionMappingsOutput, error) { 3178 req, out := c.ListStudioSessionMappingsRequest(input) 3179 return out, req.Send() 3180} 3181 3182// ListStudioSessionMappingsWithContext is the same as ListStudioSessionMappings with the addition of 3183// the ability to pass a context and additional request options. 3184// 3185// See ListStudioSessionMappings for details on how to use this API operation. 3186// 3187// The context must be non-nil and will be used for request cancellation. If 3188// the context is nil a panic will occur. In the future the SDK may create 3189// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 3190// for more information on using Contexts. 3191func (c *EMR) ListStudioSessionMappingsWithContext(ctx aws.Context, input *ListStudioSessionMappingsInput, opts ...request.Option) (*ListStudioSessionMappingsOutput, error) { 3192 req, out := c.ListStudioSessionMappingsRequest(input) 3193 req.SetContext(ctx) 3194 req.ApplyOptions(opts...) 3195 return out, req.Send() 3196} 3197 3198// ListStudioSessionMappingsPages iterates over the pages of a ListStudioSessionMappings operation, 3199// calling the "fn" function with the response data for each page. To stop 3200// iterating, return false from the fn function. 3201// 3202// See ListStudioSessionMappings method for more information on how to use this operation. 3203// 3204// Note: This operation can generate multiple requests to a service. 3205// 3206// // Example iterating over at most 3 pages of a ListStudioSessionMappings operation. 3207// pageNum := 0 3208// err := client.ListStudioSessionMappingsPages(params, 3209// func(page *emr.ListStudioSessionMappingsOutput, lastPage bool) bool { 3210// pageNum++ 3211// fmt.Println(page) 3212// return pageNum <= 3 3213// }) 3214// 3215func (c *EMR) ListStudioSessionMappingsPages(input *ListStudioSessionMappingsInput, fn func(*ListStudioSessionMappingsOutput, bool) bool) error { 3216 return c.ListStudioSessionMappingsPagesWithContext(aws.BackgroundContext(), input, fn) 3217} 3218 3219// ListStudioSessionMappingsPagesWithContext same as ListStudioSessionMappingsPages except 3220// it takes a Context and allows setting request options on the pages. 3221// 3222// The context must be non-nil and will be used for request cancellation. If 3223// the context is nil a panic will occur. In the future the SDK may create 3224// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 3225// for more information on using Contexts. 3226func (c *EMR) ListStudioSessionMappingsPagesWithContext(ctx aws.Context, input *ListStudioSessionMappingsInput, fn func(*ListStudioSessionMappingsOutput, bool) bool, opts ...request.Option) error { 3227 p := request.Pagination{ 3228 NewRequest: func() (*request.Request, error) { 3229 var inCpy *ListStudioSessionMappingsInput 3230 if input != nil { 3231 tmp := *input 3232 inCpy = &tmp 3233 } 3234 req, _ := c.ListStudioSessionMappingsRequest(inCpy) 3235 req.SetContext(ctx) 3236 req.ApplyOptions(opts...) 3237 return req, nil 3238 }, 3239 } 3240 3241 for p.Next() { 3242 if !fn(p.Page().(*ListStudioSessionMappingsOutput), !p.HasNextPage()) { 3243 break 3244 } 3245 } 3246 3247 return p.Err() 3248} 3249 3250const opListStudios = "ListStudios" 3251 3252// ListStudiosRequest generates a "aws/request.Request" representing the 3253// client's request for the ListStudios operation. The "output" return 3254// value will be populated with the request's response once the request completes 3255// successfully. 3256// 3257// Use "Send" method on the returned Request to send the API call to the service. 3258// the "output" return value is not valid until after Send returns without error. 3259// 3260// See ListStudios for more information on using the ListStudios 3261// API call, and error handling. 3262// 3263// This method is useful when you want to inject custom logic or configuration 3264// into the SDK's request lifecycle. Such as custom headers, or retry logic. 3265// 3266// 3267// // Example sending a request using the ListStudiosRequest method. 3268// req, resp := client.ListStudiosRequest(params) 3269// 3270// err := req.Send() 3271// if err == nil { // resp is now filled 3272// fmt.Println(resp) 3273// } 3274// 3275// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/ListStudios 3276func (c *EMR) ListStudiosRequest(input *ListStudiosInput) (req *request.Request, output *ListStudiosOutput) { 3277 op := &request.Operation{ 3278 Name: opListStudios, 3279 HTTPMethod: "POST", 3280 HTTPPath: "/", 3281 Paginator: &request.Paginator{ 3282 InputTokens: []string{"Marker"}, 3283 OutputTokens: []string{"Marker"}, 3284 LimitToken: "", 3285 TruncationToken: "", 3286 }, 3287 } 3288 3289 if input == nil { 3290 input = &ListStudiosInput{} 3291 } 3292 3293 output = &ListStudiosOutput{} 3294 req = c.newRequest(op, input, output) 3295 return 3296} 3297 3298// ListStudios API operation for Amazon EMR. 3299// 3300// Returns a list of all Amazon EMR Studios associated with the account. The 3301// list includes details such as ID, Studio Access URL, and creation time for 3302// each Studio. 3303// 3304// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 3305// with awserr.Error's Code and Message methods to get detailed information about 3306// the error. 3307// 3308// See the AWS API reference guide for Amazon EMR's 3309// API operation ListStudios for usage and error information. 3310// 3311// Returned Error Types: 3312// * InternalServerException 3313// This exception occurs when there is an internal failure in the Amazon EMR 3314// service. 3315// 3316// * InvalidRequestException 3317// This exception occurs when there is something wrong with user input. 3318// 3319// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/ListStudios 3320func (c *EMR) ListStudios(input *ListStudiosInput) (*ListStudiosOutput, error) { 3321 req, out := c.ListStudiosRequest(input) 3322 return out, req.Send() 3323} 3324 3325// ListStudiosWithContext is the same as ListStudios with the addition of 3326// the ability to pass a context and additional request options. 3327// 3328// See ListStudios for details on how to use this API operation. 3329// 3330// The context must be non-nil and will be used for request cancellation. If 3331// the context is nil a panic will occur. In the future the SDK may create 3332// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 3333// for more information on using Contexts. 3334func (c *EMR) ListStudiosWithContext(ctx aws.Context, input *ListStudiosInput, opts ...request.Option) (*ListStudiosOutput, error) { 3335 req, out := c.ListStudiosRequest(input) 3336 req.SetContext(ctx) 3337 req.ApplyOptions(opts...) 3338 return out, req.Send() 3339} 3340 3341// ListStudiosPages iterates over the pages of a ListStudios operation, 3342// calling the "fn" function with the response data for each page. To stop 3343// iterating, return false from the fn function. 3344// 3345// See ListStudios method for more information on how to use this operation. 3346// 3347// Note: This operation can generate multiple requests to a service. 3348// 3349// // Example iterating over at most 3 pages of a ListStudios operation. 3350// pageNum := 0 3351// err := client.ListStudiosPages(params, 3352// func(page *emr.ListStudiosOutput, lastPage bool) bool { 3353// pageNum++ 3354// fmt.Println(page) 3355// return pageNum <= 3 3356// }) 3357// 3358func (c *EMR) ListStudiosPages(input *ListStudiosInput, fn func(*ListStudiosOutput, bool) bool) error { 3359 return c.ListStudiosPagesWithContext(aws.BackgroundContext(), input, fn) 3360} 3361 3362// ListStudiosPagesWithContext same as ListStudiosPages except 3363// it takes a Context and allows setting request options on the pages. 3364// 3365// The context must be non-nil and will be used for request cancellation. If 3366// the context is nil a panic will occur. In the future the SDK may create 3367// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 3368// for more information on using Contexts. 3369func (c *EMR) ListStudiosPagesWithContext(ctx aws.Context, input *ListStudiosInput, fn func(*ListStudiosOutput, bool) bool, opts ...request.Option) error { 3370 p := request.Pagination{ 3371 NewRequest: func() (*request.Request, error) { 3372 var inCpy *ListStudiosInput 3373 if input != nil { 3374 tmp := *input 3375 inCpy = &tmp 3376 } 3377 req, _ := c.ListStudiosRequest(inCpy) 3378 req.SetContext(ctx) 3379 req.ApplyOptions(opts...) 3380 return req, nil 3381 }, 3382 } 3383 3384 for p.Next() { 3385 if !fn(p.Page().(*ListStudiosOutput), !p.HasNextPage()) { 3386 break 3387 } 3388 } 3389 3390 return p.Err() 3391} 3392 3393const opModifyCluster = "ModifyCluster" 3394 3395// ModifyClusterRequest generates a "aws/request.Request" representing the 3396// client's request for the ModifyCluster operation. The "output" return 3397// value will be populated with the request's response once the request completes 3398// successfully. 3399// 3400// Use "Send" method on the returned Request to send the API call to the service. 3401// the "output" return value is not valid until after Send returns without error. 3402// 3403// See ModifyCluster for more information on using the ModifyCluster 3404// API call, and error handling. 3405// 3406// This method is useful when you want to inject custom logic or configuration 3407// into the SDK's request lifecycle. Such as custom headers, or retry logic. 3408// 3409// 3410// // Example sending a request using the ModifyClusterRequest method. 3411// req, resp := client.ModifyClusterRequest(params) 3412// 3413// err := req.Send() 3414// if err == nil { // resp is now filled 3415// fmt.Println(resp) 3416// } 3417// 3418// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/ModifyCluster 3419func (c *EMR) ModifyClusterRequest(input *ModifyClusterInput) (req *request.Request, output *ModifyClusterOutput) { 3420 op := &request.Operation{ 3421 Name: opModifyCluster, 3422 HTTPMethod: "POST", 3423 HTTPPath: "/", 3424 } 3425 3426 if input == nil { 3427 input = &ModifyClusterInput{} 3428 } 3429 3430 output = &ModifyClusterOutput{} 3431 req = c.newRequest(op, input, output) 3432 return 3433} 3434 3435// ModifyCluster API operation for Amazon EMR. 3436// 3437// Modifies the number of steps that can be executed concurrently for the cluster 3438// specified using ClusterID. 3439// 3440// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 3441// with awserr.Error's Code and Message methods to get detailed information about 3442// the error. 3443// 3444// See the AWS API reference guide for Amazon EMR's 3445// API operation ModifyCluster for usage and error information. 3446// 3447// Returned Error Types: 3448// * InternalServerError 3449// Indicates that an error occurred while processing the request and that the 3450// request was not completed. 3451// 3452// * InvalidRequestException 3453// This exception occurs when there is something wrong with user input. 3454// 3455// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/ModifyCluster 3456func (c *EMR) ModifyCluster(input *ModifyClusterInput) (*ModifyClusterOutput, error) { 3457 req, out := c.ModifyClusterRequest(input) 3458 return out, req.Send() 3459} 3460 3461// ModifyClusterWithContext is the same as ModifyCluster with the addition of 3462// the ability to pass a context and additional request options. 3463// 3464// See ModifyCluster for details on how to use this API operation. 3465// 3466// The context must be non-nil and will be used for request cancellation. If 3467// the context is nil a panic will occur. In the future the SDK may create 3468// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 3469// for more information on using Contexts. 3470func (c *EMR) ModifyClusterWithContext(ctx aws.Context, input *ModifyClusterInput, opts ...request.Option) (*ModifyClusterOutput, error) { 3471 req, out := c.ModifyClusterRequest(input) 3472 req.SetContext(ctx) 3473 req.ApplyOptions(opts...) 3474 return out, req.Send() 3475} 3476 3477const opModifyInstanceFleet = "ModifyInstanceFleet" 3478 3479// ModifyInstanceFleetRequest generates a "aws/request.Request" representing the 3480// client's request for the ModifyInstanceFleet operation. The "output" return 3481// value will be populated with the request's response once the request completes 3482// successfully. 3483// 3484// Use "Send" method on the returned Request to send the API call to the service. 3485// the "output" return value is not valid until after Send returns without error. 3486// 3487// See ModifyInstanceFleet for more information on using the ModifyInstanceFleet 3488// API call, and error handling. 3489// 3490// This method is useful when you want to inject custom logic or configuration 3491// into the SDK's request lifecycle. Such as custom headers, or retry logic. 3492// 3493// 3494// // Example sending a request using the ModifyInstanceFleetRequest method. 3495// req, resp := client.ModifyInstanceFleetRequest(params) 3496// 3497// err := req.Send() 3498// if err == nil { // resp is now filled 3499// fmt.Println(resp) 3500// } 3501// 3502// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/ModifyInstanceFleet 3503func (c *EMR) ModifyInstanceFleetRequest(input *ModifyInstanceFleetInput) (req *request.Request, output *ModifyInstanceFleetOutput) { 3504 op := &request.Operation{ 3505 Name: opModifyInstanceFleet, 3506 HTTPMethod: "POST", 3507 HTTPPath: "/", 3508 } 3509 3510 if input == nil { 3511 input = &ModifyInstanceFleetInput{} 3512 } 3513 3514 output = &ModifyInstanceFleetOutput{} 3515 req = c.newRequest(op, input, output) 3516 req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 3517 return 3518} 3519 3520// ModifyInstanceFleet API operation for Amazon EMR. 3521// 3522// Modifies the target On-Demand and target Spot capacities for the instance 3523// fleet with the specified InstanceFleetID within the cluster specified using 3524// ClusterID. The call either succeeds or fails atomically. 3525// 3526// The instance fleet configuration is available only in Amazon EMR versions 3527// 4.8.0 and later, excluding 5.0.x versions. 3528// 3529// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 3530// with awserr.Error's Code and Message methods to get detailed information about 3531// the error. 3532// 3533// See the AWS API reference guide for Amazon EMR's 3534// API operation ModifyInstanceFleet for usage and error information. 3535// 3536// Returned Error Types: 3537// * InternalServerException 3538// This exception occurs when there is an internal failure in the Amazon EMR 3539// service. 3540// 3541// * InvalidRequestException 3542// This exception occurs when there is something wrong with user input. 3543// 3544// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/ModifyInstanceFleet 3545func (c *EMR) ModifyInstanceFleet(input *ModifyInstanceFleetInput) (*ModifyInstanceFleetOutput, error) { 3546 req, out := c.ModifyInstanceFleetRequest(input) 3547 return out, req.Send() 3548} 3549 3550// ModifyInstanceFleetWithContext is the same as ModifyInstanceFleet with the addition of 3551// the ability to pass a context and additional request options. 3552// 3553// See ModifyInstanceFleet for details on how to use this API operation. 3554// 3555// The context must be non-nil and will be used for request cancellation. If 3556// the context is nil a panic will occur. In the future the SDK may create 3557// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 3558// for more information on using Contexts. 3559func (c *EMR) ModifyInstanceFleetWithContext(ctx aws.Context, input *ModifyInstanceFleetInput, opts ...request.Option) (*ModifyInstanceFleetOutput, error) { 3560 req, out := c.ModifyInstanceFleetRequest(input) 3561 req.SetContext(ctx) 3562 req.ApplyOptions(opts...) 3563 return out, req.Send() 3564} 3565 3566const opModifyInstanceGroups = "ModifyInstanceGroups" 3567 3568// ModifyInstanceGroupsRequest generates a "aws/request.Request" representing the 3569// client's request for the ModifyInstanceGroups operation. The "output" return 3570// value will be populated with the request's response once the request completes 3571// successfully. 3572// 3573// Use "Send" method on the returned Request to send the API call to the service. 3574// the "output" return value is not valid until after Send returns without error. 3575// 3576// See ModifyInstanceGroups for more information on using the ModifyInstanceGroups 3577// API call, and error handling. 3578// 3579// This method is useful when you want to inject custom logic or configuration 3580// into the SDK's request lifecycle. Such as custom headers, or retry logic. 3581// 3582// 3583// // Example sending a request using the ModifyInstanceGroupsRequest method. 3584// req, resp := client.ModifyInstanceGroupsRequest(params) 3585// 3586// err := req.Send() 3587// if err == nil { // resp is now filled 3588// fmt.Println(resp) 3589// } 3590// 3591// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/ModifyInstanceGroups 3592func (c *EMR) ModifyInstanceGroupsRequest(input *ModifyInstanceGroupsInput) (req *request.Request, output *ModifyInstanceGroupsOutput) { 3593 op := &request.Operation{ 3594 Name: opModifyInstanceGroups, 3595 HTTPMethod: "POST", 3596 HTTPPath: "/", 3597 } 3598 3599 if input == nil { 3600 input = &ModifyInstanceGroupsInput{} 3601 } 3602 3603 output = &ModifyInstanceGroupsOutput{} 3604 req = c.newRequest(op, input, output) 3605 req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 3606 return 3607} 3608 3609// ModifyInstanceGroups API operation for Amazon EMR. 3610// 3611// ModifyInstanceGroups modifies the number of nodes and configuration settings 3612// of an instance group. The input parameters include the new target instance 3613// count for the group and the instance group ID. The call will either succeed 3614// or fail atomically. 3615// 3616// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 3617// with awserr.Error's Code and Message methods to get detailed information about 3618// the error. 3619// 3620// See the AWS API reference guide for Amazon EMR's 3621// API operation ModifyInstanceGroups for usage and error information. 3622// 3623// Returned Error Types: 3624// * InternalServerError 3625// Indicates that an error occurred while processing the request and that the 3626// request was not completed. 3627// 3628// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/ModifyInstanceGroups 3629func (c *EMR) ModifyInstanceGroups(input *ModifyInstanceGroupsInput) (*ModifyInstanceGroupsOutput, error) { 3630 req, out := c.ModifyInstanceGroupsRequest(input) 3631 return out, req.Send() 3632} 3633 3634// ModifyInstanceGroupsWithContext is the same as ModifyInstanceGroups with the addition of 3635// the ability to pass a context and additional request options. 3636// 3637// See ModifyInstanceGroups for details on how to use this API operation. 3638// 3639// The context must be non-nil and will be used for request cancellation. If 3640// the context is nil a panic will occur. In the future the SDK may create 3641// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 3642// for more information on using Contexts. 3643func (c *EMR) ModifyInstanceGroupsWithContext(ctx aws.Context, input *ModifyInstanceGroupsInput, opts ...request.Option) (*ModifyInstanceGroupsOutput, error) { 3644 req, out := c.ModifyInstanceGroupsRequest(input) 3645 req.SetContext(ctx) 3646 req.ApplyOptions(opts...) 3647 return out, req.Send() 3648} 3649 3650const opPutAutoScalingPolicy = "PutAutoScalingPolicy" 3651 3652// PutAutoScalingPolicyRequest generates a "aws/request.Request" representing the 3653// client's request for the PutAutoScalingPolicy operation. The "output" return 3654// value will be populated with the request's response once the request completes 3655// successfully. 3656// 3657// Use "Send" method on the returned Request to send the API call to the service. 3658// the "output" return value is not valid until after Send returns without error. 3659// 3660// See PutAutoScalingPolicy for more information on using the PutAutoScalingPolicy 3661// API call, and error handling. 3662// 3663// This method is useful when you want to inject custom logic or configuration 3664// into the SDK's request lifecycle. Such as custom headers, or retry logic. 3665// 3666// 3667// // Example sending a request using the PutAutoScalingPolicyRequest method. 3668// req, resp := client.PutAutoScalingPolicyRequest(params) 3669// 3670// err := req.Send() 3671// if err == nil { // resp is now filled 3672// fmt.Println(resp) 3673// } 3674// 3675// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/PutAutoScalingPolicy 3676func (c *EMR) PutAutoScalingPolicyRequest(input *PutAutoScalingPolicyInput) (req *request.Request, output *PutAutoScalingPolicyOutput) { 3677 op := &request.Operation{ 3678 Name: opPutAutoScalingPolicy, 3679 HTTPMethod: "POST", 3680 HTTPPath: "/", 3681 } 3682 3683 if input == nil { 3684 input = &PutAutoScalingPolicyInput{} 3685 } 3686 3687 output = &PutAutoScalingPolicyOutput{} 3688 req = c.newRequest(op, input, output) 3689 return 3690} 3691 3692// PutAutoScalingPolicy API operation for Amazon EMR. 3693// 3694// Creates or updates an automatic scaling policy for a core instance group 3695// or task instance group in an Amazon EMR cluster. The automatic scaling policy 3696// defines how an instance group dynamically adds and terminates EC2 instances 3697// in response to the value of a CloudWatch metric. 3698// 3699// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 3700// with awserr.Error's Code and Message methods to get detailed information about 3701// the error. 3702// 3703// See the AWS API reference guide for Amazon EMR's 3704// API operation PutAutoScalingPolicy for usage and error information. 3705// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/PutAutoScalingPolicy 3706func (c *EMR) PutAutoScalingPolicy(input *PutAutoScalingPolicyInput) (*PutAutoScalingPolicyOutput, error) { 3707 req, out := c.PutAutoScalingPolicyRequest(input) 3708 return out, req.Send() 3709} 3710 3711// PutAutoScalingPolicyWithContext is the same as PutAutoScalingPolicy with the addition of 3712// the ability to pass a context and additional request options. 3713// 3714// See PutAutoScalingPolicy for details on how to use this API operation. 3715// 3716// The context must be non-nil and will be used for request cancellation. If 3717// the context is nil a panic will occur. In the future the SDK may create 3718// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 3719// for more information on using Contexts. 3720func (c *EMR) PutAutoScalingPolicyWithContext(ctx aws.Context, input *PutAutoScalingPolicyInput, opts ...request.Option) (*PutAutoScalingPolicyOutput, error) { 3721 req, out := c.PutAutoScalingPolicyRequest(input) 3722 req.SetContext(ctx) 3723 req.ApplyOptions(opts...) 3724 return out, req.Send() 3725} 3726 3727const opPutBlockPublicAccessConfiguration = "PutBlockPublicAccessConfiguration" 3728 3729// PutBlockPublicAccessConfigurationRequest generates a "aws/request.Request" representing the 3730// client's request for the PutBlockPublicAccessConfiguration operation. The "output" return 3731// value will be populated with the request's response once the request completes 3732// successfully. 3733// 3734// Use "Send" method on the returned Request to send the API call to the service. 3735// the "output" return value is not valid until after Send returns without error. 3736// 3737// See PutBlockPublicAccessConfiguration for more information on using the PutBlockPublicAccessConfiguration 3738// API call, and error handling. 3739// 3740// This method is useful when you want to inject custom logic or configuration 3741// into the SDK's request lifecycle. Such as custom headers, or retry logic. 3742// 3743// 3744// // Example sending a request using the PutBlockPublicAccessConfigurationRequest method. 3745// req, resp := client.PutBlockPublicAccessConfigurationRequest(params) 3746// 3747// err := req.Send() 3748// if err == nil { // resp is now filled 3749// fmt.Println(resp) 3750// } 3751// 3752// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/PutBlockPublicAccessConfiguration 3753func (c *EMR) PutBlockPublicAccessConfigurationRequest(input *PutBlockPublicAccessConfigurationInput) (req *request.Request, output *PutBlockPublicAccessConfigurationOutput) { 3754 op := &request.Operation{ 3755 Name: opPutBlockPublicAccessConfiguration, 3756 HTTPMethod: "POST", 3757 HTTPPath: "/", 3758 } 3759 3760 if input == nil { 3761 input = &PutBlockPublicAccessConfigurationInput{} 3762 } 3763 3764 output = &PutBlockPublicAccessConfigurationOutput{} 3765 req = c.newRequest(op, input, output) 3766 req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 3767 return 3768} 3769 3770// PutBlockPublicAccessConfiguration API operation for Amazon EMR. 3771// 3772// Creates or updates an Amazon EMR block public access configuration for your 3773// account in the current Region. For more information see Configure Block Public 3774// Access for Amazon EMR (https://docs.aws.amazon.com/emr/latest/ManagementGuide/configure-block-public-access.html) 3775// in the Amazon EMR Management Guide. 3776// 3777// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 3778// with awserr.Error's Code and Message methods to get detailed information about 3779// the error. 3780// 3781// See the AWS API reference guide for Amazon EMR's 3782// API operation PutBlockPublicAccessConfiguration for usage and error information. 3783// 3784// Returned Error Types: 3785// * InternalServerException 3786// This exception occurs when there is an internal failure in the Amazon EMR 3787// service. 3788// 3789// * InvalidRequestException 3790// This exception occurs when there is something wrong with user input. 3791// 3792// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/PutBlockPublicAccessConfiguration 3793func (c *EMR) PutBlockPublicAccessConfiguration(input *PutBlockPublicAccessConfigurationInput) (*PutBlockPublicAccessConfigurationOutput, error) { 3794 req, out := c.PutBlockPublicAccessConfigurationRequest(input) 3795 return out, req.Send() 3796} 3797 3798// PutBlockPublicAccessConfigurationWithContext is the same as PutBlockPublicAccessConfiguration with the addition of 3799// the ability to pass a context and additional request options. 3800// 3801// See PutBlockPublicAccessConfiguration for details on how to use this API operation. 3802// 3803// The context must be non-nil and will be used for request cancellation. If 3804// the context is nil a panic will occur. In the future the SDK may create 3805// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 3806// for more information on using Contexts. 3807func (c *EMR) PutBlockPublicAccessConfigurationWithContext(ctx aws.Context, input *PutBlockPublicAccessConfigurationInput, opts ...request.Option) (*PutBlockPublicAccessConfigurationOutput, error) { 3808 req, out := c.PutBlockPublicAccessConfigurationRequest(input) 3809 req.SetContext(ctx) 3810 req.ApplyOptions(opts...) 3811 return out, req.Send() 3812} 3813 3814const opPutManagedScalingPolicy = "PutManagedScalingPolicy" 3815 3816// PutManagedScalingPolicyRequest generates a "aws/request.Request" representing the 3817// client's request for the PutManagedScalingPolicy operation. The "output" return 3818// value will be populated with the request's response once the request completes 3819// successfully. 3820// 3821// Use "Send" method on the returned Request to send the API call to the service. 3822// the "output" return value is not valid until after Send returns without error. 3823// 3824// See PutManagedScalingPolicy for more information on using the PutManagedScalingPolicy 3825// API call, and error handling. 3826// 3827// This method is useful when you want to inject custom logic or configuration 3828// into the SDK's request lifecycle. Such as custom headers, or retry logic. 3829// 3830// 3831// // Example sending a request using the PutManagedScalingPolicyRequest method. 3832// req, resp := client.PutManagedScalingPolicyRequest(params) 3833// 3834// err := req.Send() 3835// if err == nil { // resp is now filled 3836// fmt.Println(resp) 3837// } 3838// 3839// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/PutManagedScalingPolicy 3840func (c *EMR) PutManagedScalingPolicyRequest(input *PutManagedScalingPolicyInput) (req *request.Request, output *PutManagedScalingPolicyOutput) { 3841 op := &request.Operation{ 3842 Name: opPutManagedScalingPolicy, 3843 HTTPMethod: "POST", 3844 HTTPPath: "/", 3845 } 3846 3847 if input == nil { 3848 input = &PutManagedScalingPolicyInput{} 3849 } 3850 3851 output = &PutManagedScalingPolicyOutput{} 3852 req = c.newRequest(op, input, output) 3853 req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 3854 return 3855} 3856 3857// PutManagedScalingPolicy API operation for Amazon EMR. 3858// 3859// Creates or updates a managed scaling policy for an Amazon EMR cluster. The 3860// managed scaling policy defines the limits for resources, such as EC2 instances 3861// that can be added or terminated from a cluster. The policy only applies to 3862// the core and task nodes. The master node cannot be scaled after initial configuration. 3863// 3864// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 3865// with awserr.Error's Code and Message methods to get detailed information about 3866// the error. 3867// 3868// See the AWS API reference guide for Amazon EMR's 3869// API operation PutManagedScalingPolicy for usage and error information. 3870// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/PutManagedScalingPolicy 3871func (c *EMR) PutManagedScalingPolicy(input *PutManagedScalingPolicyInput) (*PutManagedScalingPolicyOutput, error) { 3872 req, out := c.PutManagedScalingPolicyRequest(input) 3873 return out, req.Send() 3874} 3875 3876// PutManagedScalingPolicyWithContext is the same as PutManagedScalingPolicy with the addition of 3877// the ability to pass a context and additional request options. 3878// 3879// See PutManagedScalingPolicy for details on how to use this API operation. 3880// 3881// The context must be non-nil and will be used for request cancellation. If 3882// the context is nil a panic will occur. In the future the SDK may create 3883// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 3884// for more information on using Contexts. 3885func (c *EMR) PutManagedScalingPolicyWithContext(ctx aws.Context, input *PutManagedScalingPolicyInput, opts ...request.Option) (*PutManagedScalingPolicyOutput, error) { 3886 req, out := c.PutManagedScalingPolicyRequest(input) 3887 req.SetContext(ctx) 3888 req.ApplyOptions(opts...) 3889 return out, req.Send() 3890} 3891 3892const opRemoveAutoScalingPolicy = "RemoveAutoScalingPolicy" 3893 3894// RemoveAutoScalingPolicyRequest generates a "aws/request.Request" representing the 3895// client's request for the RemoveAutoScalingPolicy operation. The "output" return 3896// value will be populated with the request's response once the request completes 3897// successfully. 3898// 3899// Use "Send" method on the returned Request to send the API call to the service. 3900// the "output" return value is not valid until after Send returns without error. 3901// 3902// See RemoveAutoScalingPolicy for more information on using the RemoveAutoScalingPolicy 3903// API call, and error handling. 3904// 3905// This method is useful when you want to inject custom logic or configuration 3906// into the SDK's request lifecycle. Such as custom headers, or retry logic. 3907// 3908// 3909// // Example sending a request using the RemoveAutoScalingPolicyRequest method. 3910// req, resp := client.RemoveAutoScalingPolicyRequest(params) 3911// 3912// err := req.Send() 3913// if err == nil { // resp is now filled 3914// fmt.Println(resp) 3915// } 3916// 3917// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/RemoveAutoScalingPolicy 3918func (c *EMR) RemoveAutoScalingPolicyRequest(input *RemoveAutoScalingPolicyInput) (req *request.Request, output *RemoveAutoScalingPolicyOutput) { 3919 op := &request.Operation{ 3920 Name: opRemoveAutoScalingPolicy, 3921 HTTPMethod: "POST", 3922 HTTPPath: "/", 3923 } 3924 3925 if input == nil { 3926 input = &RemoveAutoScalingPolicyInput{} 3927 } 3928 3929 output = &RemoveAutoScalingPolicyOutput{} 3930 req = c.newRequest(op, input, output) 3931 req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 3932 return 3933} 3934 3935// RemoveAutoScalingPolicy API operation for Amazon EMR. 3936// 3937// Removes an automatic scaling policy from a specified instance group within 3938// an EMR cluster. 3939// 3940// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 3941// with awserr.Error's Code and Message methods to get detailed information about 3942// the error. 3943// 3944// See the AWS API reference guide for Amazon EMR's 3945// API operation RemoveAutoScalingPolicy for usage and error information. 3946// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/RemoveAutoScalingPolicy 3947func (c *EMR) RemoveAutoScalingPolicy(input *RemoveAutoScalingPolicyInput) (*RemoveAutoScalingPolicyOutput, error) { 3948 req, out := c.RemoveAutoScalingPolicyRequest(input) 3949 return out, req.Send() 3950} 3951 3952// RemoveAutoScalingPolicyWithContext is the same as RemoveAutoScalingPolicy with the addition of 3953// the ability to pass a context and additional request options. 3954// 3955// See RemoveAutoScalingPolicy for details on how to use this API operation. 3956// 3957// The context must be non-nil and will be used for request cancellation. If 3958// the context is nil a panic will occur. In the future the SDK may create 3959// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 3960// for more information on using Contexts. 3961func (c *EMR) RemoveAutoScalingPolicyWithContext(ctx aws.Context, input *RemoveAutoScalingPolicyInput, opts ...request.Option) (*RemoveAutoScalingPolicyOutput, error) { 3962 req, out := c.RemoveAutoScalingPolicyRequest(input) 3963 req.SetContext(ctx) 3964 req.ApplyOptions(opts...) 3965 return out, req.Send() 3966} 3967 3968const opRemoveManagedScalingPolicy = "RemoveManagedScalingPolicy" 3969 3970// RemoveManagedScalingPolicyRequest generates a "aws/request.Request" representing the 3971// client's request for the RemoveManagedScalingPolicy operation. The "output" return 3972// value will be populated with the request's response once the request completes 3973// successfully. 3974// 3975// Use "Send" method on the returned Request to send the API call to the service. 3976// the "output" return value is not valid until after Send returns without error. 3977// 3978// See RemoveManagedScalingPolicy for more information on using the RemoveManagedScalingPolicy 3979// API call, and error handling. 3980// 3981// This method is useful when you want to inject custom logic or configuration 3982// into the SDK's request lifecycle. Such as custom headers, or retry logic. 3983// 3984// 3985// // Example sending a request using the RemoveManagedScalingPolicyRequest method. 3986// req, resp := client.RemoveManagedScalingPolicyRequest(params) 3987// 3988// err := req.Send() 3989// if err == nil { // resp is now filled 3990// fmt.Println(resp) 3991// } 3992// 3993// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/RemoveManagedScalingPolicy 3994func (c *EMR) RemoveManagedScalingPolicyRequest(input *RemoveManagedScalingPolicyInput) (req *request.Request, output *RemoveManagedScalingPolicyOutput) { 3995 op := &request.Operation{ 3996 Name: opRemoveManagedScalingPolicy, 3997 HTTPMethod: "POST", 3998 HTTPPath: "/", 3999 } 4000 4001 if input == nil { 4002 input = &RemoveManagedScalingPolicyInput{} 4003 } 4004 4005 output = &RemoveManagedScalingPolicyOutput{} 4006 req = c.newRequest(op, input, output) 4007 req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 4008 return 4009} 4010 4011// RemoveManagedScalingPolicy API operation for Amazon EMR. 4012// 4013// Removes a managed scaling policy from a specified EMR cluster. 4014// 4015// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 4016// with awserr.Error's Code and Message methods to get detailed information about 4017// the error. 4018// 4019// See the AWS API reference guide for Amazon EMR's 4020// API operation RemoveManagedScalingPolicy for usage and error information. 4021// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/RemoveManagedScalingPolicy 4022func (c *EMR) RemoveManagedScalingPolicy(input *RemoveManagedScalingPolicyInput) (*RemoveManagedScalingPolicyOutput, error) { 4023 req, out := c.RemoveManagedScalingPolicyRequest(input) 4024 return out, req.Send() 4025} 4026 4027// RemoveManagedScalingPolicyWithContext is the same as RemoveManagedScalingPolicy with the addition of 4028// the ability to pass a context and additional request options. 4029// 4030// See RemoveManagedScalingPolicy for details on how to use this API operation. 4031// 4032// The context must be non-nil and will be used for request cancellation. If 4033// the context is nil a panic will occur. In the future the SDK may create 4034// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 4035// for more information on using Contexts. 4036func (c *EMR) RemoveManagedScalingPolicyWithContext(ctx aws.Context, input *RemoveManagedScalingPolicyInput, opts ...request.Option) (*RemoveManagedScalingPolicyOutput, error) { 4037 req, out := c.RemoveManagedScalingPolicyRequest(input) 4038 req.SetContext(ctx) 4039 req.ApplyOptions(opts...) 4040 return out, req.Send() 4041} 4042 4043const opRemoveTags = "RemoveTags" 4044 4045// RemoveTagsRequest generates a "aws/request.Request" representing the 4046// client's request for the RemoveTags operation. The "output" return 4047// value will be populated with the request's response once the request completes 4048// successfully. 4049// 4050// Use "Send" method on the returned Request to send the API call to the service. 4051// the "output" return value is not valid until after Send returns without error. 4052// 4053// See RemoveTags for more information on using the RemoveTags 4054// API call, and error handling. 4055// 4056// This method is useful when you want to inject custom logic or configuration 4057// into the SDK's request lifecycle. Such as custom headers, or retry logic. 4058// 4059// 4060// // Example sending a request using the RemoveTagsRequest method. 4061// req, resp := client.RemoveTagsRequest(params) 4062// 4063// err := req.Send() 4064// if err == nil { // resp is now filled 4065// fmt.Println(resp) 4066// } 4067// 4068// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/RemoveTags 4069func (c *EMR) RemoveTagsRequest(input *RemoveTagsInput) (req *request.Request, output *RemoveTagsOutput) { 4070 op := &request.Operation{ 4071 Name: opRemoveTags, 4072 HTTPMethod: "POST", 4073 HTTPPath: "/", 4074 } 4075 4076 if input == nil { 4077 input = &RemoveTagsInput{} 4078 } 4079 4080 output = &RemoveTagsOutput{} 4081 req = c.newRequest(op, input, output) 4082 req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 4083 return 4084} 4085 4086// RemoveTags API operation for Amazon EMR. 4087// 4088// Removes tags from an Amazon EMR resource. Tags make it easier to associate 4089// clusters in various ways, such as grouping clusters to track your Amazon 4090// EMR resource allocation costs. For more information, see Tag Clusters (https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-plan-tags.html). 4091// 4092// The following example removes the stack tag with value Prod from a cluster: 4093// 4094// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 4095// with awserr.Error's Code and Message methods to get detailed information about 4096// the error. 4097// 4098// See the AWS API reference guide for Amazon EMR's 4099// API operation RemoveTags for usage and error information. 4100// 4101// Returned Error Types: 4102// * InternalServerException 4103// This exception occurs when there is an internal failure in the Amazon EMR 4104// service. 4105// 4106// * InvalidRequestException 4107// This exception occurs when there is something wrong with user input. 4108// 4109// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/RemoveTags 4110func (c *EMR) RemoveTags(input *RemoveTagsInput) (*RemoveTagsOutput, error) { 4111 req, out := c.RemoveTagsRequest(input) 4112 return out, req.Send() 4113} 4114 4115// RemoveTagsWithContext is the same as RemoveTags with the addition of 4116// the ability to pass a context and additional request options. 4117// 4118// See RemoveTags for details on how to use this API operation. 4119// 4120// The context must be non-nil and will be used for request cancellation. If 4121// the context is nil a panic will occur. In the future the SDK may create 4122// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 4123// for more information on using Contexts. 4124func (c *EMR) RemoveTagsWithContext(ctx aws.Context, input *RemoveTagsInput, opts ...request.Option) (*RemoveTagsOutput, error) { 4125 req, out := c.RemoveTagsRequest(input) 4126 req.SetContext(ctx) 4127 req.ApplyOptions(opts...) 4128 return out, req.Send() 4129} 4130 4131const opRunJobFlow = "RunJobFlow" 4132 4133// RunJobFlowRequest generates a "aws/request.Request" representing the 4134// client's request for the RunJobFlow operation. The "output" return 4135// value will be populated with the request's response once the request completes 4136// successfully. 4137// 4138// Use "Send" method on the returned Request to send the API call to the service. 4139// the "output" return value is not valid until after Send returns without error. 4140// 4141// See RunJobFlow for more information on using the RunJobFlow 4142// API call, and error handling. 4143// 4144// This method is useful when you want to inject custom logic or configuration 4145// into the SDK's request lifecycle. Such as custom headers, or retry logic. 4146// 4147// 4148// // Example sending a request using the RunJobFlowRequest method. 4149// req, resp := client.RunJobFlowRequest(params) 4150// 4151// err := req.Send() 4152// if err == nil { // resp is now filled 4153// fmt.Println(resp) 4154// } 4155// 4156// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/RunJobFlow 4157func (c *EMR) RunJobFlowRequest(input *RunJobFlowInput) (req *request.Request, output *RunJobFlowOutput) { 4158 op := &request.Operation{ 4159 Name: opRunJobFlow, 4160 HTTPMethod: "POST", 4161 HTTPPath: "/", 4162 } 4163 4164 if input == nil { 4165 input = &RunJobFlowInput{} 4166 } 4167 4168 output = &RunJobFlowOutput{} 4169 req = c.newRequest(op, input, output) 4170 return 4171} 4172 4173// RunJobFlow API operation for Amazon EMR. 4174// 4175// RunJobFlow creates and starts running a new cluster (job flow). The cluster 4176// runs the steps specified. After the steps complete, the cluster stops and 4177// the HDFS partition is lost. To prevent loss of data, configure the last step 4178// of the job flow to store results in Amazon S3. If the JobFlowInstancesConfig 4179// KeepJobFlowAliveWhenNoSteps parameter is set to TRUE, the cluster transitions 4180// to the WAITING state rather than shutting down after the steps have completed. 4181// 4182// For additional protection, you can set the JobFlowInstancesConfig TerminationProtected 4183// parameter to TRUE to lock the cluster and prevent it from being terminated 4184// by API call, user intervention, or in the event of a job flow error. 4185// 4186// A maximum of 256 steps are allowed in each job flow. 4187// 4188// If your cluster is long-running (such as a Hive data warehouse) or complex, 4189// you may require more than 256 steps to process your data. You can bypass 4190// the 256-step limitation in various ways, including using the SSH shell to 4191// connect to the master node and submitting queries directly to the software 4192// running on the master node, such as Hive and Hadoop. For more information 4193// on how to do this, see Add More than 256 Steps to a Cluster (https://docs.aws.amazon.com/emr/latest/ManagementGuide/AddMoreThan256Steps.html) 4194// in the Amazon EMR Management Guide. 4195// 4196// For long running clusters, we recommend that you periodically store your 4197// results. 4198// 4199// The instance fleets configuration is available only in Amazon EMR versions 4200// 4.8.0 and later, excluding 5.0.x versions. The RunJobFlow request can contain 4201// InstanceFleets parameters or InstanceGroups parameters, but not both. 4202// 4203// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 4204// with awserr.Error's Code and Message methods to get detailed information about 4205// the error. 4206// 4207// See the AWS API reference guide for Amazon EMR's 4208// API operation RunJobFlow for usage and error information. 4209// 4210// Returned Error Types: 4211// * InternalServerError 4212// Indicates that an error occurred while processing the request and that the 4213// request was not completed. 4214// 4215// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/RunJobFlow 4216func (c *EMR) RunJobFlow(input *RunJobFlowInput) (*RunJobFlowOutput, error) { 4217 req, out := c.RunJobFlowRequest(input) 4218 return out, req.Send() 4219} 4220 4221// RunJobFlowWithContext is the same as RunJobFlow with the addition of 4222// the ability to pass a context and additional request options. 4223// 4224// See RunJobFlow for details on how to use this API operation. 4225// 4226// The context must be non-nil and will be used for request cancellation. If 4227// the context is nil a panic will occur. In the future the SDK may create 4228// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 4229// for more information on using Contexts. 4230func (c *EMR) RunJobFlowWithContext(ctx aws.Context, input *RunJobFlowInput, opts ...request.Option) (*RunJobFlowOutput, error) { 4231 req, out := c.RunJobFlowRequest(input) 4232 req.SetContext(ctx) 4233 req.ApplyOptions(opts...) 4234 return out, req.Send() 4235} 4236 4237const opSetTerminationProtection = "SetTerminationProtection" 4238 4239// SetTerminationProtectionRequest generates a "aws/request.Request" representing the 4240// client's request for the SetTerminationProtection operation. The "output" return 4241// value will be populated with the request's response once the request completes 4242// successfully. 4243// 4244// Use "Send" method on the returned Request to send the API call to the service. 4245// the "output" return value is not valid until after Send returns without error. 4246// 4247// See SetTerminationProtection for more information on using the SetTerminationProtection 4248// API call, and error handling. 4249// 4250// This method is useful when you want to inject custom logic or configuration 4251// into the SDK's request lifecycle. Such as custom headers, or retry logic. 4252// 4253// 4254// // Example sending a request using the SetTerminationProtectionRequest method. 4255// req, resp := client.SetTerminationProtectionRequest(params) 4256// 4257// err := req.Send() 4258// if err == nil { // resp is now filled 4259// fmt.Println(resp) 4260// } 4261// 4262// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/SetTerminationProtection 4263func (c *EMR) SetTerminationProtectionRequest(input *SetTerminationProtectionInput) (req *request.Request, output *SetTerminationProtectionOutput) { 4264 op := &request.Operation{ 4265 Name: opSetTerminationProtection, 4266 HTTPMethod: "POST", 4267 HTTPPath: "/", 4268 } 4269 4270 if input == nil { 4271 input = &SetTerminationProtectionInput{} 4272 } 4273 4274 output = &SetTerminationProtectionOutput{} 4275 req = c.newRequest(op, input, output) 4276 req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 4277 return 4278} 4279 4280// SetTerminationProtection API operation for Amazon EMR. 4281// 4282// SetTerminationProtection locks a cluster (job flow) so the EC2 instances 4283// in the cluster cannot be terminated by user intervention, an API call, or 4284// in the event of a job-flow error. The cluster still terminates upon successful 4285// completion of the job flow. Calling SetTerminationProtection on a cluster 4286// is similar to calling the Amazon EC2 DisableAPITermination API on all EC2 4287// instances in a cluster. 4288// 4289// SetTerminationProtection is used to prevent accidental termination of a cluster 4290// and to ensure that in the event of an error, the instances persist so that 4291// you can recover any data stored in their ephemeral instance storage. 4292// 4293// To terminate a cluster that has been locked by setting SetTerminationProtection 4294// to true, you must first unlock the job flow by a subsequent call to SetTerminationProtection 4295// in which you set the value to false. 4296// 4297// For more information, seeManaging Cluster Termination (https://docs.aws.amazon.com/emr/latest/ManagementGuide/UsingEMR_TerminationProtection.html) 4298// in the Amazon EMR Management Guide. 4299// 4300// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 4301// with awserr.Error's Code and Message methods to get detailed information about 4302// the error. 4303// 4304// See the AWS API reference guide for Amazon EMR's 4305// API operation SetTerminationProtection for usage and error information. 4306// 4307// Returned Error Types: 4308// * InternalServerError 4309// Indicates that an error occurred while processing the request and that the 4310// request was not completed. 4311// 4312// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/SetTerminationProtection 4313func (c *EMR) SetTerminationProtection(input *SetTerminationProtectionInput) (*SetTerminationProtectionOutput, error) { 4314 req, out := c.SetTerminationProtectionRequest(input) 4315 return out, req.Send() 4316} 4317 4318// SetTerminationProtectionWithContext is the same as SetTerminationProtection with the addition of 4319// the ability to pass a context and additional request options. 4320// 4321// See SetTerminationProtection for details on how to use this API operation. 4322// 4323// The context must be non-nil and will be used for request cancellation. If 4324// the context is nil a panic will occur. In the future the SDK may create 4325// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 4326// for more information on using Contexts. 4327func (c *EMR) SetTerminationProtectionWithContext(ctx aws.Context, input *SetTerminationProtectionInput, opts ...request.Option) (*SetTerminationProtectionOutput, error) { 4328 req, out := c.SetTerminationProtectionRequest(input) 4329 req.SetContext(ctx) 4330 req.ApplyOptions(opts...) 4331 return out, req.Send() 4332} 4333 4334const opSetVisibleToAllUsers = "SetVisibleToAllUsers" 4335 4336// SetVisibleToAllUsersRequest generates a "aws/request.Request" representing the 4337// client's request for the SetVisibleToAllUsers operation. The "output" return 4338// value will be populated with the request's response once the request completes 4339// successfully. 4340// 4341// Use "Send" method on the returned Request to send the API call to the service. 4342// the "output" return value is not valid until after Send returns without error. 4343// 4344// See SetVisibleToAllUsers for more information on using the SetVisibleToAllUsers 4345// API call, and error handling. 4346// 4347// This method is useful when you want to inject custom logic or configuration 4348// into the SDK's request lifecycle. Such as custom headers, or retry logic. 4349// 4350// 4351// // Example sending a request using the SetVisibleToAllUsersRequest method. 4352// req, resp := client.SetVisibleToAllUsersRequest(params) 4353// 4354// err := req.Send() 4355// if err == nil { // resp is now filled 4356// fmt.Println(resp) 4357// } 4358// 4359// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/SetVisibleToAllUsers 4360func (c *EMR) SetVisibleToAllUsersRequest(input *SetVisibleToAllUsersInput) (req *request.Request, output *SetVisibleToAllUsersOutput) { 4361 op := &request.Operation{ 4362 Name: opSetVisibleToAllUsers, 4363 HTTPMethod: "POST", 4364 HTTPPath: "/", 4365 } 4366 4367 if input == nil { 4368 input = &SetVisibleToAllUsersInput{} 4369 } 4370 4371 output = &SetVisibleToAllUsersOutput{} 4372 req = c.newRequest(op, input, output) 4373 req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 4374 return 4375} 4376 4377// SetVisibleToAllUsers API operation for Amazon EMR. 4378// 4379// Sets the Cluster$VisibleToAllUsers value for an EMR cluster. When true, IAM 4380// principals in the account can perform EMR cluster actions that their IAM 4381// policies allow. When false, only the IAM principal that created the cluster 4382// and the account root user can perform EMR actions on the cluster, regardless 4383// of IAM permissions policies attached to other IAM principals. 4384// 4385// This action works on running clusters. When you create a cluster, use the 4386// RunJobFlowInput$VisibleToAllUsers parameter. 4387// 4388// For more information, see Understanding the EMR Cluster VisibleToAllUsers 4389// Setting (https://docs.aws.amazon.com/emr/latest/ManagementGuide/security_iam_emr-with-iam.html#security_set_visible_to_all_users) 4390// in the Amazon EMRManagement Guide. 4391// 4392// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 4393// with awserr.Error's Code and Message methods to get detailed information about 4394// the error. 4395// 4396// See the AWS API reference guide for Amazon EMR's 4397// API operation SetVisibleToAllUsers for usage and error information. 4398// 4399// Returned Error Types: 4400// * InternalServerError 4401// Indicates that an error occurred while processing the request and that the 4402// request was not completed. 4403// 4404// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/SetVisibleToAllUsers 4405func (c *EMR) SetVisibleToAllUsers(input *SetVisibleToAllUsersInput) (*SetVisibleToAllUsersOutput, error) { 4406 req, out := c.SetVisibleToAllUsersRequest(input) 4407 return out, req.Send() 4408} 4409 4410// SetVisibleToAllUsersWithContext is the same as SetVisibleToAllUsers with the addition of 4411// the ability to pass a context and additional request options. 4412// 4413// See SetVisibleToAllUsers for details on how to use this API operation. 4414// 4415// The context must be non-nil and will be used for request cancellation. If 4416// the context is nil a panic will occur. In the future the SDK may create 4417// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 4418// for more information on using Contexts. 4419func (c *EMR) SetVisibleToAllUsersWithContext(ctx aws.Context, input *SetVisibleToAllUsersInput, opts ...request.Option) (*SetVisibleToAllUsersOutput, error) { 4420 req, out := c.SetVisibleToAllUsersRequest(input) 4421 req.SetContext(ctx) 4422 req.ApplyOptions(opts...) 4423 return out, req.Send() 4424} 4425 4426const opStartNotebookExecution = "StartNotebookExecution" 4427 4428// StartNotebookExecutionRequest generates a "aws/request.Request" representing the 4429// client's request for the StartNotebookExecution operation. The "output" return 4430// value will be populated with the request's response once the request completes 4431// successfully. 4432// 4433// Use "Send" method on the returned Request to send the API call to the service. 4434// the "output" return value is not valid until after Send returns without error. 4435// 4436// See StartNotebookExecution for more information on using the StartNotebookExecution 4437// API call, and error handling. 4438// 4439// This method is useful when you want to inject custom logic or configuration 4440// into the SDK's request lifecycle. Such as custom headers, or retry logic. 4441// 4442// 4443// // Example sending a request using the StartNotebookExecutionRequest method. 4444// req, resp := client.StartNotebookExecutionRequest(params) 4445// 4446// err := req.Send() 4447// if err == nil { // resp is now filled 4448// fmt.Println(resp) 4449// } 4450// 4451// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/StartNotebookExecution 4452func (c *EMR) StartNotebookExecutionRequest(input *StartNotebookExecutionInput) (req *request.Request, output *StartNotebookExecutionOutput) { 4453 op := &request.Operation{ 4454 Name: opStartNotebookExecution, 4455 HTTPMethod: "POST", 4456 HTTPPath: "/", 4457 } 4458 4459 if input == nil { 4460 input = &StartNotebookExecutionInput{} 4461 } 4462 4463 output = &StartNotebookExecutionOutput{} 4464 req = c.newRequest(op, input, output) 4465 return 4466} 4467 4468// StartNotebookExecution API operation for Amazon EMR. 4469// 4470// Starts a notebook execution. 4471// 4472// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 4473// with awserr.Error's Code and Message methods to get detailed information about 4474// the error. 4475// 4476// See the AWS API reference guide for Amazon EMR's 4477// API operation StartNotebookExecution for usage and error information. 4478// 4479// Returned Error Types: 4480// * InternalServerException 4481// This exception occurs when there is an internal failure in the Amazon EMR 4482// service. 4483// 4484// * InvalidRequestException 4485// This exception occurs when there is something wrong with user input. 4486// 4487// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/StartNotebookExecution 4488func (c *EMR) StartNotebookExecution(input *StartNotebookExecutionInput) (*StartNotebookExecutionOutput, error) { 4489 req, out := c.StartNotebookExecutionRequest(input) 4490 return out, req.Send() 4491} 4492 4493// StartNotebookExecutionWithContext is the same as StartNotebookExecution with the addition of 4494// the ability to pass a context and additional request options. 4495// 4496// See StartNotebookExecution for details on how to use this API operation. 4497// 4498// The context must be non-nil and will be used for request cancellation. If 4499// the context is nil a panic will occur. In the future the SDK may create 4500// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 4501// for more information on using Contexts. 4502func (c *EMR) StartNotebookExecutionWithContext(ctx aws.Context, input *StartNotebookExecutionInput, opts ...request.Option) (*StartNotebookExecutionOutput, error) { 4503 req, out := c.StartNotebookExecutionRequest(input) 4504 req.SetContext(ctx) 4505 req.ApplyOptions(opts...) 4506 return out, req.Send() 4507} 4508 4509const opStopNotebookExecution = "StopNotebookExecution" 4510 4511// StopNotebookExecutionRequest generates a "aws/request.Request" representing the 4512// client's request for the StopNotebookExecution operation. The "output" return 4513// value will be populated with the request's response once the request completes 4514// successfully. 4515// 4516// Use "Send" method on the returned Request to send the API call to the service. 4517// the "output" return value is not valid until after Send returns without error. 4518// 4519// See StopNotebookExecution for more information on using the StopNotebookExecution 4520// API call, and error handling. 4521// 4522// This method is useful when you want to inject custom logic or configuration 4523// into the SDK's request lifecycle. Such as custom headers, or retry logic. 4524// 4525// 4526// // Example sending a request using the StopNotebookExecutionRequest method. 4527// req, resp := client.StopNotebookExecutionRequest(params) 4528// 4529// err := req.Send() 4530// if err == nil { // resp is now filled 4531// fmt.Println(resp) 4532// } 4533// 4534// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/StopNotebookExecution 4535func (c *EMR) StopNotebookExecutionRequest(input *StopNotebookExecutionInput) (req *request.Request, output *StopNotebookExecutionOutput) { 4536 op := &request.Operation{ 4537 Name: opStopNotebookExecution, 4538 HTTPMethod: "POST", 4539 HTTPPath: "/", 4540 } 4541 4542 if input == nil { 4543 input = &StopNotebookExecutionInput{} 4544 } 4545 4546 output = &StopNotebookExecutionOutput{} 4547 req = c.newRequest(op, input, output) 4548 req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 4549 return 4550} 4551 4552// StopNotebookExecution API operation for Amazon EMR. 4553// 4554// Stops a notebook execution. 4555// 4556// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 4557// with awserr.Error's Code and Message methods to get detailed information about 4558// the error. 4559// 4560// See the AWS API reference guide for Amazon EMR's 4561// API operation StopNotebookExecution for usage and error information. 4562// 4563// Returned Error Types: 4564// * InternalServerError 4565// Indicates that an error occurred while processing the request and that the 4566// request was not completed. 4567// 4568// * InvalidRequestException 4569// This exception occurs when there is something wrong with user input. 4570// 4571// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/StopNotebookExecution 4572func (c *EMR) StopNotebookExecution(input *StopNotebookExecutionInput) (*StopNotebookExecutionOutput, error) { 4573 req, out := c.StopNotebookExecutionRequest(input) 4574 return out, req.Send() 4575} 4576 4577// StopNotebookExecutionWithContext is the same as StopNotebookExecution with the addition of 4578// the ability to pass a context and additional request options. 4579// 4580// See StopNotebookExecution for details on how to use this API operation. 4581// 4582// The context must be non-nil and will be used for request cancellation. If 4583// the context is nil a panic will occur. In the future the SDK may create 4584// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 4585// for more information on using Contexts. 4586func (c *EMR) StopNotebookExecutionWithContext(ctx aws.Context, input *StopNotebookExecutionInput, opts ...request.Option) (*StopNotebookExecutionOutput, error) { 4587 req, out := c.StopNotebookExecutionRequest(input) 4588 req.SetContext(ctx) 4589 req.ApplyOptions(opts...) 4590 return out, req.Send() 4591} 4592 4593const opTerminateJobFlows = "TerminateJobFlows" 4594 4595// TerminateJobFlowsRequest generates a "aws/request.Request" representing the 4596// client's request for the TerminateJobFlows operation. The "output" return 4597// value will be populated with the request's response once the request completes 4598// successfully. 4599// 4600// Use "Send" method on the returned Request to send the API call to the service. 4601// the "output" return value is not valid until after Send returns without error. 4602// 4603// See TerminateJobFlows for more information on using the TerminateJobFlows 4604// API call, and error handling. 4605// 4606// This method is useful when you want to inject custom logic or configuration 4607// into the SDK's request lifecycle. Such as custom headers, or retry logic. 4608// 4609// 4610// // Example sending a request using the TerminateJobFlowsRequest method. 4611// req, resp := client.TerminateJobFlowsRequest(params) 4612// 4613// err := req.Send() 4614// if err == nil { // resp is now filled 4615// fmt.Println(resp) 4616// } 4617// 4618// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/TerminateJobFlows 4619func (c *EMR) TerminateJobFlowsRequest(input *TerminateJobFlowsInput) (req *request.Request, output *TerminateJobFlowsOutput) { 4620 op := &request.Operation{ 4621 Name: opTerminateJobFlows, 4622 HTTPMethod: "POST", 4623 HTTPPath: "/", 4624 } 4625 4626 if input == nil { 4627 input = &TerminateJobFlowsInput{} 4628 } 4629 4630 output = &TerminateJobFlowsOutput{} 4631 req = c.newRequest(op, input, output) 4632 req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 4633 return 4634} 4635 4636// TerminateJobFlows API operation for Amazon EMR. 4637// 4638// TerminateJobFlows shuts a list of clusters (job flows) down. When a job flow 4639// is shut down, any step not yet completed is canceled and the EC2 instances 4640// on which the cluster is running are stopped. Any log files not already saved 4641// are uploaded to Amazon S3 if a LogUri was specified when the cluster was 4642// created. 4643// 4644// The maximum number of clusters allowed is 10. The call to TerminateJobFlows 4645// is asynchronous. Depending on the configuration of the cluster, it may take 4646// up to 1-5 minutes for the cluster to completely terminate and release allocated 4647// resources, such as Amazon EC2 instances. 4648// 4649// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 4650// with awserr.Error's Code and Message methods to get detailed information about 4651// the error. 4652// 4653// See the AWS API reference guide for Amazon EMR's 4654// API operation TerminateJobFlows for usage and error information. 4655// 4656// Returned Error Types: 4657// * InternalServerError 4658// Indicates that an error occurred while processing the request and that the 4659// request was not completed. 4660// 4661// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/TerminateJobFlows 4662func (c *EMR) TerminateJobFlows(input *TerminateJobFlowsInput) (*TerminateJobFlowsOutput, error) { 4663 req, out := c.TerminateJobFlowsRequest(input) 4664 return out, req.Send() 4665} 4666 4667// TerminateJobFlowsWithContext is the same as TerminateJobFlows with the addition of 4668// the ability to pass a context and additional request options. 4669// 4670// See TerminateJobFlows for details on how to use this API operation. 4671// 4672// The context must be non-nil and will be used for request cancellation. If 4673// the context is nil a panic will occur. In the future the SDK may create 4674// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 4675// for more information on using Contexts. 4676func (c *EMR) TerminateJobFlowsWithContext(ctx aws.Context, input *TerminateJobFlowsInput, opts ...request.Option) (*TerminateJobFlowsOutput, error) { 4677 req, out := c.TerminateJobFlowsRequest(input) 4678 req.SetContext(ctx) 4679 req.ApplyOptions(opts...) 4680 return out, req.Send() 4681} 4682 4683const opUpdateStudio = "UpdateStudio" 4684 4685// UpdateStudioRequest generates a "aws/request.Request" representing the 4686// client's request for the UpdateStudio operation. The "output" return 4687// value will be populated with the request's response once the request completes 4688// successfully. 4689// 4690// Use "Send" method on the returned Request to send the API call to the service. 4691// the "output" return value is not valid until after Send returns without error. 4692// 4693// See UpdateStudio for more information on using the UpdateStudio 4694// API call, and error handling. 4695// 4696// This method is useful when you want to inject custom logic or configuration 4697// into the SDK's request lifecycle. Such as custom headers, or retry logic. 4698// 4699// 4700// // Example sending a request using the UpdateStudioRequest method. 4701// req, resp := client.UpdateStudioRequest(params) 4702// 4703// err := req.Send() 4704// if err == nil { // resp is now filled 4705// fmt.Println(resp) 4706// } 4707// 4708// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/UpdateStudio 4709func (c *EMR) UpdateStudioRequest(input *UpdateStudioInput) (req *request.Request, output *UpdateStudioOutput) { 4710 op := &request.Operation{ 4711 Name: opUpdateStudio, 4712 HTTPMethod: "POST", 4713 HTTPPath: "/", 4714 } 4715 4716 if input == nil { 4717 input = &UpdateStudioInput{} 4718 } 4719 4720 output = &UpdateStudioOutput{} 4721 req = c.newRequest(op, input, output) 4722 req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 4723 return 4724} 4725 4726// UpdateStudio API operation for Amazon EMR. 4727// 4728// Updates an Amazon EMR Studio configuration, including attributes such as 4729// name, description, and subnets. 4730// 4731// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 4732// with awserr.Error's Code and Message methods to get detailed information about 4733// the error. 4734// 4735// See the AWS API reference guide for Amazon EMR's 4736// API operation UpdateStudio for usage and error information. 4737// 4738// Returned Error Types: 4739// * InternalServerException 4740// This exception occurs when there is an internal failure in the Amazon EMR 4741// service. 4742// 4743// * InvalidRequestException 4744// This exception occurs when there is something wrong with user input. 4745// 4746// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/UpdateStudio 4747func (c *EMR) UpdateStudio(input *UpdateStudioInput) (*UpdateStudioOutput, error) { 4748 req, out := c.UpdateStudioRequest(input) 4749 return out, req.Send() 4750} 4751 4752// UpdateStudioWithContext is the same as UpdateStudio with the addition of 4753// the ability to pass a context and additional request options. 4754// 4755// See UpdateStudio for details on how to use this API operation. 4756// 4757// The context must be non-nil and will be used for request cancellation. If 4758// the context is nil a panic will occur. In the future the SDK may create 4759// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 4760// for more information on using Contexts. 4761func (c *EMR) UpdateStudioWithContext(ctx aws.Context, input *UpdateStudioInput, opts ...request.Option) (*UpdateStudioOutput, error) { 4762 req, out := c.UpdateStudioRequest(input) 4763 req.SetContext(ctx) 4764 req.ApplyOptions(opts...) 4765 return out, req.Send() 4766} 4767 4768const opUpdateStudioSessionMapping = "UpdateStudioSessionMapping" 4769 4770// UpdateStudioSessionMappingRequest generates a "aws/request.Request" representing the 4771// client's request for the UpdateStudioSessionMapping operation. The "output" return 4772// value will be populated with the request's response once the request completes 4773// successfully. 4774// 4775// Use "Send" method on the returned Request to send the API call to the service. 4776// the "output" return value is not valid until after Send returns without error. 4777// 4778// See UpdateStudioSessionMapping for more information on using the UpdateStudioSessionMapping 4779// API call, and error handling. 4780// 4781// This method is useful when you want to inject custom logic or configuration 4782// into the SDK's request lifecycle. Such as custom headers, or retry logic. 4783// 4784// 4785// // Example sending a request using the UpdateStudioSessionMappingRequest method. 4786// req, resp := client.UpdateStudioSessionMappingRequest(params) 4787// 4788// err := req.Send() 4789// if err == nil { // resp is now filled 4790// fmt.Println(resp) 4791// } 4792// 4793// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/UpdateStudioSessionMapping 4794func (c *EMR) UpdateStudioSessionMappingRequest(input *UpdateStudioSessionMappingInput) (req *request.Request, output *UpdateStudioSessionMappingOutput) { 4795 op := &request.Operation{ 4796 Name: opUpdateStudioSessionMapping, 4797 HTTPMethod: "POST", 4798 HTTPPath: "/", 4799 } 4800 4801 if input == nil { 4802 input = &UpdateStudioSessionMappingInput{} 4803 } 4804 4805 output = &UpdateStudioSessionMappingOutput{} 4806 req = c.newRequest(op, input, output) 4807 req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 4808 return 4809} 4810 4811// UpdateStudioSessionMapping API operation for Amazon EMR. 4812// 4813// Updates the session policy attached to the user or group for the specified 4814// Amazon EMR Studio. 4815// 4816// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 4817// with awserr.Error's Code and Message methods to get detailed information about 4818// the error. 4819// 4820// See the AWS API reference guide for Amazon EMR's 4821// API operation UpdateStudioSessionMapping for usage and error information. 4822// 4823// Returned Error Types: 4824// * InternalServerError 4825// Indicates that an error occurred while processing the request and that the 4826// request was not completed. 4827// 4828// * InvalidRequestException 4829// This exception occurs when there is something wrong with user input. 4830// 4831// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/UpdateStudioSessionMapping 4832func (c *EMR) UpdateStudioSessionMapping(input *UpdateStudioSessionMappingInput) (*UpdateStudioSessionMappingOutput, error) { 4833 req, out := c.UpdateStudioSessionMappingRequest(input) 4834 return out, req.Send() 4835} 4836 4837// UpdateStudioSessionMappingWithContext is the same as UpdateStudioSessionMapping with the addition of 4838// the ability to pass a context and additional request options. 4839// 4840// See UpdateStudioSessionMapping for details on how to use this API operation. 4841// 4842// The context must be non-nil and will be used for request cancellation. If 4843// the context is nil a panic will occur. In the future the SDK may create 4844// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 4845// for more information on using Contexts. 4846func (c *EMR) UpdateStudioSessionMappingWithContext(ctx aws.Context, input *UpdateStudioSessionMappingInput, opts ...request.Option) (*UpdateStudioSessionMappingOutput, error) { 4847 req, out := c.UpdateStudioSessionMappingRequest(input) 4848 req.SetContext(ctx) 4849 req.ApplyOptions(opts...) 4850 return out, req.Send() 4851} 4852 4853type AddInstanceFleetInput struct { 4854 _ struct{} `type:"structure"` 4855 4856 // The unique identifier of the cluster. 4857 // 4858 // ClusterId is a required field 4859 ClusterId *string `type:"string" required:"true"` 4860 4861 // Specifies the configuration of the instance fleet. 4862 // 4863 // InstanceFleet is a required field 4864 InstanceFleet *InstanceFleetConfig `type:"structure" required:"true"` 4865} 4866 4867// String returns the string representation 4868func (s AddInstanceFleetInput) String() string { 4869 return awsutil.Prettify(s) 4870} 4871 4872// GoString returns the string representation 4873func (s AddInstanceFleetInput) GoString() string { 4874 return s.String() 4875} 4876 4877// Validate inspects the fields of the type to determine if they are valid. 4878func (s *AddInstanceFleetInput) Validate() error { 4879 invalidParams := request.ErrInvalidParams{Context: "AddInstanceFleetInput"} 4880 if s.ClusterId == nil { 4881 invalidParams.Add(request.NewErrParamRequired("ClusterId")) 4882 } 4883 if s.InstanceFleet == nil { 4884 invalidParams.Add(request.NewErrParamRequired("InstanceFleet")) 4885 } 4886 if s.InstanceFleet != nil { 4887 if err := s.InstanceFleet.Validate(); err != nil { 4888 invalidParams.AddNested("InstanceFleet", err.(request.ErrInvalidParams)) 4889 } 4890 } 4891 4892 if invalidParams.Len() > 0 { 4893 return invalidParams 4894 } 4895 return nil 4896} 4897 4898// SetClusterId sets the ClusterId field's value. 4899func (s *AddInstanceFleetInput) SetClusterId(v string) *AddInstanceFleetInput { 4900 s.ClusterId = &v 4901 return s 4902} 4903 4904// SetInstanceFleet sets the InstanceFleet field's value. 4905func (s *AddInstanceFleetInput) SetInstanceFleet(v *InstanceFleetConfig) *AddInstanceFleetInput { 4906 s.InstanceFleet = v 4907 return s 4908} 4909 4910type AddInstanceFleetOutput struct { 4911 _ struct{} `type:"structure"` 4912 4913 // The Amazon Resource Name of the cluster. 4914 ClusterArn *string `min:"20" type:"string"` 4915 4916 // The unique identifier of the cluster. 4917 ClusterId *string `type:"string"` 4918 4919 // The unique identifier of the instance fleet. 4920 InstanceFleetId *string `type:"string"` 4921} 4922 4923// String returns the string representation 4924func (s AddInstanceFleetOutput) String() string { 4925 return awsutil.Prettify(s) 4926} 4927 4928// GoString returns the string representation 4929func (s AddInstanceFleetOutput) GoString() string { 4930 return s.String() 4931} 4932 4933// SetClusterArn sets the ClusterArn field's value. 4934func (s *AddInstanceFleetOutput) SetClusterArn(v string) *AddInstanceFleetOutput { 4935 s.ClusterArn = &v 4936 return s 4937} 4938 4939// SetClusterId sets the ClusterId field's value. 4940func (s *AddInstanceFleetOutput) SetClusterId(v string) *AddInstanceFleetOutput { 4941 s.ClusterId = &v 4942 return s 4943} 4944 4945// SetInstanceFleetId sets the InstanceFleetId field's value. 4946func (s *AddInstanceFleetOutput) SetInstanceFleetId(v string) *AddInstanceFleetOutput { 4947 s.InstanceFleetId = &v 4948 return s 4949} 4950 4951// Input to an AddInstanceGroups call. 4952type AddInstanceGroupsInput struct { 4953 _ struct{} `type:"structure"` 4954 4955 // Instance groups to add. 4956 // 4957 // InstanceGroups is a required field 4958 InstanceGroups []*InstanceGroupConfig `type:"list" required:"true"` 4959 4960 // Job flow in which to add the instance groups. 4961 // 4962 // JobFlowId is a required field 4963 JobFlowId *string `type:"string" required:"true"` 4964} 4965 4966// String returns the string representation 4967func (s AddInstanceGroupsInput) String() string { 4968 return awsutil.Prettify(s) 4969} 4970 4971// GoString returns the string representation 4972func (s AddInstanceGroupsInput) GoString() string { 4973 return s.String() 4974} 4975 4976// Validate inspects the fields of the type to determine if they are valid. 4977func (s *AddInstanceGroupsInput) Validate() error { 4978 invalidParams := request.ErrInvalidParams{Context: "AddInstanceGroupsInput"} 4979 if s.InstanceGroups == nil { 4980 invalidParams.Add(request.NewErrParamRequired("InstanceGroups")) 4981 } 4982 if s.JobFlowId == nil { 4983 invalidParams.Add(request.NewErrParamRequired("JobFlowId")) 4984 } 4985 if s.InstanceGroups != nil { 4986 for i, v := range s.InstanceGroups { 4987 if v == nil { 4988 continue 4989 } 4990 if err := v.Validate(); err != nil { 4991 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "InstanceGroups", i), err.(request.ErrInvalidParams)) 4992 } 4993 } 4994 } 4995 4996 if invalidParams.Len() > 0 { 4997 return invalidParams 4998 } 4999 return nil 5000} 5001 5002// SetInstanceGroups sets the InstanceGroups field's value. 5003func (s *AddInstanceGroupsInput) SetInstanceGroups(v []*InstanceGroupConfig) *AddInstanceGroupsInput { 5004 s.InstanceGroups = v 5005 return s 5006} 5007 5008// SetJobFlowId sets the JobFlowId field's value. 5009func (s *AddInstanceGroupsInput) SetJobFlowId(v string) *AddInstanceGroupsInput { 5010 s.JobFlowId = &v 5011 return s 5012} 5013 5014// Output from an AddInstanceGroups call. 5015type AddInstanceGroupsOutput struct { 5016 _ struct{} `type:"structure"` 5017 5018 // The Amazon Resource Name of the cluster. 5019 ClusterArn *string `min:"20" type:"string"` 5020 5021 // Instance group IDs of the newly created instance groups. 5022 InstanceGroupIds []*string `type:"list"` 5023 5024 // The job flow ID in which the instance groups are added. 5025 JobFlowId *string `type:"string"` 5026} 5027 5028// String returns the string representation 5029func (s AddInstanceGroupsOutput) String() string { 5030 return awsutil.Prettify(s) 5031} 5032 5033// GoString returns the string representation 5034func (s AddInstanceGroupsOutput) GoString() string { 5035 return s.String() 5036} 5037 5038// SetClusterArn sets the ClusterArn field's value. 5039func (s *AddInstanceGroupsOutput) SetClusterArn(v string) *AddInstanceGroupsOutput { 5040 s.ClusterArn = &v 5041 return s 5042} 5043 5044// SetInstanceGroupIds sets the InstanceGroupIds field's value. 5045func (s *AddInstanceGroupsOutput) SetInstanceGroupIds(v []*string) *AddInstanceGroupsOutput { 5046 s.InstanceGroupIds = v 5047 return s 5048} 5049 5050// SetJobFlowId sets the JobFlowId field's value. 5051func (s *AddInstanceGroupsOutput) SetJobFlowId(v string) *AddInstanceGroupsOutput { 5052 s.JobFlowId = &v 5053 return s 5054} 5055 5056// The input argument to the AddJobFlowSteps operation. 5057type AddJobFlowStepsInput struct { 5058 _ struct{} `type:"structure"` 5059 5060 // A string that uniquely identifies the job flow. This identifier is returned 5061 // by RunJobFlow and can also be obtained from ListClusters. 5062 // 5063 // JobFlowId is a required field 5064 JobFlowId *string `type:"string" required:"true"` 5065 5066 // A list of StepConfig to be executed by the job flow. 5067 // 5068 // Steps is a required field 5069 Steps []*StepConfig `type:"list" required:"true"` 5070} 5071 5072// String returns the string representation 5073func (s AddJobFlowStepsInput) String() string { 5074 return awsutil.Prettify(s) 5075} 5076 5077// GoString returns the string representation 5078func (s AddJobFlowStepsInput) GoString() string { 5079 return s.String() 5080} 5081 5082// Validate inspects the fields of the type to determine if they are valid. 5083func (s *AddJobFlowStepsInput) Validate() error { 5084 invalidParams := request.ErrInvalidParams{Context: "AddJobFlowStepsInput"} 5085 if s.JobFlowId == nil { 5086 invalidParams.Add(request.NewErrParamRequired("JobFlowId")) 5087 } 5088 if s.Steps == nil { 5089 invalidParams.Add(request.NewErrParamRequired("Steps")) 5090 } 5091 if s.Steps != nil { 5092 for i, v := range s.Steps { 5093 if v == nil { 5094 continue 5095 } 5096 if err := v.Validate(); err != nil { 5097 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Steps", i), err.(request.ErrInvalidParams)) 5098 } 5099 } 5100 } 5101 5102 if invalidParams.Len() > 0 { 5103 return invalidParams 5104 } 5105 return nil 5106} 5107 5108// SetJobFlowId sets the JobFlowId field's value. 5109func (s *AddJobFlowStepsInput) SetJobFlowId(v string) *AddJobFlowStepsInput { 5110 s.JobFlowId = &v 5111 return s 5112} 5113 5114// SetSteps sets the Steps field's value. 5115func (s *AddJobFlowStepsInput) SetSteps(v []*StepConfig) *AddJobFlowStepsInput { 5116 s.Steps = v 5117 return s 5118} 5119 5120// The output for the AddJobFlowSteps operation. 5121type AddJobFlowStepsOutput struct { 5122 _ struct{} `type:"structure"` 5123 5124 // The identifiers of the list of steps added to the job flow. 5125 StepIds []*string `type:"list"` 5126} 5127 5128// String returns the string representation 5129func (s AddJobFlowStepsOutput) String() string { 5130 return awsutil.Prettify(s) 5131} 5132 5133// GoString returns the string representation 5134func (s AddJobFlowStepsOutput) GoString() string { 5135 return s.String() 5136} 5137 5138// SetStepIds sets the StepIds field's value. 5139func (s *AddJobFlowStepsOutput) SetStepIds(v []*string) *AddJobFlowStepsOutput { 5140 s.StepIds = v 5141 return s 5142} 5143 5144// This input identifies a cluster and a list of tags to attach. 5145type AddTagsInput struct { 5146 _ struct{} `type:"structure"` 5147 5148 // The Amazon EMR resource identifier to which tags will be added. This value 5149 // must be a cluster identifier. 5150 // 5151 // ResourceId is a required field 5152 ResourceId *string `type:"string" required:"true"` 5153 5154 // A list of tags to associate with a cluster and propagate to EC2 instances. 5155 // Tags are user-defined key-value pairs that consist of a required key string 5156 // with a maximum of 128 characters, and an optional value string with a maximum 5157 // of 256 characters. 5158 // 5159 // Tags is a required field 5160 Tags []*Tag `type:"list" required:"true"` 5161} 5162 5163// String returns the string representation 5164func (s AddTagsInput) String() string { 5165 return awsutil.Prettify(s) 5166} 5167 5168// GoString returns the string representation 5169func (s AddTagsInput) GoString() string { 5170 return s.String() 5171} 5172 5173// Validate inspects the fields of the type to determine if they are valid. 5174func (s *AddTagsInput) Validate() error { 5175 invalidParams := request.ErrInvalidParams{Context: "AddTagsInput"} 5176 if s.ResourceId == nil { 5177 invalidParams.Add(request.NewErrParamRequired("ResourceId")) 5178 } 5179 if s.Tags == nil { 5180 invalidParams.Add(request.NewErrParamRequired("Tags")) 5181 } 5182 5183 if invalidParams.Len() > 0 { 5184 return invalidParams 5185 } 5186 return nil 5187} 5188 5189// SetResourceId sets the ResourceId field's value. 5190func (s *AddTagsInput) SetResourceId(v string) *AddTagsInput { 5191 s.ResourceId = &v 5192 return s 5193} 5194 5195// SetTags sets the Tags field's value. 5196func (s *AddTagsInput) SetTags(v []*Tag) *AddTagsInput { 5197 s.Tags = v 5198 return s 5199} 5200 5201// This output indicates the result of adding tags to a resource. 5202type AddTagsOutput struct { 5203 _ struct{} `type:"structure"` 5204} 5205 5206// String returns the string representation 5207func (s AddTagsOutput) String() string { 5208 return awsutil.Prettify(s) 5209} 5210 5211// GoString returns the string representation 5212func (s AddTagsOutput) GoString() string { 5213 return s.String() 5214} 5215 5216// With Amazon EMR release version 4.0 and later, the only accepted parameter 5217// is the application name. To pass arguments to applications, you use configuration 5218// classifications specified using configuration JSON objects. For more information, 5219// see Configuring Applications (https://docs.aws.amazon.com/emr/latest/ReleaseGuide/emr-configure-apps.html). 5220// 5221// With earlier Amazon EMR releases, the application is any Amazon or third-party 5222// software that you can add to the cluster. This structure contains a list 5223// of strings that indicates the software to use with the cluster and accepts 5224// a user argument list. Amazon EMR accepts and forwards the argument list to 5225// the corresponding installation script as bootstrap action argument. 5226type Application struct { 5227 _ struct{} `type:"structure"` 5228 5229 // This option is for advanced users only. This is meta information about third-party 5230 // applications that third-party vendors use for testing purposes. 5231 AdditionalInfo map[string]*string `type:"map"` 5232 5233 // Arguments for Amazon EMR to pass to the application. 5234 Args []*string `type:"list"` 5235 5236 // The name of the application. 5237 Name *string `type:"string"` 5238 5239 // The version of the application. 5240 Version *string `type:"string"` 5241} 5242 5243// String returns the string representation 5244func (s Application) String() string { 5245 return awsutil.Prettify(s) 5246} 5247 5248// GoString returns the string representation 5249func (s Application) GoString() string { 5250 return s.String() 5251} 5252 5253// SetAdditionalInfo sets the AdditionalInfo field's value. 5254func (s *Application) SetAdditionalInfo(v map[string]*string) *Application { 5255 s.AdditionalInfo = v 5256 return s 5257} 5258 5259// SetArgs sets the Args field's value. 5260func (s *Application) SetArgs(v []*string) *Application { 5261 s.Args = v 5262 return s 5263} 5264 5265// SetName sets the Name field's value. 5266func (s *Application) SetName(v string) *Application { 5267 s.Name = &v 5268 return s 5269} 5270 5271// SetVersion sets the Version field's value. 5272func (s *Application) SetVersion(v string) *Application { 5273 s.Version = &v 5274 return s 5275} 5276 5277// An automatic scaling policy for a core instance group or task instance group 5278// in an Amazon EMR cluster. An automatic scaling policy defines how an instance 5279// group dynamically adds and terminates EC2 instances in response to the value 5280// of a CloudWatch metric. See PutAutoScalingPolicy. 5281type AutoScalingPolicy struct { 5282 _ struct{} `type:"structure"` 5283 5284 // The upper and lower EC2 instance limits for an automatic scaling policy. 5285 // Automatic scaling activity will not cause an instance group to grow above 5286 // or below these limits. 5287 // 5288 // Constraints is a required field 5289 Constraints *ScalingConstraints `type:"structure" required:"true"` 5290 5291 // The scale-in and scale-out rules that comprise the automatic scaling policy. 5292 // 5293 // Rules is a required field 5294 Rules []*ScalingRule `type:"list" required:"true"` 5295} 5296 5297// String returns the string representation 5298func (s AutoScalingPolicy) String() string { 5299 return awsutil.Prettify(s) 5300} 5301 5302// GoString returns the string representation 5303func (s AutoScalingPolicy) GoString() string { 5304 return s.String() 5305} 5306 5307// Validate inspects the fields of the type to determine if they are valid. 5308func (s *AutoScalingPolicy) Validate() error { 5309 invalidParams := request.ErrInvalidParams{Context: "AutoScalingPolicy"} 5310 if s.Constraints == nil { 5311 invalidParams.Add(request.NewErrParamRequired("Constraints")) 5312 } 5313 if s.Rules == nil { 5314 invalidParams.Add(request.NewErrParamRequired("Rules")) 5315 } 5316 if s.Constraints != nil { 5317 if err := s.Constraints.Validate(); err != nil { 5318 invalidParams.AddNested("Constraints", err.(request.ErrInvalidParams)) 5319 } 5320 } 5321 if s.Rules != nil { 5322 for i, v := range s.Rules { 5323 if v == nil { 5324 continue 5325 } 5326 if err := v.Validate(); err != nil { 5327 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Rules", i), err.(request.ErrInvalidParams)) 5328 } 5329 } 5330 } 5331 5332 if invalidParams.Len() > 0 { 5333 return invalidParams 5334 } 5335 return nil 5336} 5337 5338// SetConstraints sets the Constraints field's value. 5339func (s *AutoScalingPolicy) SetConstraints(v *ScalingConstraints) *AutoScalingPolicy { 5340 s.Constraints = v 5341 return s 5342} 5343 5344// SetRules sets the Rules field's value. 5345func (s *AutoScalingPolicy) SetRules(v []*ScalingRule) *AutoScalingPolicy { 5346 s.Rules = v 5347 return s 5348} 5349 5350// An automatic scaling policy for a core instance group or task instance group 5351// in an Amazon EMR cluster. The automatic scaling policy defines how an instance 5352// group dynamically adds and terminates EC2 instances in response to the value 5353// of a CloudWatch metric. See PutAutoScalingPolicy. 5354type AutoScalingPolicyDescription struct { 5355 _ struct{} `type:"structure"` 5356 5357 // The upper and lower EC2 instance limits for an automatic scaling policy. 5358 // Automatic scaling activity will not cause an instance group to grow above 5359 // or below these limits. 5360 Constraints *ScalingConstraints `type:"structure"` 5361 5362 // The scale-in and scale-out rules that comprise the automatic scaling policy. 5363 Rules []*ScalingRule `type:"list"` 5364 5365 // The status of an automatic scaling policy. 5366 Status *AutoScalingPolicyStatus `type:"structure"` 5367} 5368 5369// String returns the string representation 5370func (s AutoScalingPolicyDescription) String() string { 5371 return awsutil.Prettify(s) 5372} 5373 5374// GoString returns the string representation 5375func (s AutoScalingPolicyDescription) GoString() string { 5376 return s.String() 5377} 5378 5379// SetConstraints sets the Constraints field's value. 5380func (s *AutoScalingPolicyDescription) SetConstraints(v *ScalingConstraints) *AutoScalingPolicyDescription { 5381 s.Constraints = v 5382 return s 5383} 5384 5385// SetRules sets the Rules field's value. 5386func (s *AutoScalingPolicyDescription) SetRules(v []*ScalingRule) *AutoScalingPolicyDescription { 5387 s.Rules = v 5388 return s 5389} 5390 5391// SetStatus sets the Status field's value. 5392func (s *AutoScalingPolicyDescription) SetStatus(v *AutoScalingPolicyStatus) *AutoScalingPolicyDescription { 5393 s.Status = v 5394 return s 5395} 5396 5397// The reason for an AutoScalingPolicyStatus change. 5398type AutoScalingPolicyStateChangeReason struct { 5399 _ struct{} `type:"structure"` 5400 5401 // The code indicating the reason for the change in status.USER_REQUEST indicates 5402 // that the scaling policy status was changed by a user. PROVISION_FAILURE indicates 5403 // that the status change was because the policy failed to provision. CLEANUP_FAILURE 5404 // indicates an error. 5405 Code *string `type:"string" enum:"AutoScalingPolicyStateChangeReasonCode"` 5406 5407 // A friendly, more verbose message that accompanies an automatic scaling policy 5408 // state change. 5409 Message *string `type:"string"` 5410} 5411 5412// String returns the string representation 5413func (s AutoScalingPolicyStateChangeReason) String() string { 5414 return awsutil.Prettify(s) 5415} 5416 5417// GoString returns the string representation 5418func (s AutoScalingPolicyStateChangeReason) GoString() string { 5419 return s.String() 5420} 5421 5422// SetCode sets the Code field's value. 5423func (s *AutoScalingPolicyStateChangeReason) SetCode(v string) *AutoScalingPolicyStateChangeReason { 5424 s.Code = &v 5425 return s 5426} 5427 5428// SetMessage sets the Message field's value. 5429func (s *AutoScalingPolicyStateChangeReason) SetMessage(v string) *AutoScalingPolicyStateChangeReason { 5430 s.Message = &v 5431 return s 5432} 5433 5434// The status of an automatic scaling policy. 5435type AutoScalingPolicyStatus struct { 5436 _ struct{} `type:"structure"` 5437 5438 // Indicates the status of the automatic scaling policy. 5439 State *string `type:"string" enum:"AutoScalingPolicyState"` 5440 5441 // The reason for a change in status. 5442 StateChangeReason *AutoScalingPolicyStateChangeReason `type:"structure"` 5443} 5444 5445// String returns the string representation 5446func (s AutoScalingPolicyStatus) String() string { 5447 return awsutil.Prettify(s) 5448} 5449 5450// GoString returns the string representation 5451func (s AutoScalingPolicyStatus) GoString() string { 5452 return s.String() 5453} 5454 5455// SetState sets the State field's value. 5456func (s *AutoScalingPolicyStatus) SetState(v string) *AutoScalingPolicyStatus { 5457 s.State = &v 5458 return s 5459} 5460 5461// SetStateChangeReason sets the StateChangeReason field's value. 5462func (s *AutoScalingPolicyStatus) SetStateChangeReason(v *AutoScalingPolicyStateChangeReason) *AutoScalingPolicyStatus { 5463 s.StateChangeReason = v 5464 return s 5465} 5466 5467// A configuration for Amazon EMR block public access. When BlockPublicSecurityGroupRules 5468// is set to true, Amazon EMR prevents cluster creation if one of the cluster's 5469// security groups has a rule that allows inbound traffic from 0.0.0.0/0 or 5470// ::/0 on a port, unless the port is specified as an exception using PermittedPublicSecurityGroupRuleRanges. 5471type BlockPublicAccessConfiguration struct { 5472 _ struct{} `type:"structure"` 5473 5474 // Indicates whether Amazon EMR block public access is enabled (true) or disabled 5475 // (false). By default, the value is false for accounts that have created EMR 5476 // clusters before July 2019. For accounts created after this, the default is 5477 // true. 5478 // 5479 // BlockPublicSecurityGroupRules is a required field 5480 BlockPublicSecurityGroupRules *bool `type:"boolean" required:"true"` 5481 5482 // Specifies ports and port ranges that are permitted to have security group 5483 // rules that allow inbound traffic from all public sources. For example, if 5484 // Port 23 (Telnet) is specified for PermittedPublicSecurityGroupRuleRanges, 5485 // Amazon EMR allows cluster creation if a security group associated with the 5486 // cluster has a rule that allows inbound traffic on Port 23 from IPv4 0.0.0.0/0 5487 // or IPv6 port ::/0 as the source. 5488 // 5489 // By default, Port 22, which is used for SSH access to the cluster EC2 instances, 5490 // is in the list of PermittedPublicSecurityGroupRuleRanges. 5491 PermittedPublicSecurityGroupRuleRanges []*PortRange `type:"list"` 5492} 5493 5494// String returns the string representation 5495func (s BlockPublicAccessConfiguration) String() string { 5496 return awsutil.Prettify(s) 5497} 5498 5499// GoString returns the string representation 5500func (s BlockPublicAccessConfiguration) GoString() string { 5501 return s.String() 5502} 5503 5504// Validate inspects the fields of the type to determine if they are valid. 5505func (s *BlockPublicAccessConfiguration) Validate() error { 5506 invalidParams := request.ErrInvalidParams{Context: "BlockPublicAccessConfiguration"} 5507 if s.BlockPublicSecurityGroupRules == nil { 5508 invalidParams.Add(request.NewErrParamRequired("BlockPublicSecurityGroupRules")) 5509 } 5510 if s.PermittedPublicSecurityGroupRuleRanges != nil { 5511 for i, v := range s.PermittedPublicSecurityGroupRuleRanges { 5512 if v == nil { 5513 continue 5514 } 5515 if err := v.Validate(); err != nil { 5516 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "PermittedPublicSecurityGroupRuleRanges", i), err.(request.ErrInvalidParams)) 5517 } 5518 } 5519 } 5520 5521 if invalidParams.Len() > 0 { 5522 return invalidParams 5523 } 5524 return nil 5525} 5526 5527// SetBlockPublicSecurityGroupRules sets the BlockPublicSecurityGroupRules field's value. 5528func (s *BlockPublicAccessConfiguration) SetBlockPublicSecurityGroupRules(v bool) *BlockPublicAccessConfiguration { 5529 s.BlockPublicSecurityGroupRules = &v 5530 return s 5531} 5532 5533// SetPermittedPublicSecurityGroupRuleRanges sets the PermittedPublicSecurityGroupRuleRanges field's value. 5534func (s *BlockPublicAccessConfiguration) SetPermittedPublicSecurityGroupRuleRanges(v []*PortRange) *BlockPublicAccessConfiguration { 5535 s.PermittedPublicSecurityGroupRuleRanges = v 5536 return s 5537} 5538 5539// Properties that describe the Amazon Web Services principal that created the 5540// BlockPublicAccessConfiguration using the PutBlockPublicAccessConfiguration 5541// action as well as the date and time that the configuration was created. Each 5542// time a configuration for block public access is updated, Amazon EMR updates 5543// this metadata. 5544type BlockPublicAccessConfigurationMetadata struct { 5545 _ struct{} `type:"structure"` 5546 5547 // The Amazon Resource Name that created or last modified the configuration. 5548 // 5549 // CreatedByArn is a required field 5550 CreatedByArn *string `min:"20" type:"string" required:"true"` 5551 5552 // The date and time that the configuration was created. 5553 // 5554 // CreationDateTime is a required field 5555 CreationDateTime *time.Time `type:"timestamp" required:"true"` 5556} 5557 5558// String returns the string representation 5559func (s BlockPublicAccessConfigurationMetadata) String() string { 5560 return awsutil.Prettify(s) 5561} 5562 5563// GoString returns the string representation 5564func (s BlockPublicAccessConfigurationMetadata) GoString() string { 5565 return s.String() 5566} 5567 5568// SetCreatedByArn sets the CreatedByArn field's value. 5569func (s *BlockPublicAccessConfigurationMetadata) SetCreatedByArn(v string) *BlockPublicAccessConfigurationMetadata { 5570 s.CreatedByArn = &v 5571 return s 5572} 5573 5574// SetCreationDateTime sets the CreationDateTime field's value. 5575func (s *BlockPublicAccessConfigurationMetadata) SetCreationDateTime(v time.Time) *BlockPublicAccessConfigurationMetadata { 5576 s.CreationDateTime = &v 5577 return s 5578} 5579 5580// Configuration of a bootstrap action. 5581type BootstrapActionConfig struct { 5582 _ struct{} `type:"structure"` 5583 5584 // The name of the bootstrap action. 5585 // 5586 // Name is a required field 5587 Name *string `type:"string" required:"true"` 5588 5589 // The script run by the bootstrap action. 5590 // 5591 // ScriptBootstrapAction is a required field 5592 ScriptBootstrapAction *ScriptBootstrapActionConfig `type:"structure" required:"true"` 5593} 5594 5595// String returns the string representation 5596func (s BootstrapActionConfig) String() string { 5597 return awsutil.Prettify(s) 5598} 5599 5600// GoString returns the string representation 5601func (s BootstrapActionConfig) GoString() string { 5602 return s.String() 5603} 5604 5605// Validate inspects the fields of the type to determine if they are valid. 5606func (s *BootstrapActionConfig) Validate() error { 5607 invalidParams := request.ErrInvalidParams{Context: "BootstrapActionConfig"} 5608 if s.Name == nil { 5609 invalidParams.Add(request.NewErrParamRequired("Name")) 5610 } 5611 if s.ScriptBootstrapAction == nil { 5612 invalidParams.Add(request.NewErrParamRequired("ScriptBootstrapAction")) 5613 } 5614 if s.ScriptBootstrapAction != nil { 5615 if err := s.ScriptBootstrapAction.Validate(); err != nil { 5616 invalidParams.AddNested("ScriptBootstrapAction", err.(request.ErrInvalidParams)) 5617 } 5618 } 5619 5620 if invalidParams.Len() > 0 { 5621 return invalidParams 5622 } 5623 return nil 5624} 5625 5626// SetName sets the Name field's value. 5627func (s *BootstrapActionConfig) SetName(v string) *BootstrapActionConfig { 5628 s.Name = &v 5629 return s 5630} 5631 5632// SetScriptBootstrapAction sets the ScriptBootstrapAction field's value. 5633func (s *BootstrapActionConfig) SetScriptBootstrapAction(v *ScriptBootstrapActionConfig) *BootstrapActionConfig { 5634 s.ScriptBootstrapAction = v 5635 return s 5636} 5637 5638// Reports the configuration of a bootstrap action in a cluster (job flow). 5639type BootstrapActionDetail struct { 5640 _ struct{} `type:"structure"` 5641 5642 // A description of the bootstrap action. 5643 BootstrapActionConfig *BootstrapActionConfig `type:"structure"` 5644} 5645 5646// String returns the string representation 5647func (s BootstrapActionDetail) String() string { 5648 return awsutil.Prettify(s) 5649} 5650 5651// GoString returns the string representation 5652func (s BootstrapActionDetail) GoString() string { 5653 return s.String() 5654} 5655 5656// SetBootstrapActionConfig sets the BootstrapActionConfig field's value. 5657func (s *BootstrapActionDetail) SetBootstrapActionConfig(v *BootstrapActionConfig) *BootstrapActionDetail { 5658 s.BootstrapActionConfig = v 5659 return s 5660} 5661 5662// Specification of the status of a CancelSteps request. Available only in Amazon 5663// EMR version 4.8.0 and later, excluding version 5.0.0. 5664type CancelStepsInfo struct { 5665 _ struct{} `type:"structure"` 5666 5667 // The reason for the failure if the CancelSteps request fails. 5668 Reason *string `type:"string"` 5669 5670 // The status of a CancelSteps Request. The value may be SUBMITTED or FAILED. 5671 Status *string `type:"string" enum:"CancelStepsRequestStatus"` 5672 5673 // The encrypted StepId of a step. 5674 StepId *string `type:"string"` 5675} 5676 5677// String returns the string representation 5678func (s CancelStepsInfo) String() string { 5679 return awsutil.Prettify(s) 5680} 5681 5682// GoString returns the string representation 5683func (s CancelStepsInfo) GoString() string { 5684 return s.String() 5685} 5686 5687// SetReason sets the Reason field's value. 5688func (s *CancelStepsInfo) SetReason(v string) *CancelStepsInfo { 5689 s.Reason = &v 5690 return s 5691} 5692 5693// SetStatus sets the Status field's value. 5694func (s *CancelStepsInfo) SetStatus(v string) *CancelStepsInfo { 5695 s.Status = &v 5696 return s 5697} 5698 5699// SetStepId sets the StepId field's value. 5700func (s *CancelStepsInfo) SetStepId(v string) *CancelStepsInfo { 5701 s.StepId = &v 5702 return s 5703} 5704 5705// The input argument to the CancelSteps operation. 5706type CancelStepsInput struct { 5707 _ struct{} `type:"structure"` 5708 5709 // The ClusterID for the specified steps that will be canceled. Use RunJobFlow 5710 // and ListClusters to get ClusterIDs. 5711 // 5712 // ClusterId is a required field 5713 ClusterId *string `type:"string" required:"true"` 5714 5715 // The option to choose to cancel RUNNING steps. By default, the value is SEND_INTERRUPT. 5716 StepCancellationOption *string `type:"string" enum:"StepCancellationOption"` 5717 5718 // The list of StepIDs to cancel. Use ListSteps to get steps and their states 5719 // for the specified cluster. 5720 // 5721 // StepIds is a required field 5722 StepIds []*string `type:"list" required:"true"` 5723} 5724 5725// String returns the string representation 5726func (s CancelStepsInput) String() string { 5727 return awsutil.Prettify(s) 5728} 5729 5730// GoString returns the string representation 5731func (s CancelStepsInput) GoString() string { 5732 return s.String() 5733} 5734 5735// Validate inspects the fields of the type to determine if they are valid. 5736func (s *CancelStepsInput) Validate() error { 5737 invalidParams := request.ErrInvalidParams{Context: "CancelStepsInput"} 5738 if s.ClusterId == nil { 5739 invalidParams.Add(request.NewErrParamRequired("ClusterId")) 5740 } 5741 if s.StepIds == nil { 5742 invalidParams.Add(request.NewErrParamRequired("StepIds")) 5743 } 5744 5745 if invalidParams.Len() > 0 { 5746 return invalidParams 5747 } 5748 return nil 5749} 5750 5751// SetClusterId sets the ClusterId field's value. 5752func (s *CancelStepsInput) SetClusterId(v string) *CancelStepsInput { 5753 s.ClusterId = &v 5754 return s 5755} 5756 5757// SetStepCancellationOption sets the StepCancellationOption field's value. 5758func (s *CancelStepsInput) SetStepCancellationOption(v string) *CancelStepsInput { 5759 s.StepCancellationOption = &v 5760 return s 5761} 5762 5763// SetStepIds sets the StepIds field's value. 5764func (s *CancelStepsInput) SetStepIds(v []*string) *CancelStepsInput { 5765 s.StepIds = v 5766 return s 5767} 5768 5769// The output for the CancelSteps operation. 5770type CancelStepsOutput struct { 5771 _ struct{} `type:"structure"` 5772 5773 // A list of CancelStepsInfo, which shows the status of specified cancel requests 5774 // for each StepID specified. 5775 CancelStepsInfoList []*CancelStepsInfo `type:"list"` 5776} 5777 5778// String returns the string representation 5779func (s CancelStepsOutput) String() string { 5780 return awsutil.Prettify(s) 5781} 5782 5783// GoString returns the string representation 5784func (s CancelStepsOutput) GoString() string { 5785 return s.String() 5786} 5787 5788// SetCancelStepsInfoList sets the CancelStepsInfoList field's value. 5789func (s *CancelStepsOutput) SetCancelStepsInfoList(v []*CancelStepsInfo) *CancelStepsOutput { 5790 s.CancelStepsInfoList = v 5791 return s 5792} 5793 5794// The definition of a CloudWatch metric alarm, which determines when an automatic 5795// scaling activity is triggered. When the defined alarm conditions are satisfied, 5796// scaling activity begins. 5797type CloudWatchAlarmDefinition struct { 5798 _ struct{} `type:"structure"` 5799 5800 // Determines how the metric specified by MetricName is compared to the value 5801 // specified by Threshold. 5802 // 5803 // ComparisonOperator is a required field 5804 ComparisonOperator *string `type:"string" required:"true" enum:"ComparisonOperator"` 5805 5806 // A CloudWatch metric dimension. 5807 Dimensions []*MetricDimension `type:"list"` 5808 5809 // The number of periods, in five-minute increments, during which the alarm 5810 // condition must exist before the alarm triggers automatic scaling activity. 5811 // The default value is 1. 5812 EvaluationPeriods *int64 `type:"integer"` 5813 5814 // The name of the CloudWatch metric that is watched to determine an alarm condition. 5815 // 5816 // MetricName is a required field 5817 MetricName *string `type:"string" required:"true"` 5818 5819 // The namespace for the CloudWatch metric. The default is AWS/ElasticMapReduce. 5820 Namespace *string `type:"string"` 5821 5822 // The period, in seconds, over which the statistic is applied. EMR CloudWatch 5823 // metrics are emitted every five minutes (300 seconds), so if an EMR CloudWatch 5824 // metric is specified, specify 300. 5825 // 5826 // Period is a required field 5827 Period *int64 `type:"integer" required:"true"` 5828 5829 // The statistic to apply to the metric associated with the alarm. The default 5830 // is AVERAGE. 5831 Statistic *string `type:"string" enum:"Statistic"` 5832 5833 // The value against which the specified statistic is compared. 5834 // 5835 // Threshold is a required field 5836 Threshold *float64 `type:"double" required:"true"` 5837 5838 // The unit of measure associated with the CloudWatch metric being watched. 5839 // The value specified for Unit must correspond to the units specified in the 5840 // CloudWatch metric. 5841 Unit *string `type:"string" enum:"Unit"` 5842} 5843 5844// String returns the string representation 5845func (s CloudWatchAlarmDefinition) String() string { 5846 return awsutil.Prettify(s) 5847} 5848 5849// GoString returns the string representation 5850func (s CloudWatchAlarmDefinition) GoString() string { 5851 return s.String() 5852} 5853 5854// Validate inspects the fields of the type to determine if they are valid. 5855func (s *CloudWatchAlarmDefinition) Validate() error { 5856 invalidParams := request.ErrInvalidParams{Context: "CloudWatchAlarmDefinition"} 5857 if s.ComparisonOperator == nil { 5858 invalidParams.Add(request.NewErrParamRequired("ComparisonOperator")) 5859 } 5860 if s.MetricName == nil { 5861 invalidParams.Add(request.NewErrParamRequired("MetricName")) 5862 } 5863 if s.Period == nil { 5864 invalidParams.Add(request.NewErrParamRequired("Period")) 5865 } 5866 if s.Threshold == nil { 5867 invalidParams.Add(request.NewErrParamRequired("Threshold")) 5868 } 5869 5870 if invalidParams.Len() > 0 { 5871 return invalidParams 5872 } 5873 return nil 5874} 5875 5876// SetComparisonOperator sets the ComparisonOperator field's value. 5877func (s *CloudWatchAlarmDefinition) SetComparisonOperator(v string) *CloudWatchAlarmDefinition { 5878 s.ComparisonOperator = &v 5879 return s 5880} 5881 5882// SetDimensions sets the Dimensions field's value. 5883func (s *CloudWatchAlarmDefinition) SetDimensions(v []*MetricDimension) *CloudWatchAlarmDefinition { 5884 s.Dimensions = v 5885 return s 5886} 5887 5888// SetEvaluationPeriods sets the EvaluationPeriods field's value. 5889func (s *CloudWatchAlarmDefinition) SetEvaluationPeriods(v int64) *CloudWatchAlarmDefinition { 5890 s.EvaluationPeriods = &v 5891 return s 5892} 5893 5894// SetMetricName sets the MetricName field's value. 5895func (s *CloudWatchAlarmDefinition) SetMetricName(v string) *CloudWatchAlarmDefinition { 5896 s.MetricName = &v 5897 return s 5898} 5899 5900// SetNamespace sets the Namespace field's value. 5901func (s *CloudWatchAlarmDefinition) SetNamespace(v string) *CloudWatchAlarmDefinition { 5902 s.Namespace = &v 5903 return s 5904} 5905 5906// SetPeriod sets the Period field's value. 5907func (s *CloudWatchAlarmDefinition) SetPeriod(v int64) *CloudWatchAlarmDefinition { 5908 s.Period = &v 5909 return s 5910} 5911 5912// SetStatistic sets the Statistic field's value. 5913func (s *CloudWatchAlarmDefinition) SetStatistic(v string) *CloudWatchAlarmDefinition { 5914 s.Statistic = &v 5915 return s 5916} 5917 5918// SetThreshold sets the Threshold field's value. 5919func (s *CloudWatchAlarmDefinition) SetThreshold(v float64) *CloudWatchAlarmDefinition { 5920 s.Threshold = &v 5921 return s 5922} 5923 5924// SetUnit sets the Unit field's value. 5925func (s *CloudWatchAlarmDefinition) SetUnit(v string) *CloudWatchAlarmDefinition { 5926 s.Unit = &v 5927 return s 5928} 5929 5930// The detailed description of the cluster. 5931type Cluster struct { 5932 _ struct{} `type:"structure"` 5933 5934 // The applications installed on this cluster. 5935 Applications []*Application `type:"list"` 5936 5937 // An IAM role for automatic scaling policies. The default role is EMR_AutoScaling_DefaultRole. 5938 // The IAM role provides permissions that the automatic scaling feature requires 5939 // to launch and terminate EC2 instances in an instance group. 5940 AutoScalingRole *string `type:"string"` 5941 5942 // Specifies whether the cluster should terminate after completing all steps. 5943 AutoTerminate *bool `type:"boolean"` 5944 5945 // The Amazon Resource Name of the cluster. 5946 ClusterArn *string `min:"20" type:"string"` 5947 5948 // Applies only to Amazon EMR releases 4.x and later. The list of Configurations 5949 // supplied to the EMR cluster. 5950 Configurations []*Configuration `type:"list"` 5951 5952 // Available only in Amazon EMR version 5.7.0 and later. The ID of a custom 5953 // Amazon EBS-backed Linux AMI if the cluster uses a custom AMI. 5954 CustomAmiId *string `type:"string"` 5955 5956 // The size, in GiB, of the Amazon EBS root device volume of the Linux AMI that 5957 // is used for each EC2 instance. Available in Amazon EMR version 4.x and later. 5958 EbsRootVolumeSize *int64 `type:"integer"` 5959 5960 // Provides information about the EC2 instances in a cluster grouped by category. 5961 // For example, key name, subnet ID, IAM instance profile, and so on. 5962 Ec2InstanceAttributes *Ec2InstanceAttributes `type:"structure"` 5963 5964 // The unique identifier for the cluster. 5965 Id *string `type:"string"` 5966 5967 // 5968 // The instance fleet configuration is available only in Amazon EMR versions 5969 // 4.8.0 and later, excluding 5.0.x versions. 5970 // 5971 // The instance group configuration of the cluster. A value of INSTANCE_GROUP 5972 // indicates a uniform instance group configuration. A value of INSTANCE_FLEET 5973 // indicates an instance fleets configuration. 5974 InstanceCollectionType *string `type:"string" enum:"InstanceCollectionType"` 5975 5976 // Attributes for Kerberos configuration when Kerberos authentication is enabled 5977 // using a security configuration. For more information see Use Kerberos Authentication 5978 // (https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-kerberos.html) 5979 // in the Amazon EMR Management Guide. 5980 KerberosAttributes *KerberosAttributes `type:"structure"` 5981 5982 // The KMS key used for encrypting log files. This attribute is only available 5983 // with EMR version 5.30.0 and later, excluding EMR 6.0.0. 5984 LogEncryptionKmsKeyId *string `type:"string"` 5985 5986 // The path to the Amazon S3 location where logs for this cluster are stored. 5987 LogUri *string `type:"string"` 5988 5989 // The DNS name of the master node. If the cluster is on a private subnet, this 5990 // is the private DNS name. On a public subnet, this is the public DNS name. 5991 MasterPublicDnsName *string `type:"string"` 5992 5993 // The name of the cluster. 5994 Name *string `type:"string"` 5995 5996 // An approximation of the cost of the cluster, represented in m1.small/hours. 5997 // This value is incremented one time for every hour an m1.small instance runs. 5998 // Larger instances are weighted more, so an EC2 instance that is roughly four 5999 // times more expensive would result in the normalized instance hours being 6000 // incremented by four. This result is only an approximation and does not reflect 6001 // the actual billing rate. 6002 NormalizedInstanceHours *int64 `type:"integer"` 6003 6004 // The Amazon Resource Name (ARN) of the Outpost where the cluster is launched. 6005 OutpostArn *string `type:"string"` 6006 6007 // Placement group configured for an Amazon EMR cluster. 6008 PlacementGroups []*PlacementGroupConfig `type:"list"` 6009 6010 // The Amazon EMR release label, which determines the version of open-source 6011 // application packages installed on the cluster. Release labels are in the 6012 // form emr-x.x.x, where x.x.x is an Amazon EMR release version such as emr-5.14.0. 6013 // For more information about Amazon EMR release versions and included application 6014 // versions and features, see https://docs.aws.amazon.com/emr/latest/ReleaseGuide/ 6015 // (https://docs.aws.amazon.com/emr/latest/ReleaseGuide/). The release label 6016 // applies only to Amazon EMR releases version 4.0 and later. Earlier versions 6017 // use AmiVersion. 6018 ReleaseLabel *string `type:"string"` 6019 6020 // Applies only when CustomAmiID is used. Specifies the type of updates that 6021 // are applied from the Amazon Linux AMI package repositories when an instance 6022 // boots using the AMI. 6023 RepoUpgradeOnBoot *string `type:"string" enum:"RepoUpgradeOnBoot"` 6024 6025 // The AMI version requested for this cluster. 6026 RequestedAmiVersion *string `type:"string"` 6027 6028 // The AMI version running on this cluster. 6029 RunningAmiVersion *string `type:"string"` 6030 6031 // The way that individual Amazon EC2 instances terminate when an automatic 6032 // scale-in activity occurs or an instance group is resized. TERMINATE_AT_INSTANCE_HOUR 6033 // indicates that Amazon EMR terminates nodes at the instance-hour boundary, 6034 // regardless of when the request to terminate the instance was submitted. This 6035 // option is only available with Amazon EMR 5.1.0 and later and is the default 6036 // for clusters created using that version. TERMINATE_AT_TASK_COMPLETION indicates 6037 // that Amazon EMR adds nodes to a deny list and drains tasks from nodes before 6038 // terminating the Amazon EC2 instances, regardless of the instance-hour boundary. 6039 // With either behavior, Amazon EMR removes the least active nodes first and 6040 // blocks instance termination if it could lead to HDFS corruption. TERMINATE_AT_TASK_COMPLETION 6041 // is available only in Amazon EMR version 4.1.0 and later, and is the default 6042 // for versions of Amazon EMR earlier than 5.1.0. 6043 ScaleDownBehavior *string `type:"string" enum:"ScaleDownBehavior"` 6044 6045 // The name of the security configuration applied to the cluster. 6046 SecurityConfiguration *string `type:"string"` 6047 6048 // The IAM role that will be assumed by the Amazon EMR service to access Amazon 6049 // Web Services resources on your behalf. 6050 ServiceRole *string `type:"string"` 6051 6052 // The current status details about the cluster. 6053 Status *ClusterStatus `type:"structure"` 6054 6055 // Specifies the number of steps that can be executed concurrently. 6056 StepConcurrencyLevel *int64 `type:"integer"` 6057 6058 // A list of tags associated with a cluster. 6059 Tags []*Tag `type:"list"` 6060 6061 // Indicates whether Amazon EMR will lock the cluster to prevent the EC2 instances 6062 // from being terminated by an API call or user intervention, or in the event 6063 // of a cluster error. 6064 TerminationProtected *bool `type:"boolean"` 6065 6066 // Indicates whether the cluster is visible to IAM principals in the account 6067 // associated with the cluster. When true, IAM principals in the account can 6068 // perform EMR cluster actions on the cluster that their IAM policies allow. 6069 // When false, only the IAM principal that created the cluster and the account 6070 // root user can perform EMR actions, regardless of IAM permissions policies 6071 // attached to other IAM principals. 6072 // 6073 // The default value is true if a value is not provided when creating a cluster 6074 // using the EMR API RunJobFlow command, the CLI create-cluster (https://docs.aws.amazon.com/cli/latest/reference/emr/create-cluster.html) 6075 // command, or the Management Console. IAM principals that are allowed to perform 6076 // actions on the cluster can use the SetVisibleToAllUsers action to change 6077 // the value on a running cluster. For more information, see Understanding the 6078 // EMR Cluster VisibleToAllUsers Setting (https://docs.aws.amazon.com/emr/latest/ManagementGuide/security_iam_emr-with-iam.html#security_set_visible_to_all_users) 6079 // in the Amazon EMRManagement Guide. 6080 VisibleToAllUsers *bool `type:"boolean"` 6081} 6082 6083// String returns the string representation 6084func (s Cluster) String() string { 6085 return awsutil.Prettify(s) 6086} 6087 6088// GoString returns the string representation 6089func (s Cluster) GoString() string { 6090 return s.String() 6091} 6092 6093// SetApplications sets the Applications field's value. 6094func (s *Cluster) SetApplications(v []*Application) *Cluster { 6095 s.Applications = v 6096 return s 6097} 6098 6099// SetAutoScalingRole sets the AutoScalingRole field's value. 6100func (s *Cluster) SetAutoScalingRole(v string) *Cluster { 6101 s.AutoScalingRole = &v 6102 return s 6103} 6104 6105// SetAutoTerminate sets the AutoTerminate field's value. 6106func (s *Cluster) SetAutoTerminate(v bool) *Cluster { 6107 s.AutoTerminate = &v 6108 return s 6109} 6110 6111// SetClusterArn sets the ClusterArn field's value. 6112func (s *Cluster) SetClusterArn(v string) *Cluster { 6113 s.ClusterArn = &v 6114 return s 6115} 6116 6117// SetConfigurations sets the Configurations field's value. 6118func (s *Cluster) SetConfigurations(v []*Configuration) *Cluster { 6119 s.Configurations = v 6120 return s 6121} 6122 6123// SetCustomAmiId sets the CustomAmiId field's value. 6124func (s *Cluster) SetCustomAmiId(v string) *Cluster { 6125 s.CustomAmiId = &v 6126 return s 6127} 6128 6129// SetEbsRootVolumeSize sets the EbsRootVolumeSize field's value. 6130func (s *Cluster) SetEbsRootVolumeSize(v int64) *Cluster { 6131 s.EbsRootVolumeSize = &v 6132 return s 6133} 6134 6135// SetEc2InstanceAttributes sets the Ec2InstanceAttributes field's value. 6136func (s *Cluster) SetEc2InstanceAttributes(v *Ec2InstanceAttributes) *Cluster { 6137 s.Ec2InstanceAttributes = v 6138 return s 6139} 6140 6141// SetId sets the Id field's value. 6142func (s *Cluster) SetId(v string) *Cluster { 6143 s.Id = &v 6144 return s 6145} 6146 6147// SetInstanceCollectionType sets the InstanceCollectionType field's value. 6148func (s *Cluster) SetInstanceCollectionType(v string) *Cluster { 6149 s.InstanceCollectionType = &v 6150 return s 6151} 6152 6153// SetKerberosAttributes sets the KerberosAttributes field's value. 6154func (s *Cluster) SetKerberosAttributes(v *KerberosAttributes) *Cluster { 6155 s.KerberosAttributes = v 6156 return s 6157} 6158 6159// SetLogEncryptionKmsKeyId sets the LogEncryptionKmsKeyId field's value. 6160func (s *Cluster) SetLogEncryptionKmsKeyId(v string) *Cluster { 6161 s.LogEncryptionKmsKeyId = &v 6162 return s 6163} 6164 6165// SetLogUri sets the LogUri field's value. 6166func (s *Cluster) SetLogUri(v string) *Cluster { 6167 s.LogUri = &v 6168 return s 6169} 6170 6171// SetMasterPublicDnsName sets the MasterPublicDnsName field's value. 6172func (s *Cluster) SetMasterPublicDnsName(v string) *Cluster { 6173 s.MasterPublicDnsName = &v 6174 return s 6175} 6176 6177// SetName sets the Name field's value. 6178func (s *Cluster) SetName(v string) *Cluster { 6179 s.Name = &v 6180 return s 6181} 6182 6183// SetNormalizedInstanceHours sets the NormalizedInstanceHours field's value. 6184func (s *Cluster) SetNormalizedInstanceHours(v int64) *Cluster { 6185 s.NormalizedInstanceHours = &v 6186 return s 6187} 6188 6189// SetOutpostArn sets the OutpostArn field's value. 6190func (s *Cluster) SetOutpostArn(v string) *Cluster { 6191 s.OutpostArn = &v 6192 return s 6193} 6194 6195// SetPlacementGroups sets the PlacementGroups field's value. 6196func (s *Cluster) SetPlacementGroups(v []*PlacementGroupConfig) *Cluster { 6197 s.PlacementGroups = v 6198 return s 6199} 6200 6201// SetReleaseLabel sets the ReleaseLabel field's value. 6202func (s *Cluster) SetReleaseLabel(v string) *Cluster { 6203 s.ReleaseLabel = &v 6204 return s 6205} 6206 6207// SetRepoUpgradeOnBoot sets the RepoUpgradeOnBoot field's value. 6208func (s *Cluster) SetRepoUpgradeOnBoot(v string) *Cluster { 6209 s.RepoUpgradeOnBoot = &v 6210 return s 6211} 6212 6213// SetRequestedAmiVersion sets the RequestedAmiVersion field's value. 6214func (s *Cluster) SetRequestedAmiVersion(v string) *Cluster { 6215 s.RequestedAmiVersion = &v 6216 return s 6217} 6218 6219// SetRunningAmiVersion sets the RunningAmiVersion field's value. 6220func (s *Cluster) SetRunningAmiVersion(v string) *Cluster { 6221 s.RunningAmiVersion = &v 6222 return s 6223} 6224 6225// SetScaleDownBehavior sets the ScaleDownBehavior field's value. 6226func (s *Cluster) SetScaleDownBehavior(v string) *Cluster { 6227 s.ScaleDownBehavior = &v 6228 return s 6229} 6230 6231// SetSecurityConfiguration sets the SecurityConfiguration field's value. 6232func (s *Cluster) SetSecurityConfiguration(v string) *Cluster { 6233 s.SecurityConfiguration = &v 6234 return s 6235} 6236 6237// SetServiceRole sets the ServiceRole field's value. 6238func (s *Cluster) SetServiceRole(v string) *Cluster { 6239 s.ServiceRole = &v 6240 return s 6241} 6242 6243// SetStatus sets the Status field's value. 6244func (s *Cluster) SetStatus(v *ClusterStatus) *Cluster { 6245 s.Status = v 6246 return s 6247} 6248 6249// SetStepConcurrencyLevel sets the StepConcurrencyLevel field's value. 6250func (s *Cluster) SetStepConcurrencyLevel(v int64) *Cluster { 6251 s.StepConcurrencyLevel = &v 6252 return s 6253} 6254 6255// SetTags sets the Tags field's value. 6256func (s *Cluster) SetTags(v []*Tag) *Cluster { 6257 s.Tags = v 6258 return s 6259} 6260 6261// SetTerminationProtected sets the TerminationProtected field's value. 6262func (s *Cluster) SetTerminationProtected(v bool) *Cluster { 6263 s.TerminationProtected = &v 6264 return s 6265} 6266 6267// SetVisibleToAllUsers sets the VisibleToAllUsers field's value. 6268func (s *Cluster) SetVisibleToAllUsers(v bool) *Cluster { 6269 s.VisibleToAllUsers = &v 6270 return s 6271} 6272 6273// The reason that the cluster changed to its current state. 6274type ClusterStateChangeReason struct { 6275 _ struct{} `type:"structure"` 6276 6277 // The programmatic code for the state change reason. 6278 Code *string `type:"string" enum:"ClusterStateChangeReasonCode"` 6279 6280 // The descriptive message for the state change reason. 6281 Message *string `type:"string"` 6282} 6283 6284// String returns the string representation 6285func (s ClusterStateChangeReason) String() string { 6286 return awsutil.Prettify(s) 6287} 6288 6289// GoString returns the string representation 6290func (s ClusterStateChangeReason) GoString() string { 6291 return s.String() 6292} 6293 6294// SetCode sets the Code field's value. 6295func (s *ClusterStateChangeReason) SetCode(v string) *ClusterStateChangeReason { 6296 s.Code = &v 6297 return s 6298} 6299 6300// SetMessage sets the Message field's value. 6301func (s *ClusterStateChangeReason) SetMessage(v string) *ClusterStateChangeReason { 6302 s.Message = &v 6303 return s 6304} 6305 6306// The detailed status of the cluster. 6307type ClusterStatus struct { 6308 _ struct{} `type:"structure"` 6309 6310 // The current state of the cluster. 6311 State *string `type:"string" enum:"ClusterState"` 6312 6313 // The reason for the cluster status change. 6314 StateChangeReason *ClusterStateChangeReason `type:"structure"` 6315 6316 // A timeline that represents the status of a cluster over the lifetime of the 6317 // cluster. 6318 Timeline *ClusterTimeline `type:"structure"` 6319} 6320 6321// String returns the string representation 6322func (s ClusterStatus) String() string { 6323 return awsutil.Prettify(s) 6324} 6325 6326// GoString returns the string representation 6327func (s ClusterStatus) GoString() string { 6328 return s.String() 6329} 6330 6331// SetState sets the State field's value. 6332func (s *ClusterStatus) SetState(v string) *ClusterStatus { 6333 s.State = &v 6334 return s 6335} 6336 6337// SetStateChangeReason sets the StateChangeReason field's value. 6338func (s *ClusterStatus) SetStateChangeReason(v *ClusterStateChangeReason) *ClusterStatus { 6339 s.StateChangeReason = v 6340 return s 6341} 6342 6343// SetTimeline sets the Timeline field's value. 6344func (s *ClusterStatus) SetTimeline(v *ClusterTimeline) *ClusterStatus { 6345 s.Timeline = v 6346 return s 6347} 6348 6349// The summary description of the cluster. 6350type ClusterSummary struct { 6351 _ struct{} `type:"structure"` 6352 6353 // The Amazon Resource Name of the cluster. 6354 ClusterArn *string `min:"20" type:"string"` 6355 6356 // The unique identifier for the cluster. 6357 Id *string `type:"string"` 6358 6359 // The name of the cluster. 6360 Name *string `type:"string"` 6361 6362 // An approximation of the cost of the cluster, represented in m1.small/hours. 6363 // This value is incremented one time for every hour an m1.small instance runs. 6364 // Larger instances are weighted more, so an EC2 instance that is roughly four 6365 // times more expensive would result in the normalized instance hours being 6366 // incremented by four. This result is only an approximation and does not reflect 6367 // the actual billing rate. 6368 NormalizedInstanceHours *int64 `type:"integer"` 6369 6370 // The Amazon Resource Name (ARN) of the Outpost where the cluster is launched. 6371 OutpostArn *string `type:"string"` 6372 6373 // The details about the current status of the cluster. 6374 Status *ClusterStatus `type:"structure"` 6375} 6376 6377// String returns the string representation 6378func (s ClusterSummary) String() string { 6379 return awsutil.Prettify(s) 6380} 6381 6382// GoString returns the string representation 6383func (s ClusterSummary) GoString() string { 6384 return s.String() 6385} 6386 6387// SetClusterArn sets the ClusterArn field's value. 6388func (s *ClusterSummary) SetClusterArn(v string) *ClusterSummary { 6389 s.ClusterArn = &v 6390 return s 6391} 6392 6393// SetId sets the Id field's value. 6394func (s *ClusterSummary) SetId(v string) *ClusterSummary { 6395 s.Id = &v 6396 return s 6397} 6398 6399// SetName sets the Name field's value. 6400func (s *ClusterSummary) SetName(v string) *ClusterSummary { 6401 s.Name = &v 6402 return s 6403} 6404 6405// SetNormalizedInstanceHours sets the NormalizedInstanceHours field's value. 6406func (s *ClusterSummary) SetNormalizedInstanceHours(v int64) *ClusterSummary { 6407 s.NormalizedInstanceHours = &v 6408 return s 6409} 6410 6411// SetOutpostArn sets the OutpostArn field's value. 6412func (s *ClusterSummary) SetOutpostArn(v string) *ClusterSummary { 6413 s.OutpostArn = &v 6414 return s 6415} 6416 6417// SetStatus sets the Status field's value. 6418func (s *ClusterSummary) SetStatus(v *ClusterStatus) *ClusterSummary { 6419 s.Status = v 6420 return s 6421} 6422 6423// Represents the timeline of the cluster's lifecycle. 6424type ClusterTimeline struct { 6425 _ struct{} `type:"structure"` 6426 6427 // The creation date and time of the cluster. 6428 CreationDateTime *time.Time `type:"timestamp"` 6429 6430 // The date and time when the cluster was terminated. 6431 EndDateTime *time.Time `type:"timestamp"` 6432 6433 // The date and time when the cluster was ready to run steps. 6434 ReadyDateTime *time.Time `type:"timestamp"` 6435} 6436 6437// String returns the string representation 6438func (s ClusterTimeline) String() string { 6439 return awsutil.Prettify(s) 6440} 6441 6442// GoString returns the string representation 6443func (s ClusterTimeline) GoString() string { 6444 return s.String() 6445} 6446 6447// SetCreationDateTime sets the CreationDateTime field's value. 6448func (s *ClusterTimeline) SetCreationDateTime(v time.Time) *ClusterTimeline { 6449 s.CreationDateTime = &v 6450 return s 6451} 6452 6453// SetEndDateTime sets the EndDateTime field's value. 6454func (s *ClusterTimeline) SetEndDateTime(v time.Time) *ClusterTimeline { 6455 s.EndDateTime = &v 6456 return s 6457} 6458 6459// SetReadyDateTime sets the ReadyDateTime field's value. 6460func (s *ClusterTimeline) SetReadyDateTime(v time.Time) *ClusterTimeline { 6461 s.ReadyDateTime = &v 6462 return s 6463} 6464 6465// An entity describing an executable that runs on a cluster. 6466type Command struct { 6467 _ struct{} `type:"structure"` 6468 6469 // Arguments for Amazon EMR to pass to the command for execution. 6470 Args []*string `type:"list"` 6471 6472 // The name of the command. 6473 Name *string `type:"string"` 6474 6475 // The Amazon S3 location of the command script. 6476 ScriptPath *string `type:"string"` 6477} 6478 6479// String returns the string representation 6480func (s Command) String() string { 6481 return awsutil.Prettify(s) 6482} 6483 6484// GoString returns the string representation 6485func (s Command) GoString() string { 6486 return s.String() 6487} 6488 6489// SetArgs sets the Args field's value. 6490func (s *Command) SetArgs(v []*string) *Command { 6491 s.Args = v 6492 return s 6493} 6494 6495// SetName sets the Name field's value. 6496func (s *Command) SetName(v string) *Command { 6497 s.Name = &v 6498 return s 6499} 6500 6501// SetScriptPath sets the ScriptPath field's value. 6502func (s *Command) SetScriptPath(v string) *Command { 6503 s.ScriptPath = &v 6504 return s 6505} 6506 6507// The EC2 unit limits for a managed scaling policy. The managed scaling activity 6508// of a cluster can not be above or below these limits. The limit only applies 6509// to the core and task nodes. The master node cannot be scaled after initial 6510// configuration. 6511type ComputeLimits struct { 6512 _ struct{} `type:"structure"` 6513 6514 // The upper boundary of EC2 units. It is measured through vCPU cores or instances 6515 // for instance groups and measured through units for instance fleets. Managed 6516 // scaling activities are not allowed beyond this boundary. The limit only applies 6517 // to the core and task nodes. The master node cannot be scaled after initial 6518 // configuration. 6519 // 6520 // MaximumCapacityUnits is a required field 6521 MaximumCapacityUnits *int64 `type:"integer" required:"true"` 6522 6523 // The upper boundary of EC2 units for core node type in a cluster. It is measured 6524 // through vCPU cores or instances for instance groups and measured through 6525 // units for instance fleets. The core units are not allowed to scale beyond 6526 // this boundary. The parameter is used to split capacity allocation between 6527 // core and task nodes. 6528 MaximumCoreCapacityUnits *int64 `type:"integer"` 6529 6530 // The upper boundary of On-Demand EC2 units. It is measured through vCPU cores 6531 // or instances for instance groups and measured through units for instance 6532 // fleets. The On-Demand units are not allowed to scale beyond this boundary. 6533 // The parameter is used to split capacity allocation between On-Demand and 6534 // Spot Instances. 6535 MaximumOnDemandCapacityUnits *int64 `type:"integer"` 6536 6537 // The lower boundary of EC2 units. It is measured through vCPU cores or instances 6538 // for instance groups and measured through units for instance fleets. Managed 6539 // scaling activities are not allowed beyond this boundary. The limit only applies 6540 // to the core and task nodes. The master node cannot be scaled after initial 6541 // configuration. 6542 // 6543 // MinimumCapacityUnits is a required field 6544 MinimumCapacityUnits *int64 `type:"integer" required:"true"` 6545 6546 // The unit type used for specifying a managed scaling policy. 6547 // 6548 // UnitType is a required field 6549 UnitType *string `type:"string" required:"true" enum:"ComputeLimitsUnitType"` 6550} 6551 6552// String returns the string representation 6553func (s ComputeLimits) String() string { 6554 return awsutil.Prettify(s) 6555} 6556 6557// GoString returns the string representation 6558func (s ComputeLimits) GoString() string { 6559 return s.String() 6560} 6561 6562// Validate inspects the fields of the type to determine if they are valid. 6563func (s *ComputeLimits) Validate() error { 6564 invalidParams := request.ErrInvalidParams{Context: "ComputeLimits"} 6565 if s.MaximumCapacityUnits == nil { 6566 invalidParams.Add(request.NewErrParamRequired("MaximumCapacityUnits")) 6567 } 6568 if s.MinimumCapacityUnits == nil { 6569 invalidParams.Add(request.NewErrParamRequired("MinimumCapacityUnits")) 6570 } 6571 if s.UnitType == nil { 6572 invalidParams.Add(request.NewErrParamRequired("UnitType")) 6573 } 6574 6575 if invalidParams.Len() > 0 { 6576 return invalidParams 6577 } 6578 return nil 6579} 6580 6581// SetMaximumCapacityUnits sets the MaximumCapacityUnits field's value. 6582func (s *ComputeLimits) SetMaximumCapacityUnits(v int64) *ComputeLimits { 6583 s.MaximumCapacityUnits = &v 6584 return s 6585} 6586 6587// SetMaximumCoreCapacityUnits sets the MaximumCoreCapacityUnits field's value. 6588func (s *ComputeLimits) SetMaximumCoreCapacityUnits(v int64) *ComputeLimits { 6589 s.MaximumCoreCapacityUnits = &v 6590 return s 6591} 6592 6593// SetMaximumOnDemandCapacityUnits sets the MaximumOnDemandCapacityUnits field's value. 6594func (s *ComputeLimits) SetMaximumOnDemandCapacityUnits(v int64) *ComputeLimits { 6595 s.MaximumOnDemandCapacityUnits = &v 6596 return s 6597} 6598 6599// SetMinimumCapacityUnits sets the MinimumCapacityUnits field's value. 6600func (s *ComputeLimits) SetMinimumCapacityUnits(v int64) *ComputeLimits { 6601 s.MinimumCapacityUnits = &v 6602 return s 6603} 6604 6605// SetUnitType sets the UnitType field's value. 6606func (s *ComputeLimits) SetUnitType(v string) *ComputeLimits { 6607 s.UnitType = &v 6608 return s 6609} 6610 6611// 6612// Amazon EMR releases 4.x or later. 6613// 6614// An optional configuration specification to be used when provisioning cluster 6615// instances, which can include configurations for applications and software 6616// bundled with Amazon EMR. A configuration consists of a classification, properties, 6617// and optional nested configurations. A classification refers to an application-specific 6618// configuration file. Properties are the settings you want to change in that 6619// file. For more information, see Configuring Applications (https://docs.aws.amazon.com/emr/latest/ReleaseGuide/emr-configure-apps.html). 6620type Configuration struct { 6621 _ struct{} `type:"structure"` 6622 6623 // The classification within a configuration. 6624 Classification *string `type:"string"` 6625 6626 // A list of additional configurations to apply within a configuration object. 6627 Configurations []*Configuration `type:"list"` 6628 6629 // A set of properties specified within a configuration classification. 6630 Properties map[string]*string `type:"map"` 6631} 6632 6633// String returns the string representation 6634func (s Configuration) String() string { 6635 return awsutil.Prettify(s) 6636} 6637 6638// GoString returns the string representation 6639func (s Configuration) GoString() string { 6640 return s.String() 6641} 6642 6643// SetClassification sets the Classification field's value. 6644func (s *Configuration) SetClassification(v string) *Configuration { 6645 s.Classification = &v 6646 return s 6647} 6648 6649// SetConfigurations sets the Configurations field's value. 6650func (s *Configuration) SetConfigurations(v []*Configuration) *Configuration { 6651 s.Configurations = v 6652 return s 6653} 6654 6655// SetProperties sets the Properties field's value. 6656func (s *Configuration) SetProperties(v map[string]*string) *Configuration { 6657 s.Properties = v 6658 return s 6659} 6660 6661type CreateSecurityConfigurationInput struct { 6662 _ struct{} `type:"structure"` 6663 6664 // The name of the security configuration. 6665 // 6666 // Name is a required field 6667 Name *string `type:"string" required:"true"` 6668 6669 // The security configuration details in JSON format. For JSON parameters and 6670 // examples, see Use Security Configurations to Set Up Cluster Security (https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-security-configurations.html) 6671 // in the Amazon EMR Management Guide. 6672 // 6673 // SecurityConfiguration is a required field 6674 SecurityConfiguration *string `type:"string" required:"true"` 6675} 6676 6677// String returns the string representation 6678func (s CreateSecurityConfigurationInput) String() string { 6679 return awsutil.Prettify(s) 6680} 6681 6682// GoString returns the string representation 6683func (s CreateSecurityConfigurationInput) GoString() string { 6684 return s.String() 6685} 6686 6687// Validate inspects the fields of the type to determine if they are valid. 6688func (s *CreateSecurityConfigurationInput) Validate() error { 6689 invalidParams := request.ErrInvalidParams{Context: "CreateSecurityConfigurationInput"} 6690 if s.Name == nil { 6691 invalidParams.Add(request.NewErrParamRequired("Name")) 6692 } 6693 if s.SecurityConfiguration == nil { 6694 invalidParams.Add(request.NewErrParamRequired("SecurityConfiguration")) 6695 } 6696 6697 if invalidParams.Len() > 0 { 6698 return invalidParams 6699 } 6700 return nil 6701} 6702 6703// SetName sets the Name field's value. 6704func (s *CreateSecurityConfigurationInput) SetName(v string) *CreateSecurityConfigurationInput { 6705 s.Name = &v 6706 return s 6707} 6708 6709// SetSecurityConfiguration sets the SecurityConfiguration field's value. 6710func (s *CreateSecurityConfigurationInput) SetSecurityConfiguration(v string) *CreateSecurityConfigurationInput { 6711 s.SecurityConfiguration = &v 6712 return s 6713} 6714 6715type CreateSecurityConfigurationOutput struct { 6716 _ struct{} `type:"structure"` 6717 6718 // The date and time the security configuration was created. 6719 // 6720 // CreationDateTime is a required field 6721 CreationDateTime *time.Time `type:"timestamp" required:"true"` 6722 6723 // The name of the security configuration. 6724 // 6725 // Name is a required field 6726 Name *string `type:"string" required:"true"` 6727} 6728 6729// String returns the string representation 6730func (s CreateSecurityConfigurationOutput) String() string { 6731 return awsutil.Prettify(s) 6732} 6733 6734// GoString returns the string representation 6735func (s CreateSecurityConfigurationOutput) GoString() string { 6736 return s.String() 6737} 6738 6739// SetCreationDateTime sets the CreationDateTime field's value. 6740func (s *CreateSecurityConfigurationOutput) SetCreationDateTime(v time.Time) *CreateSecurityConfigurationOutput { 6741 s.CreationDateTime = &v 6742 return s 6743} 6744 6745// SetName sets the Name field's value. 6746func (s *CreateSecurityConfigurationOutput) SetName(v string) *CreateSecurityConfigurationOutput { 6747 s.Name = &v 6748 return s 6749} 6750 6751type CreateStudioInput struct { 6752 _ struct{} `type:"structure"` 6753 6754 // Specifies whether the Studio authenticates users using single sign-on (SSO) 6755 // or IAM. Amazon EMR Studio currently only supports SSO authentication. 6756 // 6757 // AuthMode is a required field 6758 AuthMode *string `type:"string" required:"true" enum:"AuthMode"` 6759 6760 // The Amazon S3 location to back up Amazon EMR Studio Workspaces and notebook 6761 // files. 6762 // 6763 // DefaultS3Location is a required field 6764 DefaultS3Location *string `type:"string" required:"true"` 6765 6766 // A detailed description of the Amazon EMR Studio. 6767 Description *string `type:"string"` 6768 6769 // The ID of the Amazon EMR Studio Engine security group. The Engine security 6770 // group allows inbound network traffic from the Workspace security group, and 6771 // it must be in the same VPC specified by VpcId. 6772 // 6773 // EngineSecurityGroupId is a required field 6774 EngineSecurityGroupId *string `type:"string" required:"true"` 6775 6776 // A descriptive name for the Amazon EMR Studio. 6777 // 6778 // Name is a required field 6779 Name *string `type:"string" required:"true"` 6780 6781 // The IAM role that will be assumed by the Amazon EMR Studio. The service role 6782 // provides a way for Amazon EMR Studio to interoperate with other Amazon Web 6783 // Services services. 6784 // 6785 // ServiceRole is a required field 6786 ServiceRole *string `type:"string" required:"true"` 6787 6788 // A list of subnet IDs to associate with the Amazon EMR Studio. A Studio can 6789 // have a maximum of 5 subnets. The subnets must belong to the VPC specified 6790 // by VpcId. Studio users can create a Workspace in any of the specified subnets. 6791 // 6792 // SubnetIds is a required field 6793 SubnetIds []*string `type:"list" required:"true"` 6794 6795 // A list of tags to associate with the Amazon EMR Studio. Tags are user-defined 6796 // key-value pairs that consist of a required key string with a maximum of 128 6797 // characters, and an optional value string with a maximum of 256 characters. 6798 Tags []*Tag `type:"list"` 6799 6800 // The IAM user role that will be assumed by users and groups logged in to an 6801 // Amazon EMR Studio. The permissions attached to this IAM role can be scoped 6802 // down for each user or group using session policies. 6803 // 6804 // UserRole is a required field 6805 UserRole *string `type:"string" required:"true"` 6806 6807 // The ID of the Amazon Virtual Private Cloud (Amazon VPC) to associate with 6808 // the Studio. 6809 // 6810 // VpcId is a required field 6811 VpcId *string `type:"string" required:"true"` 6812 6813 // The ID of the Amazon EMR Studio Workspace security group. The Workspace security 6814 // group allows outbound network traffic to resources in the Engine security 6815 // group, and it must be in the same VPC specified by VpcId. 6816 // 6817 // WorkspaceSecurityGroupId is a required field 6818 WorkspaceSecurityGroupId *string `type:"string" required:"true"` 6819} 6820 6821// String returns the string representation 6822func (s CreateStudioInput) String() string { 6823 return awsutil.Prettify(s) 6824} 6825 6826// GoString returns the string representation 6827func (s CreateStudioInput) GoString() string { 6828 return s.String() 6829} 6830 6831// Validate inspects the fields of the type to determine if they are valid. 6832func (s *CreateStudioInput) Validate() error { 6833 invalidParams := request.ErrInvalidParams{Context: "CreateStudioInput"} 6834 if s.AuthMode == nil { 6835 invalidParams.Add(request.NewErrParamRequired("AuthMode")) 6836 } 6837 if s.DefaultS3Location == nil { 6838 invalidParams.Add(request.NewErrParamRequired("DefaultS3Location")) 6839 } 6840 if s.EngineSecurityGroupId == nil { 6841 invalidParams.Add(request.NewErrParamRequired("EngineSecurityGroupId")) 6842 } 6843 if s.Name == nil { 6844 invalidParams.Add(request.NewErrParamRequired("Name")) 6845 } 6846 if s.ServiceRole == nil { 6847 invalidParams.Add(request.NewErrParamRequired("ServiceRole")) 6848 } 6849 if s.SubnetIds == nil { 6850 invalidParams.Add(request.NewErrParamRequired("SubnetIds")) 6851 } 6852 if s.UserRole == nil { 6853 invalidParams.Add(request.NewErrParamRequired("UserRole")) 6854 } 6855 if s.VpcId == nil { 6856 invalidParams.Add(request.NewErrParamRequired("VpcId")) 6857 } 6858 if s.WorkspaceSecurityGroupId == nil { 6859 invalidParams.Add(request.NewErrParamRequired("WorkspaceSecurityGroupId")) 6860 } 6861 6862 if invalidParams.Len() > 0 { 6863 return invalidParams 6864 } 6865 return nil 6866} 6867 6868// SetAuthMode sets the AuthMode field's value. 6869func (s *CreateStudioInput) SetAuthMode(v string) *CreateStudioInput { 6870 s.AuthMode = &v 6871 return s 6872} 6873 6874// SetDefaultS3Location sets the DefaultS3Location field's value. 6875func (s *CreateStudioInput) SetDefaultS3Location(v string) *CreateStudioInput { 6876 s.DefaultS3Location = &v 6877 return s 6878} 6879 6880// SetDescription sets the Description field's value. 6881func (s *CreateStudioInput) SetDescription(v string) *CreateStudioInput { 6882 s.Description = &v 6883 return s 6884} 6885 6886// SetEngineSecurityGroupId sets the EngineSecurityGroupId field's value. 6887func (s *CreateStudioInput) SetEngineSecurityGroupId(v string) *CreateStudioInput { 6888 s.EngineSecurityGroupId = &v 6889 return s 6890} 6891 6892// SetName sets the Name field's value. 6893func (s *CreateStudioInput) SetName(v string) *CreateStudioInput { 6894 s.Name = &v 6895 return s 6896} 6897 6898// SetServiceRole sets the ServiceRole field's value. 6899func (s *CreateStudioInput) SetServiceRole(v string) *CreateStudioInput { 6900 s.ServiceRole = &v 6901 return s 6902} 6903 6904// SetSubnetIds sets the SubnetIds field's value. 6905func (s *CreateStudioInput) SetSubnetIds(v []*string) *CreateStudioInput { 6906 s.SubnetIds = v 6907 return s 6908} 6909 6910// SetTags sets the Tags field's value. 6911func (s *CreateStudioInput) SetTags(v []*Tag) *CreateStudioInput { 6912 s.Tags = v 6913 return s 6914} 6915 6916// SetUserRole sets the UserRole field's value. 6917func (s *CreateStudioInput) SetUserRole(v string) *CreateStudioInput { 6918 s.UserRole = &v 6919 return s 6920} 6921 6922// SetVpcId sets the VpcId field's value. 6923func (s *CreateStudioInput) SetVpcId(v string) *CreateStudioInput { 6924 s.VpcId = &v 6925 return s 6926} 6927 6928// SetWorkspaceSecurityGroupId sets the WorkspaceSecurityGroupId field's value. 6929func (s *CreateStudioInput) SetWorkspaceSecurityGroupId(v string) *CreateStudioInput { 6930 s.WorkspaceSecurityGroupId = &v 6931 return s 6932} 6933 6934type CreateStudioOutput struct { 6935 _ struct{} `type:"structure"` 6936 6937 // The ID of the Amazon EMR Studio. 6938 StudioId *string `type:"string"` 6939 6940 // The unique Studio access URL. 6941 Url *string `type:"string"` 6942} 6943 6944// String returns the string representation 6945func (s CreateStudioOutput) String() string { 6946 return awsutil.Prettify(s) 6947} 6948 6949// GoString returns the string representation 6950func (s CreateStudioOutput) GoString() string { 6951 return s.String() 6952} 6953 6954// SetStudioId sets the StudioId field's value. 6955func (s *CreateStudioOutput) SetStudioId(v string) *CreateStudioOutput { 6956 s.StudioId = &v 6957 return s 6958} 6959 6960// SetUrl sets the Url field's value. 6961func (s *CreateStudioOutput) SetUrl(v string) *CreateStudioOutput { 6962 s.Url = &v 6963 return s 6964} 6965 6966type CreateStudioSessionMappingInput struct { 6967 _ struct{} `type:"structure"` 6968 6969 // The globally unique identifier (GUID) of the user or group from the Amazon 6970 // Web Services SSO Identity Store. For more information, see UserId (https://docs.aws.amazon.com/singlesignon/latest/IdentityStoreAPIReference/API_User.html#singlesignon-Type-User-UserId) 6971 // and GroupId (https://docs.aws.amazon.com/singlesignon/latest/IdentityStoreAPIReference/API_Group.html#singlesignon-Type-Group-GroupId) 6972 // in the Amazon Web Services SSO Identity Store API Reference. Either IdentityName 6973 // or IdentityId must be specified, but not both. 6974 IdentityId *string `type:"string"` 6975 6976 // The name of the user or group. For more information, see UserName (https://docs.aws.amazon.com/singlesignon/latest/IdentityStoreAPIReference/API_User.html#singlesignon-Type-User-UserName) 6977 // and DisplayName (https://docs.aws.amazon.com/singlesignon/latest/IdentityStoreAPIReference/API_Group.html#singlesignon-Type-Group-DisplayName) 6978 // in the Amazon Web Services SSO Identity Store API Reference. Either IdentityName 6979 // or IdentityId must be specified, but not both. 6980 IdentityName *string `type:"string"` 6981 6982 // Specifies whether the identity to map to the Amazon EMR Studio is a user 6983 // or a group. 6984 // 6985 // IdentityType is a required field 6986 IdentityType *string `type:"string" required:"true" enum:"IdentityType"` 6987 6988 // The Amazon Resource Name (ARN) for the session policy that will be applied 6989 // to the user or group. You should specify the ARN for the session policy that 6990 // you want to apply, not the ARN of your user role. For more information, see 6991 // Create an EMR Studio User Role with Session Policies (https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-studio-user-role.html). 6992 // 6993 // SessionPolicyArn is a required field 6994 SessionPolicyArn *string `type:"string" required:"true"` 6995 6996 // The ID of the Amazon EMR Studio to which the user or group will be mapped. 6997 // 6998 // StudioId is a required field 6999 StudioId *string `type:"string" required:"true"` 7000} 7001 7002// String returns the string representation 7003func (s CreateStudioSessionMappingInput) String() string { 7004 return awsutil.Prettify(s) 7005} 7006 7007// GoString returns the string representation 7008func (s CreateStudioSessionMappingInput) GoString() string { 7009 return s.String() 7010} 7011 7012// Validate inspects the fields of the type to determine if they are valid. 7013func (s *CreateStudioSessionMappingInput) Validate() error { 7014 invalidParams := request.ErrInvalidParams{Context: "CreateStudioSessionMappingInput"} 7015 if s.IdentityType == nil { 7016 invalidParams.Add(request.NewErrParamRequired("IdentityType")) 7017 } 7018 if s.SessionPolicyArn == nil { 7019 invalidParams.Add(request.NewErrParamRequired("SessionPolicyArn")) 7020 } 7021 if s.StudioId == nil { 7022 invalidParams.Add(request.NewErrParamRequired("StudioId")) 7023 } 7024 7025 if invalidParams.Len() > 0 { 7026 return invalidParams 7027 } 7028 return nil 7029} 7030 7031// SetIdentityId sets the IdentityId field's value. 7032func (s *CreateStudioSessionMappingInput) SetIdentityId(v string) *CreateStudioSessionMappingInput { 7033 s.IdentityId = &v 7034 return s 7035} 7036 7037// SetIdentityName sets the IdentityName field's value. 7038func (s *CreateStudioSessionMappingInput) SetIdentityName(v string) *CreateStudioSessionMappingInput { 7039 s.IdentityName = &v 7040 return s 7041} 7042 7043// SetIdentityType sets the IdentityType field's value. 7044func (s *CreateStudioSessionMappingInput) SetIdentityType(v string) *CreateStudioSessionMappingInput { 7045 s.IdentityType = &v 7046 return s 7047} 7048 7049// SetSessionPolicyArn sets the SessionPolicyArn field's value. 7050func (s *CreateStudioSessionMappingInput) SetSessionPolicyArn(v string) *CreateStudioSessionMappingInput { 7051 s.SessionPolicyArn = &v 7052 return s 7053} 7054 7055// SetStudioId sets the StudioId field's value. 7056func (s *CreateStudioSessionMappingInput) SetStudioId(v string) *CreateStudioSessionMappingInput { 7057 s.StudioId = &v 7058 return s 7059} 7060 7061type CreateStudioSessionMappingOutput struct { 7062 _ struct{} `type:"structure"` 7063} 7064 7065// String returns the string representation 7066func (s CreateStudioSessionMappingOutput) String() string { 7067 return awsutil.Prettify(s) 7068} 7069 7070// GoString returns the string representation 7071func (s CreateStudioSessionMappingOutput) GoString() string { 7072 return s.String() 7073} 7074 7075type DeleteSecurityConfigurationInput struct { 7076 _ struct{} `type:"structure"` 7077 7078 // The name of the security configuration. 7079 // 7080 // Name is a required field 7081 Name *string `type:"string" required:"true"` 7082} 7083 7084// String returns the string representation 7085func (s DeleteSecurityConfigurationInput) String() string { 7086 return awsutil.Prettify(s) 7087} 7088 7089// GoString returns the string representation 7090func (s DeleteSecurityConfigurationInput) GoString() string { 7091 return s.String() 7092} 7093 7094// Validate inspects the fields of the type to determine if they are valid. 7095func (s *DeleteSecurityConfigurationInput) Validate() error { 7096 invalidParams := request.ErrInvalidParams{Context: "DeleteSecurityConfigurationInput"} 7097 if s.Name == nil { 7098 invalidParams.Add(request.NewErrParamRequired("Name")) 7099 } 7100 7101 if invalidParams.Len() > 0 { 7102 return invalidParams 7103 } 7104 return nil 7105} 7106 7107// SetName sets the Name field's value. 7108func (s *DeleteSecurityConfigurationInput) SetName(v string) *DeleteSecurityConfigurationInput { 7109 s.Name = &v 7110 return s 7111} 7112 7113type DeleteSecurityConfigurationOutput struct { 7114 _ struct{} `type:"structure"` 7115} 7116 7117// String returns the string representation 7118func (s DeleteSecurityConfigurationOutput) String() string { 7119 return awsutil.Prettify(s) 7120} 7121 7122// GoString returns the string representation 7123func (s DeleteSecurityConfigurationOutput) GoString() string { 7124 return s.String() 7125} 7126 7127type DeleteStudioInput struct { 7128 _ struct{} `type:"structure"` 7129 7130 // The ID of the Amazon EMR Studio. 7131 // 7132 // StudioId is a required field 7133 StudioId *string `type:"string" required:"true"` 7134} 7135 7136// String returns the string representation 7137func (s DeleteStudioInput) String() string { 7138 return awsutil.Prettify(s) 7139} 7140 7141// GoString returns the string representation 7142func (s DeleteStudioInput) GoString() string { 7143 return s.String() 7144} 7145 7146// Validate inspects the fields of the type to determine if they are valid. 7147func (s *DeleteStudioInput) Validate() error { 7148 invalidParams := request.ErrInvalidParams{Context: "DeleteStudioInput"} 7149 if s.StudioId == nil { 7150 invalidParams.Add(request.NewErrParamRequired("StudioId")) 7151 } 7152 7153 if invalidParams.Len() > 0 { 7154 return invalidParams 7155 } 7156 return nil 7157} 7158 7159// SetStudioId sets the StudioId field's value. 7160func (s *DeleteStudioInput) SetStudioId(v string) *DeleteStudioInput { 7161 s.StudioId = &v 7162 return s 7163} 7164 7165type DeleteStudioOutput struct { 7166 _ struct{} `type:"structure"` 7167} 7168 7169// String returns the string representation 7170func (s DeleteStudioOutput) String() string { 7171 return awsutil.Prettify(s) 7172} 7173 7174// GoString returns the string representation 7175func (s DeleteStudioOutput) GoString() string { 7176 return s.String() 7177} 7178 7179type DeleteStudioSessionMappingInput struct { 7180 _ struct{} `type:"structure"` 7181 7182 // The globally unique identifier (GUID) of the user or group to remove from 7183 // the Amazon EMR Studio. For more information, see UserId (https://docs.aws.amazon.com/singlesignon/latest/IdentityStoreAPIReference/API_User.html#singlesignon-Type-User-UserId) 7184 // and GroupId (https://docs.aws.amazon.com/singlesignon/latest/IdentityStoreAPIReference/API_Group.html#singlesignon-Type-Group-GroupId) 7185 // in the Amazon Web Services SSO Identity Store API Reference. Either IdentityName 7186 // or IdentityId must be specified. 7187 IdentityId *string `type:"string"` 7188 7189 // The name of the user name or group to remove from the Amazon EMR Studio. 7190 // For more information, see UserName (https://docs.aws.amazon.com/singlesignon/latest/IdentityStoreAPIReference/API_User.html#singlesignon-Type-User-UserName) 7191 // and DisplayName (https://docs.aws.amazon.com/singlesignon/latest/IdentityStoreAPIReference/API_Group.html#singlesignon-Type-Group-DisplayName) 7192 // in the Amazon Web Services SSO Store API Reference. Either IdentityName or 7193 // IdentityId must be specified. 7194 IdentityName *string `type:"string"` 7195 7196 // Specifies whether the identity to delete from the Amazon EMR Studio is a 7197 // user or a group. 7198 // 7199 // IdentityType is a required field 7200 IdentityType *string `type:"string" required:"true" enum:"IdentityType"` 7201 7202 // The ID of the Amazon EMR Studio. 7203 // 7204 // StudioId is a required field 7205 StudioId *string `type:"string" required:"true"` 7206} 7207 7208// String returns the string representation 7209func (s DeleteStudioSessionMappingInput) String() string { 7210 return awsutil.Prettify(s) 7211} 7212 7213// GoString returns the string representation 7214func (s DeleteStudioSessionMappingInput) GoString() string { 7215 return s.String() 7216} 7217 7218// Validate inspects the fields of the type to determine if they are valid. 7219func (s *DeleteStudioSessionMappingInput) Validate() error { 7220 invalidParams := request.ErrInvalidParams{Context: "DeleteStudioSessionMappingInput"} 7221 if s.IdentityType == nil { 7222 invalidParams.Add(request.NewErrParamRequired("IdentityType")) 7223 } 7224 if s.StudioId == nil { 7225 invalidParams.Add(request.NewErrParamRequired("StudioId")) 7226 } 7227 7228 if invalidParams.Len() > 0 { 7229 return invalidParams 7230 } 7231 return nil 7232} 7233 7234// SetIdentityId sets the IdentityId field's value. 7235func (s *DeleteStudioSessionMappingInput) SetIdentityId(v string) *DeleteStudioSessionMappingInput { 7236 s.IdentityId = &v 7237 return s 7238} 7239 7240// SetIdentityName sets the IdentityName field's value. 7241func (s *DeleteStudioSessionMappingInput) SetIdentityName(v string) *DeleteStudioSessionMappingInput { 7242 s.IdentityName = &v 7243 return s 7244} 7245 7246// SetIdentityType sets the IdentityType field's value. 7247func (s *DeleteStudioSessionMappingInput) SetIdentityType(v string) *DeleteStudioSessionMappingInput { 7248 s.IdentityType = &v 7249 return s 7250} 7251 7252// SetStudioId sets the StudioId field's value. 7253func (s *DeleteStudioSessionMappingInput) SetStudioId(v string) *DeleteStudioSessionMappingInput { 7254 s.StudioId = &v 7255 return s 7256} 7257 7258type DeleteStudioSessionMappingOutput struct { 7259 _ struct{} `type:"structure"` 7260} 7261 7262// String returns the string representation 7263func (s DeleteStudioSessionMappingOutput) String() string { 7264 return awsutil.Prettify(s) 7265} 7266 7267// GoString returns the string representation 7268func (s DeleteStudioSessionMappingOutput) GoString() string { 7269 return s.String() 7270} 7271 7272// This input determines which cluster to describe. 7273type DescribeClusterInput struct { 7274 _ struct{} `type:"structure"` 7275 7276 // The identifier of the cluster to describe. 7277 // 7278 // ClusterId is a required field 7279 ClusterId *string `type:"string" required:"true"` 7280} 7281 7282// String returns the string representation 7283func (s DescribeClusterInput) String() string { 7284 return awsutil.Prettify(s) 7285} 7286 7287// GoString returns the string representation 7288func (s DescribeClusterInput) GoString() string { 7289 return s.String() 7290} 7291 7292// Validate inspects the fields of the type to determine if they are valid. 7293func (s *DescribeClusterInput) Validate() error { 7294 invalidParams := request.ErrInvalidParams{Context: "DescribeClusterInput"} 7295 if s.ClusterId == nil { 7296 invalidParams.Add(request.NewErrParamRequired("ClusterId")) 7297 } 7298 7299 if invalidParams.Len() > 0 { 7300 return invalidParams 7301 } 7302 return nil 7303} 7304 7305// SetClusterId sets the ClusterId field's value. 7306func (s *DescribeClusterInput) SetClusterId(v string) *DescribeClusterInput { 7307 s.ClusterId = &v 7308 return s 7309} 7310 7311// This output contains the description of the cluster. 7312type DescribeClusterOutput struct { 7313 _ struct{} `type:"structure"` 7314 7315 // This output contains the details for the requested cluster. 7316 Cluster *Cluster `type:"structure"` 7317} 7318 7319// String returns the string representation 7320func (s DescribeClusterOutput) String() string { 7321 return awsutil.Prettify(s) 7322} 7323 7324// GoString returns the string representation 7325func (s DescribeClusterOutput) GoString() string { 7326 return s.String() 7327} 7328 7329// SetCluster sets the Cluster field's value. 7330func (s *DescribeClusterOutput) SetCluster(v *Cluster) *DescribeClusterOutput { 7331 s.Cluster = v 7332 return s 7333} 7334 7335// The input for the DescribeJobFlows operation. 7336type DescribeJobFlowsInput struct { 7337 _ struct{} `type:"structure"` 7338 7339 // Return only job flows created after this date and time. 7340 CreatedAfter *time.Time `type:"timestamp"` 7341 7342 // Return only job flows created before this date and time. 7343 CreatedBefore *time.Time `type:"timestamp"` 7344 7345 // Return only job flows whose job flow ID is contained in this list. 7346 JobFlowIds []*string `type:"list"` 7347 7348 // Return only job flows whose state is contained in this list. 7349 JobFlowStates []*string `type:"list"` 7350} 7351 7352// String returns the string representation 7353func (s DescribeJobFlowsInput) String() string { 7354 return awsutil.Prettify(s) 7355} 7356 7357// GoString returns the string representation 7358func (s DescribeJobFlowsInput) GoString() string { 7359 return s.String() 7360} 7361 7362// SetCreatedAfter sets the CreatedAfter field's value. 7363func (s *DescribeJobFlowsInput) SetCreatedAfter(v time.Time) *DescribeJobFlowsInput { 7364 s.CreatedAfter = &v 7365 return s 7366} 7367 7368// SetCreatedBefore sets the CreatedBefore field's value. 7369func (s *DescribeJobFlowsInput) SetCreatedBefore(v time.Time) *DescribeJobFlowsInput { 7370 s.CreatedBefore = &v 7371 return s 7372} 7373 7374// SetJobFlowIds sets the JobFlowIds field's value. 7375func (s *DescribeJobFlowsInput) SetJobFlowIds(v []*string) *DescribeJobFlowsInput { 7376 s.JobFlowIds = v 7377 return s 7378} 7379 7380// SetJobFlowStates sets the JobFlowStates field's value. 7381func (s *DescribeJobFlowsInput) SetJobFlowStates(v []*string) *DescribeJobFlowsInput { 7382 s.JobFlowStates = v 7383 return s 7384} 7385 7386// The output for the DescribeJobFlows operation. 7387type DescribeJobFlowsOutput struct { 7388 _ struct{} `type:"structure"` 7389 7390 // A list of job flows matching the parameters supplied. 7391 JobFlows []*JobFlowDetail `type:"list"` 7392} 7393 7394// String returns the string representation 7395func (s DescribeJobFlowsOutput) String() string { 7396 return awsutil.Prettify(s) 7397} 7398 7399// GoString returns the string representation 7400func (s DescribeJobFlowsOutput) GoString() string { 7401 return s.String() 7402} 7403 7404// SetJobFlows sets the JobFlows field's value. 7405func (s *DescribeJobFlowsOutput) SetJobFlows(v []*JobFlowDetail) *DescribeJobFlowsOutput { 7406 s.JobFlows = v 7407 return s 7408} 7409 7410type DescribeNotebookExecutionInput struct { 7411 _ struct{} `type:"structure"` 7412 7413 // The unique identifier of the notebook execution. 7414 // 7415 // NotebookExecutionId is a required field 7416 NotebookExecutionId *string `type:"string" required:"true"` 7417} 7418 7419// String returns the string representation 7420func (s DescribeNotebookExecutionInput) String() string { 7421 return awsutil.Prettify(s) 7422} 7423 7424// GoString returns the string representation 7425func (s DescribeNotebookExecutionInput) GoString() string { 7426 return s.String() 7427} 7428 7429// Validate inspects the fields of the type to determine if they are valid. 7430func (s *DescribeNotebookExecutionInput) Validate() error { 7431 invalidParams := request.ErrInvalidParams{Context: "DescribeNotebookExecutionInput"} 7432 if s.NotebookExecutionId == nil { 7433 invalidParams.Add(request.NewErrParamRequired("NotebookExecutionId")) 7434 } 7435 7436 if invalidParams.Len() > 0 { 7437 return invalidParams 7438 } 7439 return nil 7440} 7441 7442// SetNotebookExecutionId sets the NotebookExecutionId field's value. 7443func (s *DescribeNotebookExecutionInput) SetNotebookExecutionId(v string) *DescribeNotebookExecutionInput { 7444 s.NotebookExecutionId = &v 7445 return s 7446} 7447 7448type DescribeNotebookExecutionOutput struct { 7449 _ struct{} `type:"structure"` 7450 7451 // Properties of the notebook execution. 7452 NotebookExecution *NotebookExecution `type:"structure"` 7453} 7454 7455// String returns the string representation 7456func (s DescribeNotebookExecutionOutput) String() string { 7457 return awsutil.Prettify(s) 7458} 7459 7460// GoString returns the string representation 7461func (s DescribeNotebookExecutionOutput) GoString() string { 7462 return s.String() 7463} 7464 7465// SetNotebookExecution sets the NotebookExecution field's value. 7466func (s *DescribeNotebookExecutionOutput) SetNotebookExecution(v *NotebookExecution) *DescribeNotebookExecutionOutput { 7467 s.NotebookExecution = v 7468 return s 7469} 7470 7471type DescribeReleaseLabelInput struct { 7472 _ struct{} `type:"structure"` 7473 7474 // Reserved for future use. Currently set to null. 7475 MaxResults *int64 `min:"1" type:"integer"` 7476 7477 // The pagination token. Reserved for future use. Currently set to null. 7478 NextToken *string `type:"string"` 7479 7480 // The target release label to be described. 7481 ReleaseLabel *string `type:"string"` 7482} 7483 7484// String returns the string representation 7485func (s DescribeReleaseLabelInput) String() string { 7486 return awsutil.Prettify(s) 7487} 7488 7489// GoString returns the string representation 7490func (s DescribeReleaseLabelInput) GoString() string { 7491 return s.String() 7492} 7493 7494// Validate inspects the fields of the type to determine if they are valid. 7495func (s *DescribeReleaseLabelInput) Validate() error { 7496 invalidParams := request.ErrInvalidParams{Context: "DescribeReleaseLabelInput"} 7497 if s.MaxResults != nil && *s.MaxResults < 1 { 7498 invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) 7499 } 7500 7501 if invalidParams.Len() > 0 { 7502 return invalidParams 7503 } 7504 return nil 7505} 7506 7507// SetMaxResults sets the MaxResults field's value. 7508func (s *DescribeReleaseLabelInput) SetMaxResults(v int64) *DescribeReleaseLabelInput { 7509 s.MaxResults = &v 7510 return s 7511} 7512 7513// SetNextToken sets the NextToken field's value. 7514func (s *DescribeReleaseLabelInput) SetNextToken(v string) *DescribeReleaseLabelInput { 7515 s.NextToken = &v 7516 return s 7517} 7518 7519// SetReleaseLabel sets the ReleaseLabel field's value. 7520func (s *DescribeReleaseLabelInput) SetReleaseLabel(v string) *DescribeReleaseLabelInput { 7521 s.ReleaseLabel = &v 7522 return s 7523} 7524 7525type DescribeReleaseLabelOutput struct { 7526 _ struct{} `type:"structure"` 7527 7528 // The list of applications available for the target release label. Name is 7529 // the name of the application. Version is the concise version of the application. 7530 Applications []*SimplifiedApplication `type:"list"` 7531 7532 // The pagination token. Reserved for future use. Currently set to null. 7533 NextToken *string `type:"string"` 7534 7535 // The target release label described in the response. 7536 ReleaseLabel *string `type:"string"` 7537} 7538 7539// String returns the string representation 7540func (s DescribeReleaseLabelOutput) String() string { 7541 return awsutil.Prettify(s) 7542} 7543 7544// GoString returns the string representation 7545func (s DescribeReleaseLabelOutput) GoString() string { 7546 return s.String() 7547} 7548 7549// SetApplications sets the Applications field's value. 7550func (s *DescribeReleaseLabelOutput) SetApplications(v []*SimplifiedApplication) *DescribeReleaseLabelOutput { 7551 s.Applications = v 7552 return s 7553} 7554 7555// SetNextToken sets the NextToken field's value. 7556func (s *DescribeReleaseLabelOutput) SetNextToken(v string) *DescribeReleaseLabelOutput { 7557 s.NextToken = &v 7558 return s 7559} 7560 7561// SetReleaseLabel sets the ReleaseLabel field's value. 7562func (s *DescribeReleaseLabelOutput) SetReleaseLabel(v string) *DescribeReleaseLabelOutput { 7563 s.ReleaseLabel = &v 7564 return s 7565} 7566 7567type DescribeSecurityConfigurationInput struct { 7568 _ struct{} `type:"structure"` 7569 7570 // The name of the security configuration. 7571 // 7572 // Name is a required field 7573 Name *string `type:"string" required:"true"` 7574} 7575 7576// String returns the string representation 7577func (s DescribeSecurityConfigurationInput) String() string { 7578 return awsutil.Prettify(s) 7579} 7580 7581// GoString returns the string representation 7582func (s DescribeSecurityConfigurationInput) GoString() string { 7583 return s.String() 7584} 7585 7586// Validate inspects the fields of the type to determine if they are valid. 7587func (s *DescribeSecurityConfigurationInput) Validate() error { 7588 invalidParams := request.ErrInvalidParams{Context: "DescribeSecurityConfigurationInput"} 7589 if s.Name == nil { 7590 invalidParams.Add(request.NewErrParamRequired("Name")) 7591 } 7592 7593 if invalidParams.Len() > 0 { 7594 return invalidParams 7595 } 7596 return nil 7597} 7598 7599// SetName sets the Name field's value. 7600func (s *DescribeSecurityConfigurationInput) SetName(v string) *DescribeSecurityConfigurationInput { 7601 s.Name = &v 7602 return s 7603} 7604 7605type DescribeSecurityConfigurationOutput struct { 7606 _ struct{} `type:"structure"` 7607 7608 // The date and time the security configuration was created 7609 CreationDateTime *time.Time `type:"timestamp"` 7610 7611 // The name of the security configuration. 7612 Name *string `type:"string"` 7613 7614 // The security configuration details in JSON format. 7615 SecurityConfiguration *string `type:"string"` 7616} 7617 7618// String returns the string representation 7619func (s DescribeSecurityConfigurationOutput) String() string { 7620 return awsutil.Prettify(s) 7621} 7622 7623// GoString returns the string representation 7624func (s DescribeSecurityConfigurationOutput) GoString() string { 7625 return s.String() 7626} 7627 7628// SetCreationDateTime sets the CreationDateTime field's value. 7629func (s *DescribeSecurityConfigurationOutput) SetCreationDateTime(v time.Time) *DescribeSecurityConfigurationOutput { 7630 s.CreationDateTime = &v 7631 return s 7632} 7633 7634// SetName sets the Name field's value. 7635func (s *DescribeSecurityConfigurationOutput) SetName(v string) *DescribeSecurityConfigurationOutput { 7636 s.Name = &v 7637 return s 7638} 7639 7640// SetSecurityConfiguration sets the SecurityConfiguration field's value. 7641func (s *DescribeSecurityConfigurationOutput) SetSecurityConfiguration(v string) *DescribeSecurityConfigurationOutput { 7642 s.SecurityConfiguration = &v 7643 return s 7644} 7645 7646// This input determines which step to describe. 7647type DescribeStepInput struct { 7648 _ struct{} `type:"structure"` 7649 7650 // The identifier of the cluster with steps to describe. 7651 // 7652 // ClusterId is a required field 7653 ClusterId *string `type:"string" required:"true"` 7654 7655 // The identifier of the step to describe. 7656 // 7657 // StepId is a required field 7658 StepId *string `type:"string" required:"true"` 7659} 7660 7661// String returns the string representation 7662func (s DescribeStepInput) String() string { 7663 return awsutil.Prettify(s) 7664} 7665 7666// GoString returns the string representation 7667func (s DescribeStepInput) GoString() string { 7668 return s.String() 7669} 7670 7671// Validate inspects the fields of the type to determine if they are valid. 7672func (s *DescribeStepInput) Validate() error { 7673 invalidParams := request.ErrInvalidParams{Context: "DescribeStepInput"} 7674 if s.ClusterId == nil { 7675 invalidParams.Add(request.NewErrParamRequired("ClusterId")) 7676 } 7677 if s.StepId == nil { 7678 invalidParams.Add(request.NewErrParamRequired("StepId")) 7679 } 7680 7681 if invalidParams.Len() > 0 { 7682 return invalidParams 7683 } 7684 return nil 7685} 7686 7687// SetClusterId sets the ClusterId field's value. 7688func (s *DescribeStepInput) SetClusterId(v string) *DescribeStepInput { 7689 s.ClusterId = &v 7690 return s 7691} 7692 7693// SetStepId sets the StepId field's value. 7694func (s *DescribeStepInput) SetStepId(v string) *DescribeStepInput { 7695 s.StepId = &v 7696 return s 7697} 7698 7699// This output contains the description of the cluster step. 7700type DescribeStepOutput struct { 7701 _ struct{} `type:"structure"` 7702 7703 // The step details for the requested step identifier. 7704 Step *Step `type:"structure"` 7705} 7706 7707// String returns the string representation 7708func (s DescribeStepOutput) String() string { 7709 return awsutil.Prettify(s) 7710} 7711 7712// GoString returns the string representation 7713func (s DescribeStepOutput) GoString() string { 7714 return s.String() 7715} 7716 7717// SetStep sets the Step field's value. 7718func (s *DescribeStepOutput) SetStep(v *Step) *DescribeStepOutput { 7719 s.Step = v 7720 return s 7721} 7722 7723type DescribeStudioInput struct { 7724 _ struct{} `type:"structure"` 7725 7726 // The Amazon EMR Studio ID. 7727 // 7728 // StudioId is a required field 7729 StudioId *string `type:"string" required:"true"` 7730} 7731 7732// String returns the string representation 7733func (s DescribeStudioInput) String() string { 7734 return awsutil.Prettify(s) 7735} 7736 7737// GoString returns the string representation 7738func (s DescribeStudioInput) GoString() string { 7739 return s.String() 7740} 7741 7742// Validate inspects the fields of the type to determine if they are valid. 7743func (s *DescribeStudioInput) Validate() error { 7744 invalidParams := request.ErrInvalidParams{Context: "DescribeStudioInput"} 7745 if s.StudioId == nil { 7746 invalidParams.Add(request.NewErrParamRequired("StudioId")) 7747 } 7748 7749 if invalidParams.Len() > 0 { 7750 return invalidParams 7751 } 7752 return nil 7753} 7754 7755// SetStudioId sets the StudioId field's value. 7756func (s *DescribeStudioInput) SetStudioId(v string) *DescribeStudioInput { 7757 s.StudioId = &v 7758 return s 7759} 7760 7761type DescribeStudioOutput struct { 7762 _ struct{} `type:"structure"` 7763 7764 // The Amazon EMR Studio details. 7765 Studio *Studio `type:"structure"` 7766} 7767 7768// String returns the string representation 7769func (s DescribeStudioOutput) String() string { 7770 return awsutil.Prettify(s) 7771} 7772 7773// GoString returns the string representation 7774func (s DescribeStudioOutput) GoString() string { 7775 return s.String() 7776} 7777 7778// SetStudio sets the Studio field's value. 7779func (s *DescribeStudioOutput) SetStudio(v *Studio) *DescribeStudioOutput { 7780 s.Studio = v 7781 return s 7782} 7783 7784// Configuration of requested EBS block device associated with the instance 7785// group. 7786type EbsBlockDevice struct { 7787 _ struct{} `type:"structure"` 7788 7789 // The device name that is exposed to the instance, such as /dev/sdh. 7790 Device *string `type:"string"` 7791 7792 // EBS volume specifications such as volume type, IOPS, and size (GiB) that 7793 // will be requested for the EBS volume attached to an EC2 instance in the cluster. 7794 VolumeSpecification *VolumeSpecification `type:"structure"` 7795} 7796 7797// String returns the string representation 7798func (s EbsBlockDevice) String() string { 7799 return awsutil.Prettify(s) 7800} 7801 7802// GoString returns the string representation 7803func (s EbsBlockDevice) GoString() string { 7804 return s.String() 7805} 7806 7807// SetDevice sets the Device field's value. 7808func (s *EbsBlockDevice) SetDevice(v string) *EbsBlockDevice { 7809 s.Device = &v 7810 return s 7811} 7812 7813// SetVolumeSpecification sets the VolumeSpecification field's value. 7814func (s *EbsBlockDevice) SetVolumeSpecification(v *VolumeSpecification) *EbsBlockDevice { 7815 s.VolumeSpecification = v 7816 return s 7817} 7818 7819// Configuration of requested EBS block device associated with the instance 7820// group with count of volumes that will be associated to every instance. 7821type EbsBlockDeviceConfig struct { 7822 _ struct{} `type:"structure"` 7823 7824 // EBS volume specifications such as volume type, IOPS, and size (GiB) that 7825 // will be requested for the EBS volume attached to an EC2 instance in the cluster. 7826 // 7827 // VolumeSpecification is a required field 7828 VolumeSpecification *VolumeSpecification `type:"structure" required:"true"` 7829 7830 // Number of EBS volumes with a specific volume configuration that will be associated 7831 // with every instance in the instance group 7832 VolumesPerInstance *int64 `type:"integer"` 7833} 7834 7835// String returns the string representation 7836func (s EbsBlockDeviceConfig) String() string { 7837 return awsutil.Prettify(s) 7838} 7839 7840// GoString returns the string representation 7841func (s EbsBlockDeviceConfig) GoString() string { 7842 return s.String() 7843} 7844 7845// Validate inspects the fields of the type to determine if they are valid. 7846func (s *EbsBlockDeviceConfig) Validate() error { 7847 invalidParams := request.ErrInvalidParams{Context: "EbsBlockDeviceConfig"} 7848 if s.VolumeSpecification == nil { 7849 invalidParams.Add(request.NewErrParamRequired("VolumeSpecification")) 7850 } 7851 if s.VolumeSpecification != nil { 7852 if err := s.VolumeSpecification.Validate(); err != nil { 7853 invalidParams.AddNested("VolumeSpecification", err.(request.ErrInvalidParams)) 7854 } 7855 } 7856 7857 if invalidParams.Len() > 0 { 7858 return invalidParams 7859 } 7860 return nil 7861} 7862 7863// SetVolumeSpecification sets the VolumeSpecification field's value. 7864func (s *EbsBlockDeviceConfig) SetVolumeSpecification(v *VolumeSpecification) *EbsBlockDeviceConfig { 7865 s.VolumeSpecification = v 7866 return s 7867} 7868 7869// SetVolumesPerInstance sets the VolumesPerInstance field's value. 7870func (s *EbsBlockDeviceConfig) SetVolumesPerInstance(v int64) *EbsBlockDeviceConfig { 7871 s.VolumesPerInstance = &v 7872 return s 7873} 7874 7875// The Amazon EBS configuration of a cluster instance. 7876type EbsConfiguration struct { 7877 _ struct{} `type:"structure"` 7878 7879 // An array of Amazon EBS volume specifications attached to a cluster instance. 7880 EbsBlockDeviceConfigs []*EbsBlockDeviceConfig `type:"list"` 7881 7882 // Indicates whether an Amazon EBS volume is EBS-optimized. 7883 EbsOptimized *bool `type:"boolean"` 7884} 7885 7886// String returns the string representation 7887func (s EbsConfiguration) String() string { 7888 return awsutil.Prettify(s) 7889} 7890 7891// GoString returns the string representation 7892func (s EbsConfiguration) GoString() string { 7893 return s.String() 7894} 7895 7896// Validate inspects the fields of the type to determine if they are valid. 7897func (s *EbsConfiguration) Validate() error { 7898 invalidParams := request.ErrInvalidParams{Context: "EbsConfiguration"} 7899 if s.EbsBlockDeviceConfigs != nil { 7900 for i, v := range s.EbsBlockDeviceConfigs { 7901 if v == nil { 7902 continue 7903 } 7904 if err := v.Validate(); err != nil { 7905 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "EbsBlockDeviceConfigs", i), err.(request.ErrInvalidParams)) 7906 } 7907 } 7908 } 7909 7910 if invalidParams.Len() > 0 { 7911 return invalidParams 7912 } 7913 return nil 7914} 7915 7916// SetEbsBlockDeviceConfigs sets the EbsBlockDeviceConfigs field's value. 7917func (s *EbsConfiguration) SetEbsBlockDeviceConfigs(v []*EbsBlockDeviceConfig) *EbsConfiguration { 7918 s.EbsBlockDeviceConfigs = v 7919 return s 7920} 7921 7922// SetEbsOptimized sets the EbsOptimized field's value. 7923func (s *EbsConfiguration) SetEbsOptimized(v bool) *EbsConfiguration { 7924 s.EbsOptimized = &v 7925 return s 7926} 7927 7928// EBS block device that's attached to an EC2 instance. 7929type EbsVolume struct { 7930 _ struct{} `type:"structure"` 7931 7932 // The device name that is exposed to the instance, such as /dev/sdh. 7933 Device *string `type:"string"` 7934 7935 // The volume identifier of the EBS volume. 7936 VolumeId *string `type:"string"` 7937} 7938 7939// String returns the string representation 7940func (s EbsVolume) String() string { 7941 return awsutil.Prettify(s) 7942} 7943 7944// GoString returns the string representation 7945func (s EbsVolume) GoString() string { 7946 return s.String() 7947} 7948 7949// SetDevice sets the Device field's value. 7950func (s *EbsVolume) SetDevice(v string) *EbsVolume { 7951 s.Device = &v 7952 return s 7953} 7954 7955// SetVolumeId sets the VolumeId field's value. 7956func (s *EbsVolume) SetVolumeId(v string) *EbsVolume { 7957 s.VolumeId = &v 7958 return s 7959} 7960 7961// Provides information about the EC2 instances in a cluster grouped by category. 7962// For example, key name, subnet ID, IAM instance profile, and so on. 7963type Ec2InstanceAttributes struct { 7964 _ struct{} `type:"structure"` 7965 7966 // A list of additional Amazon EC2 security group IDs for the master node. 7967 AdditionalMasterSecurityGroups []*string `type:"list"` 7968 7969 // A list of additional Amazon EC2 security group IDs for the core and task 7970 // nodes. 7971 AdditionalSlaveSecurityGroups []*string `type:"list"` 7972 7973 // The Availability Zone in which the cluster will run. 7974 Ec2AvailabilityZone *string `type:"string"` 7975 7976 // The name of the Amazon EC2 key pair to use when connecting with SSH into 7977 // the master node as a user named "hadoop". 7978 Ec2KeyName *string `type:"string"` 7979 7980 // Set this parameter to the identifier of the Amazon VPC subnet where you want 7981 // the cluster to launch. If you do not specify this value, and your account 7982 // supports EC2-Classic, the cluster launches in EC2-Classic. 7983 Ec2SubnetId *string `type:"string"` 7984 7985 // The identifier of the Amazon EC2 security group for the master node. 7986 EmrManagedMasterSecurityGroup *string `type:"string"` 7987 7988 // The identifier of the Amazon EC2 security group for the core and task nodes. 7989 EmrManagedSlaveSecurityGroup *string `type:"string"` 7990 7991 // The IAM role that was specified when the cluster was launched. The EC2 instances 7992 // of the cluster assume this role. 7993 IamInstanceProfile *string `type:"string"` 7994 7995 // Applies to clusters configured with the instance fleets option. Specifies 7996 // one or more Availability Zones in which to launch EC2 cluster instances when 7997 // the EC2-Classic network configuration is supported. Amazon EMR chooses the 7998 // Availability Zone with the best fit from among the list of RequestedEc2AvailabilityZones, 7999 // and then launches all cluster instances within that Availability Zone. If 8000 // you do not specify this value, Amazon EMR chooses the Availability Zone for 8001 // you. RequestedEc2SubnetIDs and RequestedEc2AvailabilityZones cannot be specified 8002 // together. 8003 RequestedEc2AvailabilityZones []*string `type:"list"` 8004 8005 // Applies to clusters configured with the instance fleets option. Specifies 8006 // the unique identifier of one or more Amazon EC2 subnets in which to launch 8007 // EC2 cluster instances. Subnets must exist within the same VPC. Amazon EMR 8008 // chooses the EC2 subnet with the best fit from among the list of RequestedEc2SubnetIds, 8009 // and then launches all cluster instances within that Subnet. If this value 8010 // is not specified, and the account and Region support EC2-Classic networks, 8011 // the cluster launches instances in the EC2-Classic network and uses RequestedEc2AvailabilityZones 8012 // instead of this setting. If EC2-Classic is not supported, and no Subnet is 8013 // specified, Amazon EMR chooses the subnet for you. RequestedEc2SubnetIDs and 8014 // RequestedEc2AvailabilityZones cannot be specified together. 8015 RequestedEc2SubnetIds []*string `type:"list"` 8016 8017 // The identifier of the Amazon EC2 security group for the Amazon EMR service 8018 // to access clusters in VPC private subnets. 8019 ServiceAccessSecurityGroup *string `type:"string"` 8020} 8021 8022// String returns the string representation 8023func (s Ec2InstanceAttributes) String() string { 8024 return awsutil.Prettify(s) 8025} 8026 8027// GoString returns the string representation 8028func (s Ec2InstanceAttributes) GoString() string { 8029 return s.String() 8030} 8031 8032// SetAdditionalMasterSecurityGroups sets the AdditionalMasterSecurityGroups field's value. 8033func (s *Ec2InstanceAttributes) SetAdditionalMasterSecurityGroups(v []*string) *Ec2InstanceAttributes { 8034 s.AdditionalMasterSecurityGroups = v 8035 return s 8036} 8037 8038// SetAdditionalSlaveSecurityGroups sets the AdditionalSlaveSecurityGroups field's value. 8039func (s *Ec2InstanceAttributes) SetAdditionalSlaveSecurityGroups(v []*string) *Ec2InstanceAttributes { 8040 s.AdditionalSlaveSecurityGroups = v 8041 return s 8042} 8043 8044// SetEc2AvailabilityZone sets the Ec2AvailabilityZone field's value. 8045func (s *Ec2InstanceAttributes) SetEc2AvailabilityZone(v string) *Ec2InstanceAttributes { 8046 s.Ec2AvailabilityZone = &v 8047 return s 8048} 8049 8050// SetEc2KeyName sets the Ec2KeyName field's value. 8051func (s *Ec2InstanceAttributes) SetEc2KeyName(v string) *Ec2InstanceAttributes { 8052 s.Ec2KeyName = &v 8053 return s 8054} 8055 8056// SetEc2SubnetId sets the Ec2SubnetId field's value. 8057func (s *Ec2InstanceAttributes) SetEc2SubnetId(v string) *Ec2InstanceAttributes { 8058 s.Ec2SubnetId = &v 8059 return s 8060} 8061 8062// SetEmrManagedMasterSecurityGroup sets the EmrManagedMasterSecurityGroup field's value. 8063func (s *Ec2InstanceAttributes) SetEmrManagedMasterSecurityGroup(v string) *Ec2InstanceAttributes { 8064 s.EmrManagedMasterSecurityGroup = &v 8065 return s 8066} 8067 8068// SetEmrManagedSlaveSecurityGroup sets the EmrManagedSlaveSecurityGroup field's value. 8069func (s *Ec2InstanceAttributes) SetEmrManagedSlaveSecurityGroup(v string) *Ec2InstanceAttributes { 8070 s.EmrManagedSlaveSecurityGroup = &v 8071 return s 8072} 8073 8074// SetIamInstanceProfile sets the IamInstanceProfile field's value. 8075func (s *Ec2InstanceAttributes) SetIamInstanceProfile(v string) *Ec2InstanceAttributes { 8076 s.IamInstanceProfile = &v 8077 return s 8078} 8079 8080// SetRequestedEc2AvailabilityZones sets the RequestedEc2AvailabilityZones field's value. 8081func (s *Ec2InstanceAttributes) SetRequestedEc2AvailabilityZones(v []*string) *Ec2InstanceAttributes { 8082 s.RequestedEc2AvailabilityZones = v 8083 return s 8084} 8085 8086// SetRequestedEc2SubnetIds sets the RequestedEc2SubnetIds field's value. 8087func (s *Ec2InstanceAttributes) SetRequestedEc2SubnetIds(v []*string) *Ec2InstanceAttributes { 8088 s.RequestedEc2SubnetIds = v 8089 return s 8090} 8091 8092// SetServiceAccessSecurityGroup sets the ServiceAccessSecurityGroup field's value. 8093func (s *Ec2InstanceAttributes) SetServiceAccessSecurityGroup(v string) *Ec2InstanceAttributes { 8094 s.ServiceAccessSecurityGroup = &v 8095 return s 8096} 8097 8098// Specifies the execution engine (cluster) to run the notebook and perform 8099// the notebook execution, for example, an EMR cluster. 8100type ExecutionEngineConfig struct { 8101 _ struct{} `type:"structure"` 8102 8103 // The unique identifier of the execution engine. For an EMR cluster, this is 8104 // the cluster ID. 8105 // 8106 // Id is a required field 8107 Id *string `type:"string" required:"true"` 8108 8109 // An optional unique ID of an EC2 security group to associate with the master 8110 // instance of the EMR cluster for this notebook execution. For more information 8111 // see Specifying EC2 Security Groups for EMR Notebooks (https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-managed-notebooks-security-groups.html) 8112 // in the EMR Management Guide. 8113 MasterInstanceSecurityGroupId *string `type:"string"` 8114 8115 // The type of execution engine. A value of EMR specifies an EMR cluster. 8116 Type *string `type:"string" enum:"ExecutionEngineType"` 8117} 8118 8119// String returns the string representation 8120func (s ExecutionEngineConfig) String() string { 8121 return awsutil.Prettify(s) 8122} 8123 8124// GoString returns the string representation 8125func (s ExecutionEngineConfig) GoString() string { 8126 return s.String() 8127} 8128 8129// Validate inspects the fields of the type to determine if they are valid. 8130func (s *ExecutionEngineConfig) Validate() error { 8131 invalidParams := request.ErrInvalidParams{Context: "ExecutionEngineConfig"} 8132 if s.Id == nil { 8133 invalidParams.Add(request.NewErrParamRequired("Id")) 8134 } 8135 8136 if invalidParams.Len() > 0 { 8137 return invalidParams 8138 } 8139 return nil 8140} 8141 8142// SetId sets the Id field's value. 8143func (s *ExecutionEngineConfig) SetId(v string) *ExecutionEngineConfig { 8144 s.Id = &v 8145 return s 8146} 8147 8148// SetMasterInstanceSecurityGroupId sets the MasterInstanceSecurityGroupId field's value. 8149func (s *ExecutionEngineConfig) SetMasterInstanceSecurityGroupId(v string) *ExecutionEngineConfig { 8150 s.MasterInstanceSecurityGroupId = &v 8151 return s 8152} 8153 8154// SetType sets the Type field's value. 8155func (s *ExecutionEngineConfig) SetType(v string) *ExecutionEngineConfig { 8156 s.Type = &v 8157 return s 8158} 8159 8160// The details of the step failure. The service attempts to detect the root 8161// cause for many common failures. 8162type FailureDetails struct { 8163 _ struct{} `type:"structure"` 8164 8165 // The path to the log file where the step failure root cause was originally 8166 // recorded. 8167 LogFile *string `type:"string"` 8168 8169 // The descriptive message including the error the Amazon EMR service has identified 8170 // as the cause of step failure. This is text from an error log that describes 8171 // the root cause of the failure. 8172 Message *string `type:"string"` 8173 8174 // The reason for the step failure. In the case where the service cannot successfully 8175 // determine the root cause of the failure, it returns "Unknown Error" as a 8176 // reason. 8177 Reason *string `type:"string"` 8178} 8179 8180// String returns the string representation 8181func (s FailureDetails) String() string { 8182 return awsutil.Prettify(s) 8183} 8184 8185// GoString returns the string representation 8186func (s FailureDetails) GoString() string { 8187 return s.String() 8188} 8189 8190// SetLogFile sets the LogFile field's value. 8191func (s *FailureDetails) SetLogFile(v string) *FailureDetails { 8192 s.LogFile = &v 8193 return s 8194} 8195 8196// SetMessage sets the Message field's value. 8197func (s *FailureDetails) SetMessage(v string) *FailureDetails { 8198 s.Message = &v 8199 return s 8200} 8201 8202// SetReason sets the Reason field's value. 8203func (s *FailureDetails) SetReason(v string) *FailureDetails { 8204 s.Reason = &v 8205 return s 8206} 8207 8208type GetBlockPublicAccessConfigurationInput struct { 8209 _ struct{} `type:"structure"` 8210} 8211 8212// String returns the string representation 8213func (s GetBlockPublicAccessConfigurationInput) String() string { 8214 return awsutil.Prettify(s) 8215} 8216 8217// GoString returns the string representation 8218func (s GetBlockPublicAccessConfigurationInput) GoString() string { 8219 return s.String() 8220} 8221 8222type GetBlockPublicAccessConfigurationOutput struct { 8223 _ struct{} `type:"structure"` 8224 8225 // A configuration for Amazon EMR block public access. The configuration applies 8226 // to all clusters created in your account for the current Region. The configuration 8227 // specifies whether block public access is enabled. If block public access 8228 // is enabled, security groups associated with the cluster cannot have rules 8229 // that allow inbound traffic from 0.0.0.0/0 or ::/0 on a port, unless the port 8230 // is specified as an exception using PermittedPublicSecurityGroupRuleRanges 8231 // in the BlockPublicAccessConfiguration. By default, Port 22 (SSH) is an exception, 8232 // and public access is allowed on this port. You can change this by updating 8233 // the block public access configuration to remove the exception. 8234 // 8235 // For accounts that created clusters in a Region before November 25, 2019, 8236 // block public access is disabled by default in that Region. To use this feature, 8237 // you must manually enable and configure it. For accounts that did not create 8238 // an EMR cluster in a Region before this date, block public access is enabled 8239 // by default in that Region. 8240 // 8241 // BlockPublicAccessConfiguration is a required field 8242 BlockPublicAccessConfiguration *BlockPublicAccessConfiguration `type:"structure" required:"true"` 8243 8244 // Properties that describe the Amazon Web Services principal that created the 8245 // BlockPublicAccessConfiguration using the PutBlockPublicAccessConfiguration 8246 // action as well as the date and time that the configuration was created. Each 8247 // time a configuration for block public access is updated, Amazon EMR updates 8248 // this metadata. 8249 // 8250 // BlockPublicAccessConfigurationMetadata is a required field 8251 BlockPublicAccessConfigurationMetadata *BlockPublicAccessConfigurationMetadata `type:"structure" required:"true"` 8252} 8253 8254// String returns the string representation 8255func (s GetBlockPublicAccessConfigurationOutput) String() string { 8256 return awsutil.Prettify(s) 8257} 8258 8259// GoString returns the string representation 8260func (s GetBlockPublicAccessConfigurationOutput) GoString() string { 8261 return s.String() 8262} 8263 8264// SetBlockPublicAccessConfiguration sets the BlockPublicAccessConfiguration field's value. 8265func (s *GetBlockPublicAccessConfigurationOutput) SetBlockPublicAccessConfiguration(v *BlockPublicAccessConfiguration) *GetBlockPublicAccessConfigurationOutput { 8266 s.BlockPublicAccessConfiguration = v 8267 return s 8268} 8269 8270// SetBlockPublicAccessConfigurationMetadata sets the BlockPublicAccessConfigurationMetadata field's value. 8271func (s *GetBlockPublicAccessConfigurationOutput) SetBlockPublicAccessConfigurationMetadata(v *BlockPublicAccessConfigurationMetadata) *GetBlockPublicAccessConfigurationOutput { 8272 s.BlockPublicAccessConfigurationMetadata = v 8273 return s 8274} 8275 8276type GetManagedScalingPolicyInput struct { 8277 _ struct{} `type:"structure"` 8278 8279 // Specifies the ID of the cluster for which the managed scaling policy will 8280 // be fetched. 8281 // 8282 // ClusterId is a required field 8283 ClusterId *string `type:"string" required:"true"` 8284} 8285 8286// String returns the string representation 8287func (s GetManagedScalingPolicyInput) String() string { 8288 return awsutil.Prettify(s) 8289} 8290 8291// GoString returns the string representation 8292func (s GetManagedScalingPolicyInput) GoString() string { 8293 return s.String() 8294} 8295 8296// Validate inspects the fields of the type to determine if they are valid. 8297func (s *GetManagedScalingPolicyInput) Validate() error { 8298 invalidParams := request.ErrInvalidParams{Context: "GetManagedScalingPolicyInput"} 8299 if s.ClusterId == nil { 8300 invalidParams.Add(request.NewErrParamRequired("ClusterId")) 8301 } 8302 8303 if invalidParams.Len() > 0 { 8304 return invalidParams 8305 } 8306 return nil 8307} 8308 8309// SetClusterId sets the ClusterId field's value. 8310func (s *GetManagedScalingPolicyInput) SetClusterId(v string) *GetManagedScalingPolicyInput { 8311 s.ClusterId = &v 8312 return s 8313} 8314 8315type GetManagedScalingPolicyOutput struct { 8316 _ struct{} `type:"structure"` 8317 8318 // Specifies the managed scaling policy that is attached to an Amazon EMR cluster. 8319 ManagedScalingPolicy *ManagedScalingPolicy `type:"structure"` 8320} 8321 8322// String returns the string representation 8323func (s GetManagedScalingPolicyOutput) String() string { 8324 return awsutil.Prettify(s) 8325} 8326 8327// GoString returns the string representation 8328func (s GetManagedScalingPolicyOutput) GoString() string { 8329 return s.String() 8330} 8331 8332// SetManagedScalingPolicy sets the ManagedScalingPolicy field's value. 8333func (s *GetManagedScalingPolicyOutput) SetManagedScalingPolicy(v *ManagedScalingPolicy) *GetManagedScalingPolicyOutput { 8334 s.ManagedScalingPolicy = v 8335 return s 8336} 8337 8338type GetStudioSessionMappingInput struct { 8339 _ struct{} `type:"structure"` 8340 8341 // The globally unique identifier (GUID) of the user or group. For more information, 8342 // see UserId (https://docs.aws.amazon.com/singlesignon/latest/IdentityStoreAPIReference/API_User.html#singlesignon-Type-User-UserId) 8343 // and GroupId (https://docs.aws.amazon.com/singlesignon/latest/IdentityStoreAPIReference/API_Group.html#singlesignon-Type-Group-GroupId) 8344 // in the Amazon Web Services SSO Identity Store API Reference. Either IdentityName 8345 // or IdentityId must be specified. 8346 IdentityId *string `type:"string"` 8347 8348 // The name of the user or group to fetch. For more information, see UserName 8349 // (https://docs.aws.amazon.com/singlesignon/latest/IdentityStoreAPIReference/API_User.html#singlesignon-Type-User-UserName) 8350 // and DisplayName (https://docs.aws.amazon.com/singlesignon/latest/IdentityStoreAPIReference/API_Group.html#singlesignon-Type-Group-DisplayName) 8351 // in the Amazon Web Services SSO Identity Store API Reference. Either IdentityName 8352 // or IdentityId must be specified. 8353 IdentityName *string `type:"string"` 8354 8355 // Specifies whether the identity to fetch is a user or a group. 8356 // 8357 // IdentityType is a required field 8358 IdentityType *string `type:"string" required:"true" enum:"IdentityType"` 8359 8360 // The ID of the Amazon EMR Studio. 8361 // 8362 // StudioId is a required field 8363 StudioId *string `type:"string" required:"true"` 8364} 8365 8366// String returns the string representation 8367func (s GetStudioSessionMappingInput) String() string { 8368 return awsutil.Prettify(s) 8369} 8370 8371// GoString returns the string representation 8372func (s GetStudioSessionMappingInput) GoString() string { 8373 return s.String() 8374} 8375 8376// Validate inspects the fields of the type to determine if they are valid. 8377func (s *GetStudioSessionMappingInput) Validate() error { 8378 invalidParams := request.ErrInvalidParams{Context: "GetStudioSessionMappingInput"} 8379 if s.IdentityType == nil { 8380 invalidParams.Add(request.NewErrParamRequired("IdentityType")) 8381 } 8382 if s.StudioId == nil { 8383 invalidParams.Add(request.NewErrParamRequired("StudioId")) 8384 } 8385 8386 if invalidParams.Len() > 0 { 8387 return invalidParams 8388 } 8389 return nil 8390} 8391 8392// SetIdentityId sets the IdentityId field's value. 8393func (s *GetStudioSessionMappingInput) SetIdentityId(v string) *GetStudioSessionMappingInput { 8394 s.IdentityId = &v 8395 return s 8396} 8397 8398// SetIdentityName sets the IdentityName field's value. 8399func (s *GetStudioSessionMappingInput) SetIdentityName(v string) *GetStudioSessionMappingInput { 8400 s.IdentityName = &v 8401 return s 8402} 8403 8404// SetIdentityType sets the IdentityType field's value. 8405func (s *GetStudioSessionMappingInput) SetIdentityType(v string) *GetStudioSessionMappingInput { 8406 s.IdentityType = &v 8407 return s 8408} 8409 8410// SetStudioId sets the StudioId field's value. 8411func (s *GetStudioSessionMappingInput) SetStudioId(v string) *GetStudioSessionMappingInput { 8412 s.StudioId = &v 8413 return s 8414} 8415 8416type GetStudioSessionMappingOutput struct { 8417 _ struct{} `type:"structure"` 8418 8419 // The session mapping details for the specified Amazon EMR Studio and identity, 8420 // including session policy ARN and creation time. 8421 SessionMapping *SessionMappingDetail `type:"structure"` 8422} 8423 8424// String returns the string representation 8425func (s GetStudioSessionMappingOutput) String() string { 8426 return awsutil.Prettify(s) 8427} 8428 8429// GoString returns the string representation 8430func (s GetStudioSessionMappingOutput) GoString() string { 8431 return s.String() 8432} 8433 8434// SetSessionMapping sets the SessionMapping field's value. 8435func (s *GetStudioSessionMappingOutput) SetSessionMapping(v *SessionMappingDetail) *GetStudioSessionMappingOutput { 8436 s.SessionMapping = v 8437 return s 8438} 8439 8440// A job flow step consisting of a JAR file whose main function will be executed. 8441// The main function submits a job for Hadoop to execute and waits for the job 8442// to finish or fail. 8443type HadoopJarStepConfig struct { 8444 _ struct{} `type:"structure"` 8445 8446 // A list of command line arguments passed to the JAR file's main function when 8447 // executed. 8448 Args []*string `type:"list"` 8449 8450 // A path to a JAR file run during the step. 8451 // 8452 // Jar is a required field 8453 Jar *string `type:"string" required:"true"` 8454 8455 // The name of the main class in the specified Java file. If not specified, 8456 // the JAR file should specify a Main-Class in its manifest file. 8457 MainClass *string `type:"string"` 8458 8459 // A list of Java properties that are set when the step runs. You can use these 8460 // properties to pass key-value pairs to your main function. 8461 Properties []*KeyValue `type:"list"` 8462} 8463 8464// String returns the string representation 8465func (s HadoopJarStepConfig) String() string { 8466 return awsutil.Prettify(s) 8467} 8468 8469// GoString returns the string representation 8470func (s HadoopJarStepConfig) GoString() string { 8471 return s.String() 8472} 8473 8474// Validate inspects the fields of the type to determine if they are valid. 8475func (s *HadoopJarStepConfig) Validate() error { 8476 invalidParams := request.ErrInvalidParams{Context: "HadoopJarStepConfig"} 8477 if s.Jar == nil { 8478 invalidParams.Add(request.NewErrParamRequired("Jar")) 8479 } 8480 8481 if invalidParams.Len() > 0 { 8482 return invalidParams 8483 } 8484 return nil 8485} 8486 8487// SetArgs sets the Args field's value. 8488func (s *HadoopJarStepConfig) SetArgs(v []*string) *HadoopJarStepConfig { 8489 s.Args = v 8490 return s 8491} 8492 8493// SetJar sets the Jar field's value. 8494func (s *HadoopJarStepConfig) SetJar(v string) *HadoopJarStepConfig { 8495 s.Jar = &v 8496 return s 8497} 8498 8499// SetMainClass sets the MainClass field's value. 8500func (s *HadoopJarStepConfig) SetMainClass(v string) *HadoopJarStepConfig { 8501 s.MainClass = &v 8502 return s 8503} 8504 8505// SetProperties sets the Properties field's value. 8506func (s *HadoopJarStepConfig) SetProperties(v []*KeyValue) *HadoopJarStepConfig { 8507 s.Properties = v 8508 return s 8509} 8510 8511// A cluster step consisting of a JAR file whose main function will be executed. 8512// The main function submits a job for Hadoop to execute and waits for the job 8513// to finish or fail. 8514type HadoopStepConfig struct { 8515 _ struct{} `type:"structure"` 8516 8517 // The list of command line arguments to pass to the JAR file's main function 8518 // for execution. 8519 Args []*string `type:"list"` 8520 8521 // The path to the JAR file that runs during the step. 8522 Jar *string `type:"string"` 8523 8524 // The name of the main class in the specified Java file. If not specified, 8525 // the JAR file should specify a main class in its manifest file. 8526 MainClass *string `type:"string"` 8527 8528 // The list of Java properties that are set when the step runs. You can use 8529 // these properties to pass key-value pairs to your main function. 8530 Properties map[string]*string `type:"map"` 8531} 8532 8533// String returns the string representation 8534func (s HadoopStepConfig) String() string { 8535 return awsutil.Prettify(s) 8536} 8537 8538// GoString returns the string representation 8539func (s HadoopStepConfig) GoString() string { 8540 return s.String() 8541} 8542 8543// SetArgs sets the Args field's value. 8544func (s *HadoopStepConfig) SetArgs(v []*string) *HadoopStepConfig { 8545 s.Args = v 8546 return s 8547} 8548 8549// SetJar sets the Jar field's value. 8550func (s *HadoopStepConfig) SetJar(v string) *HadoopStepConfig { 8551 s.Jar = &v 8552 return s 8553} 8554 8555// SetMainClass sets the MainClass field's value. 8556func (s *HadoopStepConfig) SetMainClass(v string) *HadoopStepConfig { 8557 s.MainClass = &v 8558 return s 8559} 8560 8561// SetProperties sets the Properties field's value. 8562func (s *HadoopStepConfig) SetProperties(v map[string]*string) *HadoopStepConfig { 8563 s.Properties = v 8564 return s 8565} 8566 8567// Represents an EC2 instance provisioned as part of cluster. 8568type Instance struct { 8569 _ struct{} `type:"structure"` 8570 8571 // The list of Amazon EBS volumes that are attached to this instance. 8572 EbsVolumes []*EbsVolume `type:"list"` 8573 8574 // The unique identifier of the instance in Amazon EC2. 8575 Ec2InstanceId *string `type:"string"` 8576 8577 // The unique identifier for the instance in Amazon EMR. 8578 Id *string `type:"string"` 8579 8580 // The unique identifier of the instance fleet to which an EC2 instance belongs. 8581 InstanceFleetId *string `type:"string"` 8582 8583 // The identifier of the instance group to which this instance belongs. 8584 InstanceGroupId *string `type:"string"` 8585 8586 // The EC2 instance type, for example m3.xlarge. 8587 InstanceType *string `min:"1" type:"string"` 8588 8589 // The instance purchasing option. Valid values are ON_DEMAND or SPOT. 8590 Market *string `type:"string" enum:"MarketType"` 8591 8592 // The private DNS name of the instance. 8593 PrivateDnsName *string `type:"string"` 8594 8595 // The private IP address of the instance. 8596 PrivateIpAddress *string `type:"string"` 8597 8598 // The public DNS name of the instance. 8599 PublicDnsName *string `type:"string"` 8600 8601 // The public IP address of the instance. 8602 PublicIpAddress *string `type:"string"` 8603 8604 // The current status of the instance. 8605 Status *InstanceStatus `type:"structure"` 8606} 8607 8608// String returns the string representation 8609func (s Instance) String() string { 8610 return awsutil.Prettify(s) 8611} 8612 8613// GoString returns the string representation 8614func (s Instance) GoString() string { 8615 return s.String() 8616} 8617 8618// SetEbsVolumes sets the EbsVolumes field's value. 8619func (s *Instance) SetEbsVolumes(v []*EbsVolume) *Instance { 8620 s.EbsVolumes = v 8621 return s 8622} 8623 8624// SetEc2InstanceId sets the Ec2InstanceId field's value. 8625func (s *Instance) SetEc2InstanceId(v string) *Instance { 8626 s.Ec2InstanceId = &v 8627 return s 8628} 8629 8630// SetId sets the Id field's value. 8631func (s *Instance) SetId(v string) *Instance { 8632 s.Id = &v 8633 return s 8634} 8635 8636// SetInstanceFleetId sets the InstanceFleetId field's value. 8637func (s *Instance) SetInstanceFleetId(v string) *Instance { 8638 s.InstanceFleetId = &v 8639 return s 8640} 8641 8642// SetInstanceGroupId sets the InstanceGroupId field's value. 8643func (s *Instance) SetInstanceGroupId(v string) *Instance { 8644 s.InstanceGroupId = &v 8645 return s 8646} 8647 8648// SetInstanceType sets the InstanceType field's value. 8649func (s *Instance) SetInstanceType(v string) *Instance { 8650 s.InstanceType = &v 8651 return s 8652} 8653 8654// SetMarket sets the Market field's value. 8655func (s *Instance) SetMarket(v string) *Instance { 8656 s.Market = &v 8657 return s 8658} 8659 8660// SetPrivateDnsName sets the PrivateDnsName field's value. 8661func (s *Instance) SetPrivateDnsName(v string) *Instance { 8662 s.PrivateDnsName = &v 8663 return s 8664} 8665 8666// SetPrivateIpAddress sets the PrivateIpAddress field's value. 8667func (s *Instance) SetPrivateIpAddress(v string) *Instance { 8668 s.PrivateIpAddress = &v 8669 return s 8670} 8671 8672// SetPublicDnsName sets the PublicDnsName field's value. 8673func (s *Instance) SetPublicDnsName(v string) *Instance { 8674 s.PublicDnsName = &v 8675 return s 8676} 8677 8678// SetPublicIpAddress sets the PublicIpAddress field's value. 8679func (s *Instance) SetPublicIpAddress(v string) *Instance { 8680 s.PublicIpAddress = &v 8681 return s 8682} 8683 8684// SetStatus sets the Status field's value. 8685func (s *Instance) SetStatus(v *InstanceStatus) *Instance { 8686 s.Status = v 8687 return s 8688} 8689 8690// Describes an instance fleet, which is a group of EC2 instances that host 8691// a particular node type (master, core, or task) in an Amazon EMR cluster. 8692// Instance fleets can consist of a mix of instance types and On-Demand and 8693// Spot Instances, which are provisioned to meet a defined target capacity. 8694// 8695// The instance fleet configuration is available only in Amazon EMR versions 8696// 4.8.0 and later, excluding 5.0.x versions. 8697type InstanceFleet struct { 8698 _ struct{} `type:"structure"` 8699 8700 // The unique identifier of the instance fleet. 8701 Id *string `type:"string"` 8702 8703 // The node type that the instance fleet hosts. Valid values are MASTER, CORE, 8704 // or TASK. 8705 InstanceFleetType *string `type:"string" enum:"InstanceFleetType"` 8706 8707 // An array of specifications for the instance types that comprise an instance 8708 // fleet. 8709 InstanceTypeSpecifications []*InstanceTypeSpecification `type:"list"` 8710 8711 // Describes the launch specification for an instance fleet. 8712 LaunchSpecifications *InstanceFleetProvisioningSpecifications `type:"structure"` 8713 8714 // A friendly name for the instance fleet. 8715 Name *string `type:"string"` 8716 8717 // The number of On-Demand units that have been provisioned for the instance 8718 // fleet to fulfill TargetOnDemandCapacity. This provisioned capacity might 8719 // be less than or greater than TargetOnDemandCapacity. 8720 ProvisionedOnDemandCapacity *int64 `type:"integer"` 8721 8722 // The number of Spot units that have been provisioned for this instance fleet 8723 // to fulfill TargetSpotCapacity. This provisioned capacity might be less than 8724 // or greater than TargetSpotCapacity. 8725 ProvisionedSpotCapacity *int64 `type:"integer"` 8726 8727 // The current status of the instance fleet. 8728 Status *InstanceFleetStatus `type:"structure"` 8729 8730 // The target capacity of On-Demand units for the instance fleet, which determines 8731 // how many On-Demand Instances to provision. When the instance fleet launches, 8732 // Amazon EMR tries to provision On-Demand Instances as specified by InstanceTypeConfig. 8733 // Each instance configuration has a specified WeightedCapacity. When an On-Demand 8734 // Instance is provisioned, the WeightedCapacity units count toward the target 8735 // capacity. Amazon EMR provisions instances until the target capacity is totally 8736 // fulfilled, even if this results in an overage. For example, if there are 8737 // 2 units remaining to fulfill capacity, and Amazon EMR can only provision 8738 // an instance with a WeightedCapacity of 5 units, the instance is provisioned, 8739 // and the target capacity is exceeded by 3 units. You can use InstanceFleet$ProvisionedOnDemandCapacity 8740 // to determine the Spot capacity units that have been provisioned for the instance 8741 // fleet. 8742 // 8743 // If not specified or set to 0, only Spot Instances are provisioned for the 8744 // instance fleet using TargetSpotCapacity. At least one of TargetSpotCapacity 8745 // and TargetOnDemandCapacity should be greater than 0. For a master instance 8746 // fleet, only one of TargetSpotCapacity and TargetOnDemandCapacity can be specified, 8747 // and its value must be 1. 8748 TargetOnDemandCapacity *int64 `type:"integer"` 8749 8750 // The target capacity of Spot units for the instance fleet, which determines 8751 // how many Spot Instances to provision. When the instance fleet launches, Amazon 8752 // EMR tries to provision Spot Instances as specified by InstanceTypeConfig. 8753 // Each instance configuration has a specified WeightedCapacity. When a Spot 8754 // instance is provisioned, the WeightedCapacity units count toward the target 8755 // capacity. Amazon EMR provisions instances until the target capacity is totally 8756 // fulfilled, even if this results in an overage. For example, if there are 8757 // 2 units remaining to fulfill capacity, and Amazon EMR can only provision 8758 // an instance with a WeightedCapacity of 5 units, the instance is provisioned, 8759 // and the target capacity is exceeded by 3 units. You can use InstanceFleet$ProvisionedSpotCapacity 8760 // to determine the Spot capacity units that have been provisioned for the instance 8761 // fleet. 8762 // 8763 // If not specified or set to 0, only On-Demand Instances are provisioned for 8764 // the instance fleet. At least one of TargetSpotCapacity and TargetOnDemandCapacity 8765 // should be greater than 0. For a master instance fleet, only one of TargetSpotCapacity 8766 // and TargetOnDemandCapacity can be specified, and its value must be 1. 8767 TargetSpotCapacity *int64 `type:"integer"` 8768} 8769 8770// String returns the string representation 8771func (s InstanceFleet) String() string { 8772 return awsutil.Prettify(s) 8773} 8774 8775// GoString returns the string representation 8776func (s InstanceFleet) GoString() string { 8777 return s.String() 8778} 8779 8780// SetId sets the Id field's value. 8781func (s *InstanceFleet) SetId(v string) *InstanceFleet { 8782 s.Id = &v 8783 return s 8784} 8785 8786// SetInstanceFleetType sets the InstanceFleetType field's value. 8787func (s *InstanceFleet) SetInstanceFleetType(v string) *InstanceFleet { 8788 s.InstanceFleetType = &v 8789 return s 8790} 8791 8792// SetInstanceTypeSpecifications sets the InstanceTypeSpecifications field's value. 8793func (s *InstanceFleet) SetInstanceTypeSpecifications(v []*InstanceTypeSpecification) *InstanceFleet { 8794 s.InstanceTypeSpecifications = v 8795 return s 8796} 8797 8798// SetLaunchSpecifications sets the LaunchSpecifications field's value. 8799func (s *InstanceFleet) SetLaunchSpecifications(v *InstanceFleetProvisioningSpecifications) *InstanceFleet { 8800 s.LaunchSpecifications = v 8801 return s 8802} 8803 8804// SetName sets the Name field's value. 8805func (s *InstanceFleet) SetName(v string) *InstanceFleet { 8806 s.Name = &v 8807 return s 8808} 8809 8810// SetProvisionedOnDemandCapacity sets the ProvisionedOnDemandCapacity field's value. 8811func (s *InstanceFleet) SetProvisionedOnDemandCapacity(v int64) *InstanceFleet { 8812 s.ProvisionedOnDemandCapacity = &v 8813 return s 8814} 8815 8816// SetProvisionedSpotCapacity sets the ProvisionedSpotCapacity field's value. 8817func (s *InstanceFleet) SetProvisionedSpotCapacity(v int64) *InstanceFleet { 8818 s.ProvisionedSpotCapacity = &v 8819 return s 8820} 8821 8822// SetStatus sets the Status field's value. 8823func (s *InstanceFleet) SetStatus(v *InstanceFleetStatus) *InstanceFleet { 8824 s.Status = v 8825 return s 8826} 8827 8828// SetTargetOnDemandCapacity sets the TargetOnDemandCapacity field's value. 8829func (s *InstanceFleet) SetTargetOnDemandCapacity(v int64) *InstanceFleet { 8830 s.TargetOnDemandCapacity = &v 8831 return s 8832} 8833 8834// SetTargetSpotCapacity sets the TargetSpotCapacity field's value. 8835func (s *InstanceFleet) SetTargetSpotCapacity(v int64) *InstanceFleet { 8836 s.TargetSpotCapacity = &v 8837 return s 8838} 8839 8840// The configuration that defines an instance fleet. 8841// 8842// The instance fleet configuration is available only in Amazon EMR versions 8843// 4.8.0 and later, excluding 5.0.x versions. 8844type InstanceFleetConfig struct { 8845 _ struct{} `type:"structure"` 8846 8847 // The node type that the instance fleet hosts. Valid values are MASTER, CORE, 8848 // and TASK. 8849 // 8850 // InstanceFleetType is a required field 8851 InstanceFleetType *string `type:"string" required:"true" enum:"InstanceFleetType"` 8852 8853 // The instance type configurations that define the EC2 instances in the instance 8854 // fleet. 8855 InstanceTypeConfigs []*InstanceTypeConfig `type:"list"` 8856 8857 // The launch specification for the instance fleet. 8858 LaunchSpecifications *InstanceFleetProvisioningSpecifications `type:"structure"` 8859 8860 // The friendly name of the instance fleet. 8861 Name *string `type:"string"` 8862 8863 // The target capacity of On-Demand units for the instance fleet, which determines 8864 // how many On-Demand Instances to provision. When the instance fleet launches, 8865 // Amazon EMR tries to provision On-Demand Instances as specified by InstanceTypeConfig. 8866 // Each instance configuration has a specified WeightedCapacity. When an On-Demand 8867 // Instance is provisioned, the WeightedCapacity units count toward the target 8868 // capacity. Amazon EMR provisions instances until the target capacity is totally 8869 // fulfilled, even if this results in an overage. For example, if there are 8870 // 2 units remaining to fulfill capacity, and Amazon EMR can only provision 8871 // an instance with a WeightedCapacity of 5 units, the instance is provisioned, 8872 // and the target capacity is exceeded by 3 units. 8873 // 8874 // If not specified or set to 0, only Spot Instances are provisioned for the 8875 // instance fleet using TargetSpotCapacity. At least one of TargetSpotCapacity 8876 // and TargetOnDemandCapacity should be greater than 0. For a master instance 8877 // fleet, only one of TargetSpotCapacity and TargetOnDemandCapacity can be specified, 8878 // and its value must be 1. 8879 TargetOnDemandCapacity *int64 `type:"integer"` 8880 8881 // The target capacity of Spot units for the instance fleet, which determines 8882 // how many Spot Instances to provision. When the instance fleet launches, Amazon 8883 // EMR tries to provision Spot Instances as specified by InstanceTypeConfig. 8884 // Each instance configuration has a specified WeightedCapacity. When a Spot 8885 // Instance is provisioned, the WeightedCapacity units count toward the target 8886 // capacity. Amazon EMR provisions instances until the target capacity is totally 8887 // fulfilled, even if this results in an overage. For example, if there are 8888 // 2 units remaining to fulfill capacity, and Amazon EMR can only provision 8889 // an instance with a WeightedCapacity of 5 units, the instance is provisioned, 8890 // and the target capacity is exceeded by 3 units. 8891 // 8892 // If not specified or set to 0, only On-Demand Instances are provisioned for 8893 // the instance fleet. At least one of TargetSpotCapacity and TargetOnDemandCapacity 8894 // should be greater than 0. For a master instance fleet, only one of TargetSpotCapacity 8895 // and TargetOnDemandCapacity can be specified, and its value must be 1. 8896 TargetSpotCapacity *int64 `type:"integer"` 8897} 8898 8899// String returns the string representation 8900func (s InstanceFleetConfig) String() string { 8901 return awsutil.Prettify(s) 8902} 8903 8904// GoString returns the string representation 8905func (s InstanceFleetConfig) GoString() string { 8906 return s.String() 8907} 8908 8909// Validate inspects the fields of the type to determine if they are valid. 8910func (s *InstanceFleetConfig) Validate() error { 8911 invalidParams := request.ErrInvalidParams{Context: "InstanceFleetConfig"} 8912 if s.InstanceFleetType == nil { 8913 invalidParams.Add(request.NewErrParamRequired("InstanceFleetType")) 8914 } 8915 if s.InstanceTypeConfigs != nil { 8916 for i, v := range s.InstanceTypeConfigs { 8917 if v == nil { 8918 continue 8919 } 8920 if err := v.Validate(); err != nil { 8921 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "InstanceTypeConfigs", i), err.(request.ErrInvalidParams)) 8922 } 8923 } 8924 } 8925 if s.LaunchSpecifications != nil { 8926 if err := s.LaunchSpecifications.Validate(); err != nil { 8927 invalidParams.AddNested("LaunchSpecifications", err.(request.ErrInvalidParams)) 8928 } 8929 } 8930 8931 if invalidParams.Len() > 0 { 8932 return invalidParams 8933 } 8934 return nil 8935} 8936 8937// SetInstanceFleetType sets the InstanceFleetType field's value. 8938func (s *InstanceFleetConfig) SetInstanceFleetType(v string) *InstanceFleetConfig { 8939 s.InstanceFleetType = &v 8940 return s 8941} 8942 8943// SetInstanceTypeConfigs sets the InstanceTypeConfigs field's value. 8944func (s *InstanceFleetConfig) SetInstanceTypeConfigs(v []*InstanceTypeConfig) *InstanceFleetConfig { 8945 s.InstanceTypeConfigs = v 8946 return s 8947} 8948 8949// SetLaunchSpecifications sets the LaunchSpecifications field's value. 8950func (s *InstanceFleetConfig) SetLaunchSpecifications(v *InstanceFleetProvisioningSpecifications) *InstanceFleetConfig { 8951 s.LaunchSpecifications = v 8952 return s 8953} 8954 8955// SetName sets the Name field's value. 8956func (s *InstanceFleetConfig) SetName(v string) *InstanceFleetConfig { 8957 s.Name = &v 8958 return s 8959} 8960 8961// SetTargetOnDemandCapacity sets the TargetOnDemandCapacity field's value. 8962func (s *InstanceFleetConfig) SetTargetOnDemandCapacity(v int64) *InstanceFleetConfig { 8963 s.TargetOnDemandCapacity = &v 8964 return s 8965} 8966 8967// SetTargetSpotCapacity sets the TargetSpotCapacity field's value. 8968func (s *InstanceFleetConfig) SetTargetSpotCapacity(v int64) *InstanceFleetConfig { 8969 s.TargetSpotCapacity = &v 8970 return s 8971} 8972 8973// Configuration parameters for an instance fleet modification request. 8974// 8975// The instance fleet configuration is available only in Amazon EMR versions 8976// 4.8.0 and later, excluding 5.0.x versions. 8977type InstanceFleetModifyConfig struct { 8978 _ struct{} `type:"structure"` 8979 8980 // A unique identifier for the instance fleet. 8981 // 8982 // InstanceFleetId is a required field 8983 InstanceFleetId *string `type:"string" required:"true"` 8984 8985 // The target capacity of On-Demand units for the instance fleet. For more information 8986 // see InstanceFleetConfig$TargetOnDemandCapacity. 8987 TargetOnDemandCapacity *int64 `type:"integer"` 8988 8989 // The target capacity of Spot units for the instance fleet. For more information, 8990 // see InstanceFleetConfig$TargetSpotCapacity. 8991 TargetSpotCapacity *int64 `type:"integer"` 8992} 8993 8994// String returns the string representation 8995func (s InstanceFleetModifyConfig) String() string { 8996 return awsutil.Prettify(s) 8997} 8998 8999// GoString returns the string representation 9000func (s InstanceFleetModifyConfig) GoString() string { 9001 return s.String() 9002} 9003 9004// Validate inspects the fields of the type to determine if they are valid. 9005func (s *InstanceFleetModifyConfig) Validate() error { 9006 invalidParams := request.ErrInvalidParams{Context: "InstanceFleetModifyConfig"} 9007 if s.InstanceFleetId == nil { 9008 invalidParams.Add(request.NewErrParamRequired("InstanceFleetId")) 9009 } 9010 9011 if invalidParams.Len() > 0 { 9012 return invalidParams 9013 } 9014 return nil 9015} 9016 9017// SetInstanceFleetId sets the InstanceFleetId field's value. 9018func (s *InstanceFleetModifyConfig) SetInstanceFleetId(v string) *InstanceFleetModifyConfig { 9019 s.InstanceFleetId = &v 9020 return s 9021} 9022 9023// SetTargetOnDemandCapacity sets the TargetOnDemandCapacity field's value. 9024func (s *InstanceFleetModifyConfig) SetTargetOnDemandCapacity(v int64) *InstanceFleetModifyConfig { 9025 s.TargetOnDemandCapacity = &v 9026 return s 9027} 9028 9029// SetTargetSpotCapacity sets the TargetSpotCapacity field's value. 9030func (s *InstanceFleetModifyConfig) SetTargetSpotCapacity(v int64) *InstanceFleetModifyConfig { 9031 s.TargetSpotCapacity = &v 9032 return s 9033} 9034 9035// The launch specification for Spot Instances in the fleet, which determines 9036// the defined duration, provisioning timeout behavior, and allocation strategy. 9037// 9038// The instance fleet configuration is available only in Amazon EMR versions 9039// 4.8.0 and later, excluding 5.0.x versions. On-Demand and Spot Instance allocation 9040// strategies are available in Amazon EMR version 5.12.1 and later. 9041type InstanceFleetProvisioningSpecifications struct { 9042 _ struct{} `type:"structure"` 9043 9044 // The launch specification for On-Demand Instances in the instance fleet, which 9045 // determines the allocation strategy. 9046 // 9047 // The instance fleet configuration is available only in Amazon EMR versions 9048 // 4.8.0 and later, excluding 5.0.x versions. On-Demand Instances allocation 9049 // strategy is available in Amazon EMR version 5.12.1 and later. 9050 OnDemandSpecification *OnDemandProvisioningSpecification `type:"structure"` 9051 9052 // The launch specification for Spot Instances in the fleet, which determines 9053 // the defined duration, provisioning timeout behavior, and allocation strategy. 9054 SpotSpecification *SpotProvisioningSpecification `type:"structure"` 9055} 9056 9057// String returns the string representation 9058func (s InstanceFleetProvisioningSpecifications) String() string { 9059 return awsutil.Prettify(s) 9060} 9061 9062// GoString returns the string representation 9063func (s InstanceFleetProvisioningSpecifications) GoString() string { 9064 return s.String() 9065} 9066 9067// Validate inspects the fields of the type to determine if they are valid. 9068func (s *InstanceFleetProvisioningSpecifications) Validate() error { 9069 invalidParams := request.ErrInvalidParams{Context: "InstanceFleetProvisioningSpecifications"} 9070 if s.OnDemandSpecification != nil { 9071 if err := s.OnDemandSpecification.Validate(); err != nil { 9072 invalidParams.AddNested("OnDemandSpecification", err.(request.ErrInvalidParams)) 9073 } 9074 } 9075 if s.SpotSpecification != nil { 9076 if err := s.SpotSpecification.Validate(); err != nil { 9077 invalidParams.AddNested("SpotSpecification", err.(request.ErrInvalidParams)) 9078 } 9079 } 9080 9081 if invalidParams.Len() > 0 { 9082 return invalidParams 9083 } 9084 return nil 9085} 9086 9087// SetOnDemandSpecification sets the OnDemandSpecification field's value. 9088func (s *InstanceFleetProvisioningSpecifications) SetOnDemandSpecification(v *OnDemandProvisioningSpecification) *InstanceFleetProvisioningSpecifications { 9089 s.OnDemandSpecification = v 9090 return s 9091} 9092 9093// SetSpotSpecification sets the SpotSpecification field's value. 9094func (s *InstanceFleetProvisioningSpecifications) SetSpotSpecification(v *SpotProvisioningSpecification) *InstanceFleetProvisioningSpecifications { 9095 s.SpotSpecification = v 9096 return s 9097} 9098 9099// Provides status change reason details for the instance fleet. 9100// 9101// The instance fleet configuration is available only in Amazon EMR versions 9102// 4.8.0 and later, excluding 5.0.x versions. 9103type InstanceFleetStateChangeReason struct { 9104 _ struct{} `type:"structure"` 9105 9106 // A code corresponding to the reason the state change occurred. 9107 Code *string `type:"string" enum:"InstanceFleetStateChangeReasonCode"` 9108 9109 // An explanatory message. 9110 Message *string `type:"string"` 9111} 9112 9113// String returns the string representation 9114func (s InstanceFleetStateChangeReason) String() string { 9115 return awsutil.Prettify(s) 9116} 9117 9118// GoString returns the string representation 9119func (s InstanceFleetStateChangeReason) GoString() string { 9120 return s.String() 9121} 9122 9123// SetCode sets the Code field's value. 9124func (s *InstanceFleetStateChangeReason) SetCode(v string) *InstanceFleetStateChangeReason { 9125 s.Code = &v 9126 return s 9127} 9128 9129// SetMessage sets the Message field's value. 9130func (s *InstanceFleetStateChangeReason) SetMessage(v string) *InstanceFleetStateChangeReason { 9131 s.Message = &v 9132 return s 9133} 9134 9135// The status of the instance fleet. 9136// 9137// The instance fleet configuration is available only in Amazon EMR versions 9138// 4.8.0 and later, excluding 5.0.x versions. 9139type InstanceFleetStatus struct { 9140 _ struct{} `type:"structure"` 9141 9142 // A code representing the instance fleet status. 9143 // 9144 // * PROVISIONING—The instance fleet is provisioning EC2 resources and 9145 // is not yet ready to run jobs. 9146 // 9147 // * BOOTSTRAPPING—EC2 instances and other resources have been provisioned 9148 // and the bootstrap actions specified for the instances are underway. 9149 // 9150 // * RUNNING—EC2 instances and other resources are running. They are either 9151 // executing jobs or waiting to execute jobs. 9152 // 9153 // * RESIZING—A resize operation is underway. EC2 instances are either 9154 // being added or removed. 9155 // 9156 // * SUSPENDED—A resize operation could not complete. Existing EC2 instances 9157 // are running, but instances can't be added or removed. 9158 // 9159 // * TERMINATING—The instance fleet is terminating EC2 instances. 9160 // 9161 // * TERMINATED—The instance fleet is no longer active, and all EC2 instances 9162 // have been terminated. 9163 State *string `type:"string" enum:"InstanceFleetState"` 9164 9165 // Provides status change reason details for the instance fleet. 9166 StateChangeReason *InstanceFleetStateChangeReason `type:"structure"` 9167 9168 // Provides historical timestamps for the instance fleet, including the time 9169 // of creation, the time it became ready to run jobs, and the time of termination. 9170 Timeline *InstanceFleetTimeline `type:"structure"` 9171} 9172 9173// String returns the string representation 9174func (s InstanceFleetStatus) String() string { 9175 return awsutil.Prettify(s) 9176} 9177 9178// GoString returns the string representation 9179func (s InstanceFleetStatus) GoString() string { 9180 return s.String() 9181} 9182 9183// SetState sets the State field's value. 9184func (s *InstanceFleetStatus) SetState(v string) *InstanceFleetStatus { 9185 s.State = &v 9186 return s 9187} 9188 9189// SetStateChangeReason sets the StateChangeReason field's value. 9190func (s *InstanceFleetStatus) SetStateChangeReason(v *InstanceFleetStateChangeReason) *InstanceFleetStatus { 9191 s.StateChangeReason = v 9192 return s 9193} 9194 9195// SetTimeline sets the Timeline field's value. 9196func (s *InstanceFleetStatus) SetTimeline(v *InstanceFleetTimeline) *InstanceFleetStatus { 9197 s.Timeline = v 9198 return s 9199} 9200 9201// Provides historical timestamps for the instance fleet, including the time 9202// of creation, the time it became ready to run jobs, and the time of termination. 9203// 9204// The instance fleet configuration is available only in Amazon EMR versions 9205// 4.8.0 and later, excluding 5.0.x versions. 9206type InstanceFleetTimeline struct { 9207 _ struct{} `type:"structure"` 9208 9209 // The time and date the instance fleet was created. 9210 CreationDateTime *time.Time `type:"timestamp"` 9211 9212 // The time and date the instance fleet terminated. 9213 EndDateTime *time.Time `type:"timestamp"` 9214 9215 // The time and date the instance fleet was ready to run jobs. 9216 ReadyDateTime *time.Time `type:"timestamp"` 9217} 9218 9219// String returns the string representation 9220func (s InstanceFleetTimeline) String() string { 9221 return awsutil.Prettify(s) 9222} 9223 9224// GoString returns the string representation 9225func (s InstanceFleetTimeline) GoString() string { 9226 return s.String() 9227} 9228 9229// SetCreationDateTime sets the CreationDateTime field's value. 9230func (s *InstanceFleetTimeline) SetCreationDateTime(v time.Time) *InstanceFleetTimeline { 9231 s.CreationDateTime = &v 9232 return s 9233} 9234 9235// SetEndDateTime sets the EndDateTime field's value. 9236func (s *InstanceFleetTimeline) SetEndDateTime(v time.Time) *InstanceFleetTimeline { 9237 s.EndDateTime = &v 9238 return s 9239} 9240 9241// SetReadyDateTime sets the ReadyDateTime field's value. 9242func (s *InstanceFleetTimeline) SetReadyDateTime(v time.Time) *InstanceFleetTimeline { 9243 s.ReadyDateTime = &v 9244 return s 9245} 9246 9247// This entity represents an instance group, which is a group of instances that 9248// have common purpose. For example, CORE instance group is used for HDFS. 9249type InstanceGroup struct { 9250 _ struct{} `type:"structure"` 9251 9252 // An automatic scaling policy for a core instance group or task instance group 9253 // in an Amazon EMR cluster. The automatic scaling policy defines how an instance 9254 // group dynamically adds and terminates EC2 instances in response to the value 9255 // of a CloudWatch metric. See PutAutoScalingPolicy. 9256 AutoScalingPolicy *AutoScalingPolicyDescription `type:"structure"` 9257 9258 // If specified, indicates that the instance group uses Spot Instances. This 9259 // is the maximum price you are willing to pay for Spot Instances. Specify OnDemandPrice 9260 // to set the amount equal to the On-Demand price, or specify an amount in USD. 9261 BidPrice *string `type:"string"` 9262 9263 // 9264 // Amazon EMR releases 4.x or later. 9265 // 9266 // The list of configurations supplied for an Amazon EMR cluster instance group. 9267 // You can specify a separate configuration for each instance group (master, 9268 // core, and task). 9269 Configurations []*Configuration `type:"list"` 9270 9271 // The version number of the requested configuration specification for this 9272 // instance group. 9273 ConfigurationsVersion *int64 `type:"long"` 9274 9275 // The custom AMI ID to use for the provisioned instance group. 9276 CustomAmiId *string `type:"string"` 9277 9278 // The EBS block devices that are mapped to this instance group. 9279 EbsBlockDevices []*EbsBlockDevice `type:"list"` 9280 9281 // If the instance group is EBS-optimized. An Amazon EBS-optimized instance 9282 // uses an optimized configuration stack and provides additional, dedicated 9283 // capacity for Amazon EBS I/O. 9284 EbsOptimized *bool `type:"boolean"` 9285 9286 // The identifier of the instance group. 9287 Id *string `type:"string"` 9288 9289 // The type of the instance group. Valid values are MASTER, CORE or TASK. 9290 InstanceGroupType *string `type:"string" enum:"InstanceGroupType"` 9291 9292 // The EC2 instance type for all instances in the instance group. 9293 InstanceType *string `min:"1" type:"string"` 9294 9295 // A list of configurations that were successfully applied for an instance group 9296 // last time. 9297 LastSuccessfullyAppliedConfigurations []*Configuration `type:"list"` 9298 9299 // The version number of a configuration specification that was successfully 9300 // applied for an instance group last time. 9301 LastSuccessfullyAppliedConfigurationsVersion *int64 `type:"long"` 9302 9303 // The marketplace to provision instances for this group. Valid values are ON_DEMAND 9304 // or SPOT. 9305 Market *string `type:"string" enum:"MarketType"` 9306 9307 // The name of the instance group. 9308 Name *string `type:"string"` 9309 9310 // The target number of instances for the instance group. 9311 RequestedInstanceCount *int64 `type:"integer"` 9312 9313 // The number of instances currently running in this instance group. 9314 RunningInstanceCount *int64 `type:"integer"` 9315 9316 // Policy for customizing shrink operations. 9317 ShrinkPolicy *ShrinkPolicy `type:"structure"` 9318 9319 // The current status of the instance group. 9320 Status *InstanceGroupStatus `type:"structure"` 9321} 9322 9323// String returns the string representation 9324func (s InstanceGroup) String() string { 9325 return awsutil.Prettify(s) 9326} 9327 9328// GoString returns the string representation 9329func (s InstanceGroup) GoString() string { 9330 return s.String() 9331} 9332 9333// SetAutoScalingPolicy sets the AutoScalingPolicy field's value. 9334func (s *InstanceGroup) SetAutoScalingPolicy(v *AutoScalingPolicyDescription) *InstanceGroup { 9335 s.AutoScalingPolicy = v 9336 return s 9337} 9338 9339// SetBidPrice sets the BidPrice field's value. 9340func (s *InstanceGroup) SetBidPrice(v string) *InstanceGroup { 9341 s.BidPrice = &v 9342 return s 9343} 9344 9345// SetConfigurations sets the Configurations field's value. 9346func (s *InstanceGroup) SetConfigurations(v []*Configuration) *InstanceGroup { 9347 s.Configurations = v 9348 return s 9349} 9350 9351// SetConfigurationsVersion sets the ConfigurationsVersion field's value. 9352func (s *InstanceGroup) SetConfigurationsVersion(v int64) *InstanceGroup { 9353 s.ConfigurationsVersion = &v 9354 return s 9355} 9356 9357// SetCustomAmiId sets the CustomAmiId field's value. 9358func (s *InstanceGroup) SetCustomAmiId(v string) *InstanceGroup { 9359 s.CustomAmiId = &v 9360 return s 9361} 9362 9363// SetEbsBlockDevices sets the EbsBlockDevices field's value. 9364func (s *InstanceGroup) SetEbsBlockDevices(v []*EbsBlockDevice) *InstanceGroup { 9365 s.EbsBlockDevices = v 9366 return s 9367} 9368 9369// SetEbsOptimized sets the EbsOptimized field's value. 9370func (s *InstanceGroup) SetEbsOptimized(v bool) *InstanceGroup { 9371 s.EbsOptimized = &v 9372 return s 9373} 9374 9375// SetId sets the Id field's value. 9376func (s *InstanceGroup) SetId(v string) *InstanceGroup { 9377 s.Id = &v 9378 return s 9379} 9380 9381// SetInstanceGroupType sets the InstanceGroupType field's value. 9382func (s *InstanceGroup) SetInstanceGroupType(v string) *InstanceGroup { 9383 s.InstanceGroupType = &v 9384 return s 9385} 9386 9387// SetInstanceType sets the InstanceType field's value. 9388func (s *InstanceGroup) SetInstanceType(v string) *InstanceGroup { 9389 s.InstanceType = &v 9390 return s 9391} 9392 9393// SetLastSuccessfullyAppliedConfigurations sets the LastSuccessfullyAppliedConfigurations field's value. 9394func (s *InstanceGroup) SetLastSuccessfullyAppliedConfigurations(v []*Configuration) *InstanceGroup { 9395 s.LastSuccessfullyAppliedConfigurations = v 9396 return s 9397} 9398 9399// SetLastSuccessfullyAppliedConfigurationsVersion sets the LastSuccessfullyAppliedConfigurationsVersion field's value. 9400func (s *InstanceGroup) SetLastSuccessfullyAppliedConfigurationsVersion(v int64) *InstanceGroup { 9401 s.LastSuccessfullyAppliedConfigurationsVersion = &v 9402 return s 9403} 9404 9405// SetMarket sets the Market field's value. 9406func (s *InstanceGroup) SetMarket(v string) *InstanceGroup { 9407 s.Market = &v 9408 return s 9409} 9410 9411// SetName sets the Name field's value. 9412func (s *InstanceGroup) SetName(v string) *InstanceGroup { 9413 s.Name = &v 9414 return s 9415} 9416 9417// SetRequestedInstanceCount sets the RequestedInstanceCount field's value. 9418func (s *InstanceGroup) SetRequestedInstanceCount(v int64) *InstanceGroup { 9419 s.RequestedInstanceCount = &v 9420 return s 9421} 9422 9423// SetRunningInstanceCount sets the RunningInstanceCount field's value. 9424func (s *InstanceGroup) SetRunningInstanceCount(v int64) *InstanceGroup { 9425 s.RunningInstanceCount = &v 9426 return s 9427} 9428 9429// SetShrinkPolicy sets the ShrinkPolicy field's value. 9430func (s *InstanceGroup) SetShrinkPolicy(v *ShrinkPolicy) *InstanceGroup { 9431 s.ShrinkPolicy = v 9432 return s 9433} 9434 9435// SetStatus sets the Status field's value. 9436func (s *InstanceGroup) SetStatus(v *InstanceGroupStatus) *InstanceGroup { 9437 s.Status = v 9438 return s 9439} 9440 9441// Configuration defining a new instance group. 9442type InstanceGroupConfig struct { 9443 _ struct{} `type:"structure"` 9444 9445 // An automatic scaling policy for a core instance group or task instance group 9446 // in an Amazon EMR cluster. The automatic scaling policy defines how an instance 9447 // group dynamically adds and terminates EC2 instances in response to the value 9448 // of a CloudWatch metric. See PutAutoScalingPolicy. 9449 AutoScalingPolicy *AutoScalingPolicy `type:"structure"` 9450 9451 // If specified, indicates that the instance group uses Spot Instances. This 9452 // is the maximum price you are willing to pay for Spot Instances. Specify OnDemandPrice 9453 // to set the amount equal to the On-Demand price, or specify an amount in USD. 9454 BidPrice *string `type:"string"` 9455 9456 // 9457 // Amazon EMR releases 4.x or later. 9458 // 9459 // The list of configurations supplied for an EMR cluster instance group. You 9460 // can specify a separate configuration for each instance group (master, core, 9461 // and task). 9462 Configurations []*Configuration `type:"list"` 9463 9464 // The custom AMI ID to use for the provisioned instance group. 9465 CustomAmiId *string `type:"string"` 9466 9467 // EBS configurations that will be attached to each EC2 instance in the instance 9468 // group. 9469 EbsConfiguration *EbsConfiguration `type:"structure"` 9470 9471 // Target number of instances for the instance group. 9472 // 9473 // InstanceCount is a required field 9474 InstanceCount *int64 `type:"integer" required:"true"` 9475 9476 // The role of the instance group in the cluster. 9477 // 9478 // InstanceRole is a required field 9479 InstanceRole *string `type:"string" required:"true" enum:"InstanceRoleType"` 9480 9481 // The EC2 instance type for all instances in the instance group. 9482 // 9483 // InstanceType is a required field 9484 InstanceType *string `min:"1" type:"string" required:"true"` 9485 9486 // Market type of the EC2 instances used to create a cluster node. 9487 Market *string `type:"string" enum:"MarketType"` 9488 9489 // Friendly name given to the instance group. 9490 Name *string `type:"string"` 9491} 9492 9493// String returns the string representation 9494func (s InstanceGroupConfig) String() string { 9495 return awsutil.Prettify(s) 9496} 9497 9498// GoString returns the string representation 9499func (s InstanceGroupConfig) GoString() string { 9500 return s.String() 9501} 9502 9503// Validate inspects the fields of the type to determine if they are valid. 9504func (s *InstanceGroupConfig) Validate() error { 9505 invalidParams := request.ErrInvalidParams{Context: "InstanceGroupConfig"} 9506 if s.InstanceCount == nil { 9507 invalidParams.Add(request.NewErrParamRequired("InstanceCount")) 9508 } 9509 if s.InstanceRole == nil { 9510 invalidParams.Add(request.NewErrParamRequired("InstanceRole")) 9511 } 9512 if s.InstanceType == nil { 9513 invalidParams.Add(request.NewErrParamRequired("InstanceType")) 9514 } 9515 if s.InstanceType != nil && len(*s.InstanceType) < 1 { 9516 invalidParams.Add(request.NewErrParamMinLen("InstanceType", 1)) 9517 } 9518 if s.AutoScalingPolicy != nil { 9519 if err := s.AutoScalingPolicy.Validate(); err != nil { 9520 invalidParams.AddNested("AutoScalingPolicy", err.(request.ErrInvalidParams)) 9521 } 9522 } 9523 if s.EbsConfiguration != nil { 9524 if err := s.EbsConfiguration.Validate(); err != nil { 9525 invalidParams.AddNested("EbsConfiguration", err.(request.ErrInvalidParams)) 9526 } 9527 } 9528 9529 if invalidParams.Len() > 0 { 9530 return invalidParams 9531 } 9532 return nil 9533} 9534 9535// SetAutoScalingPolicy sets the AutoScalingPolicy field's value. 9536func (s *InstanceGroupConfig) SetAutoScalingPolicy(v *AutoScalingPolicy) *InstanceGroupConfig { 9537 s.AutoScalingPolicy = v 9538 return s 9539} 9540 9541// SetBidPrice sets the BidPrice field's value. 9542func (s *InstanceGroupConfig) SetBidPrice(v string) *InstanceGroupConfig { 9543 s.BidPrice = &v 9544 return s 9545} 9546 9547// SetConfigurations sets the Configurations field's value. 9548func (s *InstanceGroupConfig) SetConfigurations(v []*Configuration) *InstanceGroupConfig { 9549 s.Configurations = v 9550 return s 9551} 9552 9553// SetCustomAmiId sets the CustomAmiId field's value. 9554func (s *InstanceGroupConfig) SetCustomAmiId(v string) *InstanceGroupConfig { 9555 s.CustomAmiId = &v 9556 return s 9557} 9558 9559// SetEbsConfiguration sets the EbsConfiguration field's value. 9560func (s *InstanceGroupConfig) SetEbsConfiguration(v *EbsConfiguration) *InstanceGroupConfig { 9561 s.EbsConfiguration = v 9562 return s 9563} 9564 9565// SetInstanceCount sets the InstanceCount field's value. 9566func (s *InstanceGroupConfig) SetInstanceCount(v int64) *InstanceGroupConfig { 9567 s.InstanceCount = &v 9568 return s 9569} 9570 9571// SetInstanceRole sets the InstanceRole field's value. 9572func (s *InstanceGroupConfig) SetInstanceRole(v string) *InstanceGroupConfig { 9573 s.InstanceRole = &v 9574 return s 9575} 9576 9577// SetInstanceType sets the InstanceType field's value. 9578func (s *InstanceGroupConfig) SetInstanceType(v string) *InstanceGroupConfig { 9579 s.InstanceType = &v 9580 return s 9581} 9582 9583// SetMarket sets the Market field's value. 9584func (s *InstanceGroupConfig) SetMarket(v string) *InstanceGroupConfig { 9585 s.Market = &v 9586 return s 9587} 9588 9589// SetName sets the Name field's value. 9590func (s *InstanceGroupConfig) SetName(v string) *InstanceGroupConfig { 9591 s.Name = &v 9592 return s 9593} 9594 9595// Detailed information about an instance group. 9596type InstanceGroupDetail struct { 9597 _ struct{} `type:"structure"` 9598 9599 // If specified, indicates that the instance group uses Spot Instances. This 9600 // is the maximum price you are willing to pay for Spot Instances. Specify OnDemandPrice 9601 // to set the amount equal to the On-Demand price, or specify an amount in USD. 9602 BidPrice *string `type:"string"` 9603 9604 // The date/time the instance group was created. 9605 // 9606 // CreationDateTime is a required field 9607 CreationDateTime *time.Time `type:"timestamp" required:"true"` 9608 9609 // The custom AMI ID to use for the provisioned instance group. 9610 CustomAmiId *string `type:"string"` 9611 9612 // The date/time the instance group was terminated. 9613 EndDateTime *time.Time `type:"timestamp"` 9614 9615 // Unique identifier for the instance group. 9616 InstanceGroupId *string `type:"string"` 9617 9618 // Target number of instances to run in the instance group. 9619 // 9620 // InstanceRequestCount is a required field 9621 InstanceRequestCount *int64 `type:"integer" required:"true"` 9622 9623 // Instance group role in the cluster 9624 // 9625 // InstanceRole is a required field 9626 InstanceRole *string `type:"string" required:"true" enum:"InstanceRoleType"` 9627 9628 // Actual count of running instances. 9629 // 9630 // InstanceRunningCount is a required field 9631 InstanceRunningCount *int64 `type:"integer" required:"true"` 9632 9633 // EC2 instance type. 9634 // 9635 // InstanceType is a required field 9636 InstanceType *string `min:"1" type:"string" required:"true"` 9637 9638 // Details regarding the state of the instance group. 9639 LastStateChangeReason *string `type:"string"` 9640 9641 // Market type of the EC2 instances used to create a cluster node. 9642 // 9643 // Market is a required field 9644 Market *string `type:"string" required:"true" enum:"MarketType"` 9645 9646 // Friendly name for the instance group. 9647 Name *string `type:"string"` 9648 9649 // The date/time the instance group was available to the cluster. 9650 ReadyDateTime *time.Time `type:"timestamp"` 9651 9652 // The date/time the instance group was started. 9653 StartDateTime *time.Time `type:"timestamp"` 9654 9655 // State of instance group. The following values are deprecated: STARTING, TERMINATED, 9656 // and FAILED. 9657 // 9658 // State is a required field 9659 State *string `type:"string" required:"true" enum:"InstanceGroupState"` 9660} 9661 9662// String returns the string representation 9663func (s InstanceGroupDetail) String() string { 9664 return awsutil.Prettify(s) 9665} 9666 9667// GoString returns the string representation 9668func (s InstanceGroupDetail) GoString() string { 9669 return s.String() 9670} 9671 9672// SetBidPrice sets the BidPrice field's value. 9673func (s *InstanceGroupDetail) SetBidPrice(v string) *InstanceGroupDetail { 9674 s.BidPrice = &v 9675 return s 9676} 9677 9678// SetCreationDateTime sets the CreationDateTime field's value. 9679func (s *InstanceGroupDetail) SetCreationDateTime(v time.Time) *InstanceGroupDetail { 9680 s.CreationDateTime = &v 9681 return s 9682} 9683 9684// SetCustomAmiId sets the CustomAmiId field's value. 9685func (s *InstanceGroupDetail) SetCustomAmiId(v string) *InstanceGroupDetail { 9686 s.CustomAmiId = &v 9687 return s 9688} 9689 9690// SetEndDateTime sets the EndDateTime field's value. 9691func (s *InstanceGroupDetail) SetEndDateTime(v time.Time) *InstanceGroupDetail { 9692 s.EndDateTime = &v 9693 return s 9694} 9695 9696// SetInstanceGroupId sets the InstanceGroupId field's value. 9697func (s *InstanceGroupDetail) SetInstanceGroupId(v string) *InstanceGroupDetail { 9698 s.InstanceGroupId = &v 9699 return s 9700} 9701 9702// SetInstanceRequestCount sets the InstanceRequestCount field's value. 9703func (s *InstanceGroupDetail) SetInstanceRequestCount(v int64) *InstanceGroupDetail { 9704 s.InstanceRequestCount = &v 9705 return s 9706} 9707 9708// SetInstanceRole sets the InstanceRole field's value. 9709func (s *InstanceGroupDetail) SetInstanceRole(v string) *InstanceGroupDetail { 9710 s.InstanceRole = &v 9711 return s 9712} 9713 9714// SetInstanceRunningCount sets the InstanceRunningCount field's value. 9715func (s *InstanceGroupDetail) SetInstanceRunningCount(v int64) *InstanceGroupDetail { 9716 s.InstanceRunningCount = &v 9717 return s 9718} 9719 9720// SetInstanceType sets the InstanceType field's value. 9721func (s *InstanceGroupDetail) SetInstanceType(v string) *InstanceGroupDetail { 9722 s.InstanceType = &v 9723 return s 9724} 9725 9726// SetLastStateChangeReason sets the LastStateChangeReason field's value. 9727func (s *InstanceGroupDetail) SetLastStateChangeReason(v string) *InstanceGroupDetail { 9728 s.LastStateChangeReason = &v 9729 return s 9730} 9731 9732// SetMarket sets the Market field's value. 9733func (s *InstanceGroupDetail) SetMarket(v string) *InstanceGroupDetail { 9734 s.Market = &v 9735 return s 9736} 9737 9738// SetName sets the Name field's value. 9739func (s *InstanceGroupDetail) SetName(v string) *InstanceGroupDetail { 9740 s.Name = &v 9741 return s 9742} 9743 9744// SetReadyDateTime sets the ReadyDateTime field's value. 9745func (s *InstanceGroupDetail) SetReadyDateTime(v time.Time) *InstanceGroupDetail { 9746 s.ReadyDateTime = &v 9747 return s 9748} 9749 9750// SetStartDateTime sets the StartDateTime field's value. 9751func (s *InstanceGroupDetail) SetStartDateTime(v time.Time) *InstanceGroupDetail { 9752 s.StartDateTime = &v 9753 return s 9754} 9755 9756// SetState sets the State field's value. 9757func (s *InstanceGroupDetail) SetState(v string) *InstanceGroupDetail { 9758 s.State = &v 9759 return s 9760} 9761 9762// Modify the size or configurations of an instance group. 9763type InstanceGroupModifyConfig struct { 9764 _ struct{} `type:"structure"` 9765 9766 // A list of new or modified configurations to apply for an instance group. 9767 Configurations []*Configuration `type:"list"` 9768 9769 // The EC2 InstanceIds to terminate. After you terminate the instances, the 9770 // instance group will not return to its original requested size. 9771 EC2InstanceIdsToTerminate []*string `type:"list"` 9772 9773 // Target size for the instance group. 9774 InstanceCount *int64 `type:"integer"` 9775 9776 // Unique ID of the instance group to modify. 9777 // 9778 // InstanceGroupId is a required field 9779 InstanceGroupId *string `type:"string" required:"true"` 9780 9781 // Policy for customizing shrink operations. 9782 ShrinkPolicy *ShrinkPolicy `type:"structure"` 9783} 9784 9785// String returns the string representation 9786func (s InstanceGroupModifyConfig) String() string { 9787 return awsutil.Prettify(s) 9788} 9789 9790// GoString returns the string representation 9791func (s InstanceGroupModifyConfig) GoString() string { 9792 return s.String() 9793} 9794 9795// Validate inspects the fields of the type to determine if they are valid. 9796func (s *InstanceGroupModifyConfig) Validate() error { 9797 invalidParams := request.ErrInvalidParams{Context: "InstanceGroupModifyConfig"} 9798 if s.InstanceGroupId == nil { 9799 invalidParams.Add(request.NewErrParamRequired("InstanceGroupId")) 9800 } 9801 9802 if invalidParams.Len() > 0 { 9803 return invalidParams 9804 } 9805 return nil 9806} 9807 9808// SetConfigurations sets the Configurations field's value. 9809func (s *InstanceGroupModifyConfig) SetConfigurations(v []*Configuration) *InstanceGroupModifyConfig { 9810 s.Configurations = v 9811 return s 9812} 9813 9814// SetEC2InstanceIdsToTerminate sets the EC2InstanceIdsToTerminate field's value. 9815func (s *InstanceGroupModifyConfig) SetEC2InstanceIdsToTerminate(v []*string) *InstanceGroupModifyConfig { 9816 s.EC2InstanceIdsToTerminate = v 9817 return s 9818} 9819 9820// SetInstanceCount sets the InstanceCount field's value. 9821func (s *InstanceGroupModifyConfig) SetInstanceCount(v int64) *InstanceGroupModifyConfig { 9822 s.InstanceCount = &v 9823 return s 9824} 9825 9826// SetInstanceGroupId sets the InstanceGroupId field's value. 9827func (s *InstanceGroupModifyConfig) SetInstanceGroupId(v string) *InstanceGroupModifyConfig { 9828 s.InstanceGroupId = &v 9829 return s 9830} 9831 9832// SetShrinkPolicy sets the ShrinkPolicy field's value. 9833func (s *InstanceGroupModifyConfig) SetShrinkPolicy(v *ShrinkPolicy) *InstanceGroupModifyConfig { 9834 s.ShrinkPolicy = v 9835 return s 9836} 9837 9838// The status change reason details for the instance group. 9839type InstanceGroupStateChangeReason struct { 9840 _ struct{} `type:"structure"` 9841 9842 // The programmable code for the state change reason. 9843 Code *string `type:"string" enum:"InstanceGroupStateChangeReasonCode"` 9844 9845 // The status change reason description. 9846 Message *string `type:"string"` 9847} 9848 9849// String returns the string representation 9850func (s InstanceGroupStateChangeReason) String() string { 9851 return awsutil.Prettify(s) 9852} 9853 9854// GoString returns the string representation 9855func (s InstanceGroupStateChangeReason) GoString() string { 9856 return s.String() 9857} 9858 9859// SetCode sets the Code field's value. 9860func (s *InstanceGroupStateChangeReason) SetCode(v string) *InstanceGroupStateChangeReason { 9861 s.Code = &v 9862 return s 9863} 9864 9865// SetMessage sets the Message field's value. 9866func (s *InstanceGroupStateChangeReason) SetMessage(v string) *InstanceGroupStateChangeReason { 9867 s.Message = &v 9868 return s 9869} 9870 9871// The details of the instance group status. 9872type InstanceGroupStatus struct { 9873 _ struct{} `type:"structure"` 9874 9875 // The current state of the instance group. 9876 State *string `type:"string" enum:"InstanceGroupState"` 9877 9878 // The status change reason details for the instance group. 9879 StateChangeReason *InstanceGroupStateChangeReason `type:"structure"` 9880 9881 // The timeline of the instance group status over time. 9882 Timeline *InstanceGroupTimeline `type:"structure"` 9883} 9884 9885// String returns the string representation 9886func (s InstanceGroupStatus) String() string { 9887 return awsutil.Prettify(s) 9888} 9889 9890// GoString returns the string representation 9891func (s InstanceGroupStatus) GoString() string { 9892 return s.String() 9893} 9894 9895// SetState sets the State field's value. 9896func (s *InstanceGroupStatus) SetState(v string) *InstanceGroupStatus { 9897 s.State = &v 9898 return s 9899} 9900 9901// SetStateChangeReason sets the StateChangeReason field's value. 9902func (s *InstanceGroupStatus) SetStateChangeReason(v *InstanceGroupStateChangeReason) *InstanceGroupStatus { 9903 s.StateChangeReason = v 9904 return s 9905} 9906 9907// SetTimeline sets the Timeline field's value. 9908func (s *InstanceGroupStatus) SetTimeline(v *InstanceGroupTimeline) *InstanceGroupStatus { 9909 s.Timeline = v 9910 return s 9911} 9912 9913// The timeline of the instance group lifecycle. 9914type InstanceGroupTimeline struct { 9915 _ struct{} `type:"structure"` 9916 9917 // The creation date and time of the instance group. 9918 CreationDateTime *time.Time `type:"timestamp"` 9919 9920 // The date and time when the instance group terminated. 9921 EndDateTime *time.Time `type:"timestamp"` 9922 9923 // The date and time when the instance group became ready to perform tasks. 9924 ReadyDateTime *time.Time `type:"timestamp"` 9925} 9926 9927// String returns the string representation 9928func (s InstanceGroupTimeline) String() string { 9929 return awsutil.Prettify(s) 9930} 9931 9932// GoString returns the string representation 9933func (s InstanceGroupTimeline) GoString() string { 9934 return s.String() 9935} 9936 9937// SetCreationDateTime sets the CreationDateTime field's value. 9938func (s *InstanceGroupTimeline) SetCreationDateTime(v time.Time) *InstanceGroupTimeline { 9939 s.CreationDateTime = &v 9940 return s 9941} 9942 9943// SetEndDateTime sets the EndDateTime field's value. 9944func (s *InstanceGroupTimeline) SetEndDateTime(v time.Time) *InstanceGroupTimeline { 9945 s.EndDateTime = &v 9946 return s 9947} 9948 9949// SetReadyDateTime sets the ReadyDateTime field's value. 9950func (s *InstanceGroupTimeline) SetReadyDateTime(v time.Time) *InstanceGroupTimeline { 9951 s.ReadyDateTime = &v 9952 return s 9953} 9954 9955// Custom policy for requesting termination protection or termination of specific 9956// instances when shrinking an instance group. 9957type InstanceResizePolicy struct { 9958 _ struct{} `type:"structure"` 9959 9960 // Decommissioning timeout override for the specific list of instances to be 9961 // terminated. 9962 InstanceTerminationTimeout *int64 `type:"integer"` 9963 9964 // Specific list of instances to be protected when shrinking an instance group. 9965 InstancesToProtect []*string `type:"list"` 9966 9967 // Specific list of instances to be terminated when shrinking an instance group. 9968 InstancesToTerminate []*string `type:"list"` 9969} 9970 9971// String returns the string representation 9972func (s InstanceResizePolicy) String() string { 9973 return awsutil.Prettify(s) 9974} 9975 9976// GoString returns the string representation 9977func (s InstanceResizePolicy) GoString() string { 9978 return s.String() 9979} 9980 9981// SetInstanceTerminationTimeout sets the InstanceTerminationTimeout field's value. 9982func (s *InstanceResizePolicy) SetInstanceTerminationTimeout(v int64) *InstanceResizePolicy { 9983 s.InstanceTerminationTimeout = &v 9984 return s 9985} 9986 9987// SetInstancesToProtect sets the InstancesToProtect field's value. 9988func (s *InstanceResizePolicy) SetInstancesToProtect(v []*string) *InstanceResizePolicy { 9989 s.InstancesToProtect = v 9990 return s 9991} 9992 9993// SetInstancesToTerminate sets the InstancesToTerminate field's value. 9994func (s *InstanceResizePolicy) SetInstancesToTerminate(v []*string) *InstanceResizePolicy { 9995 s.InstancesToTerminate = v 9996 return s 9997} 9998 9999// The details of the status change reason for the instance. 10000type InstanceStateChangeReason struct { 10001 _ struct{} `type:"structure"` 10002 10003 // The programmable code for the state change reason. 10004 Code *string `type:"string" enum:"InstanceStateChangeReasonCode"` 10005 10006 // The status change reason description. 10007 Message *string `type:"string"` 10008} 10009 10010// String returns the string representation 10011func (s InstanceStateChangeReason) String() string { 10012 return awsutil.Prettify(s) 10013} 10014 10015// GoString returns the string representation 10016func (s InstanceStateChangeReason) GoString() string { 10017 return s.String() 10018} 10019 10020// SetCode sets the Code field's value. 10021func (s *InstanceStateChangeReason) SetCode(v string) *InstanceStateChangeReason { 10022 s.Code = &v 10023 return s 10024} 10025 10026// SetMessage sets the Message field's value. 10027func (s *InstanceStateChangeReason) SetMessage(v string) *InstanceStateChangeReason { 10028 s.Message = &v 10029 return s 10030} 10031 10032// The instance status details. 10033type InstanceStatus struct { 10034 _ struct{} `type:"structure"` 10035 10036 // The current state of the instance. 10037 State *string `type:"string" enum:"InstanceState"` 10038 10039 // The details of the status change reason for the instance. 10040 StateChangeReason *InstanceStateChangeReason `type:"structure"` 10041 10042 // The timeline of the instance status over time. 10043 Timeline *InstanceTimeline `type:"structure"` 10044} 10045 10046// String returns the string representation 10047func (s InstanceStatus) String() string { 10048 return awsutil.Prettify(s) 10049} 10050 10051// GoString returns the string representation 10052func (s InstanceStatus) GoString() string { 10053 return s.String() 10054} 10055 10056// SetState sets the State field's value. 10057func (s *InstanceStatus) SetState(v string) *InstanceStatus { 10058 s.State = &v 10059 return s 10060} 10061 10062// SetStateChangeReason sets the StateChangeReason field's value. 10063func (s *InstanceStatus) SetStateChangeReason(v *InstanceStateChangeReason) *InstanceStatus { 10064 s.StateChangeReason = v 10065 return s 10066} 10067 10068// SetTimeline sets the Timeline field's value. 10069func (s *InstanceStatus) SetTimeline(v *InstanceTimeline) *InstanceStatus { 10070 s.Timeline = v 10071 return s 10072} 10073 10074// The timeline of the instance lifecycle. 10075type InstanceTimeline struct { 10076 _ struct{} `type:"structure"` 10077 10078 // The creation date and time of the instance. 10079 CreationDateTime *time.Time `type:"timestamp"` 10080 10081 // The date and time when the instance was terminated. 10082 EndDateTime *time.Time `type:"timestamp"` 10083 10084 // The date and time when the instance was ready to perform tasks. 10085 ReadyDateTime *time.Time `type:"timestamp"` 10086} 10087 10088// String returns the string representation 10089func (s InstanceTimeline) String() string { 10090 return awsutil.Prettify(s) 10091} 10092 10093// GoString returns the string representation 10094func (s InstanceTimeline) GoString() string { 10095 return s.String() 10096} 10097 10098// SetCreationDateTime sets the CreationDateTime field's value. 10099func (s *InstanceTimeline) SetCreationDateTime(v time.Time) *InstanceTimeline { 10100 s.CreationDateTime = &v 10101 return s 10102} 10103 10104// SetEndDateTime sets the EndDateTime field's value. 10105func (s *InstanceTimeline) SetEndDateTime(v time.Time) *InstanceTimeline { 10106 s.EndDateTime = &v 10107 return s 10108} 10109 10110// SetReadyDateTime sets the ReadyDateTime field's value. 10111func (s *InstanceTimeline) SetReadyDateTime(v time.Time) *InstanceTimeline { 10112 s.ReadyDateTime = &v 10113 return s 10114} 10115 10116// An instance type configuration for each instance type in an instance fleet, 10117// which determines the EC2 instances Amazon EMR attempts to provision to fulfill 10118// On-Demand and Spot target capacities. When you use an allocation strategy, 10119// you can include a maximum of 30 instance type configurations for a fleet. 10120// For more information about how to use an allocation strategy, see Configure 10121// Instance Fleets (https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-instance-fleet.html). 10122// Without an allocation strategy, you may specify a maximum of five instance 10123// type configurations for a fleet. 10124// 10125// The instance fleet configuration is available only in Amazon EMR versions 10126// 4.8.0 and later, excluding 5.0.x versions. 10127type InstanceTypeConfig struct { 10128 _ struct{} `type:"structure"` 10129 10130 // The bid price for each EC2 Spot Instance type as defined by InstanceType. 10131 // Expressed in USD. If neither BidPrice nor BidPriceAsPercentageOfOnDemandPrice 10132 // is provided, BidPriceAsPercentageOfOnDemandPrice defaults to 100%. 10133 BidPrice *string `type:"string"` 10134 10135 // The bid price, as a percentage of On-Demand price, for each EC2 Spot Instance 10136 // as defined by InstanceType. Expressed as a number (for example, 20 specifies 10137 // 20%). If neither BidPrice nor BidPriceAsPercentageOfOnDemandPrice is provided, 10138 // BidPriceAsPercentageOfOnDemandPrice defaults to 100%. 10139 BidPriceAsPercentageOfOnDemandPrice *float64 `type:"double"` 10140 10141 // A configuration classification that applies when provisioning cluster instances, 10142 // which can include configurations for applications and software that run on 10143 // the cluster. 10144 Configurations []*Configuration `type:"list"` 10145 10146 // The custom AMI ID to use for the instance type. 10147 CustomAmiId *string `type:"string"` 10148 10149 // The configuration of Amazon Elastic Block Store (Amazon EBS) attached to 10150 // each instance as defined by InstanceType. 10151 EbsConfiguration *EbsConfiguration `type:"structure"` 10152 10153 // An EC2 instance type, such as m3.xlarge. 10154 // 10155 // InstanceType is a required field 10156 InstanceType *string `min:"1" type:"string" required:"true"` 10157 10158 // The number of units that a provisioned instance of this type provides toward 10159 // fulfilling the target capacities defined in InstanceFleetConfig. This value 10160 // is 1 for a master instance fleet, and must be 1 or greater for core and task 10161 // instance fleets. Defaults to 1 if not specified. 10162 WeightedCapacity *int64 `type:"integer"` 10163} 10164 10165// String returns the string representation 10166func (s InstanceTypeConfig) String() string { 10167 return awsutil.Prettify(s) 10168} 10169 10170// GoString returns the string representation 10171func (s InstanceTypeConfig) GoString() string { 10172 return s.String() 10173} 10174 10175// Validate inspects the fields of the type to determine if they are valid. 10176func (s *InstanceTypeConfig) Validate() error { 10177 invalidParams := request.ErrInvalidParams{Context: "InstanceTypeConfig"} 10178 if s.InstanceType == nil { 10179 invalidParams.Add(request.NewErrParamRequired("InstanceType")) 10180 } 10181 if s.InstanceType != nil && len(*s.InstanceType) < 1 { 10182 invalidParams.Add(request.NewErrParamMinLen("InstanceType", 1)) 10183 } 10184 if s.EbsConfiguration != nil { 10185 if err := s.EbsConfiguration.Validate(); err != nil { 10186 invalidParams.AddNested("EbsConfiguration", err.(request.ErrInvalidParams)) 10187 } 10188 } 10189 10190 if invalidParams.Len() > 0 { 10191 return invalidParams 10192 } 10193 return nil 10194} 10195 10196// SetBidPrice sets the BidPrice field's value. 10197func (s *InstanceTypeConfig) SetBidPrice(v string) *InstanceTypeConfig { 10198 s.BidPrice = &v 10199 return s 10200} 10201 10202// SetBidPriceAsPercentageOfOnDemandPrice sets the BidPriceAsPercentageOfOnDemandPrice field's value. 10203func (s *InstanceTypeConfig) SetBidPriceAsPercentageOfOnDemandPrice(v float64) *InstanceTypeConfig { 10204 s.BidPriceAsPercentageOfOnDemandPrice = &v 10205 return s 10206} 10207 10208// SetConfigurations sets the Configurations field's value. 10209func (s *InstanceTypeConfig) SetConfigurations(v []*Configuration) *InstanceTypeConfig { 10210 s.Configurations = v 10211 return s 10212} 10213 10214// SetCustomAmiId sets the CustomAmiId field's value. 10215func (s *InstanceTypeConfig) SetCustomAmiId(v string) *InstanceTypeConfig { 10216 s.CustomAmiId = &v 10217 return s 10218} 10219 10220// SetEbsConfiguration sets the EbsConfiguration field's value. 10221func (s *InstanceTypeConfig) SetEbsConfiguration(v *EbsConfiguration) *InstanceTypeConfig { 10222 s.EbsConfiguration = v 10223 return s 10224} 10225 10226// SetInstanceType sets the InstanceType field's value. 10227func (s *InstanceTypeConfig) SetInstanceType(v string) *InstanceTypeConfig { 10228 s.InstanceType = &v 10229 return s 10230} 10231 10232// SetWeightedCapacity sets the WeightedCapacity field's value. 10233func (s *InstanceTypeConfig) SetWeightedCapacity(v int64) *InstanceTypeConfig { 10234 s.WeightedCapacity = &v 10235 return s 10236} 10237 10238// The configuration specification for each instance type in an instance fleet. 10239// 10240// The instance fleet configuration is available only in Amazon EMR versions 10241// 4.8.0 and later, excluding 5.0.x versions. 10242type InstanceTypeSpecification struct { 10243 _ struct{} `type:"structure"` 10244 10245 // The bid price for each EC2 Spot Instance type as defined by InstanceType. 10246 // Expressed in USD. 10247 BidPrice *string `type:"string"` 10248 10249 // The bid price, as a percentage of On-Demand price, for each EC2 Spot Instance 10250 // as defined by InstanceType. Expressed as a number (for example, 20 specifies 10251 // 20%). 10252 BidPriceAsPercentageOfOnDemandPrice *float64 `type:"double"` 10253 10254 // A configuration classification that applies when provisioning cluster instances, 10255 // which can include configurations for applications and software bundled with 10256 // Amazon EMR. 10257 Configurations []*Configuration `type:"list"` 10258 10259 // The custom AMI ID to use for the instance type. 10260 CustomAmiId *string `type:"string"` 10261 10262 // The configuration of Amazon Elastic Block Store (Amazon EBS) attached to 10263 // each instance as defined by InstanceType. 10264 EbsBlockDevices []*EbsBlockDevice `type:"list"` 10265 10266 // Evaluates to TRUE when the specified InstanceType is EBS-optimized. 10267 EbsOptimized *bool `type:"boolean"` 10268 10269 // The EC2 instance type, for example m3.xlarge. 10270 InstanceType *string `min:"1" type:"string"` 10271 10272 // The number of units that a provisioned instance of this type provides toward 10273 // fulfilling the target capacities defined in InstanceFleetConfig. Capacity 10274 // values represent performance characteristics such as vCPUs, memory, or I/O. 10275 // If not specified, the default value is 1. 10276 WeightedCapacity *int64 `type:"integer"` 10277} 10278 10279// String returns the string representation 10280func (s InstanceTypeSpecification) String() string { 10281 return awsutil.Prettify(s) 10282} 10283 10284// GoString returns the string representation 10285func (s InstanceTypeSpecification) GoString() string { 10286 return s.String() 10287} 10288 10289// SetBidPrice sets the BidPrice field's value. 10290func (s *InstanceTypeSpecification) SetBidPrice(v string) *InstanceTypeSpecification { 10291 s.BidPrice = &v 10292 return s 10293} 10294 10295// SetBidPriceAsPercentageOfOnDemandPrice sets the BidPriceAsPercentageOfOnDemandPrice field's value. 10296func (s *InstanceTypeSpecification) SetBidPriceAsPercentageOfOnDemandPrice(v float64) *InstanceTypeSpecification { 10297 s.BidPriceAsPercentageOfOnDemandPrice = &v 10298 return s 10299} 10300 10301// SetConfigurations sets the Configurations field's value. 10302func (s *InstanceTypeSpecification) SetConfigurations(v []*Configuration) *InstanceTypeSpecification { 10303 s.Configurations = v 10304 return s 10305} 10306 10307// SetCustomAmiId sets the CustomAmiId field's value. 10308func (s *InstanceTypeSpecification) SetCustomAmiId(v string) *InstanceTypeSpecification { 10309 s.CustomAmiId = &v 10310 return s 10311} 10312 10313// SetEbsBlockDevices sets the EbsBlockDevices field's value. 10314func (s *InstanceTypeSpecification) SetEbsBlockDevices(v []*EbsBlockDevice) *InstanceTypeSpecification { 10315 s.EbsBlockDevices = v 10316 return s 10317} 10318 10319// SetEbsOptimized sets the EbsOptimized field's value. 10320func (s *InstanceTypeSpecification) SetEbsOptimized(v bool) *InstanceTypeSpecification { 10321 s.EbsOptimized = &v 10322 return s 10323} 10324 10325// SetInstanceType sets the InstanceType field's value. 10326func (s *InstanceTypeSpecification) SetInstanceType(v string) *InstanceTypeSpecification { 10327 s.InstanceType = &v 10328 return s 10329} 10330 10331// SetWeightedCapacity sets the WeightedCapacity field's value. 10332func (s *InstanceTypeSpecification) SetWeightedCapacity(v int64) *InstanceTypeSpecification { 10333 s.WeightedCapacity = &v 10334 return s 10335} 10336 10337// Indicates that an error occurred while processing the request and that the 10338// request was not completed. 10339type InternalServerError struct { 10340 _ struct{} `type:"structure"` 10341 RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` 10342 10343 Message_ *string `locationName:"message" type:"string"` 10344} 10345 10346// String returns the string representation 10347func (s InternalServerError) String() string { 10348 return awsutil.Prettify(s) 10349} 10350 10351// GoString returns the string representation 10352func (s InternalServerError) GoString() string { 10353 return s.String() 10354} 10355 10356func newErrorInternalServerError(v protocol.ResponseMetadata) error { 10357 return &InternalServerError{ 10358 RespMetadata: v, 10359 } 10360} 10361 10362// Code returns the exception type name. 10363func (s *InternalServerError) Code() string { 10364 return "InternalServerError" 10365} 10366 10367// Message returns the exception's message. 10368func (s *InternalServerError) Message() string { 10369 if s.Message_ != nil { 10370 return *s.Message_ 10371 } 10372 return "" 10373} 10374 10375// OrigErr always returns nil, satisfies awserr.Error interface. 10376func (s *InternalServerError) OrigErr() error { 10377 return nil 10378} 10379 10380func (s *InternalServerError) Error() string { 10381 return fmt.Sprintf("%s: %s", s.Code(), s.Message()) 10382} 10383 10384// Status code returns the HTTP status code for the request's response error. 10385func (s *InternalServerError) StatusCode() int { 10386 return s.RespMetadata.StatusCode 10387} 10388 10389// RequestID returns the service's response RequestID for request. 10390func (s *InternalServerError) RequestID() string { 10391 return s.RespMetadata.RequestID 10392} 10393 10394// This exception occurs when there is an internal failure in the Amazon EMR 10395// service. 10396type InternalServerException struct { 10397 _ struct{} `type:"structure"` 10398 RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` 10399 10400 // The message associated with the exception. 10401 Message_ *string `locationName:"Message" type:"string"` 10402} 10403 10404// String returns the string representation 10405func (s InternalServerException) String() string { 10406 return awsutil.Prettify(s) 10407} 10408 10409// GoString returns the string representation 10410func (s InternalServerException) GoString() string { 10411 return s.String() 10412} 10413 10414func newErrorInternalServerException(v protocol.ResponseMetadata) error { 10415 return &InternalServerException{ 10416 RespMetadata: v, 10417 } 10418} 10419 10420// Code returns the exception type name. 10421func (s *InternalServerException) Code() string { 10422 return "InternalServerException" 10423} 10424 10425// Message returns the exception's message. 10426func (s *InternalServerException) Message() string { 10427 if s.Message_ != nil { 10428 return *s.Message_ 10429 } 10430 return "" 10431} 10432 10433// OrigErr always returns nil, satisfies awserr.Error interface. 10434func (s *InternalServerException) OrigErr() error { 10435 return nil 10436} 10437 10438func (s *InternalServerException) Error() string { 10439 return fmt.Sprintf("%s: %s", s.Code(), s.Message()) 10440} 10441 10442// Status code returns the HTTP status code for the request's response error. 10443func (s *InternalServerException) StatusCode() int { 10444 return s.RespMetadata.StatusCode 10445} 10446 10447// RequestID returns the service's response RequestID for request. 10448func (s *InternalServerException) RequestID() string { 10449 return s.RespMetadata.RequestID 10450} 10451 10452// This exception occurs when there is something wrong with user input. 10453type InvalidRequestException struct { 10454 _ struct{} `type:"structure"` 10455 RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` 10456 10457 // The error code associated with the exception. 10458 ErrorCode *string `min:"1" type:"string"` 10459 10460 // The message associated with the exception. 10461 Message_ *string `locationName:"Message" type:"string"` 10462} 10463 10464// String returns the string representation 10465func (s InvalidRequestException) String() string { 10466 return awsutil.Prettify(s) 10467} 10468 10469// GoString returns the string representation 10470func (s InvalidRequestException) GoString() string { 10471 return s.String() 10472} 10473 10474func newErrorInvalidRequestException(v protocol.ResponseMetadata) error { 10475 return &InvalidRequestException{ 10476 RespMetadata: v, 10477 } 10478} 10479 10480// Code returns the exception type name. 10481func (s *InvalidRequestException) Code() string { 10482 return "InvalidRequestException" 10483} 10484 10485// Message returns the exception's message. 10486func (s *InvalidRequestException) Message() string { 10487 if s.Message_ != nil { 10488 return *s.Message_ 10489 } 10490 return "" 10491} 10492 10493// OrigErr always returns nil, satisfies awserr.Error interface. 10494func (s *InvalidRequestException) OrigErr() error { 10495 return nil 10496} 10497 10498func (s *InvalidRequestException) Error() string { 10499 return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) 10500} 10501 10502// Status code returns the HTTP status code for the request's response error. 10503func (s *InvalidRequestException) StatusCode() int { 10504 return s.RespMetadata.StatusCode 10505} 10506 10507// RequestID returns the service's response RequestID for request. 10508func (s *InvalidRequestException) RequestID() string { 10509 return s.RespMetadata.RequestID 10510} 10511 10512// A description of a cluster (job flow). 10513type JobFlowDetail struct { 10514 _ struct{} `type:"structure"` 10515 10516 // Applies only to Amazon EMR AMI versions 3.x and 2.x. For Amazon EMR releases 10517 // 4.0 and later, ReleaseLabel is used. To specify a custom AMI, use CustomAmiID. 10518 AmiVersion *string `type:"string"` 10519 10520 // An IAM role for automatic scaling policies. The default role is EMR_AutoScaling_DefaultRole. 10521 // The IAM role provides a way for the automatic scaling feature to get the 10522 // required permissions it needs to launch and terminate EC2 instances in an 10523 // instance group. 10524 AutoScalingRole *string `type:"string"` 10525 10526 // A list of the bootstrap actions run by the job flow. 10527 BootstrapActions []*BootstrapActionDetail `type:"list"` 10528 10529 // Describes the execution status of the job flow. 10530 // 10531 // ExecutionStatusDetail is a required field 10532 ExecutionStatusDetail *JobFlowExecutionStatusDetail `type:"structure" required:"true"` 10533 10534 // Describes the Amazon EC2 instances of the job flow. 10535 // 10536 // Instances is a required field 10537 Instances *JobFlowInstancesDetail `type:"structure" required:"true"` 10538 10539 // The job flow identifier. 10540 // 10541 // JobFlowId is a required field 10542 JobFlowId *string `type:"string" required:"true"` 10543 10544 // The IAM role that was specified when the job flow was launched. The EC2 instances 10545 // of the job flow assume this role. 10546 JobFlowRole *string `type:"string"` 10547 10548 // The KMS key used for encrypting log files. This attribute is only available 10549 // with EMR version 5.30.0 and later, excluding EMR 6.0.0. 10550 LogEncryptionKmsKeyId *string `type:"string"` 10551 10552 // The location in Amazon S3 where log files for the job are stored. 10553 LogUri *string `type:"string"` 10554 10555 // The name of the job flow. 10556 // 10557 // Name is a required field 10558 Name *string `type:"string" required:"true"` 10559 10560 // The way that individual Amazon EC2 instances terminate when an automatic 10561 // scale-in activity occurs or an instance group is resized. TERMINATE_AT_INSTANCE_HOUR 10562 // indicates that Amazon EMR terminates nodes at the instance-hour boundary, 10563 // regardless of when the request to terminate the instance was submitted. This 10564 // option is only available with Amazon EMR 5.1.0 and later and is the default 10565 // for clusters created using that version. TERMINATE_AT_TASK_COMPLETION indicates 10566 // that Amazon EMR adds nodes to a deny list and drains tasks from nodes before 10567 // terminating the Amazon EC2 instances, regardless of the instance-hour boundary. 10568 // With either behavior, Amazon EMR removes the least active nodes first and 10569 // blocks instance termination if it could lead to HDFS corruption. TERMINATE_AT_TASK_COMPLETION 10570 // available only in Amazon EMR version 4.1.0 and later, and is the default 10571 // for versions of Amazon EMR earlier than 5.1.0. 10572 ScaleDownBehavior *string `type:"string" enum:"ScaleDownBehavior"` 10573 10574 // The IAM role that is assumed by the Amazon EMR service to access Amazon Web 10575 // Services resources on your behalf. 10576 ServiceRole *string `type:"string"` 10577 10578 // A list of steps run by the job flow. 10579 Steps []*StepDetail `type:"list"` 10580 10581 // A list of strings set by third-party software when the job flow is launched. 10582 // If you are not using third-party software to manage the job flow, this value 10583 // is empty. 10584 SupportedProducts []*string `type:"list"` 10585 10586 // Indicates whether the cluster is visible to IAM principals in the account 10587 // associated with the cluster. When true, IAM principals in the account can 10588 // perform EMR cluster actions that their IAM policies allow. When false, only 10589 // the IAM principal that created the cluster and the account root user can 10590 // perform EMR actions, regardless of IAM permissions policies attached to other 10591 // IAM principals. 10592 // 10593 // The default value is true if a value is not provided when creating a cluster 10594 // using the EMR API RunJobFlow command, the CLI create-cluster (https://docs.aws.amazon.com/cli/latest/reference/emr/create-cluster.html) 10595 // command, or the Management Console. IAM principals that are authorized to 10596 // perform actions on the cluster can use the SetVisibleToAllUsers action to 10597 // change the value on a running cluster. For more information, see Understanding 10598 // the EMR Cluster VisibleToAllUsers Setting (https://docs.aws.amazon.com/emr/latest/ManagementGuide/security_iam_emr-with-iam.html#security_set_visible_to_all_users) 10599 // in the Amazon EMRManagement Guide. 10600 VisibleToAllUsers *bool `type:"boolean"` 10601} 10602 10603// String returns the string representation 10604func (s JobFlowDetail) String() string { 10605 return awsutil.Prettify(s) 10606} 10607 10608// GoString returns the string representation 10609func (s JobFlowDetail) GoString() string { 10610 return s.String() 10611} 10612 10613// SetAmiVersion sets the AmiVersion field's value. 10614func (s *JobFlowDetail) SetAmiVersion(v string) *JobFlowDetail { 10615 s.AmiVersion = &v 10616 return s 10617} 10618 10619// SetAutoScalingRole sets the AutoScalingRole field's value. 10620func (s *JobFlowDetail) SetAutoScalingRole(v string) *JobFlowDetail { 10621 s.AutoScalingRole = &v 10622 return s 10623} 10624 10625// SetBootstrapActions sets the BootstrapActions field's value. 10626func (s *JobFlowDetail) SetBootstrapActions(v []*BootstrapActionDetail) *JobFlowDetail { 10627 s.BootstrapActions = v 10628 return s 10629} 10630 10631// SetExecutionStatusDetail sets the ExecutionStatusDetail field's value. 10632func (s *JobFlowDetail) SetExecutionStatusDetail(v *JobFlowExecutionStatusDetail) *JobFlowDetail { 10633 s.ExecutionStatusDetail = v 10634 return s 10635} 10636 10637// SetInstances sets the Instances field's value. 10638func (s *JobFlowDetail) SetInstances(v *JobFlowInstancesDetail) *JobFlowDetail { 10639 s.Instances = v 10640 return s 10641} 10642 10643// SetJobFlowId sets the JobFlowId field's value. 10644func (s *JobFlowDetail) SetJobFlowId(v string) *JobFlowDetail { 10645 s.JobFlowId = &v 10646 return s 10647} 10648 10649// SetJobFlowRole sets the JobFlowRole field's value. 10650func (s *JobFlowDetail) SetJobFlowRole(v string) *JobFlowDetail { 10651 s.JobFlowRole = &v 10652 return s 10653} 10654 10655// SetLogEncryptionKmsKeyId sets the LogEncryptionKmsKeyId field's value. 10656func (s *JobFlowDetail) SetLogEncryptionKmsKeyId(v string) *JobFlowDetail { 10657 s.LogEncryptionKmsKeyId = &v 10658 return s 10659} 10660 10661// SetLogUri sets the LogUri field's value. 10662func (s *JobFlowDetail) SetLogUri(v string) *JobFlowDetail { 10663 s.LogUri = &v 10664 return s 10665} 10666 10667// SetName sets the Name field's value. 10668func (s *JobFlowDetail) SetName(v string) *JobFlowDetail { 10669 s.Name = &v 10670 return s 10671} 10672 10673// SetScaleDownBehavior sets the ScaleDownBehavior field's value. 10674func (s *JobFlowDetail) SetScaleDownBehavior(v string) *JobFlowDetail { 10675 s.ScaleDownBehavior = &v 10676 return s 10677} 10678 10679// SetServiceRole sets the ServiceRole field's value. 10680func (s *JobFlowDetail) SetServiceRole(v string) *JobFlowDetail { 10681 s.ServiceRole = &v 10682 return s 10683} 10684 10685// SetSteps sets the Steps field's value. 10686func (s *JobFlowDetail) SetSteps(v []*StepDetail) *JobFlowDetail { 10687 s.Steps = v 10688 return s 10689} 10690 10691// SetSupportedProducts sets the SupportedProducts field's value. 10692func (s *JobFlowDetail) SetSupportedProducts(v []*string) *JobFlowDetail { 10693 s.SupportedProducts = v 10694 return s 10695} 10696 10697// SetVisibleToAllUsers sets the VisibleToAllUsers field's value. 10698func (s *JobFlowDetail) SetVisibleToAllUsers(v bool) *JobFlowDetail { 10699 s.VisibleToAllUsers = &v 10700 return s 10701} 10702 10703// Describes the status of the cluster (job flow). 10704type JobFlowExecutionStatusDetail struct { 10705 _ struct{} `type:"structure"` 10706 10707 // The creation date and time of the job flow. 10708 // 10709 // CreationDateTime is a required field 10710 CreationDateTime *time.Time `type:"timestamp" required:"true"` 10711 10712 // The completion date and time of the job flow. 10713 EndDateTime *time.Time `type:"timestamp"` 10714 10715 // Description of the job flow last changed state. 10716 LastStateChangeReason *string `type:"string"` 10717 10718 // The date and time when the job flow was ready to start running bootstrap 10719 // actions. 10720 ReadyDateTime *time.Time `type:"timestamp"` 10721 10722 // The start date and time of the job flow. 10723 StartDateTime *time.Time `type:"timestamp"` 10724 10725 // The state of the job flow. 10726 // 10727 // State is a required field 10728 State *string `type:"string" required:"true" enum:"JobFlowExecutionState"` 10729} 10730 10731// String returns the string representation 10732func (s JobFlowExecutionStatusDetail) String() string { 10733 return awsutil.Prettify(s) 10734} 10735 10736// GoString returns the string representation 10737func (s JobFlowExecutionStatusDetail) GoString() string { 10738 return s.String() 10739} 10740 10741// SetCreationDateTime sets the CreationDateTime field's value. 10742func (s *JobFlowExecutionStatusDetail) SetCreationDateTime(v time.Time) *JobFlowExecutionStatusDetail { 10743 s.CreationDateTime = &v 10744 return s 10745} 10746 10747// SetEndDateTime sets the EndDateTime field's value. 10748func (s *JobFlowExecutionStatusDetail) SetEndDateTime(v time.Time) *JobFlowExecutionStatusDetail { 10749 s.EndDateTime = &v 10750 return s 10751} 10752 10753// SetLastStateChangeReason sets the LastStateChangeReason field's value. 10754func (s *JobFlowExecutionStatusDetail) SetLastStateChangeReason(v string) *JobFlowExecutionStatusDetail { 10755 s.LastStateChangeReason = &v 10756 return s 10757} 10758 10759// SetReadyDateTime sets the ReadyDateTime field's value. 10760func (s *JobFlowExecutionStatusDetail) SetReadyDateTime(v time.Time) *JobFlowExecutionStatusDetail { 10761 s.ReadyDateTime = &v 10762 return s 10763} 10764 10765// SetStartDateTime sets the StartDateTime field's value. 10766func (s *JobFlowExecutionStatusDetail) SetStartDateTime(v time.Time) *JobFlowExecutionStatusDetail { 10767 s.StartDateTime = &v 10768 return s 10769} 10770 10771// SetState sets the State field's value. 10772func (s *JobFlowExecutionStatusDetail) SetState(v string) *JobFlowExecutionStatusDetail { 10773 s.State = &v 10774 return s 10775} 10776 10777// A description of the Amazon EC2 instance on which the cluster (job flow) 10778// runs. A valid JobFlowInstancesConfig must contain either InstanceGroups or 10779// InstanceFleets. They cannot be used together. You may also have MasterInstanceType, 10780// SlaveInstanceType, and InstanceCount (all three must be present), but we 10781// don't recommend this configuration. 10782type JobFlowInstancesConfig struct { 10783 _ struct{} `type:"structure"` 10784 10785 // A list of additional Amazon EC2 security group IDs for the master node. 10786 AdditionalMasterSecurityGroups []*string `type:"list"` 10787 10788 // A list of additional Amazon EC2 security group IDs for the core and task 10789 // nodes. 10790 AdditionalSlaveSecurityGroups []*string `type:"list"` 10791 10792 // The name of the EC2 key pair that can be used to connect to the master node 10793 // using SSH as the user called "hadoop." 10794 Ec2KeyName *string `type:"string"` 10795 10796 // Applies to clusters that use the uniform instance group configuration. To 10797 // launch the cluster in Amazon Virtual Private Cloud (Amazon VPC), set this 10798 // parameter to the identifier of the Amazon VPC subnet where you want the cluster 10799 // to launch. If you do not specify this value and your account supports EC2-Classic, 10800 // the cluster launches in EC2-Classic. 10801 Ec2SubnetId *string `type:"string"` 10802 10803 // Applies to clusters that use the instance fleet configuration. When multiple 10804 // EC2 subnet IDs are specified, Amazon EMR evaluates them and launches instances 10805 // in the optimal subnet. 10806 // 10807 // The instance fleet configuration is available only in Amazon EMR versions 10808 // 4.8.0 and later, excluding 5.0.x versions. 10809 Ec2SubnetIds []*string `type:"list"` 10810 10811 // The identifier of the Amazon EC2 security group for the master node. If you 10812 // specify EmrManagedMasterSecurityGroup, you must also specify EmrManagedSlaveSecurityGroup. 10813 EmrManagedMasterSecurityGroup *string `type:"string"` 10814 10815 // The identifier of the Amazon EC2 security group for the core and task nodes. 10816 // If you specify EmrManagedSlaveSecurityGroup, you must also specify EmrManagedMasterSecurityGroup. 10817 EmrManagedSlaveSecurityGroup *string `type:"string"` 10818 10819 // Applies only to Amazon EMR release versions earlier than 4.0. The Hadoop 10820 // version for the cluster. Valid inputs are "0.18" (no longer maintained), 10821 // "0.20" (no longer maintained), "0.20.205" (no longer maintained), "1.0.3", 10822 // "2.2.0", or "2.4.0". If you do not set this value, the default of 0.18 is 10823 // used, unless the AmiVersion parameter is set in the RunJobFlow call, in which 10824 // case the default version of Hadoop for that AMI version is used. 10825 HadoopVersion *string `type:"string"` 10826 10827 // The number of EC2 instances in the cluster. 10828 InstanceCount *int64 `type:"integer"` 10829 10830 // 10831 // The instance fleet configuration is available only in Amazon EMR versions 10832 // 4.8.0 and later, excluding 5.0.x versions. 10833 // 10834 // Describes the EC2 instances and instance configurations for clusters that 10835 // use the instance fleet configuration. 10836 InstanceFleets []*InstanceFleetConfig `type:"list"` 10837 10838 // Configuration for the instance groups in a cluster. 10839 InstanceGroups []*InstanceGroupConfig `type:"list"` 10840 10841 // Specifies whether the cluster should remain available after completing all 10842 // steps. Defaults to true. For more information about configuring cluster termination, 10843 // see Control Cluster Termination (https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-plan-termination.html) 10844 // in the EMR Management Guide. 10845 KeepJobFlowAliveWhenNoSteps *bool `type:"boolean"` 10846 10847 // The EC2 instance type of the master node. 10848 MasterInstanceType *string `min:"1" type:"string"` 10849 10850 // The Availability Zone in which the cluster runs. 10851 Placement *PlacementType `type:"structure"` 10852 10853 // The identifier of the Amazon EC2 security group for the Amazon EMR service 10854 // to access clusters in VPC private subnets. 10855 ServiceAccessSecurityGroup *string `type:"string"` 10856 10857 // The EC2 instance type of the core and task nodes. 10858 SlaveInstanceType *string `min:"1" type:"string"` 10859 10860 // Specifies whether to lock the cluster to prevent the Amazon EC2 instances 10861 // from being terminated by API call, user intervention, or in the event of 10862 // a job-flow error. 10863 TerminationProtected *bool `type:"boolean"` 10864} 10865 10866// String returns the string representation 10867func (s JobFlowInstancesConfig) String() string { 10868 return awsutil.Prettify(s) 10869} 10870 10871// GoString returns the string representation 10872func (s JobFlowInstancesConfig) GoString() string { 10873 return s.String() 10874} 10875 10876// Validate inspects the fields of the type to determine if they are valid. 10877func (s *JobFlowInstancesConfig) Validate() error { 10878 invalidParams := request.ErrInvalidParams{Context: "JobFlowInstancesConfig"} 10879 if s.MasterInstanceType != nil && len(*s.MasterInstanceType) < 1 { 10880 invalidParams.Add(request.NewErrParamMinLen("MasterInstanceType", 1)) 10881 } 10882 if s.SlaveInstanceType != nil && len(*s.SlaveInstanceType) < 1 { 10883 invalidParams.Add(request.NewErrParamMinLen("SlaveInstanceType", 1)) 10884 } 10885 if s.InstanceFleets != nil { 10886 for i, v := range s.InstanceFleets { 10887 if v == nil { 10888 continue 10889 } 10890 if err := v.Validate(); err != nil { 10891 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "InstanceFleets", i), err.(request.ErrInvalidParams)) 10892 } 10893 } 10894 } 10895 if s.InstanceGroups != nil { 10896 for i, v := range s.InstanceGroups { 10897 if v == nil { 10898 continue 10899 } 10900 if err := v.Validate(); err != nil { 10901 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "InstanceGroups", i), err.(request.ErrInvalidParams)) 10902 } 10903 } 10904 } 10905 10906 if invalidParams.Len() > 0 { 10907 return invalidParams 10908 } 10909 return nil 10910} 10911 10912// SetAdditionalMasterSecurityGroups sets the AdditionalMasterSecurityGroups field's value. 10913func (s *JobFlowInstancesConfig) SetAdditionalMasterSecurityGroups(v []*string) *JobFlowInstancesConfig { 10914 s.AdditionalMasterSecurityGroups = v 10915 return s 10916} 10917 10918// SetAdditionalSlaveSecurityGroups sets the AdditionalSlaveSecurityGroups field's value. 10919func (s *JobFlowInstancesConfig) SetAdditionalSlaveSecurityGroups(v []*string) *JobFlowInstancesConfig { 10920 s.AdditionalSlaveSecurityGroups = v 10921 return s 10922} 10923 10924// SetEc2KeyName sets the Ec2KeyName field's value. 10925func (s *JobFlowInstancesConfig) SetEc2KeyName(v string) *JobFlowInstancesConfig { 10926 s.Ec2KeyName = &v 10927 return s 10928} 10929 10930// SetEc2SubnetId sets the Ec2SubnetId field's value. 10931func (s *JobFlowInstancesConfig) SetEc2SubnetId(v string) *JobFlowInstancesConfig { 10932 s.Ec2SubnetId = &v 10933 return s 10934} 10935 10936// SetEc2SubnetIds sets the Ec2SubnetIds field's value. 10937func (s *JobFlowInstancesConfig) SetEc2SubnetIds(v []*string) *JobFlowInstancesConfig { 10938 s.Ec2SubnetIds = v 10939 return s 10940} 10941 10942// SetEmrManagedMasterSecurityGroup sets the EmrManagedMasterSecurityGroup field's value. 10943func (s *JobFlowInstancesConfig) SetEmrManagedMasterSecurityGroup(v string) *JobFlowInstancesConfig { 10944 s.EmrManagedMasterSecurityGroup = &v 10945 return s 10946} 10947 10948// SetEmrManagedSlaveSecurityGroup sets the EmrManagedSlaveSecurityGroup field's value. 10949func (s *JobFlowInstancesConfig) SetEmrManagedSlaveSecurityGroup(v string) *JobFlowInstancesConfig { 10950 s.EmrManagedSlaveSecurityGroup = &v 10951 return s 10952} 10953 10954// SetHadoopVersion sets the HadoopVersion field's value. 10955func (s *JobFlowInstancesConfig) SetHadoopVersion(v string) *JobFlowInstancesConfig { 10956 s.HadoopVersion = &v 10957 return s 10958} 10959 10960// SetInstanceCount sets the InstanceCount field's value. 10961func (s *JobFlowInstancesConfig) SetInstanceCount(v int64) *JobFlowInstancesConfig { 10962 s.InstanceCount = &v 10963 return s 10964} 10965 10966// SetInstanceFleets sets the InstanceFleets field's value. 10967func (s *JobFlowInstancesConfig) SetInstanceFleets(v []*InstanceFleetConfig) *JobFlowInstancesConfig { 10968 s.InstanceFleets = v 10969 return s 10970} 10971 10972// SetInstanceGroups sets the InstanceGroups field's value. 10973func (s *JobFlowInstancesConfig) SetInstanceGroups(v []*InstanceGroupConfig) *JobFlowInstancesConfig { 10974 s.InstanceGroups = v 10975 return s 10976} 10977 10978// SetKeepJobFlowAliveWhenNoSteps sets the KeepJobFlowAliveWhenNoSteps field's value. 10979func (s *JobFlowInstancesConfig) SetKeepJobFlowAliveWhenNoSteps(v bool) *JobFlowInstancesConfig { 10980 s.KeepJobFlowAliveWhenNoSteps = &v 10981 return s 10982} 10983 10984// SetMasterInstanceType sets the MasterInstanceType field's value. 10985func (s *JobFlowInstancesConfig) SetMasterInstanceType(v string) *JobFlowInstancesConfig { 10986 s.MasterInstanceType = &v 10987 return s 10988} 10989 10990// SetPlacement sets the Placement field's value. 10991func (s *JobFlowInstancesConfig) SetPlacement(v *PlacementType) *JobFlowInstancesConfig { 10992 s.Placement = v 10993 return s 10994} 10995 10996// SetServiceAccessSecurityGroup sets the ServiceAccessSecurityGroup field's value. 10997func (s *JobFlowInstancesConfig) SetServiceAccessSecurityGroup(v string) *JobFlowInstancesConfig { 10998 s.ServiceAccessSecurityGroup = &v 10999 return s 11000} 11001 11002// SetSlaveInstanceType sets the SlaveInstanceType field's value. 11003func (s *JobFlowInstancesConfig) SetSlaveInstanceType(v string) *JobFlowInstancesConfig { 11004 s.SlaveInstanceType = &v 11005 return s 11006} 11007 11008// SetTerminationProtected sets the TerminationProtected field's value. 11009func (s *JobFlowInstancesConfig) SetTerminationProtected(v bool) *JobFlowInstancesConfig { 11010 s.TerminationProtected = &v 11011 return s 11012} 11013 11014// Specify the type of Amazon EC2 instances that the cluster (job flow) runs 11015// on. 11016type JobFlowInstancesDetail struct { 11017 _ struct{} `type:"structure"` 11018 11019 // The name of an Amazon EC2 key pair that can be used to connect to the master 11020 // node using SSH. 11021 Ec2KeyName *string `type:"string"` 11022 11023 // For clusters launched within Amazon Virtual Private Cloud, this is the identifier 11024 // of the subnet where the cluster was launched. 11025 Ec2SubnetId *string `type:"string"` 11026 11027 // The Hadoop version for the cluster. 11028 HadoopVersion *string `type:"string"` 11029 11030 // The number of Amazon EC2 instances in the cluster. If the value is 1, the 11031 // same instance serves as both the master and core and task node. If the value 11032 // is greater than 1, one instance is the master node and all others are core 11033 // and task nodes. 11034 // 11035 // InstanceCount is a required field 11036 InstanceCount *int64 `type:"integer" required:"true"` 11037 11038 // Details about the instance groups in a cluster. 11039 InstanceGroups []*InstanceGroupDetail `type:"list"` 11040 11041 // Specifies whether the cluster should remain available after completing all 11042 // steps. 11043 KeepJobFlowAliveWhenNoSteps *bool `type:"boolean"` 11044 11045 // The Amazon EC2 instance identifier of the master node. 11046 MasterInstanceId *string `type:"string"` 11047 11048 // The Amazon EC2 master node instance type. 11049 // 11050 // MasterInstanceType is a required field 11051 MasterInstanceType *string `min:"1" type:"string" required:"true"` 11052 11053 // The DNS name of the master node. If the cluster is on a private subnet, this 11054 // is the private DNS name. On a public subnet, this is the public DNS name. 11055 MasterPublicDnsName *string `type:"string"` 11056 11057 // An approximation of the cost of the cluster, represented in m1.small/hours. 11058 // This value is increased one time for every hour that an m1.small instance 11059 // runs. Larger instances are weighted more heavily, so an Amazon EC2 instance 11060 // that is roughly four times more expensive would result in the normalized 11061 // instance hours being increased incrementally four times. This result is only 11062 // an approximation and does not reflect the actual billing rate. 11063 NormalizedInstanceHours *int64 `type:"integer"` 11064 11065 // The Amazon EC2 Availability Zone for the cluster. 11066 Placement *PlacementType `type:"structure"` 11067 11068 // The Amazon EC2 core and task node instance type. 11069 // 11070 // SlaveInstanceType is a required field 11071 SlaveInstanceType *string `min:"1" type:"string" required:"true"` 11072 11073 // Specifies whether the Amazon EC2 instances in the cluster are protected from 11074 // termination by API calls, user intervention, or in the event of a job-flow 11075 // error. 11076 TerminationProtected *bool `type:"boolean"` 11077} 11078 11079// String returns the string representation 11080func (s JobFlowInstancesDetail) String() string { 11081 return awsutil.Prettify(s) 11082} 11083 11084// GoString returns the string representation 11085func (s JobFlowInstancesDetail) GoString() string { 11086 return s.String() 11087} 11088 11089// SetEc2KeyName sets the Ec2KeyName field's value. 11090func (s *JobFlowInstancesDetail) SetEc2KeyName(v string) *JobFlowInstancesDetail { 11091 s.Ec2KeyName = &v 11092 return s 11093} 11094 11095// SetEc2SubnetId sets the Ec2SubnetId field's value. 11096func (s *JobFlowInstancesDetail) SetEc2SubnetId(v string) *JobFlowInstancesDetail { 11097 s.Ec2SubnetId = &v 11098 return s 11099} 11100 11101// SetHadoopVersion sets the HadoopVersion field's value. 11102func (s *JobFlowInstancesDetail) SetHadoopVersion(v string) *JobFlowInstancesDetail { 11103 s.HadoopVersion = &v 11104 return s 11105} 11106 11107// SetInstanceCount sets the InstanceCount field's value. 11108func (s *JobFlowInstancesDetail) SetInstanceCount(v int64) *JobFlowInstancesDetail { 11109 s.InstanceCount = &v 11110 return s 11111} 11112 11113// SetInstanceGroups sets the InstanceGroups field's value. 11114func (s *JobFlowInstancesDetail) SetInstanceGroups(v []*InstanceGroupDetail) *JobFlowInstancesDetail { 11115 s.InstanceGroups = v 11116 return s 11117} 11118 11119// SetKeepJobFlowAliveWhenNoSteps sets the KeepJobFlowAliveWhenNoSteps field's value. 11120func (s *JobFlowInstancesDetail) SetKeepJobFlowAliveWhenNoSteps(v bool) *JobFlowInstancesDetail { 11121 s.KeepJobFlowAliveWhenNoSteps = &v 11122 return s 11123} 11124 11125// SetMasterInstanceId sets the MasterInstanceId field's value. 11126func (s *JobFlowInstancesDetail) SetMasterInstanceId(v string) *JobFlowInstancesDetail { 11127 s.MasterInstanceId = &v 11128 return s 11129} 11130 11131// SetMasterInstanceType sets the MasterInstanceType field's value. 11132func (s *JobFlowInstancesDetail) SetMasterInstanceType(v string) *JobFlowInstancesDetail { 11133 s.MasterInstanceType = &v 11134 return s 11135} 11136 11137// SetMasterPublicDnsName sets the MasterPublicDnsName field's value. 11138func (s *JobFlowInstancesDetail) SetMasterPublicDnsName(v string) *JobFlowInstancesDetail { 11139 s.MasterPublicDnsName = &v 11140 return s 11141} 11142 11143// SetNormalizedInstanceHours sets the NormalizedInstanceHours field's value. 11144func (s *JobFlowInstancesDetail) SetNormalizedInstanceHours(v int64) *JobFlowInstancesDetail { 11145 s.NormalizedInstanceHours = &v 11146 return s 11147} 11148 11149// SetPlacement sets the Placement field's value. 11150func (s *JobFlowInstancesDetail) SetPlacement(v *PlacementType) *JobFlowInstancesDetail { 11151 s.Placement = v 11152 return s 11153} 11154 11155// SetSlaveInstanceType sets the SlaveInstanceType field's value. 11156func (s *JobFlowInstancesDetail) SetSlaveInstanceType(v string) *JobFlowInstancesDetail { 11157 s.SlaveInstanceType = &v 11158 return s 11159} 11160 11161// SetTerminationProtected sets the TerminationProtected field's value. 11162func (s *JobFlowInstancesDetail) SetTerminationProtected(v bool) *JobFlowInstancesDetail { 11163 s.TerminationProtected = &v 11164 return s 11165} 11166 11167// Attributes for Kerberos configuration when Kerberos authentication is enabled 11168// using a security configuration. For more information see Use Kerberos Authentication 11169// (https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-kerberos.html) 11170// in the Amazon EMR Management Guide. 11171type KerberosAttributes struct { 11172 _ struct{} `type:"structure"` 11173 11174 // The Active Directory password for ADDomainJoinUser. 11175 ADDomainJoinPassword *string `type:"string"` 11176 11177 // Required only when establishing a cross-realm trust with an Active Directory 11178 // domain. A user with sufficient privileges to join resources to the domain. 11179 ADDomainJoinUser *string `type:"string"` 11180 11181 // Required only when establishing a cross-realm trust with a KDC in a different 11182 // realm. The cross-realm principal password, which must be identical across 11183 // realms. 11184 CrossRealmTrustPrincipalPassword *string `type:"string"` 11185 11186 // The password used within the cluster for the kadmin service on the cluster-dedicated 11187 // KDC, which maintains Kerberos principals, password policies, and keytabs 11188 // for the cluster. 11189 // 11190 // KdcAdminPassword is a required field 11191 KdcAdminPassword *string `type:"string" required:"true"` 11192 11193 // The name of the Kerberos realm to which all nodes in a cluster belong. For 11194 // example, EC2.INTERNAL. 11195 // 11196 // Realm is a required field 11197 Realm *string `type:"string" required:"true"` 11198} 11199 11200// String returns the string representation 11201func (s KerberosAttributes) String() string { 11202 return awsutil.Prettify(s) 11203} 11204 11205// GoString returns the string representation 11206func (s KerberosAttributes) GoString() string { 11207 return s.String() 11208} 11209 11210// Validate inspects the fields of the type to determine if they are valid. 11211func (s *KerberosAttributes) Validate() error { 11212 invalidParams := request.ErrInvalidParams{Context: "KerberosAttributes"} 11213 if s.KdcAdminPassword == nil { 11214 invalidParams.Add(request.NewErrParamRequired("KdcAdminPassword")) 11215 } 11216 if s.Realm == nil { 11217 invalidParams.Add(request.NewErrParamRequired("Realm")) 11218 } 11219 11220 if invalidParams.Len() > 0 { 11221 return invalidParams 11222 } 11223 return nil 11224} 11225 11226// SetADDomainJoinPassword sets the ADDomainJoinPassword field's value. 11227func (s *KerberosAttributes) SetADDomainJoinPassword(v string) *KerberosAttributes { 11228 s.ADDomainJoinPassword = &v 11229 return s 11230} 11231 11232// SetADDomainJoinUser sets the ADDomainJoinUser field's value. 11233func (s *KerberosAttributes) SetADDomainJoinUser(v string) *KerberosAttributes { 11234 s.ADDomainJoinUser = &v 11235 return s 11236} 11237 11238// SetCrossRealmTrustPrincipalPassword sets the CrossRealmTrustPrincipalPassword field's value. 11239func (s *KerberosAttributes) SetCrossRealmTrustPrincipalPassword(v string) *KerberosAttributes { 11240 s.CrossRealmTrustPrincipalPassword = &v 11241 return s 11242} 11243 11244// SetKdcAdminPassword sets the KdcAdminPassword field's value. 11245func (s *KerberosAttributes) SetKdcAdminPassword(v string) *KerberosAttributes { 11246 s.KdcAdminPassword = &v 11247 return s 11248} 11249 11250// SetRealm sets the Realm field's value. 11251func (s *KerberosAttributes) SetRealm(v string) *KerberosAttributes { 11252 s.Realm = &v 11253 return s 11254} 11255 11256// A key-value pair. 11257type KeyValue struct { 11258 _ struct{} `type:"structure"` 11259 11260 // The unique identifier of a key-value pair. 11261 Key *string `type:"string"` 11262 11263 // The value part of the identified key. 11264 Value *string `type:"string"` 11265} 11266 11267// String returns the string representation 11268func (s KeyValue) String() string { 11269 return awsutil.Prettify(s) 11270} 11271 11272// GoString returns the string representation 11273func (s KeyValue) GoString() string { 11274 return s.String() 11275} 11276 11277// SetKey sets the Key field's value. 11278func (s *KeyValue) SetKey(v string) *KeyValue { 11279 s.Key = &v 11280 return s 11281} 11282 11283// SetValue sets the Value field's value. 11284func (s *KeyValue) SetValue(v string) *KeyValue { 11285 s.Value = &v 11286 return s 11287} 11288 11289// This input determines which bootstrap actions to retrieve. 11290type ListBootstrapActionsInput struct { 11291 _ struct{} `type:"structure"` 11292 11293 // The cluster identifier for the bootstrap actions to list. 11294 // 11295 // ClusterId is a required field 11296 ClusterId *string `type:"string" required:"true"` 11297 11298 // The pagination token that indicates the next set of results to retrieve. 11299 Marker *string `type:"string"` 11300} 11301 11302// String returns the string representation 11303func (s ListBootstrapActionsInput) String() string { 11304 return awsutil.Prettify(s) 11305} 11306 11307// GoString returns the string representation 11308func (s ListBootstrapActionsInput) GoString() string { 11309 return s.String() 11310} 11311 11312// Validate inspects the fields of the type to determine if they are valid. 11313func (s *ListBootstrapActionsInput) Validate() error { 11314 invalidParams := request.ErrInvalidParams{Context: "ListBootstrapActionsInput"} 11315 if s.ClusterId == nil { 11316 invalidParams.Add(request.NewErrParamRequired("ClusterId")) 11317 } 11318 11319 if invalidParams.Len() > 0 { 11320 return invalidParams 11321 } 11322 return nil 11323} 11324 11325// SetClusterId sets the ClusterId field's value. 11326func (s *ListBootstrapActionsInput) SetClusterId(v string) *ListBootstrapActionsInput { 11327 s.ClusterId = &v 11328 return s 11329} 11330 11331// SetMarker sets the Marker field's value. 11332func (s *ListBootstrapActionsInput) SetMarker(v string) *ListBootstrapActionsInput { 11333 s.Marker = &v 11334 return s 11335} 11336 11337// This output contains the bootstrap actions detail. 11338type ListBootstrapActionsOutput struct { 11339 _ struct{} `type:"structure"` 11340 11341 // The bootstrap actions associated with the cluster. 11342 BootstrapActions []*Command `type:"list"` 11343 11344 // The pagination token that indicates the next set of results to retrieve. 11345 Marker *string `type:"string"` 11346} 11347 11348// String returns the string representation 11349func (s ListBootstrapActionsOutput) String() string { 11350 return awsutil.Prettify(s) 11351} 11352 11353// GoString returns the string representation 11354func (s ListBootstrapActionsOutput) GoString() string { 11355 return s.String() 11356} 11357 11358// SetBootstrapActions sets the BootstrapActions field's value. 11359func (s *ListBootstrapActionsOutput) SetBootstrapActions(v []*Command) *ListBootstrapActionsOutput { 11360 s.BootstrapActions = v 11361 return s 11362} 11363 11364// SetMarker sets the Marker field's value. 11365func (s *ListBootstrapActionsOutput) SetMarker(v string) *ListBootstrapActionsOutput { 11366 s.Marker = &v 11367 return s 11368} 11369 11370// This input determines how the ListClusters action filters the list of clusters 11371// that it returns. 11372type ListClustersInput struct { 11373 _ struct{} `type:"structure"` 11374 11375 // The cluster state filters to apply when listing clusters. Clusters that change 11376 // state while this action runs may be not be returned as expected in the list 11377 // of clusters. 11378 ClusterStates []*string `type:"list"` 11379 11380 // The creation date and time beginning value filter for listing clusters. 11381 CreatedAfter *time.Time `type:"timestamp"` 11382 11383 // The creation date and time end value filter for listing clusters. 11384 CreatedBefore *time.Time `type:"timestamp"` 11385 11386 // The pagination token that indicates the next set of results to retrieve. 11387 Marker *string `type:"string"` 11388} 11389 11390// String returns the string representation 11391func (s ListClustersInput) String() string { 11392 return awsutil.Prettify(s) 11393} 11394 11395// GoString returns the string representation 11396func (s ListClustersInput) GoString() string { 11397 return s.String() 11398} 11399 11400// SetClusterStates sets the ClusterStates field's value. 11401func (s *ListClustersInput) SetClusterStates(v []*string) *ListClustersInput { 11402 s.ClusterStates = v 11403 return s 11404} 11405 11406// SetCreatedAfter sets the CreatedAfter field's value. 11407func (s *ListClustersInput) SetCreatedAfter(v time.Time) *ListClustersInput { 11408 s.CreatedAfter = &v 11409 return s 11410} 11411 11412// SetCreatedBefore sets the CreatedBefore field's value. 11413func (s *ListClustersInput) SetCreatedBefore(v time.Time) *ListClustersInput { 11414 s.CreatedBefore = &v 11415 return s 11416} 11417 11418// SetMarker sets the Marker field's value. 11419func (s *ListClustersInput) SetMarker(v string) *ListClustersInput { 11420 s.Marker = &v 11421 return s 11422} 11423 11424// This contains a ClusterSummaryList with the cluster details; for example, 11425// the cluster IDs, names, and status. 11426type ListClustersOutput struct { 11427 _ struct{} `type:"structure"` 11428 11429 // The list of clusters for the account based on the given filters. 11430 Clusters []*ClusterSummary `type:"list"` 11431 11432 // The pagination token that indicates the next set of results to retrieve. 11433 Marker *string `type:"string"` 11434} 11435 11436// String returns the string representation 11437func (s ListClustersOutput) String() string { 11438 return awsutil.Prettify(s) 11439} 11440 11441// GoString returns the string representation 11442func (s ListClustersOutput) GoString() string { 11443 return s.String() 11444} 11445 11446// SetClusters sets the Clusters field's value. 11447func (s *ListClustersOutput) SetClusters(v []*ClusterSummary) *ListClustersOutput { 11448 s.Clusters = v 11449 return s 11450} 11451 11452// SetMarker sets the Marker field's value. 11453func (s *ListClustersOutput) SetMarker(v string) *ListClustersOutput { 11454 s.Marker = &v 11455 return s 11456} 11457 11458type ListInstanceFleetsInput struct { 11459 _ struct{} `type:"structure"` 11460 11461 // The unique identifier of the cluster. 11462 // 11463 // ClusterId is a required field 11464 ClusterId *string `type:"string" required:"true"` 11465 11466 // The pagination token that indicates the next set of results to retrieve. 11467 Marker *string `type:"string"` 11468} 11469 11470// String returns the string representation 11471func (s ListInstanceFleetsInput) String() string { 11472 return awsutil.Prettify(s) 11473} 11474 11475// GoString returns the string representation 11476func (s ListInstanceFleetsInput) GoString() string { 11477 return s.String() 11478} 11479 11480// Validate inspects the fields of the type to determine if they are valid. 11481func (s *ListInstanceFleetsInput) Validate() error { 11482 invalidParams := request.ErrInvalidParams{Context: "ListInstanceFleetsInput"} 11483 if s.ClusterId == nil { 11484 invalidParams.Add(request.NewErrParamRequired("ClusterId")) 11485 } 11486 11487 if invalidParams.Len() > 0 { 11488 return invalidParams 11489 } 11490 return nil 11491} 11492 11493// SetClusterId sets the ClusterId field's value. 11494func (s *ListInstanceFleetsInput) SetClusterId(v string) *ListInstanceFleetsInput { 11495 s.ClusterId = &v 11496 return s 11497} 11498 11499// SetMarker sets the Marker field's value. 11500func (s *ListInstanceFleetsInput) SetMarker(v string) *ListInstanceFleetsInput { 11501 s.Marker = &v 11502 return s 11503} 11504 11505type ListInstanceFleetsOutput struct { 11506 _ struct{} `type:"structure"` 11507 11508 // The list of instance fleets for the cluster and given filters. 11509 InstanceFleets []*InstanceFleet `type:"list"` 11510 11511 // The pagination token that indicates the next set of results to retrieve. 11512 Marker *string `type:"string"` 11513} 11514 11515// String returns the string representation 11516func (s ListInstanceFleetsOutput) String() string { 11517 return awsutil.Prettify(s) 11518} 11519 11520// GoString returns the string representation 11521func (s ListInstanceFleetsOutput) GoString() string { 11522 return s.String() 11523} 11524 11525// SetInstanceFleets sets the InstanceFleets field's value. 11526func (s *ListInstanceFleetsOutput) SetInstanceFleets(v []*InstanceFleet) *ListInstanceFleetsOutput { 11527 s.InstanceFleets = v 11528 return s 11529} 11530 11531// SetMarker sets the Marker field's value. 11532func (s *ListInstanceFleetsOutput) SetMarker(v string) *ListInstanceFleetsOutput { 11533 s.Marker = &v 11534 return s 11535} 11536 11537// This input determines which instance groups to retrieve. 11538type ListInstanceGroupsInput struct { 11539 _ struct{} `type:"structure"` 11540 11541 // The identifier of the cluster for which to list the instance groups. 11542 // 11543 // ClusterId is a required field 11544 ClusterId *string `type:"string" required:"true"` 11545 11546 // The pagination token that indicates the next set of results to retrieve. 11547 Marker *string `type:"string"` 11548} 11549 11550// String returns the string representation 11551func (s ListInstanceGroupsInput) String() string { 11552 return awsutil.Prettify(s) 11553} 11554 11555// GoString returns the string representation 11556func (s ListInstanceGroupsInput) GoString() string { 11557 return s.String() 11558} 11559 11560// Validate inspects the fields of the type to determine if they are valid. 11561func (s *ListInstanceGroupsInput) Validate() error { 11562 invalidParams := request.ErrInvalidParams{Context: "ListInstanceGroupsInput"} 11563 if s.ClusterId == nil { 11564 invalidParams.Add(request.NewErrParamRequired("ClusterId")) 11565 } 11566 11567 if invalidParams.Len() > 0 { 11568 return invalidParams 11569 } 11570 return nil 11571} 11572 11573// SetClusterId sets the ClusterId field's value. 11574func (s *ListInstanceGroupsInput) SetClusterId(v string) *ListInstanceGroupsInput { 11575 s.ClusterId = &v 11576 return s 11577} 11578 11579// SetMarker sets the Marker field's value. 11580func (s *ListInstanceGroupsInput) SetMarker(v string) *ListInstanceGroupsInput { 11581 s.Marker = &v 11582 return s 11583} 11584 11585// This input determines which instance groups to retrieve. 11586type ListInstanceGroupsOutput struct { 11587 _ struct{} `type:"structure"` 11588 11589 // The list of instance groups for the cluster and given filters. 11590 InstanceGroups []*InstanceGroup `type:"list"` 11591 11592 // The pagination token that indicates the next set of results to retrieve. 11593 Marker *string `type:"string"` 11594} 11595 11596// String returns the string representation 11597func (s ListInstanceGroupsOutput) String() string { 11598 return awsutil.Prettify(s) 11599} 11600 11601// GoString returns the string representation 11602func (s ListInstanceGroupsOutput) GoString() string { 11603 return s.String() 11604} 11605 11606// SetInstanceGroups sets the InstanceGroups field's value. 11607func (s *ListInstanceGroupsOutput) SetInstanceGroups(v []*InstanceGroup) *ListInstanceGroupsOutput { 11608 s.InstanceGroups = v 11609 return s 11610} 11611 11612// SetMarker sets the Marker field's value. 11613func (s *ListInstanceGroupsOutput) SetMarker(v string) *ListInstanceGroupsOutput { 11614 s.Marker = &v 11615 return s 11616} 11617 11618// This input determines which instances to list. 11619type ListInstancesInput struct { 11620 _ struct{} `type:"structure"` 11621 11622 // The identifier of the cluster for which to list the instances. 11623 // 11624 // ClusterId is a required field 11625 ClusterId *string `type:"string" required:"true"` 11626 11627 // The unique identifier of the instance fleet. 11628 InstanceFleetId *string `type:"string"` 11629 11630 // The node type of the instance fleet. For example MASTER, CORE, or TASK. 11631 InstanceFleetType *string `type:"string" enum:"InstanceFleetType"` 11632 11633 // The identifier of the instance group for which to list the instances. 11634 InstanceGroupId *string `type:"string"` 11635 11636 // The type of instance group for which to list the instances. 11637 InstanceGroupTypes []*string `type:"list"` 11638 11639 // A list of instance states that will filter the instances returned with this 11640 // request. 11641 InstanceStates []*string `type:"list"` 11642 11643 // The pagination token that indicates the next set of results to retrieve. 11644 Marker *string `type:"string"` 11645} 11646 11647// String returns the string representation 11648func (s ListInstancesInput) String() string { 11649 return awsutil.Prettify(s) 11650} 11651 11652// GoString returns the string representation 11653func (s ListInstancesInput) GoString() string { 11654 return s.String() 11655} 11656 11657// Validate inspects the fields of the type to determine if they are valid. 11658func (s *ListInstancesInput) Validate() error { 11659 invalidParams := request.ErrInvalidParams{Context: "ListInstancesInput"} 11660 if s.ClusterId == nil { 11661 invalidParams.Add(request.NewErrParamRequired("ClusterId")) 11662 } 11663 11664 if invalidParams.Len() > 0 { 11665 return invalidParams 11666 } 11667 return nil 11668} 11669 11670// SetClusterId sets the ClusterId field's value. 11671func (s *ListInstancesInput) SetClusterId(v string) *ListInstancesInput { 11672 s.ClusterId = &v 11673 return s 11674} 11675 11676// SetInstanceFleetId sets the InstanceFleetId field's value. 11677func (s *ListInstancesInput) SetInstanceFleetId(v string) *ListInstancesInput { 11678 s.InstanceFleetId = &v 11679 return s 11680} 11681 11682// SetInstanceFleetType sets the InstanceFleetType field's value. 11683func (s *ListInstancesInput) SetInstanceFleetType(v string) *ListInstancesInput { 11684 s.InstanceFleetType = &v 11685 return s 11686} 11687 11688// SetInstanceGroupId sets the InstanceGroupId field's value. 11689func (s *ListInstancesInput) SetInstanceGroupId(v string) *ListInstancesInput { 11690 s.InstanceGroupId = &v 11691 return s 11692} 11693 11694// SetInstanceGroupTypes sets the InstanceGroupTypes field's value. 11695func (s *ListInstancesInput) SetInstanceGroupTypes(v []*string) *ListInstancesInput { 11696 s.InstanceGroupTypes = v 11697 return s 11698} 11699 11700// SetInstanceStates sets the InstanceStates field's value. 11701func (s *ListInstancesInput) SetInstanceStates(v []*string) *ListInstancesInput { 11702 s.InstanceStates = v 11703 return s 11704} 11705 11706// SetMarker sets the Marker field's value. 11707func (s *ListInstancesInput) SetMarker(v string) *ListInstancesInput { 11708 s.Marker = &v 11709 return s 11710} 11711 11712// This output contains the list of instances. 11713type ListInstancesOutput struct { 11714 _ struct{} `type:"structure"` 11715 11716 // The list of instances for the cluster and given filters. 11717 Instances []*Instance `type:"list"` 11718 11719 // The pagination token that indicates the next set of results to retrieve. 11720 Marker *string `type:"string"` 11721} 11722 11723// String returns the string representation 11724func (s ListInstancesOutput) String() string { 11725 return awsutil.Prettify(s) 11726} 11727 11728// GoString returns the string representation 11729func (s ListInstancesOutput) GoString() string { 11730 return s.String() 11731} 11732 11733// SetInstances sets the Instances field's value. 11734func (s *ListInstancesOutput) SetInstances(v []*Instance) *ListInstancesOutput { 11735 s.Instances = v 11736 return s 11737} 11738 11739// SetMarker sets the Marker field's value. 11740func (s *ListInstancesOutput) SetMarker(v string) *ListInstancesOutput { 11741 s.Marker = &v 11742 return s 11743} 11744 11745type ListNotebookExecutionsInput struct { 11746 _ struct{} `type:"structure"` 11747 11748 // The unique ID of the editor associated with the notebook execution. 11749 EditorId *string `type:"string"` 11750 11751 // The beginning of time range filter for listing notebook executions. The default 11752 // is the timestamp of 30 days ago. 11753 From *time.Time `type:"timestamp"` 11754 11755 // The pagination token, returned by a previous ListNotebookExecutions call, 11756 // that indicates the start of the list for this ListNotebookExecutions call. 11757 Marker *string `type:"string"` 11758 11759 // The status filter for listing notebook executions. 11760 // 11761 // * START_PENDING indicates that the cluster has received the execution 11762 // request but execution has not begun. 11763 // 11764 // * STARTING indicates that the execution is starting on the cluster. 11765 // 11766 // * RUNNING indicates that the execution is being processed by the cluster. 11767 // 11768 // * FINISHING indicates that execution processing is in the final stages. 11769 // 11770 // * FINISHED indicates that the execution has completed without error. 11771 // 11772 // * FAILING indicates that the execution is failing and will not finish 11773 // successfully. 11774 // 11775 // * FAILED indicates that the execution failed. 11776 // 11777 // * STOP_PENDING indicates that the cluster has received a StopNotebookExecution 11778 // request and the stop is pending. 11779 // 11780 // * STOPPING indicates that the cluster is in the process of stopping the 11781 // execution as a result of a StopNotebookExecution request. 11782 // 11783 // * STOPPED indicates that the execution stopped because of a StopNotebookExecution 11784 // request. 11785 Status *string `type:"string" enum:"NotebookExecutionStatus"` 11786 11787 // The end of time range filter for listing notebook executions. The default 11788 // is the current timestamp. 11789 To *time.Time `type:"timestamp"` 11790} 11791 11792// String returns the string representation 11793func (s ListNotebookExecutionsInput) String() string { 11794 return awsutil.Prettify(s) 11795} 11796 11797// GoString returns the string representation 11798func (s ListNotebookExecutionsInput) GoString() string { 11799 return s.String() 11800} 11801 11802// SetEditorId sets the EditorId field's value. 11803func (s *ListNotebookExecutionsInput) SetEditorId(v string) *ListNotebookExecutionsInput { 11804 s.EditorId = &v 11805 return s 11806} 11807 11808// SetFrom sets the From field's value. 11809func (s *ListNotebookExecutionsInput) SetFrom(v time.Time) *ListNotebookExecutionsInput { 11810 s.From = &v 11811 return s 11812} 11813 11814// SetMarker sets the Marker field's value. 11815func (s *ListNotebookExecutionsInput) SetMarker(v string) *ListNotebookExecutionsInput { 11816 s.Marker = &v 11817 return s 11818} 11819 11820// SetStatus sets the Status field's value. 11821func (s *ListNotebookExecutionsInput) SetStatus(v string) *ListNotebookExecutionsInput { 11822 s.Status = &v 11823 return s 11824} 11825 11826// SetTo sets the To field's value. 11827func (s *ListNotebookExecutionsInput) SetTo(v time.Time) *ListNotebookExecutionsInput { 11828 s.To = &v 11829 return s 11830} 11831 11832type ListNotebookExecutionsOutput struct { 11833 _ struct{} `type:"structure"` 11834 11835 // A pagination token that a subsequent ListNotebookExecutions can use to determine 11836 // the next set of results to retrieve. 11837 Marker *string `type:"string"` 11838 11839 // A list of notebook executions. 11840 NotebookExecutions []*NotebookExecutionSummary `type:"list"` 11841} 11842 11843// String returns the string representation 11844func (s ListNotebookExecutionsOutput) String() string { 11845 return awsutil.Prettify(s) 11846} 11847 11848// GoString returns the string representation 11849func (s ListNotebookExecutionsOutput) GoString() string { 11850 return s.String() 11851} 11852 11853// SetMarker sets the Marker field's value. 11854func (s *ListNotebookExecutionsOutput) SetMarker(v string) *ListNotebookExecutionsOutput { 11855 s.Marker = &v 11856 return s 11857} 11858 11859// SetNotebookExecutions sets the NotebookExecutions field's value. 11860func (s *ListNotebookExecutionsOutput) SetNotebookExecutions(v []*NotebookExecutionSummary) *ListNotebookExecutionsOutput { 11861 s.NotebookExecutions = v 11862 return s 11863} 11864 11865type ListReleaseLabelsInput struct { 11866 _ struct{} `type:"structure"` 11867 11868 // Filters the results of the request. Prefix specifies the prefix of release 11869 // labels to return. Application specifies the application (with/without version) 11870 // of release labels to return. 11871 Filters *ReleaseLabelFilter `type:"structure"` 11872 11873 // Defines the maximum number of release labels to return in a single response. 11874 // The default is 100. 11875 MaxResults *int64 `min:"1" type:"integer"` 11876 11877 // Specifies the next page of results. If NextToken is not specified, which 11878 // is usually the case for the first request of ListReleaseLabels, the first 11879 // page of results are determined by other filtering parameters or by the latest 11880 // version. The ListReleaseLabels request fails if the identity (account ID) 11881 // and all filtering parameters are different from the original request, or 11882 // if the NextToken is expired or tampered with. 11883 NextToken *string `type:"string"` 11884} 11885 11886// String returns the string representation 11887func (s ListReleaseLabelsInput) String() string { 11888 return awsutil.Prettify(s) 11889} 11890 11891// GoString returns the string representation 11892func (s ListReleaseLabelsInput) GoString() string { 11893 return s.String() 11894} 11895 11896// Validate inspects the fields of the type to determine if they are valid. 11897func (s *ListReleaseLabelsInput) Validate() error { 11898 invalidParams := request.ErrInvalidParams{Context: "ListReleaseLabelsInput"} 11899 if s.MaxResults != nil && *s.MaxResults < 1 { 11900 invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) 11901 } 11902 11903 if invalidParams.Len() > 0 { 11904 return invalidParams 11905 } 11906 return nil 11907} 11908 11909// SetFilters sets the Filters field's value. 11910func (s *ListReleaseLabelsInput) SetFilters(v *ReleaseLabelFilter) *ListReleaseLabelsInput { 11911 s.Filters = v 11912 return s 11913} 11914 11915// SetMaxResults sets the MaxResults field's value. 11916func (s *ListReleaseLabelsInput) SetMaxResults(v int64) *ListReleaseLabelsInput { 11917 s.MaxResults = &v 11918 return s 11919} 11920 11921// SetNextToken sets the NextToken field's value. 11922func (s *ListReleaseLabelsInput) SetNextToken(v string) *ListReleaseLabelsInput { 11923 s.NextToken = &v 11924 return s 11925} 11926 11927type ListReleaseLabelsOutput struct { 11928 _ struct{} `type:"structure"` 11929 11930 // Used to paginate the next page of results if specified in the next ListReleaseLabels 11931 // request. 11932 NextToken *string `type:"string"` 11933 11934 // The returned release labels. 11935 ReleaseLabels []*string `type:"list"` 11936} 11937 11938// String returns the string representation 11939func (s ListReleaseLabelsOutput) String() string { 11940 return awsutil.Prettify(s) 11941} 11942 11943// GoString returns the string representation 11944func (s ListReleaseLabelsOutput) GoString() string { 11945 return s.String() 11946} 11947 11948// SetNextToken sets the NextToken field's value. 11949func (s *ListReleaseLabelsOutput) SetNextToken(v string) *ListReleaseLabelsOutput { 11950 s.NextToken = &v 11951 return s 11952} 11953 11954// SetReleaseLabels sets the ReleaseLabels field's value. 11955func (s *ListReleaseLabelsOutput) SetReleaseLabels(v []*string) *ListReleaseLabelsOutput { 11956 s.ReleaseLabels = v 11957 return s 11958} 11959 11960type ListSecurityConfigurationsInput struct { 11961 _ struct{} `type:"structure"` 11962 11963 // The pagination token that indicates the set of results to retrieve. 11964 Marker *string `type:"string"` 11965} 11966 11967// String returns the string representation 11968func (s ListSecurityConfigurationsInput) String() string { 11969 return awsutil.Prettify(s) 11970} 11971 11972// GoString returns the string representation 11973func (s ListSecurityConfigurationsInput) GoString() string { 11974 return s.String() 11975} 11976 11977// SetMarker sets the Marker field's value. 11978func (s *ListSecurityConfigurationsInput) SetMarker(v string) *ListSecurityConfigurationsInput { 11979 s.Marker = &v 11980 return s 11981} 11982 11983type ListSecurityConfigurationsOutput struct { 11984 _ struct{} `type:"structure"` 11985 11986 // A pagination token that indicates the next set of results to retrieve. Include 11987 // the marker in the next ListSecurityConfiguration call to retrieve the next 11988 // page of results, if required. 11989 Marker *string `type:"string"` 11990 11991 // The creation date and time, and name, of each security configuration. 11992 SecurityConfigurations []*SecurityConfigurationSummary `type:"list"` 11993} 11994 11995// String returns the string representation 11996func (s ListSecurityConfigurationsOutput) String() string { 11997 return awsutil.Prettify(s) 11998} 11999 12000// GoString returns the string representation 12001func (s ListSecurityConfigurationsOutput) GoString() string { 12002 return s.String() 12003} 12004 12005// SetMarker sets the Marker field's value. 12006func (s *ListSecurityConfigurationsOutput) SetMarker(v string) *ListSecurityConfigurationsOutput { 12007 s.Marker = &v 12008 return s 12009} 12010 12011// SetSecurityConfigurations sets the SecurityConfigurations field's value. 12012func (s *ListSecurityConfigurationsOutput) SetSecurityConfigurations(v []*SecurityConfigurationSummary) *ListSecurityConfigurationsOutput { 12013 s.SecurityConfigurations = v 12014 return s 12015} 12016 12017// This input determines which steps to list. 12018type ListStepsInput struct { 12019 _ struct{} `type:"structure"` 12020 12021 // The identifier of the cluster for which to list the steps. 12022 // 12023 // ClusterId is a required field 12024 ClusterId *string `type:"string" required:"true"` 12025 12026 // The maximum number of steps that a single ListSteps action returns is 50. 12027 // To return a longer list of steps, use multiple ListSteps actions along with 12028 // the Marker parameter, which is a pagination token that indicates the next 12029 // set of results to retrieve. 12030 Marker *string `type:"string"` 12031 12032 // The filter to limit the step list based on the identifier of the steps. You 12033 // can specify a maximum of ten Step IDs. The character constraint applies to 12034 // the overall length of the array. 12035 StepIds []*string `type:"list"` 12036 12037 // The filter to limit the step list based on certain states. 12038 StepStates []*string `type:"list"` 12039} 12040 12041// String returns the string representation 12042func (s ListStepsInput) String() string { 12043 return awsutil.Prettify(s) 12044} 12045 12046// GoString returns the string representation 12047func (s ListStepsInput) GoString() string { 12048 return s.String() 12049} 12050 12051// Validate inspects the fields of the type to determine if they are valid. 12052func (s *ListStepsInput) Validate() error { 12053 invalidParams := request.ErrInvalidParams{Context: "ListStepsInput"} 12054 if s.ClusterId == nil { 12055 invalidParams.Add(request.NewErrParamRequired("ClusterId")) 12056 } 12057 12058 if invalidParams.Len() > 0 { 12059 return invalidParams 12060 } 12061 return nil 12062} 12063 12064// SetClusterId sets the ClusterId field's value. 12065func (s *ListStepsInput) SetClusterId(v string) *ListStepsInput { 12066 s.ClusterId = &v 12067 return s 12068} 12069 12070// SetMarker sets the Marker field's value. 12071func (s *ListStepsInput) SetMarker(v string) *ListStepsInput { 12072 s.Marker = &v 12073 return s 12074} 12075 12076// SetStepIds sets the StepIds field's value. 12077func (s *ListStepsInput) SetStepIds(v []*string) *ListStepsInput { 12078 s.StepIds = v 12079 return s 12080} 12081 12082// SetStepStates sets the StepStates field's value. 12083func (s *ListStepsInput) SetStepStates(v []*string) *ListStepsInput { 12084 s.StepStates = v 12085 return s 12086} 12087 12088// This output contains the list of steps returned in reverse order. This means 12089// that the last step is the first element in the list. 12090type ListStepsOutput struct { 12091 _ struct{} `type:"structure"` 12092 12093 // The maximum number of steps that a single ListSteps action returns is 50. 12094 // To return a longer list of steps, use multiple ListSteps actions along with 12095 // the Marker parameter, which is a pagination token that indicates the next 12096 // set of results to retrieve. 12097 Marker *string `type:"string"` 12098 12099 // The filtered list of steps for the cluster. 12100 Steps []*StepSummary `type:"list"` 12101} 12102 12103// String returns the string representation 12104func (s ListStepsOutput) String() string { 12105 return awsutil.Prettify(s) 12106} 12107 12108// GoString returns the string representation 12109func (s ListStepsOutput) GoString() string { 12110 return s.String() 12111} 12112 12113// SetMarker sets the Marker field's value. 12114func (s *ListStepsOutput) SetMarker(v string) *ListStepsOutput { 12115 s.Marker = &v 12116 return s 12117} 12118 12119// SetSteps sets the Steps field's value. 12120func (s *ListStepsOutput) SetSteps(v []*StepSummary) *ListStepsOutput { 12121 s.Steps = v 12122 return s 12123} 12124 12125type ListStudioSessionMappingsInput struct { 12126 _ struct{} `type:"structure"` 12127 12128 // Specifies whether to return session mappings for users or groups. If not 12129 // specified, the results include session mapping details for both users and 12130 // groups. 12131 IdentityType *string `type:"string" enum:"IdentityType"` 12132 12133 // The pagination token that indicates the set of results to retrieve. 12134 Marker *string `type:"string"` 12135 12136 // The ID of the Amazon EMR Studio. 12137 StudioId *string `type:"string"` 12138} 12139 12140// String returns the string representation 12141func (s ListStudioSessionMappingsInput) String() string { 12142 return awsutil.Prettify(s) 12143} 12144 12145// GoString returns the string representation 12146func (s ListStudioSessionMappingsInput) GoString() string { 12147 return s.String() 12148} 12149 12150// SetIdentityType sets the IdentityType field's value. 12151func (s *ListStudioSessionMappingsInput) SetIdentityType(v string) *ListStudioSessionMappingsInput { 12152 s.IdentityType = &v 12153 return s 12154} 12155 12156// SetMarker sets the Marker field's value. 12157func (s *ListStudioSessionMappingsInput) SetMarker(v string) *ListStudioSessionMappingsInput { 12158 s.Marker = &v 12159 return s 12160} 12161 12162// SetStudioId sets the StudioId field's value. 12163func (s *ListStudioSessionMappingsInput) SetStudioId(v string) *ListStudioSessionMappingsInput { 12164 s.StudioId = &v 12165 return s 12166} 12167 12168type ListStudioSessionMappingsOutput struct { 12169 _ struct{} `type:"structure"` 12170 12171 // The pagination token that indicates the next set of results to retrieve. 12172 Marker *string `type:"string"` 12173 12174 // A list of session mapping summary objects. Each object includes session mapping 12175 // details such as creation time, identity type (user or group), and Amazon 12176 // EMR Studio ID. 12177 SessionMappings []*SessionMappingSummary `type:"list"` 12178} 12179 12180// String returns the string representation 12181func (s ListStudioSessionMappingsOutput) String() string { 12182 return awsutil.Prettify(s) 12183} 12184 12185// GoString returns the string representation 12186func (s ListStudioSessionMappingsOutput) GoString() string { 12187 return s.String() 12188} 12189 12190// SetMarker sets the Marker field's value. 12191func (s *ListStudioSessionMappingsOutput) SetMarker(v string) *ListStudioSessionMappingsOutput { 12192 s.Marker = &v 12193 return s 12194} 12195 12196// SetSessionMappings sets the SessionMappings field's value. 12197func (s *ListStudioSessionMappingsOutput) SetSessionMappings(v []*SessionMappingSummary) *ListStudioSessionMappingsOutput { 12198 s.SessionMappings = v 12199 return s 12200} 12201 12202type ListStudiosInput struct { 12203 _ struct{} `type:"structure"` 12204 12205 // The pagination token that indicates the set of results to retrieve. 12206 Marker *string `type:"string"` 12207} 12208 12209// String returns the string representation 12210func (s ListStudiosInput) String() string { 12211 return awsutil.Prettify(s) 12212} 12213 12214// GoString returns the string representation 12215func (s ListStudiosInput) GoString() string { 12216 return s.String() 12217} 12218 12219// SetMarker sets the Marker field's value. 12220func (s *ListStudiosInput) SetMarker(v string) *ListStudiosInput { 12221 s.Marker = &v 12222 return s 12223} 12224 12225type ListStudiosOutput struct { 12226 _ struct{} `type:"structure"` 12227 12228 // The pagination token that indicates the next set of results to retrieve. 12229 Marker *string `type:"string"` 12230 12231 // The list of Studio summary objects. 12232 Studios []*StudioSummary `type:"list"` 12233} 12234 12235// String returns the string representation 12236func (s ListStudiosOutput) String() string { 12237 return awsutil.Prettify(s) 12238} 12239 12240// GoString returns the string representation 12241func (s ListStudiosOutput) GoString() string { 12242 return s.String() 12243} 12244 12245// SetMarker sets the Marker field's value. 12246func (s *ListStudiosOutput) SetMarker(v string) *ListStudiosOutput { 12247 s.Marker = &v 12248 return s 12249} 12250 12251// SetStudios sets the Studios field's value. 12252func (s *ListStudiosOutput) SetStudios(v []*StudioSummary) *ListStudiosOutput { 12253 s.Studios = v 12254 return s 12255} 12256 12257// Managed scaling policy for an Amazon EMR cluster. The policy specifies the 12258// limits for resources that can be added or terminated from a cluster. The 12259// policy only applies to the core and task nodes. The master node cannot be 12260// scaled after initial configuration. 12261type ManagedScalingPolicy struct { 12262 _ struct{} `type:"structure"` 12263 12264 // The EC2 unit limits for a managed scaling policy. The managed scaling activity 12265 // of a cluster is not allowed to go above or below these limits. The limit 12266 // only applies to the core and task nodes. The master node cannot be scaled 12267 // after initial configuration. 12268 ComputeLimits *ComputeLimits `type:"structure"` 12269} 12270 12271// String returns the string representation 12272func (s ManagedScalingPolicy) String() string { 12273 return awsutil.Prettify(s) 12274} 12275 12276// GoString returns the string representation 12277func (s ManagedScalingPolicy) GoString() string { 12278 return s.String() 12279} 12280 12281// Validate inspects the fields of the type to determine if they are valid. 12282func (s *ManagedScalingPolicy) Validate() error { 12283 invalidParams := request.ErrInvalidParams{Context: "ManagedScalingPolicy"} 12284 if s.ComputeLimits != nil { 12285 if err := s.ComputeLimits.Validate(); err != nil { 12286 invalidParams.AddNested("ComputeLimits", err.(request.ErrInvalidParams)) 12287 } 12288 } 12289 12290 if invalidParams.Len() > 0 { 12291 return invalidParams 12292 } 12293 return nil 12294} 12295 12296// SetComputeLimits sets the ComputeLimits field's value. 12297func (s *ManagedScalingPolicy) SetComputeLimits(v *ComputeLimits) *ManagedScalingPolicy { 12298 s.ComputeLimits = v 12299 return s 12300} 12301 12302// A CloudWatch dimension, which is specified using a Key (known as a Name in 12303// CloudWatch), Value pair. By default, Amazon EMR uses one dimension whose 12304// Key is JobFlowID and Value is a variable representing the cluster ID, which 12305// is ${emr.clusterId}. This enables the rule to bootstrap when the cluster 12306// ID becomes available. 12307type MetricDimension struct { 12308 _ struct{} `type:"structure"` 12309 12310 // The dimension name. 12311 Key *string `type:"string"` 12312 12313 // The dimension value. 12314 Value *string `type:"string"` 12315} 12316 12317// String returns the string representation 12318func (s MetricDimension) String() string { 12319 return awsutil.Prettify(s) 12320} 12321 12322// GoString returns the string representation 12323func (s MetricDimension) GoString() string { 12324 return s.String() 12325} 12326 12327// SetKey sets the Key field's value. 12328func (s *MetricDimension) SetKey(v string) *MetricDimension { 12329 s.Key = &v 12330 return s 12331} 12332 12333// SetValue sets the Value field's value. 12334func (s *MetricDimension) SetValue(v string) *MetricDimension { 12335 s.Value = &v 12336 return s 12337} 12338 12339type ModifyClusterInput struct { 12340 _ struct{} `type:"structure"` 12341 12342 // The unique identifier of the cluster. 12343 // 12344 // ClusterId is a required field 12345 ClusterId *string `type:"string" required:"true"` 12346 12347 // The number of steps that can be executed concurrently. You can specify a 12348 // minimum of 1 step and a maximum of 256 steps. We recommend that you do not 12349 // change this parameter while steps are running or the ActionOnFailure setting 12350 // may not behave as expected. For more information see Step$ActionOnFailure. 12351 StepConcurrencyLevel *int64 `type:"integer"` 12352} 12353 12354// String returns the string representation 12355func (s ModifyClusterInput) String() string { 12356 return awsutil.Prettify(s) 12357} 12358 12359// GoString returns the string representation 12360func (s ModifyClusterInput) GoString() string { 12361 return s.String() 12362} 12363 12364// Validate inspects the fields of the type to determine if they are valid. 12365func (s *ModifyClusterInput) Validate() error { 12366 invalidParams := request.ErrInvalidParams{Context: "ModifyClusterInput"} 12367 if s.ClusterId == nil { 12368 invalidParams.Add(request.NewErrParamRequired("ClusterId")) 12369 } 12370 12371 if invalidParams.Len() > 0 { 12372 return invalidParams 12373 } 12374 return nil 12375} 12376 12377// SetClusterId sets the ClusterId field's value. 12378func (s *ModifyClusterInput) SetClusterId(v string) *ModifyClusterInput { 12379 s.ClusterId = &v 12380 return s 12381} 12382 12383// SetStepConcurrencyLevel sets the StepConcurrencyLevel field's value. 12384func (s *ModifyClusterInput) SetStepConcurrencyLevel(v int64) *ModifyClusterInput { 12385 s.StepConcurrencyLevel = &v 12386 return s 12387} 12388 12389type ModifyClusterOutput struct { 12390 _ struct{} `type:"structure"` 12391 12392 // The number of steps that can be executed concurrently. 12393 StepConcurrencyLevel *int64 `type:"integer"` 12394} 12395 12396// String returns the string representation 12397func (s ModifyClusterOutput) String() string { 12398 return awsutil.Prettify(s) 12399} 12400 12401// GoString returns the string representation 12402func (s ModifyClusterOutput) GoString() string { 12403 return s.String() 12404} 12405 12406// SetStepConcurrencyLevel sets the StepConcurrencyLevel field's value. 12407func (s *ModifyClusterOutput) SetStepConcurrencyLevel(v int64) *ModifyClusterOutput { 12408 s.StepConcurrencyLevel = &v 12409 return s 12410} 12411 12412type ModifyInstanceFleetInput struct { 12413 _ struct{} `type:"structure"` 12414 12415 // The unique identifier of the cluster. 12416 // 12417 // ClusterId is a required field 12418 ClusterId *string `type:"string" required:"true"` 12419 12420 // The configuration parameters of the instance fleet. 12421 // 12422 // InstanceFleet is a required field 12423 InstanceFleet *InstanceFleetModifyConfig `type:"structure" required:"true"` 12424} 12425 12426// String returns the string representation 12427func (s ModifyInstanceFleetInput) String() string { 12428 return awsutil.Prettify(s) 12429} 12430 12431// GoString returns the string representation 12432func (s ModifyInstanceFleetInput) GoString() string { 12433 return s.String() 12434} 12435 12436// Validate inspects the fields of the type to determine if they are valid. 12437func (s *ModifyInstanceFleetInput) Validate() error { 12438 invalidParams := request.ErrInvalidParams{Context: "ModifyInstanceFleetInput"} 12439 if s.ClusterId == nil { 12440 invalidParams.Add(request.NewErrParamRequired("ClusterId")) 12441 } 12442 if s.InstanceFleet == nil { 12443 invalidParams.Add(request.NewErrParamRequired("InstanceFleet")) 12444 } 12445 if s.InstanceFleet != nil { 12446 if err := s.InstanceFleet.Validate(); err != nil { 12447 invalidParams.AddNested("InstanceFleet", err.(request.ErrInvalidParams)) 12448 } 12449 } 12450 12451 if invalidParams.Len() > 0 { 12452 return invalidParams 12453 } 12454 return nil 12455} 12456 12457// SetClusterId sets the ClusterId field's value. 12458func (s *ModifyInstanceFleetInput) SetClusterId(v string) *ModifyInstanceFleetInput { 12459 s.ClusterId = &v 12460 return s 12461} 12462 12463// SetInstanceFleet sets the InstanceFleet field's value. 12464func (s *ModifyInstanceFleetInput) SetInstanceFleet(v *InstanceFleetModifyConfig) *ModifyInstanceFleetInput { 12465 s.InstanceFleet = v 12466 return s 12467} 12468 12469type ModifyInstanceFleetOutput struct { 12470 _ struct{} `type:"structure"` 12471} 12472 12473// String returns the string representation 12474func (s ModifyInstanceFleetOutput) String() string { 12475 return awsutil.Prettify(s) 12476} 12477 12478// GoString returns the string representation 12479func (s ModifyInstanceFleetOutput) GoString() string { 12480 return s.String() 12481} 12482 12483// Change the size of some instance groups. 12484type ModifyInstanceGroupsInput struct { 12485 _ struct{} `type:"structure"` 12486 12487 // The ID of the cluster to which the instance group belongs. 12488 ClusterId *string `type:"string"` 12489 12490 // Instance groups to change. 12491 InstanceGroups []*InstanceGroupModifyConfig `type:"list"` 12492} 12493 12494// String returns the string representation 12495func (s ModifyInstanceGroupsInput) String() string { 12496 return awsutil.Prettify(s) 12497} 12498 12499// GoString returns the string representation 12500func (s ModifyInstanceGroupsInput) GoString() string { 12501 return s.String() 12502} 12503 12504// Validate inspects the fields of the type to determine if they are valid. 12505func (s *ModifyInstanceGroupsInput) Validate() error { 12506 invalidParams := request.ErrInvalidParams{Context: "ModifyInstanceGroupsInput"} 12507 if s.InstanceGroups != nil { 12508 for i, v := range s.InstanceGroups { 12509 if v == nil { 12510 continue 12511 } 12512 if err := v.Validate(); err != nil { 12513 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "InstanceGroups", i), err.(request.ErrInvalidParams)) 12514 } 12515 } 12516 } 12517 12518 if invalidParams.Len() > 0 { 12519 return invalidParams 12520 } 12521 return nil 12522} 12523 12524// SetClusterId sets the ClusterId field's value. 12525func (s *ModifyInstanceGroupsInput) SetClusterId(v string) *ModifyInstanceGroupsInput { 12526 s.ClusterId = &v 12527 return s 12528} 12529 12530// SetInstanceGroups sets the InstanceGroups field's value. 12531func (s *ModifyInstanceGroupsInput) SetInstanceGroups(v []*InstanceGroupModifyConfig) *ModifyInstanceGroupsInput { 12532 s.InstanceGroups = v 12533 return s 12534} 12535 12536type ModifyInstanceGroupsOutput struct { 12537 _ struct{} `type:"structure"` 12538} 12539 12540// String returns the string representation 12541func (s ModifyInstanceGroupsOutput) String() string { 12542 return awsutil.Prettify(s) 12543} 12544 12545// GoString returns the string representation 12546func (s ModifyInstanceGroupsOutput) GoString() string { 12547 return s.String() 12548} 12549 12550// A notebook execution. An execution is a specific instance that an EMR Notebook 12551// is run using the StartNotebookExecution action. 12552type NotebookExecution struct { 12553 _ struct{} `type:"structure"` 12554 12555 // The Amazon Resource Name (ARN) of the notebook execution. 12556 Arn *string `type:"string"` 12557 12558 // The unique identifier of the EMR Notebook that is used for the notebook execution. 12559 EditorId *string `type:"string"` 12560 12561 // The timestamp when notebook execution ended. 12562 EndTime *time.Time `type:"timestamp"` 12563 12564 // The execution engine, such as an EMR cluster, used to run the EMR notebook 12565 // and perform the notebook execution. 12566 ExecutionEngine *ExecutionEngineConfig `type:"structure"` 12567 12568 // The reason for the latest status change of the notebook execution. 12569 LastStateChangeReason *string `type:"string"` 12570 12571 // The unique identifier of a notebook execution. 12572 NotebookExecutionId *string `type:"string"` 12573 12574 // A name for the notebook execution. 12575 NotebookExecutionName *string `type:"string"` 12576 12577 // The unique identifier of the EC2 security group associated with the EMR Notebook 12578 // instance. For more information see Specifying EC2 Security Groups for EMR 12579 // Notebooks (https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-managed-notebooks-security-groups.html) 12580 // in the EMR Management Guide. 12581 NotebookInstanceSecurityGroupId *string `type:"string"` 12582 12583 // Input parameters in JSON format passed to the EMR Notebook at runtime for 12584 // execution. 12585 NotebookParams *string `type:"string"` 12586 12587 // The location of the notebook execution's output file in Amazon S3. 12588 OutputNotebookURI *string `type:"string"` 12589 12590 // The timestamp when notebook execution started. 12591 StartTime *time.Time `type:"timestamp"` 12592 12593 // The status of the notebook execution. 12594 // 12595 // * START_PENDING indicates that the cluster has received the execution 12596 // request but execution has not begun. 12597 // 12598 // * STARTING indicates that the execution is starting on the cluster. 12599 // 12600 // * RUNNING indicates that the execution is being processed by the cluster. 12601 // 12602 // * FINISHING indicates that execution processing is in the final stages. 12603 // 12604 // * FINISHED indicates that the execution has completed without error. 12605 // 12606 // * FAILING indicates that the execution is failing and will not finish 12607 // successfully. 12608 // 12609 // * FAILED indicates that the execution failed. 12610 // 12611 // * STOP_PENDING indicates that the cluster has received a StopNotebookExecution 12612 // request and the stop is pending. 12613 // 12614 // * STOPPING indicates that the cluster is in the process of stopping the 12615 // execution as a result of a StopNotebookExecution request. 12616 // 12617 // * STOPPED indicates that the execution stopped because of a StopNotebookExecution 12618 // request. 12619 Status *string `type:"string" enum:"NotebookExecutionStatus"` 12620 12621 // A list of tags associated with a notebook execution. Tags are user-defined 12622 // key-value pairs that consist of a required key string with a maximum of 128 12623 // characters and an optional value string with a maximum of 256 characters. 12624 Tags []*Tag `type:"list"` 12625} 12626 12627// String returns the string representation 12628func (s NotebookExecution) String() string { 12629 return awsutil.Prettify(s) 12630} 12631 12632// GoString returns the string representation 12633func (s NotebookExecution) GoString() string { 12634 return s.String() 12635} 12636 12637// SetArn sets the Arn field's value. 12638func (s *NotebookExecution) SetArn(v string) *NotebookExecution { 12639 s.Arn = &v 12640 return s 12641} 12642 12643// SetEditorId sets the EditorId field's value. 12644func (s *NotebookExecution) SetEditorId(v string) *NotebookExecution { 12645 s.EditorId = &v 12646 return s 12647} 12648 12649// SetEndTime sets the EndTime field's value. 12650func (s *NotebookExecution) SetEndTime(v time.Time) *NotebookExecution { 12651 s.EndTime = &v 12652 return s 12653} 12654 12655// SetExecutionEngine sets the ExecutionEngine field's value. 12656func (s *NotebookExecution) SetExecutionEngine(v *ExecutionEngineConfig) *NotebookExecution { 12657 s.ExecutionEngine = v 12658 return s 12659} 12660 12661// SetLastStateChangeReason sets the LastStateChangeReason field's value. 12662func (s *NotebookExecution) SetLastStateChangeReason(v string) *NotebookExecution { 12663 s.LastStateChangeReason = &v 12664 return s 12665} 12666 12667// SetNotebookExecutionId sets the NotebookExecutionId field's value. 12668func (s *NotebookExecution) SetNotebookExecutionId(v string) *NotebookExecution { 12669 s.NotebookExecutionId = &v 12670 return s 12671} 12672 12673// SetNotebookExecutionName sets the NotebookExecutionName field's value. 12674func (s *NotebookExecution) SetNotebookExecutionName(v string) *NotebookExecution { 12675 s.NotebookExecutionName = &v 12676 return s 12677} 12678 12679// SetNotebookInstanceSecurityGroupId sets the NotebookInstanceSecurityGroupId field's value. 12680func (s *NotebookExecution) SetNotebookInstanceSecurityGroupId(v string) *NotebookExecution { 12681 s.NotebookInstanceSecurityGroupId = &v 12682 return s 12683} 12684 12685// SetNotebookParams sets the NotebookParams field's value. 12686func (s *NotebookExecution) SetNotebookParams(v string) *NotebookExecution { 12687 s.NotebookParams = &v 12688 return s 12689} 12690 12691// SetOutputNotebookURI sets the OutputNotebookURI field's value. 12692func (s *NotebookExecution) SetOutputNotebookURI(v string) *NotebookExecution { 12693 s.OutputNotebookURI = &v 12694 return s 12695} 12696 12697// SetStartTime sets the StartTime field's value. 12698func (s *NotebookExecution) SetStartTime(v time.Time) *NotebookExecution { 12699 s.StartTime = &v 12700 return s 12701} 12702 12703// SetStatus sets the Status field's value. 12704func (s *NotebookExecution) SetStatus(v string) *NotebookExecution { 12705 s.Status = &v 12706 return s 12707} 12708 12709// SetTags sets the Tags field's value. 12710func (s *NotebookExecution) SetTags(v []*Tag) *NotebookExecution { 12711 s.Tags = v 12712 return s 12713} 12714 12715// Details for a notebook execution. The details include information such as 12716// the unique ID and status of the notebook execution. 12717type NotebookExecutionSummary struct { 12718 _ struct{} `type:"structure"` 12719 12720 // The unique identifier of the editor associated with the notebook execution. 12721 EditorId *string `type:"string"` 12722 12723 // The timestamp when notebook execution started. 12724 EndTime *time.Time `type:"timestamp"` 12725 12726 // The unique identifier of the notebook execution. 12727 NotebookExecutionId *string `type:"string"` 12728 12729 // The name of the notebook execution. 12730 NotebookExecutionName *string `type:"string"` 12731 12732 // The timestamp when notebook execution started. 12733 StartTime *time.Time `type:"timestamp"` 12734 12735 // The status of the notebook execution. 12736 // 12737 // * START_PENDING indicates that the cluster has received the execution 12738 // request but execution has not begun. 12739 // 12740 // * STARTING indicates that the execution is starting on the cluster. 12741 // 12742 // * RUNNING indicates that the execution is being processed by the cluster. 12743 // 12744 // * FINISHING indicates that execution processing is in the final stages. 12745 // 12746 // * FINISHED indicates that the execution has completed without error. 12747 // 12748 // * FAILING indicates that the execution is failing and will not finish 12749 // successfully. 12750 // 12751 // * FAILED indicates that the execution failed. 12752 // 12753 // * STOP_PENDING indicates that the cluster has received a StopNotebookExecution 12754 // request and the stop is pending. 12755 // 12756 // * STOPPING indicates that the cluster is in the process of stopping the 12757 // execution as a result of a StopNotebookExecution request. 12758 // 12759 // * STOPPED indicates that the execution stopped because of a StopNotebookExecution 12760 // request. 12761 Status *string `type:"string" enum:"NotebookExecutionStatus"` 12762} 12763 12764// String returns the string representation 12765func (s NotebookExecutionSummary) String() string { 12766 return awsutil.Prettify(s) 12767} 12768 12769// GoString returns the string representation 12770func (s NotebookExecutionSummary) GoString() string { 12771 return s.String() 12772} 12773 12774// SetEditorId sets the EditorId field's value. 12775func (s *NotebookExecutionSummary) SetEditorId(v string) *NotebookExecutionSummary { 12776 s.EditorId = &v 12777 return s 12778} 12779 12780// SetEndTime sets the EndTime field's value. 12781func (s *NotebookExecutionSummary) SetEndTime(v time.Time) *NotebookExecutionSummary { 12782 s.EndTime = &v 12783 return s 12784} 12785 12786// SetNotebookExecutionId sets the NotebookExecutionId field's value. 12787func (s *NotebookExecutionSummary) SetNotebookExecutionId(v string) *NotebookExecutionSummary { 12788 s.NotebookExecutionId = &v 12789 return s 12790} 12791 12792// SetNotebookExecutionName sets the NotebookExecutionName field's value. 12793func (s *NotebookExecutionSummary) SetNotebookExecutionName(v string) *NotebookExecutionSummary { 12794 s.NotebookExecutionName = &v 12795 return s 12796} 12797 12798// SetStartTime sets the StartTime field's value. 12799func (s *NotebookExecutionSummary) SetStartTime(v time.Time) *NotebookExecutionSummary { 12800 s.StartTime = &v 12801 return s 12802} 12803 12804// SetStatus sets the Status field's value. 12805func (s *NotebookExecutionSummary) SetStatus(v string) *NotebookExecutionSummary { 12806 s.Status = &v 12807 return s 12808} 12809 12810// Describes the strategy for using unused Capacity Reservations for fulfilling 12811// On-Demand capacity. 12812type OnDemandCapacityReservationOptions struct { 12813 _ struct{} `type:"structure"` 12814 12815 // Indicates the instance's Capacity Reservation preferences. Possible preferences 12816 // include: 12817 // 12818 // * open - The instance can run in any open Capacity Reservation that has 12819 // matching attributes (instance type, platform, Availability Zone). 12820 // 12821 // * none - The instance avoids running in a Capacity Reservation even if 12822 // one is available. The instance runs as an On-Demand Instance. 12823 CapacityReservationPreference *string `type:"string" enum:"OnDemandCapacityReservationPreference"` 12824 12825 // The ARN of the Capacity Reservation resource group in which to run the instance. 12826 CapacityReservationResourceGroupArn *string `type:"string"` 12827 12828 // Indicates whether to use unused Capacity Reservations for fulfilling On-Demand 12829 // capacity. 12830 // 12831 // If you specify use-capacity-reservations-first, the fleet uses unused Capacity 12832 // Reservations to fulfill On-Demand capacity up to the target On-Demand capacity. 12833 // If multiple instance pools have unused Capacity Reservations, the On-Demand 12834 // allocation strategy (lowest-price) is applied. If the number of unused Capacity 12835 // Reservations is less than the On-Demand target capacity, the remaining On-Demand 12836 // target capacity is launched according to the On-Demand allocation strategy 12837 // (lowest-price). 12838 // 12839 // If you do not specify a value, the fleet fulfills the On-Demand capacity 12840 // according to the chosen On-Demand allocation strategy. 12841 UsageStrategy *string `type:"string" enum:"OnDemandCapacityReservationUsageStrategy"` 12842} 12843 12844// String returns the string representation 12845func (s OnDemandCapacityReservationOptions) String() string { 12846 return awsutil.Prettify(s) 12847} 12848 12849// GoString returns the string representation 12850func (s OnDemandCapacityReservationOptions) GoString() string { 12851 return s.String() 12852} 12853 12854// SetCapacityReservationPreference sets the CapacityReservationPreference field's value. 12855func (s *OnDemandCapacityReservationOptions) SetCapacityReservationPreference(v string) *OnDemandCapacityReservationOptions { 12856 s.CapacityReservationPreference = &v 12857 return s 12858} 12859 12860// SetCapacityReservationResourceGroupArn sets the CapacityReservationResourceGroupArn field's value. 12861func (s *OnDemandCapacityReservationOptions) SetCapacityReservationResourceGroupArn(v string) *OnDemandCapacityReservationOptions { 12862 s.CapacityReservationResourceGroupArn = &v 12863 return s 12864} 12865 12866// SetUsageStrategy sets the UsageStrategy field's value. 12867func (s *OnDemandCapacityReservationOptions) SetUsageStrategy(v string) *OnDemandCapacityReservationOptions { 12868 s.UsageStrategy = &v 12869 return s 12870} 12871 12872// The launch specification for On-Demand Instances in the instance fleet, which 12873// determines the allocation strategy. 12874// 12875// The instance fleet configuration is available only in Amazon EMR versions 12876// 4.8.0 and later, excluding 5.0.x versions. On-Demand Instances allocation 12877// strategy is available in Amazon EMR version 5.12.1 and later. 12878type OnDemandProvisioningSpecification struct { 12879 _ struct{} `type:"structure"` 12880 12881 // Specifies the strategy to use in launching On-Demand instance fleets. Currently, 12882 // the only option is lowest-price (the default), which launches the lowest 12883 // price first. 12884 // 12885 // AllocationStrategy is a required field 12886 AllocationStrategy *string `type:"string" required:"true" enum:"OnDemandProvisioningAllocationStrategy"` 12887 12888 // The launch specification for On-Demand instances in the instance fleet, which 12889 // determines the allocation strategy. 12890 CapacityReservationOptions *OnDemandCapacityReservationOptions `type:"structure"` 12891} 12892 12893// String returns the string representation 12894func (s OnDemandProvisioningSpecification) String() string { 12895 return awsutil.Prettify(s) 12896} 12897 12898// GoString returns the string representation 12899func (s OnDemandProvisioningSpecification) GoString() string { 12900 return s.String() 12901} 12902 12903// Validate inspects the fields of the type to determine if they are valid. 12904func (s *OnDemandProvisioningSpecification) Validate() error { 12905 invalidParams := request.ErrInvalidParams{Context: "OnDemandProvisioningSpecification"} 12906 if s.AllocationStrategy == nil { 12907 invalidParams.Add(request.NewErrParamRequired("AllocationStrategy")) 12908 } 12909 12910 if invalidParams.Len() > 0 { 12911 return invalidParams 12912 } 12913 return nil 12914} 12915 12916// SetAllocationStrategy sets the AllocationStrategy field's value. 12917func (s *OnDemandProvisioningSpecification) SetAllocationStrategy(v string) *OnDemandProvisioningSpecification { 12918 s.AllocationStrategy = &v 12919 return s 12920} 12921 12922// SetCapacityReservationOptions sets the CapacityReservationOptions field's value. 12923func (s *OnDemandProvisioningSpecification) SetCapacityReservationOptions(v *OnDemandCapacityReservationOptions) *OnDemandProvisioningSpecification { 12924 s.CapacityReservationOptions = v 12925 return s 12926} 12927 12928// Placement group configuration for an Amazon EMR cluster. The configuration 12929// specifies the placement strategy that can be applied to instance roles during 12930// cluster creation. 12931// 12932// To use this configuration, consider attaching managed policy AmazonElasticMapReducePlacementGroupPolicy 12933// to the EMR role. 12934type PlacementGroupConfig struct { 12935 _ struct{} `type:"structure"` 12936 12937 // Role of the instance in the cluster. 12938 // 12939 // Starting with Amazon EMR version 5.23.0, the only supported instance role 12940 // is MASTER. 12941 // 12942 // InstanceRole is a required field 12943 InstanceRole *string `type:"string" required:"true" enum:"InstanceRoleType"` 12944 12945 // EC2 Placement Group strategy associated with instance role. 12946 // 12947 // Starting with Amazon EMR version 5.23.0, the only supported placement strategy 12948 // is SPREAD for the MASTER instance role. 12949 PlacementStrategy *string `type:"string" enum:"PlacementGroupStrategy"` 12950} 12951 12952// String returns the string representation 12953func (s PlacementGroupConfig) String() string { 12954 return awsutil.Prettify(s) 12955} 12956 12957// GoString returns the string representation 12958func (s PlacementGroupConfig) GoString() string { 12959 return s.String() 12960} 12961 12962// Validate inspects the fields of the type to determine if they are valid. 12963func (s *PlacementGroupConfig) Validate() error { 12964 invalidParams := request.ErrInvalidParams{Context: "PlacementGroupConfig"} 12965 if s.InstanceRole == nil { 12966 invalidParams.Add(request.NewErrParamRequired("InstanceRole")) 12967 } 12968 12969 if invalidParams.Len() > 0 { 12970 return invalidParams 12971 } 12972 return nil 12973} 12974 12975// SetInstanceRole sets the InstanceRole field's value. 12976func (s *PlacementGroupConfig) SetInstanceRole(v string) *PlacementGroupConfig { 12977 s.InstanceRole = &v 12978 return s 12979} 12980 12981// SetPlacementStrategy sets the PlacementStrategy field's value. 12982func (s *PlacementGroupConfig) SetPlacementStrategy(v string) *PlacementGroupConfig { 12983 s.PlacementStrategy = &v 12984 return s 12985} 12986 12987// The Amazon EC2 Availability Zone configuration of the cluster (job flow). 12988type PlacementType struct { 12989 _ struct{} `type:"structure"` 12990 12991 // The Amazon EC2 Availability Zone for the cluster. AvailabilityZone is used 12992 // for uniform instance groups, while AvailabilityZones (plural) is used for 12993 // instance fleets. 12994 AvailabilityZone *string `type:"string"` 12995 12996 // When multiple Availability Zones are specified, Amazon EMR evaluates them 12997 // and launches instances in the optimal Availability Zone. AvailabilityZones 12998 // is used for instance fleets, while AvailabilityZone (singular) is used for 12999 // uniform instance groups. 13000 // 13001 // The instance fleet configuration is available only in Amazon EMR versions 13002 // 4.8.0 and later, excluding 5.0.x versions. 13003 AvailabilityZones []*string `type:"list"` 13004} 13005 13006// String returns the string representation 13007func (s PlacementType) String() string { 13008 return awsutil.Prettify(s) 13009} 13010 13011// GoString returns the string representation 13012func (s PlacementType) GoString() string { 13013 return s.String() 13014} 13015 13016// SetAvailabilityZone sets the AvailabilityZone field's value. 13017func (s *PlacementType) SetAvailabilityZone(v string) *PlacementType { 13018 s.AvailabilityZone = &v 13019 return s 13020} 13021 13022// SetAvailabilityZones sets the AvailabilityZones field's value. 13023func (s *PlacementType) SetAvailabilityZones(v []*string) *PlacementType { 13024 s.AvailabilityZones = v 13025 return s 13026} 13027 13028// A list of port ranges that are permitted to allow inbound traffic from all 13029// public IP addresses. To specify a single port, use the same value for MinRange 13030// and MaxRange. 13031type PortRange struct { 13032 _ struct{} `type:"structure"` 13033 13034 // The smallest port number in a specified range of port numbers. 13035 MaxRange *int64 `type:"integer"` 13036 13037 // The smallest port number in a specified range of port numbers. 13038 // 13039 // MinRange is a required field 13040 MinRange *int64 `type:"integer" required:"true"` 13041} 13042 13043// String returns the string representation 13044func (s PortRange) String() string { 13045 return awsutil.Prettify(s) 13046} 13047 13048// GoString returns the string representation 13049func (s PortRange) GoString() string { 13050 return s.String() 13051} 13052 13053// Validate inspects the fields of the type to determine if they are valid. 13054func (s *PortRange) Validate() error { 13055 invalidParams := request.ErrInvalidParams{Context: "PortRange"} 13056 if s.MaxRange != nil && *s.MaxRange < -1 { 13057 invalidParams.Add(request.NewErrParamMinValue("MaxRange", -1)) 13058 } 13059 if s.MinRange == nil { 13060 invalidParams.Add(request.NewErrParamRequired("MinRange")) 13061 } 13062 if s.MinRange != nil && *s.MinRange < -1 { 13063 invalidParams.Add(request.NewErrParamMinValue("MinRange", -1)) 13064 } 13065 13066 if invalidParams.Len() > 0 { 13067 return invalidParams 13068 } 13069 return nil 13070} 13071 13072// SetMaxRange sets the MaxRange field's value. 13073func (s *PortRange) SetMaxRange(v int64) *PortRange { 13074 s.MaxRange = &v 13075 return s 13076} 13077 13078// SetMinRange sets the MinRange field's value. 13079func (s *PortRange) SetMinRange(v int64) *PortRange { 13080 s.MinRange = &v 13081 return s 13082} 13083 13084type PutAutoScalingPolicyInput struct { 13085 _ struct{} `type:"structure"` 13086 13087 // Specifies the definition of the automatic scaling policy. 13088 // 13089 // AutoScalingPolicy is a required field 13090 AutoScalingPolicy *AutoScalingPolicy `type:"structure" required:"true"` 13091 13092 // Specifies the ID of a cluster. The instance group to which the automatic 13093 // scaling policy is applied is within this cluster. 13094 // 13095 // ClusterId is a required field 13096 ClusterId *string `type:"string" required:"true"` 13097 13098 // Specifies the ID of the instance group to which the automatic scaling policy 13099 // is applied. 13100 // 13101 // InstanceGroupId is a required field 13102 InstanceGroupId *string `type:"string" required:"true"` 13103} 13104 13105// String returns the string representation 13106func (s PutAutoScalingPolicyInput) String() string { 13107 return awsutil.Prettify(s) 13108} 13109 13110// GoString returns the string representation 13111func (s PutAutoScalingPolicyInput) GoString() string { 13112 return s.String() 13113} 13114 13115// Validate inspects the fields of the type to determine if they are valid. 13116func (s *PutAutoScalingPolicyInput) Validate() error { 13117 invalidParams := request.ErrInvalidParams{Context: "PutAutoScalingPolicyInput"} 13118 if s.AutoScalingPolicy == nil { 13119 invalidParams.Add(request.NewErrParamRequired("AutoScalingPolicy")) 13120 } 13121 if s.ClusterId == nil { 13122 invalidParams.Add(request.NewErrParamRequired("ClusterId")) 13123 } 13124 if s.InstanceGroupId == nil { 13125 invalidParams.Add(request.NewErrParamRequired("InstanceGroupId")) 13126 } 13127 if s.AutoScalingPolicy != nil { 13128 if err := s.AutoScalingPolicy.Validate(); err != nil { 13129 invalidParams.AddNested("AutoScalingPolicy", err.(request.ErrInvalidParams)) 13130 } 13131 } 13132 13133 if invalidParams.Len() > 0 { 13134 return invalidParams 13135 } 13136 return nil 13137} 13138 13139// SetAutoScalingPolicy sets the AutoScalingPolicy field's value. 13140func (s *PutAutoScalingPolicyInput) SetAutoScalingPolicy(v *AutoScalingPolicy) *PutAutoScalingPolicyInput { 13141 s.AutoScalingPolicy = v 13142 return s 13143} 13144 13145// SetClusterId sets the ClusterId field's value. 13146func (s *PutAutoScalingPolicyInput) SetClusterId(v string) *PutAutoScalingPolicyInput { 13147 s.ClusterId = &v 13148 return s 13149} 13150 13151// SetInstanceGroupId sets the InstanceGroupId field's value. 13152func (s *PutAutoScalingPolicyInput) SetInstanceGroupId(v string) *PutAutoScalingPolicyInput { 13153 s.InstanceGroupId = &v 13154 return s 13155} 13156 13157type PutAutoScalingPolicyOutput struct { 13158 _ struct{} `type:"structure"` 13159 13160 // The automatic scaling policy definition. 13161 AutoScalingPolicy *AutoScalingPolicyDescription `type:"structure"` 13162 13163 // The Amazon Resource Name (ARN) of the cluster. 13164 ClusterArn *string `min:"20" type:"string"` 13165 13166 // Specifies the ID of a cluster. The instance group to which the automatic 13167 // scaling policy is applied is within this cluster. 13168 ClusterId *string `type:"string"` 13169 13170 // Specifies the ID of the instance group to which the scaling policy is applied. 13171 InstanceGroupId *string `type:"string"` 13172} 13173 13174// String returns the string representation 13175func (s PutAutoScalingPolicyOutput) String() string { 13176 return awsutil.Prettify(s) 13177} 13178 13179// GoString returns the string representation 13180func (s PutAutoScalingPolicyOutput) GoString() string { 13181 return s.String() 13182} 13183 13184// SetAutoScalingPolicy sets the AutoScalingPolicy field's value. 13185func (s *PutAutoScalingPolicyOutput) SetAutoScalingPolicy(v *AutoScalingPolicyDescription) *PutAutoScalingPolicyOutput { 13186 s.AutoScalingPolicy = v 13187 return s 13188} 13189 13190// SetClusterArn sets the ClusterArn field's value. 13191func (s *PutAutoScalingPolicyOutput) SetClusterArn(v string) *PutAutoScalingPolicyOutput { 13192 s.ClusterArn = &v 13193 return s 13194} 13195 13196// SetClusterId sets the ClusterId field's value. 13197func (s *PutAutoScalingPolicyOutput) SetClusterId(v string) *PutAutoScalingPolicyOutput { 13198 s.ClusterId = &v 13199 return s 13200} 13201 13202// SetInstanceGroupId sets the InstanceGroupId field's value. 13203func (s *PutAutoScalingPolicyOutput) SetInstanceGroupId(v string) *PutAutoScalingPolicyOutput { 13204 s.InstanceGroupId = &v 13205 return s 13206} 13207 13208type PutBlockPublicAccessConfigurationInput struct { 13209 _ struct{} `type:"structure"` 13210 13211 // A configuration for Amazon EMR block public access. The configuration applies 13212 // to all clusters created in your account for the current Region. The configuration 13213 // specifies whether block public access is enabled. If block public access 13214 // is enabled, security groups associated with the cluster cannot have rules 13215 // that allow inbound traffic from 0.0.0.0/0 or ::/0 on a port, unless the port 13216 // is specified as an exception using PermittedPublicSecurityGroupRuleRanges 13217 // in the BlockPublicAccessConfiguration. By default, Port 22 (SSH) is an exception, 13218 // and public access is allowed on this port. You can change this by updating 13219 // BlockPublicSecurityGroupRules to remove the exception. 13220 // 13221 // For accounts that created clusters in a Region before November 25, 2019, 13222 // block public access is disabled by default in that Region. To use this feature, 13223 // you must manually enable and configure it. For accounts that did not create 13224 // an EMR cluster in a Region before this date, block public access is enabled 13225 // by default in that Region. 13226 // 13227 // BlockPublicAccessConfiguration is a required field 13228 BlockPublicAccessConfiguration *BlockPublicAccessConfiguration `type:"structure" required:"true"` 13229} 13230 13231// String returns the string representation 13232func (s PutBlockPublicAccessConfigurationInput) String() string { 13233 return awsutil.Prettify(s) 13234} 13235 13236// GoString returns the string representation 13237func (s PutBlockPublicAccessConfigurationInput) GoString() string { 13238 return s.String() 13239} 13240 13241// Validate inspects the fields of the type to determine if they are valid. 13242func (s *PutBlockPublicAccessConfigurationInput) Validate() error { 13243 invalidParams := request.ErrInvalidParams{Context: "PutBlockPublicAccessConfigurationInput"} 13244 if s.BlockPublicAccessConfiguration == nil { 13245 invalidParams.Add(request.NewErrParamRequired("BlockPublicAccessConfiguration")) 13246 } 13247 if s.BlockPublicAccessConfiguration != nil { 13248 if err := s.BlockPublicAccessConfiguration.Validate(); err != nil { 13249 invalidParams.AddNested("BlockPublicAccessConfiguration", err.(request.ErrInvalidParams)) 13250 } 13251 } 13252 13253 if invalidParams.Len() > 0 { 13254 return invalidParams 13255 } 13256 return nil 13257} 13258 13259// SetBlockPublicAccessConfiguration sets the BlockPublicAccessConfiguration field's value. 13260func (s *PutBlockPublicAccessConfigurationInput) SetBlockPublicAccessConfiguration(v *BlockPublicAccessConfiguration) *PutBlockPublicAccessConfigurationInput { 13261 s.BlockPublicAccessConfiguration = v 13262 return s 13263} 13264 13265type PutBlockPublicAccessConfigurationOutput struct { 13266 _ struct{} `type:"structure"` 13267} 13268 13269// String returns the string representation 13270func (s PutBlockPublicAccessConfigurationOutput) String() string { 13271 return awsutil.Prettify(s) 13272} 13273 13274// GoString returns the string representation 13275func (s PutBlockPublicAccessConfigurationOutput) GoString() string { 13276 return s.String() 13277} 13278 13279type PutManagedScalingPolicyInput struct { 13280 _ struct{} `type:"structure"` 13281 13282 // Specifies the ID of an EMR cluster where the managed scaling policy is attached. 13283 // 13284 // ClusterId is a required field 13285 ClusterId *string `type:"string" required:"true"` 13286 13287 // Specifies the constraints for the managed scaling policy. 13288 // 13289 // ManagedScalingPolicy is a required field 13290 ManagedScalingPolicy *ManagedScalingPolicy `type:"structure" required:"true"` 13291} 13292 13293// String returns the string representation 13294func (s PutManagedScalingPolicyInput) String() string { 13295 return awsutil.Prettify(s) 13296} 13297 13298// GoString returns the string representation 13299func (s PutManagedScalingPolicyInput) GoString() string { 13300 return s.String() 13301} 13302 13303// Validate inspects the fields of the type to determine if they are valid. 13304func (s *PutManagedScalingPolicyInput) Validate() error { 13305 invalidParams := request.ErrInvalidParams{Context: "PutManagedScalingPolicyInput"} 13306 if s.ClusterId == nil { 13307 invalidParams.Add(request.NewErrParamRequired("ClusterId")) 13308 } 13309 if s.ManagedScalingPolicy == nil { 13310 invalidParams.Add(request.NewErrParamRequired("ManagedScalingPolicy")) 13311 } 13312 if s.ManagedScalingPolicy != nil { 13313 if err := s.ManagedScalingPolicy.Validate(); err != nil { 13314 invalidParams.AddNested("ManagedScalingPolicy", err.(request.ErrInvalidParams)) 13315 } 13316 } 13317 13318 if invalidParams.Len() > 0 { 13319 return invalidParams 13320 } 13321 return nil 13322} 13323 13324// SetClusterId sets the ClusterId field's value. 13325func (s *PutManagedScalingPolicyInput) SetClusterId(v string) *PutManagedScalingPolicyInput { 13326 s.ClusterId = &v 13327 return s 13328} 13329 13330// SetManagedScalingPolicy sets the ManagedScalingPolicy field's value. 13331func (s *PutManagedScalingPolicyInput) SetManagedScalingPolicy(v *ManagedScalingPolicy) *PutManagedScalingPolicyInput { 13332 s.ManagedScalingPolicy = v 13333 return s 13334} 13335 13336type PutManagedScalingPolicyOutput struct { 13337 _ struct{} `type:"structure"` 13338} 13339 13340// String returns the string representation 13341func (s PutManagedScalingPolicyOutput) String() string { 13342 return awsutil.Prettify(s) 13343} 13344 13345// GoString returns the string representation 13346func (s PutManagedScalingPolicyOutput) GoString() string { 13347 return s.String() 13348} 13349 13350// The release label filters by application or version prefix. 13351type ReleaseLabelFilter struct { 13352 _ struct{} `type:"structure"` 13353 13354 // Optional release label application filter. For example, spark@2.1.0. 13355 Application *string `type:"string"` 13356 13357 // Optional release label version prefix filter. For example, emr-5. 13358 Prefix *string `type:"string"` 13359} 13360 13361// String returns the string representation 13362func (s ReleaseLabelFilter) String() string { 13363 return awsutil.Prettify(s) 13364} 13365 13366// GoString returns the string representation 13367func (s ReleaseLabelFilter) GoString() string { 13368 return s.String() 13369} 13370 13371// SetApplication sets the Application field's value. 13372func (s *ReleaseLabelFilter) SetApplication(v string) *ReleaseLabelFilter { 13373 s.Application = &v 13374 return s 13375} 13376 13377// SetPrefix sets the Prefix field's value. 13378func (s *ReleaseLabelFilter) SetPrefix(v string) *ReleaseLabelFilter { 13379 s.Prefix = &v 13380 return s 13381} 13382 13383type RemoveAutoScalingPolicyInput struct { 13384 _ struct{} `type:"structure"` 13385 13386 // Specifies the ID of a cluster. The instance group to which the automatic 13387 // scaling policy is applied is within this cluster. 13388 // 13389 // ClusterId is a required field 13390 ClusterId *string `type:"string" required:"true"` 13391 13392 // Specifies the ID of the instance group to which the scaling policy is applied. 13393 // 13394 // InstanceGroupId is a required field 13395 InstanceGroupId *string `type:"string" required:"true"` 13396} 13397 13398// String returns the string representation 13399func (s RemoveAutoScalingPolicyInput) String() string { 13400 return awsutil.Prettify(s) 13401} 13402 13403// GoString returns the string representation 13404func (s RemoveAutoScalingPolicyInput) GoString() string { 13405 return s.String() 13406} 13407 13408// Validate inspects the fields of the type to determine if they are valid. 13409func (s *RemoveAutoScalingPolicyInput) Validate() error { 13410 invalidParams := request.ErrInvalidParams{Context: "RemoveAutoScalingPolicyInput"} 13411 if s.ClusterId == nil { 13412 invalidParams.Add(request.NewErrParamRequired("ClusterId")) 13413 } 13414 if s.InstanceGroupId == nil { 13415 invalidParams.Add(request.NewErrParamRequired("InstanceGroupId")) 13416 } 13417 13418 if invalidParams.Len() > 0 { 13419 return invalidParams 13420 } 13421 return nil 13422} 13423 13424// SetClusterId sets the ClusterId field's value. 13425func (s *RemoveAutoScalingPolicyInput) SetClusterId(v string) *RemoveAutoScalingPolicyInput { 13426 s.ClusterId = &v 13427 return s 13428} 13429 13430// SetInstanceGroupId sets the InstanceGroupId field's value. 13431func (s *RemoveAutoScalingPolicyInput) SetInstanceGroupId(v string) *RemoveAutoScalingPolicyInput { 13432 s.InstanceGroupId = &v 13433 return s 13434} 13435 13436type RemoveAutoScalingPolicyOutput struct { 13437 _ struct{} `type:"structure"` 13438} 13439 13440// String returns the string representation 13441func (s RemoveAutoScalingPolicyOutput) String() string { 13442 return awsutil.Prettify(s) 13443} 13444 13445// GoString returns the string representation 13446func (s RemoveAutoScalingPolicyOutput) GoString() string { 13447 return s.String() 13448} 13449 13450type RemoveManagedScalingPolicyInput struct { 13451 _ struct{} `type:"structure"` 13452 13453 // Specifies the ID of the cluster from which the managed scaling policy will 13454 // be removed. 13455 // 13456 // ClusterId is a required field 13457 ClusterId *string `type:"string" required:"true"` 13458} 13459 13460// String returns the string representation 13461func (s RemoveManagedScalingPolicyInput) String() string { 13462 return awsutil.Prettify(s) 13463} 13464 13465// GoString returns the string representation 13466func (s RemoveManagedScalingPolicyInput) GoString() string { 13467 return s.String() 13468} 13469 13470// Validate inspects the fields of the type to determine if they are valid. 13471func (s *RemoveManagedScalingPolicyInput) Validate() error { 13472 invalidParams := request.ErrInvalidParams{Context: "RemoveManagedScalingPolicyInput"} 13473 if s.ClusterId == nil { 13474 invalidParams.Add(request.NewErrParamRequired("ClusterId")) 13475 } 13476 13477 if invalidParams.Len() > 0 { 13478 return invalidParams 13479 } 13480 return nil 13481} 13482 13483// SetClusterId sets the ClusterId field's value. 13484func (s *RemoveManagedScalingPolicyInput) SetClusterId(v string) *RemoveManagedScalingPolicyInput { 13485 s.ClusterId = &v 13486 return s 13487} 13488 13489type RemoveManagedScalingPolicyOutput struct { 13490 _ struct{} `type:"structure"` 13491} 13492 13493// String returns the string representation 13494func (s RemoveManagedScalingPolicyOutput) String() string { 13495 return awsutil.Prettify(s) 13496} 13497 13498// GoString returns the string representation 13499func (s RemoveManagedScalingPolicyOutput) GoString() string { 13500 return s.String() 13501} 13502 13503// This input identifies a cluster and a list of tags to remove. 13504type RemoveTagsInput struct { 13505 _ struct{} `type:"structure"` 13506 13507 // The Amazon EMR resource identifier from which tags will be removed. This 13508 // value must be a cluster identifier. 13509 // 13510 // ResourceId is a required field 13511 ResourceId *string `type:"string" required:"true"` 13512 13513 // A list of tag keys to remove from a resource. 13514 // 13515 // TagKeys is a required field 13516 TagKeys []*string `type:"list" required:"true"` 13517} 13518 13519// String returns the string representation 13520func (s RemoveTagsInput) String() string { 13521 return awsutil.Prettify(s) 13522} 13523 13524// GoString returns the string representation 13525func (s RemoveTagsInput) GoString() string { 13526 return s.String() 13527} 13528 13529// Validate inspects the fields of the type to determine if they are valid. 13530func (s *RemoveTagsInput) Validate() error { 13531 invalidParams := request.ErrInvalidParams{Context: "RemoveTagsInput"} 13532 if s.ResourceId == nil { 13533 invalidParams.Add(request.NewErrParamRequired("ResourceId")) 13534 } 13535 if s.TagKeys == nil { 13536 invalidParams.Add(request.NewErrParamRequired("TagKeys")) 13537 } 13538 13539 if invalidParams.Len() > 0 { 13540 return invalidParams 13541 } 13542 return nil 13543} 13544 13545// SetResourceId sets the ResourceId field's value. 13546func (s *RemoveTagsInput) SetResourceId(v string) *RemoveTagsInput { 13547 s.ResourceId = &v 13548 return s 13549} 13550 13551// SetTagKeys sets the TagKeys field's value. 13552func (s *RemoveTagsInput) SetTagKeys(v []*string) *RemoveTagsInput { 13553 s.TagKeys = v 13554 return s 13555} 13556 13557// This output indicates the result of removing tags from a resource. 13558type RemoveTagsOutput struct { 13559 _ struct{} `type:"structure"` 13560} 13561 13562// String returns the string representation 13563func (s RemoveTagsOutput) String() string { 13564 return awsutil.Prettify(s) 13565} 13566 13567// GoString returns the string representation 13568func (s RemoveTagsOutput) GoString() string { 13569 return s.String() 13570} 13571 13572// Input to the RunJobFlow operation. 13573type RunJobFlowInput struct { 13574 _ struct{} `type:"structure"` 13575 13576 // A JSON string for selecting additional features. 13577 AdditionalInfo *string `type:"string"` 13578 13579 // Applies only to Amazon EMR AMI versions 3.x and 2.x. For Amazon EMR releases 13580 // 4.0 and later, ReleaseLabel is used. To specify a custom AMI, use CustomAmiID. 13581 AmiVersion *string `type:"string"` 13582 13583 // Applies to Amazon EMR releases 4.0 and later. A case-insensitive list of 13584 // applications for Amazon EMR to install and configure when launching the cluster. 13585 // For a list of applications available for each Amazon EMR release version, 13586 // see the Amazon EMR Release Guide (https://docs.aws.amazon.com/emr/latest/ReleaseGuide/). 13587 Applications []*Application `type:"list"` 13588 13589 // An IAM role for automatic scaling policies. The default role is EMR_AutoScaling_DefaultRole. 13590 // The IAM role provides permissions that the automatic scaling feature requires 13591 // to launch and terminate EC2 instances in an instance group. 13592 AutoScalingRole *string `type:"string"` 13593 13594 // A list of bootstrap actions to run before Hadoop starts on the cluster nodes. 13595 BootstrapActions []*BootstrapActionConfig `type:"list"` 13596 13597 // For Amazon EMR releases 4.0 and later. The list of configurations supplied 13598 // for the EMR cluster you are creating. 13599 Configurations []*Configuration `type:"list"` 13600 13601 // Available only in Amazon EMR version 5.7.0 and later. The ID of a custom 13602 // Amazon EBS-backed Linux AMI. If specified, Amazon EMR uses this AMI when 13603 // it launches cluster EC2 instances. For more information about custom AMIs 13604 // in Amazon EMR, see Using a Custom AMI (https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-custom-ami.html) 13605 // in the Amazon EMR Management Guide. If omitted, the cluster uses the base 13606 // Linux AMI for the ReleaseLabel specified. For Amazon EMR versions 2.x and 13607 // 3.x, use AmiVersion instead. 13608 // 13609 // For information about creating a custom AMI, see Creating an Amazon EBS-Backed 13610 // Linux AMI (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/creating-an-ami-ebs.html) 13611 // in the Amazon Elastic Compute Cloud User Guide for Linux Instances. For information 13612 // about finding an AMI ID, see Finding a Linux AMI (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/finding-an-ami.html). 13613 CustomAmiId *string `type:"string"` 13614 13615 // The size, in GiB, of the Amazon EBS root device volume of the Linux AMI that 13616 // is used for each EC2 instance. Available in Amazon EMR version 4.x and later. 13617 EbsRootVolumeSize *int64 `type:"integer"` 13618 13619 // A specification of the number and type of Amazon EC2 instances. 13620 // 13621 // Instances is a required field 13622 Instances *JobFlowInstancesConfig `type:"structure" required:"true"` 13623 13624 // Also called instance profile and EC2 role. An IAM role for an EMR cluster. 13625 // The EC2 instances of the cluster assume this role. The default role is EMR_EC2_DefaultRole. 13626 // In order to use the default role, you must have already created it using 13627 // the CLI or console. 13628 JobFlowRole *string `type:"string"` 13629 13630 // Attributes for Kerberos configuration when Kerberos authentication is enabled 13631 // using a security configuration. For more information see Use Kerberos Authentication 13632 // (https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-kerberos.html) 13633 // in the Amazon EMR Management Guide. 13634 KerberosAttributes *KerberosAttributes `type:"structure"` 13635 13636 // The KMS key used for encrypting log files. If a value is not provided, the 13637 // logs remain encrypted by AES-256. This attribute is only available with Amazon 13638 // EMR version 5.30.0 and later, excluding Amazon EMR 6.0.0. 13639 LogEncryptionKmsKeyId *string `type:"string"` 13640 13641 // The location in Amazon S3 to write the log files of the job flow. If a value 13642 // is not provided, logs are not created. 13643 LogUri *string `type:"string"` 13644 13645 // The specified managed scaling policy for an Amazon EMR cluster. 13646 ManagedScalingPolicy *ManagedScalingPolicy `type:"structure"` 13647 13648 // The name of the job flow. 13649 // 13650 // Name is a required field 13651 Name *string `type:"string" required:"true"` 13652 13653 // 13654 // For Amazon EMR releases 3.x and 2.x. For Amazon EMR releases 4.x and later, 13655 // use Applications. 13656 // 13657 // A list of strings that indicates third-party software to use with the job 13658 // flow that accepts a user argument list. EMR accepts and forwards the argument 13659 // list to the corresponding installation script as bootstrap action arguments. 13660 // For more information, see "Launch a Job Flow on the MapR Distribution for 13661 // Hadoop" in the Amazon EMR Developer Guide (https://docs.aws.amazon.com/emr/latest/DeveloperGuide/emr-dg.pdf). 13662 // Supported values are: 13663 // 13664 // * "mapr-m3" - launch the cluster using MapR M3 Edition. 13665 // 13666 // * "mapr-m5" - launch the cluster using MapR M5 Edition. 13667 // 13668 // * "mapr" with the user arguments specifying "--edition,m3" or "--edition,m5" 13669 // - launch the job flow using MapR M3 or M5 Edition respectively. 13670 // 13671 // * "mapr-m7" - launch the cluster using MapR M7 Edition. 13672 // 13673 // * "hunk" - launch the cluster with the Hunk Big Data Analytics Platform. 13674 // 13675 // * "hue"- launch the cluster with Hue installed. 13676 // 13677 // * "spark" - launch the cluster with Apache Spark installed. 13678 // 13679 // * "ganglia" - launch the cluster with the Ganglia Monitoring System installed. 13680 NewSupportedProducts []*SupportedProductConfig `type:"list"` 13681 13682 // The specified placement group configuration for an Amazon EMR cluster. 13683 PlacementGroupConfigs []*PlacementGroupConfig `type:"list"` 13684 13685 // The Amazon EMR release label, which determines the version of open-source 13686 // application packages installed on the cluster. Release labels are in the 13687 // form emr-x.x.x, where x.x.x is an Amazon EMR release version such as emr-5.14.0. 13688 // For more information about Amazon EMR release versions and included application 13689 // versions and features, see https://docs.aws.amazon.com/emr/latest/ReleaseGuide/ 13690 // (https://docs.aws.amazon.com/emr/latest/ReleaseGuide/). The release label 13691 // applies only to Amazon EMR releases version 4.0 and later. Earlier versions 13692 // use AmiVersion. 13693 ReleaseLabel *string `type:"string"` 13694 13695 // Applies only when CustomAmiID is used. Specifies which updates from the Amazon 13696 // Linux AMI package repositories to apply automatically when the instance boots 13697 // using the AMI. If omitted, the default is SECURITY, which indicates that 13698 // only security updates are applied. If NONE is specified, no updates are applied, 13699 // and all updates must be applied manually. 13700 RepoUpgradeOnBoot *string `type:"string" enum:"RepoUpgradeOnBoot"` 13701 13702 // Specifies the way that individual Amazon EC2 instances terminate when an 13703 // automatic scale-in activity occurs or an instance group is resized. TERMINATE_AT_INSTANCE_HOUR 13704 // indicates that Amazon EMR terminates nodes at the instance-hour boundary, 13705 // regardless of when the request to terminate the instance was submitted. This 13706 // option is only available with Amazon EMR 5.1.0 and later and is the default 13707 // for clusters created using that version. TERMINATE_AT_TASK_COMPLETION indicates 13708 // that Amazon EMR adds nodes to a deny list and drains tasks from nodes before 13709 // terminating the Amazon EC2 instances, regardless of the instance-hour boundary. 13710 // With either behavior, Amazon EMR removes the least active nodes first and 13711 // blocks instance termination if it could lead to HDFS corruption. TERMINATE_AT_TASK_COMPLETION 13712 // available only in Amazon EMR version 4.1.0 and later, and is the default 13713 // for versions of Amazon EMR earlier than 5.1.0. 13714 ScaleDownBehavior *string `type:"string" enum:"ScaleDownBehavior"` 13715 13716 // The name of a security configuration to apply to the cluster. 13717 SecurityConfiguration *string `type:"string"` 13718 13719 // The IAM role that will be assumed by the Amazon EMR service to access Amazon 13720 // Web Services resources on your behalf. 13721 ServiceRole *string `type:"string"` 13722 13723 // Specifies the number of steps that can be executed concurrently. The default 13724 // value is 1. The maximum value is 256. 13725 StepConcurrencyLevel *int64 `type:"integer"` 13726 13727 // A list of steps to run. 13728 Steps []*StepConfig `type:"list"` 13729 13730 // 13731 // For Amazon EMR releases 3.x and 2.x. For Amazon EMR releases 4.x and later, 13732 // use Applications. 13733 // 13734 // A list of strings that indicates third-party software to use. For more information, 13735 // see the Amazon EMR Developer Guide (https://docs.aws.amazon.com/emr/latest/DeveloperGuide/emr-dg.pdf). 13736 // Currently supported values are: 13737 // 13738 // * "mapr-m3" - launch the job flow using MapR M3 Edition. 13739 // 13740 // * "mapr-m5" - launch the job flow using MapR M5 Edition. 13741 SupportedProducts []*string `type:"list"` 13742 13743 // A list of tags to associate with a cluster and propagate to Amazon EC2 instances. 13744 Tags []*Tag `type:"list"` 13745 13746 // Set this value to true so that IAM principals in the account associated with 13747 // the cluster can perform EMR actions on the cluster that their IAM policies 13748 // allow. This value defaults to true for clusters created using the EMR API 13749 // or the CLI create-cluster (https://docs.aws.amazon.com/cli/latest/reference/emr/create-cluster.html) 13750 // command. 13751 // 13752 // When set to false, only the IAM principal that created the cluster and the 13753 // account root user can perform EMR actions for the cluster, regardless of 13754 // the IAM permissions policies attached to other IAM principals. For more information, 13755 // see Understanding the EMR Cluster VisibleToAllUsers Setting (https://docs.aws.amazon.com/emr/latest/ManagementGuide/security_iam_emr-with-iam.html#security_set_visible_to_all_users) 13756 // in the Amazon EMRManagement Guide. 13757 VisibleToAllUsers *bool `type:"boolean"` 13758} 13759 13760// String returns the string representation 13761func (s RunJobFlowInput) String() string { 13762 return awsutil.Prettify(s) 13763} 13764 13765// GoString returns the string representation 13766func (s RunJobFlowInput) GoString() string { 13767 return s.String() 13768} 13769 13770// Validate inspects the fields of the type to determine if they are valid. 13771func (s *RunJobFlowInput) Validate() error { 13772 invalidParams := request.ErrInvalidParams{Context: "RunJobFlowInput"} 13773 if s.Instances == nil { 13774 invalidParams.Add(request.NewErrParamRequired("Instances")) 13775 } 13776 if s.Name == nil { 13777 invalidParams.Add(request.NewErrParamRequired("Name")) 13778 } 13779 if s.BootstrapActions != nil { 13780 for i, v := range s.BootstrapActions { 13781 if v == nil { 13782 continue 13783 } 13784 if err := v.Validate(); err != nil { 13785 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "BootstrapActions", i), err.(request.ErrInvalidParams)) 13786 } 13787 } 13788 } 13789 if s.Instances != nil { 13790 if err := s.Instances.Validate(); err != nil { 13791 invalidParams.AddNested("Instances", err.(request.ErrInvalidParams)) 13792 } 13793 } 13794 if s.KerberosAttributes != nil { 13795 if err := s.KerberosAttributes.Validate(); err != nil { 13796 invalidParams.AddNested("KerberosAttributes", err.(request.ErrInvalidParams)) 13797 } 13798 } 13799 if s.ManagedScalingPolicy != nil { 13800 if err := s.ManagedScalingPolicy.Validate(); err != nil { 13801 invalidParams.AddNested("ManagedScalingPolicy", err.(request.ErrInvalidParams)) 13802 } 13803 } 13804 if s.PlacementGroupConfigs != nil { 13805 for i, v := range s.PlacementGroupConfigs { 13806 if v == nil { 13807 continue 13808 } 13809 if err := v.Validate(); err != nil { 13810 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "PlacementGroupConfigs", i), err.(request.ErrInvalidParams)) 13811 } 13812 } 13813 } 13814 if s.Steps != nil { 13815 for i, v := range s.Steps { 13816 if v == nil { 13817 continue 13818 } 13819 if err := v.Validate(); err != nil { 13820 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Steps", i), err.(request.ErrInvalidParams)) 13821 } 13822 } 13823 } 13824 13825 if invalidParams.Len() > 0 { 13826 return invalidParams 13827 } 13828 return nil 13829} 13830 13831// SetAdditionalInfo sets the AdditionalInfo field's value. 13832func (s *RunJobFlowInput) SetAdditionalInfo(v string) *RunJobFlowInput { 13833 s.AdditionalInfo = &v 13834 return s 13835} 13836 13837// SetAmiVersion sets the AmiVersion field's value. 13838func (s *RunJobFlowInput) SetAmiVersion(v string) *RunJobFlowInput { 13839 s.AmiVersion = &v 13840 return s 13841} 13842 13843// SetApplications sets the Applications field's value. 13844func (s *RunJobFlowInput) SetApplications(v []*Application) *RunJobFlowInput { 13845 s.Applications = v 13846 return s 13847} 13848 13849// SetAutoScalingRole sets the AutoScalingRole field's value. 13850func (s *RunJobFlowInput) SetAutoScalingRole(v string) *RunJobFlowInput { 13851 s.AutoScalingRole = &v 13852 return s 13853} 13854 13855// SetBootstrapActions sets the BootstrapActions field's value. 13856func (s *RunJobFlowInput) SetBootstrapActions(v []*BootstrapActionConfig) *RunJobFlowInput { 13857 s.BootstrapActions = v 13858 return s 13859} 13860 13861// SetConfigurations sets the Configurations field's value. 13862func (s *RunJobFlowInput) SetConfigurations(v []*Configuration) *RunJobFlowInput { 13863 s.Configurations = v 13864 return s 13865} 13866 13867// SetCustomAmiId sets the CustomAmiId field's value. 13868func (s *RunJobFlowInput) SetCustomAmiId(v string) *RunJobFlowInput { 13869 s.CustomAmiId = &v 13870 return s 13871} 13872 13873// SetEbsRootVolumeSize sets the EbsRootVolumeSize field's value. 13874func (s *RunJobFlowInput) SetEbsRootVolumeSize(v int64) *RunJobFlowInput { 13875 s.EbsRootVolumeSize = &v 13876 return s 13877} 13878 13879// SetInstances sets the Instances field's value. 13880func (s *RunJobFlowInput) SetInstances(v *JobFlowInstancesConfig) *RunJobFlowInput { 13881 s.Instances = v 13882 return s 13883} 13884 13885// SetJobFlowRole sets the JobFlowRole field's value. 13886func (s *RunJobFlowInput) SetJobFlowRole(v string) *RunJobFlowInput { 13887 s.JobFlowRole = &v 13888 return s 13889} 13890 13891// SetKerberosAttributes sets the KerberosAttributes field's value. 13892func (s *RunJobFlowInput) SetKerberosAttributes(v *KerberosAttributes) *RunJobFlowInput { 13893 s.KerberosAttributes = v 13894 return s 13895} 13896 13897// SetLogEncryptionKmsKeyId sets the LogEncryptionKmsKeyId field's value. 13898func (s *RunJobFlowInput) SetLogEncryptionKmsKeyId(v string) *RunJobFlowInput { 13899 s.LogEncryptionKmsKeyId = &v 13900 return s 13901} 13902 13903// SetLogUri sets the LogUri field's value. 13904func (s *RunJobFlowInput) SetLogUri(v string) *RunJobFlowInput { 13905 s.LogUri = &v 13906 return s 13907} 13908 13909// SetManagedScalingPolicy sets the ManagedScalingPolicy field's value. 13910func (s *RunJobFlowInput) SetManagedScalingPolicy(v *ManagedScalingPolicy) *RunJobFlowInput { 13911 s.ManagedScalingPolicy = v 13912 return s 13913} 13914 13915// SetName sets the Name field's value. 13916func (s *RunJobFlowInput) SetName(v string) *RunJobFlowInput { 13917 s.Name = &v 13918 return s 13919} 13920 13921// SetNewSupportedProducts sets the NewSupportedProducts field's value. 13922func (s *RunJobFlowInput) SetNewSupportedProducts(v []*SupportedProductConfig) *RunJobFlowInput { 13923 s.NewSupportedProducts = v 13924 return s 13925} 13926 13927// SetPlacementGroupConfigs sets the PlacementGroupConfigs field's value. 13928func (s *RunJobFlowInput) SetPlacementGroupConfigs(v []*PlacementGroupConfig) *RunJobFlowInput { 13929 s.PlacementGroupConfigs = v 13930 return s 13931} 13932 13933// SetReleaseLabel sets the ReleaseLabel field's value. 13934func (s *RunJobFlowInput) SetReleaseLabel(v string) *RunJobFlowInput { 13935 s.ReleaseLabel = &v 13936 return s 13937} 13938 13939// SetRepoUpgradeOnBoot sets the RepoUpgradeOnBoot field's value. 13940func (s *RunJobFlowInput) SetRepoUpgradeOnBoot(v string) *RunJobFlowInput { 13941 s.RepoUpgradeOnBoot = &v 13942 return s 13943} 13944 13945// SetScaleDownBehavior sets the ScaleDownBehavior field's value. 13946func (s *RunJobFlowInput) SetScaleDownBehavior(v string) *RunJobFlowInput { 13947 s.ScaleDownBehavior = &v 13948 return s 13949} 13950 13951// SetSecurityConfiguration sets the SecurityConfiguration field's value. 13952func (s *RunJobFlowInput) SetSecurityConfiguration(v string) *RunJobFlowInput { 13953 s.SecurityConfiguration = &v 13954 return s 13955} 13956 13957// SetServiceRole sets the ServiceRole field's value. 13958func (s *RunJobFlowInput) SetServiceRole(v string) *RunJobFlowInput { 13959 s.ServiceRole = &v 13960 return s 13961} 13962 13963// SetStepConcurrencyLevel sets the StepConcurrencyLevel field's value. 13964func (s *RunJobFlowInput) SetStepConcurrencyLevel(v int64) *RunJobFlowInput { 13965 s.StepConcurrencyLevel = &v 13966 return s 13967} 13968 13969// SetSteps sets the Steps field's value. 13970func (s *RunJobFlowInput) SetSteps(v []*StepConfig) *RunJobFlowInput { 13971 s.Steps = v 13972 return s 13973} 13974 13975// SetSupportedProducts sets the SupportedProducts field's value. 13976func (s *RunJobFlowInput) SetSupportedProducts(v []*string) *RunJobFlowInput { 13977 s.SupportedProducts = v 13978 return s 13979} 13980 13981// SetTags sets the Tags field's value. 13982func (s *RunJobFlowInput) SetTags(v []*Tag) *RunJobFlowInput { 13983 s.Tags = v 13984 return s 13985} 13986 13987// SetVisibleToAllUsers sets the VisibleToAllUsers field's value. 13988func (s *RunJobFlowInput) SetVisibleToAllUsers(v bool) *RunJobFlowInput { 13989 s.VisibleToAllUsers = &v 13990 return s 13991} 13992 13993// The result of the RunJobFlow operation. 13994type RunJobFlowOutput struct { 13995 _ struct{} `type:"structure"` 13996 13997 // The Amazon Resource Name (ARN) of the cluster. 13998 ClusterArn *string `min:"20" type:"string"` 13999 14000 // A unique identifier for the job flow. 14001 JobFlowId *string `type:"string"` 14002} 14003 14004// String returns the string representation 14005func (s RunJobFlowOutput) String() string { 14006 return awsutil.Prettify(s) 14007} 14008 14009// GoString returns the string representation 14010func (s RunJobFlowOutput) GoString() string { 14011 return s.String() 14012} 14013 14014// SetClusterArn sets the ClusterArn field's value. 14015func (s *RunJobFlowOutput) SetClusterArn(v string) *RunJobFlowOutput { 14016 s.ClusterArn = &v 14017 return s 14018} 14019 14020// SetJobFlowId sets the JobFlowId field's value. 14021func (s *RunJobFlowOutput) SetJobFlowId(v string) *RunJobFlowOutput { 14022 s.JobFlowId = &v 14023 return s 14024} 14025 14026// The type of adjustment the automatic scaling activity makes when triggered, 14027// and the periodicity of the adjustment. 14028type ScalingAction struct { 14029 _ struct{} `type:"structure"` 14030 14031 // Not available for instance groups. Instance groups use the market type specified 14032 // for the group. 14033 Market *string `type:"string" enum:"MarketType"` 14034 14035 // The type of adjustment the automatic scaling activity makes when triggered, 14036 // and the periodicity of the adjustment. 14037 // 14038 // SimpleScalingPolicyConfiguration is a required field 14039 SimpleScalingPolicyConfiguration *SimpleScalingPolicyConfiguration `type:"structure" required:"true"` 14040} 14041 14042// String returns the string representation 14043func (s ScalingAction) String() string { 14044 return awsutil.Prettify(s) 14045} 14046 14047// GoString returns the string representation 14048func (s ScalingAction) GoString() string { 14049 return s.String() 14050} 14051 14052// Validate inspects the fields of the type to determine if they are valid. 14053func (s *ScalingAction) Validate() error { 14054 invalidParams := request.ErrInvalidParams{Context: "ScalingAction"} 14055 if s.SimpleScalingPolicyConfiguration == nil { 14056 invalidParams.Add(request.NewErrParamRequired("SimpleScalingPolicyConfiguration")) 14057 } 14058 if s.SimpleScalingPolicyConfiguration != nil { 14059 if err := s.SimpleScalingPolicyConfiguration.Validate(); err != nil { 14060 invalidParams.AddNested("SimpleScalingPolicyConfiguration", err.(request.ErrInvalidParams)) 14061 } 14062 } 14063 14064 if invalidParams.Len() > 0 { 14065 return invalidParams 14066 } 14067 return nil 14068} 14069 14070// SetMarket sets the Market field's value. 14071func (s *ScalingAction) SetMarket(v string) *ScalingAction { 14072 s.Market = &v 14073 return s 14074} 14075 14076// SetSimpleScalingPolicyConfiguration sets the SimpleScalingPolicyConfiguration field's value. 14077func (s *ScalingAction) SetSimpleScalingPolicyConfiguration(v *SimpleScalingPolicyConfiguration) *ScalingAction { 14078 s.SimpleScalingPolicyConfiguration = v 14079 return s 14080} 14081 14082// The upper and lower EC2 instance limits for an automatic scaling policy. 14083// Automatic scaling activities triggered by automatic scaling rules will not 14084// cause an instance group to grow above or below these limits. 14085type ScalingConstraints struct { 14086 _ struct{} `type:"structure"` 14087 14088 // The upper boundary of EC2 instances in an instance group beyond which scaling 14089 // activities are not allowed to grow. Scale-out activities will not add instances 14090 // beyond this boundary. 14091 // 14092 // MaxCapacity is a required field 14093 MaxCapacity *int64 `type:"integer" required:"true"` 14094 14095 // The lower boundary of EC2 instances in an instance group below which scaling 14096 // activities are not allowed to shrink. Scale-in activities will not terminate 14097 // instances below this boundary. 14098 // 14099 // MinCapacity is a required field 14100 MinCapacity *int64 `type:"integer" required:"true"` 14101} 14102 14103// String returns the string representation 14104func (s ScalingConstraints) String() string { 14105 return awsutil.Prettify(s) 14106} 14107 14108// GoString returns the string representation 14109func (s ScalingConstraints) GoString() string { 14110 return s.String() 14111} 14112 14113// Validate inspects the fields of the type to determine if they are valid. 14114func (s *ScalingConstraints) Validate() error { 14115 invalidParams := request.ErrInvalidParams{Context: "ScalingConstraints"} 14116 if s.MaxCapacity == nil { 14117 invalidParams.Add(request.NewErrParamRequired("MaxCapacity")) 14118 } 14119 if s.MinCapacity == nil { 14120 invalidParams.Add(request.NewErrParamRequired("MinCapacity")) 14121 } 14122 14123 if invalidParams.Len() > 0 { 14124 return invalidParams 14125 } 14126 return nil 14127} 14128 14129// SetMaxCapacity sets the MaxCapacity field's value. 14130func (s *ScalingConstraints) SetMaxCapacity(v int64) *ScalingConstraints { 14131 s.MaxCapacity = &v 14132 return s 14133} 14134 14135// SetMinCapacity sets the MinCapacity field's value. 14136func (s *ScalingConstraints) SetMinCapacity(v int64) *ScalingConstraints { 14137 s.MinCapacity = &v 14138 return s 14139} 14140 14141// A scale-in or scale-out rule that defines scaling activity, including the 14142// CloudWatch metric alarm that triggers activity, how EC2 instances are added 14143// or removed, and the periodicity of adjustments. The automatic scaling policy 14144// for an instance group can comprise one or more automatic scaling rules. 14145type ScalingRule struct { 14146 _ struct{} `type:"structure"` 14147 14148 // The conditions that trigger an automatic scaling activity. 14149 // 14150 // Action is a required field 14151 Action *ScalingAction `type:"structure" required:"true"` 14152 14153 // A friendly, more verbose description of the automatic scaling rule. 14154 Description *string `type:"string"` 14155 14156 // The name used to identify an automatic scaling rule. Rule names must be unique 14157 // within a scaling policy. 14158 // 14159 // Name is a required field 14160 Name *string `type:"string" required:"true"` 14161 14162 // The CloudWatch alarm definition that determines when automatic scaling activity 14163 // is triggered. 14164 // 14165 // Trigger is a required field 14166 Trigger *ScalingTrigger `type:"structure" required:"true"` 14167} 14168 14169// String returns the string representation 14170func (s ScalingRule) String() string { 14171 return awsutil.Prettify(s) 14172} 14173 14174// GoString returns the string representation 14175func (s ScalingRule) GoString() string { 14176 return s.String() 14177} 14178 14179// Validate inspects the fields of the type to determine if they are valid. 14180func (s *ScalingRule) Validate() error { 14181 invalidParams := request.ErrInvalidParams{Context: "ScalingRule"} 14182 if s.Action == nil { 14183 invalidParams.Add(request.NewErrParamRequired("Action")) 14184 } 14185 if s.Name == nil { 14186 invalidParams.Add(request.NewErrParamRequired("Name")) 14187 } 14188 if s.Trigger == nil { 14189 invalidParams.Add(request.NewErrParamRequired("Trigger")) 14190 } 14191 if s.Action != nil { 14192 if err := s.Action.Validate(); err != nil { 14193 invalidParams.AddNested("Action", err.(request.ErrInvalidParams)) 14194 } 14195 } 14196 if s.Trigger != nil { 14197 if err := s.Trigger.Validate(); err != nil { 14198 invalidParams.AddNested("Trigger", err.(request.ErrInvalidParams)) 14199 } 14200 } 14201 14202 if invalidParams.Len() > 0 { 14203 return invalidParams 14204 } 14205 return nil 14206} 14207 14208// SetAction sets the Action field's value. 14209func (s *ScalingRule) SetAction(v *ScalingAction) *ScalingRule { 14210 s.Action = v 14211 return s 14212} 14213 14214// SetDescription sets the Description field's value. 14215func (s *ScalingRule) SetDescription(v string) *ScalingRule { 14216 s.Description = &v 14217 return s 14218} 14219 14220// SetName sets the Name field's value. 14221func (s *ScalingRule) SetName(v string) *ScalingRule { 14222 s.Name = &v 14223 return s 14224} 14225 14226// SetTrigger sets the Trigger field's value. 14227func (s *ScalingRule) SetTrigger(v *ScalingTrigger) *ScalingRule { 14228 s.Trigger = v 14229 return s 14230} 14231 14232// The conditions that trigger an automatic scaling activity. 14233type ScalingTrigger struct { 14234 _ struct{} `type:"structure"` 14235 14236 // The definition of a CloudWatch metric alarm. When the defined alarm conditions 14237 // are met along with other trigger parameters, scaling activity begins. 14238 // 14239 // CloudWatchAlarmDefinition is a required field 14240 CloudWatchAlarmDefinition *CloudWatchAlarmDefinition `type:"structure" required:"true"` 14241} 14242 14243// String returns the string representation 14244func (s ScalingTrigger) String() string { 14245 return awsutil.Prettify(s) 14246} 14247 14248// GoString returns the string representation 14249func (s ScalingTrigger) GoString() string { 14250 return s.String() 14251} 14252 14253// Validate inspects the fields of the type to determine if they are valid. 14254func (s *ScalingTrigger) Validate() error { 14255 invalidParams := request.ErrInvalidParams{Context: "ScalingTrigger"} 14256 if s.CloudWatchAlarmDefinition == nil { 14257 invalidParams.Add(request.NewErrParamRequired("CloudWatchAlarmDefinition")) 14258 } 14259 if s.CloudWatchAlarmDefinition != nil { 14260 if err := s.CloudWatchAlarmDefinition.Validate(); err != nil { 14261 invalidParams.AddNested("CloudWatchAlarmDefinition", err.(request.ErrInvalidParams)) 14262 } 14263 } 14264 14265 if invalidParams.Len() > 0 { 14266 return invalidParams 14267 } 14268 return nil 14269} 14270 14271// SetCloudWatchAlarmDefinition sets the CloudWatchAlarmDefinition field's value. 14272func (s *ScalingTrigger) SetCloudWatchAlarmDefinition(v *CloudWatchAlarmDefinition) *ScalingTrigger { 14273 s.CloudWatchAlarmDefinition = v 14274 return s 14275} 14276 14277// Configuration of the script to run during a bootstrap action. 14278type ScriptBootstrapActionConfig struct { 14279 _ struct{} `type:"structure"` 14280 14281 // A list of command line arguments to pass to the bootstrap action script. 14282 Args []*string `type:"list"` 14283 14284 // Location in Amazon S3 of the script to run during a bootstrap action. 14285 // 14286 // Path is a required field 14287 Path *string `type:"string" required:"true"` 14288} 14289 14290// String returns the string representation 14291func (s ScriptBootstrapActionConfig) String() string { 14292 return awsutil.Prettify(s) 14293} 14294 14295// GoString returns the string representation 14296func (s ScriptBootstrapActionConfig) GoString() string { 14297 return s.String() 14298} 14299 14300// Validate inspects the fields of the type to determine if they are valid. 14301func (s *ScriptBootstrapActionConfig) Validate() error { 14302 invalidParams := request.ErrInvalidParams{Context: "ScriptBootstrapActionConfig"} 14303 if s.Path == nil { 14304 invalidParams.Add(request.NewErrParamRequired("Path")) 14305 } 14306 14307 if invalidParams.Len() > 0 { 14308 return invalidParams 14309 } 14310 return nil 14311} 14312 14313// SetArgs sets the Args field's value. 14314func (s *ScriptBootstrapActionConfig) SetArgs(v []*string) *ScriptBootstrapActionConfig { 14315 s.Args = v 14316 return s 14317} 14318 14319// SetPath sets the Path field's value. 14320func (s *ScriptBootstrapActionConfig) SetPath(v string) *ScriptBootstrapActionConfig { 14321 s.Path = &v 14322 return s 14323} 14324 14325// The creation date and time, and name, of a security configuration. 14326type SecurityConfigurationSummary struct { 14327 _ struct{} `type:"structure"` 14328 14329 // The date and time the security configuration was created. 14330 CreationDateTime *time.Time `type:"timestamp"` 14331 14332 // The name of the security configuration. 14333 Name *string `type:"string"` 14334} 14335 14336// String returns the string representation 14337func (s SecurityConfigurationSummary) String() string { 14338 return awsutil.Prettify(s) 14339} 14340 14341// GoString returns the string representation 14342func (s SecurityConfigurationSummary) GoString() string { 14343 return s.String() 14344} 14345 14346// SetCreationDateTime sets the CreationDateTime field's value. 14347func (s *SecurityConfigurationSummary) SetCreationDateTime(v time.Time) *SecurityConfigurationSummary { 14348 s.CreationDateTime = &v 14349 return s 14350} 14351 14352// SetName sets the Name field's value. 14353func (s *SecurityConfigurationSummary) SetName(v string) *SecurityConfigurationSummary { 14354 s.Name = &v 14355 return s 14356} 14357 14358// Details for an Amazon EMR Studio session mapping including creation time, 14359// user or group ID, Studio ID, and so on. 14360type SessionMappingDetail struct { 14361 _ struct{} `type:"structure"` 14362 14363 // The time the session mapping was created. 14364 CreationTime *time.Time `type:"timestamp"` 14365 14366 // The globally unique identifier (GUID) of the user or group. 14367 IdentityId *string `type:"string"` 14368 14369 // The name of the user or group. For more information, see UserName (https://docs.aws.amazon.com/singlesignon/latest/IdentityStoreAPIReference/API_User.html#singlesignon-Type-User-UserName) 14370 // and DisplayName (https://docs.aws.amazon.com/singlesignon/latest/IdentityStoreAPIReference/API_Group.html#singlesignon-Type-Group-DisplayName) 14371 // in the Amazon Web Services SSO Identity Store API Reference. 14372 IdentityName *string `type:"string"` 14373 14374 // Specifies whether the identity mapped to the Amazon EMR Studio is a user 14375 // or a group. 14376 IdentityType *string `type:"string" enum:"IdentityType"` 14377 14378 // The time the session mapping was last modified. 14379 LastModifiedTime *time.Time `type:"timestamp"` 14380 14381 // The Amazon Resource Name (ARN) of the session policy associated with the 14382 // user or group. 14383 SessionPolicyArn *string `type:"string"` 14384 14385 // The ID of the Amazon EMR Studio. 14386 StudioId *string `type:"string"` 14387} 14388 14389// String returns the string representation 14390func (s SessionMappingDetail) String() string { 14391 return awsutil.Prettify(s) 14392} 14393 14394// GoString returns the string representation 14395func (s SessionMappingDetail) GoString() string { 14396 return s.String() 14397} 14398 14399// SetCreationTime sets the CreationTime field's value. 14400func (s *SessionMappingDetail) SetCreationTime(v time.Time) *SessionMappingDetail { 14401 s.CreationTime = &v 14402 return s 14403} 14404 14405// SetIdentityId sets the IdentityId field's value. 14406func (s *SessionMappingDetail) SetIdentityId(v string) *SessionMappingDetail { 14407 s.IdentityId = &v 14408 return s 14409} 14410 14411// SetIdentityName sets the IdentityName field's value. 14412func (s *SessionMappingDetail) SetIdentityName(v string) *SessionMappingDetail { 14413 s.IdentityName = &v 14414 return s 14415} 14416 14417// SetIdentityType sets the IdentityType field's value. 14418func (s *SessionMappingDetail) SetIdentityType(v string) *SessionMappingDetail { 14419 s.IdentityType = &v 14420 return s 14421} 14422 14423// SetLastModifiedTime sets the LastModifiedTime field's value. 14424func (s *SessionMappingDetail) SetLastModifiedTime(v time.Time) *SessionMappingDetail { 14425 s.LastModifiedTime = &v 14426 return s 14427} 14428 14429// SetSessionPolicyArn sets the SessionPolicyArn field's value. 14430func (s *SessionMappingDetail) SetSessionPolicyArn(v string) *SessionMappingDetail { 14431 s.SessionPolicyArn = &v 14432 return s 14433} 14434 14435// SetStudioId sets the StudioId field's value. 14436func (s *SessionMappingDetail) SetStudioId(v string) *SessionMappingDetail { 14437 s.StudioId = &v 14438 return s 14439} 14440 14441// Details for an Amazon EMR Studio session mapping. The details do not include 14442// the time the session mapping was last modified. 14443type SessionMappingSummary struct { 14444 _ struct{} `type:"structure"` 14445 14446 // The time the session mapping was created. 14447 CreationTime *time.Time `type:"timestamp"` 14448 14449 // The globally unique identifier (GUID) of the user or group from the Amazon 14450 // Web Services SSO Identity Store. 14451 IdentityId *string `type:"string"` 14452 14453 // The name of the user or group. For more information, see UserName (https://docs.aws.amazon.com/singlesignon/latest/IdentityStoreAPIReference/API_User.html#singlesignon-Type-User-UserName) 14454 // and DisplayName (https://docs.aws.amazon.com/singlesignon/latest/IdentityStoreAPIReference/API_Group.html#singlesignon-Type-Group-DisplayName) 14455 // in the Amazon Web Services SSO Identity Store API Reference. 14456 IdentityName *string `type:"string"` 14457 14458 // Specifies whether the identity mapped to the Amazon EMR Studio is a user 14459 // or a group. 14460 IdentityType *string `type:"string" enum:"IdentityType"` 14461 14462 // The Amazon Resource Name (ARN) of the session policy associated with the 14463 // user or group. 14464 SessionPolicyArn *string `type:"string"` 14465 14466 // The ID of the Amazon EMR Studio. 14467 StudioId *string `type:"string"` 14468} 14469 14470// String returns the string representation 14471func (s SessionMappingSummary) String() string { 14472 return awsutil.Prettify(s) 14473} 14474 14475// GoString returns the string representation 14476func (s SessionMappingSummary) GoString() string { 14477 return s.String() 14478} 14479 14480// SetCreationTime sets the CreationTime field's value. 14481func (s *SessionMappingSummary) SetCreationTime(v time.Time) *SessionMappingSummary { 14482 s.CreationTime = &v 14483 return s 14484} 14485 14486// SetIdentityId sets the IdentityId field's value. 14487func (s *SessionMappingSummary) SetIdentityId(v string) *SessionMappingSummary { 14488 s.IdentityId = &v 14489 return s 14490} 14491 14492// SetIdentityName sets the IdentityName field's value. 14493func (s *SessionMappingSummary) SetIdentityName(v string) *SessionMappingSummary { 14494 s.IdentityName = &v 14495 return s 14496} 14497 14498// SetIdentityType sets the IdentityType field's value. 14499func (s *SessionMappingSummary) SetIdentityType(v string) *SessionMappingSummary { 14500 s.IdentityType = &v 14501 return s 14502} 14503 14504// SetSessionPolicyArn sets the SessionPolicyArn field's value. 14505func (s *SessionMappingSummary) SetSessionPolicyArn(v string) *SessionMappingSummary { 14506 s.SessionPolicyArn = &v 14507 return s 14508} 14509 14510// SetStudioId sets the StudioId field's value. 14511func (s *SessionMappingSummary) SetStudioId(v string) *SessionMappingSummary { 14512 s.StudioId = &v 14513 return s 14514} 14515 14516// The input argument to the TerminationProtection operation. 14517type SetTerminationProtectionInput struct { 14518 _ struct{} `type:"structure"` 14519 14520 // A list of strings that uniquely identify the clusters to protect. This identifier 14521 // is returned by RunJobFlow and can also be obtained from DescribeJobFlows . 14522 // 14523 // JobFlowIds is a required field 14524 JobFlowIds []*string `type:"list" required:"true"` 14525 14526 // A Boolean that indicates whether to protect the cluster and prevent the Amazon 14527 // EC2 instances in the cluster from shutting down due to API calls, user intervention, 14528 // or job-flow error. 14529 // 14530 // TerminationProtected is a required field 14531 TerminationProtected *bool `type:"boolean" required:"true"` 14532} 14533 14534// String returns the string representation 14535func (s SetTerminationProtectionInput) String() string { 14536 return awsutil.Prettify(s) 14537} 14538 14539// GoString returns the string representation 14540func (s SetTerminationProtectionInput) GoString() string { 14541 return s.String() 14542} 14543 14544// Validate inspects the fields of the type to determine if they are valid. 14545func (s *SetTerminationProtectionInput) Validate() error { 14546 invalidParams := request.ErrInvalidParams{Context: "SetTerminationProtectionInput"} 14547 if s.JobFlowIds == nil { 14548 invalidParams.Add(request.NewErrParamRequired("JobFlowIds")) 14549 } 14550 if s.TerminationProtected == nil { 14551 invalidParams.Add(request.NewErrParamRequired("TerminationProtected")) 14552 } 14553 14554 if invalidParams.Len() > 0 { 14555 return invalidParams 14556 } 14557 return nil 14558} 14559 14560// SetJobFlowIds sets the JobFlowIds field's value. 14561func (s *SetTerminationProtectionInput) SetJobFlowIds(v []*string) *SetTerminationProtectionInput { 14562 s.JobFlowIds = v 14563 return s 14564} 14565 14566// SetTerminationProtected sets the TerminationProtected field's value. 14567func (s *SetTerminationProtectionInput) SetTerminationProtected(v bool) *SetTerminationProtectionInput { 14568 s.TerminationProtected = &v 14569 return s 14570} 14571 14572type SetTerminationProtectionOutput struct { 14573 _ struct{} `type:"structure"` 14574} 14575 14576// String returns the string representation 14577func (s SetTerminationProtectionOutput) String() string { 14578 return awsutil.Prettify(s) 14579} 14580 14581// GoString returns the string representation 14582func (s SetTerminationProtectionOutput) GoString() string { 14583 return s.String() 14584} 14585 14586// The input to the SetVisibleToAllUsers action. 14587type SetVisibleToAllUsersInput struct { 14588 _ struct{} `type:"structure"` 14589 14590 // The unique identifier of the job flow (cluster). 14591 // 14592 // JobFlowIds is a required field 14593 JobFlowIds []*string `type:"list" required:"true"` 14594 14595 // A value of true indicates that an IAM principal in the account can perform 14596 // EMR actions on the cluster that the IAM policies attached to the principal 14597 // allow. A value of false indicates that only the IAM principal that created 14598 // the cluster and the Amazon Web Services root user can perform EMR actions 14599 // on the cluster. 14600 // 14601 // VisibleToAllUsers is a required field 14602 VisibleToAllUsers *bool `type:"boolean" required:"true"` 14603} 14604 14605// String returns the string representation 14606func (s SetVisibleToAllUsersInput) String() string { 14607 return awsutil.Prettify(s) 14608} 14609 14610// GoString returns the string representation 14611func (s SetVisibleToAllUsersInput) GoString() string { 14612 return s.String() 14613} 14614 14615// Validate inspects the fields of the type to determine if they are valid. 14616func (s *SetVisibleToAllUsersInput) Validate() error { 14617 invalidParams := request.ErrInvalidParams{Context: "SetVisibleToAllUsersInput"} 14618 if s.JobFlowIds == nil { 14619 invalidParams.Add(request.NewErrParamRequired("JobFlowIds")) 14620 } 14621 if s.VisibleToAllUsers == nil { 14622 invalidParams.Add(request.NewErrParamRequired("VisibleToAllUsers")) 14623 } 14624 14625 if invalidParams.Len() > 0 { 14626 return invalidParams 14627 } 14628 return nil 14629} 14630 14631// SetJobFlowIds sets the JobFlowIds field's value. 14632func (s *SetVisibleToAllUsersInput) SetJobFlowIds(v []*string) *SetVisibleToAllUsersInput { 14633 s.JobFlowIds = v 14634 return s 14635} 14636 14637// SetVisibleToAllUsers sets the VisibleToAllUsers field's value. 14638func (s *SetVisibleToAllUsersInput) SetVisibleToAllUsers(v bool) *SetVisibleToAllUsersInput { 14639 s.VisibleToAllUsers = &v 14640 return s 14641} 14642 14643type SetVisibleToAllUsersOutput struct { 14644 _ struct{} `type:"structure"` 14645} 14646 14647// String returns the string representation 14648func (s SetVisibleToAllUsersOutput) String() string { 14649 return awsutil.Prettify(s) 14650} 14651 14652// GoString returns the string representation 14653func (s SetVisibleToAllUsersOutput) GoString() string { 14654 return s.String() 14655} 14656 14657// Policy for customizing shrink operations. Allows configuration of decommissioning 14658// timeout and targeted instance shrinking. 14659type ShrinkPolicy struct { 14660 _ struct{} `type:"structure"` 14661 14662 // The desired timeout for decommissioning an instance. Overrides the default 14663 // YARN decommissioning timeout. 14664 DecommissionTimeout *int64 `type:"integer"` 14665 14666 // Custom policy for requesting termination protection or termination of specific 14667 // instances when shrinking an instance group. 14668 InstanceResizePolicy *InstanceResizePolicy `type:"structure"` 14669} 14670 14671// String returns the string representation 14672func (s ShrinkPolicy) String() string { 14673 return awsutil.Prettify(s) 14674} 14675 14676// GoString returns the string representation 14677func (s ShrinkPolicy) GoString() string { 14678 return s.String() 14679} 14680 14681// SetDecommissionTimeout sets the DecommissionTimeout field's value. 14682func (s *ShrinkPolicy) SetDecommissionTimeout(v int64) *ShrinkPolicy { 14683 s.DecommissionTimeout = &v 14684 return s 14685} 14686 14687// SetInstanceResizePolicy sets the InstanceResizePolicy field's value. 14688func (s *ShrinkPolicy) SetInstanceResizePolicy(v *InstanceResizePolicy) *ShrinkPolicy { 14689 s.InstanceResizePolicy = v 14690 return s 14691} 14692 14693// An automatic scaling configuration, which describes how the policy adds or 14694// removes instances, the cooldown period, and the number of EC2 instances that 14695// will be added each time the CloudWatch metric alarm condition is satisfied. 14696type SimpleScalingPolicyConfiguration struct { 14697 _ struct{} `type:"structure"` 14698 14699 // The way in which EC2 instances are added (if ScalingAdjustment is a positive 14700 // number) or terminated (if ScalingAdjustment is a negative number) each time 14701 // the scaling activity is triggered. CHANGE_IN_CAPACITY is the default. CHANGE_IN_CAPACITY 14702 // indicates that the EC2 instance count increments or decrements by ScalingAdjustment, 14703 // which should be expressed as an integer. PERCENT_CHANGE_IN_CAPACITY indicates 14704 // the instance count increments or decrements by the percentage specified by 14705 // ScalingAdjustment, which should be expressed as an integer. For example, 14706 // 20 indicates an increase in 20% increments of cluster capacity. EXACT_CAPACITY 14707 // indicates the scaling activity results in an instance group with the number 14708 // of EC2 instances specified by ScalingAdjustment, which should be expressed 14709 // as a positive integer. 14710 AdjustmentType *string `type:"string" enum:"AdjustmentType"` 14711 14712 // The amount of time, in seconds, after a scaling activity completes before 14713 // any further trigger-related scaling activities can start. The default value 14714 // is 0. 14715 CoolDown *int64 `type:"integer"` 14716 14717 // The amount by which to scale in or scale out, based on the specified AdjustmentType. 14718 // A positive value adds to the instance group's EC2 instance count while a 14719 // negative number removes instances. If AdjustmentType is set to EXACT_CAPACITY, 14720 // the number should only be a positive integer. If AdjustmentType is set to 14721 // PERCENT_CHANGE_IN_CAPACITY, the value should express the percentage as an 14722 // integer. For example, -20 indicates a decrease in 20% increments of cluster 14723 // capacity. 14724 // 14725 // ScalingAdjustment is a required field 14726 ScalingAdjustment *int64 `type:"integer" required:"true"` 14727} 14728 14729// String returns the string representation 14730func (s SimpleScalingPolicyConfiguration) String() string { 14731 return awsutil.Prettify(s) 14732} 14733 14734// GoString returns the string representation 14735func (s SimpleScalingPolicyConfiguration) GoString() string { 14736 return s.String() 14737} 14738 14739// Validate inspects the fields of the type to determine if they are valid. 14740func (s *SimpleScalingPolicyConfiguration) Validate() error { 14741 invalidParams := request.ErrInvalidParams{Context: "SimpleScalingPolicyConfiguration"} 14742 if s.ScalingAdjustment == nil { 14743 invalidParams.Add(request.NewErrParamRequired("ScalingAdjustment")) 14744 } 14745 14746 if invalidParams.Len() > 0 { 14747 return invalidParams 14748 } 14749 return nil 14750} 14751 14752// SetAdjustmentType sets the AdjustmentType field's value. 14753func (s *SimpleScalingPolicyConfiguration) SetAdjustmentType(v string) *SimpleScalingPolicyConfiguration { 14754 s.AdjustmentType = &v 14755 return s 14756} 14757 14758// SetCoolDown sets the CoolDown field's value. 14759func (s *SimpleScalingPolicyConfiguration) SetCoolDown(v int64) *SimpleScalingPolicyConfiguration { 14760 s.CoolDown = &v 14761 return s 14762} 14763 14764// SetScalingAdjustment sets the ScalingAdjustment field's value. 14765func (s *SimpleScalingPolicyConfiguration) SetScalingAdjustment(v int64) *SimpleScalingPolicyConfiguration { 14766 s.ScalingAdjustment = &v 14767 return s 14768} 14769 14770// The returned release label application names or versions. 14771type SimplifiedApplication struct { 14772 _ struct{} `type:"structure"` 14773 14774 // The returned release label application name. For example, hadoop. 14775 Name *string `type:"string"` 14776 14777 // The returned release label application version. For example, 3.2.1. 14778 Version *string `type:"string"` 14779} 14780 14781// String returns the string representation 14782func (s SimplifiedApplication) String() string { 14783 return awsutil.Prettify(s) 14784} 14785 14786// GoString returns the string representation 14787func (s SimplifiedApplication) GoString() string { 14788 return s.String() 14789} 14790 14791// SetName sets the Name field's value. 14792func (s *SimplifiedApplication) SetName(v string) *SimplifiedApplication { 14793 s.Name = &v 14794 return s 14795} 14796 14797// SetVersion sets the Version field's value. 14798func (s *SimplifiedApplication) SetVersion(v string) *SimplifiedApplication { 14799 s.Version = &v 14800 return s 14801} 14802 14803// The launch specification for Spot Instances in the instance fleet, which 14804// determines the defined duration, provisioning timeout behavior, and allocation 14805// strategy. 14806// 14807// The instance fleet configuration is available only in Amazon EMR versions 14808// 4.8.0 and later, excluding 5.0.x versions. Spot Instance allocation strategy 14809// is available in Amazon EMR version 5.12.1 and later. 14810type SpotProvisioningSpecification struct { 14811 _ struct{} `type:"structure"` 14812 14813 // Specifies the strategy to use in launching Spot Instance fleets. Currently, 14814 // the only option is capacity-optimized (the default), which launches instances 14815 // from Spot Instance pools with optimal capacity for the number of instances 14816 // that are launching. 14817 AllocationStrategy *string `type:"string" enum:"SpotProvisioningAllocationStrategy"` 14818 14819 // The defined duration for Spot Instances (also known as Spot blocks) in minutes. 14820 // When specified, the Spot Instance does not terminate before the defined duration 14821 // expires, and defined duration pricing for Spot Instances applies. Valid values 14822 // are 60, 120, 180, 240, 300, or 360. The duration period starts as soon as 14823 // a Spot Instance receives its instance ID. At the end of the duration, Amazon 14824 // EC2 marks the Spot Instance for termination and provides a Spot Instance 14825 // termination notice, which gives the instance a two-minute warning before 14826 // it terminates. 14827 BlockDurationMinutes *int64 `type:"integer"` 14828 14829 // The action to take when TargetSpotCapacity has not been fulfilled when the 14830 // TimeoutDurationMinutes has expired; that is, when all Spot Instances could 14831 // not be provisioned within the Spot provisioning timeout. Valid values are 14832 // TERMINATE_CLUSTER and SWITCH_TO_ON_DEMAND. SWITCH_TO_ON_DEMAND specifies 14833 // that if no Spot Instances are available, On-Demand Instances should be provisioned 14834 // to fulfill any remaining Spot capacity. 14835 // 14836 // TimeoutAction is a required field 14837 TimeoutAction *string `type:"string" required:"true" enum:"SpotProvisioningTimeoutAction"` 14838 14839 // The spot provisioning timeout period in minutes. If Spot Instances are not 14840 // provisioned within this time period, the TimeOutAction is taken. Minimum 14841 // value is 5 and maximum value is 1440. The timeout applies only during initial 14842 // provisioning, when the cluster is first created. 14843 // 14844 // TimeoutDurationMinutes is a required field 14845 TimeoutDurationMinutes *int64 `type:"integer" required:"true"` 14846} 14847 14848// String returns the string representation 14849func (s SpotProvisioningSpecification) String() string { 14850 return awsutil.Prettify(s) 14851} 14852 14853// GoString returns the string representation 14854func (s SpotProvisioningSpecification) GoString() string { 14855 return s.String() 14856} 14857 14858// Validate inspects the fields of the type to determine if they are valid. 14859func (s *SpotProvisioningSpecification) Validate() error { 14860 invalidParams := request.ErrInvalidParams{Context: "SpotProvisioningSpecification"} 14861 if s.TimeoutAction == nil { 14862 invalidParams.Add(request.NewErrParamRequired("TimeoutAction")) 14863 } 14864 if s.TimeoutDurationMinutes == nil { 14865 invalidParams.Add(request.NewErrParamRequired("TimeoutDurationMinutes")) 14866 } 14867 14868 if invalidParams.Len() > 0 { 14869 return invalidParams 14870 } 14871 return nil 14872} 14873 14874// SetAllocationStrategy sets the AllocationStrategy field's value. 14875func (s *SpotProvisioningSpecification) SetAllocationStrategy(v string) *SpotProvisioningSpecification { 14876 s.AllocationStrategy = &v 14877 return s 14878} 14879 14880// SetBlockDurationMinutes sets the BlockDurationMinutes field's value. 14881func (s *SpotProvisioningSpecification) SetBlockDurationMinutes(v int64) *SpotProvisioningSpecification { 14882 s.BlockDurationMinutes = &v 14883 return s 14884} 14885 14886// SetTimeoutAction sets the TimeoutAction field's value. 14887func (s *SpotProvisioningSpecification) SetTimeoutAction(v string) *SpotProvisioningSpecification { 14888 s.TimeoutAction = &v 14889 return s 14890} 14891 14892// SetTimeoutDurationMinutes sets the TimeoutDurationMinutes field's value. 14893func (s *SpotProvisioningSpecification) SetTimeoutDurationMinutes(v int64) *SpotProvisioningSpecification { 14894 s.TimeoutDurationMinutes = &v 14895 return s 14896} 14897 14898type StartNotebookExecutionInput struct { 14899 _ struct{} `type:"structure"` 14900 14901 // The unique identifier of the EMR Notebook to use for notebook execution. 14902 // 14903 // EditorId is a required field 14904 EditorId *string `type:"string" required:"true"` 14905 14906 // Specifies the execution engine (cluster) that runs the notebook execution. 14907 // 14908 // ExecutionEngine is a required field 14909 ExecutionEngine *ExecutionEngineConfig `type:"structure" required:"true"` 14910 14911 // An optional name for the notebook execution. 14912 NotebookExecutionName *string `type:"string"` 14913 14914 // The unique identifier of the Amazon EC2 security group to associate with 14915 // the EMR Notebook for this notebook execution. 14916 NotebookInstanceSecurityGroupId *string `type:"string"` 14917 14918 // Input parameters in JSON format passed to the EMR Notebook at runtime for 14919 // execution. 14920 NotebookParams *string `type:"string"` 14921 14922 // The path and file name of the notebook file for this execution, relative 14923 // to the path specified for the EMR Notebook. For example, if you specify a 14924 // path of s3://MyBucket/MyNotebooks when you create an EMR Notebook for a notebook 14925 // with an ID of e-ABCDEFGHIJK1234567890ABCD (the EditorID of this request), 14926 // and you specify a RelativePath of my_notebook_executions/notebook_execution.ipynb, 14927 // the location of the file for the notebook execution is s3://MyBucket/MyNotebooks/e-ABCDEFGHIJK1234567890ABCD/my_notebook_executions/notebook_execution.ipynb. 14928 // 14929 // RelativePath is a required field 14930 RelativePath *string `type:"string" required:"true"` 14931 14932 // The name or ARN of the IAM role that is used as the service role for Amazon 14933 // EMR (the EMR role) for the notebook execution. 14934 // 14935 // ServiceRole is a required field 14936 ServiceRole *string `type:"string" required:"true"` 14937 14938 // A list of tags associated with a notebook execution. Tags are user-defined 14939 // key-value pairs that consist of a required key string with a maximum of 128 14940 // characters and an optional value string with a maximum of 256 characters. 14941 Tags []*Tag `type:"list"` 14942} 14943 14944// String returns the string representation 14945func (s StartNotebookExecutionInput) String() string { 14946 return awsutil.Prettify(s) 14947} 14948 14949// GoString returns the string representation 14950func (s StartNotebookExecutionInput) GoString() string { 14951 return s.String() 14952} 14953 14954// Validate inspects the fields of the type to determine if they are valid. 14955func (s *StartNotebookExecutionInput) Validate() error { 14956 invalidParams := request.ErrInvalidParams{Context: "StartNotebookExecutionInput"} 14957 if s.EditorId == nil { 14958 invalidParams.Add(request.NewErrParamRequired("EditorId")) 14959 } 14960 if s.ExecutionEngine == nil { 14961 invalidParams.Add(request.NewErrParamRequired("ExecutionEngine")) 14962 } 14963 if s.RelativePath == nil { 14964 invalidParams.Add(request.NewErrParamRequired("RelativePath")) 14965 } 14966 if s.ServiceRole == nil { 14967 invalidParams.Add(request.NewErrParamRequired("ServiceRole")) 14968 } 14969 if s.ExecutionEngine != nil { 14970 if err := s.ExecutionEngine.Validate(); err != nil { 14971 invalidParams.AddNested("ExecutionEngine", err.(request.ErrInvalidParams)) 14972 } 14973 } 14974 14975 if invalidParams.Len() > 0 { 14976 return invalidParams 14977 } 14978 return nil 14979} 14980 14981// SetEditorId sets the EditorId field's value. 14982func (s *StartNotebookExecutionInput) SetEditorId(v string) *StartNotebookExecutionInput { 14983 s.EditorId = &v 14984 return s 14985} 14986 14987// SetExecutionEngine sets the ExecutionEngine field's value. 14988func (s *StartNotebookExecutionInput) SetExecutionEngine(v *ExecutionEngineConfig) *StartNotebookExecutionInput { 14989 s.ExecutionEngine = v 14990 return s 14991} 14992 14993// SetNotebookExecutionName sets the NotebookExecutionName field's value. 14994func (s *StartNotebookExecutionInput) SetNotebookExecutionName(v string) *StartNotebookExecutionInput { 14995 s.NotebookExecutionName = &v 14996 return s 14997} 14998 14999// SetNotebookInstanceSecurityGroupId sets the NotebookInstanceSecurityGroupId field's value. 15000func (s *StartNotebookExecutionInput) SetNotebookInstanceSecurityGroupId(v string) *StartNotebookExecutionInput { 15001 s.NotebookInstanceSecurityGroupId = &v 15002 return s 15003} 15004 15005// SetNotebookParams sets the NotebookParams field's value. 15006func (s *StartNotebookExecutionInput) SetNotebookParams(v string) *StartNotebookExecutionInput { 15007 s.NotebookParams = &v 15008 return s 15009} 15010 15011// SetRelativePath sets the RelativePath field's value. 15012func (s *StartNotebookExecutionInput) SetRelativePath(v string) *StartNotebookExecutionInput { 15013 s.RelativePath = &v 15014 return s 15015} 15016 15017// SetServiceRole sets the ServiceRole field's value. 15018func (s *StartNotebookExecutionInput) SetServiceRole(v string) *StartNotebookExecutionInput { 15019 s.ServiceRole = &v 15020 return s 15021} 15022 15023// SetTags sets the Tags field's value. 15024func (s *StartNotebookExecutionInput) SetTags(v []*Tag) *StartNotebookExecutionInput { 15025 s.Tags = v 15026 return s 15027} 15028 15029type StartNotebookExecutionOutput struct { 15030 _ struct{} `type:"structure"` 15031 15032 // The unique identifier of the notebook execution. 15033 NotebookExecutionId *string `type:"string"` 15034} 15035 15036// String returns the string representation 15037func (s StartNotebookExecutionOutput) String() string { 15038 return awsutil.Prettify(s) 15039} 15040 15041// GoString returns the string representation 15042func (s StartNotebookExecutionOutput) GoString() string { 15043 return s.String() 15044} 15045 15046// SetNotebookExecutionId sets the NotebookExecutionId field's value. 15047func (s *StartNotebookExecutionOutput) SetNotebookExecutionId(v string) *StartNotebookExecutionOutput { 15048 s.NotebookExecutionId = &v 15049 return s 15050} 15051 15052// This represents a step in a cluster. 15053type Step struct { 15054 _ struct{} `type:"structure"` 15055 15056 // The action to take when the cluster step fails. Possible values are TERMINATE_CLUSTER, 15057 // CANCEL_AND_WAIT, and CONTINUE. TERMINATE_JOB_FLOW is provided for backward 15058 // compatibility. We recommend using TERMINATE_CLUSTER instead. 15059 // 15060 // If a cluster's StepConcurrencyLevel is greater than 1, do not use AddJobFlowSteps 15061 // to submit a step with this parameter set to CANCEL_AND_WAIT or TERMINATE_CLUSTER. 15062 // The step is not submitted and the action fails with a message that the ActionOnFailure 15063 // setting is not valid. 15064 // 15065 // If you change a cluster's StepConcurrencyLevel to be greater than 1 while 15066 // a step is running, the ActionOnFailure parameter may not behave as you expect. 15067 // In this case, for a step that fails with this parameter set to CANCEL_AND_WAIT, 15068 // pending steps and the running step are not canceled; for a step that fails 15069 // with this parameter set to TERMINATE_CLUSTER, the cluster does not terminate. 15070 ActionOnFailure *string `type:"string" enum:"ActionOnFailure"` 15071 15072 // The Hadoop job configuration of the cluster step. 15073 Config *HadoopStepConfig `type:"structure"` 15074 15075 // The identifier of the cluster step. 15076 Id *string `type:"string"` 15077 15078 // The name of the cluster step. 15079 Name *string `type:"string"` 15080 15081 // The current execution status details of the cluster step. 15082 Status *StepStatus `type:"structure"` 15083} 15084 15085// String returns the string representation 15086func (s Step) String() string { 15087 return awsutil.Prettify(s) 15088} 15089 15090// GoString returns the string representation 15091func (s Step) GoString() string { 15092 return s.String() 15093} 15094 15095// SetActionOnFailure sets the ActionOnFailure field's value. 15096func (s *Step) SetActionOnFailure(v string) *Step { 15097 s.ActionOnFailure = &v 15098 return s 15099} 15100 15101// SetConfig sets the Config field's value. 15102func (s *Step) SetConfig(v *HadoopStepConfig) *Step { 15103 s.Config = v 15104 return s 15105} 15106 15107// SetId sets the Id field's value. 15108func (s *Step) SetId(v string) *Step { 15109 s.Id = &v 15110 return s 15111} 15112 15113// SetName sets the Name field's value. 15114func (s *Step) SetName(v string) *Step { 15115 s.Name = &v 15116 return s 15117} 15118 15119// SetStatus sets the Status field's value. 15120func (s *Step) SetStatus(v *StepStatus) *Step { 15121 s.Status = v 15122 return s 15123} 15124 15125// Specification for a cluster (job flow) step. 15126type StepConfig struct { 15127 _ struct{} `type:"structure"` 15128 15129 // The action to take when the step fails. Use one of the following values: 15130 // 15131 // * TERMINATE_CLUSTER - Shuts down the cluster. 15132 // 15133 // * CANCEL_AND_WAIT - Cancels any pending steps and returns the cluster 15134 // to the WAITING state. 15135 // 15136 // * CONTINUE - Continues to the next step in the queue. 15137 // 15138 // * TERMINATE_JOB_FLOW - Shuts down the cluster. TERMINATE_JOB_FLOW is provided 15139 // for backward compatibility. We recommend using TERMINATE_CLUSTER instead. 15140 // 15141 // If a cluster's StepConcurrencyLevel is greater than 1, do not use AddJobFlowSteps 15142 // to submit a step with this parameter set to CANCEL_AND_WAIT or TERMINATE_CLUSTER. 15143 // The step is not submitted and the action fails with a message that the ActionOnFailure 15144 // setting is not valid. 15145 // 15146 // If you change a cluster's StepConcurrencyLevel to be greater than 1 while 15147 // a step is running, the ActionOnFailure parameter may not behave as you expect. 15148 // In this case, for a step that fails with this parameter set to CANCEL_AND_WAIT, 15149 // pending steps and the running step are not canceled; for a step that fails 15150 // with this parameter set to TERMINATE_CLUSTER, the cluster does not terminate. 15151 ActionOnFailure *string `type:"string" enum:"ActionOnFailure"` 15152 15153 // The JAR file used for the step. 15154 // 15155 // HadoopJarStep is a required field 15156 HadoopJarStep *HadoopJarStepConfig `type:"structure" required:"true"` 15157 15158 // The name of the step. 15159 // 15160 // Name is a required field 15161 Name *string `type:"string" required:"true"` 15162} 15163 15164// String returns the string representation 15165func (s StepConfig) String() string { 15166 return awsutil.Prettify(s) 15167} 15168 15169// GoString returns the string representation 15170func (s StepConfig) GoString() string { 15171 return s.String() 15172} 15173 15174// Validate inspects the fields of the type to determine if they are valid. 15175func (s *StepConfig) Validate() error { 15176 invalidParams := request.ErrInvalidParams{Context: "StepConfig"} 15177 if s.HadoopJarStep == nil { 15178 invalidParams.Add(request.NewErrParamRequired("HadoopJarStep")) 15179 } 15180 if s.Name == nil { 15181 invalidParams.Add(request.NewErrParamRequired("Name")) 15182 } 15183 if s.HadoopJarStep != nil { 15184 if err := s.HadoopJarStep.Validate(); err != nil { 15185 invalidParams.AddNested("HadoopJarStep", err.(request.ErrInvalidParams)) 15186 } 15187 } 15188 15189 if invalidParams.Len() > 0 { 15190 return invalidParams 15191 } 15192 return nil 15193} 15194 15195// SetActionOnFailure sets the ActionOnFailure field's value. 15196func (s *StepConfig) SetActionOnFailure(v string) *StepConfig { 15197 s.ActionOnFailure = &v 15198 return s 15199} 15200 15201// SetHadoopJarStep sets the HadoopJarStep field's value. 15202func (s *StepConfig) SetHadoopJarStep(v *HadoopJarStepConfig) *StepConfig { 15203 s.HadoopJarStep = v 15204 return s 15205} 15206 15207// SetName sets the Name field's value. 15208func (s *StepConfig) SetName(v string) *StepConfig { 15209 s.Name = &v 15210 return s 15211} 15212 15213// Combines the execution state and configuration of a step. 15214type StepDetail struct { 15215 _ struct{} `type:"structure"` 15216 15217 // The description of the step status. 15218 // 15219 // ExecutionStatusDetail is a required field 15220 ExecutionStatusDetail *StepExecutionStatusDetail `type:"structure" required:"true"` 15221 15222 // The step configuration. 15223 // 15224 // StepConfig is a required field 15225 StepConfig *StepConfig `type:"structure" required:"true"` 15226} 15227 15228// String returns the string representation 15229func (s StepDetail) String() string { 15230 return awsutil.Prettify(s) 15231} 15232 15233// GoString returns the string representation 15234func (s StepDetail) GoString() string { 15235 return s.String() 15236} 15237 15238// SetExecutionStatusDetail sets the ExecutionStatusDetail field's value. 15239func (s *StepDetail) SetExecutionStatusDetail(v *StepExecutionStatusDetail) *StepDetail { 15240 s.ExecutionStatusDetail = v 15241 return s 15242} 15243 15244// SetStepConfig sets the StepConfig field's value. 15245func (s *StepDetail) SetStepConfig(v *StepConfig) *StepDetail { 15246 s.StepConfig = v 15247 return s 15248} 15249 15250// The execution state of a step. 15251type StepExecutionStatusDetail struct { 15252 _ struct{} `type:"structure"` 15253 15254 // The creation date and time of the step. 15255 // 15256 // CreationDateTime is a required field 15257 CreationDateTime *time.Time `type:"timestamp" required:"true"` 15258 15259 // The completion date and time of the step. 15260 EndDateTime *time.Time `type:"timestamp"` 15261 15262 // A description of the step's current state. 15263 LastStateChangeReason *string `type:"string"` 15264 15265 // The start date and time of the step. 15266 StartDateTime *time.Time `type:"timestamp"` 15267 15268 // The state of the step. 15269 // 15270 // State is a required field 15271 State *string `type:"string" required:"true" enum:"StepExecutionState"` 15272} 15273 15274// String returns the string representation 15275func (s StepExecutionStatusDetail) String() string { 15276 return awsutil.Prettify(s) 15277} 15278 15279// GoString returns the string representation 15280func (s StepExecutionStatusDetail) GoString() string { 15281 return s.String() 15282} 15283 15284// SetCreationDateTime sets the CreationDateTime field's value. 15285func (s *StepExecutionStatusDetail) SetCreationDateTime(v time.Time) *StepExecutionStatusDetail { 15286 s.CreationDateTime = &v 15287 return s 15288} 15289 15290// SetEndDateTime sets the EndDateTime field's value. 15291func (s *StepExecutionStatusDetail) SetEndDateTime(v time.Time) *StepExecutionStatusDetail { 15292 s.EndDateTime = &v 15293 return s 15294} 15295 15296// SetLastStateChangeReason sets the LastStateChangeReason field's value. 15297func (s *StepExecutionStatusDetail) SetLastStateChangeReason(v string) *StepExecutionStatusDetail { 15298 s.LastStateChangeReason = &v 15299 return s 15300} 15301 15302// SetStartDateTime sets the StartDateTime field's value. 15303func (s *StepExecutionStatusDetail) SetStartDateTime(v time.Time) *StepExecutionStatusDetail { 15304 s.StartDateTime = &v 15305 return s 15306} 15307 15308// SetState sets the State field's value. 15309func (s *StepExecutionStatusDetail) SetState(v string) *StepExecutionStatusDetail { 15310 s.State = &v 15311 return s 15312} 15313 15314// The details of the step state change reason. 15315type StepStateChangeReason struct { 15316 _ struct{} `type:"structure"` 15317 15318 // The programmable code for the state change reason. Note: Currently, the service 15319 // provides no code for the state change. 15320 Code *string `type:"string" enum:"StepStateChangeReasonCode"` 15321 15322 // The descriptive message for the state change reason. 15323 Message *string `type:"string"` 15324} 15325 15326// String returns the string representation 15327func (s StepStateChangeReason) String() string { 15328 return awsutil.Prettify(s) 15329} 15330 15331// GoString returns the string representation 15332func (s StepStateChangeReason) GoString() string { 15333 return s.String() 15334} 15335 15336// SetCode sets the Code field's value. 15337func (s *StepStateChangeReason) SetCode(v string) *StepStateChangeReason { 15338 s.Code = &v 15339 return s 15340} 15341 15342// SetMessage sets the Message field's value. 15343func (s *StepStateChangeReason) SetMessage(v string) *StepStateChangeReason { 15344 s.Message = &v 15345 return s 15346} 15347 15348// The execution status details of the cluster step. 15349type StepStatus struct { 15350 _ struct{} `type:"structure"` 15351 15352 // The details for the step failure including reason, message, and log file 15353 // path where the root cause was identified. 15354 FailureDetails *FailureDetails `type:"structure"` 15355 15356 // The execution state of the cluster step. 15357 State *string `type:"string" enum:"StepState"` 15358 15359 // The reason for the step execution status change. 15360 StateChangeReason *StepStateChangeReason `type:"structure"` 15361 15362 // The timeline of the cluster step status over time. 15363 Timeline *StepTimeline `type:"structure"` 15364} 15365 15366// String returns the string representation 15367func (s StepStatus) String() string { 15368 return awsutil.Prettify(s) 15369} 15370 15371// GoString returns the string representation 15372func (s StepStatus) GoString() string { 15373 return s.String() 15374} 15375 15376// SetFailureDetails sets the FailureDetails field's value. 15377func (s *StepStatus) SetFailureDetails(v *FailureDetails) *StepStatus { 15378 s.FailureDetails = v 15379 return s 15380} 15381 15382// SetState sets the State field's value. 15383func (s *StepStatus) SetState(v string) *StepStatus { 15384 s.State = &v 15385 return s 15386} 15387 15388// SetStateChangeReason sets the StateChangeReason field's value. 15389func (s *StepStatus) SetStateChangeReason(v *StepStateChangeReason) *StepStatus { 15390 s.StateChangeReason = v 15391 return s 15392} 15393 15394// SetTimeline sets the Timeline field's value. 15395func (s *StepStatus) SetTimeline(v *StepTimeline) *StepStatus { 15396 s.Timeline = v 15397 return s 15398} 15399 15400// The summary of the cluster step. 15401type StepSummary struct { 15402 _ struct{} `type:"structure"` 15403 15404 // The action to take when the cluster step fails. Possible values are TERMINATE_CLUSTER, 15405 // CANCEL_AND_WAIT, and CONTINUE. TERMINATE_JOB_FLOW is available for backward 15406 // compatibility. 15407 ActionOnFailure *string `type:"string" enum:"ActionOnFailure"` 15408 15409 // The Hadoop job configuration of the cluster step. 15410 Config *HadoopStepConfig `type:"structure"` 15411 15412 // The identifier of the cluster step. 15413 Id *string `type:"string"` 15414 15415 // The name of the cluster step. 15416 Name *string `type:"string"` 15417 15418 // The current execution status details of the cluster step. 15419 Status *StepStatus `type:"structure"` 15420} 15421 15422// String returns the string representation 15423func (s StepSummary) String() string { 15424 return awsutil.Prettify(s) 15425} 15426 15427// GoString returns the string representation 15428func (s StepSummary) GoString() string { 15429 return s.String() 15430} 15431 15432// SetActionOnFailure sets the ActionOnFailure field's value. 15433func (s *StepSummary) SetActionOnFailure(v string) *StepSummary { 15434 s.ActionOnFailure = &v 15435 return s 15436} 15437 15438// SetConfig sets the Config field's value. 15439func (s *StepSummary) SetConfig(v *HadoopStepConfig) *StepSummary { 15440 s.Config = v 15441 return s 15442} 15443 15444// SetId sets the Id field's value. 15445func (s *StepSummary) SetId(v string) *StepSummary { 15446 s.Id = &v 15447 return s 15448} 15449 15450// SetName sets the Name field's value. 15451func (s *StepSummary) SetName(v string) *StepSummary { 15452 s.Name = &v 15453 return s 15454} 15455 15456// SetStatus sets the Status field's value. 15457func (s *StepSummary) SetStatus(v *StepStatus) *StepSummary { 15458 s.Status = v 15459 return s 15460} 15461 15462// The timeline of the cluster step lifecycle. 15463type StepTimeline struct { 15464 _ struct{} `type:"structure"` 15465 15466 // The date and time when the cluster step was created. 15467 CreationDateTime *time.Time `type:"timestamp"` 15468 15469 // The date and time when the cluster step execution completed or failed. 15470 EndDateTime *time.Time `type:"timestamp"` 15471 15472 // The date and time when the cluster step execution started. 15473 StartDateTime *time.Time `type:"timestamp"` 15474} 15475 15476// String returns the string representation 15477func (s StepTimeline) String() string { 15478 return awsutil.Prettify(s) 15479} 15480 15481// GoString returns the string representation 15482func (s StepTimeline) GoString() string { 15483 return s.String() 15484} 15485 15486// SetCreationDateTime sets the CreationDateTime field's value. 15487func (s *StepTimeline) SetCreationDateTime(v time.Time) *StepTimeline { 15488 s.CreationDateTime = &v 15489 return s 15490} 15491 15492// SetEndDateTime sets the EndDateTime field's value. 15493func (s *StepTimeline) SetEndDateTime(v time.Time) *StepTimeline { 15494 s.EndDateTime = &v 15495 return s 15496} 15497 15498// SetStartDateTime sets the StartDateTime field's value. 15499func (s *StepTimeline) SetStartDateTime(v time.Time) *StepTimeline { 15500 s.StartDateTime = &v 15501 return s 15502} 15503 15504type StopNotebookExecutionInput struct { 15505 _ struct{} `type:"structure"` 15506 15507 // The unique identifier of the notebook execution. 15508 // 15509 // NotebookExecutionId is a required field 15510 NotebookExecutionId *string `type:"string" required:"true"` 15511} 15512 15513// String returns the string representation 15514func (s StopNotebookExecutionInput) String() string { 15515 return awsutil.Prettify(s) 15516} 15517 15518// GoString returns the string representation 15519func (s StopNotebookExecutionInput) GoString() string { 15520 return s.String() 15521} 15522 15523// Validate inspects the fields of the type to determine if they are valid. 15524func (s *StopNotebookExecutionInput) Validate() error { 15525 invalidParams := request.ErrInvalidParams{Context: "StopNotebookExecutionInput"} 15526 if s.NotebookExecutionId == nil { 15527 invalidParams.Add(request.NewErrParamRequired("NotebookExecutionId")) 15528 } 15529 15530 if invalidParams.Len() > 0 { 15531 return invalidParams 15532 } 15533 return nil 15534} 15535 15536// SetNotebookExecutionId sets the NotebookExecutionId field's value. 15537func (s *StopNotebookExecutionInput) SetNotebookExecutionId(v string) *StopNotebookExecutionInput { 15538 s.NotebookExecutionId = &v 15539 return s 15540} 15541 15542type StopNotebookExecutionOutput struct { 15543 _ struct{} `type:"structure"` 15544} 15545 15546// String returns the string representation 15547func (s StopNotebookExecutionOutput) String() string { 15548 return awsutil.Prettify(s) 15549} 15550 15551// GoString returns the string representation 15552func (s StopNotebookExecutionOutput) GoString() string { 15553 return s.String() 15554} 15555 15556// Details for an Amazon EMR Studio including ID, creation time, name, and so 15557// on. 15558type Studio struct { 15559 _ struct{} `type:"structure"` 15560 15561 // Specifies whether the Amazon EMR Studio authenticates users using single 15562 // sign-on (SSO) or IAM. 15563 AuthMode *string `type:"string" enum:"AuthMode"` 15564 15565 // The time the Amazon EMR Studio was created. 15566 CreationTime *time.Time `type:"timestamp"` 15567 15568 // The Amazon S3 location to back up Amazon EMR Studio Workspaces and notebook 15569 // files. 15570 DefaultS3Location *string `type:"string"` 15571 15572 // The detailed description of the Amazon EMR Studio. 15573 Description *string `type:"string"` 15574 15575 // The ID of the Engine security group associated with the Amazon EMR Studio. 15576 // The Engine security group allows inbound network traffic from resources in 15577 // the Workspace security group. 15578 EngineSecurityGroupId *string `type:"string"` 15579 15580 // The name of the Amazon EMR Studio. 15581 Name *string `type:"string"` 15582 15583 // The name of the IAM role assumed by the Amazon EMR Studio. 15584 ServiceRole *string `type:"string"` 15585 15586 // The Amazon Resource Name (ARN) of the Amazon EMR Studio. 15587 StudioArn *string `type:"string"` 15588 15589 // The ID of the Amazon EMR Studio. 15590 StudioId *string `type:"string"` 15591 15592 // The list of IDs of the subnets associated with the Amazon EMR Studio. 15593 SubnetIds []*string `type:"list"` 15594 15595 // A list of tags associated with the Amazon EMR Studio. 15596 Tags []*Tag `type:"list"` 15597 15598 // The unique access URL of the Amazon EMR Studio. 15599 Url *string `type:"string"` 15600 15601 // The name of the IAM role assumed by users logged in to the Amazon EMR Studio. 15602 UserRole *string `type:"string"` 15603 15604 // The ID of the VPC associated with the Amazon EMR Studio. 15605 VpcId *string `type:"string"` 15606 15607 // The ID of the Workspace security group associated with the Amazon EMR Studio. 15608 // The Workspace security group allows outbound network traffic to resources 15609 // in the Engine security group and to the internet. 15610 WorkspaceSecurityGroupId *string `type:"string"` 15611} 15612 15613// String returns the string representation 15614func (s Studio) String() string { 15615 return awsutil.Prettify(s) 15616} 15617 15618// GoString returns the string representation 15619func (s Studio) GoString() string { 15620 return s.String() 15621} 15622 15623// SetAuthMode sets the AuthMode field's value. 15624func (s *Studio) SetAuthMode(v string) *Studio { 15625 s.AuthMode = &v 15626 return s 15627} 15628 15629// SetCreationTime sets the CreationTime field's value. 15630func (s *Studio) SetCreationTime(v time.Time) *Studio { 15631 s.CreationTime = &v 15632 return s 15633} 15634 15635// SetDefaultS3Location sets the DefaultS3Location field's value. 15636func (s *Studio) SetDefaultS3Location(v string) *Studio { 15637 s.DefaultS3Location = &v 15638 return s 15639} 15640 15641// SetDescription sets the Description field's value. 15642func (s *Studio) SetDescription(v string) *Studio { 15643 s.Description = &v 15644 return s 15645} 15646 15647// SetEngineSecurityGroupId sets the EngineSecurityGroupId field's value. 15648func (s *Studio) SetEngineSecurityGroupId(v string) *Studio { 15649 s.EngineSecurityGroupId = &v 15650 return s 15651} 15652 15653// SetName sets the Name field's value. 15654func (s *Studio) SetName(v string) *Studio { 15655 s.Name = &v 15656 return s 15657} 15658 15659// SetServiceRole sets the ServiceRole field's value. 15660func (s *Studio) SetServiceRole(v string) *Studio { 15661 s.ServiceRole = &v 15662 return s 15663} 15664 15665// SetStudioArn sets the StudioArn field's value. 15666func (s *Studio) SetStudioArn(v string) *Studio { 15667 s.StudioArn = &v 15668 return s 15669} 15670 15671// SetStudioId sets the StudioId field's value. 15672func (s *Studio) SetStudioId(v string) *Studio { 15673 s.StudioId = &v 15674 return s 15675} 15676 15677// SetSubnetIds sets the SubnetIds field's value. 15678func (s *Studio) SetSubnetIds(v []*string) *Studio { 15679 s.SubnetIds = v 15680 return s 15681} 15682 15683// SetTags sets the Tags field's value. 15684func (s *Studio) SetTags(v []*Tag) *Studio { 15685 s.Tags = v 15686 return s 15687} 15688 15689// SetUrl sets the Url field's value. 15690func (s *Studio) SetUrl(v string) *Studio { 15691 s.Url = &v 15692 return s 15693} 15694 15695// SetUserRole sets the UserRole field's value. 15696func (s *Studio) SetUserRole(v string) *Studio { 15697 s.UserRole = &v 15698 return s 15699} 15700 15701// SetVpcId sets the VpcId field's value. 15702func (s *Studio) SetVpcId(v string) *Studio { 15703 s.VpcId = &v 15704 return s 15705} 15706 15707// SetWorkspaceSecurityGroupId sets the WorkspaceSecurityGroupId field's value. 15708func (s *Studio) SetWorkspaceSecurityGroupId(v string) *Studio { 15709 s.WorkspaceSecurityGroupId = &v 15710 return s 15711} 15712 15713// Details for an Amazon EMR Studio, including ID, Name, VPC, and Description. 15714// The details do not include subnets, IAM roles, security groups, or tags associated 15715// with the Studio. 15716type StudioSummary struct { 15717 _ struct{} `type:"structure"` 15718 15719 // The time when the Amazon EMR Studio was created. 15720 CreationTime *time.Time `type:"timestamp"` 15721 15722 // The detailed description of the Amazon EMR Studio. 15723 Description *string `type:"string"` 15724 15725 // The name of the Amazon EMR Studio. 15726 Name *string `type:"string"` 15727 15728 // The ID of the Amazon EMR Studio. 15729 StudioId *string `type:"string"` 15730 15731 // The unique access URL of the Amazon EMR Studio. 15732 Url *string `type:"string"` 15733 15734 // The ID of the Virtual Private Cloud (Amazon VPC) associated with the Amazon 15735 // EMR Studio. 15736 VpcId *string `type:"string"` 15737} 15738 15739// String returns the string representation 15740func (s StudioSummary) String() string { 15741 return awsutil.Prettify(s) 15742} 15743 15744// GoString returns the string representation 15745func (s StudioSummary) GoString() string { 15746 return s.String() 15747} 15748 15749// SetCreationTime sets the CreationTime field's value. 15750func (s *StudioSummary) SetCreationTime(v time.Time) *StudioSummary { 15751 s.CreationTime = &v 15752 return s 15753} 15754 15755// SetDescription sets the Description field's value. 15756func (s *StudioSummary) SetDescription(v string) *StudioSummary { 15757 s.Description = &v 15758 return s 15759} 15760 15761// SetName sets the Name field's value. 15762func (s *StudioSummary) SetName(v string) *StudioSummary { 15763 s.Name = &v 15764 return s 15765} 15766 15767// SetStudioId sets the StudioId field's value. 15768func (s *StudioSummary) SetStudioId(v string) *StudioSummary { 15769 s.StudioId = &v 15770 return s 15771} 15772 15773// SetUrl sets the Url field's value. 15774func (s *StudioSummary) SetUrl(v string) *StudioSummary { 15775 s.Url = &v 15776 return s 15777} 15778 15779// SetVpcId sets the VpcId field's value. 15780func (s *StudioSummary) SetVpcId(v string) *StudioSummary { 15781 s.VpcId = &v 15782 return s 15783} 15784 15785// The list of supported product configurations that allow user-supplied arguments. 15786// EMR accepts these arguments and forwards them to the corresponding installation 15787// script as bootstrap action arguments. 15788type SupportedProductConfig struct { 15789 _ struct{} `type:"structure"` 15790 15791 // The list of user-supplied arguments. 15792 Args []*string `type:"list"` 15793 15794 // The name of the product configuration. 15795 Name *string `type:"string"` 15796} 15797 15798// String returns the string representation 15799func (s SupportedProductConfig) String() string { 15800 return awsutil.Prettify(s) 15801} 15802 15803// GoString returns the string representation 15804func (s SupportedProductConfig) GoString() string { 15805 return s.String() 15806} 15807 15808// SetArgs sets the Args field's value. 15809func (s *SupportedProductConfig) SetArgs(v []*string) *SupportedProductConfig { 15810 s.Args = v 15811 return s 15812} 15813 15814// SetName sets the Name field's value. 15815func (s *SupportedProductConfig) SetName(v string) *SupportedProductConfig { 15816 s.Name = &v 15817 return s 15818} 15819 15820// A key-value pair containing user-defined metadata that you can associate 15821// with an Amazon EMR resource. Tags make it easier to associate clusters in 15822// various ways, such as grouping clusters to track your Amazon EMR resource 15823// allocation costs. For more information, see Tag Clusters (https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-plan-tags.html). 15824type Tag struct { 15825 _ struct{} `type:"structure"` 15826 15827 // A user-defined key, which is the minimum required information for a valid 15828 // tag. For more information, see Tag (https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-plan-tags.html). 15829 Key *string `type:"string"` 15830 15831 // A user-defined value, which is optional in a tag. For more information, see 15832 // Tag Clusters (https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-plan-tags.html). 15833 Value *string `type:"string"` 15834} 15835 15836// String returns the string representation 15837func (s Tag) String() string { 15838 return awsutil.Prettify(s) 15839} 15840 15841// GoString returns the string representation 15842func (s Tag) GoString() string { 15843 return s.String() 15844} 15845 15846// SetKey sets the Key field's value. 15847func (s *Tag) SetKey(v string) *Tag { 15848 s.Key = &v 15849 return s 15850} 15851 15852// SetValue sets the Value field's value. 15853func (s *Tag) SetValue(v string) *Tag { 15854 s.Value = &v 15855 return s 15856} 15857 15858// Input to the TerminateJobFlows operation. 15859type TerminateJobFlowsInput struct { 15860 _ struct{} `type:"structure"` 15861 15862 // A list of job flows to be shut down. 15863 // 15864 // JobFlowIds is a required field 15865 JobFlowIds []*string `type:"list" required:"true"` 15866} 15867 15868// String returns the string representation 15869func (s TerminateJobFlowsInput) String() string { 15870 return awsutil.Prettify(s) 15871} 15872 15873// GoString returns the string representation 15874func (s TerminateJobFlowsInput) GoString() string { 15875 return s.String() 15876} 15877 15878// Validate inspects the fields of the type to determine if they are valid. 15879func (s *TerminateJobFlowsInput) Validate() error { 15880 invalidParams := request.ErrInvalidParams{Context: "TerminateJobFlowsInput"} 15881 if s.JobFlowIds == nil { 15882 invalidParams.Add(request.NewErrParamRequired("JobFlowIds")) 15883 } 15884 15885 if invalidParams.Len() > 0 { 15886 return invalidParams 15887 } 15888 return nil 15889} 15890 15891// SetJobFlowIds sets the JobFlowIds field's value. 15892func (s *TerminateJobFlowsInput) SetJobFlowIds(v []*string) *TerminateJobFlowsInput { 15893 s.JobFlowIds = v 15894 return s 15895} 15896 15897type TerminateJobFlowsOutput struct { 15898 _ struct{} `type:"structure"` 15899} 15900 15901// String returns the string representation 15902func (s TerminateJobFlowsOutput) String() string { 15903 return awsutil.Prettify(s) 15904} 15905 15906// GoString returns the string representation 15907func (s TerminateJobFlowsOutput) GoString() string { 15908 return s.String() 15909} 15910 15911type UpdateStudioInput struct { 15912 _ struct{} `type:"structure"` 15913 15914 // The Amazon S3 location to back up Workspaces and notebook files for the Amazon 15915 // EMR Studio. 15916 DefaultS3Location *string `type:"string"` 15917 15918 // A detailed description to assign to the Amazon EMR Studio. 15919 Description *string `type:"string"` 15920 15921 // A descriptive name for the Amazon EMR Studio. 15922 Name *string `type:"string"` 15923 15924 // The ID of the Amazon EMR Studio to update. 15925 // 15926 // StudioId is a required field 15927 StudioId *string `type:"string" required:"true"` 15928 15929 // A list of subnet IDs to associate with the Amazon EMR Studio. The list can 15930 // include new subnet IDs, but must also include all of the subnet IDs previously 15931 // associated with the Studio. The list order does not matter. A Studio can 15932 // have a maximum of 5 subnets. The subnets must belong to the same VPC as the 15933 // Studio. 15934 SubnetIds []*string `type:"list"` 15935} 15936 15937// String returns the string representation 15938func (s UpdateStudioInput) String() string { 15939 return awsutil.Prettify(s) 15940} 15941 15942// GoString returns the string representation 15943func (s UpdateStudioInput) GoString() string { 15944 return s.String() 15945} 15946 15947// Validate inspects the fields of the type to determine if they are valid. 15948func (s *UpdateStudioInput) Validate() error { 15949 invalidParams := request.ErrInvalidParams{Context: "UpdateStudioInput"} 15950 if s.StudioId == nil { 15951 invalidParams.Add(request.NewErrParamRequired("StudioId")) 15952 } 15953 15954 if invalidParams.Len() > 0 { 15955 return invalidParams 15956 } 15957 return nil 15958} 15959 15960// SetDefaultS3Location sets the DefaultS3Location field's value. 15961func (s *UpdateStudioInput) SetDefaultS3Location(v string) *UpdateStudioInput { 15962 s.DefaultS3Location = &v 15963 return s 15964} 15965 15966// SetDescription sets the Description field's value. 15967func (s *UpdateStudioInput) SetDescription(v string) *UpdateStudioInput { 15968 s.Description = &v 15969 return s 15970} 15971 15972// SetName sets the Name field's value. 15973func (s *UpdateStudioInput) SetName(v string) *UpdateStudioInput { 15974 s.Name = &v 15975 return s 15976} 15977 15978// SetStudioId sets the StudioId field's value. 15979func (s *UpdateStudioInput) SetStudioId(v string) *UpdateStudioInput { 15980 s.StudioId = &v 15981 return s 15982} 15983 15984// SetSubnetIds sets the SubnetIds field's value. 15985func (s *UpdateStudioInput) SetSubnetIds(v []*string) *UpdateStudioInput { 15986 s.SubnetIds = v 15987 return s 15988} 15989 15990type UpdateStudioOutput struct { 15991 _ struct{} `type:"structure"` 15992} 15993 15994// String returns the string representation 15995func (s UpdateStudioOutput) String() string { 15996 return awsutil.Prettify(s) 15997} 15998 15999// GoString returns the string representation 16000func (s UpdateStudioOutput) GoString() string { 16001 return s.String() 16002} 16003 16004type UpdateStudioSessionMappingInput struct { 16005 _ struct{} `type:"structure"` 16006 16007 // The globally unique identifier (GUID) of the user or group. For more information, 16008 // see UserId (https://docs.aws.amazon.com/singlesignon/latest/IdentityStoreAPIReference/API_User.html#singlesignon-Type-User-UserId) 16009 // and GroupId (https://docs.aws.amazon.com/singlesignon/latest/IdentityStoreAPIReference/API_Group.html#singlesignon-Type-Group-GroupId) 16010 // in the Amazon Web Services SSO Identity Store API Reference. Either IdentityName 16011 // or IdentityId must be specified. 16012 IdentityId *string `type:"string"` 16013 16014 // The name of the user or group to update. For more information, see UserName 16015 // (https://docs.aws.amazon.com/singlesignon/latest/IdentityStoreAPIReference/API_User.html#singlesignon-Type-User-UserName) 16016 // and DisplayName (https://docs.aws.amazon.com/singlesignon/latest/IdentityStoreAPIReference/API_Group.html#singlesignon-Type-Group-DisplayName) 16017 // in the Amazon Web Services SSO Identity Store API Reference. Either IdentityName 16018 // or IdentityId must be specified. 16019 IdentityName *string `type:"string"` 16020 16021 // Specifies whether the identity to update is a user or a group. 16022 // 16023 // IdentityType is a required field 16024 IdentityType *string `type:"string" required:"true" enum:"IdentityType"` 16025 16026 // The Amazon Resource Name (ARN) of the session policy to associate with the 16027 // specified user or group. 16028 // 16029 // SessionPolicyArn is a required field 16030 SessionPolicyArn *string `type:"string" required:"true"` 16031 16032 // The ID of the Amazon EMR Studio. 16033 // 16034 // StudioId is a required field 16035 StudioId *string `type:"string" required:"true"` 16036} 16037 16038// String returns the string representation 16039func (s UpdateStudioSessionMappingInput) String() string { 16040 return awsutil.Prettify(s) 16041} 16042 16043// GoString returns the string representation 16044func (s UpdateStudioSessionMappingInput) GoString() string { 16045 return s.String() 16046} 16047 16048// Validate inspects the fields of the type to determine if they are valid. 16049func (s *UpdateStudioSessionMappingInput) Validate() error { 16050 invalidParams := request.ErrInvalidParams{Context: "UpdateStudioSessionMappingInput"} 16051 if s.IdentityType == nil { 16052 invalidParams.Add(request.NewErrParamRequired("IdentityType")) 16053 } 16054 if s.SessionPolicyArn == nil { 16055 invalidParams.Add(request.NewErrParamRequired("SessionPolicyArn")) 16056 } 16057 if s.StudioId == nil { 16058 invalidParams.Add(request.NewErrParamRequired("StudioId")) 16059 } 16060 16061 if invalidParams.Len() > 0 { 16062 return invalidParams 16063 } 16064 return nil 16065} 16066 16067// SetIdentityId sets the IdentityId field's value. 16068func (s *UpdateStudioSessionMappingInput) SetIdentityId(v string) *UpdateStudioSessionMappingInput { 16069 s.IdentityId = &v 16070 return s 16071} 16072 16073// SetIdentityName sets the IdentityName field's value. 16074func (s *UpdateStudioSessionMappingInput) SetIdentityName(v string) *UpdateStudioSessionMappingInput { 16075 s.IdentityName = &v 16076 return s 16077} 16078 16079// SetIdentityType sets the IdentityType field's value. 16080func (s *UpdateStudioSessionMappingInput) SetIdentityType(v string) *UpdateStudioSessionMappingInput { 16081 s.IdentityType = &v 16082 return s 16083} 16084 16085// SetSessionPolicyArn sets the SessionPolicyArn field's value. 16086func (s *UpdateStudioSessionMappingInput) SetSessionPolicyArn(v string) *UpdateStudioSessionMappingInput { 16087 s.SessionPolicyArn = &v 16088 return s 16089} 16090 16091// SetStudioId sets the StudioId field's value. 16092func (s *UpdateStudioSessionMappingInput) SetStudioId(v string) *UpdateStudioSessionMappingInput { 16093 s.StudioId = &v 16094 return s 16095} 16096 16097type UpdateStudioSessionMappingOutput struct { 16098 _ struct{} `type:"structure"` 16099} 16100 16101// String returns the string representation 16102func (s UpdateStudioSessionMappingOutput) String() string { 16103 return awsutil.Prettify(s) 16104} 16105 16106// GoString returns the string representation 16107func (s UpdateStudioSessionMappingOutput) GoString() string { 16108 return s.String() 16109} 16110 16111// EBS volume specifications such as volume type, IOPS, and size (GiB) that 16112// will be requested for the EBS volume attached to an EC2 instance in the cluster. 16113type VolumeSpecification struct { 16114 _ struct{} `type:"structure"` 16115 16116 // The number of I/O operations per second (IOPS) that the volume supports. 16117 Iops *int64 `type:"integer"` 16118 16119 // The volume size, in gibibytes (GiB). This can be a number from 1 - 1024. 16120 // If the volume type is EBS-optimized, the minimum value is 10. 16121 // 16122 // SizeInGB is a required field 16123 SizeInGB *int64 `type:"integer" required:"true"` 16124 16125 // The volume type. Volume types supported are gp2, io1, standard. 16126 // 16127 // VolumeType is a required field 16128 VolumeType *string `type:"string" required:"true"` 16129} 16130 16131// String returns the string representation 16132func (s VolumeSpecification) String() string { 16133 return awsutil.Prettify(s) 16134} 16135 16136// GoString returns the string representation 16137func (s VolumeSpecification) GoString() string { 16138 return s.String() 16139} 16140 16141// Validate inspects the fields of the type to determine if they are valid. 16142func (s *VolumeSpecification) Validate() error { 16143 invalidParams := request.ErrInvalidParams{Context: "VolumeSpecification"} 16144 if s.SizeInGB == nil { 16145 invalidParams.Add(request.NewErrParamRequired("SizeInGB")) 16146 } 16147 if s.VolumeType == nil { 16148 invalidParams.Add(request.NewErrParamRequired("VolumeType")) 16149 } 16150 16151 if invalidParams.Len() > 0 { 16152 return invalidParams 16153 } 16154 return nil 16155} 16156 16157// SetIops sets the Iops field's value. 16158func (s *VolumeSpecification) SetIops(v int64) *VolumeSpecification { 16159 s.Iops = &v 16160 return s 16161} 16162 16163// SetSizeInGB sets the SizeInGB field's value. 16164func (s *VolumeSpecification) SetSizeInGB(v int64) *VolumeSpecification { 16165 s.SizeInGB = &v 16166 return s 16167} 16168 16169// SetVolumeType sets the VolumeType field's value. 16170func (s *VolumeSpecification) SetVolumeType(v string) *VolumeSpecification { 16171 s.VolumeType = &v 16172 return s 16173} 16174 16175const ( 16176 // ActionOnFailureTerminateJobFlow is a ActionOnFailure enum value 16177 ActionOnFailureTerminateJobFlow = "TERMINATE_JOB_FLOW" 16178 16179 // ActionOnFailureTerminateCluster is a ActionOnFailure enum value 16180 ActionOnFailureTerminateCluster = "TERMINATE_CLUSTER" 16181 16182 // ActionOnFailureCancelAndWait is a ActionOnFailure enum value 16183 ActionOnFailureCancelAndWait = "CANCEL_AND_WAIT" 16184 16185 // ActionOnFailureContinue is a ActionOnFailure enum value 16186 ActionOnFailureContinue = "CONTINUE" 16187) 16188 16189// ActionOnFailure_Values returns all elements of the ActionOnFailure enum 16190func ActionOnFailure_Values() []string { 16191 return []string{ 16192 ActionOnFailureTerminateJobFlow, 16193 ActionOnFailureTerminateCluster, 16194 ActionOnFailureCancelAndWait, 16195 ActionOnFailureContinue, 16196 } 16197} 16198 16199const ( 16200 // AdjustmentTypeChangeInCapacity is a AdjustmentType enum value 16201 AdjustmentTypeChangeInCapacity = "CHANGE_IN_CAPACITY" 16202 16203 // AdjustmentTypePercentChangeInCapacity is a AdjustmentType enum value 16204 AdjustmentTypePercentChangeInCapacity = "PERCENT_CHANGE_IN_CAPACITY" 16205 16206 // AdjustmentTypeExactCapacity is a AdjustmentType enum value 16207 AdjustmentTypeExactCapacity = "EXACT_CAPACITY" 16208) 16209 16210// AdjustmentType_Values returns all elements of the AdjustmentType enum 16211func AdjustmentType_Values() []string { 16212 return []string{ 16213 AdjustmentTypeChangeInCapacity, 16214 AdjustmentTypePercentChangeInCapacity, 16215 AdjustmentTypeExactCapacity, 16216 } 16217} 16218 16219const ( 16220 // AuthModeSso is a AuthMode enum value 16221 AuthModeSso = "SSO" 16222 16223 // AuthModeIam is a AuthMode enum value 16224 AuthModeIam = "IAM" 16225) 16226 16227// AuthMode_Values returns all elements of the AuthMode enum 16228func AuthMode_Values() []string { 16229 return []string{ 16230 AuthModeSso, 16231 AuthModeIam, 16232 } 16233} 16234 16235const ( 16236 // AutoScalingPolicyStatePending is a AutoScalingPolicyState enum value 16237 AutoScalingPolicyStatePending = "PENDING" 16238 16239 // AutoScalingPolicyStateAttaching is a AutoScalingPolicyState enum value 16240 AutoScalingPolicyStateAttaching = "ATTACHING" 16241 16242 // AutoScalingPolicyStateAttached is a AutoScalingPolicyState enum value 16243 AutoScalingPolicyStateAttached = "ATTACHED" 16244 16245 // AutoScalingPolicyStateDetaching is a AutoScalingPolicyState enum value 16246 AutoScalingPolicyStateDetaching = "DETACHING" 16247 16248 // AutoScalingPolicyStateDetached is a AutoScalingPolicyState enum value 16249 AutoScalingPolicyStateDetached = "DETACHED" 16250 16251 // AutoScalingPolicyStateFailed is a AutoScalingPolicyState enum value 16252 AutoScalingPolicyStateFailed = "FAILED" 16253) 16254 16255// AutoScalingPolicyState_Values returns all elements of the AutoScalingPolicyState enum 16256func AutoScalingPolicyState_Values() []string { 16257 return []string{ 16258 AutoScalingPolicyStatePending, 16259 AutoScalingPolicyStateAttaching, 16260 AutoScalingPolicyStateAttached, 16261 AutoScalingPolicyStateDetaching, 16262 AutoScalingPolicyStateDetached, 16263 AutoScalingPolicyStateFailed, 16264 } 16265} 16266 16267const ( 16268 // AutoScalingPolicyStateChangeReasonCodeUserRequest is a AutoScalingPolicyStateChangeReasonCode enum value 16269 AutoScalingPolicyStateChangeReasonCodeUserRequest = "USER_REQUEST" 16270 16271 // AutoScalingPolicyStateChangeReasonCodeProvisionFailure is a AutoScalingPolicyStateChangeReasonCode enum value 16272 AutoScalingPolicyStateChangeReasonCodeProvisionFailure = "PROVISION_FAILURE" 16273 16274 // AutoScalingPolicyStateChangeReasonCodeCleanupFailure is a AutoScalingPolicyStateChangeReasonCode enum value 16275 AutoScalingPolicyStateChangeReasonCodeCleanupFailure = "CLEANUP_FAILURE" 16276) 16277 16278// AutoScalingPolicyStateChangeReasonCode_Values returns all elements of the AutoScalingPolicyStateChangeReasonCode enum 16279func AutoScalingPolicyStateChangeReasonCode_Values() []string { 16280 return []string{ 16281 AutoScalingPolicyStateChangeReasonCodeUserRequest, 16282 AutoScalingPolicyStateChangeReasonCodeProvisionFailure, 16283 AutoScalingPolicyStateChangeReasonCodeCleanupFailure, 16284 } 16285} 16286 16287const ( 16288 // CancelStepsRequestStatusSubmitted is a CancelStepsRequestStatus enum value 16289 CancelStepsRequestStatusSubmitted = "SUBMITTED" 16290 16291 // CancelStepsRequestStatusFailed is a CancelStepsRequestStatus enum value 16292 CancelStepsRequestStatusFailed = "FAILED" 16293) 16294 16295// CancelStepsRequestStatus_Values returns all elements of the CancelStepsRequestStatus enum 16296func CancelStepsRequestStatus_Values() []string { 16297 return []string{ 16298 CancelStepsRequestStatusSubmitted, 16299 CancelStepsRequestStatusFailed, 16300 } 16301} 16302 16303const ( 16304 // ClusterStateStarting is a ClusterState enum value 16305 ClusterStateStarting = "STARTING" 16306 16307 // ClusterStateBootstrapping is a ClusterState enum value 16308 ClusterStateBootstrapping = "BOOTSTRAPPING" 16309 16310 // ClusterStateRunning is a ClusterState enum value 16311 ClusterStateRunning = "RUNNING" 16312 16313 // ClusterStateWaiting is a ClusterState enum value 16314 ClusterStateWaiting = "WAITING" 16315 16316 // ClusterStateTerminating is a ClusterState enum value 16317 ClusterStateTerminating = "TERMINATING" 16318 16319 // ClusterStateTerminated is a ClusterState enum value 16320 ClusterStateTerminated = "TERMINATED" 16321 16322 // ClusterStateTerminatedWithErrors is a ClusterState enum value 16323 ClusterStateTerminatedWithErrors = "TERMINATED_WITH_ERRORS" 16324) 16325 16326// ClusterState_Values returns all elements of the ClusterState enum 16327func ClusterState_Values() []string { 16328 return []string{ 16329 ClusterStateStarting, 16330 ClusterStateBootstrapping, 16331 ClusterStateRunning, 16332 ClusterStateWaiting, 16333 ClusterStateTerminating, 16334 ClusterStateTerminated, 16335 ClusterStateTerminatedWithErrors, 16336 } 16337} 16338 16339const ( 16340 // ClusterStateChangeReasonCodeInternalError is a ClusterStateChangeReasonCode enum value 16341 ClusterStateChangeReasonCodeInternalError = "INTERNAL_ERROR" 16342 16343 // ClusterStateChangeReasonCodeValidationError is a ClusterStateChangeReasonCode enum value 16344 ClusterStateChangeReasonCodeValidationError = "VALIDATION_ERROR" 16345 16346 // ClusterStateChangeReasonCodeInstanceFailure is a ClusterStateChangeReasonCode enum value 16347 ClusterStateChangeReasonCodeInstanceFailure = "INSTANCE_FAILURE" 16348 16349 // ClusterStateChangeReasonCodeInstanceFleetTimeout is a ClusterStateChangeReasonCode enum value 16350 ClusterStateChangeReasonCodeInstanceFleetTimeout = "INSTANCE_FLEET_TIMEOUT" 16351 16352 // ClusterStateChangeReasonCodeBootstrapFailure is a ClusterStateChangeReasonCode enum value 16353 ClusterStateChangeReasonCodeBootstrapFailure = "BOOTSTRAP_FAILURE" 16354 16355 // ClusterStateChangeReasonCodeUserRequest is a ClusterStateChangeReasonCode enum value 16356 ClusterStateChangeReasonCodeUserRequest = "USER_REQUEST" 16357 16358 // ClusterStateChangeReasonCodeStepFailure is a ClusterStateChangeReasonCode enum value 16359 ClusterStateChangeReasonCodeStepFailure = "STEP_FAILURE" 16360 16361 // ClusterStateChangeReasonCodeAllStepsCompleted is a ClusterStateChangeReasonCode enum value 16362 ClusterStateChangeReasonCodeAllStepsCompleted = "ALL_STEPS_COMPLETED" 16363) 16364 16365// ClusterStateChangeReasonCode_Values returns all elements of the ClusterStateChangeReasonCode enum 16366func ClusterStateChangeReasonCode_Values() []string { 16367 return []string{ 16368 ClusterStateChangeReasonCodeInternalError, 16369 ClusterStateChangeReasonCodeValidationError, 16370 ClusterStateChangeReasonCodeInstanceFailure, 16371 ClusterStateChangeReasonCodeInstanceFleetTimeout, 16372 ClusterStateChangeReasonCodeBootstrapFailure, 16373 ClusterStateChangeReasonCodeUserRequest, 16374 ClusterStateChangeReasonCodeStepFailure, 16375 ClusterStateChangeReasonCodeAllStepsCompleted, 16376 } 16377} 16378 16379const ( 16380 // ComparisonOperatorGreaterThanOrEqual is a ComparisonOperator enum value 16381 ComparisonOperatorGreaterThanOrEqual = "GREATER_THAN_OR_EQUAL" 16382 16383 // ComparisonOperatorGreaterThan is a ComparisonOperator enum value 16384 ComparisonOperatorGreaterThan = "GREATER_THAN" 16385 16386 // ComparisonOperatorLessThan is a ComparisonOperator enum value 16387 ComparisonOperatorLessThan = "LESS_THAN" 16388 16389 // ComparisonOperatorLessThanOrEqual is a ComparisonOperator enum value 16390 ComparisonOperatorLessThanOrEqual = "LESS_THAN_OR_EQUAL" 16391) 16392 16393// ComparisonOperator_Values returns all elements of the ComparisonOperator enum 16394func ComparisonOperator_Values() []string { 16395 return []string{ 16396 ComparisonOperatorGreaterThanOrEqual, 16397 ComparisonOperatorGreaterThan, 16398 ComparisonOperatorLessThan, 16399 ComparisonOperatorLessThanOrEqual, 16400 } 16401} 16402 16403const ( 16404 // ComputeLimitsUnitTypeInstanceFleetUnits is a ComputeLimitsUnitType enum value 16405 ComputeLimitsUnitTypeInstanceFleetUnits = "InstanceFleetUnits" 16406 16407 // ComputeLimitsUnitTypeInstances is a ComputeLimitsUnitType enum value 16408 ComputeLimitsUnitTypeInstances = "Instances" 16409 16410 // ComputeLimitsUnitTypeVcpu is a ComputeLimitsUnitType enum value 16411 ComputeLimitsUnitTypeVcpu = "VCPU" 16412) 16413 16414// ComputeLimitsUnitType_Values returns all elements of the ComputeLimitsUnitType enum 16415func ComputeLimitsUnitType_Values() []string { 16416 return []string{ 16417 ComputeLimitsUnitTypeInstanceFleetUnits, 16418 ComputeLimitsUnitTypeInstances, 16419 ComputeLimitsUnitTypeVcpu, 16420 } 16421} 16422 16423const ( 16424 // ExecutionEngineTypeEmr is a ExecutionEngineType enum value 16425 ExecutionEngineTypeEmr = "EMR" 16426) 16427 16428// ExecutionEngineType_Values returns all elements of the ExecutionEngineType enum 16429func ExecutionEngineType_Values() []string { 16430 return []string{ 16431 ExecutionEngineTypeEmr, 16432 } 16433} 16434 16435const ( 16436 // IdentityTypeUser is a IdentityType enum value 16437 IdentityTypeUser = "USER" 16438 16439 // IdentityTypeGroup is a IdentityType enum value 16440 IdentityTypeGroup = "GROUP" 16441) 16442 16443// IdentityType_Values returns all elements of the IdentityType enum 16444func IdentityType_Values() []string { 16445 return []string{ 16446 IdentityTypeUser, 16447 IdentityTypeGroup, 16448 } 16449} 16450 16451const ( 16452 // InstanceCollectionTypeInstanceFleet is a InstanceCollectionType enum value 16453 InstanceCollectionTypeInstanceFleet = "INSTANCE_FLEET" 16454 16455 // InstanceCollectionTypeInstanceGroup is a InstanceCollectionType enum value 16456 InstanceCollectionTypeInstanceGroup = "INSTANCE_GROUP" 16457) 16458 16459// InstanceCollectionType_Values returns all elements of the InstanceCollectionType enum 16460func InstanceCollectionType_Values() []string { 16461 return []string{ 16462 InstanceCollectionTypeInstanceFleet, 16463 InstanceCollectionTypeInstanceGroup, 16464 } 16465} 16466 16467const ( 16468 // InstanceFleetStateProvisioning is a InstanceFleetState enum value 16469 InstanceFleetStateProvisioning = "PROVISIONING" 16470 16471 // InstanceFleetStateBootstrapping is a InstanceFleetState enum value 16472 InstanceFleetStateBootstrapping = "BOOTSTRAPPING" 16473 16474 // InstanceFleetStateRunning is a InstanceFleetState enum value 16475 InstanceFleetStateRunning = "RUNNING" 16476 16477 // InstanceFleetStateResizing is a InstanceFleetState enum value 16478 InstanceFleetStateResizing = "RESIZING" 16479 16480 // InstanceFleetStateSuspended is a InstanceFleetState enum value 16481 InstanceFleetStateSuspended = "SUSPENDED" 16482 16483 // InstanceFleetStateTerminating is a InstanceFleetState enum value 16484 InstanceFleetStateTerminating = "TERMINATING" 16485 16486 // InstanceFleetStateTerminated is a InstanceFleetState enum value 16487 InstanceFleetStateTerminated = "TERMINATED" 16488) 16489 16490// InstanceFleetState_Values returns all elements of the InstanceFleetState enum 16491func InstanceFleetState_Values() []string { 16492 return []string{ 16493 InstanceFleetStateProvisioning, 16494 InstanceFleetStateBootstrapping, 16495 InstanceFleetStateRunning, 16496 InstanceFleetStateResizing, 16497 InstanceFleetStateSuspended, 16498 InstanceFleetStateTerminating, 16499 InstanceFleetStateTerminated, 16500 } 16501} 16502 16503const ( 16504 // InstanceFleetStateChangeReasonCodeInternalError is a InstanceFleetStateChangeReasonCode enum value 16505 InstanceFleetStateChangeReasonCodeInternalError = "INTERNAL_ERROR" 16506 16507 // InstanceFleetStateChangeReasonCodeValidationError is a InstanceFleetStateChangeReasonCode enum value 16508 InstanceFleetStateChangeReasonCodeValidationError = "VALIDATION_ERROR" 16509 16510 // InstanceFleetStateChangeReasonCodeInstanceFailure is a InstanceFleetStateChangeReasonCode enum value 16511 InstanceFleetStateChangeReasonCodeInstanceFailure = "INSTANCE_FAILURE" 16512 16513 // InstanceFleetStateChangeReasonCodeClusterTerminated is a InstanceFleetStateChangeReasonCode enum value 16514 InstanceFleetStateChangeReasonCodeClusterTerminated = "CLUSTER_TERMINATED" 16515) 16516 16517// InstanceFleetStateChangeReasonCode_Values returns all elements of the InstanceFleetStateChangeReasonCode enum 16518func InstanceFleetStateChangeReasonCode_Values() []string { 16519 return []string{ 16520 InstanceFleetStateChangeReasonCodeInternalError, 16521 InstanceFleetStateChangeReasonCodeValidationError, 16522 InstanceFleetStateChangeReasonCodeInstanceFailure, 16523 InstanceFleetStateChangeReasonCodeClusterTerminated, 16524 } 16525} 16526 16527const ( 16528 // InstanceFleetTypeMaster is a InstanceFleetType enum value 16529 InstanceFleetTypeMaster = "MASTER" 16530 16531 // InstanceFleetTypeCore is a InstanceFleetType enum value 16532 InstanceFleetTypeCore = "CORE" 16533 16534 // InstanceFleetTypeTask is a InstanceFleetType enum value 16535 InstanceFleetTypeTask = "TASK" 16536) 16537 16538// InstanceFleetType_Values returns all elements of the InstanceFleetType enum 16539func InstanceFleetType_Values() []string { 16540 return []string{ 16541 InstanceFleetTypeMaster, 16542 InstanceFleetTypeCore, 16543 InstanceFleetTypeTask, 16544 } 16545} 16546 16547const ( 16548 // InstanceGroupStateProvisioning is a InstanceGroupState enum value 16549 InstanceGroupStateProvisioning = "PROVISIONING" 16550 16551 // InstanceGroupStateBootstrapping is a InstanceGroupState enum value 16552 InstanceGroupStateBootstrapping = "BOOTSTRAPPING" 16553 16554 // InstanceGroupStateRunning is a InstanceGroupState enum value 16555 InstanceGroupStateRunning = "RUNNING" 16556 16557 // InstanceGroupStateReconfiguring is a InstanceGroupState enum value 16558 InstanceGroupStateReconfiguring = "RECONFIGURING" 16559 16560 // InstanceGroupStateResizing is a InstanceGroupState enum value 16561 InstanceGroupStateResizing = "RESIZING" 16562 16563 // InstanceGroupStateSuspended is a InstanceGroupState enum value 16564 InstanceGroupStateSuspended = "SUSPENDED" 16565 16566 // InstanceGroupStateTerminating is a InstanceGroupState enum value 16567 InstanceGroupStateTerminating = "TERMINATING" 16568 16569 // InstanceGroupStateTerminated is a InstanceGroupState enum value 16570 InstanceGroupStateTerminated = "TERMINATED" 16571 16572 // InstanceGroupStateArrested is a InstanceGroupState enum value 16573 InstanceGroupStateArrested = "ARRESTED" 16574 16575 // InstanceGroupStateShuttingDown is a InstanceGroupState enum value 16576 InstanceGroupStateShuttingDown = "SHUTTING_DOWN" 16577 16578 // InstanceGroupStateEnded is a InstanceGroupState enum value 16579 InstanceGroupStateEnded = "ENDED" 16580) 16581 16582// InstanceGroupState_Values returns all elements of the InstanceGroupState enum 16583func InstanceGroupState_Values() []string { 16584 return []string{ 16585 InstanceGroupStateProvisioning, 16586 InstanceGroupStateBootstrapping, 16587 InstanceGroupStateRunning, 16588 InstanceGroupStateReconfiguring, 16589 InstanceGroupStateResizing, 16590 InstanceGroupStateSuspended, 16591 InstanceGroupStateTerminating, 16592 InstanceGroupStateTerminated, 16593 InstanceGroupStateArrested, 16594 InstanceGroupStateShuttingDown, 16595 InstanceGroupStateEnded, 16596 } 16597} 16598 16599const ( 16600 // InstanceGroupStateChangeReasonCodeInternalError is a InstanceGroupStateChangeReasonCode enum value 16601 InstanceGroupStateChangeReasonCodeInternalError = "INTERNAL_ERROR" 16602 16603 // InstanceGroupStateChangeReasonCodeValidationError is a InstanceGroupStateChangeReasonCode enum value 16604 InstanceGroupStateChangeReasonCodeValidationError = "VALIDATION_ERROR" 16605 16606 // InstanceGroupStateChangeReasonCodeInstanceFailure is a InstanceGroupStateChangeReasonCode enum value 16607 InstanceGroupStateChangeReasonCodeInstanceFailure = "INSTANCE_FAILURE" 16608 16609 // InstanceGroupStateChangeReasonCodeClusterTerminated is a InstanceGroupStateChangeReasonCode enum value 16610 InstanceGroupStateChangeReasonCodeClusterTerminated = "CLUSTER_TERMINATED" 16611) 16612 16613// InstanceGroupStateChangeReasonCode_Values returns all elements of the InstanceGroupStateChangeReasonCode enum 16614func InstanceGroupStateChangeReasonCode_Values() []string { 16615 return []string{ 16616 InstanceGroupStateChangeReasonCodeInternalError, 16617 InstanceGroupStateChangeReasonCodeValidationError, 16618 InstanceGroupStateChangeReasonCodeInstanceFailure, 16619 InstanceGroupStateChangeReasonCodeClusterTerminated, 16620 } 16621} 16622 16623const ( 16624 // InstanceGroupTypeMaster is a InstanceGroupType enum value 16625 InstanceGroupTypeMaster = "MASTER" 16626 16627 // InstanceGroupTypeCore is a InstanceGroupType enum value 16628 InstanceGroupTypeCore = "CORE" 16629 16630 // InstanceGroupTypeTask is a InstanceGroupType enum value 16631 InstanceGroupTypeTask = "TASK" 16632) 16633 16634// InstanceGroupType_Values returns all elements of the InstanceGroupType enum 16635func InstanceGroupType_Values() []string { 16636 return []string{ 16637 InstanceGroupTypeMaster, 16638 InstanceGroupTypeCore, 16639 InstanceGroupTypeTask, 16640 } 16641} 16642 16643const ( 16644 // InstanceRoleTypeMaster is a InstanceRoleType enum value 16645 InstanceRoleTypeMaster = "MASTER" 16646 16647 // InstanceRoleTypeCore is a InstanceRoleType enum value 16648 InstanceRoleTypeCore = "CORE" 16649 16650 // InstanceRoleTypeTask is a InstanceRoleType enum value 16651 InstanceRoleTypeTask = "TASK" 16652) 16653 16654// InstanceRoleType_Values returns all elements of the InstanceRoleType enum 16655func InstanceRoleType_Values() []string { 16656 return []string{ 16657 InstanceRoleTypeMaster, 16658 InstanceRoleTypeCore, 16659 InstanceRoleTypeTask, 16660 } 16661} 16662 16663const ( 16664 // InstanceStateAwaitingFulfillment is a InstanceState enum value 16665 InstanceStateAwaitingFulfillment = "AWAITING_FULFILLMENT" 16666 16667 // InstanceStateProvisioning is a InstanceState enum value 16668 InstanceStateProvisioning = "PROVISIONING" 16669 16670 // InstanceStateBootstrapping is a InstanceState enum value 16671 InstanceStateBootstrapping = "BOOTSTRAPPING" 16672 16673 // InstanceStateRunning is a InstanceState enum value 16674 InstanceStateRunning = "RUNNING" 16675 16676 // InstanceStateTerminated is a InstanceState enum value 16677 InstanceStateTerminated = "TERMINATED" 16678) 16679 16680// InstanceState_Values returns all elements of the InstanceState enum 16681func InstanceState_Values() []string { 16682 return []string{ 16683 InstanceStateAwaitingFulfillment, 16684 InstanceStateProvisioning, 16685 InstanceStateBootstrapping, 16686 InstanceStateRunning, 16687 InstanceStateTerminated, 16688 } 16689} 16690 16691const ( 16692 // InstanceStateChangeReasonCodeInternalError is a InstanceStateChangeReasonCode enum value 16693 InstanceStateChangeReasonCodeInternalError = "INTERNAL_ERROR" 16694 16695 // InstanceStateChangeReasonCodeValidationError is a InstanceStateChangeReasonCode enum value 16696 InstanceStateChangeReasonCodeValidationError = "VALIDATION_ERROR" 16697 16698 // InstanceStateChangeReasonCodeInstanceFailure is a InstanceStateChangeReasonCode enum value 16699 InstanceStateChangeReasonCodeInstanceFailure = "INSTANCE_FAILURE" 16700 16701 // InstanceStateChangeReasonCodeBootstrapFailure is a InstanceStateChangeReasonCode enum value 16702 InstanceStateChangeReasonCodeBootstrapFailure = "BOOTSTRAP_FAILURE" 16703 16704 // InstanceStateChangeReasonCodeClusterTerminated is a InstanceStateChangeReasonCode enum value 16705 InstanceStateChangeReasonCodeClusterTerminated = "CLUSTER_TERMINATED" 16706) 16707 16708// InstanceStateChangeReasonCode_Values returns all elements of the InstanceStateChangeReasonCode enum 16709func InstanceStateChangeReasonCode_Values() []string { 16710 return []string{ 16711 InstanceStateChangeReasonCodeInternalError, 16712 InstanceStateChangeReasonCodeValidationError, 16713 InstanceStateChangeReasonCodeInstanceFailure, 16714 InstanceStateChangeReasonCodeBootstrapFailure, 16715 InstanceStateChangeReasonCodeClusterTerminated, 16716 } 16717} 16718 16719// The type of instance. 16720const ( 16721 // JobFlowExecutionStateStarting is a JobFlowExecutionState enum value 16722 JobFlowExecutionStateStarting = "STARTING" 16723 16724 // JobFlowExecutionStateBootstrapping is a JobFlowExecutionState enum value 16725 JobFlowExecutionStateBootstrapping = "BOOTSTRAPPING" 16726 16727 // JobFlowExecutionStateRunning is a JobFlowExecutionState enum value 16728 JobFlowExecutionStateRunning = "RUNNING" 16729 16730 // JobFlowExecutionStateWaiting is a JobFlowExecutionState enum value 16731 JobFlowExecutionStateWaiting = "WAITING" 16732 16733 // JobFlowExecutionStateShuttingDown is a JobFlowExecutionState enum value 16734 JobFlowExecutionStateShuttingDown = "SHUTTING_DOWN" 16735 16736 // JobFlowExecutionStateTerminated is a JobFlowExecutionState enum value 16737 JobFlowExecutionStateTerminated = "TERMINATED" 16738 16739 // JobFlowExecutionStateCompleted is a JobFlowExecutionState enum value 16740 JobFlowExecutionStateCompleted = "COMPLETED" 16741 16742 // JobFlowExecutionStateFailed is a JobFlowExecutionState enum value 16743 JobFlowExecutionStateFailed = "FAILED" 16744) 16745 16746// JobFlowExecutionState_Values returns all elements of the JobFlowExecutionState enum 16747func JobFlowExecutionState_Values() []string { 16748 return []string{ 16749 JobFlowExecutionStateStarting, 16750 JobFlowExecutionStateBootstrapping, 16751 JobFlowExecutionStateRunning, 16752 JobFlowExecutionStateWaiting, 16753 JobFlowExecutionStateShuttingDown, 16754 JobFlowExecutionStateTerminated, 16755 JobFlowExecutionStateCompleted, 16756 JobFlowExecutionStateFailed, 16757 } 16758} 16759 16760const ( 16761 // MarketTypeOnDemand is a MarketType enum value 16762 MarketTypeOnDemand = "ON_DEMAND" 16763 16764 // MarketTypeSpot is a MarketType enum value 16765 MarketTypeSpot = "SPOT" 16766) 16767 16768// MarketType_Values returns all elements of the MarketType enum 16769func MarketType_Values() []string { 16770 return []string{ 16771 MarketTypeOnDemand, 16772 MarketTypeSpot, 16773 } 16774} 16775 16776const ( 16777 // NotebookExecutionStatusStartPending is a NotebookExecutionStatus enum value 16778 NotebookExecutionStatusStartPending = "START_PENDING" 16779 16780 // NotebookExecutionStatusStarting is a NotebookExecutionStatus enum value 16781 NotebookExecutionStatusStarting = "STARTING" 16782 16783 // NotebookExecutionStatusRunning is a NotebookExecutionStatus enum value 16784 NotebookExecutionStatusRunning = "RUNNING" 16785 16786 // NotebookExecutionStatusFinishing is a NotebookExecutionStatus enum value 16787 NotebookExecutionStatusFinishing = "FINISHING" 16788 16789 // NotebookExecutionStatusFinished is a NotebookExecutionStatus enum value 16790 NotebookExecutionStatusFinished = "FINISHED" 16791 16792 // NotebookExecutionStatusFailing is a NotebookExecutionStatus enum value 16793 NotebookExecutionStatusFailing = "FAILING" 16794 16795 // NotebookExecutionStatusFailed is a NotebookExecutionStatus enum value 16796 NotebookExecutionStatusFailed = "FAILED" 16797 16798 // NotebookExecutionStatusStopPending is a NotebookExecutionStatus enum value 16799 NotebookExecutionStatusStopPending = "STOP_PENDING" 16800 16801 // NotebookExecutionStatusStopping is a NotebookExecutionStatus enum value 16802 NotebookExecutionStatusStopping = "STOPPING" 16803 16804 // NotebookExecutionStatusStopped is a NotebookExecutionStatus enum value 16805 NotebookExecutionStatusStopped = "STOPPED" 16806) 16807 16808// NotebookExecutionStatus_Values returns all elements of the NotebookExecutionStatus enum 16809func NotebookExecutionStatus_Values() []string { 16810 return []string{ 16811 NotebookExecutionStatusStartPending, 16812 NotebookExecutionStatusStarting, 16813 NotebookExecutionStatusRunning, 16814 NotebookExecutionStatusFinishing, 16815 NotebookExecutionStatusFinished, 16816 NotebookExecutionStatusFailing, 16817 NotebookExecutionStatusFailed, 16818 NotebookExecutionStatusStopPending, 16819 NotebookExecutionStatusStopping, 16820 NotebookExecutionStatusStopped, 16821 } 16822} 16823 16824const ( 16825 // OnDemandCapacityReservationPreferenceOpen is a OnDemandCapacityReservationPreference enum value 16826 OnDemandCapacityReservationPreferenceOpen = "open" 16827 16828 // OnDemandCapacityReservationPreferenceNone is a OnDemandCapacityReservationPreference enum value 16829 OnDemandCapacityReservationPreferenceNone = "none" 16830) 16831 16832// OnDemandCapacityReservationPreference_Values returns all elements of the OnDemandCapacityReservationPreference enum 16833func OnDemandCapacityReservationPreference_Values() []string { 16834 return []string{ 16835 OnDemandCapacityReservationPreferenceOpen, 16836 OnDemandCapacityReservationPreferenceNone, 16837 } 16838} 16839 16840const ( 16841 // OnDemandCapacityReservationUsageStrategyUseCapacityReservationsFirst is a OnDemandCapacityReservationUsageStrategy enum value 16842 OnDemandCapacityReservationUsageStrategyUseCapacityReservationsFirst = "use-capacity-reservations-first" 16843) 16844 16845// OnDemandCapacityReservationUsageStrategy_Values returns all elements of the OnDemandCapacityReservationUsageStrategy enum 16846func OnDemandCapacityReservationUsageStrategy_Values() []string { 16847 return []string{ 16848 OnDemandCapacityReservationUsageStrategyUseCapacityReservationsFirst, 16849 } 16850} 16851 16852const ( 16853 // OnDemandProvisioningAllocationStrategyLowestPrice is a OnDemandProvisioningAllocationStrategy enum value 16854 OnDemandProvisioningAllocationStrategyLowestPrice = "lowest-price" 16855) 16856 16857// OnDemandProvisioningAllocationStrategy_Values returns all elements of the OnDemandProvisioningAllocationStrategy enum 16858func OnDemandProvisioningAllocationStrategy_Values() []string { 16859 return []string{ 16860 OnDemandProvisioningAllocationStrategyLowestPrice, 16861 } 16862} 16863 16864const ( 16865 // PlacementGroupStrategySpread is a PlacementGroupStrategy enum value 16866 PlacementGroupStrategySpread = "SPREAD" 16867 16868 // PlacementGroupStrategyPartition is a PlacementGroupStrategy enum value 16869 PlacementGroupStrategyPartition = "PARTITION" 16870 16871 // PlacementGroupStrategyCluster is a PlacementGroupStrategy enum value 16872 PlacementGroupStrategyCluster = "CLUSTER" 16873 16874 // PlacementGroupStrategyNone is a PlacementGroupStrategy enum value 16875 PlacementGroupStrategyNone = "NONE" 16876) 16877 16878// PlacementGroupStrategy_Values returns all elements of the PlacementGroupStrategy enum 16879func PlacementGroupStrategy_Values() []string { 16880 return []string{ 16881 PlacementGroupStrategySpread, 16882 PlacementGroupStrategyPartition, 16883 PlacementGroupStrategyCluster, 16884 PlacementGroupStrategyNone, 16885 } 16886} 16887 16888const ( 16889 // RepoUpgradeOnBootSecurity is a RepoUpgradeOnBoot enum value 16890 RepoUpgradeOnBootSecurity = "SECURITY" 16891 16892 // RepoUpgradeOnBootNone is a RepoUpgradeOnBoot enum value 16893 RepoUpgradeOnBootNone = "NONE" 16894) 16895 16896// RepoUpgradeOnBoot_Values returns all elements of the RepoUpgradeOnBoot enum 16897func RepoUpgradeOnBoot_Values() []string { 16898 return []string{ 16899 RepoUpgradeOnBootSecurity, 16900 RepoUpgradeOnBootNone, 16901 } 16902} 16903 16904const ( 16905 // ScaleDownBehaviorTerminateAtInstanceHour is a ScaleDownBehavior enum value 16906 ScaleDownBehaviorTerminateAtInstanceHour = "TERMINATE_AT_INSTANCE_HOUR" 16907 16908 // ScaleDownBehaviorTerminateAtTaskCompletion is a ScaleDownBehavior enum value 16909 ScaleDownBehaviorTerminateAtTaskCompletion = "TERMINATE_AT_TASK_COMPLETION" 16910) 16911 16912// ScaleDownBehavior_Values returns all elements of the ScaleDownBehavior enum 16913func ScaleDownBehavior_Values() []string { 16914 return []string{ 16915 ScaleDownBehaviorTerminateAtInstanceHour, 16916 ScaleDownBehaviorTerminateAtTaskCompletion, 16917 } 16918} 16919 16920const ( 16921 // SpotProvisioningAllocationStrategyCapacityOptimized is a SpotProvisioningAllocationStrategy enum value 16922 SpotProvisioningAllocationStrategyCapacityOptimized = "capacity-optimized" 16923) 16924 16925// SpotProvisioningAllocationStrategy_Values returns all elements of the SpotProvisioningAllocationStrategy enum 16926func SpotProvisioningAllocationStrategy_Values() []string { 16927 return []string{ 16928 SpotProvisioningAllocationStrategyCapacityOptimized, 16929 } 16930} 16931 16932const ( 16933 // SpotProvisioningTimeoutActionSwitchToOnDemand is a SpotProvisioningTimeoutAction enum value 16934 SpotProvisioningTimeoutActionSwitchToOnDemand = "SWITCH_TO_ON_DEMAND" 16935 16936 // SpotProvisioningTimeoutActionTerminateCluster is a SpotProvisioningTimeoutAction enum value 16937 SpotProvisioningTimeoutActionTerminateCluster = "TERMINATE_CLUSTER" 16938) 16939 16940// SpotProvisioningTimeoutAction_Values returns all elements of the SpotProvisioningTimeoutAction enum 16941func SpotProvisioningTimeoutAction_Values() []string { 16942 return []string{ 16943 SpotProvisioningTimeoutActionSwitchToOnDemand, 16944 SpotProvisioningTimeoutActionTerminateCluster, 16945 } 16946} 16947 16948const ( 16949 // StatisticSampleCount is a Statistic enum value 16950 StatisticSampleCount = "SAMPLE_COUNT" 16951 16952 // StatisticAverage is a Statistic enum value 16953 StatisticAverage = "AVERAGE" 16954 16955 // StatisticSum is a Statistic enum value 16956 StatisticSum = "SUM" 16957 16958 // StatisticMinimum is a Statistic enum value 16959 StatisticMinimum = "MINIMUM" 16960 16961 // StatisticMaximum is a Statistic enum value 16962 StatisticMaximum = "MAXIMUM" 16963) 16964 16965// Statistic_Values returns all elements of the Statistic enum 16966func Statistic_Values() []string { 16967 return []string{ 16968 StatisticSampleCount, 16969 StatisticAverage, 16970 StatisticSum, 16971 StatisticMinimum, 16972 StatisticMaximum, 16973 } 16974} 16975 16976const ( 16977 // StepCancellationOptionSendInterrupt is a StepCancellationOption enum value 16978 StepCancellationOptionSendInterrupt = "SEND_INTERRUPT" 16979 16980 // StepCancellationOptionTerminateProcess is a StepCancellationOption enum value 16981 StepCancellationOptionTerminateProcess = "TERMINATE_PROCESS" 16982) 16983 16984// StepCancellationOption_Values returns all elements of the StepCancellationOption enum 16985func StepCancellationOption_Values() []string { 16986 return []string{ 16987 StepCancellationOptionSendInterrupt, 16988 StepCancellationOptionTerminateProcess, 16989 } 16990} 16991 16992const ( 16993 // StepExecutionStatePending is a StepExecutionState enum value 16994 StepExecutionStatePending = "PENDING" 16995 16996 // StepExecutionStateRunning is a StepExecutionState enum value 16997 StepExecutionStateRunning = "RUNNING" 16998 16999 // StepExecutionStateContinue is a StepExecutionState enum value 17000 StepExecutionStateContinue = "CONTINUE" 17001 17002 // StepExecutionStateCompleted is a StepExecutionState enum value 17003 StepExecutionStateCompleted = "COMPLETED" 17004 17005 // StepExecutionStateCancelled is a StepExecutionState enum value 17006 StepExecutionStateCancelled = "CANCELLED" 17007 17008 // StepExecutionStateFailed is a StepExecutionState enum value 17009 StepExecutionStateFailed = "FAILED" 17010 17011 // StepExecutionStateInterrupted is a StepExecutionState enum value 17012 StepExecutionStateInterrupted = "INTERRUPTED" 17013) 17014 17015// StepExecutionState_Values returns all elements of the StepExecutionState enum 17016func StepExecutionState_Values() []string { 17017 return []string{ 17018 StepExecutionStatePending, 17019 StepExecutionStateRunning, 17020 StepExecutionStateContinue, 17021 StepExecutionStateCompleted, 17022 StepExecutionStateCancelled, 17023 StepExecutionStateFailed, 17024 StepExecutionStateInterrupted, 17025 } 17026} 17027 17028const ( 17029 // StepStatePending is a StepState enum value 17030 StepStatePending = "PENDING" 17031 17032 // StepStateCancelPending is a StepState enum value 17033 StepStateCancelPending = "CANCEL_PENDING" 17034 17035 // StepStateRunning is a StepState enum value 17036 StepStateRunning = "RUNNING" 17037 17038 // StepStateCompleted is a StepState enum value 17039 StepStateCompleted = "COMPLETED" 17040 17041 // StepStateCancelled is a StepState enum value 17042 StepStateCancelled = "CANCELLED" 17043 17044 // StepStateFailed is a StepState enum value 17045 StepStateFailed = "FAILED" 17046 17047 // StepStateInterrupted is a StepState enum value 17048 StepStateInterrupted = "INTERRUPTED" 17049) 17050 17051// StepState_Values returns all elements of the StepState enum 17052func StepState_Values() []string { 17053 return []string{ 17054 StepStatePending, 17055 StepStateCancelPending, 17056 StepStateRunning, 17057 StepStateCompleted, 17058 StepStateCancelled, 17059 StepStateFailed, 17060 StepStateInterrupted, 17061 } 17062} 17063 17064const ( 17065 // StepStateChangeReasonCodeNone is a StepStateChangeReasonCode enum value 17066 StepStateChangeReasonCodeNone = "NONE" 17067) 17068 17069// StepStateChangeReasonCode_Values returns all elements of the StepStateChangeReasonCode enum 17070func StepStateChangeReasonCode_Values() []string { 17071 return []string{ 17072 StepStateChangeReasonCodeNone, 17073 } 17074} 17075 17076const ( 17077 // UnitNone is a Unit enum value 17078 UnitNone = "NONE" 17079 17080 // UnitSeconds is a Unit enum value 17081 UnitSeconds = "SECONDS" 17082 17083 // UnitMicroSeconds is a Unit enum value 17084 UnitMicroSeconds = "MICRO_SECONDS" 17085 17086 // UnitMilliSeconds is a Unit enum value 17087 UnitMilliSeconds = "MILLI_SECONDS" 17088 17089 // UnitBytes is a Unit enum value 17090 UnitBytes = "BYTES" 17091 17092 // UnitKiloBytes is a Unit enum value 17093 UnitKiloBytes = "KILO_BYTES" 17094 17095 // UnitMegaBytes is a Unit enum value 17096 UnitMegaBytes = "MEGA_BYTES" 17097 17098 // UnitGigaBytes is a Unit enum value 17099 UnitGigaBytes = "GIGA_BYTES" 17100 17101 // UnitTeraBytes is a Unit enum value 17102 UnitTeraBytes = "TERA_BYTES" 17103 17104 // UnitBits is a Unit enum value 17105 UnitBits = "BITS" 17106 17107 // UnitKiloBits is a Unit enum value 17108 UnitKiloBits = "KILO_BITS" 17109 17110 // UnitMegaBits is a Unit enum value 17111 UnitMegaBits = "MEGA_BITS" 17112 17113 // UnitGigaBits is a Unit enum value 17114 UnitGigaBits = "GIGA_BITS" 17115 17116 // UnitTeraBits is a Unit enum value 17117 UnitTeraBits = "TERA_BITS" 17118 17119 // UnitPercent is a Unit enum value 17120 UnitPercent = "PERCENT" 17121 17122 // UnitCount is a Unit enum value 17123 UnitCount = "COUNT" 17124 17125 // UnitBytesPerSecond is a Unit enum value 17126 UnitBytesPerSecond = "BYTES_PER_SECOND" 17127 17128 // UnitKiloBytesPerSecond is a Unit enum value 17129 UnitKiloBytesPerSecond = "KILO_BYTES_PER_SECOND" 17130 17131 // UnitMegaBytesPerSecond is a Unit enum value 17132 UnitMegaBytesPerSecond = "MEGA_BYTES_PER_SECOND" 17133 17134 // UnitGigaBytesPerSecond is a Unit enum value 17135 UnitGigaBytesPerSecond = "GIGA_BYTES_PER_SECOND" 17136 17137 // UnitTeraBytesPerSecond is a Unit enum value 17138 UnitTeraBytesPerSecond = "TERA_BYTES_PER_SECOND" 17139 17140 // UnitBitsPerSecond is a Unit enum value 17141 UnitBitsPerSecond = "BITS_PER_SECOND" 17142 17143 // UnitKiloBitsPerSecond is a Unit enum value 17144 UnitKiloBitsPerSecond = "KILO_BITS_PER_SECOND" 17145 17146 // UnitMegaBitsPerSecond is a Unit enum value 17147 UnitMegaBitsPerSecond = "MEGA_BITS_PER_SECOND" 17148 17149 // UnitGigaBitsPerSecond is a Unit enum value 17150 UnitGigaBitsPerSecond = "GIGA_BITS_PER_SECOND" 17151 17152 // UnitTeraBitsPerSecond is a Unit enum value 17153 UnitTeraBitsPerSecond = "TERA_BITS_PER_SECOND" 17154 17155 // UnitCountPerSecond is a Unit enum value 17156 UnitCountPerSecond = "COUNT_PER_SECOND" 17157) 17158 17159// Unit_Values returns all elements of the Unit enum 17160func Unit_Values() []string { 17161 return []string{ 17162 UnitNone, 17163 UnitSeconds, 17164 UnitMicroSeconds, 17165 UnitMilliSeconds, 17166 UnitBytes, 17167 UnitKiloBytes, 17168 UnitMegaBytes, 17169 UnitGigaBytes, 17170 UnitTeraBytes, 17171 UnitBits, 17172 UnitKiloBits, 17173 UnitMegaBits, 17174 UnitGigaBits, 17175 UnitTeraBits, 17176 UnitPercent, 17177 UnitCount, 17178 UnitBytesPerSecond, 17179 UnitKiloBytesPerSecond, 17180 UnitMegaBytesPerSecond, 17181 UnitGigaBytesPerSecond, 17182 UnitTeraBytesPerSecond, 17183 UnitBitsPerSecond, 17184 UnitKiloBitsPerSecond, 17185 UnitMegaBitsPerSecond, 17186 UnitGigaBitsPerSecond, 17187 UnitTeraBitsPerSecond, 17188 UnitCountPerSecond, 17189 } 17190} 17191