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 Elastic MapReduce. 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 Elastic MapReduce'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 EMR service. 75// 76// * InvalidRequestException 77// This exception occurs when there is something wrong with user input. 78// 79// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/AddInstanceFleet 80func (c *EMR) AddInstanceFleet(input *AddInstanceFleetInput) (*AddInstanceFleetOutput, error) { 81 req, out := c.AddInstanceFleetRequest(input) 82 return out, req.Send() 83} 84 85// AddInstanceFleetWithContext is the same as AddInstanceFleet with the addition of 86// the ability to pass a context and additional request options. 87// 88// See AddInstanceFleet for details on how to use this API operation. 89// 90// The context must be non-nil and will be used for request cancellation. If 91// the context is nil a panic will occur. In the future the SDK may create 92// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 93// for more information on using Contexts. 94func (c *EMR) AddInstanceFleetWithContext(ctx aws.Context, input *AddInstanceFleetInput, opts ...request.Option) (*AddInstanceFleetOutput, error) { 95 req, out := c.AddInstanceFleetRequest(input) 96 req.SetContext(ctx) 97 req.ApplyOptions(opts...) 98 return out, req.Send() 99} 100 101const opAddInstanceGroups = "AddInstanceGroups" 102 103// AddInstanceGroupsRequest generates a "aws/request.Request" representing the 104// client's request for the AddInstanceGroups operation. The "output" return 105// value will be populated with the request's response once the request completes 106// successfully. 107// 108// Use "Send" method on the returned Request to send the API call to the service. 109// the "output" return value is not valid until after Send returns without error. 110// 111// See AddInstanceGroups for more information on using the AddInstanceGroups 112// API call, and error handling. 113// 114// This method is useful when you want to inject custom logic or configuration 115// into the SDK's request lifecycle. Such as custom headers, or retry logic. 116// 117// 118// // Example sending a request using the AddInstanceGroupsRequest method. 119// req, resp := client.AddInstanceGroupsRequest(params) 120// 121// err := req.Send() 122// if err == nil { // resp is now filled 123// fmt.Println(resp) 124// } 125// 126// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/AddInstanceGroups 127func (c *EMR) AddInstanceGroupsRequest(input *AddInstanceGroupsInput) (req *request.Request, output *AddInstanceGroupsOutput) { 128 op := &request.Operation{ 129 Name: opAddInstanceGroups, 130 HTTPMethod: "POST", 131 HTTPPath: "/", 132 } 133 134 if input == nil { 135 input = &AddInstanceGroupsInput{} 136 } 137 138 output = &AddInstanceGroupsOutput{} 139 req = c.newRequest(op, input, output) 140 return 141} 142 143// AddInstanceGroups API operation for Amazon Elastic MapReduce. 144// 145// Adds one or more instance groups to a running cluster. 146// 147// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 148// with awserr.Error's Code and Message methods to get detailed information about 149// the error. 150// 151// See the AWS API reference guide for Amazon Elastic MapReduce's 152// API operation AddInstanceGroups for usage and error information. 153// 154// Returned Error Types: 155// * InternalServerError 156// Indicates that an error occurred while processing the request and that the 157// request was not completed. 158// 159// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/AddInstanceGroups 160func (c *EMR) AddInstanceGroups(input *AddInstanceGroupsInput) (*AddInstanceGroupsOutput, error) { 161 req, out := c.AddInstanceGroupsRequest(input) 162 return out, req.Send() 163} 164 165// AddInstanceGroupsWithContext is the same as AddInstanceGroups with the addition of 166// the ability to pass a context and additional request options. 167// 168// See AddInstanceGroups for details on how to use this API operation. 169// 170// The context must be non-nil and will be used for request cancellation. If 171// the context is nil a panic will occur. In the future the SDK may create 172// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 173// for more information on using Contexts. 174func (c *EMR) AddInstanceGroupsWithContext(ctx aws.Context, input *AddInstanceGroupsInput, opts ...request.Option) (*AddInstanceGroupsOutput, error) { 175 req, out := c.AddInstanceGroupsRequest(input) 176 req.SetContext(ctx) 177 req.ApplyOptions(opts...) 178 return out, req.Send() 179} 180 181const opAddJobFlowSteps = "AddJobFlowSteps" 182 183// AddJobFlowStepsRequest generates a "aws/request.Request" representing the 184// client's request for the AddJobFlowSteps operation. The "output" return 185// value will be populated with the request's response once the request completes 186// successfully. 187// 188// Use "Send" method on the returned Request to send the API call to the service. 189// the "output" return value is not valid until after Send returns without error. 190// 191// See AddJobFlowSteps for more information on using the AddJobFlowSteps 192// API call, and error handling. 193// 194// This method is useful when you want to inject custom logic or configuration 195// into the SDK's request lifecycle. Such as custom headers, or retry logic. 196// 197// 198// // Example sending a request using the AddJobFlowStepsRequest method. 199// req, resp := client.AddJobFlowStepsRequest(params) 200// 201// err := req.Send() 202// if err == nil { // resp is now filled 203// fmt.Println(resp) 204// } 205// 206// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/AddJobFlowSteps 207func (c *EMR) AddJobFlowStepsRequest(input *AddJobFlowStepsInput) (req *request.Request, output *AddJobFlowStepsOutput) { 208 op := &request.Operation{ 209 Name: opAddJobFlowSteps, 210 HTTPMethod: "POST", 211 HTTPPath: "/", 212 } 213 214 if input == nil { 215 input = &AddJobFlowStepsInput{} 216 } 217 218 output = &AddJobFlowStepsOutput{} 219 req = c.newRequest(op, input, output) 220 return 221} 222 223// AddJobFlowSteps API operation for Amazon Elastic MapReduce. 224// 225// AddJobFlowSteps adds new steps to a running cluster. A maximum of 256 steps 226// are allowed in each job flow. 227// 228// If your cluster is long-running (such as a Hive data warehouse) or complex, 229// you may require more than 256 steps to process your data. You can bypass 230// the 256-step limitation in various ways, including using SSH to connect to 231// the master node and submitting queries directly to the software running on 232// the master node, such as Hive and Hadoop. For more information on how to 233// do this, see Add More than 256 Steps to a Cluster (https://docs.aws.amazon.com/emr/latest/ManagementGuide/AddMoreThan256Steps.html) 234// in the Amazon EMR Management Guide. 235// 236// A step specifies the location of a JAR file stored either on the master node 237// of the cluster or in Amazon S3. Each step is performed by the main function 238// of the main class of the JAR file. The main class can be specified either 239// in the manifest of the JAR or by using the MainFunction parameter of the 240// step. 241// 242// Amazon EMR executes each step in the order listed. For a step to be considered 243// complete, the main function must exit with a zero exit code and all Hadoop 244// jobs started while the step was running must have completed and run successfully. 245// 246// You can only add steps to a cluster that is in one of the following states: 247// STARTING, BOOTSTRAPPING, RUNNING, or WAITING. 248// 249// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 250// with awserr.Error's Code and Message methods to get detailed information about 251// the error. 252// 253// See the AWS API reference guide for Amazon Elastic MapReduce's 254// API operation AddJobFlowSteps for usage and error information. 255// 256// Returned Error Types: 257// * InternalServerError 258// Indicates that an error occurred while processing the request and that the 259// request was not completed. 260// 261// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/AddJobFlowSteps 262func (c *EMR) AddJobFlowSteps(input *AddJobFlowStepsInput) (*AddJobFlowStepsOutput, error) { 263 req, out := c.AddJobFlowStepsRequest(input) 264 return out, req.Send() 265} 266 267// AddJobFlowStepsWithContext is the same as AddJobFlowSteps with the addition of 268// the ability to pass a context and additional request options. 269// 270// See AddJobFlowSteps for details on how to use this API operation. 271// 272// The context must be non-nil and will be used for request cancellation. If 273// the context is nil a panic will occur. In the future the SDK may create 274// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 275// for more information on using Contexts. 276func (c *EMR) AddJobFlowStepsWithContext(ctx aws.Context, input *AddJobFlowStepsInput, opts ...request.Option) (*AddJobFlowStepsOutput, error) { 277 req, out := c.AddJobFlowStepsRequest(input) 278 req.SetContext(ctx) 279 req.ApplyOptions(opts...) 280 return out, req.Send() 281} 282 283const opAddTags = "AddTags" 284 285// AddTagsRequest generates a "aws/request.Request" representing the 286// client's request for the AddTags operation. The "output" return 287// value will be populated with the request's response once the request completes 288// successfully. 289// 290// Use "Send" method on the returned Request to send the API call to the service. 291// the "output" return value is not valid until after Send returns without error. 292// 293// See AddTags for more information on using the AddTags 294// API call, and error handling. 295// 296// This method is useful when you want to inject custom logic or configuration 297// into the SDK's request lifecycle. Such as custom headers, or retry logic. 298// 299// 300// // Example sending a request using the AddTagsRequest method. 301// req, resp := client.AddTagsRequest(params) 302// 303// err := req.Send() 304// if err == nil { // resp is now filled 305// fmt.Println(resp) 306// } 307// 308// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/AddTags 309func (c *EMR) AddTagsRequest(input *AddTagsInput) (req *request.Request, output *AddTagsOutput) { 310 op := &request.Operation{ 311 Name: opAddTags, 312 HTTPMethod: "POST", 313 HTTPPath: "/", 314 } 315 316 if input == nil { 317 input = &AddTagsInput{} 318 } 319 320 output = &AddTagsOutput{} 321 req = c.newRequest(op, input, output) 322 req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 323 return 324} 325 326// AddTags API operation for Amazon Elastic MapReduce. 327// 328// Adds tags to an Amazon EMR resource. Tags make it easier to associate clusters 329// in various ways, such as grouping clusters to track your Amazon EMR resource 330// allocation costs. For more information, see Tag Clusters (https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-plan-tags.html). 331// 332// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 333// with awserr.Error's Code and Message methods to get detailed information about 334// the error. 335// 336// See the AWS API reference guide for Amazon Elastic MapReduce's 337// API operation AddTags for usage and error information. 338// 339// Returned Error Types: 340// * InternalServerException 341// This exception occurs when there is an internal failure in the EMR service. 342// 343// * InvalidRequestException 344// This exception occurs when there is something wrong with user input. 345// 346// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/AddTags 347func (c *EMR) AddTags(input *AddTagsInput) (*AddTagsOutput, error) { 348 req, out := c.AddTagsRequest(input) 349 return out, req.Send() 350} 351 352// AddTagsWithContext is the same as AddTags with the addition of 353// the ability to pass a context and additional request options. 354// 355// See AddTags for details on how to use this API operation. 356// 357// The context must be non-nil and will be used for request cancellation. If 358// the context is nil a panic will occur. In the future the SDK may create 359// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 360// for more information on using Contexts. 361func (c *EMR) AddTagsWithContext(ctx aws.Context, input *AddTagsInput, opts ...request.Option) (*AddTagsOutput, error) { 362 req, out := c.AddTagsRequest(input) 363 req.SetContext(ctx) 364 req.ApplyOptions(opts...) 365 return out, req.Send() 366} 367 368const opCancelSteps = "CancelSteps" 369 370// CancelStepsRequest generates a "aws/request.Request" representing the 371// client's request for the CancelSteps operation. The "output" return 372// value will be populated with the request's response once the request completes 373// successfully. 374// 375// Use "Send" method on the returned Request to send the API call to the service. 376// the "output" return value is not valid until after Send returns without error. 377// 378// See CancelSteps for more information on using the CancelSteps 379// API call, and error handling. 380// 381// This method is useful when you want to inject custom logic or configuration 382// into the SDK's request lifecycle. Such as custom headers, or retry logic. 383// 384// 385// // Example sending a request using the CancelStepsRequest method. 386// req, resp := client.CancelStepsRequest(params) 387// 388// err := req.Send() 389// if err == nil { // resp is now filled 390// fmt.Println(resp) 391// } 392// 393// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/CancelSteps 394func (c *EMR) CancelStepsRequest(input *CancelStepsInput) (req *request.Request, output *CancelStepsOutput) { 395 op := &request.Operation{ 396 Name: opCancelSteps, 397 HTTPMethod: "POST", 398 HTTPPath: "/", 399 } 400 401 if input == nil { 402 input = &CancelStepsInput{} 403 } 404 405 output = &CancelStepsOutput{} 406 req = c.newRequest(op, input, output) 407 return 408} 409 410// CancelSteps API operation for Amazon Elastic MapReduce. 411// 412// Cancels a pending step or steps in a running cluster. Available only in Amazon 413// EMR versions 4.8.0 and later, excluding version 5.0.0. A maximum of 256 steps 414// are allowed in each CancelSteps request. CancelSteps is idempotent but asynchronous; 415// it does not guarantee that a step will be canceled, even if the request is 416// successfully submitted. You can only cancel steps that are in a PENDING state. 417// 418// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 419// with awserr.Error's Code and Message methods to get detailed information about 420// the error. 421// 422// See the AWS API reference guide for Amazon Elastic MapReduce's 423// API operation CancelSteps for usage and error information. 424// 425// Returned Error Types: 426// * InternalServerError 427// Indicates that an error occurred while processing the request and that the 428// request was not completed. 429// 430// * InvalidRequestException 431// This exception occurs when there is something wrong with user input. 432// 433// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/CancelSteps 434func (c *EMR) CancelSteps(input *CancelStepsInput) (*CancelStepsOutput, error) { 435 req, out := c.CancelStepsRequest(input) 436 return out, req.Send() 437} 438 439// CancelStepsWithContext is the same as CancelSteps with the addition of 440// the ability to pass a context and additional request options. 441// 442// See CancelSteps for details on how to use this API operation. 443// 444// The context must be non-nil and will be used for request cancellation. If 445// the context is nil a panic will occur. In the future the SDK may create 446// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 447// for more information on using Contexts. 448func (c *EMR) CancelStepsWithContext(ctx aws.Context, input *CancelStepsInput, opts ...request.Option) (*CancelStepsOutput, error) { 449 req, out := c.CancelStepsRequest(input) 450 req.SetContext(ctx) 451 req.ApplyOptions(opts...) 452 return out, req.Send() 453} 454 455const opCreateSecurityConfiguration = "CreateSecurityConfiguration" 456 457// CreateSecurityConfigurationRequest generates a "aws/request.Request" representing the 458// client's request for the CreateSecurityConfiguration operation. The "output" return 459// value will be populated with the request's response once the request completes 460// successfully. 461// 462// Use "Send" method on the returned Request to send the API call to the service. 463// the "output" return value is not valid until after Send returns without error. 464// 465// See CreateSecurityConfiguration for more information on using the CreateSecurityConfiguration 466// API call, and error handling. 467// 468// This method is useful when you want to inject custom logic or configuration 469// into the SDK's request lifecycle. Such as custom headers, or retry logic. 470// 471// 472// // Example sending a request using the CreateSecurityConfigurationRequest method. 473// req, resp := client.CreateSecurityConfigurationRequest(params) 474// 475// err := req.Send() 476// if err == nil { // resp is now filled 477// fmt.Println(resp) 478// } 479// 480// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/CreateSecurityConfiguration 481func (c *EMR) CreateSecurityConfigurationRequest(input *CreateSecurityConfigurationInput) (req *request.Request, output *CreateSecurityConfigurationOutput) { 482 op := &request.Operation{ 483 Name: opCreateSecurityConfiguration, 484 HTTPMethod: "POST", 485 HTTPPath: "/", 486 } 487 488 if input == nil { 489 input = &CreateSecurityConfigurationInput{} 490 } 491 492 output = &CreateSecurityConfigurationOutput{} 493 req = c.newRequest(op, input, output) 494 return 495} 496 497// CreateSecurityConfiguration API operation for Amazon Elastic MapReduce. 498// 499// Creates a security configuration, which is stored in the service and can 500// be specified when a cluster is created. 501// 502// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 503// with awserr.Error's Code and Message methods to get detailed information about 504// the error. 505// 506// See the AWS API reference guide for Amazon Elastic MapReduce's 507// API operation CreateSecurityConfiguration for usage and error information. 508// 509// Returned Error Types: 510// * InternalServerException 511// This exception occurs when there is an internal failure in the EMR service. 512// 513// * InvalidRequestException 514// This exception occurs when there is something wrong with user input. 515// 516// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/CreateSecurityConfiguration 517func (c *EMR) CreateSecurityConfiguration(input *CreateSecurityConfigurationInput) (*CreateSecurityConfigurationOutput, error) { 518 req, out := c.CreateSecurityConfigurationRequest(input) 519 return out, req.Send() 520} 521 522// CreateSecurityConfigurationWithContext is the same as CreateSecurityConfiguration with the addition of 523// the ability to pass a context and additional request options. 524// 525// See CreateSecurityConfiguration for details on how to use this API operation. 526// 527// The context must be non-nil and will be used for request cancellation. If 528// the context is nil a panic will occur. In the future the SDK may create 529// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 530// for more information on using Contexts. 531func (c *EMR) CreateSecurityConfigurationWithContext(ctx aws.Context, input *CreateSecurityConfigurationInput, opts ...request.Option) (*CreateSecurityConfigurationOutput, error) { 532 req, out := c.CreateSecurityConfigurationRequest(input) 533 req.SetContext(ctx) 534 req.ApplyOptions(opts...) 535 return out, req.Send() 536} 537 538const opCreateStudio = "CreateStudio" 539 540// CreateStudioRequest generates a "aws/request.Request" representing the 541// client's request for the CreateStudio operation. The "output" return 542// value will be populated with the request's response once the request completes 543// successfully. 544// 545// Use "Send" method on the returned Request to send the API call to the service. 546// the "output" return value is not valid until after Send returns without error. 547// 548// See CreateStudio for more information on using the CreateStudio 549// API call, and error handling. 550// 551// This method is useful when you want to inject custom logic or configuration 552// into the SDK's request lifecycle. Such as custom headers, or retry logic. 553// 554// 555// // Example sending a request using the CreateStudioRequest method. 556// req, resp := client.CreateStudioRequest(params) 557// 558// err := req.Send() 559// if err == nil { // resp is now filled 560// fmt.Println(resp) 561// } 562// 563// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/CreateStudio 564func (c *EMR) CreateStudioRequest(input *CreateStudioInput) (req *request.Request, output *CreateStudioOutput) { 565 op := &request.Operation{ 566 Name: opCreateStudio, 567 HTTPMethod: "POST", 568 HTTPPath: "/", 569 } 570 571 if input == nil { 572 input = &CreateStudioInput{} 573 } 574 575 output = &CreateStudioOutput{} 576 req = c.newRequest(op, input, output) 577 return 578} 579 580// CreateStudio API operation for Amazon Elastic MapReduce. 581// 582// 583// The Amazon EMR Studio APIs are in preview release for Amazon EMR and are 584// subject to change. 585// 586// Creates a new Amazon EMR Studio. 587// 588// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 589// with awserr.Error's Code and Message methods to get detailed information about 590// the error. 591// 592// See the AWS API reference guide for Amazon Elastic MapReduce's 593// API operation CreateStudio for usage and error information. 594// 595// Returned Error Types: 596// * InternalServerException 597// This exception occurs when there is an internal failure in the EMR service. 598// 599// * InvalidRequestException 600// This exception occurs when there is something wrong with user input. 601// 602// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/CreateStudio 603func (c *EMR) CreateStudio(input *CreateStudioInput) (*CreateStudioOutput, error) { 604 req, out := c.CreateStudioRequest(input) 605 return out, req.Send() 606} 607 608// CreateStudioWithContext is the same as CreateStudio with the addition of 609// the ability to pass a context and additional request options. 610// 611// See CreateStudio for details on how to use this API operation. 612// 613// The context must be non-nil and will be used for request cancellation. If 614// the context is nil a panic will occur. In the future the SDK may create 615// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 616// for more information on using Contexts. 617func (c *EMR) CreateStudioWithContext(ctx aws.Context, input *CreateStudioInput, opts ...request.Option) (*CreateStudioOutput, error) { 618 req, out := c.CreateStudioRequest(input) 619 req.SetContext(ctx) 620 req.ApplyOptions(opts...) 621 return out, req.Send() 622} 623 624const opCreateStudioSessionMapping = "CreateStudioSessionMapping" 625 626// CreateStudioSessionMappingRequest generates a "aws/request.Request" representing the 627// client's request for the CreateStudioSessionMapping operation. The "output" return 628// value will be populated with the request's response once the request completes 629// successfully. 630// 631// Use "Send" method on the returned Request to send the API call to the service. 632// the "output" return value is not valid until after Send returns without error. 633// 634// See CreateStudioSessionMapping for more information on using the CreateStudioSessionMapping 635// API call, and error handling. 636// 637// This method is useful when you want to inject custom logic or configuration 638// into the SDK's request lifecycle. Such as custom headers, or retry logic. 639// 640// 641// // Example sending a request using the CreateStudioSessionMappingRequest method. 642// req, resp := client.CreateStudioSessionMappingRequest(params) 643// 644// err := req.Send() 645// if err == nil { // resp is now filled 646// fmt.Println(resp) 647// } 648// 649// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/CreateStudioSessionMapping 650func (c *EMR) CreateStudioSessionMappingRequest(input *CreateStudioSessionMappingInput) (req *request.Request, output *CreateStudioSessionMappingOutput) { 651 op := &request.Operation{ 652 Name: opCreateStudioSessionMapping, 653 HTTPMethod: "POST", 654 HTTPPath: "/", 655 } 656 657 if input == nil { 658 input = &CreateStudioSessionMappingInput{} 659 } 660 661 output = &CreateStudioSessionMappingOutput{} 662 req = c.newRequest(op, input, output) 663 req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 664 return 665} 666 667// CreateStudioSessionMapping API operation for Amazon Elastic MapReduce. 668// 669// 670// The Amazon EMR Studio APIs are in preview release for Amazon EMR and are 671// subject to change. 672// 673// Maps a user or group to the Amazon EMR Studio specified by StudioId, and 674// applies a session policy to refine Studio permissions for that user or group. 675// 676// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 677// with awserr.Error's Code and Message methods to get detailed information about 678// the error. 679// 680// See the AWS API reference guide for Amazon Elastic MapReduce's 681// API operation CreateStudioSessionMapping for usage and error information. 682// 683// Returned Error Types: 684// * InternalServerError 685// Indicates that an error occurred while processing the request and that the 686// request was not completed. 687// 688// * InvalidRequestException 689// This exception occurs when there is something wrong with user input. 690// 691// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/CreateStudioSessionMapping 692func (c *EMR) CreateStudioSessionMapping(input *CreateStudioSessionMappingInput) (*CreateStudioSessionMappingOutput, error) { 693 req, out := c.CreateStudioSessionMappingRequest(input) 694 return out, req.Send() 695} 696 697// CreateStudioSessionMappingWithContext is the same as CreateStudioSessionMapping with the addition of 698// the ability to pass a context and additional request options. 699// 700// See CreateStudioSessionMapping for details on how to use this API operation. 701// 702// The context must be non-nil and will be used for request cancellation. If 703// the context is nil a panic will occur. In the future the SDK may create 704// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 705// for more information on using Contexts. 706func (c *EMR) CreateStudioSessionMappingWithContext(ctx aws.Context, input *CreateStudioSessionMappingInput, opts ...request.Option) (*CreateStudioSessionMappingOutput, error) { 707 req, out := c.CreateStudioSessionMappingRequest(input) 708 req.SetContext(ctx) 709 req.ApplyOptions(opts...) 710 return out, req.Send() 711} 712 713const opDeleteSecurityConfiguration = "DeleteSecurityConfiguration" 714 715// DeleteSecurityConfigurationRequest generates a "aws/request.Request" representing the 716// client's request for the DeleteSecurityConfiguration operation. The "output" return 717// value will be populated with the request's response once the request completes 718// successfully. 719// 720// Use "Send" method on the returned Request to send the API call to the service. 721// the "output" return value is not valid until after Send returns without error. 722// 723// See DeleteSecurityConfiguration for more information on using the DeleteSecurityConfiguration 724// API call, and error handling. 725// 726// This method is useful when you want to inject custom logic or configuration 727// into the SDK's request lifecycle. Such as custom headers, or retry logic. 728// 729// 730// // Example sending a request using the DeleteSecurityConfigurationRequest method. 731// req, resp := client.DeleteSecurityConfigurationRequest(params) 732// 733// err := req.Send() 734// if err == nil { // resp is now filled 735// fmt.Println(resp) 736// } 737// 738// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/DeleteSecurityConfiguration 739func (c *EMR) DeleteSecurityConfigurationRequest(input *DeleteSecurityConfigurationInput) (req *request.Request, output *DeleteSecurityConfigurationOutput) { 740 op := &request.Operation{ 741 Name: opDeleteSecurityConfiguration, 742 HTTPMethod: "POST", 743 HTTPPath: "/", 744 } 745 746 if input == nil { 747 input = &DeleteSecurityConfigurationInput{} 748 } 749 750 output = &DeleteSecurityConfigurationOutput{} 751 req = c.newRequest(op, input, output) 752 req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 753 return 754} 755 756// DeleteSecurityConfiguration API operation for Amazon Elastic MapReduce. 757// 758// Deletes a security configuration. 759// 760// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 761// with awserr.Error's Code and Message methods to get detailed information about 762// the error. 763// 764// See the AWS API reference guide for Amazon Elastic MapReduce's 765// API operation DeleteSecurityConfiguration for usage and error information. 766// 767// Returned Error Types: 768// * InternalServerException 769// This exception occurs when there is an internal failure in the EMR service. 770// 771// * InvalidRequestException 772// This exception occurs when there is something wrong with user input. 773// 774// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/DeleteSecurityConfiguration 775func (c *EMR) DeleteSecurityConfiguration(input *DeleteSecurityConfigurationInput) (*DeleteSecurityConfigurationOutput, error) { 776 req, out := c.DeleteSecurityConfigurationRequest(input) 777 return out, req.Send() 778} 779 780// DeleteSecurityConfigurationWithContext is the same as DeleteSecurityConfiguration with the addition of 781// the ability to pass a context and additional request options. 782// 783// See DeleteSecurityConfiguration for details on how to use this API operation. 784// 785// The context must be non-nil and will be used for request cancellation. If 786// the context is nil a panic will occur. In the future the SDK may create 787// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 788// for more information on using Contexts. 789func (c *EMR) DeleteSecurityConfigurationWithContext(ctx aws.Context, input *DeleteSecurityConfigurationInput, opts ...request.Option) (*DeleteSecurityConfigurationOutput, error) { 790 req, out := c.DeleteSecurityConfigurationRequest(input) 791 req.SetContext(ctx) 792 req.ApplyOptions(opts...) 793 return out, req.Send() 794} 795 796const opDeleteStudio = "DeleteStudio" 797 798// DeleteStudioRequest generates a "aws/request.Request" representing the 799// client's request for the DeleteStudio operation. The "output" return 800// value will be populated with the request's response once the request completes 801// successfully. 802// 803// Use "Send" method on the returned Request to send the API call to the service. 804// the "output" return value is not valid until after Send returns without error. 805// 806// See DeleteStudio for more information on using the DeleteStudio 807// API call, and error handling. 808// 809// This method is useful when you want to inject custom logic or configuration 810// into the SDK's request lifecycle. Such as custom headers, or retry logic. 811// 812// 813// // Example sending a request using the DeleteStudioRequest method. 814// req, resp := client.DeleteStudioRequest(params) 815// 816// err := req.Send() 817// if err == nil { // resp is now filled 818// fmt.Println(resp) 819// } 820// 821// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/DeleteStudio 822func (c *EMR) DeleteStudioRequest(input *DeleteStudioInput) (req *request.Request, output *DeleteStudioOutput) { 823 op := &request.Operation{ 824 Name: opDeleteStudio, 825 HTTPMethod: "POST", 826 HTTPPath: "/", 827 } 828 829 if input == nil { 830 input = &DeleteStudioInput{} 831 } 832 833 output = &DeleteStudioOutput{} 834 req = c.newRequest(op, input, output) 835 req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 836 return 837} 838 839// DeleteStudio API operation for Amazon Elastic MapReduce. 840// 841// 842// The Amazon EMR Studio APIs are in preview release for Amazon EMR and are 843// subject to change. 844// 845// Removes an Amazon EMR Studio from the Studio metadata store. 846// 847// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 848// with awserr.Error's Code and Message methods to get detailed information about 849// the error. 850// 851// See the AWS API reference guide for Amazon Elastic MapReduce's 852// API operation DeleteStudio for usage and error information. 853// 854// Returned Error Types: 855// * InternalServerException 856// This exception occurs when there is an internal failure in the EMR service. 857// 858// * InvalidRequestException 859// This exception occurs when there is something wrong with user input. 860// 861// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/DeleteStudio 862func (c *EMR) DeleteStudio(input *DeleteStudioInput) (*DeleteStudioOutput, error) { 863 req, out := c.DeleteStudioRequest(input) 864 return out, req.Send() 865} 866 867// DeleteStudioWithContext is the same as DeleteStudio with the addition of 868// the ability to pass a context and additional request options. 869// 870// See DeleteStudio for details on how to use this API operation. 871// 872// The context must be non-nil and will be used for request cancellation. If 873// the context is nil a panic will occur. In the future the SDK may create 874// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 875// for more information on using Contexts. 876func (c *EMR) DeleteStudioWithContext(ctx aws.Context, input *DeleteStudioInput, opts ...request.Option) (*DeleteStudioOutput, error) { 877 req, out := c.DeleteStudioRequest(input) 878 req.SetContext(ctx) 879 req.ApplyOptions(opts...) 880 return out, req.Send() 881} 882 883const opDeleteStudioSessionMapping = "DeleteStudioSessionMapping" 884 885// DeleteStudioSessionMappingRequest generates a "aws/request.Request" representing the 886// client's request for the DeleteStudioSessionMapping operation. The "output" return 887// value will be populated with the request's response once the request completes 888// successfully. 889// 890// Use "Send" method on the returned Request to send the API call to the service. 891// the "output" return value is not valid until after Send returns without error. 892// 893// See DeleteStudioSessionMapping for more information on using the DeleteStudioSessionMapping 894// API call, and error handling. 895// 896// This method is useful when you want to inject custom logic or configuration 897// into the SDK's request lifecycle. Such as custom headers, or retry logic. 898// 899// 900// // Example sending a request using the DeleteStudioSessionMappingRequest method. 901// req, resp := client.DeleteStudioSessionMappingRequest(params) 902// 903// err := req.Send() 904// if err == nil { // resp is now filled 905// fmt.Println(resp) 906// } 907// 908// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/DeleteStudioSessionMapping 909func (c *EMR) DeleteStudioSessionMappingRequest(input *DeleteStudioSessionMappingInput) (req *request.Request, output *DeleteStudioSessionMappingOutput) { 910 op := &request.Operation{ 911 Name: opDeleteStudioSessionMapping, 912 HTTPMethod: "POST", 913 HTTPPath: "/", 914 } 915 916 if input == nil { 917 input = &DeleteStudioSessionMappingInput{} 918 } 919 920 output = &DeleteStudioSessionMappingOutput{} 921 req = c.newRequest(op, input, output) 922 req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 923 return 924} 925 926// DeleteStudioSessionMapping API operation for Amazon Elastic MapReduce. 927// 928// 929// The Amazon EMR Studio APIs are in preview release for Amazon EMR and are 930// subject to change. 931// 932// Removes a user or group from an Amazon EMR Studio. 933// 934// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 935// with awserr.Error's Code and Message methods to get detailed information about 936// the error. 937// 938// See the AWS API reference guide for Amazon Elastic MapReduce's 939// API operation DeleteStudioSessionMapping for usage and error information. 940// 941// Returned Error Types: 942// * InternalServerError 943// Indicates that an error occurred while processing the request and that the 944// request was not completed. 945// 946// * InvalidRequestException 947// This exception occurs when there is something wrong with user input. 948// 949// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/DeleteStudioSessionMapping 950func (c *EMR) DeleteStudioSessionMapping(input *DeleteStudioSessionMappingInput) (*DeleteStudioSessionMappingOutput, error) { 951 req, out := c.DeleteStudioSessionMappingRequest(input) 952 return out, req.Send() 953} 954 955// DeleteStudioSessionMappingWithContext is the same as DeleteStudioSessionMapping with the addition of 956// the ability to pass a context and additional request options. 957// 958// See DeleteStudioSessionMapping for details on how to use this API operation. 959// 960// The context must be non-nil and will be used for request cancellation. If 961// the context is nil a panic will occur. In the future the SDK may create 962// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 963// for more information on using Contexts. 964func (c *EMR) DeleteStudioSessionMappingWithContext(ctx aws.Context, input *DeleteStudioSessionMappingInput, opts ...request.Option) (*DeleteStudioSessionMappingOutput, error) { 965 req, out := c.DeleteStudioSessionMappingRequest(input) 966 req.SetContext(ctx) 967 req.ApplyOptions(opts...) 968 return out, req.Send() 969} 970 971const opDescribeCluster = "DescribeCluster" 972 973// DescribeClusterRequest generates a "aws/request.Request" representing the 974// client's request for the DescribeCluster operation. The "output" return 975// value will be populated with the request's response once the request completes 976// successfully. 977// 978// Use "Send" method on the returned Request to send the API call to the service. 979// the "output" return value is not valid until after Send returns without error. 980// 981// See DescribeCluster for more information on using the DescribeCluster 982// API call, and error handling. 983// 984// This method is useful when you want to inject custom logic or configuration 985// into the SDK's request lifecycle. Such as custom headers, or retry logic. 986// 987// 988// // Example sending a request using the DescribeClusterRequest method. 989// req, resp := client.DescribeClusterRequest(params) 990// 991// err := req.Send() 992// if err == nil { // resp is now filled 993// fmt.Println(resp) 994// } 995// 996// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/DescribeCluster 997func (c *EMR) DescribeClusterRequest(input *DescribeClusterInput) (req *request.Request, output *DescribeClusterOutput) { 998 op := &request.Operation{ 999 Name: opDescribeCluster, 1000 HTTPMethod: "POST", 1001 HTTPPath: "/", 1002 } 1003 1004 if input == nil { 1005 input = &DescribeClusterInput{} 1006 } 1007 1008 output = &DescribeClusterOutput{} 1009 req = c.newRequest(op, input, output) 1010 return 1011} 1012 1013// DescribeCluster API operation for Amazon Elastic MapReduce. 1014// 1015// Provides cluster-level details including status, hardware and software configuration, 1016// VPC settings, and so on. 1017// 1018// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1019// with awserr.Error's Code and Message methods to get detailed information about 1020// the error. 1021// 1022// See the AWS API reference guide for Amazon Elastic MapReduce's 1023// API operation DescribeCluster for usage and error information. 1024// 1025// Returned Error Types: 1026// * InternalServerException 1027// This exception occurs when there is an internal failure in the EMR service. 1028// 1029// * InvalidRequestException 1030// This exception occurs when there is something wrong with user input. 1031// 1032// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/DescribeCluster 1033func (c *EMR) DescribeCluster(input *DescribeClusterInput) (*DescribeClusterOutput, error) { 1034 req, out := c.DescribeClusterRequest(input) 1035 return out, req.Send() 1036} 1037 1038// DescribeClusterWithContext is the same as DescribeCluster with the addition of 1039// the ability to pass a context and additional request options. 1040// 1041// See DescribeCluster for details on how to use this API operation. 1042// 1043// The context must be non-nil and will be used for request cancellation. If 1044// the context is nil a panic will occur. In the future the SDK may create 1045// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1046// for more information on using Contexts. 1047func (c *EMR) DescribeClusterWithContext(ctx aws.Context, input *DescribeClusterInput, opts ...request.Option) (*DescribeClusterOutput, error) { 1048 req, out := c.DescribeClusterRequest(input) 1049 req.SetContext(ctx) 1050 req.ApplyOptions(opts...) 1051 return out, req.Send() 1052} 1053 1054const opDescribeJobFlows = "DescribeJobFlows" 1055 1056// DescribeJobFlowsRequest generates a "aws/request.Request" representing the 1057// client's request for the DescribeJobFlows operation. The "output" return 1058// value will be populated with the request's response once the request completes 1059// successfully. 1060// 1061// Use "Send" method on the returned Request to send the API call to the service. 1062// the "output" return value is not valid until after Send returns without error. 1063// 1064// See DescribeJobFlows for more information on using the DescribeJobFlows 1065// API call, and error handling. 1066// 1067// This method is useful when you want to inject custom logic or configuration 1068// into the SDK's request lifecycle. Such as custom headers, or retry logic. 1069// 1070// 1071// // Example sending a request using the DescribeJobFlowsRequest method. 1072// req, resp := client.DescribeJobFlowsRequest(params) 1073// 1074// err := req.Send() 1075// if err == nil { // resp is now filled 1076// fmt.Println(resp) 1077// } 1078// 1079// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/DescribeJobFlows 1080// 1081// Deprecated: DescribeJobFlows has been deprecated 1082func (c *EMR) DescribeJobFlowsRequest(input *DescribeJobFlowsInput) (req *request.Request, output *DescribeJobFlowsOutput) { 1083 if c.Client.Config.Logger != nil { 1084 c.Client.Config.Logger.Log("This operation, DescribeJobFlows, has been deprecated") 1085 } 1086 op := &request.Operation{ 1087 Name: opDescribeJobFlows, 1088 HTTPMethod: "POST", 1089 HTTPPath: "/", 1090 } 1091 1092 if input == nil { 1093 input = &DescribeJobFlowsInput{} 1094 } 1095 1096 output = &DescribeJobFlowsOutput{} 1097 req = c.newRequest(op, input, output) 1098 return 1099} 1100 1101// DescribeJobFlows API operation for Amazon Elastic MapReduce. 1102// 1103// This API is no longer supported and will eventually be removed. We recommend 1104// you use ListClusters, DescribeCluster, ListSteps, ListInstanceGroups and 1105// ListBootstrapActions instead. 1106// 1107// DescribeJobFlows returns a list of job flows that match all of the supplied 1108// parameters. The parameters can include a list of job flow IDs, job flow states, 1109// and restrictions on job flow creation date and time. 1110// 1111// Regardless of supplied parameters, only job flows created within the last 1112// two months are returned. 1113// 1114// If no parameters are supplied, then job flows matching either of the following 1115// criteria are returned: 1116// 1117// * Job flows created and completed in the last two weeks 1118// 1119// * Job flows created within the last two months that are in one of the 1120// following states: RUNNING, WAITING, SHUTTING_DOWN, STARTING 1121// 1122// Amazon EMR can return a maximum of 512 job flow descriptions. 1123// 1124// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1125// with awserr.Error's Code and Message methods to get detailed information about 1126// the error. 1127// 1128// See the AWS API reference guide for Amazon Elastic MapReduce's 1129// API operation DescribeJobFlows for usage and error information. 1130// 1131// Returned Error Types: 1132// * InternalServerError 1133// Indicates that an error occurred while processing the request and that the 1134// request was not completed. 1135// 1136// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/DescribeJobFlows 1137// 1138// Deprecated: DescribeJobFlows has been deprecated 1139func (c *EMR) DescribeJobFlows(input *DescribeJobFlowsInput) (*DescribeJobFlowsOutput, error) { 1140 req, out := c.DescribeJobFlowsRequest(input) 1141 return out, req.Send() 1142} 1143 1144// DescribeJobFlowsWithContext is the same as DescribeJobFlows with the addition of 1145// the ability to pass a context and additional request options. 1146// 1147// See DescribeJobFlows for details on how to use this API operation. 1148// 1149// The context must be non-nil and will be used for request cancellation. If 1150// the context is nil a panic will occur. In the future the SDK may create 1151// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1152// for more information on using Contexts. 1153// 1154// Deprecated: DescribeJobFlowsWithContext has been deprecated 1155func (c *EMR) DescribeJobFlowsWithContext(ctx aws.Context, input *DescribeJobFlowsInput, opts ...request.Option) (*DescribeJobFlowsOutput, error) { 1156 req, out := c.DescribeJobFlowsRequest(input) 1157 req.SetContext(ctx) 1158 req.ApplyOptions(opts...) 1159 return out, req.Send() 1160} 1161 1162const opDescribeNotebookExecution = "DescribeNotebookExecution" 1163 1164// DescribeNotebookExecutionRequest generates a "aws/request.Request" representing the 1165// client's request for the DescribeNotebookExecution operation. The "output" return 1166// value will be populated with the request's response once the request completes 1167// successfully. 1168// 1169// Use "Send" method on the returned Request to send the API call to the service. 1170// the "output" return value is not valid until after Send returns without error. 1171// 1172// See DescribeNotebookExecution for more information on using the DescribeNotebookExecution 1173// API call, and error handling. 1174// 1175// This method is useful when you want to inject custom logic or configuration 1176// into the SDK's request lifecycle. Such as custom headers, or retry logic. 1177// 1178// 1179// // Example sending a request using the DescribeNotebookExecutionRequest method. 1180// req, resp := client.DescribeNotebookExecutionRequest(params) 1181// 1182// err := req.Send() 1183// if err == nil { // resp is now filled 1184// fmt.Println(resp) 1185// } 1186// 1187// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/DescribeNotebookExecution 1188func (c *EMR) DescribeNotebookExecutionRequest(input *DescribeNotebookExecutionInput) (req *request.Request, output *DescribeNotebookExecutionOutput) { 1189 op := &request.Operation{ 1190 Name: opDescribeNotebookExecution, 1191 HTTPMethod: "POST", 1192 HTTPPath: "/", 1193 } 1194 1195 if input == nil { 1196 input = &DescribeNotebookExecutionInput{} 1197 } 1198 1199 output = &DescribeNotebookExecutionOutput{} 1200 req = c.newRequest(op, input, output) 1201 return 1202} 1203 1204// DescribeNotebookExecution API operation for Amazon Elastic MapReduce. 1205// 1206// Provides details of a notebook execution. 1207// 1208// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1209// with awserr.Error's Code and Message methods to get detailed information about 1210// the error. 1211// 1212// See the AWS API reference guide for Amazon Elastic MapReduce's 1213// API operation DescribeNotebookExecution for usage and error information. 1214// 1215// Returned Error Types: 1216// * InternalServerError 1217// Indicates that an error occurred while processing the request and that the 1218// request was not completed. 1219// 1220// * InvalidRequestException 1221// This exception occurs when there is something wrong with user input. 1222// 1223// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/DescribeNotebookExecution 1224func (c *EMR) DescribeNotebookExecution(input *DescribeNotebookExecutionInput) (*DescribeNotebookExecutionOutput, error) { 1225 req, out := c.DescribeNotebookExecutionRequest(input) 1226 return out, req.Send() 1227} 1228 1229// DescribeNotebookExecutionWithContext is the same as DescribeNotebookExecution with the addition of 1230// the ability to pass a context and additional request options. 1231// 1232// See DescribeNotebookExecution for details on how to use this API operation. 1233// 1234// The context must be non-nil and will be used for request cancellation. If 1235// the context is nil a panic will occur. In the future the SDK may create 1236// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1237// for more information on using Contexts. 1238func (c *EMR) DescribeNotebookExecutionWithContext(ctx aws.Context, input *DescribeNotebookExecutionInput, opts ...request.Option) (*DescribeNotebookExecutionOutput, error) { 1239 req, out := c.DescribeNotebookExecutionRequest(input) 1240 req.SetContext(ctx) 1241 req.ApplyOptions(opts...) 1242 return out, req.Send() 1243} 1244 1245const opDescribeSecurityConfiguration = "DescribeSecurityConfiguration" 1246 1247// DescribeSecurityConfigurationRequest generates a "aws/request.Request" representing the 1248// client's request for the DescribeSecurityConfiguration operation. The "output" return 1249// value will be populated with the request's response once the request completes 1250// successfully. 1251// 1252// Use "Send" method on the returned Request to send the API call to the service. 1253// the "output" return value is not valid until after Send returns without error. 1254// 1255// See DescribeSecurityConfiguration for more information on using the DescribeSecurityConfiguration 1256// API call, and error handling. 1257// 1258// This method is useful when you want to inject custom logic or configuration 1259// into the SDK's request lifecycle. Such as custom headers, or retry logic. 1260// 1261// 1262// // Example sending a request using the DescribeSecurityConfigurationRequest method. 1263// req, resp := client.DescribeSecurityConfigurationRequest(params) 1264// 1265// err := req.Send() 1266// if err == nil { // resp is now filled 1267// fmt.Println(resp) 1268// } 1269// 1270// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/DescribeSecurityConfiguration 1271func (c *EMR) DescribeSecurityConfigurationRequest(input *DescribeSecurityConfigurationInput) (req *request.Request, output *DescribeSecurityConfigurationOutput) { 1272 op := &request.Operation{ 1273 Name: opDescribeSecurityConfiguration, 1274 HTTPMethod: "POST", 1275 HTTPPath: "/", 1276 } 1277 1278 if input == nil { 1279 input = &DescribeSecurityConfigurationInput{} 1280 } 1281 1282 output = &DescribeSecurityConfigurationOutput{} 1283 req = c.newRequest(op, input, output) 1284 return 1285} 1286 1287// DescribeSecurityConfiguration API operation for Amazon Elastic MapReduce. 1288// 1289// Provides the details of a security configuration by returning the configuration 1290// JSON. 1291// 1292// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1293// with awserr.Error's Code and Message methods to get detailed information about 1294// the error. 1295// 1296// See the AWS API reference guide for Amazon Elastic MapReduce's 1297// API operation DescribeSecurityConfiguration for usage and error information. 1298// 1299// Returned Error Types: 1300// * InternalServerException 1301// This exception occurs when there is an internal failure in the EMR service. 1302// 1303// * InvalidRequestException 1304// This exception occurs when there is something wrong with user input. 1305// 1306// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/DescribeSecurityConfiguration 1307func (c *EMR) DescribeSecurityConfiguration(input *DescribeSecurityConfigurationInput) (*DescribeSecurityConfigurationOutput, error) { 1308 req, out := c.DescribeSecurityConfigurationRequest(input) 1309 return out, req.Send() 1310} 1311 1312// DescribeSecurityConfigurationWithContext is the same as DescribeSecurityConfiguration with the addition of 1313// the ability to pass a context and additional request options. 1314// 1315// See DescribeSecurityConfiguration for details on how to use this API operation. 1316// 1317// The context must be non-nil and will be used for request cancellation. If 1318// the context is nil a panic will occur. In the future the SDK may create 1319// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1320// for more information on using Contexts. 1321func (c *EMR) DescribeSecurityConfigurationWithContext(ctx aws.Context, input *DescribeSecurityConfigurationInput, opts ...request.Option) (*DescribeSecurityConfigurationOutput, error) { 1322 req, out := c.DescribeSecurityConfigurationRequest(input) 1323 req.SetContext(ctx) 1324 req.ApplyOptions(opts...) 1325 return out, req.Send() 1326} 1327 1328const opDescribeStep = "DescribeStep" 1329 1330// DescribeStepRequest generates a "aws/request.Request" representing the 1331// client's request for the DescribeStep operation. The "output" return 1332// value will be populated with the request's response once the request completes 1333// successfully. 1334// 1335// Use "Send" method on the returned Request to send the API call to the service. 1336// the "output" return value is not valid until after Send returns without error. 1337// 1338// See DescribeStep for more information on using the DescribeStep 1339// API call, and error handling. 1340// 1341// This method is useful when you want to inject custom logic or configuration 1342// into the SDK's request lifecycle. Such as custom headers, or retry logic. 1343// 1344// 1345// // Example sending a request using the DescribeStepRequest method. 1346// req, resp := client.DescribeStepRequest(params) 1347// 1348// err := req.Send() 1349// if err == nil { // resp is now filled 1350// fmt.Println(resp) 1351// } 1352// 1353// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/DescribeStep 1354func (c *EMR) DescribeStepRequest(input *DescribeStepInput) (req *request.Request, output *DescribeStepOutput) { 1355 op := &request.Operation{ 1356 Name: opDescribeStep, 1357 HTTPMethod: "POST", 1358 HTTPPath: "/", 1359 } 1360 1361 if input == nil { 1362 input = &DescribeStepInput{} 1363 } 1364 1365 output = &DescribeStepOutput{} 1366 req = c.newRequest(op, input, output) 1367 return 1368} 1369 1370// DescribeStep API operation for Amazon Elastic MapReduce. 1371// 1372// Provides more detail about the cluster step. 1373// 1374// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1375// with awserr.Error's Code and Message methods to get detailed information about 1376// the error. 1377// 1378// See the AWS API reference guide for Amazon Elastic MapReduce's 1379// API operation DescribeStep for usage and error information. 1380// 1381// Returned Error Types: 1382// * InternalServerException 1383// This exception occurs when there is an internal failure in the EMR service. 1384// 1385// * InvalidRequestException 1386// This exception occurs when there is something wrong with user input. 1387// 1388// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/DescribeStep 1389func (c *EMR) DescribeStep(input *DescribeStepInput) (*DescribeStepOutput, error) { 1390 req, out := c.DescribeStepRequest(input) 1391 return out, req.Send() 1392} 1393 1394// DescribeStepWithContext is the same as DescribeStep with the addition of 1395// the ability to pass a context and additional request options. 1396// 1397// See DescribeStep for details on how to use this API operation. 1398// 1399// The context must be non-nil and will be used for request cancellation. If 1400// the context is nil a panic will occur. In the future the SDK may create 1401// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1402// for more information on using Contexts. 1403func (c *EMR) DescribeStepWithContext(ctx aws.Context, input *DescribeStepInput, opts ...request.Option) (*DescribeStepOutput, error) { 1404 req, out := c.DescribeStepRequest(input) 1405 req.SetContext(ctx) 1406 req.ApplyOptions(opts...) 1407 return out, req.Send() 1408} 1409 1410const opDescribeStudio = "DescribeStudio" 1411 1412// DescribeStudioRequest generates a "aws/request.Request" representing the 1413// client's request for the DescribeStudio operation. The "output" return 1414// value will be populated with the request's response once the request completes 1415// successfully. 1416// 1417// Use "Send" method on the returned Request to send the API call to the service. 1418// the "output" return value is not valid until after Send returns without error. 1419// 1420// See DescribeStudio for more information on using the DescribeStudio 1421// API call, and error handling. 1422// 1423// This method is useful when you want to inject custom logic or configuration 1424// into the SDK's request lifecycle. Such as custom headers, or retry logic. 1425// 1426// 1427// // Example sending a request using the DescribeStudioRequest method. 1428// req, resp := client.DescribeStudioRequest(params) 1429// 1430// err := req.Send() 1431// if err == nil { // resp is now filled 1432// fmt.Println(resp) 1433// } 1434// 1435// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/DescribeStudio 1436func (c *EMR) DescribeStudioRequest(input *DescribeStudioInput) (req *request.Request, output *DescribeStudioOutput) { 1437 op := &request.Operation{ 1438 Name: opDescribeStudio, 1439 HTTPMethod: "POST", 1440 HTTPPath: "/", 1441 } 1442 1443 if input == nil { 1444 input = &DescribeStudioInput{} 1445 } 1446 1447 output = &DescribeStudioOutput{} 1448 req = c.newRequest(op, input, output) 1449 return 1450} 1451 1452// DescribeStudio API operation for Amazon Elastic MapReduce. 1453// 1454// 1455// The Amazon EMR Studio APIs are in preview release for Amazon EMR and are 1456// subject to change. 1457// 1458// Returns details for the specified Amazon EMR Studio including ID, Name, VPC, 1459// Studio access URL, and so on. 1460// 1461// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1462// with awserr.Error's Code and Message methods to get detailed information about 1463// the error. 1464// 1465// See the AWS API reference guide for Amazon Elastic MapReduce's 1466// API operation DescribeStudio for usage and error information. 1467// 1468// Returned Error Types: 1469// * InternalServerException 1470// This exception occurs when there is an internal failure in the EMR service. 1471// 1472// * InvalidRequestException 1473// This exception occurs when there is something wrong with user input. 1474// 1475// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/DescribeStudio 1476func (c *EMR) DescribeStudio(input *DescribeStudioInput) (*DescribeStudioOutput, error) { 1477 req, out := c.DescribeStudioRequest(input) 1478 return out, req.Send() 1479} 1480 1481// DescribeStudioWithContext is the same as DescribeStudio with the addition of 1482// the ability to pass a context and additional request options. 1483// 1484// See DescribeStudio for details on how to use this API operation. 1485// 1486// The context must be non-nil and will be used for request cancellation. If 1487// the context is nil a panic will occur. In the future the SDK may create 1488// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1489// for more information on using Contexts. 1490func (c *EMR) DescribeStudioWithContext(ctx aws.Context, input *DescribeStudioInput, opts ...request.Option) (*DescribeStudioOutput, error) { 1491 req, out := c.DescribeStudioRequest(input) 1492 req.SetContext(ctx) 1493 req.ApplyOptions(opts...) 1494 return out, req.Send() 1495} 1496 1497const opGetBlockPublicAccessConfiguration = "GetBlockPublicAccessConfiguration" 1498 1499// GetBlockPublicAccessConfigurationRequest generates a "aws/request.Request" representing the 1500// client's request for the GetBlockPublicAccessConfiguration operation. The "output" return 1501// value will be populated with the request's response once the request completes 1502// successfully. 1503// 1504// Use "Send" method on the returned Request to send the API call to the service. 1505// the "output" return value is not valid until after Send returns without error. 1506// 1507// See GetBlockPublicAccessConfiguration for more information on using the GetBlockPublicAccessConfiguration 1508// API call, and error handling. 1509// 1510// This method is useful when you want to inject custom logic or configuration 1511// into the SDK's request lifecycle. Such as custom headers, or retry logic. 1512// 1513// 1514// // Example sending a request using the GetBlockPublicAccessConfigurationRequest method. 1515// req, resp := client.GetBlockPublicAccessConfigurationRequest(params) 1516// 1517// err := req.Send() 1518// if err == nil { // resp is now filled 1519// fmt.Println(resp) 1520// } 1521// 1522// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/GetBlockPublicAccessConfiguration 1523func (c *EMR) GetBlockPublicAccessConfigurationRequest(input *GetBlockPublicAccessConfigurationInput) (req *request.Request, output *GetBlockPublicAccessConfigurationOutput) { 1524 op := &request.Operation{ 1525 Name: opGetBlockPublicAccessConfiguration, 1526 HTTPMethod: "POST", 1527 HTTPPath: "/", 1528 } 1529 1530 if input == nil { 1531 input = &GetBlockPublicAccessConfigurationInput{} 1532 } 1533 1534 output = &GetBlockPublicAccessConfigurationOutput{} 1535 req = c.newRequest(op, input, output) 1536 return 1537} 1538 1539// GetBlockPublicAccessConfiguration API operation for Amazon Elastic MapReduce. 1540// 1541// Returns the Amazon EMR block public access configuration for your AWS account 1542// in the current Region. For more information see Configure Block Public Access 1543// for Amazon EMR (https://docs.aws.amazon.com/emr/latest/ManagementGuide/configure-block-public-access.html) 1544// in the Amazon EMR Management Guide. 1545// 1546// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1547// with awserr.Error's Code and Message methods to get detailed information about 1548// the error. 1549// 1550// See the AWS API reference guide for Amazon Elastic MapReduce's 1551// API operation GetBlockPublicAccessConfiguration for usage and error information. 1552// 1553// Returned Error Types: 1554// * InternalServerException 1555// This exception occurs when there is an internal failure in the EMR service. 1556// 1557// * InvalidRequestException 1558// This exception occurs when there is something wrong with user input. 1559// 1560// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/GetBlockPublicAccessConfiguration 1561func (c *EMR) GetBlockPublicAccessConfiguration(input *GetBlockPublicAccessConfigurationInput) (*GetBlockPublicAccessConfigurationOutput, error) { 1562 req, out := c.GetBlockPublicAccessConfigurationRequest(input) 1563 return out, req.Send() 1564} 1565 1566// GetBlockPublicAccessConfigurationWithContext is the same as GetBlockPublicAccessConfiguration with the addition of 1567// the ability to pass a context and additional request options. 1568// 1569// See GetBlockPublicAccessConfiguration for details on how to use this API operation. 1570// 1571// The context must be non-nil and will be used for request cancellation. If 1572// the context is nil a panic will occur. In the future the SDK may create 1573// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1574// for more information on using Contexts. 1575func (c *EMR) GetBlockPublicAccessConfigurationWithContext(ctx aws.Context, input *GetBlockPublicAccessConfigurationInput, opts ...request.Option) (*GetBlockPublicAccessConfigurationOutput, error) { 1576 req, out := c.GetBlockPublicAccessConfigurationRequest(input) 1577 req.SetContext(ctx) 1578 req.ApplyOptions(opts...) 1579 return out, req.Send() 1580} 1581 1582const opGetManagedScalingPolicy = "GetManagedScalingPolicy" 1583 1584// GetManagedScalingPolicyRequest generates a "aws/request.Request" representing the 1585// client's request for the GetManagedScalingPolicy operation. The "output" return 1586// value will be populated with the request's response once the request completes 1587// successfully. 1588// 1589// Use "Send" method on the returned Request to send the API call to the service. 1590// the "output" return value is not valid until after Send returns without error. 1591// 1592// See GetManagedScalingPolicy for more information on using the GetManagedScalingPolicy 1593// API call, and error handling. 1594// 1595// This method is useful when you want to inject custom logic or configuration 1596// into the SDK's request lifecycle. Such as custom headers, or retry logic. 1597// 1598// 1599// // Example sending a request using the GetManagedScalingPolicyRequest method. 1600// req, resp := client.GetManagedScalingPolicyRequest(params) 1601// 1602// err := req.Send() 1603// if err == nil { // resp is now filled 1604// fmt.Println(resp) 1605// } 1606// 1607// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/GetManagedScalingPolicy 1608func (c *EMR) GetManagedScalingPolicyRequest(input *GetManagedScalingPolicyInput) (req *request.Request, output *GetManagedScalingPolicyOutput) { 1609 op := &request.Operation{ 1610 Name: opGetManagedScalingPolicy, 1611 HTTPMethod: "POST", 1612 HTTPPath: "/", 1613 } 1614 1615 if input == nil { 1616 input = &GetManagedScalingPolicyInput{} 1617 } 1618 1619 output = &GetManagedScalingPolicyOutput{} 1620 req = c.newRequest(op, input, output) 1621 return 1622} 1623 1624// GetManagedScalingPolicy API operation for Amazon Elastic MapReduce. 1625// 1626// Fetches the attached managed scaling policy for an Amazon EMR cluster. 1627// 1628// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1629// with awserr.Error's Code and Message methods to get detailed information about 1630// the error. 1631// 1632// See the AWS API reference guide for Amazon Elastic MapReduce's 1633// API operation GetManagedScalingPolicy for usage and error information. 1634// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/GetManagedScalingPolicy 1635func (c *EMR) GetManagedScalingPolicy(input *GetManagedScalingPolicyInput) (*GetManagedScalingPolicyOutput, error) { 1636 req, out := c.GetManagedScalingPolicyRequest(input) 1637 return out, req.Send() 1638} 1639 1640// GetManagedScalingPolicyWithContext is the same as GetManagedScalingPolicy with the addition of 1641// the ability to pass a context and additional request options. 1642// 1643// See GetManagedScalingPolicy for details on how to use this API operation. 1644// 1645// The context must be non-nil and will be used for request cancellation. If 1646// the context is nil a panic will occur. In the future the SDK may create 1647// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1648// for more information on using Contexts. 1649func (c *EMR) GetManagedScalingPolicyWithContext(ctx aws.Context, input *GetManagedScalingPolicyInput, opts ...request.Option) (*GetManagedScalingPolicyOutput, error) { 1650 req, out := c.GetManagedScalingPolicyRequest(input) 1651 req.SetContext(ctx) 1652 req.ApplyOptions(opts...) 1653 return out, req.Send() 1654} 1655 1656const opGetStudioSessionMapping = "GetStudioSessionMapping" 1657 1658// GetStudioSessionMappingRequest generates a "aws/request.Request" representing the 1659// client's request for the GetStudioSessionMapping operation. The "output" return 1660// value will be populated with the request's response once the request completes 1661// successfully. 1662// 1663// Use "Send" method on the returned Request to send the API call to the service. 1664// the "output" return value is not valid until after Send returns without error. 1665// 1666// See GetStudioSessionMapping for more information on using the GetStudioSessionMapping 1667// API call, and error handling. 1668// 1669// This method is useful when you want to inject custom logic or configuration 1670// into the SDK's request lifecycle. Such as custom headers, or retry logic. 1671// 1672// 1673// // Example sending a request using the GetStudioSessionMappingRequest method. 1674// req, resp := client.GetStudioSessionMappingRequest(params) 1675// 1676// err := req.Send() 1677// if err == nil { // resp is now filled 1678// fmt.Println(resp) 1679// } 1680// 1681// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/GetStudioSessionMapping 1682func (c *EMR) GetStudioSessionMappingRequest(input *GetStudioSessionMappingInput) (req *request.Request, output *GetStudioSessionMappingOutput) { 1683 op := &request.Operation{ 1684 Name: opGetStudioSessionMapping, 1685 HTTPMethod: "POST", 1686 HTTPPath: "/", 1687 } 1688 1689 if input == nil { 1690 input = &GetStudioSessionMappingInput{} 1691 } 1692 1693 output = &GetStudioSessionMappingOutput{} 1694 req = c.newRequest(op, input, output) 1695 return 1696} 1697 1698// GetStudioSessionMapping API operation for Amazon Elastic MapReduce. 1699// 1700// 1701// The Amazon EMR Studio APIs are in preview release for Amazon EMR and are 1702// subject to change. 1703// 1704// Fetches mapping details for the specified Amazon EMR Studio and identity 1705// (user or group). 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 Elastic MapReduce's 1712// API operation GetStudioSessionMapping for usage and error information. 1713// 1714// Returned Error Types: 1715// * InternalServerError 1716// Indicates that an error occurred while processing the request and that the 1717// request was not completed. 1718// 1719// * InvalidRequestException 1720// This exception occurs when there is something wrong with user input. 1721// 1722// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/GetStudioSessionMapping 1723func (c *EMR) GetStudioSessionMapping(input *GetStudioSessionMappingInput) (*GetStudioSessionMappingOutput, error) { 1724 req, out := c.GetStudioSessionMappingRequest(input) 1725 return out, req.Send() 1726} 1727 1728// GetStudioSessionMappingWithContext is the same as GetStudioSessionMapping with the addition of 1729// the ability to pass a context and additional request options. 1730// 1731// See GetStudioSessionMapping for details on how to use this API operation. 1732// 1733// The context must be non-nil and will be used for request cancellation. If 1734// the context is nil a panic will occur. In the future the SDK may create 1735// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1736// for more information on using Contexts. 1737func (c *EMR) GetStudioSessionMappingWithContext(ctx aws.Context, input *GetStudioSessionMappingInput, opts ...request.Option) (*GetStudioSessionMappingOutput, error) { 1738 req, out := c.GetStudioSessionMappingRequest(input) 1739 req.SetContext(ctx) 1740 req.ApplyOptions(opts...) 1741 return out, req.Send() 1742} 1743 1744const opListBootstrapActions = "ListBootstrapActions" 1745 1746// ListBootstrapActionsRequest generates a "aws/request.Request" representing the 1747// client's request for the ListBootstrapActions operation. The "output" return 1748// value will be populated with the request's response once the request completes 1749// successfully. 1750// 1751// Use "Send" method on the returned Request to send the API call to the service. 1752// the "output" return value is not valid until after Send returns without error. 1753// 1754// See ListBootstrapActions for more information on using the ListBootstrapActions 1755// API call, and error handling. 1756// 1757// This method is useful when you want to inject custom logic or configuration 1758// into the SDK's request lifecycle. Such as custom headers, or retry logic. 1759// 1760// 1761// // Example sending a request using the ListBootstrapActionsRequest method. 1762// req, resp := client.ListBootstrapActionsRequest(params) 1763// 1764// err := req.Send() 1765// if err == nil { // resp is now filled 1766// fmt.Println(resp) 1767// } 1768// 1769// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/ListBootstrapActions 1770func (c *EMR) ListBootstrapActionsRequest(input *ListBootstrapActionsInput) (req *request.Request, output *ListBootstrapActionsOutput) { 1771 op := &request.Operation{ 1772 Name: opListBootstrapActions, 1773 HTTPMethod: "POST", 1774 HTTPPath: "/", 1775 Paginator: &request.Paginator{ 1776 InputTokens: []string{"Marker"}, 1777 OutputTokens: []string{"Marker"}, 1778 LimitToken: "", 1779 TruncationToken: "", 1780 }, 1781 } 1782 1783 if input == nil { 1784 input = &ListBootstrapActionsInput{} 1785 } 1786 1787 output = &ListBootstrapActionsOutput{} 1788 req = c.newRequest(op, input, output) 1789 return 1790} 1791 1792// ListBootstrapActions API operation for Amazon Elastic MapReduce. 1793// 1794// Provides information about the bootstrap actions associated with a cluster. 1795// 1796// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1797// with awserr.Error's Code and Message methods to get detailed information about 1798// the error. 1799// 1800// See the AWS API reference guide for Amazon Elastic MapReduce's 1801// API operation ListBootstrapActions for usage and error information. 1802// 1803// Returned Error Types: 1804// * InternalServerException 1805// This exception occurs when there is an internal failure in the EMR service. 1806// 1807// * InvalidRequestException 1808// This exception occurs when there is something wrong with user input. 1809// 1810// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/ListBootstrapActions 1811func (c *EMR) ListBootstrapActions(input *ListBootstrapActionsInput) (*ListBootstrapActionsOutput, error) { 1812 req, out := c.ListBootstrapActionsRequest(input) 1813 return out, req.Send() 1814} 1815 1816// ListBootstrapActionsWithContext is the same as ListBootstrapActions with the addition of 1817// the ability to pass a context and additional request options. 1818// 1819// See ListBootstrapActions for details on how to use this API operation. 1820// 1821// The context must be non-nil and will be used for request cancellation. If 1822// the context is nil a panic will occur. In the future the SDK may create 1823// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1824// for more information on using Contexts. 1825func (c *EMR) ListBootstrapActionsWithContext(ctx aws.Context, input *ListBootstrapActionsInput, opts ...request.Option) (*ListBootstrapActionsOutput, error) { 1826 req, out := c.ListBootstrapActionsRequest(input) 1827 req.SetContext(ctx) 1828 req.ApplyOptions(opts...) 1829 return out, req.Send() 1830} 1831 1832// ListBootstrapActionsPages iterates over the pages of a ListBootstrapActions operation, 1833// calling the "fn" function with the response data for each page. To stop 1834// iterating, return false from the fn function. 1835// 1836// See ListBootstrapActions method for more information on how to use this operation. 1837// 1838// Note: This operation can generate multiple requests to a service. 1839// 1840// // Example iterating over at most 3 pages of a ListBootstrapActions operation. 1841// pageNum := 0 1842// err := client.ListBootstrapActionsPages(params, 1843// func(page *emr.ListBootstrapActionsOutput, lastPage bool) bool { 1844// pageNum++ 1845// fmt.Println(page) 1846// return pageNum <= 3 1847// }) 1848// 1849func (c *EMR) ListBootstrapActionsPages(input *ListBootstrapActionsInput, fn func(*ListBootstrapActionsOutput, bool) bool) error { 1850 return c.ListBootstrapActionsPagesWithContext(aws.BackgroundContext(), input, fn) 1851} 1852 1853// ListBootstrapActionsPagesWithContext same as ListBootstrapActionsPages except 1854// it takes a Context and allows setting request options on the pages. 1855// 1856// The context must be non-nil and will be used for request cancellation. If 1857// the context is nil a panic will occur. In the future the SDK may create 1858// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1859// for more information on using Contexts. 1860func (c *EMR) ListBootstrapActionsPagesWithContext(ctx aws.Context, input *ListBootstrapActionsInput, fn func(*ListBootstrapActionsOutput, bool) bool, opts ...request.Option) error { 1861 p := request.Pagination{ 1862 NewRequest: func() (*request.Request, error) { 1863 var inCpy *ListBootstrapActionsInput 1864 if input != nil { 1865 tmp := *input 1866 inCpy = &tmp 1867 } 1868 req, _ := c.ListBootstrapActionsRequest(inCpy) 1869 req.SetContext(ctx) 1870 req.ApplyOptions(opts...) 1871 return req, nil 1872 }, 1873 } 1874 1875 for p.Next() { 1876 if !fn(p.Page().(*ListBootstrapActionsOutput), !p.HasNextPage()) { 1877 break 1878 } 1879 } 1880 1881 return p.Err() 1882} 1883 1884const opListClusters = "ListClusters" 1885 1886// ListClustersRequest generates a "aws/request.Request" representing the 1887// client's request for the ListClusters operation. The "output" return 1888// value will be populated with the request's response once the request completes 1889// successfully. 1890// 1891// Use "Send" method on the returned Request to send the API call to the service. 1892// the "output" return value is not valid until after Send returns without error. 1893// 1894// See ListClusters for more information on using the ListClusters 1895// API call, and error handling. 1896// 1897// This method is useful when you want to inject custom logic or configuration 1898// into the SDK's request lifecycle. Such as custom headers, or retry logic. 1899// 1900// 1901// // Example sending a request using the ListClustersRequest method. 1902// req, resp := client.ListClustersRequest(params) 1903// 1904// err := req.Send() 1905// if err == nil { // resp is now filled 1906// fmt.Println(resp) 1907// } 1908// 1909// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/ListClusters 1910func (c *EMR) ListClustersRequest(input *ListClustersInput) (req *request.Request, output *ListClustersOutput) { 1911 op := &request.Operation{ 1912 Name: opListClusters, 1913 HTTPMethod: "POST", 1914 HTTPPath: "/", 1915 Paginator: &request.Paginator{ 1916 InputTokens: []string{"Marker"}, 1917 OutputTokens: []string{"Marker"}, 1918 LimitToken: "", 1919 TruncationToken: "", 1920 }, 1921 } 1922 1923 if input == nil { 1924 input = &ListClustersInput{} 1925 } 1926 1927 output = &ListClustersOutput{} 1928 req = c.newRequest(op, input, output) 1929 return 1930} 1931 1932// ListClusters API operation for Amazon Elastic MapReduce. 1933// 1934// Provides the status of all clusters visible to this AWS account. Allows you 1935// to filter the list of clusters based on certain criteria; for example, filtering 1936// by cluster creation date and time or by status. This call returns a maximum 1937// of 50 clusters per call, but returns a marker to track the paging of the 1938// cluster list across multiple ListClusters calls. 1939// 1940// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1941// with awserr.Error's Code and Message methods to get detailed information about 1942// the error. 1943// 1944// See the AWS API reference guide for Amazon Elastic MapReduce's 1945// API operation ListClusters for usage and error information. 1946// 1947// Returned Error Types: 1948// * InternalServerException 1949// This exception occurs when there is an internal failure in the EMR service. 1950// 1951// * InvalidRequestException 1952// This exception occurs when there is something wrong with user input. 1953// 1954// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/ListClusters 1955func (c *EMR) ListClusters(input *ListClustersInput) (*ListClustersOutput, error) { 1956 req, out := c.ListClustersRequest(input) 1957 return out, req.Send() 1958} 1959 1960// ListClustersWithContext is the same as ListClusters with the addition of 1961// the ability to pass a context and additional request options. 1962// 1963// See ListClusters for details on how to use this API operation. 1964// 1965// The context must be non-nil and will be used for request cancellation. If 1966// the context is nil a panic will occur. In the future the SDK may create 1967// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1968// for more information on using Contexts. 1969func (c *EMR) ListClustersWithContext(ctx aws.Context, input *ListClustersInput, opts ...request.Option) (*ListClustersOutput, error) { 1970 req, out := c.ListClustersRequest(input) 1971 req.SetContext(ctx) 1972 req.ApplyOptions(opts...) 1973 return out, req.Send() 1974} 1975 1976// ListClustersPages iterates over the pages of a ListClusters operation, 1977// calling the "fn" function with the response data for each page. To stop 1978// iterating, return false from the fn function. 1979// 1980// See ListClusters method for more information on how to use this operation. 1981// 1982// Note: This operation can generate multiple requests to a service. 1983// 1984// // Example iterating over at most 3 pages of a ListClusters operation. 1985// pageNum := 0 1986// err := client.ListClustersPages(params, 1987// func(page *emr.ListClustersOutput, lastPage bool) bool { 1988// pageNum++ 1989// fmt.Println(page) 1990// return pageNum <= 3 1991// }) 1992// 1993func (c *EMR) ListClustersPages(input *ListClustersInput, fn func(*ListClustersOutput, bool) bool) error { 1994 return c.ListClustersPagesWithContext(aws.BackgroundContext(), input, fn) 1995} 1996 1997// ListClustersPagesWithContext same as ListClustersPages except 1998// it takes a Context and allows setting request options on the pages. 1999// 2000// The context must be non-nil and will be used for request cancellation. If 2001// the context is nil a panic will occur. In the future the SDK may create 2002// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2003// for more information on using Contexts. 2004func (c *EMR) ListClustersPagesWithContext(ctx aws.Context, input *ListClustersInput, fn func(*ListClustersOutput, bool) bool, opts ...request.Option) error { 2005 p := request.Pagination{ 2006 NewRequest: func() (*request.Request, error) { 2007 var inCpy *ListClustersInput 2008 if input != nil { 2009 tmp := *input 2010 inCpy = &tmp 2011 } 2012 req, _ := c.ListClustersRequest(inCpy) 2013 req.SetContext(ctx) 2014 req.ApplyOptions(opts...) 2015 return req, nil 2016 }, 2017 } 2018 2019 for p.Next() { 2020 if !fn(p.Page().(*ListClustersOutput), !p.HasNextPage()) { 2021 break 2022 } 2023 } 2024 2025 return p.Err() 2026} 2027 2028const opListInstanceFleets = "ListInstanceFleets" 2029 2030// ListInstanceFleetsRequest generates a "aws/request.Request" representing the 2031// client's request for the ListInstanceFleets operation. The "output" return 2032// value will be populated with the request's response once the request completes 2033// successfully. 2034// 2035// Use "Send" method on the returned Request to send the API call to the service. 2036// the "output" return value is not valid until after Send returns without error. 2037// 2038// See ListInstanceFleets for more information on using the ListInstanceFleets 2039// API call, and error handling. 2040// 2041// This method is useful when you want to inject custom logic or configuration 2042// into the SDK's request lifecycle. Such as custom headers, or retry logic. 2043// 2044// 2045// // Example sending a request using the ListInstanceFleetsRequest method. 2046// req, resp := client.ListInstanceFleetsRequest(params) 2047// 2048// err := req.Send() 2049// if err == nil { // resp is now filled 2050// fmt.Println(resp) 2051// } 2052// 2053// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/ListInstanceFleets 2054func (c *EMR) ListInstanceFleetsRequest(input *ListInstanceFleetsInput) (req *request.Request, output *ListInstanceFleetsOutput) { 2055 op := &request.Operation{ 2056 Name: opListInstanceFleets, 2057 HTTPMethod: "POST", 2058 HTTPPath: "/", 2059 Paginator: &request.Paginator{ 2060 InputTokens: []string{"Marker"}, 2061 OutputTokens: []string{"Marker"}, 2062 LimitToken: "", 2063 TruncationToken: "", 2064 }, 2065 } 2066 2067 if input == nil { 2068 input = &ListInstanceFleetsInput{} 2069 } 2070 2071 output = &ListInstanceFleetsOutput{} 2072 req = c.newRequest(op, input, output) 2073 return 2074} 2075 2076// ListInstanceFleets API operation for Amazon Elastic MapReduce. 2077// 2078// Lists all available details about the instance fleets in a cluster. 2079// 2080// The instance fleet configuration is available only in Amazon EMR versions 2081// 4.8.0 and later, excluding 5.0.x versions. 2082// 2083// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 2084// with awserr.Error's Code and Message methods to get detailed information about 2085// the error. 2086// 2087// See the AWS API reference guide for Amazon Elastic MapReduce's 2088// API operation ListInstanceFleets for usage and error information. 2089// 2090// Returned Error Types: 2091// * InternalServerException 2092// This exception occurs when there is an internal failure in the EMR service. 2093// 2094// * InvalidRequestException 2095// This exception occurs when there is something wrong with user input. 2096// 2097// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/ListInstanceFleets 2098func (c *EMR) ListInstanceFleets(input *ListInstanceFleetsInput) (*ListInstanceFleetsOutput, error) { 2099 req, out := c.ListInstanceFleetsRequest(input) 2100 return out, req.Send() 2101} 2102 2103// ListInstanceFleetsWithContext is the same as ListInstanceFleets with the addition of 2104// the ability to pass a context and additional request options. 2105// 2106// See ListInstanceFleets for details on how to use this API operation. 2107// 2108// The context must be non-nil and will be used for request cancellation. If 2109// the context is nil a panic will occur. In the future the SDK may create 2110// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2111// for more information on using Contexts. 2112func (c *EMR) ListInstanceFleetsWithContext(ctx aws.Context, input *ListInstanceFleetsInput, opts ...request.Option) (*ListInstanceFleetsOutput, error) { 2113 req, out := c.ListInstanceFleetsRequest(input) 2114 req.SetContext(ctx) 2115 req.ApplyOptions(opts...) 2116 return out, req.Send() 2117} 2118 2119// ListInstanceFleetsPages iterates over the pages of a ListInstanceFleets operation, 2120// calling the "fn" function with the response data for each page. To stop 2121// iterating, return false from the fn function. 2122// 2123// See ListInstanceFleets method for more information on how to use this operation. 2124// 2125// Note: This operation can generate multiple requests to a service. 2126// 2127// // Example iterating over at most 3 pages of a ListInstanceFleets operation. 2128// pageNum := 0 2129// err := client.ListInstanceFleetsPages(params, 2130// func(page *emr.ListInstanceFleetsOutput, lastPage bool) bool { 2131// pageNum++ 2132// fmt.Println(page) 2133// return pageNum <= 3 2134// }) 2135// 2136func (c *EMR) ListInstanceFleetsPages(input *ListInstanceFleetsInput, fn func(*ListInstanceFleetsOutput, bool) bool) error { 2137 return c.ListInstanceFleetsPagesWithContext(aws.BackgroundContext(), input, fn) 2138} 2139 2140// ListInstanceFleetsPagesWithContext same as ListInstanceFleetsPages except 2141// it takes a Context and allows setting request options on the pages. 2142// 2143// The context must be non-nil and will be used for request cancellation. If 2144// the context is nil a panic will occur. In the future the SDK may create 2145// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2146// for more information on using Contexts. 2147func (c *EMR) ListInstanceFleetsPagesWithContext(ctx aws.Context, input *ListInstanceFleetsInput, fn func(*ListInstanceFleetsOutput, bool) bool, opts ...request.Option) error { 2148 p := request.Pagination{ 2149 NewRequest: func() (*request.Request, error) { 2150 var inCpy *ListInstanceFleetsInput 2151 if input != nil { 2152 tmp := *input 2153 inCpy = &tmp 2154 } 2155 req, _ := c.ListInstanceFleetsRequest(inCpy) 2156 req.SetContext(ctx) 2157 req.ApplyOptions(opts...) 2158 return req, nil 2159 }, 2160 } 2161 2162 for p.Next() { 2163 if !fn(p.Page().(*ListInstanceFleetsOutput), !p.HasNextPage()) { 2164 break 2165 } 2166 } 2167 2168 return p.Err() 2169} 2170 2171const opListInstanceGroups = "ListInstanceGroups" 2172 2173// ListInstanceGroupsRequest generates a "aws/request.Request" representing the 2174// client's request for the ListInstanceGroups operation. The "output" return 2175// value will be populated with the request's response once the request completes 2176// successfully. 2177// 2178// Use "Send" method on the returned Request to send the API call to the service. 2179// the "output" return value is not valid until after Send returns without error. 2180// 2181// See ListInstanceGroups for more information on using the ListInstanceGroups 2182// API call, and error handling. 2183// 2184// This method is useful when you want to inject custom logic or configuration 2185// into the SDK's request lifecycle. Such as custom headers, or retry logic. 2186// 2187// 2188// // Example sending a request using the ListInstanceGroupsRequest method. 2189// req, resp := client.ListInstanceGroupsRequest(params) 2190// 2191// err := req.Send() 2192// if err == nil { // resp is now filled 2193// fmt.Println(resp) 2194// } 2195// 2196// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/ListInstanceGroups 2197func (c *EMR) ListInstanceGroupsRequest(input *ListInstanceGroupsInput) (req *request.Request, output *ListInstanceGroupsOutput) { 2198 op := &request.Operation{ 2199 Name: opListInstanceGroups, 2200 HTTPMethod: "POST", 2201 HTTPPath: "/", 2202 Paginator: &request.Paginator{ 2203 InputTokens: []string{"Marker"}, 2204 OutputTokens: []string{"Marker"}, 2205 LimitToken: "", 2206 TruncationToken: "", 2207 }, 2208 } 2209 2210 if input == nil { 2211 input = &ListInstanceGroupsInput{} 2212 } 2213 2214 output = &ListInstanceGroupsOutput{} 2215 req = c.newRequest(op, input, output) 2216 return 2217} 2218 2219// ListInstanceGroups API operation for Amazon Elastic MapReduce. 2220// 2221// Provides all available details about the instance groups in a cluster. 2222// 2223// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 2224// with awserr.Error's Code and Message methods to get detailed information about 2225// the error. 2226// 2227// See the AWS API reference guide for Amazon Elastic MapReduce's 2228// API operation ListInstanceGroups for usage and error information. 2229// 2230// Returned Error Types: 2231// * InternalServerException 2232// This exception occurs when there is an internal failure in the EMR service. 2233// 2234// * InvalidRequestException 2235// This exception occurs when there is something wrong with user input. 2236// 2237// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/ListInstanceGroups 2238func (c *EMR) ListInstanceGroups(input *ListInstanceGroupsInput) (*ListInstanceGroupsOutput, error) { 2239 req, out := c.ListInstanceGroupsRequest(input) 2240 return out, req.Send() 2241} 2242 2243// ListInstanceGroupsWithContext is the same as ListInstanceGroups with the addition of 2244// the ability to pass a context and additional request options. 2245// 2246// See ListInstanceGroups for details on how to use this API operation. 2247// 2248// The context must be non-nil and will be used for request cancellation. If 2249// the context is nil a panic will occur. In the future the SDK may create 2250// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2251// for more information on using Contexts. 2252func (c *EMR) ListInstanceGroupsWithContext(ctx aws.Context, input *ListInstanceGroupsInput, opts ...request.Option) (*ListInstanceGroupsOutput, error) { 2253 req, out := c.ListInstanceGroupsRequest(input) 2254 req.SetContext(ctx) 2255 req.ApplyOptions(opts...) 2256 return out, req.Send() 2257} 2258 2259// ListInstanceGroupsPages iterates over the pages of a ListInstanceGroups operation, 2260// calling the "fn" function with the response data for each page. To stop 2261// iterating, return false from the fn function. 2262// 2263// See ListInstanceGroups method for more information on how to use this operation. 2264// 2265// Note: This operation can generate multiple requests to a service. 2266// 2267// // Example iterating over at most 3 pages of a ListInstanceGroups operation. 2268// pageNum := 0 2269// err := client.ListInstanceGroupsPages(params, 2270// func(page *emr.ListInstanceGroupsOutput, lastPage bool) bool { 2271// pageNum++ 2272// fmt.Println(page) 2273// return pageNum <= 3 2274// }) 2275// 2276func (c *EMR) ListInstanceGroupsPages(input *ListInstanceGroupsInput, fn func(*ListInstanceGroupsOutput, bool) bool) error { 2277 return c.ListInstanceGroupsPagesWithContext(aws.BackgroundContext(), input, fn) 2278} 2279 2280// ListInstanceGroupsPagesWithContext same as ListInstanceGroupsPages except 2281// it takes a Context and allows setting request options on the pages. 2282// 2283// The context must be non-nil and will be used for request cancellation. If 2284// the context is nil a panic will occur. In the future the SDK may create 2285// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2286// for more information on using Contexts. 2287func (c *EMR) ListInstanceGroupsPagesWithContext(ctx aws.Context, input *ListInstanceGroupsInput, fn func(*ListInstanceGroupsOutput, bool) bool, opts ...request.Option) error { 2288 p := request.Pagination{ 2289 NewRequest: func() (*request.Request, error) { 2290 var inCpy *ListInstanceGroupsInput 2291 if input != nil { 2292 tmp := *input 2293 inCpy = &tmp 2294 } 2295 req, _ := c.ListInstanceGroupsRequest(inCpy) 2296 req.SetContext(ctx) 2297 req.ApplyOptions(opts...) 2298 return req, nil 2299 }, 2300 } 2301 2302 for p.Next() { 2303 if !fn(p.Page().(*ListInstanceGroupsOutput), !p.HasNextPage()) { 2304 break 2305 } 2306 } 2307 2308 return p.Err() 2309} 2310 2311const opListInstances = "ListInstances" 2312 2313// ListInstancesRequest generates a "aws/request.Request" representing the 2314// client's request for the ListInstances operation. The "output" return 2315// value will be populated with the request's response once the request completes 2316// successfully. 2317// 2318// Use "Send" method on the returned Request to send the API call to the service. 2319// the "output" return value is not valid until after Send returns without error. 2320// 2321// See ListInstances for more information on using the ListInstances 2322// API call, and error handling. 2323// 2324// This method is useful when you want to inject custom logic or configuration 2325// into the SDK's request lifecycle. Such as custom headers, or retry logic. 2326// 2327// 2328// // Example sending a request using the ListInstancesRequest method. 2329// req, resp := client.ListInstancesRequest(params) 2330// 2331// err := req.Send() 2332// if err == nil { // resp is now filled 2333// fmt.Println(resp) 2334// } 2335// 2336// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/ListInstances 2337func (c *EMR) ListInstancesRequest(input *ListInstancesInput) (req *request.Request, output *ListInstancesOutput) { 2338 op := &request.Operation{ 2339 Name: opListInstances, 2340 HTTPMethod: "POST", 2341 HTTPPath: "/", 2342 Paginator: &request.Paginator{ 2343 InputTokens: []string{"Marker"}, 2344 OutputTokens: []string{"Marker"}, 2345 LimitToken: "", 2346 TruncationToken: "", 2347 }, 2348 } 2349 2350 if input == nil { 2351 input = &ListInstancesInput{} 2352 } 2353 2354 output = &ListInstancesOutput{} 2355 req = c.newRequest(op, input, output) 2356 return 2357} 2358 2359// ListInstances API operation for Amazon Elastic MapReduce. 2360// 2361// Provides information for all active EC2 instances and EC2 instances terminated 2362// in the last 30 days, up to a maximum of 2,000. EC2 instances in any of the 2363// following states are considered active: AWAITING_FULFILLMENT, PROVISIONING, 2364// BOOTSTRAPPING, RUNNING. 2365// 2366// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 2367// with awserr.Error's Code and Message methods to get detailed information about 2368// the error. 2369// 2370// See the AWS API reference guide for Amazon Elastic MapReduce's 2371// API operation ListInstances for usage and error information. 2372// 2373// Returned Error Types: 2374// * InternalServerException 2375// This exception occurs when there is an internal failure in the EMR service. 2376// 2377// * InvalidRequestException 2378// This exception occurs when there is something wrong with user input. 2379// 2380// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/ListInstances 2381func (c *EMR) ListInstances(input *ListInstancesInput) (*ListInstancesOutput, error) { 2382 req, out := c.ListInstancesRequest(input) 2383 return out, req.Send() 2384} 2385 2386// ListInstancesWithContext is the same as ListInstances with the addition of 2387// the ability to pass a context and additional request options. 2388// 2389// See ListInstances for details on how to use this API operation. 2390// 2391// The context must be non-nil and will be used for request cancellation. If 2392// the context is nil a panic will occur. In the future the SDK may create 2393// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2394// for more information on using Contexts. 2395func (c *EMR) ListInstancesWithContext(ctx aws.Context, input *ListInstancesInput, opts ...request.Option) (*ListInstancesOutput, error) { 2396 req, out := c.ListInstancesRequest(input) 2397 req.SetContext(ctx) 2398 req.ApplyOptions(opts...) 2399 return out, req.Send() 2400} 2401 2402// ListInstancesPages iterates over the pages of a ListInstances operation, 2403// calling the "fn" function with the response data for each page. To stop 2404// iterating, return false from the fn function. 2405// 2406// See ListInstances method for more information on how to use this operation. 2407// 2408// Note: This operation can generate multiple requests to a service. 2409// 2410// // Example iterating over at most 3 pages of a ListInstances operation. 2411// pageNum := 0 2412// err := client.ListInstancesPages(params, 2413// func(page *emr.ListInstancesOutput, lastPage bool) bool { 2414// pageNum++ 2415// fmt.Println(page) 2416// return pageNum <= 3 2417// }) 2418// 2419func (c *EMR) ListInstancesPages(input *ListInstancesInput, fn func(*ListInstancesOutput, bool) bool) error { 2420 return c.ListInstancesPagesWithContext(aws.BackgroundContext(), input, fn) 2421} 2422 2423// ListInstancesPagesWithContext same as ListInstancesPages except 2424// it takes a Context and allows setting request options on the pages. 2425// 2426// The context must be non-nil and will be used for request cancellation. If 2427// the context is nil a panic will occur. In the future the SDK may create 2428// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2429// for more information on using Contexts. 2430func (c *EMR) ListInstancesPagesWithContext(ctx aws.Context, input *ListInstancesInput, fn func(*ListInstancesOutput, bool) bool, opts ...request.Option) error { 2431 p := request.Pagination{ 2432 NewRequest: func() (*request.Request, error) { 2433 var inCpy *ListInstancesInput 2434 if input != nil { 2435 tmp := *input 2436 inCpy = &tmp 2437 } 2438 req, _ := c.ListInstancesRequest(inCpy) 2439 req.SetContext(ctx) 2440 req.ApplyOptions(opts...) 2441 return req, nil 2442 }, 2443 } 2444 2445 for p.Next() { 2446 if !fn(p.Page().(*ListInstancesOutput), !p.HasNextPage()) { 2447 break 2448 } 2449 } 2450 2451 return p.Err() 2452} 2453 2454const opListNotebookExecutions = "ListNotebookExecutions" 2455 2456// ListNotebookExecutionsRequest generates a "aws/request.Request" representing the 2457// client's request for the ListNotebookExecutions operation. The "output" return 2458// value will be populated with the request's response once the request completes 2459// successfully. 2460// 2461// Use "Send" method on the returned Request to send the API call to the service. 2462// the "output" return value is not valid until after Send returns without error. 2463// 2464// See ListNotebookExecutions for more information on using the ListNotebookExecutions 2465// API call, and error handling. 2466// 2467// This method is useful when you want to inject custom logic or configuration 2468// into the SDK's request lifecycle. Such as custom headers, or retry logic. 2469// 2470// 2471// // Example sending a request using the ListNotebookExecutionsRequest method. 2472// req, resp := client.ListNotebookExecutionsRequest(params) 2473// 2474// err := req.Send() 2475// if err == nil { // resp is now filled 2476// fmt.Println(resp) 2477// } 2478// 2479// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/ListNotebookExecutions 2480func (c *EMR) ListNotebookExecutionsRequest(input *ListNotebookExecutionsInput) (req *request.Request, output *ListNotebookExecutionsOutput) { 2481 op := &request.Operation{ 2482 Name: opListNotebookExecutions, 2483 HTTPMethod: "POST", 2484 HTTPPath: "/", 2485 Paginator: &request.Paginator{ 2486 InputTokens: []string{"Marker"}, 2487 OutputTokens: []string{"Marker"}, 2488 LimitToken: "", 2489 TruncationToken: "", 2490 }, 2491 } 2492 2493 if input == nil { 2494 input = &ListNotebookExecutionsInput{} 2495 } 2496 2497 output = &ListNotebookExecutionsOutput{} 2498 req = c.newRequest(op, input, output) 2499 return 2500} 2501 2502// ListNotebookExecutions API operation for Amazon Elastic MapReduce. 2503// 2504// Provides summaries of all notebook executions. You can filter the list based 2505// on multiple criteria such as status, time range, and editor id. Returns a 2506// maximum of 50 notebook executions and a marker to track the paging of a longer 2507// notebook execution list across multiple ListNotebookExecution calls. 2508// 2509// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 2510// with awserr.Error's Code and Message methods to get detailed information about 2511// the error. 2512// 2513// See the AWS API reference guide for Amazon Elastic MapReduce's 2514// API operation ListNotebookExecutions for usage and error information. 2515// 2516// Returned Error Types: 2517// * InternalServerError 2518// Indicates that an error occurred while processing the request and that the 2519// request was not completed. 2520// 2521// * InvalidRequestException 2522// This exception occurs when there is something wrong with user input. 2523// 2524// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/ListNotebookExecutions 2525func (c *EMR) ListNotebookExecutions(input *ListNotebookExecutionsInput) (*ListNotebookExecutionsOutput, error) { 2526 req, out := c.ListNotebookExecutionsRequest(input) 2527 return out, req.Send() 2528} 2529 2530// ListNotebookExecutionsWithContext is the same as ListNotebookExecutions with the addition of 2531// the ability to pass a context and additional request options. 2532// 2533// See ListNotebookExecutions for details on how to use this API operation. 2534// 2535// The context must be non-nil and will be used for request cancellation. If 2536// the context is nil a panic will occur. In the future the SDK may create 2537// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2538// for more information on using Contexts. 2539func (c *EMR) ListNotebookExecutionsWithContext(ctx aws.Context, input *ListNotebookExecutionsInput, opts ...request.Option) (*ListNotebookExecutionsOutput, error) { 2540 req, out := c.ListNotebookExecutionsRequest(input) 2541 req.SetContext(ctx) 2542 req.ApplyOptions(opts...) 2543 return out, req.Send() 2544} 2545 2546// ListNotebookExecutionsPages iterates over the pages of a ListNotebookExecutions operation, 2547// calling the "fn" function with the response data for each page. To stop 2548// iterating, return false from the fn function. 2549// 2550// See ListNotebookExecutions method for more information on how to use this operation. 2551// 2552// Note: This operation can generate multiple requests to a service. 2553// 2554// // Example iterating over at most 3 pages of a ListNotebookExecutions operation. 2555// pageNum := 0 2556// err := client.ListNotebookExecutionsPages(params, 2557// func(page *emr.ListNotebookExecutionsOutput, lastPage bool) bool { 2558// pageNum++ 2559// fmt.Println(page) 2560// return pageNum <= 3 2561// }) 2562// 2563func (c *EMR) ListNotebookExecutionsPages(input *ListNotebookExecutionsInput, fn func(*ListNotebookExecutionsOutput, bool) bool) error { 2564 return c.ListNotebookExecutionsPagesWithContext(aws.BackgroundContext(), input, fn) 2565} 2566 2567// ListNotebookExecutionsPagesWithContext same as ListNotebookExecutionsPages except 2568// it takes a Context and allows setting request options on the pages. 2569// 2570// The context must be non-nil and will be used for request cancellation. If 2571// the context is nil a panic will occur. In the future the SDK may create 2572// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2573// for more information on using Contexts. 2574func (c *EMR) ListNotebookExecutionsPagesWithContext(ctx aws.Context, input *ListNotebookExecutionsInput, fn func(*ListNotebookExecutionsOutput, bool) bool, opts ...request.Option) error { 2575 p := request.Pagination{ 2576 NewRequest: func() (*request.Request, error) { 2577 var inCpy *ListNotebookExecutionsInput 2578 if input != nil { 2579 tmp := *input 2580 inCpy = &tmp 2581 } 2582 req, _ := c.ListNotebookExecutionsRequest(inCpy) 2583 req.SetContext(ctx) 2584 req.ApplyOptions(opts...) 2585 return req, nil 2586 }, 2587 } 2588 2589 for p.Next() { 2590 if !fn(p.Page().(*ListNotebookExecutionsOutput), !p.HasNextPage()) { 2591 break 2592 } 2593 } 2594 2595 return p.Err() 2596} 2597 2598const opListSecurityConfigurations = "ListSecurityConfigurations" 2599 2600// ListSecurityConfigurationsRequest generates a "aws/request.Request" representing the 2601// client's request for the ListSecurityConfigurations operation. The "output" return 2602// value will be populated with the request's response once the request completes 2603// successfully. 2604// 2605// Use "Send" method on the returned Request to send the API call to the service. 2606// the "output" return value is not valid until after Send returns without error. 2607// 2608// See ListSecurityConfigurations for more information on using the ListSecurityConfigurations 2609// API call, and error handling. 2610// 2611// This method is useful when you want to inject custom logic or configuration 2612// into the SDK's request lifecycle. Such as custom headers, or retry logic. 2613// 2614// 2615// // Example sending a request using the ListSecurityConfigurationsRequest method. 2616// req, resp := client.ListSecurityConfigurationsRequest(params) 2617// 2618// err := req.Send() 2619// if err == nil { // resp is now filled 2620// fmt.Println(resp) 2621// } 2622// 2623// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/ListSecurityConfigurations 2624func (c *EMR) ListSecurityConfigurationsRequest(input *ListSecurityConfigurationsInput) (req *request.Request, output *ListSecurityConfigurationsOutput) { 2625 op := &request.Operation{ 2626 Name: opListSecurityConfigurations, 2627 HTTPMethod: "POST", 2628 HTTPPath: "/", 2629 Paginator: &request.Paginator{ 2630 InputTokens: []string{"Marker"}, 2631 OutputTokens: []string{"Marker"}, 2632 LimitToken: "", 2633 TruncationToken: "", 2634 }, 2635 } 2636 2637 if input == nil { 2638 input = &ListSecurityConfigurationsInput{} 2639 } 2640 2641 output = &ListSecurityConfigurationsOutput{} 2642 req = c.newRequest(op, input, output) 2643 return 2644} 2645 2646// ListSecurityConfigurations API operation for Amazon Elastic MapReduce. 2647// 2648// Lists all the security configurations visible to this account, providing 2649// their creation dates and times, and their names. This call returns a maximum 2650// of 50 clusters per call, but returns a marker to track the paging of the 2651// cluster list across multiple ListSecurityConfigurations calls. 2652// 2653// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 2654// with awserr.Error's Code and Message methods to get detailed information about 2655// the error. 2656// 2657// See the AWS API reference guide for Amazon Elastic MapReduce's 2658// API operation ListSecurityConfigurations for usage and error information. 2659// 2660// Returned Error Types: 2661// * InternalServerException 2662// This exception occurs when there is an internal failure in the EMR service. 2663// 2664// * InvalidRequestException 2665// This exception occurs when there is something wrong with user input. 2666// 2667// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/ListSecurityConfigurations 2668func (c *EMR) ListSecurityConfigurations(input *ListSecurityConfigurationsInput) (*ListSecurityConfigurationsOutput, error) { 2669 req, out := c.ListSecurityConfigurationsRequest(input) 2670 return out, req.Send() 2671} 2672 2673// ListSecurityConfigurationsWithContext is the same as ListSecurityConfigurations with the addition of 2674// the ability to pass a context and additional request options. 2675// 2676// See ListSecurityConfigurations for details on how to use this API operation. 2677// 2678// The context must be non-nil and will be used for request cancellation. If 2679// the context is nil a panic will occur. In the future the SDK may create 2680// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2681// for more information on using Contexts. 2682func (c *EMR) ListSecurityConfigurationsWithContext(ctx aws.Context, input *ListSecurityConfigurationsInput, opts ...request.Option) (*ListSecurityConfigurationsOutput, error) { 2683 req, out := c.ListSecurityConfigurationsRequest(input) 2684 req.SetContext(ctx) 2685 req.ApplyOptions(opts...) 2686 return out, req.Send() 2687} 2688 2689// ListSecurityConfigurationsPages iterates over the pages of a ListSecurityConfigurations operation, 2690// calling the "fn" function with the response data for each page. To stop 2691// iterating, return false from the fn function. 2692// 2693// See ListSecurityConfigurations method for more information on how to use this operation. 2694// 2695// Note: This operation can generate multiple requests to a service. 2696// 2697// // Example iterating over at most 3 pages of a ListSecurityConfigurations operation. 2698// pageNum := 0 2699// err := client.ListSecurityConfigurationsPages(params, 2700// func(page *emr.ListSecurityConfigurationsOutput, lastPage bool) bool { 2701// pageNum++ 2702// fmt.Println(page) 2703// return pageNum <= 3 2704// }) 2705// 2706func (c *EMR) ListSecurityConfigurationsPages(input *ListSecurityConfigurationsInput, fn func(*ListSecurityConfigurationsOutput, bool) bool) error { 2707 return c.ListSecurityConfigurationsPagesWithContext(aws.BackgroundContext(), input, fn) 2708} 2709 2710// ListSecurityConfigurationsPagesWithContext same as ListSecurityConfigurationsPages except 2711// it takes a Context and allows setting request options on the pages. 2712// 2713// The context must be non-nil and will be used for request cancellation. If 2714// the context is nil a panic will occur. In the future the SDK may create 2715// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2716// for more information on using Contexts. 2717func (c *EMR) ListSecurityConfigurationsPagesWithContext(ctx aws.Context, input *ListSecurityConfigurationsInput, fn func(*ListSecurityConfigurationsOutput, bool) bool, opts ...request.Option) error { 2718 p := request.Pagination{ 2719 NewRequest: func() (*request.Request, error) { 2720 var inCpy *ListSecurityConfigurationsInput 2721 if input != nil { 2722 tmp := *input 2723 inCpy = &tmp 2724 } 2725 req, _ := c.ListSecurityConfigurationsRequest(inCpy) 2726 req.SetContext(ctx) 2727 req.ApplyOptions(opts...) 2728 return req, nil 2729 }, 2730 } 2731 2732 for p.Next() { 2733 if !fn(p.Page().(*ListSecurityConfigurationsOutput), !p.HasNextPage()) { 2734 break 2735 } 2736 } 2737 2738 return p.Err() 2739} 2740 2741const opListSteps = "ListSteps" 2742 2743// ListStepsRequest generates a "aws/request.Request" representing the 2744// client's request for the ListSteps operation. The "output" return 2745// value will be populated with the request's response once the request completes 2746// successfully. 2747// 2748// Use "Send" method on the returned Request to send the API call to the service. 2749// the "output" return value is not valid until after Send returns without error. 2750// 2751// See ListSteps for more information on using the ListSteps 2752// API call, and error handling. 2753// 2754// This method is useful when you want to inject custom logic or configuration 2755// into the SDK's request lifecycle. Such as custom headers, or retry logic. 2756// 2757// 2758// // Example sending a request using the ListStepsRequest method. 2759// req, resp := client.ListStepsRequest(params) 2760// 2761// err := req.Send() 2762// if err == nil { // resp is now filled 2763// fmt.Println(resp) 2764// } 2765// 2766// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/ListSteps 2767func (c *EMR) ListStepsRequest(input *ListStepsInput) (req *request.Request, output *ListStepsOutput) { 2768 op := &request.Operation{ 2769 Name: opListSteps, 2770 HTTPMethod: "POST", 2771 HTTPPath: "/", 2772 Paginator: &request.Paginator{ 2773 InputTokens: []string{"Marker"}, 2774 OutputTokens: []string{"Marker"}, 2775 LimitToken: "", 2776 TruncationToken: "", 2777 }, 2778 } 2779 2780 if input == nil { 2781 input = &ListStepsInput{} 2782 } 2783 2784 output = &ListStepsOutput{} 2785 req = c.newRequest(op, input, output) 2786 return 2787} 2788 2789// ListSteps API operation for Amazon Elastic MapReduce. 2790// 2791// Provides a list of steps for the cluster in reverse order unless you specify 2792// stepIds with the request of filter by StepStates. You can specify a maximum 2793// of ten stepIDs. 2794// 2795// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 2796// with awserr.Error's Code and Message methods to get detailed information about 2797// the error. 2798// 2799// See the AWS API reference guide for Amazon Elastic MapReduce's 2800// API operation ListSteps for usage and error information. 2801// 2802// Returned Error Types: 2803// * InternalServerException 2804// This exception occurs when there is an internal failure in the EMR service. 2805// 2806// * InvalidRequestException 2807// This exception occurs when there is something wrong with user input. 2808// 2809// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/ListSteps 2810func (c *EMR) ListSteps(input *ListStepsInput) (*ListStepsOutput, error) { 2811 req, out := c.ListStepsRequest(input) 2812 return out, req.Send() 2813} 2814 2815// ListStepsWithContext is the same as ListSteps with the addition of 2816// the ability to pass a context and additional request options. 2817// 2818// See ListSteps for details on how to use this API operation. 2819// 2820// The context must be non-nil and will be used for request cancellation. If 2821// the context is nil a panic will occur. In the future the SDK may create 2822// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2823// for more information on using Contexts. 2824func (c *EMR) ListStepsWithContext(ctx aws.Context, input *ListStepsInput, opts ...request.Option) (*ListStepsOutput, error) { 2825 req, out := c.ListStepsRequest(input) 2826 req.SetContext(ctx) 2827 req.ApplyOptions(opts...) 2828 return out, req.Send() 2829} 2830 2831// ListStepsPages iterates over the pages of a ListSteps operation, 2832// calling the "fn" function with the response data for each page. To stop 2833// iterating, return false from the fn function. 2834// 2835// See ListSteps method for more information on how to use this operation. 2836// 2837// Note: This operation can generate multiple requests to a service. 2838// 2839// // Example iterating over at most 3 pages of a ListSteps operation. 2840// pageNum := 0 2841// err := client.ListStepsPages(params, 2842// func(page *emr.ListStepsOutput, lastPage bool) bool { 2843// pageNum++ 2844// fmt.Println(page) 2845// return pageNum <= 3 2846// }) 2847// 2848func (c *EMR) ListStepsPages(input *ListStepsInput, fn func(*ListStepsOutput, bool) bool) error { 2849 return c.ListStepsPagesWithContext(aws.BackgroundContext(), input, fn) 2850} 2851 2852// ListStepsPagesWithContext same as ListStepsPages except 2853// it takes a Context and allows setting request options on the pages. 2854// 2855// The context must be non-nil and will be used for request cancellation. If 2856// the context is nil a panic will occur. In the future the SDK may create 2857// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2858// for more information on using Contexts. 2859func (c *EMR) ListStepsPagesWithContext(ctx aws.Context, input *ListStepsInput, fn func(*ListStepsOutput, bool) bool, opts ...request.Option) error { 2860 p := request.Pagination{ 2861 NewRequest: func() (*request.Request, error) { 2862 var inCpy *ListStepsInput 2863 if input != nil { 2864 tmp := *input 2865 inCpy = &tmp 2866 } 2867 req, _ := c.ListStepsRequest(inCpy) 2868 req.SetContext(ctx) 2869 req.ApplyOptions(opts...) 2870 return req, nil 2871 }, 2872 } 2873 2874 for p.Next() { 2875 if !fn(p.Page().(*ListStepsOutput), !p.HasNextPage()) { 2876 break 2877 } 2878 } 2879 2880 return p.Err() 2881} 2882 2883const opListStudioSessionMappings = "ListStudioSessionMappings" 2884 2885// ListStudioSessionMappingsRequest generates a "aws/request.Request" representing the 2886// client's request for the ListStudioSessionMappings operation. The "output" return 2887// value will be populated with the request's response once the request completes 2888// successfully. 2889// 2890// Use "Send" method on the returned Request to send the API call to the service. 2891// the "output" return value is not valid until after Send returns without error. 2892// 2893// See ListStudioSessionMappings for more information on using the ListStudioSessionMappings 2894// API call, and error handling. 2895// 2896// This method is useful when you want to inject custom logic or configuration 2897// into the SDK's request lifecycle. Such as custom headers, or retry logic. 2898// 2899// 2900// // Example sending a request using the ListStudioSessionMappingsRequest method. 2901// req, resp := client.ListStudioSessionMappingsRequest(params) 2902// 2903// err := req.Send() 2904// if err == nil { // resp is now filled 2905// fmt.Println(resp) 2906// } 2907// 2908// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/ListStudioSessionMappings 2909func (c *EMR) ListStudioSessionMappingsRequest(input *ListStudioSessionMappingsInput) (req *request.Request, output *ListStudioSessionMappingsOutput) { 2910 op := &request.Operation{ 2911 Name: opListStudioSessionMappings, 2912 HTTPMethod: "POST", 2913 HTTPPath: "/", 2914 Paginator: &request.Paginator{ 2915 InputTokens: []string{"Marker"}, 2916 OutputTokens: []string{"Marker"}, 2917 LimitToken: "", 2918 TruncationToken: "", 2919 }, 2920 } 2921 2922 if input == nil { 2923 input = &ListStudioSessionMappingsInput{} 2924 } 2925 2926 output = &ListStudioSessionMappingsOutput{} 2927 req = c.newRequest(op, input, output) 2928 return 2929} 2930 2931// ListStudioSessionMappings API operation for Amazon Elastic MapReduce. 2932// 2933// 2934// The Amazon EMR Studio APIs are in preview release for Amazon EMR and are 2935// subject to change. 2936// 2937// Returns a list of all user or group session mappings for the EMR Studio specified 2938// by StudioId. 2939// 2940// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 2941// with awserr.Error's Code and Message methods to get detailed information about 2942// the error. 2943// 2944// See the AWS API reference guide for Amazon Elastic MapReduce's 2945// API operation ListStudioSessionMappings for usage and error information. 2946// 2947// Returned Error Types: 2948// * InternalServerError 2949// Indicates that an error occurred while processing the request and that the 2950// request was not completed. 2951// 2952// * InvalidRequestException 2953// This exception occurs when there is something wrong with user input. 2954// 2955// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/ListStudioSessionMappings 2956func (c *EMR) ListStudioSessionMappings(input *ListStudioSessionMappingsInput) (*ListStudioSessionMappingsOutput, error) { 2957 req, out := c.ListStudioSessionMappingsRequest(input) 2958 return out, req.Send() 2959} 2960 2961// ListStudioSessionMappingsWithContext is the same as ListStudioSessionMappings with the addition of 2962// the ability to pass a context and additional request options. 2963// 2964// See ListStudioSessionMappings for details on how to use this API operation. 2965// 2966// The context must be non-nil and will be used for request cancellation. If 2967// the context is nil a panic will occur. In the future the SDK may create 2968// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2969// for more information on using Contexts. 2970func (c *EMR) ListStudioSessionMappingsWithContext(ctx aws.Context, input *ListStudioSessionMappingsInput, opts ...request.Option) (*ListStudioSessionMappingsOutput, error) { 2971 req, out := c.ListStudioSessionMappingsRequest(input) 2972 req.SetContext(ctx) 2973 req.ApplyOptions(opts...) 2974 return out, req.Send() 2975} 2976 2977// ListStudioSessionMappingsPages iterates over the pages of a ListStudioSessionMappings operation, 2978// calling the "fn" function with the response data for each page. To stop 2979// iterating, return false from the fn function. 2980// 2981// See ListStudioSessionMappings method for more information on how to use this operation. 2982// 2983// Note: This operation can generate multiple requests to a service. 2984// 2985// // Example iterating over at most 3 pages of a ListStudioSessionMappings operation. 2986// pageNum := 0 2987// err := client.ListStudioSessionMappingsPages(params, 2988// func(page *emr.ListStudioSessionMappingsOutput, lastPage bool) bool { 2989// pageNum++ 2990// fmt.Println(page) 2991// return pageNum <= 3 2992// }) 2993// 2994func (c *EMR) ListStudioSessionMappingsPages(input *ListStudioSessionMappingsInput, fn func(*ListStudioSessionMappingsOutput, bool) bool) error { 2995 return c.ListStudioSessionMappingsPagesWithContext(aws.BackgroundContext(), input, fn) 2996} 2997 2998// ListStudioSessionMappingsPagesWithContext same as ListStudioSessionMappingsPages except 2999// it takes a Context and allows setting request options on the pages. 3000// 3001// The context must be non-nil and will be used for request cancellation. If 3002// the context is nil a panic will occur. In the future the SDK may create 3003// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 3004// for more information on using Contexts. 3005func (c *EMR) ListStudioSessionMappingsPagesWithContext(ctx aws.Context, input *ListStudioSessionMappingsInput, fn func(*ListStudioSessionMappingsOutput, bool) bool, opts ...request.Option) error { 3006 p := request.Pagination{ 3007 NewRequest: func() (*request.Request, error) { 3008 var inCpy *ListStudioSessionMappingsInput 3009 if input != nil { 3010 tmp := *input 3011 inCpy = &tmp 3012 } 3013 req, _ := c.ListStudioSessionMappingsRequest(inCpy) 3014 req.SetContext(ctx) 3015 req.ApplyOptions(opts...) 3016 return req, nil 3017 }, 3018 } 3019 3020 for p.Next() { 3021 if !fn(p.Page().(*ListStudioSessionMappingsOutput), !p.HasNextPage()) { 3022 break 3023 } 3024 } 3025 3026 return p.Err() 3027} 3028 3029const opListStudios = "ListStudios" 3030 3031// ListStudiosRequest generates a "aws/request.Request" representing the 3032// client's request for the ListStudios operation. The "output" return 3033// value will be populated with the request's response once the request completes 3034// successfully. 3035// 3036// Use "Send" method on the returned Request to send the API call to the service. 3037// the "output" return value is not valid until after Send returns without error. 3038// 3039// See ListStudios for more information on using the ListStudios 3040// API call, and error handling. 3041// 3042// This method is useful when you want to inject custom logic or configuration 3043// into the SDK's request lifecycle. Such as custom headers, or retry logic. 3044// 3045// 3046// // Example sending a request using the ListStudiosRequest method. 3047// req, resp := client.ListStudiosRequest(params) 3048// 3049// err := req.Send() 3050// if err == nil { // resp is now filled 3051// fmt.Println(resp) 3052// } 3053// 3054// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/ListStudios 3055func (c *EMR) ListStudiosRequest(input *ListStudiosInput) (req *request.Request, output *ListStudiosOutput) { 3056 op := &request.Operation{ 3057 Name: opListStudios, 3058 HTTPMethod: "POST", 3059 HTTPPath: "/", 3060 Paginator: &request.Paginator{ 3061 InputTokens: []string{"Marker"}, 3062 OutputTokens: []string{"Marker"}, 3063 LimitToken: "", 3064 TruncationToken: "", 3065 }, 3066 } 3067 3068 if input == nil { 3069 input = &ListStudiosInput{} 3070 } 3071 3072 output = &ListStudiosOutput{} 3073 req = c.newRequest(op, input, output) 3074 return 3075} 3076 3077// ListStudios API operation for Amazon Elastic MapReduce. 3078// 3079// 3080// The Amazon EMR Studio APIs are in preview release for Amazon EMR and are 3081// subject to change. 3082// 3083// Returns a list of all Amazon EMR Studios associated with the AWS account. 3084// The list includes details such as ID, Studio Access URL, and creation time 3085// for each Studio. 3086// 3087// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 3088// with awserr.Error's Code and Message methods to get detailed information about 3089// the error. 3090// 3091// See the AWS API reference guide for Amazon Elastic MapReduce's 3092// API operation ListStudios for usage and error information. 3093// 3094// Returned Error Types: 3095// * InternalServerException 3096// This exception occurs when there is an internal failure in the EMR service. 3097// 3098// * InvalidRequestException 3099// This exception occurs when there is something wrong with user input. 3100// 3101// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/ListStudios 3102func (c *EMR) ListStudios(input *ListStudiosInput) (*ListStudiosOutput, error) { 3103 req, out := c.ListStudiosRequest(input) 3104 return out, req.Send() 3105} 3106 3107// ListStudiosWithContext is the same as ListStudios with the addition of 3108// the ability to pass a context and additional request options. 3109// 3110// See ListStudios for details on how to use this API operation. 3111// 3112// The context must be non-nil and will be used for request cancellation. If 3113// the context is nil a panic will occur. In the future the SDK may create 3114// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 3115// for more information on using Contexts. 3116func (c *EMR) ListStudiosWithContext(ctx aws.Context, input *ListStudiosInput, opts ...request.Option) (*ListStudiosOutput, error) { 3117 req, out := c.ListStudiosRequest(input) 3118 req.SetContext(ctx) 3119 req.ApplyOptions(opts...) 3120 return out, req.Send() 3121} 3122 3123// ListStudiosPages iterates over the pages of a ListStudios operation, 3124// calling the "fn" function with the response data for each page. To stop 3125// iterating, return false from the fn function. 3126// 3127// See ListStudios method for more information on how to use this operation. 3128// 3129// Note: This operation can generate multiple requests to a service. 3130// 3131// // Example iterating over at most 3 pages of a ListStudios operation. 3132// pageNum := 0 3133// err := client.ListStudiosPages(params, 3134// func(page *emr.ListStudiosOutput, lastPage bool) bool { 3135// pageNum++ 3136// fmt.Println(page) 3137// return pageNum <= 3 3138// }) 3139// 3140func (c *EMR) ListStudiosPages(input *ListStudiosInput, fn func(*ListStudiosOutput, bool) bool) error { 3141 return c.ListStudiosPagesWithContext(aws.BackgroundContext(), input, fn) 3142} 3143 3144// ListStudiosPagesWithContext same as ListStudiosPages except 3145// it takes a Context and allows setting request options on the pages. 3146// 3147// The context must be non-nil and will be used for request cancellation. If 3148// the context is nil a panic will occur. In the future the SDK may create 3149// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 3150// for more information on using Contexts. 3151func (c *EMR) ListStudiosPagesWithContext(ctx aws.Context, input *ListStudiosInput, fn func(*ListStudiosOutput, bool) bool, opts ...request.Option) error { 3152 p := request.Pagination{ 3153 NewRequest: func() (*request.Request, error) { 3154 var inCpy *ListStudiosInput 3155 if input != nil { 3156 tmp := *input 3157 inCpy = &tmp 3158 } 3159 req, _ := c.ListStudiosRequest(inCpy) 3160 req.SetContext(ctx) 3161 req.ApplyOptions(opts...) 3162 return req, nil 3163 }, 3164 } 3165 3166 for p.Next() { 3167 if !fn(p.Page().(*ListStudiosOutput), !p.HasNextPage()) { 3168 break 3169 } 3170 } 3171 3172 return p.Err() 3173} 3174 3175const opModifyCluster = "ModifyCluster" 3176 3177// ModifyClusterRequest generates a "aws/request.Request" representing the 3178// client's request for the ModifyCluster operation. The "output" return 3179// value will be populated with the request's response once the request completes 3180// successfully. 3181// 3182// Use "Send" method on the returned Request to send the API call to the service. 3183// the "output" return value is not valid until after Send returns without error. 3184// 3185// See ModifyCluster for more information on using the ModifyCluster 3186// API call, and error handling. 3187// 3188// This method is useful when you want to inject custom logic or configuration 3189// into the SDK's request lifecycle. Such as custom headers, or retry logic. 3190// 3191// 3192// // Example sending a request using the ModifyClusterRequest method. 3193// req, resp := client.ModifyClusterRequest(params) 3194// 3195// err := req.Send() 3196// if err == nil { // resp is now filled 3197// fmt.Println(resp) 3198// } 3199// 3200// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/ModifyCluster 3201func (c *EMR) ModifyClusterRequest(input *ModifyClusterInput) (req *request.Request, output *ModifyClusterOutput) { 3202 op := &request.Operation{ 3203 Name: opModifyCluster, 3204 HTTPMethod: "POST", 3205 HTTPPath: "/", 3206 } 3207 3208 if input == nil { 3209 input = &ModifyClusterInput{} 3210 } 3211 3212 output = &ModifyClusterOutput{} 3213 req = c.newRequest(op, input, output) 3214 return 3215} 3216 3217// ModifyCluster API operation for Amazon Elastic MapReduce. 3218// 3219// Modifies the number of steps that can be executed concurrently for the cluster 3220// specified using ClusterID. 3221// 3222// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 3223// with awserr.Error's Code and Message methods to get detailed information about 3224// the error. 3225// 3226// See the AWS API reference guide for Amazon Elastic MapReduce's 3227// API operation ModifyCluster for usage and error information. 3228// 3229// Returned Error Types: 3230// * InternalServerError 3231// Indicates that an error occurred while processing the request and that the 3232// request was not completed. 3233// 3234// * InvalidRequestException 3235// This exception occurs when there is something wrong with user input. 3236// 3237// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/ModifyCluster 3238func (c *EMR) ModifyCluster(input *ModifyClusterInput) (*ModifyClusterOutput, error) { 3239 req, out := c.ModifyClusterRequest(input) 3240 return out, req.Send() 3241} 3242 3243// ModifyClusterWithContext is the same as ModifyCluster with the addition of 3244// the ability to pass a context and additional request options. 3245// 3246// See ModifyCluster for details on how to use this API operation. 3247// 3248// The context must be non-nil and will be used for request cancellation. If 3249// the context is nil a panic will occur. In the future the SDK may create 3250// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 3251// for more information on using Contexts. 3252func (c *EMR) ModifyClusterWithContext(ctx aws.Context, input *ModifyClusterInput, opts ...request.Option) (*ModifyClusterOutput, error) { 3253 req, out := c.ModifyClusterRequest(input) 3254 req.SetContext(ctx) 3255 req.ApplyOptions(opts...) 3256 return out, req.Send() 3257} 3258 3259const opModifyInstanceFleet = "ModifyInstanceFleet" 3260 3261// ModifyInstanceFleetRequest generates a "aws/request.Request" representing the 3262// client's request for the ModifyInstanceFleet operation. The "output" return 3263// value will be populated with the request's response once the request completes 3264// successfully. 3265// 3266// Use "Send" method on the returned Request to send the API call to the service. 3267// the "output" return value is not valid until after Send returns without error. 3268// 3269// See ModifyInstanceFleet for more information on using the ModifyInstanceFleet 3270// API call, and error handling. 3271// 3272// This method is useful when you want to inject custom logic or configuration 3273// into the SDK's request lifecycle. Such as custom headers, or retry logic. 3274// 3275// 3276// // Example sending a request using the ModifyInstanceFleetRequest method. 3277// req, resp := client.ModifyInstanceFleetRequest(params) 3278// 3279// err := req.Send() 3280// if err == nil { // resp is now filled 3281// fmt.Println(resp) 3282// } 3283// 3284// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/ModifyInstanceFleet 3285func (c *EMR) ModifyInstanceFleetRequest(input *ModifyInstanceFleetInput) (req *request.Request, output *ModifyInstanceFleetOutput) { 3286 op := &request.Operation{ 3287 Name: opModifyInstanceFleet, 3288 HTTPMethod: "POST", 3289 HTTPPath: "/", 3290 } 3291 3292 if input == nil { 3293 input = &ModifyInstanceFleetInput{} 3294 } 3295 3296 output = &ModifyInstanceFleetOutput{} 3297 req = c.newRequest(op, input, output) 3298 req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 3299 return 3300} 3301 3302// ModifyInstanceFleet API operation for Amazon Elastic MapReduce. 3303// 3304// Modifies the target On-Demand and target Spot capacities for the instance 3305// fleet with the specified InstanceFleetID within the cluster specified using 3306// ClusterID. The call either succeeds or fails atomically. 3307// 3308// The instance fleet configuration is available only in Amazon EMR versions 3309// 4.8.0 and later, excluding 5.0.x versions. 3310// 3311// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 3312// with awserr.Error's Code and Message methods to get detailed information about 3313// the error. 3314// 3315// See the AWS API reference guide for Amazon Elastic MapReduce's 3316// API operation ModifyInstanceFleet for usage and error information. 3317// 3318// Returned Error Types: 3319// * InternalServerException 3320// This exception occurs when there is an internal failure in the EMR service. 3321// 3322// * InvalidRequestException 3323// This exception occurs when there is something wrong with user input. 3324// 3325// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/ModifyInstanceFleet 3326func (c *EMR) ModifyInstanceFleet(input *ModifyInstanceFleetInput) (*ModifyInstanceFleetOutput, error) { 3327 req, out := c.ModifyInstanceFleetRequest(input) 3328 return out, req.Send() 3329} 3330 3331// ModifyInstanceFleetWithContext is the same as ModifyInstanceFleet with the addition of 3332// the ability to pass a context and additional request options. 3333// 3334// See ModifyInstanceFleet for details on how to use this API operation. 3335// 3336// The context must be non-nil and will be used for request cancellation. If 3337// the context is nil a panic will occur. In the future the SDK may create 3338// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 3339// for more information on using Contexts. 3340func (c *EMR) ModifyInstanceFleetWithContext(ctx aws.Context, input *ModifyInstanceFleetInput, opts ...request.Option) (*ModifyInstanceFleetOutput, error) { 3341 req, out := c.ModifyInstanceFleetRequest(input) 3342 req.SetContext(ctx) 3343 req.ApplyOptions(opts...) 3344 return out, req.Send() 3345} 3346 3347const opModifyInstanceGroups = "ModifyInstanceGroups" 3348 3349// ModifyInstanceGroupsRequest generates a "aws/request.Request" representing the 3350// client's request for the ModifyInstanceGroups operation. The "output" return 3351// value will be populated with the request's response once the request completes 3352// successfully. 3353// 3354// Use "Send" method on the returned Request to send the API call to the service. 3355// the "output" return value is not valid until after Send returns without error. 3356// 3357// See ModifyInstanceGroups for more information on using the ModifyInstanceGroups 3358// API call, and error handling. 3359// 3360// This method is useful when you want to inject custom logic or configuration 3361// into the SDK's request lifecycle. Such as custom headers, or retry logic. 3362// 3363// 3364// // Example sending a request using the ModifyInstanceGroupsRequest method. 3365// req, resp := client.ModifyInstanceGroupsRequest(params) 3366// 3367// err := req.Send() 3368// if err == nil { // resp is now filled 3369// fmt.Println(resp) 3370// } 3371// 3372// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/ModifyInstanceGroups 3373func (c *EMR) ModifyInstanceGroupsRequest(input *ModifyInstanceGroupsInput) (req *request.Request, output *ModifyInstanceGroupsOutput) { 3374 op := &request.Operation{ 3375 Name: opModifyInstanceGroups, 3376 HTTPMethod: "POST", 3377 HTTPPath: "/", 3378 } 3379 3380 if input == nil { 3381 input = &ModifyInstanceGroupsInput{} 3382 } 3383 3384 output = &ModifyInstanceGroupsOutput{} 3385 req = c.newRequest(op, input, output) 3386 req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 3387 return 3388} 3389 3390// ModifyInstanceGroups API operation for Amazon Elastic MapReduce. 3391// 3392// ModifyInstanceGroups modifies the number of nodes and configuration settings 3393// of an instance group. The input parameters include the new target instance 3394// count for the group and the instance group ID. The call will either succeed 3395// or fail atomically. 3396// 3397// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 3398// with awserr.Error's Code and Message methods to get detailed information about 3399// the error. 3400// 3401// See the AWS API reference guide for Amazon Elastic MapReduce's 3402// API operation ModifyInstanceGroups for usage and error information. 3403// 3404// Returned Error Types: 3405// * InternalServerError 3406// Indicates that an error occurred while processing the request and that the 3407// request was not completed. 3408// 3409// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/ModifyInstanceGroups 3410func (c *EMR) ModifyInstanceGroups(input *ModifyInstanceGroupsInput) (*ModifyInstanceGroupsOutput, error) { 3411 req, out := c.ModifyInstanceGroupsRequest(input) 3412 return out, req.Send() 3413} 3414 3415// ModifyInstanceGroupsWithContext is the same as ModifyInstanceGroups with the addition of 3416// the ability to pass a context and additional request options. 3417// 3418// See ModifyInstanceGroups for details on how to use this API operation. 3419// 3420// The context must be non-nil and will be used for request cancellation. If 3421// the context is nil a panic will occur. In the future the SDK may create 3422// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 3423// for more information on using Contexts. 3424func (c *EMR) ModifyInstanceGroupsWithContext(ctx aws.Context, input *ModifyInstanceGroupsInput, opts ...request.Option) (*ModifyInstanceGroupsOutput, error) { 3425 req, out := c.ModifyInstanceGroupsRequest(input) 3426 req.SetContext(ctx) 3427 req.ApplyOptions(opts...) 3428 return out, req.Send() 3429} 3430 3431const opPutAutoScalingPolicy = "PutAutoScalingPolicy" 3432 3433// PutAutoScalingPolicyRequest generates a "aws/request.Request" representing the 3434// client's request for the PutAutoScalingPolicy operation. The "output" return 3435// value will be populated with the request's response once the request completes 3436// successfully. 3437// 3438// Use "Send" method on the returned Request to send the API call to the service. 3439// the "output" return value is not valid until after Send returns without error. 3440// 3441// See PutAutoScalingPolicy for more information on using the PutAutoScalingPolicy 3442// API call, and error handling. 3443// 3444// This method is useful when you want to inject custom logic or configuration 3445// into the SDK's request lifecycle. Such as custom headers, or retry logic. 3446// 3447// 3448// // Example sending a request using the PutAutoScalingPolicyRequest method. 3449// req, resp := client.PutAutoScalingPolicyRequest(params) 3450// 3451// err := req.Send() 3452// if err == nil { // resp is now filled 3453// fmt.Println(resp) 3454// } 3455// 3456// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/PutAutoScalingPolicy 3457func (c *EMR) PutAutoScalingPolicyRequest(input *PutAutoScalingPolicyInput) (req *request.Request, output *PutAutoScalingPolicyOutput) { 3458 op := &request.Operation{ 3459 Name: opPutAutoScalingPolicy, 3460 HTTPMethod: "POST", 3461 HTTPPath: "/", 3462 } 3463 3464 if input == nil { 3465 input = &PutAutoScalingPolicyInput{} 3466 } 3467 3468 output = &PutAutoScalingPolicyOutput{} 3469 req = c.newRequest(op, input, output) 3470 return 3471} 3472 3473// PutAutoScalingPolicy API operation for Amazon Elastic MapReduce. 3474// 3475// Creates or updates an automatic scaling policy for a core instance group 3476// or task instance group in an Amazon EMR cluster. The automatic scaling policy 3477// defines how an instance group dynamically adds and terminates EC2 instances 3478// in response to the value of a CloudWatch metric. 3479// 3480// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 3481// with awserr.Error's Code and Message methods to get detailed information about 3482// the error. 3483// 3484// See the AWS API reference guide for Amazon Elastic MapReduce's 3485// API operation PutAutoScalingPolicy for usage and error information. 3486// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/PutAutoScalingPolicy 3487func (c *EMR) PutAutoScalingPolicy(input *PutAutoScalingPolicyInput) (*PutAutoScalingPolicyOutput, error) { 3488 req, out := c.PutAutoScalingPolicyRequest(input) 3489 return out, req.Send() 3490} 3491 3492// PutAutoScalingPolicyWithContext is the same as PutAutoScalingPolicy with the addition of 3493// the ability to pass a context and additional request options. 3494// 3495// See PutAutoScalingPolicy for details on how to use this API operation. 3496// 3497// The context must be non-nil and will be used for request cancellation. If 3498// the context is nil a panic will occur. In the future the SDK may create 3499// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 3500// for more information on using Contexts. 3501func (c *EMR) PutAutoScalingPolicyWithContext(ctx aws.Context, input *PutAutoScalingPolicyInput, opts ...request.Option) (*PutAutoScalingPolicyOutput, error) { 3502 req, out := c.PutAutoScalingPolicyRequest(input) 3503 req.SetContext(ctx) 3504 req.ApplyOptions(opts...) 3505 return out, req.Send() 3506} 3507 3508const opPutBlockPublicAccessConfiguration = "PutBlockPublicAccessConfiguration" 3509 3510// PutBlockPublicAccessConfigurationRequest generates a "aws/request.Request" representing the 3511// client's request for the PutBlockPublicAccessConfiguration operation. The "output" return 3512// value will be populated with the request's response once the request completes 3513// successfully. 3514// 3515// Use "Send" method on the returned Request to send the API call to the service. 3516// the "output" return value is not valid until after Send returns without error. 3517// 3518// See PutBlockPublicAccessConfiguration for more information on using the PutBlockPublicAccessConfiguration 3519// API call, and error handling. 3520// 3521// This method is useful when you want to inject custom logic or configuration 3522// into the SDK's request lifecycle. Such as custom headers, or retry logic. 3523// 3524// 3525// // Example sending a request using the PutBlockPublicAccessConfigurationRequest method. 3526// req, resp := client.PutBlockPublicAccessConfigurationRequest(params) 3527// 3528// err := req.Send() 3529// if err == nil { // resp is now filled 3530// fmt.Println(resp) 3531// } 3532// 3533// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/PutBlockPublicAccessConfiguration 3534func (c *EMR) PutBlockPublicAccessConfigurationRequest(input *PutBlockPublicAccessConfigurationInput) (req *request.Request, output *PutBlockPublicAccessConfigurationOutput) { 3535 op := &request.Operation{ 3536 Name: opPutBlockPublicAccessConfiguration, 3537 HTTPMethod: "POST", 3538 HTTPPath: "/", 3539 } 3540 3541 if input == nil { 3542 input = &PutBlockPublicAccessConfigurationInput{} 3543 } 3544 3545 output = &PutBlockPublicAccessConfigurationOutput{} 3546 req = c.newRequest(op, input, output) 3547 req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 3548 return 3549} 3550 3551// PutBlockPublicAccessConfiguration API operation for Amazon Elastic MapReduce. 3552// 3553// Creates or updates an Amazon EMR block public access configuration for your 3554// AWS account in the current Region. For more information see Configure Block 3555// Public Access for Amazon EMR (https://docs.aws.amazon.com/emr/latest/ManagementGuide/configure-block-public-access.html) 3556// in the Amazon EMR Management Guide. 3557// 3558// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 3559// with awserr.Error's Code and Message methods to get detailed information about 3560// the error. 3561// 3562// See the AWS API reference guide for Amazon Elastic MapReduce's 3563// API operation PutBlockPublicAccessConfiguration for usage and error information. 3564// 3565// Returned Error Types: 3566// * InternalServerException 3567// This exception occurs when there is an internal failure in the EMR service. 3568// 3569// * InvalidRequestException 3570// This exception occurs when there is something wrong with user input. 3571// 3572// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/PutBlockPublicAccessConfiguration 3573func (c *EMR) PutBlockPublicAccessConfiguration(input *PutBlockPublicAccessConfigurationInput) (*PutBlockPublicAccessConfigurationOutput, error) { 3574 req, out := c.PutBlockPublicAccessConfigurationRequest(input) 3575 return out, req.Send() 3576} 3577 3578// PutBlockPublicAccessConfigurationWithContext is the same as PutBlockPublicAccessConfiguration with the addition of 3579// the ability to pass a context and additional request options. 3580// 3581// See PutBlockPublicAccessConfiguration for details on how to use this API operation. 3582// 3583// The context must be non-nil and will be used for request cancellation. If 3584// the context is nil a panic will occur. In the future the SDK may create 3585// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 3586// for more information on using Contexts. 3587func (c *EMR) PutBlockPublicAccessConfigurationWithContext(ctx aws.Context, input *PutBlockPublicAccessConfigurationInput, opts ...request.Option) (*PutBlockPublicAccessConfigurationOutput, error) { 3588 req, out := c.PutBlockPublicAccessConfigurationRequest(input) 3589 req.SetContext(ctx) 3590 req.ApplyOptions(opts...) 3591 return out, req.Send() 3592} 3593 3594const opPutManagedScalingPolicy = "PutManagedScalingPolicy" 3595 3596// PutManagedScalingPolicyRequest generates a "aws/request.Request" representing the 3597// client's request for the PutManagedScalingPolicy operation. The "output" return 3598// value will be populated with the request's response once the request completes 3599// successfully. 3600// 3601// Use "Send" method on the returned Request to send the API call to the service. 3602// the "output" return value is not valid until after Send returns without error. 3603// 3604// See PutManagedScalingPolicy for more information on using the PutManagedScalingPolicy 3605// API call, and error handling. 3606// 3607// This method is useful when you want to inject custom logic or configuration 3608// into the SDK's request lifecycle. Such as custom headers, or retry logic. 3609// 3610// 3611// // Example sending a request using the PutManagedScalingPolicyRequest method. 3612// req, resp := client.PutManagedScalingPolicyRequest(params) 3613// 3614// err := req.Send() 3615// if err == nil { // resp is now filled 3616// fmt.Println(resp) 3617// } 3618// 3619// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/PutManagedScalingPolicy 3620func (c *EMR) PutManagedScalingPolicyRequest(input *PutManagedScalingPolicyInput) (req *request.Request, output *PutManagedScalingPolicyOutput) { 3621 op := &request.Operation{ 3622 Name: opPutManagedScalingPolicy, 3623 HTTPMethod: "POST", 3624 HTTPPath: "/", 3625 } 3626 3627 if input == nil { 3628 input = &PutManagedScalingPolicyInput{} 3629 } 3630 3631 output = &PutManagedScalingPolicyOutput{} 3632 req = c.newRequest(op, input, output) 3633 req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 3634 return 3635} 3636 3637// PutManagedScalingPolicy API operation for Amazon Elastic MapReduce. 3638// 3639// Creates or updates a managed scaling policy for an Amazon EMR cluster. The 3640// managed scaling policy defines the limits for resources, such as EC2 instances 3641// that can be added or terminated from a cluster. The policy only applies to 3642// the core and task nodes. The master node cannot be scaled after initial configuration. 3643// 3644// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 3645// with awserr.Error's Code and Message methods to get detailed information about 3646// the error. 3647// 3648// See the AWS API reference guide for Amazon Elastic MapReduce's 3649// API operation PutManagedScalingPolicy for usage and error information. 3650// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/PutManagedScalingPolicy 3651func (c *EMR) PutManagedScalingPolicy(input *PutManagedScalingPolicyInput) (*PutManagedScalingPolicyOutput, error) { 3652 req, out := c.PutManagedScalingPolicyRequest(input) 3653 return out, req.Send() 3654} 3655 3656// PutManagedScalingPolicyWithContext is the same as PutManagedScalingPolicy with the addition of 3657// the ability to pass a context and additional request options. 3658// 3659// See PutManagedScalingPolicy for details on how to use this API operation. 3660// 3661// The context must be non-nil and will be used for request cancellation. If 3662// the context is nil a panic will occur. In the future the SDK may create 3663// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 3664// for more information on using Contexts. 3665func (c *EMR) PutManagedScalingPolicyWithContext(ctx aws.Context, input *PutManagedScalingPolicyInput, opts ...request.Option) (*PutManagedScalingPolicyOutput, error) { 3666 req, out := c.PutManagedScalingPolicyRequest(input) 3667 req.SetContext(ctx) 3668 req.ApplyOptions(opts...) 3669 return out, req.Send() 3670} 3671 3672const opRemoveAutoScalingPolicy = "RemoveAutoScalingPolicy" 3673 3674// RemoveAutoScalingPolicyRequest generates a "aws/request.Request" representing the 3675// client's request for the RemoveAutoScalingPolicy operation. The "output" return 3676// value will be populated with the request's response once the request completes 3677// successfully. 3678// 3679// Use "Send" method on the returned Request to send the API call to the service. 3680// the "output" return value is not valid until after Send returns without error. 3681// 3682// See RemoveAutoScalingPolicy for more information on using the RemoveAutoScalingPolicy 3683// API call, and error handling. 3684// 3685// This method is useful when you want to inject custom logic or configuration 3686// into the SDK's request lifecycle. Such as custom headers, or retry logic. 3687// 3688// 3689// // Example sending a request using the RemoveAutoScalingPolicyRequest method. 3690// req, resp := client.RemoveAutoScalingPolicyRequest(params) 3691// 3692// err := req.Send() 3693// if err == nil { // resp is now filled 3694// fmt.Println(resp) 3695// } 3696// 3697// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/RemoveAutoScalingPolicy 3698func (c *EMR) RemoveAutoScalingPolicyRequest(input *RemoveAutoScalingPolicyInput) (req *request.Request, output *RemoveAutoScalingPolicyOutput) { 3699 op := &request.Operation{ 3700 Name: opRemoveAutoScalingPolicy, 3701 HTTPMethod: "POST", 3702 HTTPPath: "/", 3703 } 3704 3705 if input == nil { 3706 input = &RemoveAutoScalingPolicyInput{} 3707 } 3708 3709 output = &RemoveAutoScalingPolicyOutput{} 3710 req = c.newRequest(op, input, output) 3711 req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 3712 return 3713} 3714 3715// RemoveAutoScalingPolicy API operation for Amazon Elastic MapReduce. 3716// 3717// Removes an automatic scaling policy from a specified instance group within 3718// an EMR cluster. 3719// 3720// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 3721// with awserr.Error's Code and Message methods to get detailed information about 3722// the error. 3723// 3724// See the AWS API reference guide for Amazon Elastic MapReduce's 3725// API operation RemoveAutoScalingPolicy for usage and error information. 3726// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/RemoveAutoScalingPolicy 3727func (c *EMR) RemoveAutoScalingPolicy(input *RemoveAutoScalingPolicyInput) (*RemoveAutoScalingPolicyOutput, error) { 3728 req, out := c.RemoveAutoScalingPolicyRequest(input) 3729 return out, req.Send() 3730} 3731 3732// RemoveAutoScalingPolicyWithContext is the same as RemoveAutoScalingPolicy with the addition of 3733// the ability to pass a context and additional request options. 3734// 3735// See RemoveAutoScalingPolicy for details on how to use this API operation. 3736// 3737// The context must be non-nil and will be used for request cancellation. If 3738// the context is nil a panic will occur. In the future the SDK may create 3739// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 3740// for more information on using Contexts. 3741func (c *EMR) RemoveAutoScalingPolicyWithContext(ctx aws.Context, input *RemoveAutoScalingPolicyInput, opts ...request.Option) (*RemoveAutoScalingPolicyOutput, error) { 3742 req, out := c.RemoveAutoScalingPolicyRequest(input) 3743 req.SetContext(ctx) 3744 req.ApplyOptions(opts...) 3745 return out, req.Send() 3746} 3747 3748const opRemoveManagedScalingPolicy = "RemoveManagedScalingPolicy" 3749 3750// RemoveManagedScalingPolicyRequest generates a "aws/request.Request" representing the 3751// client's request for the RemoveManagedScalingPolicy operation. The "output" return 3752// value will be populated with the request's response once the request completes 3753// successfully. 3754// 3755// Use "Send" method on the returned Request to send the API call to the service. 3756// the "output" return value is not valid until after Send returns without error. 3757// 3758// See RemoveManagedScalingPolicy for more information on using the RemoveManagedScalingPolicy 3759// API call, and error handling. 3760// 3761// This method is useful when you want to inject custom logic or configuration 3762// into the SDK's request lifecycle. Such as custom headers, or retry logic. 3763// 3764// 3765// // Example sending a request using the RemoveManagedScalingPolicyRequest method. 3766// req, resp := client.RemoveManagedScalingPolicyRequest(params) 3767// 3768// err := req.Send() 3769// if err == nil { // resp is now filled 3770// fmt.Println(resp) 3771// } 3772// 3773// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/RemoveManagedScalingPolicy 3774func (c *EMR) RemoveManagedScalingPolicyRequest(input *RemoveManagedScalingPolicyInput) (req *request.Request, output *RemoveManagedScalingPolicyOutput) { 3775 op := &request.Operation{ 3776 Name: opRemoveManagedScalingPolicy, 3777 HTTPMethod: "POST", 3778 HTTPPath: "/", 3779 } 3780 3781 if input == nil { 3782 input = &RemoveManagedScalingPolicyInput{} 3783 } 3784 3785 output = &RemoveManagedScalingPolicyOutput{} 3786 req = c.newRequest(op, input, output) 3787 req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 3788 return 3789} 3790 3791// RemoveManagedScalingPolicy API operation for Amazon Elastic MapReduce. 3792// 3793// Removes a managed scaling policy from a specified EMR cluster. 3794// 3795// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 3796// with awserr.Error's Code and Message methods to get detailed information about 3797// the error. 3798// 3799// See the AWS API reference guide for Amazon Elastic MapReduce's 3800// API operation RemoveManagedScalingPolicy for usage and error information. 3801// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/RemoveManagedScalingPolicy 3802func (c *EMR) RemoveManagedScalingPolicy(input *RemoveManagedScalingPolicyInput) (*RemoveManagedScalingPolicyOutput, error) { 3803 req, out := c.RemoveManagedScalingPolicyRequest(input) 3804 return out, req.Send() 3805} 3806 3807// RemoveManagedScalingPolicyWithContext is the same as RemoveManagedScalingPolicy with the addition of 3808// the ability to pass a context and additional request options. 3809// 3810// See RemoveManagedScalingPolicy for details on how to use this API operation. 3811// 3812// The context must be non-nil and will be used for request cancellation. If 3813// the context is nil a panic will occur. In the future the SDK may create 3814// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 3815// for more information on using Contexts. 3816func (c *EMR) RemoveManagedScalingPolicyWithContext(ctx aws.Context, input *RemoveManagedScalingPolicyInput, opts ...request.Option) (*RemoveManagedScalingPolicyOutput, error) { 3817 req, out := c.RemoveManagedScalingPolicyRequest(input) 3818 req.SetContext(ctx) 3819 req.ApplyOptions(opts...) 3820 return out, req.Send() 3821} 3822 3823const opRemoveTags = "RemoveTags" 3824 3825// RemoveTagsRequest generates a "aws/request.Request" representing the 3826// client's request for the RemoveTags operation. The "output" return 3827// value will be populated with the request's response once the request completes 3828// successfully. 3829// 3830// Use "Send" method on the returned Request to send the API call to the service. 3831// the "output" return value is not valid until after Send returns without error. 3832// 3833// See RemoveTags for more information on using the RemoveTags 3834// API call, and error handling. 3835// 3836// This method is useful when you want to inject custom logic or configuration 3837// into the SDK's request lifecycle. Such as custom headers, or retry logic. 3838// 3839// 3840// // Example sending a request using the RemoveTagsRequest method. 3841// req, resp := client.RemoveTagsRequest(params) 3842// 3843// err := req.Send() 3844// if err == nil { // resp is now filled 3845// fmt.Println(resp) 3846// } 3847// 3848// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/RemoveTags 3849func (c *EMR) RemoveTagsRequest(input *RemoveTagsInput) (req *request.Request, output *RemoveTagsOutput) { 3850 op := &request.Operation{ 3851 Name: opRemoveTags, 3852 HTTPMethod: "POST", 3853 HTTPPath: "/", 3854 } 3855 3856 if input == nil { 3857 input = &RemoveTagsInput{} 3858 } 3859 3860 output = &RemoveTagsOutput{} 3861 req = c.newRequest(op, input, output) 3862 req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 3863 return 3864} 3865 3866// RemoveTags API operation for Amazon Elastic MapReduce. 3867// 3868// Removes tags from an Amazon EMR resource. Tags make it easier to associate 3869// clusters in various ways, such as grouping clusters to track your Amazon 3870// EMR resource allocation costs. For more information, see Tag Clusters (https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-plan-tags.html). 3871// 3872// The following example removes the stack tag with value Prod from a cluster: 3873// 3874// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 3875// with awserr.Error's Code and Message methods to get detailed information about 3876// the error. 3877// 3878// See the AWS API reference guide for Amazon Elastic MapReduce's 3879// API operation RemoveTags for usage and error information. 3880// 3881// Returned Error Types: 3882// * InternalServerException 3883// This exception occurs when there is an internal failure in the EMR service. 3884// 3885// * InvalidRequestException 3886// This exception occurs when there is something wrong with user input. 3887// 3888// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/RemoveTags 3889func (c *EMR) RemoveTags(input *RemoveTagsInput) (*RemoveTagsOutput, error) { 3890 req, out := c.RemoveTagsRequest(input) 3891 return out, req.Send() 3892} 3893 3894// RemoveTagsWithContext is the same as RemoveTags with the addition of 3895// the ability to pass a context and additional request options. 3896// 3897// See RemoveTags for details on how to use this API operation. 3898// 3899// The context must be non-nil and will be used for request cancellation. If 3900// the context is nil a panic will occur. In the future the SDK may create 3901// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 3902// for more information on using Contexts. 3903func (c *EMR) RemoveTagsWithContext(ctx aws.Context, input *RemoveTagsInput, opts ...request.Option) (*RemoveTagsOutput, error) { 3904 req, out := c.RemoveTagsRequest(input) 3905 req.SetContext(ctx) 3906 req.ApplyOptions(opts...) 3907 return out, req.Send() 3908} 3909 3910const opRunJobFlow = "RunJobFlow" 3911 3912// RunJobFlowRequest generates a "aws/request.Request" representing the 3913// client's request for the RunJobFlow operation. The "output" return 3914// value will be populated with the request's response once the request completes 3915// successfully. 3916// 3917// Use "Send" method on the returned Request to send the API call to the service. 3918// the "output" return value is not valid until after Send returns without error. 3919// 3920// See RunJobFlow for more information on using the RunJobFlow 3921// API call, and error handling. 3922// 3923// This method is useful when you want to inject custom logic or configuration 3924// into the SDK's request lifecycle. Such as custom headers, or retry logic. 3925// 3926// 3927// // Example sending a request using the RunJobFlowRequest method. 3928// req, resp := client.RunJobFlowRequest(params) 3929// 3930// err := req.Send() 3931// if err == nil { // resp is now filled 3932// fmt.Println(resp) 3933// } 3934// 3935// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/RunJobFlow 3936func (c *EMR) RunJobFlowRequest(input *RunJobFlowInput) (req *request.Request, output *RunJobFlowOutput) { 3937 op := &request.Operation{ 3938 Name: opRunJobFlow, 3939 HTTPMethod: "POST", 3940 HTTPPath: "/", 3941 } 3942 3943 if input == nil { 3944 input = &RunJobFlowInput{} 3945 } 3946 3947 output = &RunJobFlowOutput{} 3948 req = c.newRequest(op, input, output) 3949 return 3950} 3951 3952// RunJobFlow API operation for Amazon Elastic MapReduce. 3953// 3954// RunJobFlow creates and starts running a new cluster (job flow). The cluster 3955// runs the steps specified. After the steps complete, the cluster stops and 3956// the HDFS partition is lost. To prevent loss of data, configure the last step 3957// of the job flow to store results in Amazon S3. If the JobFlowInstancesConfig 3958// KeepJobFlowAliveWhenNoSteps parameter is set to TRUE, the cluster transitions 3959// to the WAITING state rather than shutting down after the steps have completed. 3960// 3961// For additional protection, you can set the JobFlowInstancesConfig TerminationProtected 3962// parameter to TRUE to lock the cluster and prevent it from being terminated 3963// by API call, user intervention, or in the event of a job flow error. 3964// 3965// A maximum of 256 steps are allowed in each job flow. 3966// 3967// If your cluster is long-running (such as a Hive data warehouse) or complex, 3968// you may require more than 256 steps to process your data. You can bypass 3969// the 256-step limitation in various ways, including using the SSH shell to 3970// connect to the master node and submitting queries directly to the software 3971// running on the master node, such as Hive and Hadoop. For more information 3972// on how to do this, see Add More than 256 Steps to a Cluster (https://docs.aws.amazon.com/emr/latest/ManagementGuide/AddMoreThan256Steps.html) 3973// in the Amazon EMR Management Guide. 3974// 3975// For long running clusters, we recommend that you periodically store your 3976// results. 3977// 3978// The instance fleets configuration is available only in Amazon EMR versions 3979// 4.8.0 and later, excluding 5.0.x versions. The RunJobFlow request can contain 3980// InstanceFleets parameters or InstanceGroups parameters, but not both. 3981// 3982// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 3983// with awserr.Error's Code and Message methods to get detailed information about 3984// the error. 3985// 3986// See the AWS API reference guide for Amazon Elastic MapReduce's 3987// API operation RunJobFlow for usage and error information. 3988// 3989// Returned Error Types: 3990// * InternalServerError 3991// Indicates that an error occurred while processing the request and that the 3992// request was not completed. 3993// 3994// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/RunJobFlow 3995func (c *EMR) RunJobFlow(input *RunJobFlowInput) (*RunJobFlowOutput, error) { 3996 req, out := c.RunJobFlowRequest(input) 3997 return out, req.Send() 3998} 3999 4000// RunJobFlowWithContext is the same as RunJobFlow with the addition of 4001// the ability to pass a context and additional request options. 4002// 4003// See RunJobFlow for details on how to use this API operation. 4004// 4005// The context must be non-nil and will be used for request cancellation. If 4006// the context is nil a panic will occur. In the future the SDK may create 4007// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 4008// for more information on using Contexts. 4009func (c *EMR) RunJobFlowWithContext(ctx aws.Context, input *RunJobFlowInput, opts ...request.Option) (*RunJobFlowOutput, error) { 4010 req, out := c.RunJobFlowRequest(input) 4011 req.SetContext(ctx) 4012 req.ApplyOptions(opts...) 4013 return out, req.Send() 4014} 4015 4016const opSetTerminationProtection = "SetTerminationProtection" 4017 4018// SetTerminationProtectionRequest generates a "aws/request.Request" representing the 4019// client's request for the SetTerminationProtection operation. The "output" return 4020// value will be populated with the request's response once the request completes 4021// successfully. 4022// 4023// Use "Send" method on the returned Request to send the API call to the service. 4024// the "output" return value is not valid until after Send returns without error. 4025// 4026// See SetTerminationProtection for more information on using the SetTerminationProtection 4027// API call, and error handling. 4028// 4029// This method is useful when you want to inject custom logic or configuration 4030// into the SDK's request lifecycle. Such as custom headers, or retry logic. 4031// 4032// 4033// // Example sending a request using the SetTerminationProtectionRequest method. 4034// req, resp := client.SetTerminationProtectionRequest(params) 4035// 4036// err := req.Send() 4037// if err == nil { // resp is now filled 4038// fmt.Println(resp) 4039// } 4040// 4041// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/SetTerminationProtection 4042func (c *EMR) SetTerminationProtectionRequest(input *SetTerminationProtectionInput) (req *request.Request, output *SetTerminationProtectionOutput) { 4043 op := &request.Operation{ 4044 Name: opSetTerminationProtection, 4045 HTTPMethod: "POST", 4046 HTTPPath: "/", 4047 } 4048 4049 if input == nil { 4050 input = &SetTerminationProtectionInput{} 4051 } 4052 4053 output = &SetTerminationProtectionOutput{} 4054 req = c.newRequest(op, input, output) 4055 req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 4056 return 4057} 4058 4059// SetTerminationProtection API operation for Amazon Elastic MapReduce. 4060// 4061// SetTerminationProtection locks a cluster (job flow) so the EC2 instances 4062// in the cluster cannot be terminated by user intervention, an API call, or 4063// in the event of a job-flow error. The cluster still terminates upon successful 4064// completion of the job flow. Calling SetTerminationProtection on a cluster 4065// is similar to calling the Amazon EC2 DisableAPITermination API on all EC2 4066// instances in a cluster. 4067// 4068// SetTerminationProtection is used to prevent accidental termination of a cluster 4069// and to ensure that in the event of an error, the instances persist so that 4070// you can recover any data stored in their ephemeral instance storage. 4071// 4072// To terminate a cluster that has been locked by setting SetTerminationProtection 4073// to true, you must first unlock the job flow by a subsequent call to SetTerminationProtection 4074// in which you set the value to false. 4075// 4076// For more information, seeManaging Cluster Termination (https://docs.aws.amazon.com/emr/latest/ManagementGuide/UsingEMR_TerminationProtection.html) 4077// in the Amazon EMR Management Guide. 4078// 4079// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 4080// with awserr.Error's Code and Message methods to get detailed information about 4081// the error. 4082// 4083// See the AWS API reference guide for Amazon Elastic MapReduce's 4084// API operation SetTerminationProtection for usage and error information. 4085// 4086// Returned Error Types: 4087// * InternalServerError 4088// Indicates that an error occurred while processing the request and that the 4089// request was not completed. 4090// 4091// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/SetTerminationProtection 4092func (c *EMR) SetTerminationProtection(input *SetTerminationProtectionInput) (*SetTerminationProtectionOutput, error) { 4093 req, out := c.SetTerminationProtectionRequest(input) 4094 return out, req.Send() 4095} 4096 4097// SetTerminationProtectionWithContext is the same as SetTerminationProtection with the addition of 4098// the ability to pass a context and additional request options. 4099// 4100// See SetTerminationProtection for details on how to use this API operation. 4101// 4102// The context must be non-nil and will be used for request cancellation. If 4103// the context is nil a panic will occur. In the future the SDK may create 4104// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 4105// for more information on using Contexts. 4106func (c *EMR) SetTerminationProtectionWithContext(ctx aws.Context, input *SetTerminationProtectionInput, opts ...request.Option) (*SetTerminationProtectionOutput, error) { 4107 req, out := c.SetTerminationProtectionRequest(input) 4108 req.SetContext(ctx) 4109 req.ApplyOptions(opts...) 4110 return out, req.Send() 4111} 4112 4113const opSetVisibleToAllUsers = "SetVisibleToAllUsers" 4114 4115// SetVisibleToAllUsersRequest generates a "aws/request.Request" representing the 4116// client's request for the SetVisibleToAllUsers operation. The "output" return 4117// value will be populated with the request's response once the request completes 4118// successfully. 4119// 4120// Use "Send" method on the returned Request to send the API call to the service. 4121// the "output" return value is not valid until after Send returns without error. 4122// 4123// See SetVisibleToAllUsers for more information on using the SetVisibleToAllUsers 4124// API call, and error handling. 4125// 4126// This method is useful when you want to inject custom logic or configuration 4127// into the SDK's request lifecycle. Such as custom headers, or retry logic. 4128// 4129// 4130// // Example sending a request using the SetVisibleToAllUsersRequest method. 4131// req, resp := client.SetVisibleToAllUsersRequest(params) 4132// 4133// err := req.Send() 4134// if err == nil { // resp is now filled 4135// fmt.Println(resp) 4136// } 4137// 4138// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/SetVisibleToAllUsers 4139func (c *EMR) SetVisibleToAllUsersRequest(input *SetVisibleToAllUsersInput) (req *request.Request, output *SetVisibleToAllUsersOutput) { 4140 op := &request.Operation{ 4141 Name: opSetVisibleToAllUsers, 4142 HTTPMethod: "POST", 4143 HTTPPath: "/", 4144 } 4145 4146 if input == nil { 4147 input = &SetVisibleToAllUsersInput{} 4148 } 4149 4150 output = &SetVisibleToAllUsersOutput{} 4151 req = c.newRequest(op, input, output) 4152 req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 4153 return 4154} 4155 4156// SetVisibleToAllUsers API operation for Amazon Elastic MapReduce. 4157// 4158// Sets the Cluster$VisibleToAllUsers value, which determines whether the cluster 4159// is visible to all IAM users of the AWS account associated with the cluster. 4160// Only the IAM user who created the cluster or the AWS account root user can 4161// call this action. The default value, true, indicates that all IAM users in 4162// the AWS account can perform cluster actions if they have the proper IAM policy 4163// permissions. If set to false, only the IAM user that created the cluster 4164// can perform actions. This action works on running clusters. You can override 4165// the default true setting when you create a cluster by using the VisibleToAllUsers 4166// parameter with RunJobFlow. 4167// 4168// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 4169// with awserr.Error's Code and Message methods to get detailed information about 4170// the error. 4171// 4172// See the AWS API reference guide for Amazon Elastic MapReduce's 4173// API operation SetVisibleToAllUsers for usage and error information. 4174// 4175// Returned Error Types: 4176// * InternalServerError 4177// Indicates that an error occurred while processing the request and that the 4178// request was not completed. 4179// 4180// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/SetVisibleToAllUsers 4181func (c *EMR) SetVisibleToAllUsers(input *SetVisibleToAllUsersInput) (*SetVisibleToAllUsersOutput, error) { 4182 req, out := c.SetVisibleToAllUsersRequest(input) 4183 return out, req.Send() 4184} 4185 4186// SetVisibleToAllUsersWithContext is the same as SetVisibleToAllUsers with the addition of 4187// the ability to pass a context and additional request options. 4188// 4189// See SetVisibleToAllUsers for details on how to use this API operation. 4190// 4191// The context must be non-nil and will be used for request cancellation. If 4192// the context is nil a panic will occur. In the future the SDK may create 4193// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 4194// for more information on using Contexts. 4195func (c *EMR) SetVisibleToAllUsersWithContext(ctx aws.Context, input *SetVisibleToAllUsersInput, opts ...request.Option) (*SetVisibleToAllUsersOutput, error) { 4196 req, out := c.SetVisibleToAllUsersRequest(input) 4197 req.SetContext(ctx) 4198 req.ApplyOptions(opts...) 4199 return out, req.Send() 4200} 4201 4202const opStartNotebookExecution = "StartNotebookExecution" 4203 4204// StartNotebookExecutionRequest generates a "aws/request.Request" representing the 4205// client's request for the StartNotebookExecution operation. The "output" return 4206// value will be populated with the request's response once the request completes 4207// successfully. 4208// 4209// Use "Send" method on the returned Request to send the API call to the service. 4210// the "output" return value is not valid until after Send returns without error. 4211// 4212// See StartNotebookExecution for more information on using the StartNotebookExecution 4213// API call, and error handling. 4214// 4215// This method is useful when you want to inject custom logic or configuration 4216// into the SDK's request lifecycle. Such as custom headers, or retry logic. 4217// 4218// 4219// // Example sending a request using the StartNotebookExecutionRequest method. 4220// req, resp := client.StartNotebookExecutionRequest(params) 4221// 4222// err := req.Send() 4223// if err == nil { // resp is now filled 4224// fmt.Println(resp) 4225// } 4226// 4227// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/StartNotebookExecution 4228func (c *EMR) StartNotebookExecutionRequest(input *StartNotebookExecutionInput) (req *request.Request, output *StartNotebookExecutionOutput) { 4229 op := &request.Operation{ 4230 Name: opStartNotebookExecution, 4231 HTTPMethod: "POST", 4232 HTTPPath: "/", 4233 } 4234 4235 if input == nil { 4236 input = &StartNotebookExecutionInput{} 4237 } 4238 4239 output = &StartNotebookExecutionOutput{} 4240 req = c.newRequest(op, input, output) 4241 return 4242} 4243 4244// StartNotebookExecution API operation for Amazon Elastic MapReduce. 4245// 4246// Starts a notebook execution. 4247// 4248// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 4249// with awserr.Error's Code and Message methods to get detailed information about 4250// the error. 4251// 4252// See the AWS API reference guide for Amazon Elastic MapReduce's 4253// API operation StartNotebookExecution for usage and error information. 4254// 4255// Returned Error Types: 4256// * InternalServerException 4257// This exception occurs when there is an internal failure in the EMR service. 4258// 4259// * InvalidRequestException 4260// This exception occurs when there is something wrong with user input. 4261// 4262// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/StartNotebookExecution 4263func (c *EMR) StartNotebookExecution(input *StartNotebookExecutionInput) (*StartNotebookExecutionOutput, error) { 4264 req, out := c.StartNotebookExecutionRequest(input) 4265 return out, req.Send() 4266} 4267 4268// StartNotebookExecutionWithContext is the same as StartNotebookExecution with the addition of 4269// the ability to pass a context and additional request options. 4270// 4271// See StartNotebookExecution for details on how to use this API operation. 4272// 4273// The context must be non-nil and will be used for request cancellation. If 4274// the context is nil a panic will occur. In the future the SDK may create 4275// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 4276// for more information on using Contexts. 4277func (c *EMR) StartNotebookExecutionWithContext(ctx aws.Context, input *StartNotebookExecutionInput, opts ...request.Option) (*StartNotebookExecutionOutput, error) { 4278 req, out := c.StartNotebookExecutionRequest(input) 4279 req.SetContext(ctx) 4280 req.ApplyOptions(opts...) 4281 return out, req.Send() 4282} 4283 4284const opStopNotebookExecution = "StopNotebookExecution" 4285 4286// StopNotebookExecutionRequest generates a "aws/request.Request" representing the 4287// client's request for the StopNotebookExecution operation. The "output" return 4288// value will be populated with the request's response once the request completes 4289// successfully. 4290// 4291// Use "Send" method on the returned Request to send the API call to the service. 4292// the "output" return value is not valid until after Send returns without error. 4293// 4294// See StopNotebookExecution for more information on using the StopNotebookExecution 4295// API call, and error handling. 4296// 4297// This method is useful when you want to inject custom logic or configuration 4298// into the SDK's request lifecycle. Such as custom headers, or retry logic. 4299// 4300// 4301// // Example sending a request using the StopNotebookExecutionRequest method. 4302// req, resp := client.StopNotebookExecutionRequest(params) 4303// 4304// err := req.Send() 4305// if err == nil { // resp is now filled 4306// fmt.Println(resp) 4307// } 4308// 4309// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/StopNotebookExecution 4310func (c *EMR) StopNotebookExecutionRequest(input *StopNotebookExecutionInput) (req *request.Request, output *StopNotebookExecutionOutput) { 4311 op := &request.Operation{ 4312 Name: opStopNotebookExecution, 4313 HTTPMethod: "POST", 4314 HTTPPath: "/", 4315 } 4316 4317 if input == nil { 4318 input = &StopNotebookExecutionInput{} 4319 } 4320 4321 output = &StopNotebookExecutionOutput{} 4322 req = c.newRequest(op, input, output) 4323 req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 4324 return 4325} 4326 4327// StopNotebookExecution API operation for Amazon Elastic MapReduce. 4328// 4329// Stops a notebook execution. 4330// 4331// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 4332// with awserr.Error's Code and Message methods to get detailed information about 4333// the error. 4334// 4335// See the AWS API reference guide for Amazon Elastic MapReduce's 4336// API operation StopNotebookExecution for usage and error information. 4337// 4338// Returned Error Types: 4339// * InternalServerError 4340// Indicates that an error occurred while processing the request and that the 4341// request was not completed. 4342// 4343// * InvalidRequestException 4344// This exception occurs when there is something wrong with user input. 4345// 4346// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/StopNotebookExecution 4347func (c *EMR) StopNotebookExecution(input *StopNotebookExecutionInput) (*StopNotebookExecutionOutput, error) { 4348 req, out := c.StopNotebookExecutionRequest(input) 4349 return out, req.Send() 4350} 4351 4352// StopNotebookExecutionWithContext is the same as StopNotebookExecution with the addition of 4353// the ability to pass a context and additional request options. 4354// 4355// See StopNotebookExecution for details on how to use this API operation. 4356// 4357// The context must be non-nil and will be used for request cancellation. If 4358// the context is nil a panic will occur. In the future the SDK may create 4359// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 4360// for more information on using Contexts. 4361func (c *EMR) StopNotebookExecutionWithContext(ctx aws.Context, input *StopNotebookExecutionInput, opts ...request.Option) (*StopNotebookExecutionOutput, error) { 4362 req, out := c.StopNotebookExecutionRequest(input) 4363 req.SetContext(ctx) 4364 req.ApplyOptions(opts...) 4365 return out, req.Send() 4366} 4367 4368const opTerminateJobFlows = "TerminateJobFlows" 4369 4370// TerminateJobFlowsRequest generates a "aws/request.Request" representing the 4371// client's request for the TerminateJobFlows operation. The "output" return 4372// value will be populated with the request's response once the request completes 4373// successfully. 4374// 4375// Use "Send" method on the returned Request to send the API call to the service. 4376// the "output" return value is not valid until after Send returns without error. 4377// 4378// See TerminateJobFlows for more information on using the TerminateJobFlows 4379// API call, and error handling. 4380// 4381// This method is useful when you want to inject custom logic or configuration 4382// into the SDK's request lifecycle. Such as custom headers, or retry logic. 4383// 4384// 4385// // Example sending a request using the TerminateJobFlowsRequest method. 4386// req, resp := client.TerminateJobFlowsRequest(params) 4387// 4388// err := req.Send() 4389// if err == nil { // resp is now filled 4390// fmt.Println(resp) 4391// } 4392// 4393// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/TerminateJobFlows 4394func (c *EMR) TerminateJobFlowsRequest(input *TerminateJobFlowsInput) (req *request.Request, output *TerminateJobFlowsOutput) { 4395 op := &request.Operation{ 4396 Name: opTerminateJobFlows, 4397 HTTPMethod: "POST", 4398 HTTPPath: "/", 4399 } 4400 4401 if input == nil { 4402 input = &TerminateJobFlowsInput{} 4403 } 4404 4405 output = &TerminateJobFlowsOutput{} 4406 req = c.newRequest(op, input, output) 4407 req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 4408 return 4409} 4410 4411// TerminateJobFlows API operation for Amazon Elastic MapReduce. 4412// 4413// TerminateJobFlows shuts a list of clusters (job flows) down. When a job flow 4414// is shut down, any step not yet completed is canceled and the EC2 instances 4415// on which the cluster is running are stopped. Any log files not already saved 4416// are uploaded to Amazon S3 if a LogUri was specified when the cluster was 4417// created. 4418// 4419// The maximum number of clusters allowed is 10. The call to TerminateJobFlows 4420// is asynchronous. Depending on the configuration of the cluster, it may take 4421// up to 1-5 minutes for the cluster to completely terminate and release allocated 4422// resources, such as Amazon EC2 instances. 4423// 4424// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 4425// with awserr.Error's Code and Message methods to get detailed information about 4426// the error. 4427// 4428// See the AWS API reference guide for Amazon Elastic MapReduce's 4429// API operation TerminateJobFlows for usage and error information. 4430// 4431// Returned Error Types: 4432// * InternalServerError 4433// Indicates that an error occurred while processing the request and that the 4434// request was not completed. 4435// 4436// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/TerminateJobFlows 4437func (c *EMR) TerminateJobFlows(input *TerminateJobFlowsInput) (*TerminateJobFlowsOutput, error) { 4438 req, out := c.TerminateJobFlowsRequest(input) 4439 return out, req.Send() 4440} 4441 4442// TerminateJobFlowsWithContext is the same as TerminateJobFlows with the addition of 4443// the ability to pass a context and additional request options. 4444// 4445// See TerminateJobFlows for details on how to use this API operation. 4446// 4447// The context must be non-nil and will be used for request cancellation. If 4448// the context is nil a panic will occur. In the future the SDK may create 4449// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 4450// for more information on using Contexts. 4451func (c *EMR) TerminateJobFlowsWithContext(ctx aws.Context, input *TerminateJobFlowsInput, opts ...request.Option) (*TerminateJobFlowsOutput, error) { 4452 req, out := c.TerminateJobFlowsRequest(input) 4453 req.SetContext(ctx) 4454 req.ApplyOptions(opts...) 4455 return out, req.Send() 4456} 4457 4458const opUpdateStudioSessionMapping = "UpdateStudioSessionMapping" 4459 4460// UpdateStudioSessionMappingRequest generates a "aws/request.Request" representing the 4461// client's request for the UpdateStudioSessionMapping operation. The "output" return 4462// value will be populated with the request's response once the request completes 4463// successfully. 4464// 4465// Use "Send" method on the returned Request to send the API call to the service. 4466// the "output" return value is not valid until after Send returns without error. 4467// 4468// See UpdateStudioSessionMapping for more information on using the UpdateStudioSessionMapping 4469// API call, and error handling. 4470// 4471// This method is useful when you want to inject custom logic or configuration 4472// into the SDK's request lifecycle. Such as custom headers, or retry logic. 4473// 4474// 4475// // Example sending a request using the UpdateStudioSessionMappingRequest method. 4476// req, resp := client.UpdateStudioSessionMappingRequest(params) 4477// 4478// err := req.Send() 4479// if err == nil { // resp is now filled 4480// fmt.Println(resp) 4481// } 4482// 4483// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/UpdateStudioSessionMapping 4484func (c *EMR) UpdateStudioSessionMappingRequest(input *UpdateStudioSessionMappingInput) (req *request.Request, output *UpdateStudioSessionMappingOutput) { 4485 op := &request.Operation{ 4486 Name: opUpdateStudioSessionMapping, 4487 HTTPMethod: "POST", 4488 HTTPPath: "/", 4489 } 4490 4491 if input == nil { 4492 input = &UpdateStudioSessionMappingInput{} 4493 } 4494 4495 output = &UpdateStudioSessionMappingOutput{} 4496 req = c.newRequest(op, input, output) 4497 req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 4498 return 4499} 4500 4501// UpdateStudioSessionMapping API operation for Amazon Elastic MapReduce. 4502// 4503// 4504// The Amazon EMR Studio APIs are in preview release for Amazon EMR and are 4505// subject to change. 4506// 4507// Updates the session policy attached to the user or group for the specified 4508// Amazon EMR Studio. 4509// 4510// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 4511// with awserr.Error's Code and Message methods to get detailed information about 4512// the error. 4513// 4514// See the AWS API reference guide for Amazon Elastic MapReduce's 4515// API operation UpdateStudioSessionMapping for usage and error information. 4516// 4517// Returned Error Types: 4518// * InternalServerError 4519// Indicates that an error occurred while processing the request and that the 4520// request was not completed. 4521// 4522// * InvalidRequestException 4523// This exception occurs when there is something wrong with user input. 4524// 4525// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/UpdateStudioSessionMapping 4526func (c *EMR) UpdateStudioSessionMapping(input *UpdateStudioSessionMappingInput) (*UpdateStudioSessionMappingOutput, error) { 4527 req, out := c.UpdateStudioSessionMappingRequest(input) 4528 return out, req.Send() 4529} 4530 4531// UpdateStudioSessionMappingWithContext is the same as UpdateStudioSessionMapping with the addition of 4532// the ability to pass a context and additional request options. 4533// 4534// See UpdateStudioSessionMapping for details on how to use this API operation. 4535// 4536// The context must be non-nil and will be used for request cancellation. If 4537// the context is nil a panic will occur. In the future the SDK may create 4538// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 4539// for more information on using Contexts. 4540func (c *EMR) UpdateStudioSessionMappingWithContext(ctx aws.Context, input *UpdateStudioSessionMappingInput, opts ...request.Option) (*UpdateStudioSessionMappingOutput, error) { 4541 req, out := c.UpdateStudioSessionMappingRequest(input) 4542 req.SetContext(ctx) 4543 req.ApplyOptions(opts...) 4544 return out, req.Send() 4545} 4546 4547type AddInstanceFleetInput struct { 4548 _ struct{} `type:"structure"` 4549 4550 // The unique identifier of the cluster. 4551 // 4552 // ClusterId is a required field 4553 ClusterId *string `type:"string" required:"true"` 4554 4555 // Specifies the configuration of the instance fleet. 4556 // 4557 // InstanceFleet is a required field 4558 InstanceFleet *InstanceFleetConfig `type:"structure" required:"true"` 4559} 4560 4561// String returns the string representation 4562func (s AddInstanceFleetInput) String() string { 4563 return awsutil.Prettify(s) 4564} 4565 4566// GoString returns the string representation 4567func (s AddInstanceFleetInput) GoString() string { 4568 return s.String() 4569} 4570 4571// Validate inspects the fields of the type to determine if they are valid. 4572func (s *AddInstanceFleetInput) Validate() error { 4573 invalidParams := request.ErrInvalidParams{Context: "AddInstanceFleetInput"} 4574 if s.ClusterId == nil { 4575 invalidParams.Add(request.NewErrParamRequired("ClusterId")) 4576 } 4577 if s.InstanceFleet == nil { 4578 invalidParams.Add(request.NewErrParamRequired("InstanceFleet")) 4579 } 4580 if s.InstanceFleet != nil { 4581 if err := s.InstanceFleet.Validate(); err != nil { 4582 invalidParams.AddNested("InstanceFleet", err.(request.ErrInvalidParams)) 4583 } 4584 } 4585 4586 if invalidParams.Len() > 0 { 4587 return invalidParams 4588 } 4589 return nil 4590} 4591 4592// SetClusterId sets the ClusterId field's value. 4593func (s *AddInstanceFleetInput) SetClusterId(v string) *AddInstanceFleetInput { 4594 s.ClusterId = &v 4595 return s 4596} 4597 4598// SetInstanceFleet sets the InstanceFleet field's value. 4599func (s *AddInstanceFleetInput) SetInstanceFleet(v *InstanceFleetConfig) *AddInstanceFleetInput { 4600 s.InstanceFleet = v 4601 return s 4602} 4603 4604type AddInstanceFleetOutput struct { 4605 _ struct{} `type:"structure"` 4606 4607 // The Amazon Resource Name of the cluster. 4608 ClusterArn *string `min:"20" type:"string"` 4609 4610 // The unique identifier of the cluster. 4611 ClusterId *string `type:"string"` 4612 4613 // The unique identifier of the instance fleet. 4614 InstanceFleetId *string `type:"string"` 4615} 4616 4617// String returns the string representation 4618func (s AddInstanceFleetOutput) String() string { 4619 return awsutil.Prettify(s) 4620} 4621 4622// GoString returns the string representation 4623func (s AddInstanceFleetOutput) GoString() string { 4624 return s.String() 4625} 4626 4627// SetClusterArn sets the ClusterArn field's value. 4628func (s *AddInstanceFleetOutput) SetClusterArn(v string) *AddInstanceFleetOutput { 4629 s.ClusterArn = &v 4630 return s 4631} 4632 4633// SetClusterId sets the ClusterId field's value. 4634func (s *AddInstanceFleetOutput) SetClusterId(v string) *AddInstanceFleetOutput { 4635 s.ClusterId = &v 4636 return s 4637} 4638 4639// SetInstanceFleetId sets the InstanceFleetId field's value. 4640func (s *AddInstanceFleetOutput) SetInstanceFleetId(v string) *AddInstanceFleetOutput { 4641 s.InstanceFleetId = &v 4642 return s 4643} 4644 4645// Input to an AddInstanceGroups call. 4646type AddInstanceGroupsInput struct { 4647 _ struct{} `type:"structure"` 4648 4649 // Instance groups to add. 4650 // 4651 // InstanceGroups is a required field 4652 InstanceGroups []*InstanceGroupConfig `type:"list" required:"true"` 4653 4654 // Job flow in which to add the instance groups. 4655 // 4656 // JobFlowId is a required field 4657 JobFlowId *string `type:"string" required:"true"` 4658} 4659 4660// String returns the string representation 4661func (s AddInstanceGroupsInput) String() string { 4662 return awsutil.Prettify(s) 4663} 4664 4665// GoString returns the string representation 4666func (s AddInstanceGroupsInput) GoString() string { 4667 return s.String() 4668} 4669 4670// Validate inspects the fields of the type to determine if they are valid. 4671func (s *AddInstanceGroupsInput) Validate() error { 4672 invalidParams := request.ErrInvalidParams{Context: "AddInstanceGroupsInput"} 4673 if s.InstanceGroups == nil { 4674 invalidParams.Add(request.NewErrParamRequired("InstanceGroups")) 4675 } 4676 if s.JobFlowId == nil { 4677 invalidParams.Add(request.NewErrParamRequired("JobFlowId")) 4678 } 4679 if s.InstanceGroups != nil { 4680 for i, v := range s.InstanceGroups { 4681 if v == nil { 4682 continue 4683 } 4684 if err := v.Validate(); err != nil { 4685 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "InstanceGroups", i), err.(request.ErrInvalidParams)) 4686 } 4687 } 4688 } 4689 4690 if invalidParams.Len() > 0 { 4691 return invalidParams 4692 } 4693 return nil 4694} 4695 4696// SetInstanceGroups sets the InstanceGroups field's value. 4697func (s *AddInstanceGroupsInput) SetInstanceGroups(v []*InstanceGroupConfig) *AddInstanceGroupsInput { 4698 s.InstanceGroups = v 4699 return s 4700} 4701 4702// SetJobFlowId sets the JobFlowId field's value. 4703func (s *AddInstanceGroupsInput) SetJobFlowId(v string) *AddInstanceGroupsInput { 4704 s.JobFlowId = &v 4705 return s 4706} 4707 4708// Output from an AddInstanceGroups call. 4709type AddInstanceGroupsOutput struct { 4710 _ struct{} `type:"structure"` 4711 4712 // The Amazon Resource Name of the cluster. 4713 ClusterArn *string `min:"20" type:"string"` 4714 4715 // Instance group IDs of the newly created instance groups. 4716 InstanceGroupIds []*string `type:"list"` 4717 4718 // The job flow ID in which the instance groups are added. 4719 JobFlowId *string `type:"string"` 4720} 4721 4722// String returns the string representation 4723func (s AddInstanceGroupsOutput) String() string { 4724 return awsutil.Prettify(s) 4725} 4726 4727// GoString returns the string representation 4728func (s AddInstanceGroupsOutput) GoString() string { 4729 return s.String() 4730} 4731 4732// SetClusterArn sets the ClusterArn field's value. 4733func (s *AddInstanceGroupsOutput) SetClusterArn(v string) *AddInstanceGroupsOutput { 4734 s.ClusterArn = &v 4735 return s 4736} 4737 4738// SetInstanceGroupIds sets the InstanceGroupIds field's value. 4739func (s *AddInstanceGroupsOutput) SetInstanceGroupIds(v []*string) *AddInstanceGroupsOutput { 4740 s.InstanceGroupIds = v 4741 return s 4742} 4743 4744// SetJobFlowId sets the JobFlowId field's value. 4745func (s *AddInstanceGroupsOutput) SetJobFlowId(v string) *AddInstanceGroupsOutput { 4746 s.JobFlowId = &v 4747 return s 4748} 4749 4750// The input argument to the AddJobFlowSteps operation. 4751type AddJobFlowStepsInput struct { 4752 _ struct{} `type:"structure"` 4753 4754 // A string that uniquely identifies the job flow. This identifier is returned 4755 // by RunJobFlow and can also be obtained from ListClusters. 4756 // 4757 // JobFlowId is a required field 4758 JobFlowId *string `type:"string" required:"true"` 4759 4760 // A list of StepConfig to be executed by the job flow. 4761 // 4762 // Steps is a required field 4763 Steps []*StepConfig `type:"list" required:"true"` 4764} 4765 4766// String returns the string representation 4767func (s AddJobFlowStepsInput) String() string { 4768 return awsutil.Prettify(s) 4769} 4770 4771// GoString returns the string representation 4772func (s AddJobFlowStepsInput) GoString() string { 4773 return s.String() 4774} 4775 4776// Validate inspects the fields of the type to determine if they are valid. 4777func (s *AddJobFlowStepsInput) Validate() error { 4778 invalidParams := request.ErrInvalidParams{Context: "AddJobFlowStepsInput"} 4779 if s.JobFlowId == nil { 4780 invalidParams.Add(request.NewErrParamRequired("JobFlowId")) 4781 } 4782 if s.Steps == nil { 4783 invalidParams.Add(request.NewErrParamRequired("Steps")) 4784 } 4785 if s.Steps != nil { 4786 for i, v := range s.Steps { 4787 if v == nil { 4788 continue 4789 } 4790 if err := v.Validate(); err != nil { 4791 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Steps", i), err.(request.ErrInvalidParams)) 4792 } 4793 } 4794 } 4795 4796 if invalidParams.Len() > 0 { 4797 return invalidParams 4798 } 4799 return nil 4800} 4801 4802// SetJobFlowId sets the JobFlowId field's value. 4803func (s *AddJobFlowStepsInput) SetJobFlowId(v string) *AddJobFlowStepsInput { 4804 s.JobFlowId = &v 4805 return s 4806} 4807 4808// SetSteps sets the Steps field's value. 4809func (s *AddJobFlowStepsInput) SetSteps(v []*StepConfig) *AddJobFlowStepsInput { 4810 s.Steps = v 4811 return s 4812} 4813 4814// The output for the AddJobFlowSteps operation. 4815type AddJobFlowStepsOutput struct { 4816 _ struct{} `type:"structure"` 4817 4818 // The identifiers of the list of steps added to the job flow. 4819 StepIds []*string `type:"list"` 4820} 4821 4822// String returns the string representation 4823func (s AddJobFlowStepsOutput) String() string { 4824 return awsutil.Prettify(s) 4825} 4826 4827// GoString returns the string representation 4828func (s AddJobFlowStepsOutput) GoString() string { 4829 return s.String() 4830} 4831 4832// SetStepIds sets the StepIds field's value. 4833func (s *AddJobFlowStepsOutput) SetStepIds(v []*string) *AddJobFlowStepsOutput { 4834 s.StepIds = v 4835 return s 4836} 4837 4838// This input identifies a cluster and a list of tags to attach. 4839type AddTagsInput struct { 4840 _ struct{} `type:"structure"` 4841 4842 // The Amazon EMR resource identifier to which tags will be added. This value 4843 // must be a cluster identifier. 4844 // 4845 // ResourceId is a required field 4846 ResourceId *string `type:"string" required:"true"` 4847 4848 // A list of tags to associate with a cluster and propagate to EC2 instances. 4849 // Tags are user-defined key-value pairs that consist of a required key string 4850 // with a maximum of 128 characters, and an optional value string with a maximum 4851 // of 256 characters. 4852 // 4853 // Tags is a required field 4854 Tags []*Tag `type:"list" required:"true"` 4855} 4856 4857// String returns the string representation 4858func (s AddTagsInput) String() string { 4859 return awsutil.Prettify(s) 4860} 4861 4862// GoString returns the string representation 4863func (s AddTagsInput) GoString() string { 4864 return s.String() 4865} 4866 4867// Validate inspects the fields of the type to determine if they are valid. 4868func (s *AddTagsInput) Validate() error { 4869 invalidParams := request.ErrInvalidParams{Context: "AddTagsInput"} 4870 if s.ResourceId == nil { 4871 invalidParams.Add(request.NewErrParamRequired("ResourceId")) 4872 } 4873 if s.Tags == nil { 4874 invalidParams.Add(request.NewErrParamRequired("Tags")) 4875 } 4876 4877 if invalidParams.Len() > 0 { 4878 return invalidParams 4879 } 4880 return nil 4881} 4882 4883// SetResourceId sets the ResourceId field's value. 4884func (s *AddTagsInput) SetResourceId(v string) *AddTagsInput { 4885 s.ResourceId = &v 4886 return s 4887} 4888 4889// SetTags sets the Tags field's value. 4890func (s *AddTagsInput) SetTags(v []*Tag) *AddTagsInput { 4891 s.Tags = v 4892 return s 4893} 4894 4895// This output indicates the result of adding tags to a resource. 4896type AddTagsOutput struct { 4897 _ struct{} `type:"structure"` 4898} 4899 4900// String returns the string representation 4901func (s AddTagsOutput) String() string { 4902 return awsutil.Prettify(s) 4903} 4904 4905// GoString returns the string representation 4906func (s AddTagsOutput) GoString() string { 4907 return s.String() 4908} 4909 4910// With Amazon EMR release version 4.0 and later, the only accepted parameter 4911// is the application name. To pass arguments to applications, you use configuration 4912// classifications specified using configuration JSON objects. For more information, 4913// see Configuring Applications (https://docs.aws.amazon.com/emr/latest/ReleaseGuide/emr-configure-apps.html). 4914// 4915// With earlier Amazon EMR releases, the application is any Amazon or third-party 4916// software that you can add to the cluster. This structure contains a list 4917// of strings that indicates the software to use with the cluster and accepts 4918// a user argument list. Amazon EMR accepts and forwards the argument list to 4919// the corresponding installation script as bootstrap action argument. 4920type Application struct { 4921 _ struct{} `type:"structure"` 4922 4923 // This option is for advanced users only. This is meta information about third-party 4924 // applications that third-party vendors use for testing purposes. 4925 AdditionalInfo map[string]*string `type:"map"` 4926 4927 // Arguments for Amazon EMR to pass to the application. 4928 Args []*string `type:"list"` 4929 4930 // The name of the application. 4931 Name *string `type:"string"` 4932 4933 // The version of the application. 4934 Version *string `type:"string"` 4935} 4936 4937// String returns the string representation 4938func (s Application) String() string { 4939 return awsutil.Prettify(s) 4940} 4941 4942// GoString returns the string representation 4943func (s Application) GoString() string { 4944 return s.String() 4945} 4946 4947// SetAdditionalInfo sets the AdditionalInfo field's value. 4948func (s *Application) SetAdditionalInfo(v map[string]*string) *Application { 4949 s.AdditionalInfo = v 4950 return s 4951} 4952 4953// SetArgs sets the Args field's value. 4954func (s *Application) SetArgs(v []*string) *Application { 4955 s.Args = v 4956 return s 4957} 4958 4959// SetName sets the Name field's value. 4960func (s *Application) SetName(v string) *Application { 4961 s.Name = &v 4962 return s 4963} 4964 4965// SetVersion sets the Version field's value. 4966func (s *Application) SetVersion(v string) *Application { 4967 s.Version = &v 4968 return s 4969} 4970 4971// An automatic scaling policy for a core instance group or task instance group 4972// in an Amazon EMR cluster. An automatic scaling policy defines how an instance 4973// group dynamically adds and terminates EC2 instances in response to the value 4974// of a CloudWatch metric. See PutAutoScalingPolicy. 4975type AutoScalingPolicy struct { 4976 _ struct{} `type:"structure"` 4977 4978 // The upper and lower EC2 instance limits for an automatic scaling policy. 4979 // Automatic scaling activity will not cause an instance group to grow above 4980 // or below these limits. 4981 // 4982 // Constraints is a required field 4983 Constraints *ScalingConstraints `type:"structure" required:"true"` 4984 4985 // The scale-in and scale-out rules that comprise the automatic scaling policy. 4986 // 4987 // Rules is a required field 4988 Rules []*ScalingRule `type:"list" required:"true"` 4989} 4990 4991// String returns the string representation 4992func (s AutoScalingPolicy) String() string { 4993 return awsutil.Prettify(s) 4994} 4995 4996// GoString returns the string representation 4997func (s AutoScalingPolicy) GoString() string { 4998 return s.String() 4999} 5000 5001// Validate inspects the fields of the type to determine if they are valid. 5002func (s *AutoScalingPolicy) Validate() error { 5003 invalidParams := request.ErrInvalidParams{Context: "AutoScalingPolicy"} 5004 if s.Constraints == nil { 5005 invalidParams.Add(request.NewErrParamRequired("Constraints")) 5006 } 5007 if s.Rules == nil { 5008 invalidParams.Add(request.NewErrParamRequired("Rules")) 5009 } 5010 if s.Constraints != nil { 5011 if err := s.Constraints.Validate(); err != nil { 5012 invalidParams.AddNested("Constraints", err.(request.ErrInvalidParams)) 5013 } 5014 } 5015 if s.Rules != nil { 5016 for i, v := range s.Rules { 5017 if v == nil { 5018 continue 5019 } 5020 if err := v.Validate(); err != nil { 5021 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Rules", i), err.(request.ErrInvalidParams)) 5022 } 5023 } 5024 } 5025 5026 if invalidParams.Len() > 0 { 5027 return invalidParams 5028 } 5029 return nil 5030} 5031 5032// SetConstraints sets the Constraints field's value. 5033func (s *AutoScalingPolicy) SetConstraints(v *ScalingConstraints) *AutoScalingPolicy { 5034 s.Constraints = v 5035 return s 5036} 5037 5038// SetRules sets the Rules field's value. 5039func (s *AutoScalingPolicy) SetRules(v []*ScalingRule) *AutoScalingPolicy { 5040 s.Rules = v 5041 return s 5042} 5043 5044// An automatic scaling policy for a core instance group or task instance group 5045// in an Amazon EMR cluster. The automatic scaling policy defines how an instance 5046// group dynamically adds and terminates EC2 instances in response to the value 5047// of a CloudWatch metric. See PutAutoScalingPolicy. 5048type AutoScalingPolicyDescription struct { 5049 _ struct{} `type:"structure"` 5050 5051 // The upper and lower EC2 instance limits for an automatic scaling policy. 5052 // Automatic scaling activity will not cause an instance group to grow above 5053 // or below these limits. 5054 Constraints *ScalingConstraints `type:"structure"` 5055 5056 // The scale-in and scale-out rules that comprise the automatic scaling policy. 5057 Rules []*ScalingRule `type:"list"` 5058 5059 // The status of an automatic scaling policy. 5060 Status *AutoScalingPolicyStatus `type:"structure"` 5061} 5062 5063// String returns the string representation 5064func (s AutoScalingPolicyDescription) String() string { 5065 return awsutil.Prettify(s) 5066} 5067 5068// GoString returns the string representation 5069func (s AutoScalingPolicyDescription) GoString() string { 5070 return s.String() 5071} 5072 5073// SetConstraints sets the Constraints field's value. 5074func (s *AutoScalingPolicyDescription) SetConstraints(v *ScalingConstraints) *AutoScalingPolicyDescription { 5075 s.Constraints = v 5076 return s 5077} 5078 5079// SetRules sets the Rules field's value. 5080func (s *AutoScalingPolicyDescription) SetRules(v []*ScalingRule) *AutoScalingPolicyDescription { 5081 s.Rules = v 5082 return s 5083} 5084 5085// SetStatus sets the Status field's value. 5086func (s *AutoScalingPolicyDescription) SetStatus(v *AutoScalingPolicyStatus) *AutoScalingPolicyDescription { 5087 s.Status = v 5088 return s 5089} 5090 5091// The reason for an AutoScalingPolicyStatus change. 5092type AutoScalingPolicyStateChangeReason struct { 5093 _ struct{} `type:"structure"` 5094 5095 // The code indicating the reason for the change in status.USER_REQUEST indicates 5096 // that the scaling policy status was changed by a user. PROVISION_FAILURE indicates 5097 // that the status change was because the policy failed to provision. CLEANUP_FAILURE 5098 // indicates an error. 5099 Code *string `type:"string" enum:"AutoScalingPolicyStateChangeReasonCode"` 5100 5101 // A friendly, more verbose message that accompanies an automatic scaling policy 5102 // state change. 5103 Message *string `type:"string"` 5104} 5105 5106// String returns the string representation 5107func (s AutoScalingPolicyStateChangeReason) String() string { 5108 return awsutil.Prettify(s) 5109} 5110 5111// GoString returns the string representation 5112func (s AutoScalingPolicyStateChangeReason) GoString() string { 5113 return s.String() 5114} 5115 5116// SetCode sets the Code field's value. 5117func (s *AutoScalingPolicyStateChangeReason) SetCode(v string) *AutoScalingPolicyStateChangeReason { 5118 s.Code = &v 5119 return s 5120} 5121 5122// SetMessage sets the Message field's value. 5123func (s *AutoScalingPolicyStateChangeReason) SetMessage(v string) *AutoScalingPolicyStateChangeReason { 5124 s.Message = &v 5125 return s 5126} 5127 5128// The status of an automatic scaling policy. 5129type AutoScalingPolicyStatus struct { 5130 _ struct{} `type:"structure"` 5131 5132 // Indicates the status of the automatic scaling policy. 5133 State *string `type:"string" enum:"AutoScalingPolicyState"` 5134 5135 // The reason for a change in status. 5136 StateChangeReason *AutoScalingPolicyStateChangeReason `type:"structure"` 5137} 5138 5139// String returns the string representation 5140func (s AutoScalingPolicyStatus) String() string { 5141 return awsutil.Prettify(s) 5142} 5143 5144// GoString returns the string representation 5145func (s AutoScalingPolicyStatus) GoString() string { 5146 return s.String() 5147} 5148 5149// SetState sets the State field's value. 5150func (s *AutoScalingPolicyStatus) SetState(v string) *AutoScalingPolicyStatus { 5151 s.State = &v 5152 return s 5153} 5154 5155// SetStateChangeReason sets the StateChangeReason field's value. 5156func (s *AutoScalingPolicyStatus) SetStateChangeReason(v *AutoScalingPolicyStateChangeReason) *AutoScalingPolicyStatus { 5157 s.StateChangeReason = v 5158 return s 5159} 5160 5161// A configuration for Amazon EMR block public access. When BlockPublicSecurityGroupRules 5162// is set to true, Amazon EMR prevents cluster creation if one of the cluster's 5163// security groups has a rule that allows inbound traffic from 0.0.0.0/0 or 5164// ::/0 on a port, unless the port is specified as an exception using PermittedPublicSecurityGroupRuleRanges. 5165type BlockPublicAccessConfiguration struct { 5166 _ struct{} `type:"structure"` 5167 5168 // Indicates whether Amazon EMR block public access is enabled (true) or disabled 5169 // (false). By default, the value is false for accounts that have created EMR 5170 // clusters before July 2019. For accounts created after this, the default is 5171 // true. 5172 // 5173 // BlockPublicSecurityGroupRules is a required field 5174 BlockPublicSecurityGroupRules *bool `type:"boolean" required:"true"` 5175 5176 // Specifies ports and port ranges that are permitted to have security group 5177 // rules that allow inbound traffic from all public sources. For example, if 5178 // Port 23 (Telnet) is specified for PermittedPublicSecurityGroupRuleRanges, 5179 // Amazon EMR allows cluster creation if a security group associated with the 5180 // cluster has a rule that allows inbound traffic on Port 23 from IPv4 0.0.0.0/0 5181 // or IPv6 port ::/0 as the source. 5182 // 5183 // By default, Port 22, which is used for SSH access to the cluster EC2 instances, 5184 // is in the list of PermittedPublicSecurityGroupRuleRanges. 5185 PermittedPublicSecurityGroupRuleRanges []*PortRange `type:"list"` 5186} 5187 5188// String returns the string representation 5189func (s BlockPublicAccessConfiguration) String() string { 5190 return awsutil.Prettify(s) 5191} 5192 5193// GoString returns the string representation 5194func (s BlockPublicAccessConfiguration) GoString() string { 5195 return s.String() 5196} 5197 5198// Validate inspects the fields of the type to determine if they are valid. 5199func (s *BlockPublicAccessConfiguration) Validate() error { 5200 invalidParams := request.ErrInvalidParams{Context: "BlockPublicAccessConfiguration"} 5201 if s.BlockPublicSecurityGroupRules == nil { 5202 invalidParams.Add(request.NewErrParamRequired("BlockPublicSecurityGroupRules")) 5203 } 5204 if s.PermittedPublicSecurityGroupRuleRanges != nil { 5205 for i, v := range s.PermittedPublicSecurityGroupRuleRanges { 5206 if v == nil { 5207 continue 5208 } 5209 if err := v.Validate(); err != nil { 5210 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "PermittedPublicSecurityGroupRuleRanges", i), err.(request.ErrInvalidParams)) 5211 } 5212 } 5213 } 5214 5215 if invalidParams.Len() > 0 { 5216 return invalidParams 5217 } 5218 return nil 5219} 5220 5221// SetBlockPublicSecurityGroupRules sets the BlockPublicSecurityGroupRules field's value. 5222func (s *BlockPublicAccessConfiguration) SetBlockPublicSecurityGroupRules(v bool) *BlockPublicAccessConfiguration { 5223 s.BlockPublicSecurityGroupRules = &v 5224 return s 5225} 5226 5227// SetPermittedPublicSecurityGroupRuleRanges sets the PermittedPublicSecurityGroupRuleRanges field's value. 5228func (s *BlockPublicAccessConfiguration) SetPermittedPublicSecurityGroupRuleRanges(v []*PortRange) *BlockPublicAccessConfiguration { 5229 s.PermittedPublicSecurityGroupRuleRanges = v 5230 return s 5231} 5232 5233// Properties that describe the AWS principal that created the BlockPublicAccessConfiguration 5234// using the PutBlockPublicAccessConfiguration action as well as the date and 5235// time that the configuration was created. Each time a configuration for block 5236// public access is updated, Amazon EMR updates this metadata. 5237type BlockPublicAccessConfigurationMetadata struct { 5238 _ struct{} `type:"structure"` 5239 5240 // The Amazon Resource Name that created or last modified the configuration. 5241 // 5242 // CreatedByArn is a required field 5243 CreatedByArn *string `min:"20" type:"string" required:"true"` 5244 5245 // The date and time that the configuration was created. 5246 // 5247 // CreationDateTime is a required field 5248 CreationDateTime *time.Time `type:"timestamp" required:"true"` 5249} 5250 5251// String returns the string representation 5252func (s BlockPublicAccessConfigurationMetadata) String() string { 5253 return awsutil.Prettify(s) 5254} 5255 5256// GoString returns the string representation 5257func (s BlockPublicAccessConfigurationMetadata) GoString() string { 5258 return s.String() 5259} 5260 5261// SetCreatedByArn sets the CreatedByArn field's value. 5262func (s *BlockPublicAccessConfigurationMetadata) SetCreatedByArn(v string) *BlockPublicAccessConfigurationMetadata { 5263 s.CreatedByArn = &v 5264 return s 5265} 5266 5267// SetCreationDateTime sets the CreationDateTime field's value. 5268func (s *BlockPublicAccessConfigurationMetadata) SetCreationDateTime(v time.Time) *BlockPublicAccessConfigurationMetadata { 5269 s.CreationDateTime = &v 5270 return s 5271} 5272 5273// Configuration of a bootstrap action. 5274type BootstrapActionConfig struct { 5275 _ struct{} `type:"structure"` 5276 5277 // The name of the bootstrap action. 5278 // 5279 // Name is a required field 5280 Name *string `type:"string" required:"true"` 5281 5282 // The script run by the bootstrap action. 5283 // 5284 // ScriptBootstrapAction is a required field 5285 ScriptBootstrapAction *ScriptBootstrapActionConfig `type:"structure" required:"true"` 5286} 5287 5288// String returns the string representation 5289func (s BootstrapActionConfig) String() string { 5290 return awsutil.Prettify(s) 5291} 5292 5293// GoString returns the string representation 5294func (s BootstrapActionConfig) GoString() string { 5295 return s.String() 5296} 5297 5298// Validate inspects the fields of the type to determine if they are valid. 5299func (s *BootstrapActionConfig) Validate() error { 5300 invalidParams := request.ErrInvalidParams{Context: "BootstrapActionConfig"} 5301 if s.Name == nil { 5302 invalidParams.Add(request.NewErrParamRequired("Name")) 5303 } 5304 if s.ScriptBootstrapAction == nil { 5305 invalidParams.Add(request.NewErrParamRequired("ScriptBootstrapAction")) 5306 } 5307 if s.ScriptBootstrapAction != nil { 5308 if err := s.ScriptBootstrapAction.Validate(); err != nil { 5309 invalidParams.AddNested("ScriptBootstrapAction", err.(request.ErrInvalidParams)) 5310 } 5311 } 5312 5313 if invalidParams.Len() > 0 { 5314 return invalidParams 5315 } 5316 return nil 5317} 5318 5319// SetName sets the Name field's value. 5320func (s *BootstrapActionConfig) SetName(v string) *BootstrapActionConfig { 5321 s.Name = &v 5322 return s 5323} 5324 5325// SetScriptBootstrapAction sets the ScriptBootstrapAction field's value. 5326func (s *BootstrapActionConfig) SetScriptBootstrapAction(v *ScriptBootstrapActionConfig) *BootstrapActionConfig { 5327 s.ScriptBootstrapAction = v 5328 return s 5329} 5330 5331// Reports the configuration of a bootstrap action in a cluster (job flow). 5332type BootstrapActionDetail struct { 5333 _ struct{} `type:"structure"` 5334 5335 // A description of the bootstrap action. 5336 BootstrapActionConfig *BootstrapActionConfig `type:"structure"` 5337} 5338 5339// String returns the string representation 5340func (s BootstrapActionDetail) String() string { 5341 return awsutil.Prettify(s) 5342} 5343 5344// GoString returns the string representation 5345func (s BootstrapActionDetail) GoString() string { 5346 return s.String() 5347} 5348 5349// SetBootstrapActionConfig sets the BootstrapActionConfig field's value. 5350func (s *BootstrapActionDetail) SetBootstrapActionConfig(v *BootstrapActionConfig) *BootstrapActionDetail { 5351 s.BootstrapActionConfig = v 5352 return s 5353} 5354 5355// Specification of the status of a CancelSteps request. Available only in Amazon 5356// EMR version 4.8.0 and later, excluding version 5.0.0. 5357type CancelStepsInfo struct { 5358 _ struct{} `type:"structure"` 5359 5360 // The reason for the failure if the CancelSteps request fails. 5361 Reason *string `type:"string"` 5362 5363 // The status of a CancelSteps Request. The value may be SUBMITTED or FAILED. 5364 Status *string `type:"string" enum:"CancelStepsRequestStatus"` 5365 5366 // The encrypted StepId of a step. 5367 StepId *string `type:"string"` 5368} 5369 5370// String returns the string representation 5371func (s CancelStepsInfo) String() string { 5372 return awsutil.Prettify(s) 5373} 5374 5375// GoString returns the string representation 5376func (s CancelStepsInfo) GoString() string { 5377 return s.String() 5378} 5379 5380// SetReason sets the Reason field's value. 5381func (s *CancelStepsInfo) SetReason(v string) *CancelStepsInfo { 5382 s.Reason = &v 5383 return s 5384} 5385 5386// SetStatus sets the Status field's value. 5387func (s *CancelStepsInfo) SetStatus(v string) *CancelStepsInfo { 5388 s.Status = &v 5389 return s 5390} 5391 5392// SetStepId sets the StepId field's value. 5393func (s *CancelStepsInfo) SetStepId(v string) *CancelStepsInfo { 5394 s.StepId = &v 5395 return s 5396} 5397 5398// The input argument to the CancelSteps operation. 5399type CancelStepsInput struct { 5400 _ struct{} `type:"structure"` 5401 5402 // The ClusterID for the specified steps that will be canceled. Use RunJobFlow 5403 // and ListClusters to get ClusterIDs. 5404 // 5405 // ClusterId is a required field 5406 ClusterId *string `type:"string" required:"true"` 5407 5408 // The option to choose to cancel RUNNING steps. By default, the value is SEND_INTERRUPT. 5409 StepCancellationOption *string `type:"string" enum:"StepCancellationOption"` 5410 5411 // The list of StepIDs to cancel. Use ListSteps to get steps and their states 5412 // for the specified cluster. 5413 // 5414 // StepIds is a required field 5415 StepIds []*string `type:"list" required:"true"` 5416} 5417 5418// String returns the string representation 5419func (s CancelStepsInput) String() string { 5420 return awsutil.Prettify(s) 5421} 5422 5423// GoString returns the string representation 5424func (s CancelStepsInput) GoString() string { 5425 return s.String() 5426} 5427 5428// Validate inspects the fields of the type to determine if they are valid. 5429func (s *CancelStepsInput) Validate() error { 5430 invalidParams := request.ErrInvalidParams{Context: "CancelStepsInput"} 5431 if s.ClusterId == nil { 5432 invalidParams.Add(request.NewErrParamRequired("ClusterId")) 5433 } 5434 if s.StepIds == nil { 5435 invalidParams.Add(request.NewErrParamRequired("StepIds")) 5436 } 5437 5438 if invalidParams.Len() > 0 { 5439 return invalidParams 5440 } 5441 return nil 5442} 5443 5444// SetClusterId sets the ClusterId field's value. 5445func (s *CancelStepsInput) SetClusterId(v string) *CancelStepsInput { 5446 s.ClusterId = &v 5447 return s 5448} 5449 5450// SetStepCancellationOption sets the StepCancellationOption field's value. 5451func (s *CancelStepsInput) SetStepCancellationOption(v string) *CancelStepsInput { 5452 s.StepCancellationOption = &v 5453 return s 5454} 5455 5456// SetStepIds sets the StepIds field's value. 5457func (s *CancelStepsInput) SetStepIds(v []*string) *CancelStepsInput { 5458 s.StepIds = v 5459 return s 5460} 5461 5462// The output for the CancelSteps operation. 5463type CancelStepsOutput struct { 5464 _ struct{} `type:"structure"` 5465 5466 // A list of CancelStepsInfo, which shows the status of specified cancel requests 5467 // for each StepID specified. 5468 CancelStepsInfoList []*CancelStepsInfo `type:"list"` 5469} 5470 5471// String returns the string representation 5472func (s CancelStepsOutput) String() string { 5473 return awsutil.Prettify(s) 5474} 5475 5476// GoString returns the string representation 5477func (s CancelStepsOutput) GoString() string { 5478 return s.String() 5479} 5480 5481// SetCancelStepsInfoList sets the CancelStepsInfoList field's value. 5482func (s *CancelStepsOutput) SetCancelStepsInfoList(v []*CancelStepsInfo) *CancelStepsOutput { 5483 s.CancelStepsInfoList = v 5484 return s 5485} 5486 5487// The definition of a CloudWatch metric alarm, which determines when an automatic 5488// scaling activity is triggered. When the defined alarm conditions are satisfied, 5489// scaling activity begins. 5490type CloudWatchAlarmDefinition struct { 5491 _ struct{} `type:"structure"` 5492 5493 // Determines how the metric specified by MetricName is compared to the value 5494 // specified by Threshold. 5495 // 5496 // ComparisonOperator is a required field 5497 ComparisonOperator *string `type:"string" required:"true" enum:"ComparisonOperator"` 5498 5499 // A CloudWatch metric dimension. 5500 Dimensions []*MetricDimension `type:"list"` 5501 5502 // The number of periods, in five-minute increments, during which the alarm 5503 // condition must exist before the alarm triggers automatic scaling activity. 5504 // The default value is 1. 5505 EvaluationPeriods *int64 `type:"integer"` 5506 5507 // The name of the CloudWatch metric that is watched to determine an alarm condition. 5508 // 5509 // MetricName is a required field 5510 MetricName *string `type:"string" required:"true"` 5511 5512 // The namespace for the CloudWatch metric. The default is AWS/ElasticMapReduce. 5513 Namespace *string `type:"string"` 5514 5515 // The period, in seconds, over which the statistic is applied. EMR CloudWatch 5516 // metrics are emitted every five minutes (300 seconds), so if an EMR CloudWatch 5517 // metric is specified, specify 300. 5518 // 5519 // Period is a required field 5520 Period *int64 `type:"integer" required:"true"` 5521 5522 // The statistic to apply to the metric associated with the alarm. The default 5523 // is AVERAGE. 5524 Statistic *string `type:"string" enum:"Statistic"` 5525 5526 // The value against which the specified statistic is compared. 5527 // 5528 // Threshold is a required field 5529 Threshold *float64 `type:"double" required:"true"` 5530 5531 // The unit of measure associated with the CloudWatch metric being watched. 5532 // The value specified for Unit must correspond to the units specified in the 5533 // CloudWatch metric. 5534 Unit *string `type:"string" enum:"Unit"` 5535} 5536 5537// String returns the string representation 5538func (s CloudWatchAlarmDefinition) String() string { 5539 return awsutil.Prettify(s) 5540} 5541 5542// GoString returns the string representation 5543func (s CloudWatchAlarmDefinition) GoString() string { 5544 return s.String() 5545} 5546 5547// Validate inspects the fields of the type to determine if they are valid. 5548func (s *CloudWatchAlarmDefinition) Validate() error { 5549 invalidParams := request.ErrInvalidParams{Context: "CloudWatchAlarmDefinition"} 5550 if s.ComparisonOperator == nil { 5551 invalidParams.Add(request.NewErrParamRequired("ComparisonOperator")) 5552 } 5553 if s.MetricName == nil { 5554 invalidParams.Add(request.NewErrParamRequired("MetricName")) 5555 } 5556 if s.Period == nil { 5557 invalidParams.Add(request.NewErrParamRequired("Period")) 5558 } 5559 if s.Threshold == nil { 5560 invalidParams.Add(request.NewErrParamRequired("Threshold")) 5561 } 5562 5563 if invalidParams.Len() > 0 { 5564 return invalidParams 5565 } 5566 return nil 5567} 5568 5569// SetComparisonOperator sets the ComparisonOperator field's value. 5570func (s *CloudWatchAlarmDefinition) SetComparisonOperator(v string) *CloudWatchAlarmDefinition { 5571 s.ComparisonOperator = &v 5572 return s 5573} 5574 5575// SetDimensions sets the Dimensions field's value. 5576func (s *CloudWatchAlarmDefinition) SetDimensions(v []*MetricDimension) *CloudWatchAlarmDefinition { 5577 s.Dimensions = v 5578 return s 5579} 5580 5581// SetEvaluationPeriods sets the EvaluationPeriods field's value. 5582func (s *CloudWatchAlarmDefinition) SetEvaluationPeriods(v int64) *CloudWatchAlarmDefinition { 5583 s.EvaluationPeriods = &v 5584 return s 5585} 5586 5587// SetMetricName sets the MetricName field's value. 5588func (s *CloudWatchAlarmDefinition) SetMetricName(v string) *CloudWatchAlarmDefinition { 5589 s.MetricName = &v 5590 return s 5591} 5592 5593// SetNamespace sets the Namespace field's value. 5594func (s *CloudWatchAlarmDefinition) SetNamespace(v string) *CloudWatchAlarmDefinition { 5595 s.Namespace = &v 5596 return s 5597} 5598 5599// SetPeriod sets the Period field's value. 5600func (s *CloudWatchAlarmDefinition) SetPeriod(v int64) *CloudWatchAlarmDefinition { 5601 s.Period = &v 5602 return s 5603} 5604 5605// SetStatistic sets the Statistic field's value. 5606func (s *CloudWatchAlarmDefinition) SetStatistic(v string) *CloudWatchAlarmDefinition { 5607 s.Statistic = &v 5608 return s 5609} 5610 5611// SetThreshold sets the Threshold field's value. 5612func (s *CloudWatchAlarmDefinition) SetThreshold(v float64) *CloudWatchAlarmDefinition { 5613 s.Threshold = &v 5614 return s 5615} 5616 5617// SetUnit sets the Unit field's value. 5618func (s *CloudWatchAlarmDefinition) SetUnit(v string) *CloudWatchAlarmDefinition { 5619 s.Unit = &v 5620 return s 5621} 5622 5623// The detailed description of the cluster. 5624type Cluster struct { 5625 _ struct{} `type:"structure"` 5626 5627 // The applications installed on this cluster. 5628 Applications []*Application `type:"list"` 5629 5630 // An IAM role for automatic scaling policies. The default role is EMR_AutoScaling_DefaultRole. 5631 // The IAM role provides permissions that the automatic scaling feature requires 5632 // to launch and terminate EC2 instances in an instance group. 5633 AutoScalingRole *string `type:"string"` 5634 5635 // Specifies whether the cluster should terminate after completing all steps. 5636 AutoTerminate *bool `type:"boolean"` 5637 5638 // The Amazon Resource Name of the cluster. 5639 ClusterArn *string `min:"20" type:"string"` 5640 5641 // Applies only to Amazon EMR releases 4.x and later. The list of Configurations 5642 // supplied to the EMR cluster. 5643 Configurations []*Configuration `type:"list"` 5644 5645 // Available only in Amazon EMR version 5.7.0 and later. The ID of a custom 5646 // Amazon EBS-backed Linux AMI if the cluster uses a custom AMI. 5647 CustomAmiId *string `type:"string"` 5648 5649 // The size, in GiB, of the Amazon EBS root device volume of the Linux AMI that 5650 // is used for each EC2 instance. Available in Amazon EMR version 4.x and later. 5651 EbsRootVolumeSize *int64 `type:"integer"` 5652 5653 // Provides information about the EC2 instances in a cluster grouped by category. 5654 // For example, key name, subnet ID, IAM instance profile, and so on. 5655 Ec2InstanceAttributes *Ec2InstanceAttributes `type:"structure"` 5656 5657 // The unique identifier for the cluster. 5658 Id *string `type:"string"` 5659 5660 // 5661 // The instance fleet configuration is available only in Amazon EMR versions 5662 // 4.8.0 and later, excluding 5.0.x versions. 5663 // 5664 // The instance group configuration of the cluster. A value of INSTANCE_GROUP 5665 // indicates a uniform instance group configuration. A value of INSTANCE_FLEET 5666 // indicates an instance fleets configuration. 5667 InstanceCollectionType *string `type:"string" enum:"InstanceCollectionType"` 5668 5669 // Attributes for Kerberos configuration when Kerberos authentication is enabled 5670 // using a security configuration. For more information see Use Kerberos Authentication 5671 // (https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-kerberos.html) 5672 // in the Amazon EMR Management Guide. 5673 KerberosAttributes *KerberosAttributes `type:"structure"` 5674 5675 // The AWS KMS customer master key (CMK) used for encrypting log files. This 5676 // attribute is only available with EMR version 5.30.0 and later, excluding 5677 // EMR 6.0.0. 5678 LogEncryptionKmsKeyId *string `type:"string"` 5679 5680 // The path to the Amazon S3 location where logs for this cluster are stored. 5681 LogUri *string `type:"string"` 5682 5683 // The DNS name of the master node. If the cluster is on a private subnet, this 5684 // is the private DNS name. On a public subnet, this is the public DNS name. 5685 MasterPublicDnsName *string `type:"string"` 5686 5687 // The name of the cluster. 5688 Name *string `type:"string"` 5689 5690 // An approximation of the cost of the cluster, represented in m1.small/hours. 5691 // This value is incremented one time for every hour an m1.small instance runs. 5692 // Larger instances are weighted more, so an EC2 instance that is roughly four 5693 // times more expensive would result in the normalized instance hours being 5694 // incremented by four. This result is only an approximation and does not reflect 5695 // the actual billing rate. 5696 NormalizedInstanceHours *int64 `type:"integer"` 5697 5698 // The Amazon Resource Name (ARN) of the Outpost where the cluster is launched. 5699 OutpostArn *string `type:"string"` 5700 5701 // Placement group configured for an Amazon EMR cluster. 5702 PlacementGroups []*PlacementGroupConfig `type:"list"` 5703 5704 // The Amazon EMR release label, which determines the version of open-source 5705 // application packages installed on the cluster. Release labels are in the 5706 // form emr-x.x.x, where x.x.x is an Amazon EMR release version such as emr-5.14.0. 5707 // For more information about Amazon EMR release versions and included application 5708 // versions and features, see https://docs.aws.amazon.com/emr/latest/ReleaseGuide/ 5709 // (https://docs.aws.amazon.com/emr/latest/ReleaseGuide/). The release label 5710 // applies only to Amazon EMR releases version 4.0 and later. Earlier versions 5711 // use AmiVersion. 5712 ReleaseLabel *string `type:"string"` 5713 5714 // Applies only when CustomAmiID is used. Specifies the type of updates that 5715 // are applied from the Amazon Linux AMI package repositories when an instance 5716 // boots using the AMI. 5717 RepoUpgradeOnBoot *string `type:"string" enum:"RepoUpgradeOnBoot"` 5718 5719 // The AMI version requested for this cluster. 5720 RequestedAmiVersion *string `type:"string"` 5721 5722 // The AMI version running on this cluster. 5723 RunningAmiVersion *string `type:"string"` 5724 5725 // The way that individual Amazon EC2 instances terminate when an automatic 5726 // scale-in activity occurs or an instance group is resized. TERMINATE_AT_INSTANCE_HOUR 5727 // indicates that Amazon EMR terminates nodes at the instance-hour boundary, 5728 // regardless of when the request to terminate the instance was submitted. This 5729 // option is only available with Amazon EMR 5.1.0 and later and is the default 5730 // for clusters created using that version. TERMINATE_AT_TASK_COMPLETION indicates 5731 // that Amazon EMR adds nodes to a deny list and drains tasks from nodes before 5732 // terminating the Amazon EC2 instances, regardless of the instance-hour boundary. 5733 // With either behavior, Amazon EMR removes the least active nodes first and 5734 // blocks instance termination if it could lead to HDFS corruption. TERMINATE_AT_TASK_COMPLETION 5735 // is available only in Amazon EMR version 4.1.0 and later, and is the default 5736 // for versions of Amazon EMR earlier than 5.1.0. 5737 ScaleDownBehavior *string `type:"string" enum:"ScaleDownBehavior"` 5738 5739 // The name of the security configuration applied to the cluster. 5740 SecurityConfiguration *string `type:"string"` 5741 5742 // The IAM role that will be assumed by the Amazon EMR service to access AWS 5743 // resources on your behalf. 5744 ServiceRole *string `type:"string"` 5745 5746 // The current status details about the cluster. 5747 Status *ClusterStatus `type:"structure"` 5748 5749 // Specifies the number of steps that can be executed concurrently. 5750 StepConcurrencyLevel *int64 `type:"integer"` 5751 5752 // A list of tags associated with a cluster. 5753 Tags []*Tag `type:"list"` 5754 5755 // Indicates whether Amazon EMR will lock the cluster to prevent the EC2 instances 5756 // from being terminated by an API call or user intervention, or in the event 5757 // of a cluster error. 5758 TerminationProtected *bool `type:"boolean"` 5759 5760 // Indicates whether the cluster is visible to all IAM users of the AWS account 5761 // associated with the cluster. The default value, true, indicates that all 5762 // IAM users in the AWS account can perform cluster actions if they have the 5763 // proper IAM policy permissions. If this value is false, only the IAM user 5764 // that created the cluster can perform actions. This value can be changed on 5765 // a running cluster by using the SetVisibleToAllUsers action. You can override 5766 // the default value of true when you create a cluster by using the VisibleToAllUsers 5767 // parameter of the RunJobFlow action. 5768 VisibleToAllUsers *bool `type:"boolean"` 5769} 5770 5771// String returns the string representation 5772func (s Cluster) String() string { 5773 return awsutil.Prettify(s) 5774} 5775 5776// GoString returns the string representation 5777func (s Cluster) GoString() string { 5778 return s.String() 5779} 5780 5781// SetApplications sets the Applications field's value. 5782func (s *Cluster) SetApplications(v []*Application) *Cluster { 5783 s.Applications = v 5784 return s 5785} 5786 5787// SetAutoScalingRole sets the AutoScalingRole field's value. 5788func (s *Cluster) SetAutoScalingRole(v string) *Cluster { 5789 s.AutoScalingRole = &v 5790 return s 5791} 5792 5793// SetAutoTerminate sets the AutoTerminate field's value. 5794func (s *Cluster) SetAutoTerminate(v bool) *Cluster { 5795 s.AutoTerminate = &v 5796 return s 5797} 5798 5799// SetClusterArn sets the ClusterArn field's value. 5800func (s *Cluster) SetClusterArn(v string) *Cluster { 5801 s.ClusterArn = &v 5802 return s 5803} 5804 5805// SetConfigurations sets the Configurations field's value. 5806func (s *Cluster) SetConfigurations(v []*Configuration) *Cluster { 5807 s.Configurations = v 5808 return s 5809} 5810 5811// SetCustomAmiId sets the CustomAmiId field's value. 5812func (s *Cluster) SetCustomAmiId(v string) *Cluster { 5813 s.CustomAmiId = &v 5814 return s 5815} 5816 5817// SetEbsRootVolumeSize sets the EbsRootVolumeSize field's value. 5818func (s *Cluster) SetEbsRootVolumeSize(v int64) *Cluster { 5819 s.EbsRootVolumeSize = &v 5820 return s 5821} 5822 5823// SetEc2InstanceAttributes sets the Ec2InstanceAttributes field's value. 5824func (s *Cluster) SetEc2InstanceAttributes(v *Ec2InstanceAttributes) *Cluster { 5825 s.Ec2InstanceAttributes = v 5826 return s 5827} 5828 5829// SetId sets the Id field's value. 5830func (s *Cluster) SetId(v string) *Cluster { 5831 s.Id = &v 5832 return s 5833} 5834 5835// SetInstanceCollectionType sets the InstanceCollectionType field's value. 5836func (s *Cluster) SetInstanceCollectionType(v string) *Cluster { 5837 s.InstanceCollectionType = &v 5838 return s 5839} 5840 5841// SetKerberosAttributes sets the KerberosAttributes field's value. 5842func (s *Cluster) SetKerberosAttributes(v *KerberosAttributes) *Cluster { 5843 s.KerberosAttributes = v 5844 return s 5845} 5846 5847// SetLogEncryptionKmsKeyId sets the LogEncryptionKmsKeyId field's value. 5848func (s *Cluster) SetLogEncryptionKmsKeyId(v string) *Cluster { 5849 s.LogEncryptionKmsKeyId = &v 5850 return s 5851} 5852 5853// SetLogUri sets the LogUri field's value. 5854func (s *Cluster) SetLogUri(v string) *Cluster { 5855 s.LogUri = &v 5856 return s 5857} 5858 5859// SetMasterPublicDnsName sets the MasterPublicDnsName field's value. 5860func (s *Cluster) SetMasterPublicDnsName(v string) *Cluster { 5861 s.MasterPublicDnsName = &v 5862 return s 5863} 5864 5865// SetName sets the Name field's value. 5866func (s *Cluster) SetName(v string) *Cluster { 5867 s.Name = &v 5868 return s 5869} 5870 5871// SetNormalizedInstanceHours sets the NormalizedInstanceHours field's value. 5872func (s *Cluster) SetNormalizedInstanceHours(v int64) *Cluster { 5873 s.NormalizedInstanceHours = &v 5874 return s 5875} 5876 5877// SetOutpostArn sets the OutpostArn field's value. 5878func (s *Cluster) SetOutpostArn(v string) *Cluster { 5879 s.OutpostArn = &v 5880 return s 5881} 5882 5883// SetPlacementGroups sets the PlacementGroups field's value. 5884func (s *Cluster) SetPlacementGroups(v []*PlacementGroupConfig) *Cluster { 5885 s.PlacementGroups = v 5886 return s 5887} 5888 5889// SetReleaseLabel sets the ReleaseLabel field's value. 5890func (s *Cluster) SetReleaseLabel(v string) *Cluster { 5891 s.ReleaseLabel = &v 5892 return s 5893} 5894 5895// SetRepoUpgradeOnBoot sets the RepoUpgradeOnBoot field's value. 5896func (s *Cluster) SetRepoUpgradeOnBoot(v string) *Cluster { 5897 s.RepoUpgradeOnBoot = &v 5898 return s 5899} 5900 5901// SetRequestedAmiVersion sets the RequestedAmiVersion field's value. 5902func (s *Cluster) SetRequestedAmiVersion(v string) *Cluster { 5903 s.RequestedAmiVersion = &v 5904 return s 5905} 5906 5907// SetRunningAmiVersion sets the RunningAmiVersion field's value. 5908func (s *Cluster) SetRunningAmiVersion(v string) *Cluster { 5909 s.RunningAmiVersion = &v 5910 return s 5911} 5912 5913// SetScaleDownBehavior sets the ScaleDownBehavior field's value. 5914func (s *Cluster) SetScaleDownBehavior(v string) *Cluster { 5915 s.ScaleDownBehavior = &v 5916 return s 5917} 5918 5919// SetSecurityConfiguration sets the SecurityConfiguration field's value. 5920func (s *Cluster) SetSecurityConfiguration(v string) *Cluster { 5921 s.SecurityConfiguration = &v 5922 return s 5923} 5924 5925// SetServiceRole sets the ServiceRole field's value. 5926func (s *Cluster) SetServiceRole(v string) *Cluster { 5927 s.ServiceRole = &v 5928 return s 5929} 5930 5931// SetStatus sets the Status field's value. 5932func (s *Cluster) SetStatus(v *ClusterStatus) *Cluster { 5933 s.Status = v 5934 return s 5935} 5936 5937// SetStepConcurrencyLevel sets the StepConcurrencyLevel field's value. 5938func (s *Cluster) SetStepConcurrencyLevel(v int64) *Cluster { 5939 s.StepConcurrencyLevel = &v 5940 return s 5941} 5942 5943// SetTags sets the Tags field's value. 5944func (s *Cluster) SetTags(v []*Tag) *Cluster { 5945 s.Tags = v 5946 return s 5947} 5948 5949// SetTerminationProtected sets the TerminationProtected field's value. 5950func (s *Cluster) SetTerminationProtected(v bool) *Cluster { 5951 s.TerminationProtected = &v 5952 return s 5953} 5954 5955// SetVisibleToAllUsers sets the VisibleToAllUsers field's value. 5956func (s *Cluster) SetVisibleToAllUsers(v bool) *Cluster { 5957 s.VisibleToAllUsers = &v 5958 return s 5959} 5960 5961// The reason that the cluster changed to its current state. 5962type ClusterStateChangeReason struct { 5963 _ struct{} `type:"structure"` 5964 5965 // The programmatic code for the state change reason. 5966 Code *string `type:"string" enum:"ClusterStateChangeReasonCode"` 5967 5968 // The descriptive message for the state change reason. 5969 Message *string `type:"string"` 5970} 5971 5972// String returns the string representation 5973func (s ClusterStateChangeReason) String() string { 5974 return awsutil.Prettify(s) 5975} 5976 5977// GoString returns the string representation 5978func (s ClusterStateChangeReason) GoString() string { 5979 return s.String() 5980} 5981 5982// SetCode sets the Code field's value. 5983func (s *ClusterStateChangeReason) SetCode(v string) *ClusterStateChangeReason { 5984 s.Code = &v 5985 return s 5986} 5987 5988// SetMessage sets the Message field's value. 5989func (s *ClusterStateChangeReason) SetMessage(v string) *ClusterStateChangeReason { 5990 s.Message = &v 5991 return s 5992} 5993 5994// The detailed status of the cluster. 5995type ClusterStatus struct { 5996 _ struct{} `type:"structure"` 5997 5998 // The current state of the cluster. 5999 State *string `type:"string" enum:"ClusterState"` 6000 6001 // The reason for the cluster status change. 6002 StateChangeReason *ClusterStateChangeReason `type:"structure"` 6003 6004 // A timeline that represents the status of a cluster over the lifetime of the 6005 // cluster. 6006 Timeline *ClusterTimeline `type:"structure"` 6007} 6008 6009// String returns the string representation 6010func (s ClusterStatus) String() string { 6011 return awsutil.Prettify(s) 6012} 6013 6014// GoString returns the string representation 6015func (s ClusterStatus) GoString() string { 6016 return s.String() 6017} 6018 6019// SetState sets the State field's value. 6020func (s *ClusterStatus) SetState(v string) *ClusterStatus { 6021 s.State = &v 6022 return s 6023} 6024 6025// SetStateChangeReason sets the StateChangeReason field's value. 6026func (s *ClusterStatus) SetStateChangeReason(v *ClusterStateChangeReason) *ClusterStatus { 6027 s.StateChangeReason = v 6028 return s 6029} 6030 6031// SetTimeline sets the Timeline field's value. 6032func (s *ClusterStatus) SetTimeline(v *ClusterTimeline) *ClusterStatus { 6033 s.Timeline = v 6034 return s 6035} 6036 6037// The summary description of the cluster. 6038type ClusterSummary struct { 6039 _ struct{} `type:"structure"` 6040 6041 // The Amazon Resource Name of the cluster. 6042 ClusterArn *string `min:"20" type:"string"` 6043 6044 // The unique identifier for the cluster. 6045 Id *string `type:"string"` 6046 6047 // The name of the cluster. 6048 Name *string `type:"string"` 6049 6050 // An approximation of the cost of the cluster, represented in m1.small/hours. 6051 // This value is incremented one time for every hour an m1.small instance runs. 6052 // Larger instances are weighted more, so an EC2 instance that is roughly four 6053 // times more expensive would result in the normalized instance hours being 6054 // incremented by four. This result is only an approximation and does not reflect 6055 // the actual billing rate. 6056 NormalizedInstanceHours *int64 `type:"integer"` 6057 6058 // The Amazon Resource Name (ARN) of the Outpost where the cluster is launched. 6059 OutpostArn *string `type:"string"` 6060 6061 // The details about the current status of the cluster. 6062 Status *ClusterStatus `type:"structure"` 6063} 6064 6065// String returns the string representation 6066func (s ClusterSummary) String() string { 6067 return awsutil.Prettify(s) 6068} 6069 6070// GoString returns the string representation 6071func (s ClusterSummary) GoString() string { 6072 return s.String() 6073} 6074 6075// SetClusterArn sets the ClusterArn field's value. 6076func (s *ClusterSummary) SetClusterArn(v string) *ClusterSummary { 6077 s.ClusterArn = &v 6078 return s 6079} 6080 6081// SetId sets the Id field's value. 6082func (s *ClusterSummary) SetId(v string) *ClusterSummary { 6083 s.Id = &v 6084 return s 6085} 6086 6087// SetName sets the Name field's value. 6088func (s *ClusterSummary) SetName(v string) *ClusterSummary { 6089 s.Name = &v 6090 return s 6091} 6092 6093// SetNormalizedInstanceHours sets the NormalizedInstanceHours field's value. 6094func (s *ClusterSummary) SetNormalizedInstanceHours(v int64) *ClusterSummary { 6095 s.NormalizedInstanceHours = &v 6096 return s 6097} 6098 6099// SetOutpostArn sets the OutpostArn field's value. 6100func (s *ClusterSummary) SetOutpostArn(v string) *ClusterSummary { 6101 s.OutpostArn = &v 6102 return s 6103} 6104 6105// SetStatus sets the Status field's value. 6106func (s *ClusterSummary) SetStatus(v *ClusterStatus) *ClusterSummary { 6107 s.Status = v 6108 return s 6109} 6110 6111// Represents the timeline of the cluster's lifecycle. 6112type ClusterTimeline struct { 6113 _ struct{} `type:"structure"` 6114 6115 // The creation date and time of the cluster. 6116 CreationDateTime *time.Time `type:"timestamp"` 6117 6118 // The date and time when the cluster was terminated. 6119 EndDateTime *time.Time `type:"timestamp"` 6120 6121 // The date and time when the cluster was ready to run steps. 6122 ReadyDateTime *time.Time `type:"timestamp"` 6123} 6124 6125// String returns the string representation 6126func (s ClusterTimeline) String() string { 6127 return awsutil.Prettify(s) 6128} 6129 6130// GoString returns the string representation 6131func (s ClusterTimeline) GoString() string { 6132 return s.String() 6133} 6134 6135// SetCreationDateTime sets the CreationDateTime field's value. 6136func (s *ClusterTimeline) SetCreationDateTime(v time.Time) *ClusterTimeline { 6137 s.CreationDateTime = &v 6138 return s 6139} 6140 6141// SetEndDateTime sets the EndDateTime field's value. 6142func (s *ClusterTimeline) SetEndDateTime(v time.Time) *ClusterTimeline { 6143 s.EndDateTime = &v 6144 return s 6145} 6146 6147// SetReadyDateTime sets the ReadyDateTime field's value. 6148func (s *ClusterTimeline) SetReadyDateTime(v time.Time) *ClusterTimeline { 6149 s.ReadyDateTime = &v 6150 return s 6151} 6152 6153// An entity describing an executable that runs on a cluster. 6154type Command struct { 6155 _ struct{} `type:"structure"` 6156 6157 // Arguments for Amazon EMR to pass to the command for execution. 6158 Args []*string `type:"list"` 6159 6160 // The name of the command. 6161 Name *string `type:"string"` 6162 6163 // The Amazon S3 location of the command script. 6164 ScriptPath *string `type:"string"` 6165} 6166 6167// String returns the string representation 6168func (s Command) String() string { 6169 return awsutil.Prettify(s) 6170} 6171 6172// GoString returns the string representation 6173func (s Command) GoString() string { 6174 return s.String() 6175} 6176 6177// SetArgs sets the Args field's value. 6178func (s *Command) SetArgs(v []*string) *Command { 6179 s.Args = v 6180 return s 6181} 6182 6183// SetName sets the Name field's value. 6184func (s *Command) SetName(v string) *Command { 6185 s.Name = &v 6186 return s 6187} 6188 6189// SetScriptPath sets the ScriptPath field's value. 6190func (s *Command) SetScriptPath(v string) *Command { 6191 s.ScriptPath = &v 6192 return s 6193} 6194 6195// The EC2 unit limits for a managed scaling policy. The managed scaling activity 6196// of a cluster can not be above or below these limits. The limit only applies 6197// to the core and task nodes. The master node cannot be scaled after initial 6198// configuration. 6199type ComputeLimits struct { 6200 _ struct{} `type:"structure"` 6201 6202 // The upper boundary of EC2 units. It is measured through vCPU cores or instances 6203 // for instance groups and measured through units for instance fleets. Managed 6204 // scaling activities are not allowed beyond this boundary. The limit only applies 6205 // to the core and task nodes. The master node cannot be scaled after initial 6206 // configuration. 6207 // 6208 // MaximumCapacityUnits is a required field 6209 MaximumCapacityUnits *int64 `type:"integer" required:"true"` 6210 6211 // The upper boundary of EC2 units for core node type in a cluster. It is measured 6212 // through vCPU cores or instances for instance groups and measured through 6213 // units for instance fleets. The core units are not allowed to scale beyond 6214 // this boundary. The parameter is used to split capacity allocation between 6215 // core and task nodes. 6216 MaximumCoreCapacityUnits *int64 `type:"integer"` 6217 6218 // The upper boundary of On-Demand EC2 units. It is measured through vCPU cores 6219 // or instances for instance groups and measured through units for instance 6220 // fleets. The On-Demand units are not allowed to scale beyond this boundary. 6221 // The parameter is used to split capacity allocation between On-Demand and 6222 // Spot Instances. 6223 MaximumOnDemandCapacityUnits *int64 `type:"integer"` 6224 6225 // The lower boundary of EC2 units. It is measured through vCPU cores or instances 6226 // for instance groups and measured through units for instance fleets. Managed 6227 // scaling activities are not allowed beyond this boundary. The limit only applies 6228 // to the core and task nodes. The master node cannot be scaled after initial 6229 // configuration. 6230 // 6231 // MinimumCapacityUnits is a required field 6232 MinimumCapacityUnits *int64 `type:"integer" required:"true"` 6233 6234 // The unit type used for specifying a managed scaling policy. 6235 // 6236 // UnitType is a required field 6237 UnitType *string `type:"string" required:"true" enum:"ComputeLimitsUnitType"` 6238} 6239 6240// String returns the string representation 6241func (s ComputeLimits) String() string { 6242 return awsutil.Prettify(s) 6243} 6244 6245// GoString returns the string representation 6246func (s ComputeLimits) GoString() string { 6247 return s.String() 6248} 6249 6250// Validate inspects the fields of the type to determine if they are valid. 6251func (s *ComputeLimits) Validate() error { 6252 invalidParams := request.ErrInvalidParams{Context: "ComputeLimits"} 6253 if s.MaximumCapacityUnits == nil { 6254 invalidParams.Add(request.NewErrParamRequired("MaximumCapacityUnits")) 6255 } 6256 if s.MinimumCapacityUnits == nil { 6257 invalidParams.Add(request.NewErrParamRequired("MinimumCapacityUnits")) 6258 } 6259 if s.UnitType == nil { 6260 invalidParams.Add(request.NewErrParamRequired("UnitType")) 6261 } 6262 6263 if invalidParams.Len() > 0 { 6264 return invalidParams 6265 } 6266 return nil 6267} 6268 6269// SetMaximumCapacityUnits sets the MaximumCapacityUnits field's value. 6270func (s *ComputeLimits) SetMaximumCapacityUnits(v int64) *ComputeLimits { 6271 s.MaximumCapacityUnits = &v 6272 return s 6273} 6274 6275// SetMaximumCoreCapacityUnits sets the MaximumCoreCapacityUnits field's value. 6276func (s *ComputeLimits) SetMaximumCoreCapacityUnits(v int64) *ComputeLimits { 6277 s.MaximumCoreCapacityUnits = &v 6278 return s 6279} 6280 6281// SetMaximumOnDemandCapacityUnits sets the MaximumOnDemandCapacityUnits field's value. 6282func (s *ComputeLimits) SetMaximumOnDemandCapacityUnits(v int64) *ComputeLimits { 6283 s.MaximumOnDemandCapacityUnits = &v 6284 return s 6285} 6286 6287// SetMinimumCapacityUnits sets the MinimumCapacityUnits field's value. 6288func (s *ComputeLimits) SetMinimumCapacityUnits(v int64) *ComputeLimits { 6289 s.MinimumCapacityUnits = &v 6290 return s 6291} 6292 6293// SetUnitType sets the UnitType field's value. 6294func (s *ComputeLimits) SetUnitType(v string) *ComputeLimits { 6295 s.UnitType = &v 6296 return s 6297} 6298 6299// 6300// Amazon EMR releases 4.x or later. 6301// 6302// An optional configuration specification to be used when provisioning cluster 6303// instances, which can include configurations for applications and software 6304// bundled with Amazon EMR. A configuration consists of a classification, properties, 6305// and optional nested configurations. A classification refers to an application-specific 6306// configuration file. Properties are the settings you want to change in that 6307// file. For more information, see Configuring Applications (https://docs.aws.amazon.com/emr/latest/ReleaseGuide/emr-configure-apps.html). 6308type Configuration struct { 6309 _ struct{} `type:"structure"` 6310 6311 // The classification within a configuration. 6312 Classification *string `type:"string"` 6313 6314 // A list of additional configurations to apply within a configuration object. 6315 Configurations []*Configuration `type:"list"` 6316 6317 // A set of properties specified within a configuration classification. 6318 Properties map[string]*string `type:"map"` 6319} 6320 6321// String returns the string representation 6322func (s Configuration) String() string { 6323 return awsutil.Prettify(s) 6324} 6325 6326// GoString returns the string representation 6327func (s Configuration) GoString() string { 6328 return s.String() 6329} 6330 6331// SetClassification sets the Classification field's value. 6332func (s *Configuration) SetClassification(v string) *Configuration { 6333 s.Classification = &v 6334 return s 6335} 6336 6337// SetConfigurations sets the Configurations field's value. 6338func (s *Configuration) SetConfigurations(v []*Configuration) *Configuration { 6339 s.Configurations = v 6340 return s 6341} 6342 6343// SetProperties sets the Properties field's value. 6344func (s *Configuration) SetProperties(v map[string]*string) *Configuration { 6345 s.Properties = v 6346 return s 6347} 6348 6349type CreateSecurityConfigurationInput struct { 6350 _ struct{} `type:"structure"` 6351 6352 // The name of the security configuration. 6353 // 6354 // Name is a required field 6355 Name *string `type:"string" required:"true"` 6356 6357 // The security configuration details in JSON format. For JSON parameters and 6358 // examples, see Use Security Configurations to Set Up Cluster Security (https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-security-configurations.html) 6359 // in the Amazon EMR Management Guide. 6360 // 6361 // SecurityConfiguration is a required field 6362 SecurityConfiguration *string `type:"string" required:"true"` 6363} 6364 6365// String returns the string representation 6366func (s CreateSecurityConfigurationInput) String() string { 6367 return awsutil.Prettify(s) 6368} 6369 6370// GoString returns the string representation 6371func (s CreateSecurityConfigurationInput) GoString() string { 6372 return s.String() 6373} 6374 6375// Validate inspects the fields of the type to determine if they are valid. 6376func (s *CreateSecurityConfigurationInput) Validate() error { 6377 invalidParams := request.ErrInvalidParams{Context: "CreateSecurityConfigurationInput"} 6378 if s.Name == nil { 6379 invalidParams.Add(request.NewErrParamRequired("Name")) 6380 } 6381 if s.SecurityConfiguration == nil { 6382 invalidParams.Add(request.NewErrParamRequired("SecurityConfiguration")) 6383 } 6384 6385 if invalidParams.Len() > 0 { 6386 return invalidParams 6387 } 6388 return nil 6389} 6390 6391// SetName sets the Name field's value. 6392func (s *CreateSecurityConfigurationInput) SetName(v string) *CreateSecurityConfigurationInput { 6393 s.Name = &v 6394 return s 6395} 6396 6397// SetSecurityConfiguration sets the SecurityConfiguration field's value. 6398func (s *CreateSecurityConfigurationInput) SetSecurityConfiguration(v string) *CreateSecurityConfigurationInput { 6399 s.SecurityConfiguration = &v 6400 return s 6401} 6402 6403type CreateSecurityConfigurationOutput struct { 6404 _ struct{} `type:"structure"` 6405 6406 // The date and time the security configuration was created. 6407 // 6408 // CreationDateTime is a required field 6409 CreationDateTime *time.Time `type:"timestamp" required:"true"` 6410 6411 // The name of the security configuration. 6412 // 6413 // Name is a required field 6414 Name *string `type:"string" required:"true"` 6415} 6416 6417// String returns the string representation 6418func (s CreateSecurityConfigurationOutput) String() string { 6419 return awsutil.Prettify(s) 6420} 6421 6422// GoString returns the string representation 6423func (s CreateSecurityConfigurationOutput) GoString() string { 6424 return s.String() 6425} 6426 6427// SetCreationDateTime sets the CreationDateTime field's value. 6428func (s *CreateSecurityConfigurationOutput) SetCreationDateTime(v time.Time) *CreateSecurityConfigurationOutput { 6429 s.CreationDateTime = &v 6430 return s 6431} 6432 6433// SetName sets the Name field's value. 6434func (s *CreateSecurityConfigurationOutput) SetName(v string) *CreateSecurityConfigurationOutput { 6435 s.Name = &v 6436 return s 6437} 6438 6439type CreateStudioInput struct { 6440 _ struct{} `type:"structure"` 6441 6442 // Specifies whether the Studio authenticates users using single sign-on (SSO) 6443 // or IAM. Amazon EMR Studio currently only supports SSO authentication. 6444 // 6445 // AuthMode is a required field 6446 AuthMode *string `type:"string" required:"true" enum:"AuthMode"` 6447 6448 // The default Amazon S3 location to back up EMR Studio Workspaces and notebook 6449 // files. A Studio user can select an alternative Amazon S3 location when creating 6450 // a Workspace. 6451 DefaultS3Location *string `type:"string"` 6452 6453 // A detailed description of the Studio. 6454 Description *string `type:"string"` 6455 6456 // The ID of the Amazon EMR Studio Engine security group. The Engine security 6457 // group allows inbound network traffic from the Workspace security group, and 6458 // it must be in the same VPC specified by VpcId. 6459 // 6460 // EngineSecurityGroupId is a required field 6461 EngineSecurityGroupId *string `type:"string" required:"true"` 6462 6463 // A descriptive name for the Amazon EMR Studio. 6464 // 6465 // Name is a required field 6466 Name *string `type:"string" required:"true"` 6467 6468 // The IAM role that will be assumed by the Amazon EMR Studio. The service role 6469 // provides a way for Amazon EMR Studio to interoperate with other AWS services. 6470 // 6471 // ServiceRole is a required field 6472 ServiceRole *string `type:"string" required:"true"` 6473 6474 // A list of subnet IDs to associate with the Studio. The subnets must belong 6475 // to the VPC specified by VpcId. Studio users can create a Workspace in any 6476 // of the specified subnets. 6477 // 6478 // SubnetIds is a required field 6479 SubnetIds []*string `type:"list" required:"true"` 6480 6481 // A list of tags to associate with the Studio. Tags are user-defined key-value 6482 // pairs that consist of a required key string with a maximum of 128 characters, 6483 // and an optional value string with a maximum of 256 characters. 6484 Tags []*Tag `type:"list"` 6485 6486 // The IAM user role that will be assumed by users and groups logged in to a 6487 // Studio. The permissions attached to this IAM role can be scoped down for 6488 // each user or group using session policies. 6489 // 6490 // UserRole is a required field 6491 UserRole *string `type:"string" required:"true"` 6492 6493 // The ID of the Amazon Virtual Private Cloud (Amazon VPC) to associate with 6494 // the Studio. 6495 // 6496 // VpcId is a required field 6497 VpcId *string `type:"string" required:"true"` 6498 6499 // The ID of the Amazon EMR Studio Workspace security group. The Workspace security 6500 // group allows outbound network traffic to resources in the Engine security 6501 // group, and it must be in the same VPC specified by VpcId. 6502 // 6503 // WorkspaceSecurityGroupId is a required field 6504 WorkspaceSecurityGroupId *string `type:"string" required:"true"` 6505} 6506 6507// String returns the string representation 6508func (s CreateStudioInput) String() string { 6509 return awsutil.Prettify(s) 6510} 6511 6512// GoString returns the string representation 6513func (s CreateStudioInput) GoString() string { 6514 return s.String() 6515} 6516 6517// Validate inspects the fields of the type to determine if they are valid. 6518func (s *CreateStudioInput) Validate() error { 6519 invalidParams := request.ErrInvalidParams{Context: "CreateStudioInput"} 6520 if s.AuthMode == nil { 6521 invalidParams.Add(request.NewErrParamRequired("AuthMode")) 6522 } 6523 if s.EngineSecurityGroupId == nil { 6524 invalidParams.Add(request.NewErrParamRequired("EngineSecurityGroupId")) 6525 } 6526 if s.Name == nil { 6527 invalidParams.Add(request.NewErrParamRequired("Name")) 6528 } 6529 if s.ServiceRole == nil { 6530 invalidParams.Add(request.NewErrParamRequired("ServiceRole")) 6531 } 6532 if s.SubnetIds == nil { 6533 invalidParams.Add(request.NewErrParamRequired("SubnetIds")) 6534 } 6535 if s.UserRole == nil { 6536 invalidParams.Add(request.NewErrParamRequired("UserRole")) 6537 } 6538 if s.VpcId == nil { 6539 invalidParams.Add(request.NewErrParamRequired("VpcId")) 6540 } 6541 if s.WorkspaceSecurityGroupId == nil { 6542 invalidParams.Add(request.NewErrParamRequired("WorkspaceSecurityGroupId")) 6543 } 6544 6545 if invalidParams.Len() > 0 { 6546 return invalidParams 6547 } 6548 return nil 6549} 6550 6551// SetAuthMode sets the AuthMode field's value. 6552func (s *CreateStudioInput) SetAuthMode(v string) *CreateStudioInput { 6553 s.AuthMode = &v 6554 return s 6555} 6556 6557// SetDefaultS3Location sets the DefaultS3Location field's value. 6558func (s *CreateStudioInput) SetDefaultS3Location(v string) *CreateStudioInput { 6559 s.DefaultS3Location = &v 6560 return s 6561} 6562 6563// SetDescription sets the Description field's value. 6564func (s *CreateStudioInput) SetDescription(v string) *CreateStudioInput { 6565 s.Description = &v 6566 return s 6567} 6568 6569// SetEngineSecurityGroupId sets the EngineSecurityGroupId field's value. 6570func (s *CreateStudioInput) SetEngineSecurityGroupId(v string) *CreateStudioInput { 6571 s.EngineSecurityGroupId = &v 6572 return s 6573} 6574 6575// SetName sets the Name field's value. 6576func (s *CreateStudioInput) SetName(v string) *CreateStudioInput { 6577 s.Name = &v 6578 return s 6579} 6580 6581// SetServiceRole sets the ServiceRole field's value. 6582func (s *CreateStudioInput) SetServiceRole(v string) *CreateStudioInput { 6583 s.ServiceRole = &v 6584 return s 6585} 6586 6587// SetSubnetIds sets the SubnetIds field's value. 6588func (s *CreateStudioInput) SetSubnetIds(v []*string) *CreateStudioInput { 6589 s.SubnetIds = v 6590 return s 6591} 6592 6593// SetTags sets the Tags field's value. 6594func (s *CreateStudioInput) SetTags(v []*Tag) *CreateStudioInput { 6595 s.Tags = v 6596 return s 6597} 6598 6599// SetUserRole sets the UserRole field's value. 6600func (s *CreateStudioInput) SetUserRole(v string) *CreateStudioInput { 6601 s.UserRole = &v 6602 return s 6603} 6604 6605// SetVpcId sets the VpcId field's value. 6606func (s *CreateStudioInput) SetVpcId(v string) *CreateStudioInput { 6607 s.VpcId = &v 6608 return s 6609} 6610 6611// SetWorkspaceSecurityGroupId sets the WorkspaceSecurityGroupId field's value. 6612func (s *CreateStudioInput) SetWorkspaceSecurityGroupId(v string) *CreateStudioInput { 6613 s.WorkspaceSecurityGroupId = &v 6614 return s 6615} 6616 6617type CreateStudioOutput struct { 6618 _ struct{} `type:"structure"` 6619 6620 // The ID of the Amazon EMR Studio. 6621 StudioId *string `type:"string"` 6622 6623 // The unique Studio access URL. 6624 Url *string `type:"string"` 6625} 6626 6627// String returns the string representation 6628func (s CreateStudioOutput) String() string { 6629 return awsutil.Prettify(s) 6630} 6631 6632// GoString returns the string representation 6633func (s CreateStudioOutput) GoString() string { 6634 return s.String() 6635} 6636 6637// SetStudioId sets the StudioId field's value. 6638func (s *CreateStudioOutput) SetStudioId(v string) *CreateStudioOutput { 6639 s.StudioId = &v 6640 return s 6641} 6642 6643// SetUrl sets the Url field's value. 6644func (s *CreateStudioOutput) SetUrl(v string) *CreateStudioOutput { 6645 s.Url = &v 6646 return s 6647} 6648 6649type CreateStudioSessionMappingInput struct { 6650 _ struct{} `type:"structure"` 6651 6652 // The globally unique identifier (GUID) of the user or group from the AWS SSO 6653 // Identity Store. For more information, see UserId (https://docs.aws.amazon.com/singlesignon/latest/IdentityStoreAPIReference/API_User.html#singlesignon-Type-User-UserId) 6654 // and GroupId (https://docs.aws.amazon.com/singlesignon/latest/IdentityStoreAPIReference/API_Group.html#singlesignon-Type-Group-GroupId) 6655 // in the AWS SSO Identity Store API Reference. Either IdentityName or IdentityId 6656 // must be specified. 6657 IdentityId *string `type:"string"` 6658 6659 // 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-UserId) 6660 // and DisplayName (https://docs.aws.amazon.com/singlesignon/latest/IdentityStoreAPIReference/API_Group.html#singlesignon-Type-Group-DisplayName) 6661 // in the AWS SSO Identity Store API Reference. Either IdentityName or IdentityId 6662 // must be specified. 6663 IdentityName *string `type:"string"` 6664 6665 // Specifies whether the identity to map to the Studio is a user or a group. 6666 // 6667 // IdentityType is a required field 6668 IdentityType *string `type:"string" required:"true" enum:"IdentityType"` 6669 6670 // The Amazon Resource Name (ARN) for the session policy that will be applied 6671 // to the user or group. Session policies refine Studio user permissions without 6672 // the need to use multiple IAM user roles. 6673 // 6674 // SessionPolicyArn is a required field 6675 SessionPolicyArn *string `type:"string" required:"true"` 6676 6677 // The ID of the Amazon EMR Studio to which the user or group will be mapped. 6678 // 6679 // StudioId is a required field 6680 StudioId *string `type:"string" required:"true"` 6681} 6682 6683// String returns the string representation 6684func (s CreateStudioSessionMappingInput) String() string { 6685 return awsutil.Prettify(s) 6686} 6687 6688// GoString returns the string representation 6689func (s CreateStudioSessionMappingInput) GoString() string { 6690 return s.String() 6691} 6692 6693// Validate inspects the fields of the type to determine if they are valid. 6694func (s *CreateStudioSessionMappingInput) Validate() error { 6695 invalidParams := request.ErrInvalidParams{Context: "CreateStudioSessionMappingInput"} 6696 if s.IdentityType == nil { 6697 invalidParams.Add(request.NewErrParamRequired("IdentityType")) 6698 } 6699 if s.SessionPolicyArn == nil { 6700 invalidParams.Add(request.NewErrParamRequired("SessionPolicyArn")) 6701 } 6702 if s.StudioId == nil { 6703 invalidParams.Add(request.NewErrParamRequired("StudioId")) 6704 } 6705 6706 if invalidParams.Len() > 0 { 6707 return invalidParams 6708 } 6709 return nil 6710} 6711 6712// SetIdentityId sets the IdentityId field's value. 6713func (s *CreateStudioSessionMappingInput) SetIdentityId(v string) *CreateStudioSessionMappingInput { 6714 s.IdentityId = &v 6715 return s 6716} 6717 6718// SetIdentityName sets the IdentityName field's value. 6719func (s *CreateStudioSessionMappingInput) SetIdentityName(v string) *CreateStudioSessionMappingInput { 6720 s.IdentityName = &v 6721 return s 6722} 6723 6724// SetIdentityType sets the IdentityType field's value. 6725func (s *CreateStudioSessionMappingInput) SetIdentityType(v string) *CreateStudioSessionMappingInput { 6726 s.IdentityType = &v 6727 return s 6728} 6729 6730// SetSessionPolicyArn sets the SessionPolicyArn field's value. 6731func (s *CreateStudioSessionMappingInput) SetSessionPolicyArn(v string) *CreateStudioSessionMappingInput { 6732 s.SessionPolicyArn = &v 6733 return s 6734} 6735 6736// SetStudioId sets the StudioId field's value. 6737func (s *CreateStudioSessionMappingInput) SetStudioId(v string) *CreateStudioSessionMappingInput { 6738 s.StudioId = &v 6739 return s 6740} 6741 6742type CreateStudioSessionMappingOutput struct { 6743 _ struct{} `type:"structure"` 6744} 6745 6746// String returns the string representation 6747func (s CreateStudioSessionMappingOutput) String() string { 6748 return awsutil.Prettify(s) 6749} 6750 6751// GoString returns the string representation 6752func (s CreateStudioSessionMappingOutput) GoString() string { 6753 return s.String() 6754} 6755 6756type DeleteSecurityConfigurationInput struct { 6757 _ struct{} `type:"structure"` 6758 6759 // The name of the security configuration. 6760 // 6761 // Name is a required field 6762 Name *string `type:"string" required:"true"` 6763} 6764 6765// String returns the string representation 6766func (s DeleteSecurityConfigurationInput) String() string { 6767 return awsutil.Prettify(s) 6768} 6769 6770// GoString returns the string representation 6771func (s DeleteSecurityConfigurationInput) GoString() string { 6772 return s.String() 6773} 6774 6775// Validate inspects the fields of the type to determine if they are valid. 6776func (s *DeleteSecurityConfigurationInput) Validate() error { 6777 invalidParams := request.ErrInvalidParams{Context: "DeleteSecurityConfigurationInput"} 6778 if s.Name == nil { 6779 invalidParams.Add(request.NewErrParamRequired("Name")) 6780 } 6781 6782 if invalidParams.Len() > 0 { 6783 return invalidParams 6784 } 6785 return nil 6786} 6787 6788// SetName sets the Name field's value. 6789func (s *DeleteSecurityConfigurationInput) SetName(v string) *DeleteSecurityConfigurationInput { 6790 s.Name = &v 6791 return s 6792} 6793 6794type DeleteSecurityConfigurationOutput struct { 6795 _ struct{} `type:"structure"` 6796} 6797 6798// String returns the string representation 6799func (s DeleteSecurityConfigurationOutput) String() string { 6800 return awsutil.Prettify(s) 6801} 6802 6803// GoString returns the string representation 6804func (s DeleteSecurityConfigurationOutput) GoString() string { 6805 return s.String() 6806} 6807 6808type DeleteStudioInput struct { 6809 _ struct{} `type:"structure"` 6810 6811 // The ID of the Amazon EMR Studio. 6812 // 6813 // StudioId is a required field 6814 StudioId *string `type:"string" required:"true"` 6815} 6816 6817// String returns the string representation 6818func (s DeleteStudioInput) String() string { 6819 return awsutil.Prettify(s) 6820} 6821 6822// GoString returns the string representation 6823func (s DeleteStudioInput) GoString() string { 6824 return s.String() 6825} 6826 6827// Validate inspects the fields of the type to determine if they are valid. 6828func (s *DeleteStudioInput) Validate() error { 6829 invalidParams := request.ErrInvalidParams{Context: "DeleteStudioInput"} 6830 if s.StudioId == nil { 6831 invalidParams.Add(request.NewErrParamRequired("StudioId")) 6832 } 6833 6834 if invalidParams.Len() > 0 { 6835 return invalidParams 6836 } 6837 return nil 6838} 6839 6840// SetStudioId sets the StudioId field's value. 6841func (s *DeleteStudioInput) SetStudioId(v string) *DeleteStudioInput { 6842 s.StudioId = &v 6843 return s 6844} 6845 6846type DeleteStudioOutput struct { 6847 _ struct{} `type:"structure"` 6848} 6849 6850// String returns the string representation 6851func (s DeleteStudioOutput) String() string { 6852 return awsutil.Prettify(s) 6853} 6854 6855// GoString returns the string representation 6856func (s DeleteStudioOutput) GoString() string { 6857 return s.String() 6858} 6859 6860type DeleteStudioSessionMappingInput struct { 6861 _ struct{} `type:"structure"` 6862 6863 // The globally unique identifier (GUID) of the user or group to remove from 6864 // the Amazon EMR Studio. For more information, see UserId (https://docs.aws.amazon.com/singlesignon/latest/IdentityStoreAPIReference/API_User.html#singlesignon-Type-User-UserId) 6865 // and GroupId (https://docs.aws.amazon.com/singlesignon/latest/IdentityStoreAPIReference/API_Group.html#singlesignon-Type-Group-GroupId) 6866 // in the AWS SSO Identity Store API Reference. Either IdentityName or IdentityId 6867 // must be specified. 6868 IdentityId *string `type:"string"` 6869 6870 // The name of the user name or group to remove from the Studio. For more information, 6871 // see UserName (https://docs.aws.amazon.com/singlesignon/latest/IdentityStoreAPIReference/API_User.html#singlesignon-Type-User-UserId) 6872 // and DisplayName (https://docs.aws.amazon.com/singlesignon/latest/IdentityStoreAPIReference/API_Group.html#singlesignon-Type-Group-DisplayName) 6873 // in the AWS SSO Identity Store API Reference. Either IdentityName or IdentityId 6874 // must be specified. 6875 IdentityName *string `type:"string"` 6876 6877 // Specifies whether the identity to delete from the Studio is a user or a group. 6878 // 6879 // IdentityType is a required field 6880 IdentityType *string `type:"string" required:"true" enum:"IdentityType"` 6881 6882 // The ID of the Amazon EMR Studio. 6883 // 6884 // StudioId is a required field 6885 StudioId *string `type:"string" required:"true"` 6886} 6887 6888// String returns the string representation 6889func (s DeleteStudioSessionMappingInput) String() string { 6890 return awsutil.Prettify(s) 6891} 6892 6893// GoString returns the string representation 6894func (s DeleteStudioSessionMappingInput) GoString() string { 6895 return s.String() 6896} 6897 6898// Validate inspects the fields of the type to determine if they are valid. 6899func (s *DeleteStudioSessionMappingInput) Validate() error { 6900 invalidParams := request.ErrInvalidParams{Context: "DeleteStudioSessionMappingInput"} 6901 if s.IdentityType == nil { 6902 invalidParams.Add(request.NewErrParamRequired("IdentityType")) 6903 } 6904 if s.StudioId == nil { 6905 invalidParams.Add(request.NewErrParamRequired("StudioId")) 6906 } 6907 6908 if invalidParams.Len() > 0 { 6909 return invalidParams 6910 } 6911 return nil 6912} 6913 6914// SetIdentityId sets the IdentityId field's value. 6915func (s *DeleteStudioSessionMappingInput) SetIdentityId(v string) *DeleteStudioSessionMappingInput { 6916 s.IdentityId = &v 6917 return s 6918} 6919 6920// SetIdentityName sets the IdentityName field's value. 6921func (s *DeleteStudioSessionMappingInput) SetIdentityName(v string) *DeleteStudioSessionMappingInput { 6922 s.IdentityName = &v 6923 return s 6924} 6925 6926// SetIdentityType sets the IdentityType field's value. 6927func (s *DeleteStudioSessionMappingInput) SetIdentityType(v string) *DeleteStudioSessionMappingInput { 6928 s.IdentityType = &v 6929 return s 6930} 6931 6932// SetStudioId sets the StudioId field's value. 6933func (s *DeleteStudioSessionMappingInput) SetStudioId(v string) *DeleteStudioSessionMappingInput { 6934 s.StudioId = &v 6935 return s 6936} 6937 6938type DeleteStudioSessionMappingOutput struct { 6939 _ struct{} `type:"structure"` 6940} 6941 6942// String returns the string representation 6943func (s DeleteStudioSessionMappingOutput) String() string { 6944 return awsutil.Prettify(s) 6945} 6946 6947// GoString returns the string representation 6948func (s DeleteStudioSessionMappingOutput) GoString() string { 6949 return s.String() 6950} 6951 6952// This input determines which cluster to describe. 6953type DescribeClusterInput struct { 6954 _ struct{} `type:"structure"` 6955 6956 // The identifier of the cluster to describe. 6957 // 6958 // ClusterId is a required field 6959 ClusterId *string `type:"string" required:"true"` 6960} 6961 6962// String returns the string representation 6963func (s DescribeClusterInput) String() string { 6964 return awsutil.Prettify(s) 6965} 6966 6967// GoString returns the string representation 6968func (s DescribeClusterInput) GoString() string { 6969 return s.String() 6970} 6971 6972// Validate inspects the fields of the type to determine if they are valid. 6973func (s *DescribeClusterInput) Validate() error { 6974 invalidParams := request.ErrInvalidParams{Context: "DescribeClusterInput"} 6975 if s.ClusterId == nil { 6976 invalidParams.Add(request.NewErrParamRequired("ClusterId")) 6977 } 6978 6979 if invalidParams.Len() > 0 { 6980 return invalidParams 6981 } 6982 return nil 6983} 6984 6985// SetClusterId sets the ClusterId field's value. 6986func (s *DescribeClusterInput) SetClusterId(v string) *DescribeClusterInput { 6987 s.ClusterId = &v 6988 return s 6989} 6990 6991// This output contains the description of the cluster. 6992type DescribeClusterOutput struct { 6993 _ struct{} `type:"structure"` 6994 6995 // This output contains the details for the requested cluster. 6996 Cluster *Cluster `type:"structure"` 6997} 6998 6999// String returns the string representation 7000func (s DescribeClusterOutput) String() string { 7001 return awsutil.Prettify(s) 7002} 7003 7004// GoString returns the string representation 7005func (s DescribeClusterOutput) GoString() string { 7006 return s.String() 7007} 7008 7009// SetCluster sets the Cluster field's value. 7010func (s *DescribeClusterOutput) SetCluster(v *Cluster) *DescribeClusterOutput { 7011 s.Cluster = v 7012 return s 7013} 7014 7015// The input for the DescribeJobFlows operation. 7016type DescribeJobFlowsInput struct { 7017 _ struct{} `type:"structure"` 7018 7019 // Return only job flows created after this date and time. 7020 CreatedAfter *time.Time `type:"timestamp"` 7021 7022 // Return only job flows created before this date and time. 7023 CreatedBefore *time.Time `type:"timestamp"` 7024 7025 // Return only job flows whose job flow ID is contained in this list. 7026 JobFlowIds []*string `type:"list"` 7027 7028 // Return only job flows whose state is contained in this list. 7029 JobFlowStates []*string `type:"list"` 7030} 7031 7032// String returns the string representation 7033func (s DescribeJobFlowsInput) String() string { 7034 return awsutil.Prettify(s) 7035} 7036 7037// GoString returns the string representation 7038func (s DescribeJobFlowsInput) GoString() string { 7039 return s.String() 7040} 7041 7042// SetCreatedAfter sets the CreatedAfter field's value. 7043func (s *DescribeJobFlowsInput) SetCreatedAfter(v time.Time) *DescribeJobFlowsInput { 7044 s.CreatedAfter = &v 7045 return s 7046} 7047 7048// SetCreatedBefore sets the CreatedBefore field's value. 7049func (s *DescribeJobFlowsInput) SetCreatedBefore(v time.Time) *DescribeJobFlowsInput { 7050 s.CreatedBefore = &v 7051 return s 7052} 7053 7054// SetJobFlowIds sets the JobFlowIds field's value. 7055func (s *DescribeJobFlowsInput) SetJobFlowIds(v []*string) *DescribeJobFlowsInput { 7056 s.JobFlowIds = v 7057 return s 7058} 7059 7060// SetJobFlowStates sets the JobFlowStates field's value. 7061func (s *DescribeJobFlowsInput) SetJobFlowStates(v []*string) *DescribeJobFlowsInput { 7062 s.JobFlowStates = v 7063 return s 7064} 7065 7066// The output for the DescribeJobFlows operation. 7067type DescribeJobFlowsOutput struct { 7068 _ struct{} `type:"structure"` 7069 7070 // A list of job flows matching the parameters supplied. 7071 JobFlows []*JobFlowDetail `type:"list"` 7072} 7073 7074// String returns the string representation 7075func (s DescribeJobFlowsOutput) String() string { 7076 return awsutil.Prettify(s) 7077} 7078 7079// GoString returns the string representation 7080func (s DescribeJobFlowsOutput) GoString() string { 7081 return s.String() 7082} 7083 7084// SetJobFlows sets the JobFlows field's value. 7085func (s *DescribeJobFlowsOutput) SetJobFlows(v []*JobFlowDetail) *DescribeJobFlowsOutput { 7086 s.JobFlows = v 7087 return s 7088} 7089 7090type DescribeNotebookExecutionInput struct { 7091 _ struct{} `type:"structure"` 7092 7093 // The unique identifier of the notebook execution. 7094 // 7095 // NotebookExecutionId is a required field 7096 NotebookExecutionId *string `type:"string" required:"true"` 7097} 7098 7099// String returns the string representation 7100func (s DescribeNotebookExecutionInput) String() string { 7101 return awsutil.Prettify(s) 7102} 7103 7104// GoString returns the string representation 7105func (s DescribeNotebookExecutionInput) GoString() string { 7106 return s.String() 7107} 7108 7109// Validate inspects the fields of the type to determine if they are valid. 7110func (s *DescribeNotebookExecutionInput) Validate() error { 7111 invalidParams := request.ErrInvalidParams{Context: "DescribeNotebookExecutionInput"} 7112 if s.NotebookExecutionId == nil { 7113 invalidParams.Add(request.NewErrParamRequired("NotebookExecutionId")) 7114 } 7115 7116 if invalidParams.Len() > 0 { 7117 return invalidParams 7118 } 7119 return nil 7120} 7121 7122// SetNotebookExecutionId sets the NotebookExecutionId field's value. 7123func (s *DescribeNotebookExecutionInput) SetNotebookExecutionId(v string) *DescribeNotebookExecutionInput { 7124 s.NotebookExecutionId = &v 7125 return s 7126} 7127 7128type DescribeNotebookExecutionOutput struct { 7129 _ struct{} `type:"structure"` 7130 7131 // Properties of the notebook execution. 7132 NotebookExecution *NotebookExecution `type:"structure"` 7133} 7134 7135// String returns the string representation 7136func (s DescribeNotebookExecutionOutput) String() string { 7137 return awsutil.Prettify(s) 7138} 7139 7140// GoString returns the string representation 7141func (s DescribeNotebookExecutionOutput) GoString() string { 7142 return s.String() 7143} 7144 7145// SetNotebookExecution sets the NotebookExecution field's value. 7146func (s *DescribeNotebookExecutionOutput) SetNotebookExecution(v *NotebookExecution) *DescribeNotebookExecutionOutput { 7147 s.NotebookExecution = v 7148 return s 7149} 7150 7151type DescribeSecurityConfigurationInput struct { 7152 _ struct{} `type:"structure"` 7153 7154 // The name of the security configuration. 7155 // 7156 // Name is a required field 7157 Name *string `type:"string" required:"true"` 7158} 7159 7160// String returns the string representation 7161func (s DescribeSecurityConfigurationInput) String() string { 7162 return awsutil.Prettify(s) 7163} 7164 7165// GoString returns the string representation 7166func (s DescribeSecurityConfigurationInput) GoString() string { 7167 return s.String() 7168} 7169 7170// Validate inspects the fields of the type to determine if they are valid. 7171func (s *DescribeSecurityConfigurationInput) Validate() error { 7172 invalidParams := request.ErrInvalidParams{Context: "DescribeSecurityConfigurationInput"} 7173 if s.Name == nil { 7174 invalidParams.Add(request.NewErrParamRequired("Name")) 7175 } 7176 7177 if invalidParams.Len() > 0 { 7178 return invalidParams 7179 } 7180 return nil 7181} 7182 7183// SetName sets the Name field's value. 7184func (s *DescribeSecurityConfigurationInput) SetName(v string) *DescribeSecurityConfigurationInput { 7185 s.Name = &v 7186 return s 7187} 7188 7189type DescribeSecurityConfigurationOutput struct { 7190 _ struct{} `type:"structure"` 7191 7192 // The date and time the security configuration was created 7193 CreationDateTime *time.Time `type:"timestamp"` 7194 7195 // The name of the security configuration. 7196 Name *string `type:"string"` 7197 7198 // The security configuration details in JSON format. 7199 SecurityConfiguration *string `type:"string"` 7200} 7201 7202// String returns the string representation 7203func (s DescribeSecurityConfigurationOutput) String() string { 7204 return awsutil.Prettify(s) 7205} 7206 7207// GoString returns the string representation 7208func (s DescribeSecurityConfigurationOutput) GoString() string { 7209 return s.String() 7210} 7211 7212// SetCreationDateTime sets the CreationDateTime field's value. 7213func (s *DescribeSecurityConfigurationOutput) SetCreationDateTime(v time.Time) *DescribeSecurityConfigurationOutput { 7214 s.CreationDateTime = &v 7215 return s 7216} 7217 7218// SetName sets the Name field's value. 7219func (s *DescribeSecurityConfigurationOutput) SetName(v string) *DescribeSecurityConfigurationOutput { 7220 s.Name = &v 7221 return s 7222} 7223 7224// SetSecurityConfiguration sets the SecurityConfiguration field's value. 7225func (s *DescribeSecurityConfigurationOutput) SetSecurityConfiguration(v string) *DescribeSecurityConfigurationOutput { 7226 s.SecurityConfiguration = &v 7227 return s 7228} 7229 7230// This input determines which step to describe. 7231type DescribeStepInput struct { 7232 _ struct{} `type:"structure"` 7233 7234 // The identifier of the cluster with steps to describe. 7235 // 7236 // ClusterId is a required field 7237 ClusterId *string `type:"string" required:"true"` 7238 7239 // The identifier of the step to describe. 7240 // 7241 // StepId is a required field 7242 StepId *string `type:"string" required:"true"` 7243} 7244 7245// String returns the string representation 7246func (s DescribeStepInput) String() string { 7247 return awsutil.Prettify(s) 7248} 7249 7250// GoString returns the string representation 7251func (s DescribeStepInput) GoString() string { 7252 return s.String() 7253} 7254 7255// Validate inspects the fields of the type to determine if they are valid. 7256func (s *DescribeStepInput) Validate() error { 7257 invalidParams := request.ErrInvalidParams{Context: "DescribeStepInput"} 7258 if s.ClusterId == nil { 7259 invalidParams.Add(request.NewErrParamRequired("ClusterId")) 7260 } 7261 if s.StepId == nil { 7262 invalidParams.Add(request.NewErrParamRequired("StepId")) 7263 } 7264 7265 if invalidParams.Len() > 0 { 7266 return invalidParams 7267 } 7268 return nil 7269} 7270 7271// SetClusterId sets the ClusterId field's value. 7272func (s *DescribeStepInput) SetClusterId(v string) *DescribeStepInput { 7273 s.ClusterId = &v 7274 return s 7275} 7276 7277// SetStepId sets the StepId field's value. 7278func (s *DescribeStepInput) SetStepId(v string) *DescribeStepInput { 7279 s.StepId = &v 7280 return s 7281} 7282 7283// This output contains the description of the cluster step. 7284type DescribeStepOutput struct { 7285 _ struct{} `type:"structure"` 7286 7287 // The step details for the requested step identifier. 7288 Step *Step `type:"structure"` 7289} 7290 7291// String returns the string representation 7292func (s DescribeStepOutput) String() string { 7293 return awsutil.Prettify(s) 7294} 7295 7296// GoString returns the string representation 7297func (s DescribeStepOutput) GoString() string { 7298 return s.String() 7299} 7300 7301// SetStep sets the Step field's value. 7302func (s *DescribeStepOutput) SetStep(v *Step) *DescribeStepOutput { 7303 s.Step = v 7304 return s 7305} 7306 7307type DescribeStudioInput struct { 7308 _ struct{} `type:"structure"` 7309 7310 // The Amazon EMR Studio ID. 7311 // 7312 // StudioId is a required field 7313 StudioId *string `type:"string" required:"true"` 7314} 7315 7316// String returns the string representation 7317func (s DescribeStudioInput) String() string { 7318 return awsutil.Prettify(s) 7319} 7320 7321// GoString returns the string representation 7322func (s DescribeStudioInput) GoString() string { 7323 return s.String() 7324} 7325 7326// Validate inspects the fields of the type to determine if they are valid. 7327func (s *DescribeStudioInput) Validate() error { 7328 invalidParams := request.ErrInvalidParams{Context: "DescribeStudioInput"} 7329 if s.StudioId == nil { 7330 invalidParams.Add(request.NewErrParamRequired("StudioId")) 7331 } 7332 7333 if invalidParams.Len() > 0 { 7334 return invalidParams 7335 } 7336 return nil 7337} 7338 7339// SetStudioId sets the StudioId field's value. 7340func (s *DescribeStudioInput) SetStudioId(v string) *DescribeStudioInput { 7341 s.StudioId = &v 7342 return s 7343} 7344 7345type DescribeStudioOutput struct { 7346 _ struct{} `type:"structure"` 7347 7348 // The Amazon EMR Studio details. 7349 Studio *Studio `type:"structure"` 7350} 7351 7352// String returns the string representation 7353func (s DescribeStudioOutput) String() string { 7354 return awsutil.Prettify(s) 7355} 7356 7357// GoString returns the string representation 7358func (s DescribeStudioOutput) GoString() string { 7359 return s.String() 7360} 7361 7362// SetStudio sets the Studio field's value. 7363func (s *DescribeStudioOutput) SetStudio(v *Studio) *DescribeStudioOutput { 7364 s.Studio = v 7365 return s 7366} 7367 7368// Configuration of requested EBS block device associated with the instance 7369// group. 7370type EbsBlockDevice struct { 7371 _ struct{} `type:"structure"` 7372 7373 // The device name that is exposed to the instance, such as /dev/sdh. 7374 Device *string `type:"string"` 7375 7376 // EBS volume specifications such as volume type, IOPS, and size (GiB) that 7377 // will be requested for the EBS volume attached to an EC2 instance in the cluster. 7378 VolumeSpecification *VolumeSpecification `type:"structure"` 7379} 7380 7381// String returns the string representation 7382func (s EbsBlockDevice) String() string { 7383 return awsutil.Prettify(s) 7384} 7385 7386// GoString returns the string representation 7387func (s EbsBlockDevice) GoString() string { 7388 return s.String() 7389} 7390 7391// SetDevice sets the Device field's value. 7392func (s *EbsBlockDevice) SetDevice(v string) *EbsBlockDevice { 7393 s.Device = &v 7394 return s 7395} 7396 7397// SetVolumeSpecification sets the VolumeSpecification field's value. 7398func (s *EbsBlockDevice) SetVolumeSpecification(v *VolumeSpecification) *EbsBlockDevice { 7399 s.VolumeSpecification = v 7400 return s 7401} 7402 7403// Configuration of requested EBS block device associated with the instance 7404// group with count of volumes that will be associated to every instance. 7405type EbsBlockDeviceConfig struct { 7406 _ struct{} `type:"structure"` 7407 7408 // EBS volume specifications such as volume type, IOPS, and size (GiB) that 7409 // will be requested for the EBS volume attached to an EC2 instance in the cluster. 7410 // 7411 // VolumeSpecification is a required field 7412 VolumeSpecification *VolumeSpecification `type:"structure" required:"true"` 7413 7414 // Number of EBS volumes with a specific volume configuration that will be associated 7415 // with every instance in the instance group 7416 VolumesPerInstance *int64 `type:"integer"` 7417} 7418 7419// String returns the string representation 7420func (s EbsBlockDeviceConfig) String() string { 7421 return awsutil.Prettify(s) 7422} 7423 7424// GoString returns the string representation 7425func (s EbsBlockDeviceConfig) GoString() string { 7426 return s.String() 7427} 7428 7429// Validate inspects the fields of the type to determine if they are valid. 7430func (s *EbsBlockDeviceConfig) Validate() error { 7431 invalidParams := request.ErrInvalidParams{Context: "EbsBlockDeviceConfig"} 7432 if s.VolumeSpecification == nil { 7433 invalidParams.Add(request.NewErrParamRequired("VolumeSpecification")) 7434 } 7435 if s.VolumeSpecification != nil { 7436 if err := s.VolumeSpecification.Validate(); err != nil { 7437 invalidParams.AddNested("VolumeSpecification", err.(request.ErrInvalidParams)) 7438 } 7439 } 7440 7441 if invalidParams.Len() > 0 { 7442 return invalidParams 7443 } 7444 return nil 7445} 7446 7447// SetVolumeSpecification sets the VolumeSpecification field's value. 7448func (s *EbsBlockDeviceConfig) SetVolumeSpecification(v *VolumeSpecification) *EbsBlockDeviceConfig { 7449 s.VolumeSpecification = v 7450 return s 7451} 7452 7453// SetVolumesPerInstance sets the VolumesPerInstance field's value. 7454func (s *EbsBlockDeviceConfig) SetVolumesPerInstance(v int64) *EbsBlockDeviceConfig { 7455 s.VolumesPerInstance = &v 7456 return s 7457} 7458 7459// The Amazon EBS configuration of a cluster instance. 7460type EbsConfiguration struct { 7461 _ struct{} `type:"structure"` 7462 7463 // An array of Amazon EBS volume specifications attached to a cluster instance. 7464 EbsBlockDeviceConfigs []*EbsBlockDeviceConfig `type:"list"` 7465 7466 // Indicates whether an Amazon EBS volume is EBS-optimized. 7467 EbsOptimized *bool `type:"boolean"` 7468} 7469 7470// String returns the string representation 7471func (s EbsConfiguration) String() string { 7472 return awsutil.Prettify(s) 7473} 7474 7475// GoString returns the string representation 7476func (s EbsConfiguration) GoString() string { 7477 return s.String() 7478} 7479 7480// Validate inspects the fields of the type to determine if they are valid. 7481func (s *EbsConfiguration) Validate() error { 7482 invalidParams := request.ErrInvalidParams{Context: "EbsConfiguration"} 7483 if s.EbsBlockDeviceConfigs != nil { 7484 for i, v := range s.EbsBlockDeviceConfigs { 7485 if v == nil { 7486 continue 7487 } 7488 if err := v.Validate(); err != nil { 7489 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "EbsBlockDeviceConfigs", i), err.(request.ErrInvalidParams)) 7490 } 7491 } 7492 } 7493 7494 if invalidParams.Len() > 0 { 7495 return invalidParams 7496 } 7497 return nil 7498} 7499 7500// SetEbsBlockDeviceConfigs sets the EbsBlockDeviceConfigs field's value. 7501func (s *EbsConfiguration) SetEbsBlockDeviceConfigs(v []*EbsBlockDeviceConfig) *EbsConfiguration { 7502 s.EbsBlockDeviceConfigs = v 7503 return s 7504} 7505 7506// SetEbsOptimized sets the EbsOptimized field's value. 7507func (s *EbsConfiguration) SetEbsOptimized(v bool) *EbsConfiguration { 7508 s.EbsOptimized = &v 7509 return s 7510} 7511 7512// EBS block device that's attached to an EC2 instance. 7513type EbsVolume struct { 7514 _ struct{} `type:"structure"` 7515 7516 // The device name that is exposed to the instance, such as /dev/sdh. 7517 Device *string `type:"string"` 7518 7519 // The volume identifier of the EBS volume. 7520 VolumeId *string `type:"string"` 7521} 7522 7523// String returns the string representation 7524func (s EbsVolume) String() string { 7525 return awsutil.Prettify(s) 7526} 7527 7528// GoString returns the string representation 7529func (s EbsVolume) GoString() string { 7530 return s.String() 7531} 7532 7533// SetDevice sets the Device field's value. 7534func (s *EbsVolume) SetDevice(v string) *EbsVolume { 7535 s.Device = &v 7536 return s 7537} 7538 7539// SetVolumeId sets the VolumeId field's value. 7540func (s *EbsVolume) SetVolumeId(v string) *EbsVolume { 7541 s.VolumeId = &v 7542 return s 7543} 7544 7545// Provides information about the EC2 instances in a cluster grouped by category. 7546// For example, key name, subnet ID, IAM instance profile, and so on. 7547type Ec2InstanceAttributes struct { 7548 _ struct{} `type:"structure"` 7549 7550 // A list of additional Amazon EC2 security group IDs for the master node. 7551 AdditionalMasterSecurityGroups []*string `type:"list"` 7552 7553 // A list of additional Amazon EC2 security group IDs for the core and task 7554 // nodes. 7555 AdditionalSlaveSecurityGroups []*string `type:"list"` 7556 7557 // The Availability Zone in which the cluster will run. 7558 Ec2AvailabilityZone *string `type:"string"` 7559 7560 // The name of the Amazon EC2 key pair to use when connecting with SSH into 7561 // the master node as a user named "hadoop". 7562 Ec2KeyName *string `type:"string"` 7563 7564 // Set this parameter to the identifier of the Amazon VPC subnet where you want 7565 // the cluster to launch. If you do not specify this value, and your account 7566 // supports EC2-Classic, the cluster launches in EC2-Classic. 7567 Ec2SubnetId *string `type:"string"` 7568 7569 // The identifier of the Amazon EC2 security group for the master node. 7570 EmrManagedMasterSecurityGroup *string `type:"string"` 7571 7572 // The identifier of the Amazon EC2 security group for the core and task nodes. 7573 EmrManagedSlaveSecurityGroup *string `type:"string"` 7574 7575 // The IAM role that was specified when the cluster was launched. The EC2 instances 7576 // of the cluster assume this role. 7577 IamInstanceProfile *string `type:"string"` 7578 7579 // Applies to clusters configured with the instance fleets option. Specifies 7580 // one or more Availability Zones in which to launch EC2 cluster instances when 7581 // the EC2-Classic network configuration is supported. Amazon EMR chooses the 7582 // Availability Zone with the best fit from among the list of RequestedEc2AvailabilityZones, 7583 // and then launches all cluster instances within that Availability Zone. If 7584 // you do not specify this value, Amazon EMR chooses the Availability Zone for 7585 // you. RequestedEc2SubnetIDs and RequestedEc2AvailabilityZones cannot be specified 7586 // together. 7587 RequestedEc2AvailabilityZones []*string `type:"list"` 7588 7589 // Applies to clusters configured with the instance fleets option. Specifies 7590 // the unique identifier of one or more Amazon EC2 subnets in which to launch 7591 // EC2 cluster instances. Subnets must exist within the same VPC. Amazon EMR 7592 // chooses the EC2 subnet with the best fit from among the list of RequestedEc2SubnetIds, 7593 // and then launches all cluster instances within that Subnet. If this value 7594 // is not specified, and the account and Region support EC2-Classic networks, 7595 // the cluster launches instances in the EC2-Classic network and uses RequestedEc2AvailabilityZones 7596 // instead of this setting. If EC2-Classic is not supported, and no Subnet is 7597 // specified, Amazon EMR chooses the subnet for you. RequestedEc2SubnetIDs and 7598 // RequestedEc2AvailabilityZones cannot be specified together. 7599 RequestedEc2SubnetIds []*string `type:"list"` 7600 7601 // The identifier of the Amazon EC2 security group for the Amazon EMR service 7602 // to access clusters in VPC private subnets. 7603 ServiceAccessSecurityGroup *string `type:"string"` 7604} 7605 7606// String returns the string representation 7607func (s Ec2InstanceAttributes) String() string { 7608 return awsutil.Prettify(s) 7609} 7610 7611// GoString returns the string representation 7612func (s Ec2InstanceAttributes) GoString() string { 7613 return s.String() 7614} 7615 7616// SetAdditionalMasterSecurityGroups sets the AdditionalMasterSecurityGroups field's value. 7617func (s *Ec2InstanceAttributes) SetAdditionalMasterSecurityGroups(v []*string) *Ec2InstanceAttributes { 7618 s.AdditionalMasterSecurityGroups = v 7619 return s 7620} 7621 7622// SetAdditionalSlaveSecurityGroups sets the AdditionalSlaveSecurityGroups field's value. 7623func (s *Ec2InstanceAttributes) SetAdditionalSlaveSecurityGroups(v []*string) *Ec2InstanceAttributes { 7624 s.AdditionalSlaveSecurityGroups = v 7625 return s 7626} 7627 7628// SetEc2AvailabilityZone sets the Ec2AvailabilityZone field's value. 7629func (s *Ec2InstanceAttributes) SetEc2AvailabilityZone(v string) *Ec2InstanceAttributes { 7630 s.Ec2AvailabilityZone = &v 7631 return s 7632} 7633 7634// SetEc2KeyName sets the Ec2KeyName field's value. 7635func (s *Ec2InstanceAttributes) SetEc2KeyName(v string) *Ec2InstanceAttributes { 7636 s.Ec2KeyName = &v 7637 return s 7638} 7639 7640// SetEc2SubnetId sets the Ec2SubnetId field's value. 7641func (s *Ec2InstanceAttributes) SetEc2SubnetId(v string) *Ec2InstanceAttributes { 7642 s.Ec2SubnetId = &v 7643 return s 7644} 7645 7646// SetEmrManagedMasterSecurityGroup sets the EmrManagedMasterSecurityGroup field's value. 7647func (s *Ec2InstanceAttributes) SetEmrManagedMasterSecurityGroup(v string) *Ec2InstanceAttributes { 7648 s.EmrManagedMasterSecurityGroup = &v 7649 return s 7650} 7651 7652// SetEmrManagedSlaveSecurityGroup sets the EmrManagedSlaveSecurityGroup field's value. 7653func (s *Ec2InstanceAttributes) SetEmrManagedSlaveSecurityGroup(v string) *Ec2InstanceAttributes { 7654 s.EmrManagedSlaveSecurityGroup = &v 7655 return s 7656} 7657 7658// SetIamInstanceProfile sets the IamInstanceProfile field's value. 7659func (s *Ec2InstanceAttributes) SetIamInstanceProfile(v string) *Ec2InstanceAttributes { 7660 s.IamInstanceProfile = &v 7661 return s 7662} 7663 7664// SetRequestedEc2AvailabilityZones sets the RequestedEc2AvailabilityZones field's value. 7665func (s *Ec2InstanceAttributes) SetRequestedEc2AvailabilityZones(v []*string) *Ec2InstanceAttributes { 7666 s.RequestedEc2AvailabilityZones = v 7667 return s 7668} 7669 7670// SetRequestedEc2SubnetIds sets the RequestedEc2SubnetIds field's value. 7671func (s *Ec2InstanceAttributes) SetRequestedEc2SubnetIds(v []*string) *Ec2InstanceAttributes { 7672 s.RequestedEc2SubnetIds = v 7673 return s 7674} 7675 7676// SetServiceAccessSecurityGroup sets the ServiceAccessSecurityGroup field's value. 7677func (s *Ec2InstanceAttributes) SetServiceAccessSecurityGroup(v string) *Ec2InstanceAttributes { 7678 s.ServiceAccessSecurityGroup = &v 7679 return s 7680} 7681 7682// Specifies the execution engine (cluster) to run the notebook and perform 7683// the notebook execution, for example, an EMR cluster. 7684type ExecutionEngineConfig struct { 7685 _ struct{} `type:"structure"` 7686 7687 // The unique identifier of the execution engine. For an EMR cluster, this is 7688 // the cluster ID. 7689 // 7690 // Id is a required field 7691 Id *string `type:"string" required:"true"` 7692 7693 // An optional unique ID of an EC2 security group to associate with the master 7694 // instance of the EMR cluster for this notebook execution. For more information 7695 // see Specifying EC2 Security Groups for EMR Notebooks (https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-managed-notebooks-security-groups.html) 7696 // in the EMR Management Guide. 7697 MasterInstanceSecurityGroupId *string `type:"string"` 7698 7699 // The type of execution engine. A value of EMR specifies an EMR cluster. 7700 Type *string `type:"string" enum:"ExecutionEngineType"` 7701} 7702 7703// String returns the string representation 7704func (s ExecutionEngineConfig) String() string { 7705 return awsutil.Prettify(s) 7706} 7707 7708// GoString returns the string representation 7709func (s ExecutionEngineConfig) GoString() string { 7710 return s.String() 7711} 7712 7713// Validate inspects the fields of the type to determine if they are valid. 7714func (s *ExecutionEngineConfig) Validate() error { 7715 invalidParams := request.ErrInvalidParams{Context: "ExecutionEngineConfig"} 7716 if s.Id == nil { 7717 invalidParams.Add(request.NewErrParamRequired("Id")) 7718 } 7719 7720 if invalidParams.Len() > 0 { 7721 return invalidParams 7722 } 7723 return nil 7724} 7725 7726// SetId sets the Id field's value. 7727func (s *ExecutionEngineConfig) SetId(v string) *ExecutionEngineConfig { 7728 s.Id = &v 7729 return s 7730} 7731 7732// SetMasterInstanceSecurityGroupId sets the MasterInstanceSecurityGroupId field's value. 7733func (s *ExecutionEngineConfig) SetMasterInstanceSecurityGroupId(v string) *ExecutionEngineConfig { 7734 s.MasterInstanceSecurityGroupId = &v 7735 return s 7736} 7737 7738// SetType sets the Type field's value. 7739func (s *ExecutionEngineConfig) SetType(v string) *ExecutionEngineConfig { 7740 s.Type = &v 7741 return s 7742} 7743 7744// The details of the step failure. The service attempts to detect the root 7745// cause for many common failures. 7746type FailureDetails struct { 7747 _ struct{} `type:"structure"` 7748 7749 // The path to the log file where the step failure root cause was originally 7750 // recorded. 7751 LogFile *string `type:"string"` 7752 7753 // The descriptive message including the error the Amazon EMR service has identified 7754 // as the cause of step failure. This is text from an error log that describes 7755 // the root cause of the failure. 7756 Message *string `type:"string"` 7757 7758 // The reason for the step failure. In the case where the service cannot successfully 7759 // determine the root cause of the failure, it returns "Unknown Error" as a 7760 // reason. 7761 Reason *string `type:"string"` 7762} 7763 7764// String returns the string representation 7765func (s FailureDetails) String() string { 7766 return awsutil.Prettify(s) 7767} 7768 7769// GoString returns the string representation 7770func (s FailureDetails) GoString() string { 7771 return s.String() 7772} 7773 7774// SetLogFile sets the LogFile field's value. 7775func (s *FailureDetails) SetLogFile(v string) *FailureDetails { 7776 s.LogFile = &v 7777 return s 7778} 7779 7780// SetMessage sets the Message field's value. 7781func (s *FailureDetails) SetMessage(v string) *FailureDetails { 7782 s.Message = &v 7783 return s 7784} 7785 7786// SetReason sets the Reason field's value. 7787func (s *FailureDetails) SetReason(v string) *FailureDetails { 7788 s.Reason = &v 7789 return s 7790} 7791 7792type GetBlockPublicAccessConfigurationInput struct { 7793 _ struct{} `type:"structure"` 7794} 7795 7796// String returns the string representation 7797func (s GetBlockPublicAccessConfigurationInput) String() string { 7798 return awsutil.Prettify(s) 7799} 7800 7801// GoString returns the string representation 7802func (s GetBlockPublicAccessConfigurationInput) GoString() string { 7803 return s.String() 7804} 7805 7806type GetBlockPublicAccessConfigurationOutput struct { 7807 _ struct{} `type:"structure"` 7808 7809 // A configuration for Amazon EMR block public access. The configuration applies 7810 // to all clusters created in your account for the current Region. The configuration 7811 // specifies whether block public access is enabled. If block public access 7812 // is enabled, security groups associated with the cluster cannot have rules 7813 // that allow inbound traffic from 0.0.0.0/0 or ::/0 on a port, unless the port 7814 // is specified as an exception using PermittedPublicSecurityGroupRuleRanges 7815 // in the BlockPublicAccessConfiguration. By default, Port 22 (SSH) is an exception, 7816 // and public access is allowed on this port. You can change this by updating 7817 // the block public access configuration to remove the exception. 7818 // 7819 // For accounts that created clusters in a Region before November 25, 2019, 7820 // block public access is disabled by default in that Region. To use this feature, 7821 // you must manually enable and configure it. For accounts that did not create 7822 // an EMR cluster in a Region before this date, block public access is enabled 7823 // by default in that Region. 7824 // 7825 // BlockPublicAccessConfiguration is a required field 7826 BlockPublicAccessConfiguration *BlockPublicAccessConfiguration `type:"structure" required:"true"` 7827 7828 // Properties that describe the AWS principal that created the BlockPublicAccessConfiguration 7829 // using the PutBlockPublicAccessConfiguration action as well as the date and 7830 // time that the configuration was created. Each time a configuration for block 7831 // public access is updated, Amazon EMR updates this metadata. 7832 // 7833 // BlockPublicAccessConfigurationMetadata is a required field 7834 BlockPublicAccessConfigurationMetadata *BlockPublicAccessConfigurationMetadata `type:"structure" required:"true"` 7835} 7836 7837// String returns the string representation 7838func (s GetBlockPublicAccessConfigurationOutput) String() string { 7839 return awsutil.Prettify(s) 7840} 7841 7842// GoString returns the string representation 7843func (s GetBlockPublicAccessConfigurationOutput) GoString() string { 7844 return s.String() 7845} 7846 7847// SetBlockPublicAccessConfiguration sets the BlockPublicAccessConfiguration field's value. 7848func (s *GetBlockPublicAccessConfigurationOutput) SetBlockPublicAccessConfiguration(v *BlockPublicAccessConfiguration) *GetBlockPublicAccessConfigurationOutput { 7849 s.BlockPublicAccessConfiguration = v 7850 return s 7851} 7852 7853// SetBlockPublicAccessConfigurationMetadata sets the BlockPublicAccessConfigurationMetadata field's value. 7854func (s *GetBlockPublicAccessConfigurationOutput) SetBlockPublicAccessConfigurationMetadata(v *BlockPublicAccessConfigurationMetadata) *GetBlockPublicAccessConfigurationOutput { 7855 s.BlockPublicAccessConfigurationMetadata = v 7856 return s 7857} 7858 7859type GetManagedScalingPolicyInput struct { 7860 _ struct{} `type:"structure"` 7861 7862 // Specifies the ID of the cluster for which the managed scaling policy will 7863 // be fetched. 7864 // 7865 // ClusterId is a required field 7866 ClusterId *string `type:"string" required:"true"` 7867} 7868 7869// String returns the string representation 7870func (s GetManagedScalingPolicyInput) String() string { 7871 return awsutil.Prettify(s) 7872} 7873 7874// GoString returns the string representation 7875func (s GetManagedScalingPolicyInput) GoString() string { 7876 return s.String() 7877} 7878 7879// Validate inspects the fields of the type to determine if they are valid. 7880func (s *GetManagedScalingPolicyInput) Validate() error { 7881 invalidParams := request.ErrInvalidParams{Context: "GetManagedScalingPolicyInput"} 7882 if s.ClusterId == nil { 7883 invalidParams.Add(request.NewErrParamRequired("ClusterId")) 7884 } 7885 7886 if invalidParams.Len() > 0 { 7887 return invalidParams 7888 } 7889 return nil 7890} 7891 7892// SetClusterId sets the ClusterId field's value. 7893func (s *GetManagedScalingPolicyInput) SetClusterId(v string) *GetManagedScalingPolicyInput { 7894 s.ClusterId = &v 7895 return s 7896} 7897 7898type GetManagedScalingPolicyOutput struct { 7899 _ struct{} `type:"structure"` 7900 7901 // Specifies the managed scaling policy that is attached to an Amazon EMR cluster. 7902 ManagedScalingPolicy *ManagedScalingPolicy `type:"structure"` 7903} 7904 7905// String returns the string representation 7906func (s GetManagedScalingPolicyOutput) String() string { 7907 return awsutil.Prettify(s) 7908} 7909 7910// GoString returns the string representation 7911func (s GetManagedScalingPolicyOutput) GoString() string { 7912 return s.String() 7913} 7914 7915// SetManagedScalingPolicy sets the ManagedScalingPolicy field's value. 7916func (s *GetManagedScalingPolicyOutput) SetManagedScalingPolicy(v *ManagedScalingPolicy) *GetManagedScalingPolicyOutput { 7917 s.ManagedScalingPolicy = v 7918 return s 7919} 7920 7921type GetStudioSessionMappingInput struct { 7922 _ struct{} `type:"structure"` 7923 7924 // The globally unique identifier (GUID) of the user or group. For more information, 7925 // see UserId (https://docs.aws.amazon.com/singlesignon/latest/IdentityStoreAPIReference/API_User.html#singlesignon-Type-User-UserId) 7926 // and GroupId (https://docs.aws.amazon.com/singlesignon/latest/IdentityStoreAPIReference/API_Group.html#singlesignon-Type-Group-GroupId) 7927 // in the AWS SSO Identity Store API Reference. Either IdentityName or IdentityId 7928 // must be specified. 7929 IdentityId *string `type:"string"` 7930 7931 // The name of the user or group to fetch. For more information, see UserName 7932 // (https://docs.aws.amazon.com/singlesignon/latest/IdentityStoreAPIReference/API_User.html#singlesignon-Type-User-UserId) 7933 // and DisplayName (https://docs.aws.amazon.com/singlesignon/latest/IdentityStoreAPIReference/API_Group.html#singlesignon-Type-Group-DisplayName) 7934 // in the AWS SSO Identity Store API Reference. Either IdentityName or IdentityId 7935 // must be specified. 7936 IdentityName *string `type:"string"` 7937 7938 // Specifies whether the identity to fetch is a user or a group. 7939 // 7940 // IdentityType is a required field 7941 IdentityType *string `type:"string" required:"true" enum:"IdentityType"` 7942 7943 // The ID of the Amazon EMR Studio. 7944 // 7945 // StudioId is a required field 7946 StudioId *string `type:"string" required:"true"` 7947} 7948 7949// String returns the string representation 7950func (s GetStudioSessionMappingInput) String() string { 7951 return awsutil.Prettify(s) 7952} 7953 7954// GoString returns the string representation 7955func (s GetStudioSessionMappingInput) GoString() string { 7956 return s.String() 7957} 7958 7959// Validate inspects the fields of the type to determine if they are valid. 7960func (s *GetStudioSessionMappingInput) Validate() error { 7961 invalidParams := request.ErrInvalidParams{Context: "GetStudioSessionMappingInput"} 7962 if s.IdentityType == nil { 7963 invalidParams.Add(request.NewErrParamRequired("IdentityType")) 7964 } 7965 if s.StudioId == nil { 7966 invalidParams.Add(request.NewErrParamRequired("StudioId")) 7967 } 7968 7969 if invalidParams.Len() > 0 { 7970 return invalidParams 7971 } 7972 return nil 7973} 7974 7975// SetIdentityId sets the IdentityId field's value. 7976func (s *GetStudioSessionMappingInput) SetIdentityId(v string) *GetStudioSessionMappingInput { 7977 s.IdentityId = &v 7978 return s 7979} 7980 7981// SetIdentityName sets the IdentityName field's value. 7982func (s *GetStudioSessionMappingInput) SetIdentityName(v string) *GetStudioSessionMappingInput { 7983 s.IdentityName = &v 7984 return s 7985} 7986 7987// SetIdentityType sets the IdentityType field's value. 7988func (s *GetStudioSessionMappingInput) SetIdentityType(v string) *GetStudioSessionMappingInput { 7989 s.IdentityType = &v 7990 return s 7991} 7992 7993// SetStudioId sets the StudioId field's value. 7994func (s *GetStudioSessionMappingInput) SetStudioId(v string) *GetStudioSessionMappingInput { 7995 s.StudioId = &v 7996 return s 7997} 7998 7999type GetStudioSessionMappingOutput struct { 8000 _ struct{} `type:"structure"` 8001 8002 // The session mapping details for the specified Amazon EMR Studio and identity, 8003 // including session policy ARN and creation time. 8004 SessionMapping *SessionMappingDetail `type:"structure"` 8005} 8006 8007// String returns the string representation 8008func (s GetStudioSessionMappingOutput) String() string { 8009 return awsutil.Prettify(s) 8010} 8011 8012// GoString returns the string representation 8013func (s GetStudioSessionMappingOutput) GoString() string { 8014 return s.String() 8015} 8016 8017// SetSessionMapping sets the SessionMapping field's value. 8018func (s *GetStudioSessionMappingOutput) SetSessionMapping(v *SessionMappingDetail) *GetStudioSessionMappingOutput { 8019 s.SessionMapping = v 8020 return s 8021} 8022 8023// A job flow step consisting of a JAR file whose main function will be executed. 8024// The main function submits a job for Hadoop to execute and waits for the job 8025// to finish or fail. 8026type HadoopJarStepConfig struct { 8027 _ struct{} `type:"structure"` 8028 8029 // A list of command line arguments passed to the JAR file's main function when 8030 // executed. 8031 Args []*string `type:"list"` 8032 8033 // A path to a JAR file run during the step. 8034 // 8035 // Jar is a required field 8036 Jar *string `type:"string" required:"true"` 8037 8038 // The name of the main class in the specified Java file. If not specified, 8039 // the JAR file should specify a Main-Class in its manifest file. 8040 MainClass *string `type:"string"` 8041 8042 // A list of Java properties that are set when the step runs. You can use these 8043 // properties to pass key value pairs to your main function. 8044 Properties []*KeyValue `type:"list"` 8045} 8046 8047// String returns the string representation 8048func (s HadoopJarStepConfig) String() string { 8049 return awsutil.Prettify(s) 8050} 8051 8052// GoString returns the string representation 8053func (s HadoopJarStepConfig) GoString() string { 8054 return s.String() 8055} 8056 8057// Validate inspects the fields of the type to determine if they are valid. 8058func (s *HadoopJarStepConfig) Validate() error { 8059 invalidParams := request.ErrInvalidParams{Context: "HadoopJarStepConfig"} 8060 if s.Jar == nil { 8061 invalidParams.Add(request.NewErrParamRequired("Jar")) 8062 } 8063 8064 if invalidParams.Len() > 0 { 8065 return invalidParams 8066 } 8067 return nil 8068} 8069 8070// SetArgs sets the Args field's value. 8071func (s *HadoopJarStepConfig) SetArgs(v []*string) *HadoopJarStepConfig { 8072 s.Args = v 8073 return s 8074} 8075 8076// SetJar sets the Jar field's value. 8077func (s *HadoopJarStepConfig) SetJar(v string) *HadoopJarStepConfig { 8078 s.Jar = &v 8079 return s 8080} 8081 8082// SetMainClass sets the MainClass field's value. 8083func (s *HadoopJarStepConfig) SetMainClass(v string) *HadoopJarStepConfig { 8084 s.MainClass = &v 8085 return s 8086} 8087 8088// SetProperties sets the Properties field's value. 8089func (s *HadoopJarStepConfig) SetProperties(v []*KeyValue) *HadoopJarStepConfig { 8090 s.Properties = v 8091 return s 8092} 8093 8094// A cluster step consisting of a JAR file whose main function will be executed. 8095// The main function submits a job for Hadoop to execute and waits for the job 8096// to finish or fail. 8097type HadoopStepConfig struct { 8098 _ struct{} `type:"structure"` 8099 8100 // The list of command line arguments to pass to the JAR file's main function 8101 // for execution. 8102 Args []*string `type:"list"` 8103 8104 // The path to the JAR file that runs during the step. 8105 Jar *string `type:"string"` 8106 8107 // The name of the main class in the specified Java file. If not specified, 8108 // the JAR file should specify a main class in its manifest file. 8109 MainClass *string `type:"string"` 8110 8111 // The list of Java properties that are set when the step runs. You can use 8112 // these properties to pass key-value pairs to your main function. 8113 Properties map[string]*string `type:"map"` 8114} 8115 8116// String returns the string representation 8117func (s HadoopStepConfig) String() string { 8118 return awsutil.Prettify(s) 8119} 8120 8121// GoString returns the string representation 8122func (s HadoopStepConfig) GoString() string { 8123 return s.String() 8124} 8125 8126// SetArgs sets the Args field's value. 8127func (s *HadoopStepConfig) SetArgs(v []*string) *HadoopStepConfig { 8128 s.Args = v 8129 return s 8130} 8131 8132// SetJar sets the Jar field's value. 8133func (s *HadoopStepConfig) SetJar(v string) *HadoopStepConfig { 8134 s.Jar = &v 8135 return s 8136} 8137 8138// SetMainClass sets the MainClass field's value. 8139func (s *HadoopStepConfig) SetMainClass(v string) *HadoopStepConfig { 8140 s.MainClass = &v 8141 return s 8142} 8143 8144// SetProperties sets the Properties field's value. 8145func (s *HadoopStepConfig) SetProperties(v map[string]*string) *HadoopStepConfig { 8146 s.Properties = v 8147 return s 8148} 8149 8150// Represents an EC2 instance provisioned as part of cluster. 8151type Instance struct { 8152 _ struct{} `type:"structure"` 8153 8154 // The list of EBS volumes that are attached to this instance. 8155 EbsVolumes []*EbsVolume `type:"list"` 8156 8157 // The unique identifier of the instance in Amazon EC2. 8158 Ec2InstanceId *string `type:"string"` 8159 8160 // The unique identifier for the instance in Amazon EMR. 8161 Id *string `type:"string"` 8162 8163 // The unique identifier of the instance fleet to which an EC2 instance belongs. 8164 InstanceFleetId *string `type:"string"` 8165 8166 // The identifier of the instance group to which this instance belongs. 8167 InstanceGroupId *string `type:"string"` 8168 8169 // The EC2 instance type, for example m3.xlarge. 8170 InstanceType *string `min:"1" type:"string"` 8171 8172 // The instance purchasing option. Valid values are ON_DEMAND or SPOT. 8173 Market *string `type:"string" enum:"MarketType"` 8174 8175 // The private DNS name of the instance. 8176 PrivateDnsName *string `type:"string"` 8177 8178 // The private IP address of the instance. 8179 PrivateIpAddress *string `type:"string"` 8180 8181 // The public DNS name of the instance. 8182 PublicDnsName *string `type:"string"` 8183 8184 // The public IP address of the instance. 8185 PublicIpAddress *string `type:"string"` 8186 8187 // The current status of the instance. 8188 Status *InstanceStatus `type:"structure"` 8189} 8190 8191// String returns the string representation 8192func (s Instance) String() string { 8193 return awsutil.Prettify(s) 8194} 8195 8196// GoString returns the string representation 8197func (s Instance) GoString() string { 8198 return s.String() 8199} 8200 8201// SetEbsVolumes sets the EbsVolumes field's value. 8202func (s *Instance) SetEbsVolumes(v []*EbsVolume) *Instance { 8203 s.EbsVolumes = v 8204 return s 8205} 8206 8207// SetEc2InstanceId sets the Ec2InstanceId field's value. 8208func (s *Instance) SetEc2InstanceId(v string) *Instance { 8209 s.Ec2InstanceId = &v 8210 return s 8211} 8212 8213// SetId sets the Id field's value. 8214func (s *Instance) SetId(v string) *Instance { 8215 s.Id = &v 8216 return s 8217} 8218 8219// SetInstanceFleetId sets the InstanceFleetId field's value. 8220func (s *Instance) SetInstanceFleetId(v string) *Instance { 8221 s.InstanceFleetId = &v 8222 return s 8223} 8224 8225// SetInstanceGroupId sets the InstanceGroupId field's value. 8226func (s *Instance) SetInstanceGroupId(v string) *Instance { 8227 s.InstanceGroupId = &v 8228 return s 8229} 8230 8231// SetInstanceType sets the InstanceType field's value. 8232func (s *Instance) SetInstanceType(v string) *Instance { 8233 s.InstanceType = &v 8234 return s 8235} 8236 8237// SetMarket sets the Market field's value. 8238func (s *Instance) SetMarket(v string) *Instance { 8239 s.Market = &v 8240 return s 8241} 8242 8243// SetPrivateDnsName sets the PrivateDnsName field's value. 8244func (s *Instance) SetPrivateDnsName(v string) *Instance { 8245 s.PrivateDnsName = &v 8246 return s 8247} 8248 8249// SetPrivateIpAddress sets the PrivateIpAddress field's value. 8250func (s *Instance) SetPrivateIpAddress(v string) *Instance { 8251 s.PrivateIpAddress = &v 8252 return s 8253} 8254 8255// SetPublicDnsName sets the PublicDnsName field's value. 8256func (s *Instance) SetPublicDnsName(v string) *Instance { 8257 s.PublicDnsName = &v 8258 return s 8259} 8260 8261// SetPublicIpAddress sets the PublicIpAddress field's value. 8262func (s *Instance) SetPublicIpAddress(v string) *Instance { 8263 s.PublicIpAddress = &v 8264 return s 8265} 8266 8267// SetStatus sets the Status field's value. 8268func (s *Instance) SetStatus(v *InstanceStatus) *Instance { 8269 s.Status = v 8270 return s 8271} 8272 8273// Describes an instance fleet, which is a group of EC2 instances that host 8274// a particular node type (master, core, or task) in an Amazon EMR cluster. 8275// Instance fleets can consist of a mix of instance types and On-Demand and 8276// Spot Instances, which are provisioned to meet a defined target capacity. 8277// 8278// The instance fleet configuration is available only in Amazon EMR versions 8279// 4.8.0 and later, excluding 5.0.x versions. 8280type InstanceFleet struct { 8281 _ struct{} `type:"structure"` 8282 8283 // The unique identifier of the instance fleet. 8284 Id *string `type:"string"` 8285 8286 // The node type that the instance fleet hosts. Valid values are MASTER, CORE, 8287 // or TASK. 8288 InstanceFleetType *string `type:"string" enum:"InstanceFleetType"` 8289 8290 // The specification for the instance types that comprise an instance fleet. 8291 // Up to five unique instance specifications may be defined for each instance 8292 // fleet. 8293 InstanceTypeSpecifications []*InstanceTypeSpecification `type:"list"` 8294 8295 // Describes the launch specification for an instance fleet. 8296 LaunchSpecifications *InstanceFleetProvisioningSpecifications `type:"structure"` 8297 8298 // A friendly name for the instance fleet. 8299 Name *string `type:"string"` 8300 8301 // The number of On-Demand units that have been provisioned for the instance 8302 // fleet to fulfill TargetOnDemandCapacity. This provisioned capacity might 8303 // be less than or greater than TargetOnDemandCapacity. 8304 ProvisionedOnDemandCapacity *int64 `type:"integer"` 8305 8306 // The number of Spot units that have been provisioned for this instance fleet 8307 // to fulfill TargetSpotCapacity. This provisioned capacity might be less than 8308 // or greater than TargetSpotCapacity. 8309 ProvisionedSpotCapacity *int64 `type:"integer"` 8310 8311 // The current status of the instance fleet. 8312 Status *InstanceFleetStatus `type:"structure"` 8313 8314 // The target capacity of On-Demand units for the instance fleet, which determines 8315 // how many On-Demand Instances to provision. When the instance fleet launches, 8316 // Amazon EMR tries to provision On-Demand Instances as specified by InstanceTypeConfig. 8317 // Each instance configuration has a specified WeightedCapacity. When an On-Demand 8318 // Instance is provisioned, the WeightedCapacity units count toward the target 8319 // capacity. Amazon EMR provisions instances until the target capacity is totally 8320 // fulfilled, even if this results in an overage. For example, if there are 8321 // 2 units remaining to fulfill capacity, and Amazon EMR can only provision 8322 // an instance with a WeightedCapacity of 5 units, the instance is provisioned, 8323 // and the target capacity is exceeded by 3 units. You can use InstanceFleet$ProvisionedOnDemandCapacity 8324 // to determine the Spot capacity units that have been provisioned for the instance 8325 // fleet. 8326 // 8327 // If not specified or set to 0, only Spot Instances are provisioned for the 8328 // instance fleet using TargetSpotCapacity. At least one of TargetSpotCapacity 8329 // and TargetOnDemandCapacity should be greater than 0. For a master instance 8330 // fleet, only one of TargetSpotCapacity and TargetOnDemandCapacity can be specified, 8331 // and its value must be 1. 8332 TargetOnDemandCapacity *int64 `type:"integer"` 8333 8334 // The target capacity of Spot units for the instance fleet, which determines 8335 // how many Spot instances to provision. When the instance fleet launches, Amazon 8336 // EMR tries to provision Spot instances as specified by InstanceTypeConfig. 8337 // Each instance configuration has a specified WeightedCapacity. When a Spot 8338 // instance is provisioned, the WeightedCapacity units count toward the target 8339 // capacity. Amazon EMR provisions instances until the target capacity is totally 8340 // fulfilled, even if this results in an overage. For example, if there are 8341 // 2 units remaining to fulfill capacity, and Amazon EMR can only provision 8342 // an instance with a WeightedCapacity of 5 units, the instance is provisioned, 8343 // and the target capacity is exceeded by 3 units. You can use InstanceFleet$ProvisionedSpotCapacity 8344 // to determine the Spot capacity units that have been provisioned for the instance 8345 // fleet. 8346 // 8347 // If not specified or set to 0, only On-Demand instances are provisioned for 8348 // the instance fleet. At least one of TargetSpotCapacity and TargetOnDemandCapacity 8349 // should be greater than 0. For a master instance fleet, only one of TargetSpotCapacity 8350 // and TargetOnDemandCapacity can be specified, and its value must be 1. 8351 TargetSpotCapacity *int64 `type:"integer"` 8352} 8353 8354// String returns the string representation 8355func (s InstanceFleet) String() string { 8356 return awsutil.Prettify(s) 8357} 8358 8359// GoString returns the string representation 8360func (s InstanceFleet) GoString() string { 8361 return s.String() 8362} 8363 8364// SetId sets the Id field's value. 8365func (s *InstanceFleet) SetId(v string) *InstanceFleet { 8366 s.Id = &v 8367 return s 8368} 8369 8370// SetInstanceFleetType sets the InstanceFleetType field's value. 8371func (s *InstanceFleet) SetInstanceFleetType(v string) *InstanceFleet { 8372 s.InstanceFleetType = &v 8373 return s 8374} 8375 8376// SetInstanceTypeSpecifications sets the InstanceTypeSpecifications field's value. 8377func (s *InstanceFleet) SetInstanceTypeSpecifications(v []*InstanceTypeSpecification) *InstanceFleet { 8378 s.InstanceTypeSpecifications = v 8379 return s 8380} 8381 8382// SetLaunchSpecifications sets the LaunchSpecifications field's value. 8383func (s *InstanceFleet) SetLaunchSpecifications(v *InstanceFleetProvisioningSpecifications) *InstanceFleet { 8384 s.LaunchSpecifications = v 8385 return s 8386} 8387 8388// SetName sets the Name field's value. 8389func (s *InstanceFleet) SetName(v string) *InstanceFleet { 8390 s.Name = &v 8391 return s 8392} 8393 8394// SetProvisionedOnDemandCapacity sets the ProvisionedOnDemandCapacity field's value. 8395func (s *InstanceFleet) SetProvisionedOnDemandCapacity(v int64) *InstanceFleet { 8396 s.ProvisionedOnDemandCapacity = &v 8397 return s 8398} 8399 8400// SetProvisionedSpotCapacity sets the ProvisionedSpotCapacity field's value. 8401func (s *InstanceFleet) SetProvisionedSpotCapacity(v int64) *InstanceFleet { 8402 s.ProvisionedSpotCapacity = &v 8403 return s 8404} 8405 8406// SetStatus sets the Status field's value. 8407func (s *InstanceFleet) SetStatus(v *InstanceFleetStatus) *InstanceFleet { 8408 s.Status = v 8409 return s 8410} 8411 8412// SetTargetOnDemandCapacity sets the TargetOnDemandCapacity field's value. 8413func (s *InstanceFleet) SetTargetOnDemandCapacity(v int64) *InstanceFleet { 8414 s.TargetOnDemandCapacity = &v 8415 return s 8416} 8417 8418// SetTargetSpotCapacity sets the TargetSpotCapacity field's value. 8419func (s *InstanceFleet) SetTargetSpotCapacity(v int64) *InstanceFleet { 8420 s.TargetSpotCapacity = &v 8421 return s 8422} 8423 8424// The configuration that defines an instance fleet. 8425// 8426// The instance fleet configuration is available only in Amazon EMR versions 8427// 4.8.0 and later, excluding 5.0.x versions. 8428type InstanceFleetConfig struct { 8429 _ struct{} `type:"structure"` 8430 8431 // The node type that the instance fleet hosts. Valid values are MASTER,CORE,and 8432 // TASK. 8433 // 8434 // InstanceFleetType is a required field 8435 InstanceFleetType *string `type:"string" required:"true" enum:"InstanceFleetType"` 8436 8437 // The instance type configurations that define the EC2 instances in the instance 8438 // fleet. 8439 InstanceTypeConfigs []*InstanceTypeConfig `type:"list"` 8440 8441 // The launch specification for the instance fleet. 8442 LaunchSpecifications *InstanceFleetProvisioningSpecifications `type:"structure"` 8443 8444 // The friendly name of the instance fleet. 8445 Name *string `type:"string"` 8446 8447 // The target capacity of On-Demand units for the instance fleet, which determines 8448 // how many On-Demand Instances to provision. When the instance fleet launches, 8449 // Amazon EMR tries to provision On-Demand Instances as specified by InstanceTypeConfig. 8450 // Each instance configuration has a specified WeightedCapacity. When an On-Demand 8451 // Instance is provisioned, the WeightedCapacity units count toward the target 8452 // capacity. Amazon EMR provisions instances until the target capacity is totally 8453 // fulfilled, even if this results in an overage. For example, if there are 8454 // 2 units remaining to fulfill capacity, and Amazon EMR can only provision 8455 // an instance with a WeightedCapacity of 5 units, the instance is provisioned, 8456 // and the target capacity is exceeded by 3 units. 8457 // 8458 // If not specified or set to 0, only Spot Instances are provisioned for the 8459 // instance fleet using TargetSpotCapacity. At least one of TargetSpotCapacity 8460 // and TargetOnDemandCapacity should be greater than 0. For a master instance 8461 // fleet, only one of TargetSpotCapacity and TargetOnDemandCapacity can be specified, 8462 // and its value must be 1. 8463 TargetOnDemandCapacity *int64 `type:"integer"` 8464 8465 // The target capacity of Spot units for the instance fleet, which determines 8466 // how many Spot Instances to provision. When the instance fleet launches, Amazon 8467 // EMR tries to provision Spot Instances as specified by InstanceTypeConfig. 8468 // Each instance configuration has a specified WeightedCapacity. When a Spot 8469 // Instance is provisioned, the WeightedCapacity units count toward the target 8470 // capacity. Amazon EMR provisions instances until the target capacity is totally 8471 // fulfilled, even if this results in an overage. For example, if there are 8472 // 2 units remaining to fulfill capacity, and Amazon EMR can only provision 8473 // an instance with a WeightedCapacity of 5 units, the instance is provisioned, 8474 // and the target capacity is exceeded by 3 units. 8475 // 8476 // If not specified or set to 0, only On-Demand Instances are provisioned for 8477 // the instance fleet. At least one of TargetSpotCapacity and TargetOnDemandCapacity 8478 // should be greater than 0. For a master instance fleet, only one of TargetSpotCapacity 8479 // and TargetOnDemandCapacity can be specified, and its value must be 1. 8480 TargetSpotCapacity *int64 `type:"integer"` 8481} 8482 8483// String returns the string representation 8484func (s InstanceFleetConfig) String() string { 8485 return awsutil.Prettify(s) 8486} 8487 8488// GoString returns the string representation 8489func (s InstanceFleetConfig) GoString() string { 8490 return s.String() 8491} 8492 8493// Validate inspects the fields of the type to determine if they are valid. 8494func (s *InstanceFleetConfig) Validate() error { 8495 invalidParams := request.ErrInvalidParams{Context: "InstanceFleetConfig"} 8496 if s.InstanceFleetType == nil { 8497 invalidParams.Add(request.NewErrParamRequired("InstanceFleetType")) 8498 } 8499 if s.InstanceTypeConfigs != nil { 8500 for i, v := range s.InstanceTypeConfigs { 8501 if v == nil { 8502 continue 8503 } 8504 if err := v.Validate(); err != nil { 8505 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "InstanceTypeConfigs", i), err.(request.ErrInvalidParams)) 8506 } 8507 } 8508 } 8509 if s.LaunchSpecifications != nil { 8510 if err := s.LaunchSpecifications.Validate(); err != nil { 8511 invalidParams.AddNested("LaunchSpecifications", err.(request.ErrInvalidParams)) 8512 } 8513 } 8514 8515 if invalidParams.Len() > 0 { 8516 return invalidParams 8517 } 8518 return nil 8519} 8520 8521// SetInstanceFleetType sets the InstanceFleetType field's value. 8522func (s *InstanceFleetConfig) SetInstanceFleetType(v string) *InstanceFleetConfig { 8523 s.InstanceFleetType = &v 8524 return s 8525} 8526 8527// SetInstanceTypeConfigs sets the InstanceTypeConfigs field's value. 8528func (s *InstanceFleetConfig) SetInstanceTypeConfigs(v []*InstanceTypeConfig) *InstanceFleetConfig { 8529 s.InstanceTypeConfigs = v 8530 return s 8531} 8532 8533// SetLaunchSpecifications sets the LaunchSpecifications field's value. 8534func (s *InstanceFleetConfig) SetLaunchSpecifications(v *InstanceFleetProvisioningSpecifications) *InstanceFleetConfig { 8535 s.LaunchSpecifications = v 8536 return s 8537} 8538 8539// SetName sets the Name field's value. 8540func (s *InstanceFleetConfig) SetName(v string) *InstanceFleetConfig { 8541 s.Name = &v 8542 return s 8543} 8544 8545// SetTargetOnDemandCapacity sets the TargetOnDemandCapacity field's value. 8546func (s *InstanceFleetConfig) SetTargetOnDemandCapacity(v int64) *InstanceFleetConfig { 8547 s.TargetOnDemandCapacity = &v 8548 return s 8549} 8550 8551// SetTargetSpotCapacity sets the TargetSpotCapacity field's value. 8552func (s *InstanceFleetConfig) SetTargetSpotCapacity(v int64) *InstanceFleetConfig { 8553 s.TargetSpotCapacity = &v 8554 return s 8555} 8556 8557// Configuration parameters for an instance fleet modification request. 8558// 8559// The instance fleet configuration is available only in Amazon EMR versions 8560// 4.8.0 and later, excluding 5.0.x versions. 8561type InstanceFleetModifyConfig struct { 8562 _ struct{} `type:"structure"` 8563 8564 // A unique identifier for the instance fleet. 8565 // 8566 // InstanceFleetId is a required field 8567 InstanceFleetId *string `type:"string" required:"true"` 8568 8569 // The target capacity of On-Demand units for the instance fleet. For more information 8570 // see InstanceFleetConfig$TargetOnDemandCapacity. 8571 TargetOnDemandCapacity *int64 `type:"integer"` 8572 8573 // The target capacity of Spot units for the instance fleet. For more information, 8574 // see InstanceFleetConfig$TargetSpotCapacity. 8575 TargetSpotCapacity *int64 `type:"integer"` 8576} 8577 8578// String returns the string representation 8579func (s InstanceFleetModifyConfig) String() string { 8580 return awsutil.Prettify(s) 8581} 8582 8583// GoString returns the string representation 8584func (s InstanceFleetModifyConfig) GoString() string { 8585 return s.String() 8586} 8587 8588// Validate inspects the fields of the type to determine if they are valid. 8589func (s *InstanceFleetModifyConfig) Validate() error { 8590 invalidParams := request.ErrInvalidParams{Context: "InstanceFleetModifyConfig"} 8591 if s.InstanceFleetId == nil { 8592 invalidParams.Add(request.NewErrParamRequired("InstanceFleetId")) 8593 } 8594 8595 if invalidParams.Len() > 0 { 8596 return invalidParams 8597 } 8598 return nil 8599} 8600 8601// SetInstanceFleetId sets the InstanceFleetId field's value. 8602func (s *InstanceFleetModifyConfig) SetInstanceFleetId(v string) *InstanceFleetModifyConfig { 8603 s.InstanceFleetId = &v 8604 return s 8605} 8606 8607// SetTargetOnDemandCapacity sets the TargetOnDemandCapacity field's value. 8608func (s *InstanceFleetModifyConfig) SetTargetOnDemandCapacity(v int64) *InstanceFleetModifyConfig { 8609 s.TargetOnDemandCapacity = &v 8610 return s 8611} 8612 8613// SetTargetSpotCapacity sets the TargetSpotCapacity field's value. 8614func (s *InstanceFleetModifyConfig) SetTargetSpotCapacity(v int64) *InstanceFleetModifyConfig { 8615 s.TargetSpotCapacity = &v 8616 return s 8617} 8618 8619// The launch specification for Spot Instances in the fleet, which determines 8620// the defined duration, provisioning timeout behavior, and allocation strategy. 8621// 8622// The instance fleet configuration is available only in Amazon EMR versions 8623// 4.8.0 and later, excluding 5.0.x versions. On-Demand and Spot Instance allocation 8624// strategies are available in Amazon EMR version 5.12.1 and later. 8625type InstanceFleetProvisioningSpecifications struct { 8626 _ struct{} `type:"structure"` 8627 8628 // The launch specification for On-Demand Instances in the instance fleet, which 8629 // determines the allocation strategy. 8630 // 8631 // The instance fleet configuration is available only in Amazon EMR versions 8632 // 4.8.0 and later, excluding 5.0.x versions. On-Demand Instances allocation 8633 // strategy is available in Amazon EMR version 5.12.1 and later. 8634 OnDemandSpecification *OnDemandProvisioningSpecification `type:"structure"` 8635 8636 // The launch specification for Spot Instances in the fleet, which determines 8637 // the defined duration, provisioning timeout behavior, and allocation strategy. 8638 SpotSpecification *SpotProvisioningSpecification `type:"structure"` 8639} 8640 8641// String returns the string representation 8642func (s InstanceFleetProvisioningSpecifications) String() string { 8643 return awsutil.Prettify(s) 8644} 8645 8646// GoString returns the string representation 8647func (s InstanceFleetProvisioningSpecifications) GoString() string { 8648 return s.String() 8649} 8650 8651// Validate inspects the fields of the type to determine if they are valid. 8652func (s *InstanceFleetProvisioningSpecifications) Validate() error { 8653 invalidParams := request.ErrInvalidParams{Context: "InstanceFleetProvisioningSpecifications"} 8654 if s.OnDemandSpecification != nil { 8655 if err := s.OnDemandSpecification.Validate(); err != nil { 8656 invalidParams.AddNested("OnDemandSpecification", err.(request.ErrInvalidParams)) 8657 } 8658 } 8659 if s.SpotSpecification != nil { 8660 if err := s.SpotSpecification.Validate(); err != nil { 8661 invalidParams.AddNested("SpotSpecification", err.(request.ErrInvalidParams)) 8662 } 8663 } 8664 8665 if invalidParams.Len() > 0 { 8666 return invalidParams 8667 } 8668 return nil 8669} 8670 8671// SetOnDemandSpecification sets the OnDemandSpecification field's value. 8672func (s *InstanceFleetProvisioningSpecifications) SetOnDemandSpecification(v *OnDemandProvisioningSpecification) *InstanceFleetProvisioningSpecifications { 8673 s.OnDemandSpecification = v 8674 return s 8675} 8676 8677// SetSpotSpecification sets the SpotSpecification field's value. 8678func (s *InstanceFleetProvisioningSpecifications) SetSpotSpecification(v *SpotProvisioningSpecification) *InstanceFleetProvisioningSpecifications { 8679 s.SpotSpecification = v 8680 return s 8681} 8682 8683// Provides status change reason details for the instance fleet. 8684// 8685// The instance fleet configuration is available only in Amazon EMR versions 8686// 4.8.0 and later, excluding 5.0.x versions. 8687type InstanceFleetStateChangeReason struct { 8688 _ struct{} `type:"structure"` 8689 8690 // A code corresponding to the reason the state change occurred. 8691 Code *string `type:"string" enum:"InstanceFleetStateChangeReasonCode"` 8692 8693 // An explanatory message. 8694 Message *string `type:"string"` 8695} 8696 8697// String returns the string representation 8698func (s InstanceFleetStateChangeReason) String() string { 8699 return awsutil.Prettify(s) 8700} 8701 8702// GoString returns the string representation 8703func (s InstanceFleetStateChangeReason) GoString() string { 8704 return s.String() 8705} 8706 8707// SetCode sets the Code field's value. 8708func (s *InstanceFleetStateChangeReason) SetCode(v string) *InstanceFleetStateChangeReason { 8709 s.Code = &v 8710 return s 8711} 8712 8713// SetMessage sets the Message field's value. 8714func (s *InstanceFleetStateChangeReason) SetMessage(v string) *InstanceFleetStateChangeReason { 8715 s.Message = &v 8716 return s 8717} 8718 8719// The status of the instance fleet. 8720// 8721// The instance fleet configuration is available only in Amazon EMR versions 8722// 4.8.0 and later, excluding 5.0.x versions. 8723type InstanceFleetStatus struct { 8724 _ struct{} `type:"structure"` 8725 8726 // A code representing the instance fleet status. 8727 // 8728 // * PROVISIONING—The instance fleet is provisioning EC2 resources and 8729 // is not yet ready to run jobs. 8730 // 8731 // * BOOTSTRAPPING—EC2 instances and other resources have been provisioned 8732 // and the bootstrap actions specified for the instances are underway. 8733 // 8734 // * RUNNING—EC2 instances and other resources are running. They are either 8735 // executing jobs or waiting to execute jobs. 8736 // 8737 // * RESIZING—A resize operation is underway. EC2 instances are either 8738 // being added or removed. 8739 // 8740 // * SUSPENDED—A resize operation could not complete. Existing EC2 instances 8741 // are running, but instances can't be added or removed. 8742 // 8743 // * TERMINATING—The instance fleet is terminating EC2 instances. 8744 // 8745 // * TERMINATED—The instance fleet is no longer active, and all EC2 instances 8746 // have been terminated. 8747 State *string `type:"string" enum:"InstanceFleetState"` 8748 8749 // Provides status change reason details for the instance fleet. 8750 StateChangeReason *InstanceFleetStateChangeReason `type:"structure"` 8751 8752 // Provides historical timestamps for the instance fleet, including the time 8753 // of creation, the time it became ready to run jobs, and the time of termination. 8754 Timeline *InstanceFleetTimeline `type:"structure"` 8755} 8756 8757// String returns the string representation 8758func (s InstanceFleetStatus) String() string { 8759 return awsutil.Prettify(s) 8760} 8761 8762// GoString returns the string representation 8763func (s InstanceFleetStatus) GoString() string { 8764 return s.String() 8765} 8766 8767// SetState sets the State field's value. 8768func (s *InstanceFleetStatus) SetState(v string) *InstanceFleetStatus { 8769 s.State = &v 8770 return s 8771} 8772 8773// SetStateChangeReason sets the StateChangeReason field's value. 8774func (s *InstanceFleetStatus) SetStateChangeReason(v *InstanceFleetStateChangeReason) *InstanceFleetStatus { 8775 s.StateChangeReason = v 8776 return s 8777} 8778 8779// SetTimeline sets the Timeline field's value. 8780func (s *InstanceFleetStatus) SetTimeline(v *InstanceFleetTimeline) *InstanceFleetStatus { 8781 s.Timeline = v 8782 return s 8783} 8784 8785// Provides historical timestamps for the instance fleet, including the time 8786// of creation, the time it became ready to run jobs, and the time of termination. 8787// 8788// The instance fleet configuration is available only in Amazon EMR versions 8789// 4.8.0 and later, excluding 5.0.x versions. 8790type InstanceFleetTimeline struct { 8791 _ struct{} `type:"structure"` 8792 8793 // The time and date the instance fleet was created. 8794 CreationDateTime *time.Time `type:"timestamp"` 8795 8796 // The time and date the instance fleet terminated. 8797 EndDateTime *time.Time `type:"timestamp"` 8798 8799 // The time and date the instance fleet was ready to run jobs. 8800 ReadyDateTime *time.Time `type:"timestamp"` 8801} 8802 8803// String returns the string representation 8804func (s InstanceFleetTimeline) String() string { 8805 return awsutil.Prettify(s) 8806} 8807 8808// GoString returns the string representation 8809func (s InstanceFleetTimeline) GoString() string { 8810 return s.String() 8811} 8812 8813// SetCreationDateTime sets the CreationDateTime field's value. 8814func (s *InstanceFleetTimeline) SetCreationDateTime(v time.Time) *InstanceFleetTimeline { 8815 s.CreationDateTime = &v 8816 return s 8817} 8818 8819// SetEndDateTime sets the EndDateTime field's value. 8820func (s *InstanceFleetTimeline) SetEndDateTime(v time.Time) *InstanceFleetTimeline { 8821 s.EndDateTime = &v 8822 return s 8823} 8824 8825// SetReadyDateTime sets the ReadyDateTime field's value. 8826func (s *InstanceFleetTimeline) SetReadyDateTime(v time.Time) *InstanceFleetTimeline { 8827 s.ReadyDateTime = &v 8828 return s 8829} 8830 8831// This entity represents an instance group, which is a group of instances that 8832// have common purpose. For example, CORE instance group is used for HDFS. 8833type InstanceGroup struct { 8834 _ struct{} `type:"structure"` 8835 8836 // An automatic scaling policy for a core instance group or task instance group 8837 // in an Amazon EMR cluster. The automatic scaling policy defines how an instance 8838 // group dynamically adds and terminates EC2 instances in response to the value 8839 // of a CloudWatch metric. See PutAutoScalingPolicy. 8840 AutoScalingPolicy *AutoScalingPolicyDescription `type:"structure"` 8841 8842 // The bid price for each EC2 Spot Instance type as defined by InstanceType. 8843 // Expressed in USD. If neither BidPrice nor BidPriceAsPercentageOfOnDemandPrice 8844 // is provided, BidPriceAsPercentageOfOnDemandPrice defaults to 100%. 8845 BidPrice *string `type:"string"` 8846 8847 // 8848 // Amazon EMR releases 4.x or later. 8849 // 8850 // The list of configurations supplied for an EMR cluster instance group. You 8851 // can specify a separate configuration for each instance group (master, core, 8852 // and task). 8853 Configurations []*Configuration `type:"list"` 8854 8855 // The version number of the requested configuration specification for this 8856 // instance group. 8857 ConfigurationsVersion *int64 `type:"long"` 8858 8859 // The EBS block devices that are mapped to this instance group. 8860 EbsBlockDevices []*EbsBlockDevice `type:"list"` 8861 8862 // If the instance group is EBS-optimized. An Amazon EBS-optimized instance 8863 // uses an optimized configuration stack and provides additional, dedicated 8864 // capacity for Amazon EBS I/O. 8865 EbsOptimized *bool `type:"boolean"` 8866 8867 // The identifier of the instance group. 8868 Id *string `type:"string"` 8869 8870 // The type of the instance group. Valid values are MASTER, CORE or TASK. 8871 InstanceGroupType *string `type:"string" enum:"InstanceGroupType"` 8872 8873 // The EC2 instance type for all instances in the instance group. 8874 InstanceType *string `min:"1" type:"string"` 8875 8876 // A list of configurations that were successfully applied for an instance group 8877 // last time. 8878 LastSuccessfullyAppliedConfigurations []*Configuration `type:"list"` 8879 8880 // The version number of a configuration specification that was successfully 8881 // applied for an instance group last time. 8882 LastSuccessfullyAppliedConfigurationsVersion *int64 `type:"long"` 8883 8884 // The marketplace to provision instances for this group. Valid values are ON_DEMAND 8885 // or SPOT. 8886 Market *string `type:"string" enum:"MarketType"` 8887 8888 // The name of the instance group. 8889 Name *string `type:"string"` 8890 8891 // The target number of instances for the instance group. 8892 RequestedInstanceCount *int64 `type:"integer"` 8893 8894 // The number of instances currently running in this instance group. 8895 RunningInstanceCount *int64 `type:"integer"` 8896 8897 // Policy for customizing shrink operations. 8898 ShrinkPolicy *ShrinkPolicy `type:"structure"` 8899 8900 // The current status of the instance group. 8901 Status *InstanceGroupStatus `type:"structure"` 8902} 8903 8904// String returns the string representation 8905func (s InstanceGroup) String() string { 8906 return awsutil.Prettify(s) 8907} 8908 8909// GoString returns the string representation 8910func (s InstanceGroup) GoString() string { 8911 return s.String() 8912} 8913 8914// SetAutoScalingPolicy sets the AutoScalingPolicy field's value. 8915func (s *InstanceGroup) SetAutoScalingPolicy(v *AutoScalingPolicyDescription) *InstanceGroup { 8916 s.AutoScalingPolicy = v 8917 return s 8918} 8919 8920// SetBidPrice sets the BidPrice field's value. 8921func (s *InstanceGroup) SetBidPrice(v string) *InstanceGroup { 8922 s.BidPrice = &v 8923 return s 8924} 8925 8926// SetConfigurations sets the Configurations field's value. 8927func (s *InstanceGroup) SetConfigurations(v []*Configuration) *InstanceGroup { 8928 s.Configurations = v 8929 return s 8930} 8931 8932// SetConfigurationsVersion sets the ConfigurationsVersion field's value. 8933func (s *InstanceGroup) SetConfigurationsVersion(v int64) *InstanceGroup { 8934 s.ConfigurationsVersion = &v 8935 return s 8936} 8937 8938// SetEbsBlockDevices sets the EbsBlockDevices field's value. 8939func (s *InstanceGroup) SetEbsBlockDevices(v []*EbsBlockDevice) *InstanceGroup { 8940 s.EbsBlockDevices = v 8941 return s 8942} 8943 8944// SetEbsOptimized sets the EbsOptimized field's value. 8945func (s *InstanceGroup) SetEbsOptimized(v bool) *InstanceGroup { 8946 s.EbsOptimized = &v 8947 return s 8948} 8949 8950// SetId sets the Id field's value. 8951func (s *InstanceGroup) SetId(v string) *InstanceGroup { 8952 s.Id = &v 8953 return s 8954} 8955 8956// SetInstanceGroupType sets the InstanceGroupType field's value. 8957func (s *InstanceGroup) SetInstanceGroupType(v string) *InstanceGroup { 8958 s.InstanceGroupType = &v 8959 return s 8960} 8961 8962// SetInstanceType sets the InstanceType field's value. 8963func (s *InstanceGroup) SetInstanceType(v string) *InstanceGroup { 8964 s.InstanceType = &v 8965 return s 8966} 8967 8968// SetLastSuccessfullyAppliedConfigurations sets the LastSuccessfullyAppliedConfigurations field's value. 8969func (s *InstanceGroup) SetLastSuccessfullyAppliedConfigurations(v []*Configuration) *InstanceGroup { 8970 s.LastSuccessfullyAppliedConfigurations = v 8971 return s 8972} 8973 8974// SetLastSuccessfullyAppliedConfigurationsVersion sets the LastSuccessfullyAppliedConfigurationsVersion field's value. 8975func (s *InstanceGroup) SetLastSuccessfullyAppliedConfigurationsVersion(v int64) *InstanceGroup { 8976 s.LastSuccessfullyAppliedConfigurationsVersion = &v 8977 return s 8978} 8979 8980// SetMarket sets the Market field's value. 8981func (s *InstanceGroup) SetMarket(v string) *InstanceGroup { 8982 s.Market = &v 8983 return s 8984} 8985 8986// SetName sets the Name field's value. 8987func (s *InstanceGroup) SetName(v string) *InstanceGroup { 8988 s.Name = &v 8989 return s 8990} 8991 8992// SetRequestedInstanceCount sets the RequestedInstanceCount field's value. 8993func (s *InstanceGroup) SetRequestedInstanceCount(v int64) *InstanceGroup { 8994 s.RequestedInstanceCount = &v 8995 return s 8996} 8997 8998// SetRunningInstanceCount sets the RunningInstanceCount field's value. 8999func (s *InstanceGroup) SetRunningInstanceCount(v int64) *InstanceGroup { 9000 s.RunningInstanceCount = &v 9001 return s 9002} 9003 9004// SetShrinkPolicy sets the ShrinkPolicy field's value. 9005func (s *InstanceGroup) SetShrinkPolicy(v *ShrinkPolicy) *InstanceGroup { 9006 s.ShrinkPolicy = v 9007 return s 9008} 9009 9010// SetStatus sets the Status field's value. 9011func (s *InstanceGroup) SetStatus(v *InstanceGroupStatus) *InstanceGroup { 9012 s.Status = v 9013 return s 9014} 9015 9016// Configuration defining a new instance group. 9017type InstanceGroupConfig struct { 9018 _ struct{} `type:"structure"` 9019 9020 // An automatic scaling policy for a core instance group or task instance group 9021 // in an Amazon EMR cluster. The automatic scaling policy defines how an instance 9022 // group dynamically adds and terminates EC2 instances in response to the value 9023 // of a CloudWatch metric. See PutAutoScalingPolicy. 9024 AutoScalingPolicy *AutoScalingPolicy `type:"structure"` 9025 9026 // The bid price for each EC2 Spot Instance type as defined by InstanceType. 9027 // Expressed in USD. If neither BidPrice nor BidPriceAsPercentageOfOnDemandPrice 9028 // is provided, BidPriceAsPercentageOfOnDemandPrice defaults to 100%. 9029 BidPrice *string `type:"string"` 9030 9031 // 9032 // Amazon EMR releases 4.x or later. 9033 // 9034 // The list of configurations supplied for an EMR cluster instance group. You 9035 // can specify a separate configuration for each instance group (master, core, 9036 // and task). 9037 Configurations []*Configuration `type:"list"` 9038 9039 // EBS configurations that will be attached to each EC2 instance in the instance 9040 // group. 9041 EbsConfiguration *EbsConfiguration `type:"structure"` 9042 9043 // Target number of instances for the instance group. 9044 // 9045 // InstanceCount is a required field 9046 InstanceCount *int64 `type:"integer" required:"true"` 9047 9048 // The role of the instance group in the cluster. 9049 // 9050 // InstanceRole is a required field 9051 InstanceRole *string `type:"string" required:"true" enum:"InstanceRoleType"` 9052 9053 // The EC2 instance type for all instances in the instance group. 9054 // 9055 // InstanceType is a required field 9056 InstanceType *string `min:"1" type:"string" required:"true"` 9057 9058 // Market type of the EC2 instances used to create a cluster node. 9059 Market *string `type:"string" enum:"MarketType"` 9060 9061 // Friendly name given to the instance group. 9062 Name *string `type:"string"` 9063} 9064 9065// String returns the string representation 9066func (s InstanceGroupConfig) String() string { 9067 return awsutil.Prettify(s) 9068} 9069 9070// GoString returns the string representation 9071func (s InstanceGroupConfig) GoString() string { 9072 return s.String() 9073} 9074 9075// Validate inspects the fields of the type to determine if they are valid. 9076func (s *InstanceGroupConfig) Validate() error { 9077 invalidParams := request.ErrInvalidParams{Context: "InstanceGroupConfig"} 9078 if s.InstanceCount == nil { 9079 invalidParams.Add(request.NewErrParamRequired("InstanceCount")) 9080 } 9081 if s.InstanceRole == nil { 9082 invalidParams.Add(request.NewErrParamRequired("InstanceRole")) 9083 } 9084 if s.InstanceType == nil { 9085 invalidParams.Add(request.NewErrParamRequired("InstanceType")) 9086 } 9087 if s.InstanceType != nil && len(*s.InstanceType) < 1 { 9088 invalidParams.Add(request.NewErrParamMinLen("InstanceType", 1)) 9089 } 9090 if s.AutoScalingPolicy != nil { 9091 if err := s.AutoScalingPolicy.Validate(); err != nil { 9092 invalidParams.AddNested("AutoScalingPolicy", err.(request.ErrInvalidParams)) 9093 } 9094 } 9095 if s.EbsConfiguration != nil { 9096 if err := s.EbsConfiguration.Validate(); err != nil { 9097 invalidParams.AddNested("EbsConfiguration", err.(request.ErrInvalidParams)) 9098 } 9099 } 9100 9101 if invalidParams.Len() > 0 { 9102 return invalidParams 9103 } 9104 return nil 9105} 9106 9107// SetAutoScalingPolicy sets the AutoScalingPolicy field's value. 9108func (s *InstanceGroupConfig) SetAutoScalingPolicy(v *AutoScalingPolicy) *InstanceGroupConfig { 9109 s.AutoScalingPolicy = v 9110 return s 9111} 9112 9113// SetBidPrice sets the BidPrice field's value. 9114func (s *InstanceGroupConfig) SetBidPrice(v string) *InstanceGroupConfig { 9115 s.BidPrice = &v 9116 return s 9117} 9118 9119// SetConfigurations sets the Configurations field's value. 9120func (s *InstanceGroupConfig) SetConfigurations(v []*Configuration) *InstanceGroupConfig { 9121 s.Configurations = v 9122 return s 9123} 9124 9125// SetEbsConfiguration sets the EbsConfiguration field's value. 9126func (s *InstanceGroupConfig) SetEbsConfiguration(v *EbsConfiguration) *InstanceGroupConfig { 9127 s.EbsConfiguration = v 9128 return s 9129} 9130 9131// SetInstanceCount sets the InstanceCount field's value. 9132func (s *InstanceGroupConfig) SetInstanceCount(v int64) *InstanceGroupConfig { 9133 s.InstanceCount = &v 9134 return s 9135} 9136 9137// SetInstanceRole sets the InstanceRole field's value. 9138func (s *InstanceGroupConfig) SetInstanceRole(v string) *InstanceGroupConfig { 9139 s.InstanceRole = &v 9140 return s 9141} 9142 9143// SetInstanceType sets the InstanceType field's value. 9144func (s *InstanceGroupConfig) SetInstanceType(v string) *InstanceGroupConfig { 9145 s.InstanceType = &v 9146 return s 9147} 9148 9149// SetMarket sets the Market field's value. 9150func (s *InstanceGroupConfig) SetMarket(v string) *InstanceGroupConfig { 9151 s.Market = &v 9152 return s 9153} 9154 9155// SetName sets the Name field's value. 9156func (s *InstanceGroupConfig) SetName(v string) *InstanceGroupConfig { 9157 s.Name = &v 9158 return s 9159} 9160 9161// Detailed information about an instance group. 9162type InstanceGroupDetail struct { 9163 _ struct{} `type:"structure"` 9164 9165 // The bid price for each EC2 Spot Instance type as defined by InstanceType. 9166 // Expressed in USD. If neither BidPrice nor BidPriceAsPercentageOfOnDemandPrice 9167 // is provided, BidPriceAsPercentageOfOnDemandPrice defaults to 100%. 9168 BidPrice *string `type:"string"` 9169 9170 // The date/time the instance group was created. 9171 // 9172 // CreationDateTime is a required field 9173 CreationDateTime *time.Time `type:"timestamp" required:"true"` 9174 9175 // The date/time the instance group was terminated. 9176 EndDateTime *time.Time `type:"timestamp"` 9177 9178 // Unique identifier for the instance group. 9179 InstanceGroupId *string `type:"string"` 9180 9181 // Target number of instances to run in the instance group. 9182 // 9183 // InstanceRequestCount is a required field 9184 InstanceRequestCount *int64 `type:"integer" required:"true"` 9185 9186 // Instance group role in the cluster 9187 // 9188 // InstanceRole is a required field 9189 InstanceRole *string `type:"string" required:"true" enum:"InstanceRoleType"` 9190 9191 // Actual count of running instances. 9192 // 9193 // InstanceRunningCount is a required field 9194 InstanceRunningCount *int64 `type:"integer" required:"true"` 9195 9196 // EC2 instance type. 9197 // 9198 // InstanceType is a required field 9199 InstanceType *string `min:"1" type:"string" required:"true"` 9200 9201 // Details regarding the state of the instance group. 9202 LastStateChangeReason *string `type:"string"` 9203 9204 // Market type of the EC2 instances used to create a cluster node. 9205 // 9206 // Market is a required field 9207 Market *string `type:"string" required:"true" enum:"MarketType"` 9208 9209 // Friendly name for the instance group. 9210 Name *string `type:"string"` 9211 9212 // The date/time the instance group was available to the cluster. 9213 ReadyDateTime *time.Time `type:"timestamp"` 9214 9215 // The date/time the instance group was started. 9216 StartDateTime *time.Time `type:"timestamp"` 9217 9218 // State of instance group. The following values are deprecated: STARTING, TERMINATED, 9219 // and FAILED. 9220 // 9221 // State is a required field 9222 State *string `type:"string" required:"true" enum:"InstanceGroupState"` 9223} 9224 9225// String returns the string representation 9226func (s InstanceGroupDetail) String() string { 9227 return awsutil.Prettify(s) 9228} 9229 9230// GoString returns the string representation 9231func (s InstanceGroupDetail) GoString() string { 9232 return s.String() 9233} 9234 9235// SetBidPrice sets the BidPrice field's value. 9236func (s *InstanceGroupDetail) SetBidPrice(v string) *InstanceGroupDetail { 9237 s.BidPrice = &v 9238 return s 9239} 9240 9241// SetCreationDateTime sets the CreationDateTime field's value. 9242func (s *InstanceGroupDetail) SetCreationDateTime(v time.Time) *InstanceGroupDetail { 9243 s.CreationDateTime = &v 9244 return s 9245} 9246 9247// SetEndDateTime sets the EndDateTime field's value. 9248func (s *InstanceGroupDetail) SetEndDateTime(v time.Time) *InstanceGroupDetail { 9249 s.EndDateTime = &v 9250 return s 9251} 9252 9253// SetInstanceGroupId sets the InstanceGroupId field's value. 9254func (s *InstanceGroupDetail) SetInstanceGroupId(v string) *InstanceGroupDetail { 9255 s.InstanceGroupId = &v 9256 return s 9257} 9258 9259// SetInstanceRequestCount sets the InstanceRequestCount field's value. 9260func (s *InstanceGroupDetail) SetInstanceRequestCount(v int64) *InstanceGroupDetail { 9261 s.InstanceRequestCount = &v 9262 return s 9263} 9264 9265// SetInstanceRole sets the InstanceRole field's value. 9266func (s *InstanceGroupDetail) SetInstanceRole(v string) *InstanceGroupDetail { 9267 s.InstanceRole = &v 9268 return s 9269} 9270 9271// SetInstanceRunningCount sets the InstanceRunningCount field's value. 9272func (s *InstanceGroupDetail) SetInstanceRunningCount(v int64) *InstanceGroupDetail { 9273 s.InstanceRunningCount = &v 9274 return s 9275} 9276 9277// SetInstanceType sets the InstanceType field's value. 9278func (s *InstanceGroupDetail) SetInstanceType(v string) *InstanceGroupDetail { 9279 s.InstanceType = &v 9280 return s 9281} 9282 9283// SetLastStateChangeReason sets the LastStateChangeReason field's value. 9284func (s *InstanceGroupDetail) SetLastStateChangeReason(v string) *InstanceGroupDetail { 9285 s.LastStateChangeReason = &v 9286 return s 9287} 9288 9289// SetMarket sets the Market field's value. 9290func (s *InstanceGroupDetail) SetMarket(v string) *InstanceGroupDetail { 9291 s.Market = &v 9292 return s 9293} 9294 9295// SetName sets the Name field's value. 9296func (s *InstanceGroupDetail) SetName(v string) *InstanceGroupDetail { 9297 s.Name = &v 9298 return s 9299} 9300 9301// SetReadyDateTime sets the ReadyDateTime field's value. 9302func (s *InstanceGroupDetail) SetReadyDateTime(v time.Time) *InstanceGroupDetail { 9303 s.ReadyDateTime = &v 9304 return s 9305} 9306 9307// SetStartDateTime sets the StartDateTime field's value. 9308func (s *InstanceGroupDetail) SetStartDateTime(v time.Time) *InstanceGroupDetail { 9309 s.StartDateTime = &v 9310 return s 9311} 9312 9313// SetState sets the State field's value. 9314func (s *InstanceGroupDetail) SetState(v string) *InstanceGroupDetail { 9315 s.State = &v 9316 return s 9317} 9318 9319// Modify the size or configurations of an instance group. 9320type InstanceGroupModifyConfig struct { 9321 _ struct{} `type:"structure"` 9322 9323 // A list of new or modified configurations to apply for an instance group. 9324 Configurations []*Configuration `type:"list"` 9325 9326 // The EC2 InstanceIds to terminate. After you terminate the instances, the 9327 // instance group will not return to its original requested size. 9328 EC2InstanceIdsToTerminate []*string `type:"list"` 9329 9330 // Target size for the instance group. 9331 InstanceCount *int64 `type:"integer"` 9332 9333 // Unique ID of the instance group to modify. 9334 // 9335 // InstanceGroupId is a required field 9336 InstanceGroupId *string `type:"string" required:"true"` 9337 9338 // Policy for customizing shrink operations. 9339 ShrinkPolicy *ShrinkPolicy `type:"structure"` 9340} 9341 9342// String returns the string representation 9343func (s InstanceGroupModifyConfig) String() string { 9344 return awsutil.Prettify(s) 9345} 9346 9347// GoString returns the string representation 9348func (s InstanceGroupModifyConfig) GoString() string { 9349 return s.String() 9350} 9351 9352// Validate inspects the fields of the type to determine if they are valid. 9353func (s *InstanceGroupModifyConfig) Validate() error { 9354 invalidParams := request.ErrInvalidParams{Context: "InstanceGroupModifyConfig"} 9355 if s.InstanceGroupId == nil { 9356 invalidParams.Add(request.NewErrParamRequired("InstanceGroupId")) 9357 } 9358 9359 if invalidParams.Len() > 0 { 9360 return invalidParams 9361 } 9362 return nil 9363} 9364 9365// SetConfigurations sets the Configurations field's value. 9366func (s *InstanceGroupModifyConfig) SetConfigurations(v []*Configuration) *InstanceGroupModifyConfig { 9367 s.Configurations = v 9368 return s 9369} 9370 9371// SetEC2InstanceIdsToTerminate sets the EC2InstanceIdsToTerminate field's value. 9372func (s *InstanceGroupModifyConfig) SetEC2InstanceIdsToTerminate(v []*string) *InstanceGroupModifyConfig { 9373 s.EC2InstanceIdsToTerminate = v 9374 return s 9375} 9376 9377// SetInstanceCount sets the InstanceCount field's value. 9378func (s *InstanceGroupModifyConfig) SetInstanceCount(v int64) *InstanceGroupModifyConfig { 9379 s.InstanceCount = &v 9380 return s 9381} 9382 9383// SetInstanceGroupId sets the InstanceGroupId field's value. 9384func (s *InstanceGroupModifyConfig) SetInstanceGroupId(v string) *InstanceGroupModifyConfig { 9385 s.InstanceGroupId = &v 9386 return s 9387} 9388 9389// SetShrinkPolicy sets the ShrinkPolicy field's value. 9390func (s *InstanceGroupModifyConfig) SetShrinkPolicy(v *ShrinkPolicy) *InstanceGroupModifyConfig { 9391 s.ShrinkPolicy = v 9392 return s 9393} 9394 9395// The status change reason details for the instance group. 9396type InstanceGroupStateChangeReason struct { 9397 _ struct{} `type:"structure"` 9398 9399 // The programmable code for the state change reason. 9400 Code *string `type:"string" enum:"InstanceGroupStateChangeReasonCode"` 9401 9402 // The status change reason description. 9403 Message *string `type:"string"` 9404} 9405 9406// String returns the string representation 9407func (s InstanceGroupStateChangeReason) String() string { 9408 return awsutil.Prettify(s) 9409} 9410 9411// GoString returns the string representation 9412func (s InstanceGroupStateChangeReason) GoString() string { 9413 return s.String() 9414} 9415 9416// SetCode sets the Code field's value. 9417func (s *InstanceGroupStateChangeReason) SetCode(v string) *InstanceGroupStateChangeReason { 9418 s.Code = &v 9419 return s 9420} 9421 9422// SetMessage sets the Message field's value. 9423func (s *InstanceGroupStateChangeReason) SetMessage(v string) *InstanceGroupStateChangeReason { 9424 s.Message = &v 9425 return s 9426} 9427 9428// The details of the instance group status. 9429type InstanceGroupStatus struct { 9430 _ struct{} `type:"structure"` 9431 9432 // The current state of the instance group. 9433 State *string `type:"string" enum:"InstanceGroupState"` 9434 9435 // The status change reason details for the instance group. 9436 StateChangeReason *InstanceGroupStateChangeReason `type:"structure"` 9437 9438 // The timeline of the instance group status over time. 9439 Timeline *InstanceGroupTimeline `type:"structure"` 9440} 9441 9442// String returns the string representation 9443func (s InstanceGroupStatus) String() string { 9444 return awsutil.Prettify(s) 9445} 9446 9447// GoString returns the string representation 9448func (s InstanceGroupStatus) GoString() string { 9449 return s.String() 9450} 9451 9452// SetState sets the State field's value. 9453func (s *InstanceGroupStatus) SetState(v string) *InstanceGroupStatus { 9454 s.State = &v 9455 return s 9456} 9457 9458// SetStateChangeReason sets the StateChangeReason field's value. 9459func (s *InstanceGroupStatus) SetStateChangeReason(v *InstanceGroupStateChangeReason) *InstanceGroupStatus { 9460 s.StateChangeReason = v 9461 return s 9462} 9463 9464// SetTimeline sets the Timeline field's value. 9465func (s *InstanceGroupStatus) SetTimeline(v *InstanceGroupTimeline) *InstanceGroupStatus { 9466 s.Timeline = v 9467 return s 9468} 9469 9470// The timeline of the instance group lifecycle. 9471type InstanceGroupTimeline struct { 9472 _ struct{} `type:"structure"` 9473 9474 // The creation date and time of the instance group. 9475 CreationDateTime *time.Time `type:"timestamp"` 9476 9477 // The date and time when the instance group terminated. 9478 EndDateTime *time.Time `type:"timestamp"` 9479 9480 // The date and time when the instance group became ready to perform tasks. 9481 ReadyDateTime *time.Time `type:"timestamp"` 9482} 9483 9484// String returns the string representation 9485func (s InstanceGroupTimeline) String() string { 9486 return awsutil.Prettify(s) 9487} 9488 9489// GoString returns the string representation 9490func (s InstanceGroupTimeline) GoString() string { 9491 return s.String() 9492} 9493 9494// SetCreationDateTime sets the CreationDateTime field's value. 9495func (s *InstanceGroupTimeline) SetCreationDateTime(v time.Time) *InstanceGroupTimeline { 9496 s.CreationDateTime = &v 9497 return s 9498} 9499 9500// SetEndDateTime sets the EndDateTime field's value. 9501func (s *InstanceGroupTimeline) SetEndDateTime(v time.Time) *InstanceGroupTimeline { 9502 s.EndDateTime = &v 9503 return s 9504} 9505 9506// SetReadyDateTime sets the ReadyDateTime field's value. 9507func (s *InstanceGroupTimeline) SetReadyDateTime(v time.Time) *InstanceGroupTimeline { 9508 s.ReadyDateTime = &v 9509 return s 9510} 9511 9512// Custom policy for requesting termination protection or termination of specific 9513// instances when shrinking an instance group. 9514type InstanceResizePolicy struct { 9515 _ struct{} `type:"structure"` 9516 9517 // Decommissioning timeout override for the specific list of instances to be 9518 // terminated. 9519 InstanceTerminationTimeout *int64 `type:"integer"` 9520 9521 // Specific list of instances to be protected when shrinking an instance group. 9522 InstancesToProtect []*string `type:"list"` 9523 9524 // Specific list of instances to be terminated when shrinking an instance group. 9525 InstancesToTerminate []*string `type:"list"` 9526} 9527 9528// String returns the string representation 9529func (s InstanceResizePolicy) String() string { 9530 return awsutil.Prettify(s) 9531} 9532 9533// GoString returns the string representation 9534func (s InstanceResizePolicy) GoString() string { 9535 return s.String() 9536} 9537 9538// SetInstanceTerminationTimeout sets the InstanceTerminationTimeout field's value. 9539func (s *InstanceResizePolicy) SetInstanceTerminationTimeout(v int64) *InstanceResizePolicy { 9540 s.InstanceTerminationTimeout = &v 9541 return s 9542} 9543 9544// SetInstancesToProtect sets the InstancesToProtect field's value. 9545func (s *InstanceResizePolicy) SetInstancesToProtect(v []*string) *InstanceResizePolicy { 9546 s.InstancesToProtect = v 9547 return s 9548} 9549 9550// SetInstancesToTerminate sets the InstancesToTerminate field's value. 9551func (s *InstanceResizePolicy) SetInstancesToTerminate(v []*string) *InstanceResizePolicy { 9552 s.InstancesToTerminate = v 9553 return s 9554} 9555 9556// The details of the status change reason for the instance. 9557type InstanceStateChangeReason struct { 9558 _ struct{} `type:"structure"` 9559 9560 // The programmable code for the state change reason. 9561 Code *string `type:"string" enum:"InstanceStateChangeReasonCode"` 9562 9563 // The status change reason description. 9564 Message *string `type:"string"` 9565} 9566 9567// String returns the string representation 9568func (s InstanceStateChangeReason) String() string { 9569 return awsutil.Prettify(s) 9570} 9571 9572// GoString returns the string representation 9573func (s InstanceStateChangeReason) GoString() string { 9574 return s.String() 9575} 9576 9577// SetCode sets the Code field's value. 9578func (s *InstanceStateChangeReason) SetCode(v string) *InstanceStateChangeReason { 9579 s.Code = &v 9580 return s 9581} 9582 9583// SetMessage sets the Message field's value. 9584func (s *InstanceStateChangeReason) SetMessage(v string) *InstanceStateChangeReason { 9585 s.Message = &v 9586 return s 9587} 9588 9589// The instance status details. 9590type InstanceStatus struct { 9591 _ struct{} `type:"structure"` 9592 9593 // The current state of the instance. 9594 State *string `type:"string" enum:"InstanceState"` 9595 9596 // The details of the status change reason for the instance. 9597 StateChangeReason *InstanceStateChangeReason `type:"structure"` 9598 9599 // The timeline of the instance status over time. 9600 Timeline *InstanceTimeline `type:"structure"` 9601} 9602 9603// String returns the string representation 9604func (s InstanceStatus) String() string { 9605 return awsutil.Prettify(s) 9606} 9607 9608// GoString returns the string representation 9609func (s InstanceStatus) GoString() string { 9610 return s.String() 9611} 9612 9613// SetState sets the State field's value. 9614func (s *InstanceStatus) SetState(v string) *InstanceStatus { 9615 s.State = &v 9616 return s 9617} 9618 9619// SetStateChangeReason sets the StateChangeReason field's value. 9620func (s *InstanceStatus) SetStateChangeReason(v *InstanceStateChangeReason) *InstanceStatus { 9621 s.StateChangeReason = v 9622 return s 9623} 9624 9625// SetTimeline sets the Timeline field's value. 9626func (s *InstanceStatus) SetTimeline(v *InstanceTimeline) *InstanceStatus { 9627 s.Timeline = v 9628 return s 9629} 9630 9631// The timeline of the instance lifecycle. 9632type InstanceTimeline struct { 9633 _ struct{} `type:"structure"` 9634 9635 // The creation date and time of the instance. 9636 CreationDateTime *time.Time `type:"timestamp"` 9637 9638 // The date and time when the instance was terminated. 9639 EndDateTime *time.Time `type:"timestamp"` 9640 9641 // The date and time when the instance was ready to perform tasks. 9642 ReadyDateTime *time.Time `type:"timestamp"` 9643} 9644 9645// String returns the string representation 9646func (s InstanceTimeline) String() string { 9647 return awsutil.Prettify(s) 9648} 9649 9650// GoString returns the string representation 9651func (s InstanceTimeline) GoString() string { 9652 return s.String() 9653} 9654 9655// SetCreationDateTime sets the CreationDateTime field's value. 9656func (s *InstanceTimeline) SetCreationDateTime(v time.Time) *InstanceTimeline { 9657 s.CreationDateTime = &v 9658 return s 9659} 9660 9661// SetEndDateTime sets the EndDateTime field's value. 9662func (s *InstanceTimeline) SetEndDateTime(v time.Time) *InstanceTimeline { 9663 s.EndDateTime = &v 9664 return s 9665} 9666 9667// SetReadyDateTime sets the ReadyDateTime field's value. 9668func (s *InstanceTimeline) SetReadyDateTime(v time.Time) *InstanceTimeline { 9669 s.ReadyDateTime = &v 9670 return s 9671} 9672 9673// An instance type configuration for each instance type in an instance fleet, 9674// which determines the EC2 instances Amazon EMR attempts to provision to fulfill 9675// On-Demand and Spot target capacities. There can be a maximum of five instance 9676// type configurations in a fleet. 9677// 9678// The instance fleet configuration is available only in Amazon EMR versions 9679// 4.8.0 and later, excluding 5.0.x versions. 9680type InstanceTypeConfig struct { 9681 _ struct{} `type:"structure"` 9682 9683 // The bid price for each EC2 Spot Instance type as defined by InstanceType. 9684 // Expressed in USD. If neither BidPrice nor BidPriceAsPercentageOfOnDemandPrice 9685 // is provided, BidPriceAsPercentageOfOnDemandPrice defaults to 100%. 9686 BidPrice *string `type:"string"` 9687 9688 // The bid price, as a percentage of On-Demand price, for each EC2 Spot Instance 9689 // as defined by InstanceType. Expressed as a number (for example, 20 specifies 9690 // 20%). If neither BidPrice nor BidPriceAsPercentageOfOnDemandPrice is provided, 9691 // BidPriceAsPercentageOfOnDemandPrice defaults to 100%. 9692 BidPriceAsPercentageOfOnDemandPrice *float64 `type:"double"` 9693 9694 // A configuration classification that applies when provisioning cluster instances, 9695 // which can include configurations for applications and software that run on 9696 // the cluster. 9697 Configurations []*Configuration `type:"list"` 9698 9699 // The configuration of Amazon Elastic Block Storage (Amazon EBS) attached to 9700 // each instance as defined by InstanceType. 9701 EbsConfiguration *EbsConfiguration `type:"structure"` 9702 9703 // An EC2 instance type, such as m3.xlarge. 9704 // 9705 // InstanceType is a required field 9706 InstanceType *string `min:"1" type:"string" required:"true"` 9707 9708 // The number of units that a provisioned instance of this type provides toward 9709 // fulfilling the target capacities defined in InstanceFleetConfig. This value 9710 // is 1 for a master instance fleet, and must be 1 or greater for core and task 9711 // instance fleets. Defaults to 1 if not specified. 9712 WeightedCapacity *int64 `type:"integer"` 9713} 9714 9715// String returns the string representation 9716func (s InstanceTypeConfig) String() string { 9717 return awsutil.Prettify(s) 9718} 9719 9720// GoString returns the string representation 9721func (s InstanceTypeConfig) GoString() string { 9722 return s.String() 9723} 9724 9725// Validate inspects the fields of the type to determine if they are valid. 9726func (s *InstanceTypeConfig) Validate() error { 9727 invalidParams := request.ErrInvalidParams{Context: "InstanceTypeConfig"} 9728 if s.InstanceType == nil { 9729 invalidParams.Add(request.NewErrParamRequired("InstanceType")) 9730 } 9731 if s.InstanceType != nil && len(*s.InstanceType) < 1 { 9732 invalidParams.Add(request.NewErrParamMinLen("InstanceType", 1)) 9733 } 9734 if s.EbsConfiguration != nil { 9735 if err := s.EbsConfiguration.Validate(); err != nil { 9736 invalidParams.AddNested("EbsConfiguration", err.(request.ErrInvalidParams)) 9737 } 9738 } 9739 9740 if invalidParams.Len() > 0 { 9741 return invalidParams 9742 } 9743 return nil 9744} 9745 9746// SetBidPrice sets the BidPrice field's value. 9747func (s *InstanceTypeConfig) SetBidPrice(v string) *InstanceTypeConfig { 9748 s.BidPrice = &v 9749 return s 9750} 9751 9752// SetBidPriceAsPercentageOfOnDemandPrice sets the BidPriceAsPercentageOfOnDemandPrice field's value. 9753func (s *InstanceTypeConfig) SetBidPriceAsPercentageOfOnDemandPrice(v float64) *InstanceTypeConfig { 9754 s.BidPriceAsPercentageOfOnDemandPrice = &v 9755 return s 9756} 9757 9758// SetConfigurations sets the Configurations field's value. 9759func (s *InstanceTypeConfig) SetConfigurations(v []*Configuration) *InstanceTypeConfig { 9760 s.Configurations = v 9761 return s 9762} 9763 9764// SetEbsConfiguration sets the EbsConfiguration field's value. 9765func (s *InstanceTypeConfig) SetEbsConfiguration(v *EbsConfiguration) *InstanceTypeConfig { 9766 s.EbsConfiguration = v 9767 return s 9768} 9769 9770// SetInstanceType sets the InstanceType field's value. 9771func (s *InstanceTypeConfig) SetInstanceType(v string) *InstanceTypeConfig { 9772 s.InstanceType = &v 9773 return s 9774} 9775 9776// SetWeightedCapacity sets the WeightedCapacity field's value. 9777func (s *InstanceTypeConfig) SetWeightedCapacity(v int64) *InstanceTypeConfig { 9778 s.WeightedCapacity = &v 9779 return s 9780} 9781 9782// The configuration specification for each instance type in an instance fleet. 9783// 9784// The instance fleet configuration is available only in Amazon EMR versions 9785// 4.8.0 and later, excluding 5.0.x versions. 9786type InstanceTypeSpecification struct { 9787 _ struct{} `type:"structure"` 9788 9789 // The bid price for each EC2 Spot Instance type as defined by InstanceType. 9790 // Expressed in USD. 9791 BidPrice *string `type:"string"` 9792 9793 // The bid price, as a percentage of On-Demand price, for each EC2 Spot Instance 9794 // as defined by InstanceType. Expressed as a number (for example, 20 specifies 9795 // 20%). 9796 BidPriceAsPercentageOfOnDemandPrice *float64 `type:"double"` 9797 9798 // A configuration classification that applies when provisioning cluster instances, 9799 // which can include configurations for applications and software bundled with 9800 // Amazon EMR. 9801 Configurations []*Configuration `type:"list"` 9802 9803 // The configuration of Amazon Elastic Block Storage (Amazon EBS) attached to 9804 // each instance as defined by InstanceType. 9805 EbsBlockDevices []*EbsBlockDevice `type:"list"` 9806 9807 // Evaluates to TRUE when the specified InstanceType is EBS-optimized. 9808 EbsOptimized *bool `type:"boolean"` 9809 9810 // The EC2 instance type, for example m3.xlarge. 9811 InstanceType *string `min:"1" type:"string"` 9812 9813 // The number of units that a provisioned instance of this type provides toward 9814 // fulfilling the target capacities defined in InstanceFleetConfig. Capacity 9815 // values represent performance characteristics such as vCPUs, memory, or I/O. 9816 // If not specified, the default value is 1. 9817 WeightedCapacity *int64 `type:"integer"` 9818} 9819 9820// String returns the string representation 9821func (s InstanceTypeSpecification) String() string { 9822 return awsutil.Prettify(s) 9823} 9824 9825// GoString returns the string representation 9826func (s InstanceTypeSpecification) GoString() string { 9827 return s.String() 9828} 9829 9830// SetBidPrice sets the BidPrice field's value. 9831func (s *InstanceTypeSpecification) SetBidPrice(v string) *InstanceTypeSpecification { 9832 s.BidPrice = &v 9833 return s 9834} 9835 9836// SetBidPriceAsPercentageOfOnDemandPrice sets the BidPriceAsPercentageOfOnDemandPrice field's value. 9837func (s *InstanceTypeSpecification) SetBidPriceAsPercentageOfOnDemandPrice(v float64) *InstanceTypeSpecification { 9838 s.BidPriceAsPercentageOfOnDemandPrice = &v 9839 return s 9840} 9841 9842// SetConfigurations sets the Configurations field's value. 9843func (s *InstanceTypeSpecification) SetConfigurations(v []*Configuration) *InstanceTypeSpecification { 9844 s.Configurations = v 9845 return s 9846} 9847 9848// SetEbsBlockDevices sets the EbsBlockDevices field's value. 9849func (s *InstanceTypeSpecification) SetEbsBlockDevices(v []*EbsBlockDevice) *InstanceTypeSpecification { 9850 s.EbsBlockDevices = v 9851 return s 9852} 9853 9854// SetEbsOptimized sets the EbsOptimized field's value. 9855func (s *InstanceTypeSpecification) SetEbsOptimized(v bool) *InstanceTypeSpecification { 9856 s.EbsOptimized = &v 9857 return s 9858} 9859 9860// SetInstanceType sets the InstanceType field's value. 9861func (s *InstanceTypeSpecification) SetInstanceType(v string) *InstanceTypeSpecification { 9862 s.InstanceType = &v 9863 return s 9864} 9865 9866// SetWeightedCapacity sets the WeightedCapacity field's value. 9867func (s *InstanceTypeSpecification) SetWeightedCapacity(v int64) *InstanceTypeSpecification { 9868 s.WeightedCapacity = &v 9869 return s 9870} 9871 9872// Indicates that an error occurred while processing the request and that the 9873// request was not completed. 9874type InternalServerError struct { 9875 _ struct{} `type:"structure"` 9876 RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` 9877 9878 Message_ *string `locationName:"message" type:"string"` 9879} 9880 9881// String returns the string representation 9882func (s InternalServerError) String() string { 9883 return awsutil.Prettify(s) 9884} 9885 9886// GoString returns the string representation 9887func (s InternalServerError) GoString() string { 9888 return s.String() 9889} 9890 9891func newErrorInternalServerError(v protocol.ResponseMetadata) error { 9892 return &InternalServerError{ 9893 RespMetadata: v, 9894 } 9895} 9896 9897// Code returns the exception type name. 9898func (s *InternalServerError) Code() string { 9899 return "InternalServerError" 9900} 9901 9902// Message returns the exception's message. 9903func (s *InternalServerError) Message() string { 9904 if s.Message_ != nil { 9905 return *s.Message_ 9906 } 9907 return "" 9908} 9909 9910// OrigErr always returns nil, satisfies awserr.Error interface. 9911func (s *InternalServerError) OrigErr() error { 9912 return nil 9913} 9914 9915func (s *InternalServerError) Error() string { 9916 return fmt.Sprintf("%s: %s", s.Code(), s.Message()) 9917} 9918 9919// Status code returns the HTTP status code for the request's response error. 9920func (s *InternalServerError) StatusCode() int { 9921 return s.RespMetadata.StatusCode 9922} 9923 9924// RequestID returns the service's response RequestID for request. 9925func (s *InternalServerError) RequestID() string { 9926 return s.RespMetadata.RequestID 9927} 9928 9929// This exception occurs when there is an internal failure in the EMR service. 9930type InternalServerException struct { 9931 _ struct{} `type:"structure"` 9932 RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` 9933 9934 // The message associated with the exception. 9935 Message_ *string `locationName:"Message" type:"string"` 9936} 9937 9938// String returns the string representation 9939func (s InternalServerException) String() string { 9940 return awsutil.Prettify(s) 9941} 9942 9943// GoString returns the string representation 9944func (s InternalServerException) GoString() string { 9945 return s.String() 9946} 9947 9948func newErrorInternalServerException(v protocol.ResponseMetadata) error { 9949 return &InternalServerException{ 9950 RespMetadata: v, 9951 } 9952} 9953 9954// Code returns the exception type name. 9955func (s *InternalServerException) Code() string { 9956 return "InternalServerException" 9957} 9958 9959// Message returns the exception's message. 9960func (s *InternalServerException) Message() string { 9961 if s.Message_ != nil { 9962 return *s.Message_ 9963 } 9964 return "" 9965} 9966 9967// OrigErr always returns nil, satisfies awserr.Error interface. 9968func (s *InternalServerException) OrigErr() error { 9969 return nil 9970} 9971 9972func (s *InternalServerException) Error() string { 9973 return fmt.Sprintf("%s: %s", s.Code(), s.Message()) 9974} 9975 9976// Status code returns the HTTP status code for the request's response error. 9977func (s *InternalServerException) StatusCode() int { 9978 return s.RespMetadata.StatusCode 9979} 9980 9981// RequestID returns the service's response RequestID for request. 9982func (s *InternalServerException) RequestID() string { 9983 return s.RespMetadata.RequestID 9984} 9985 9986// This exception occurs when there is something wrong with user input. 9987type InvalidRequestException struct { 9988 _ struct{} `type:"structure"` 9989 RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` 9990 9991 // The error code associated with the exception. 9992 ErrorCode *string `min:"1" type:"string"` 9993 9994 // The message associated with the exception. 9995 Message_ *string `locationName:"Message" type:"string"` 9996} 9997 9998// String returns the string representation 9999func (s InvalidRequestException) String() string { 10000 return awsutil.Prettify(s) 10001} 10002 10003// GoString returns the string representation 10004func (s InvalidRequestException) GoString() string { 10005 return s.String() 10006} 10007 10008func newErrorInvalidRequestException(v protocol.ResponseMetadata) error { 10009 return &InvalidRequestException{ 10010 RespMetadata: v, 10011 } 10012} 10013 10014// Code returns the exception type name. 10015func (s *InvalidRequestException) Code() string { 10016 return "InvalidRequestException" 10017} 10018 10019// Message returns the exception's message. 10020func (s *InvalidRequestException) Message() string { 10021 if s.Message_ != nil { 10022 return *s.Message_ 10023 } 10024 return "" 10025} 10026 10027// OrigErr always returns nil, satisfies awserr.Error interface. 10028func (s *InvalidRequestException) OrigErr() error { 10029 return nil 10030} 10031 10032func (s *InvalidRequestException) Error() string { 10033 return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) 10034} 10035 10036// Status code returns the HTTP status code for the request's response error. 10037func (s *InvalidRequestException) StatusCode() int { 10038 return s.RespMetadata.StatusCode 10039} 10040 10041// RequestID returns the service's response RequestID for request. 10042func (s *InvalidRequestException) RequestID() string { 10043 return s.RespMetadata.RequestID 10044} 10045 10046// A description of a cluster (job flow). 10047type JobFlowDetail struct { 10048 _ struct{} `type:"structure"` 10049 10050 // Applies only to Amazon EMR AMI versions 3.x and 2.x. For Amazon EMR releases 10051 // 4.0 and later, ReleaseLabel is used. To specify a custom AMI, use CustomAmiID. 10052 AmiVersion *string `type:"string"` 10053 10054 // An IAM role for automatic scaling policies. The default role is EMR_AutoScaling_DefaultRole. 10055 // The IAM role provides a way for the automatic scaling feature to get the 10056 // required permissions it needs to launch and terminate EC2 instances in an 10057 // instance group. 10058 AutoScalingRole *string `type:"string"` 10059 10060 // A list of the bootstrap actions run by the job flow. 10061 BootstrapActions []*BootstrapActionDetail `type:"list"` 10062 10063 // Describes the execution status of the job flow. 10064 // 10065 // ExecutionStatusDetail is a required field 10066 ExecutionStatusDetail *JobFlowExecutionStatusDetail `type:"structure" required:"true"` 10067 10068 // Describes the Amazon EC2 instances of the job flow. 10069 // 10070 // Instances is a required field 10071 Instances *JobFlowInstancesDetail `type:"structure" required:"true"` 10072 10073 // The job flow identifier. 10074 // 10075 // JobFlowId is a required field 10076 JobFlowId *string `type:"string" required:"true"` 10077 10078 // The IAM role that was specified when the job flow was launched. The EC2 instances 10079 // of the job flow assume this role. 10080 JobFlowRole *string `type:"string"` 10081 10082 // The AWS KMS customer master key (CMK) used for encrypting log files. This 10083 // attribute is only available with EMR version 5.30.0 and later, excluding 10084 // EMR 6.0.0. 10085 LogEncryptionKmsKeyId *string `type:"string"` 10086 10087 // The location in Amazon S3 where log files for the job are stored. 10088 LogUri *string `type:"string"` 10089 10090 // The name of the job flow. 10091 // 10092 // Name is a required field 10093 Name *string `type:"string" required:"true"` 10094 10095 // The way that individual Amazon EC2 instances terminate when an automatic 10096 // scale-in activity occurs or an instance group is resized. TERMINATE_AT_INSTANCE_HOUR 10097 // indicates that Amazon EMR terminates nodes at the instance-hour boundary, 10098 // regardless of when the request to terminate the instance was submitted. This 10099 // option is only available with Amazon EMR 5.1.0 and later and is the default 10100 // for clusters created using that version. TERMINATE_AT_TASK_COMPLETION indicates 10101 // that Amazon EMR adds nodes to a deny list and drains tasks from nodes before 10102 // terminating the Amazon EC2 instances, regardless of the instance-hour boundary. 10103 // With either behavior, Amazon EMR removes the least active nodes first and 10104 // blocks instance termination if it could lead to HDFS corruption. TERMINATE_AT_TASK_COMPLETION 10105 // available only in Amazon EMR version 4.1.0 and later, and is the default 10106 // for versions of Amazon EMR earlier than 5.1.0. 10107 ScaleDownBehavior *string `type:"string" enum:"ScaleDownBehavior"` 10108 10109 // The IAM role that is assumed by the Amazon EMR service to access AWS resources 10110 // on your behalf. 10111 ServiceRole *string `type:"string"` 10112 10113 // A list of steps run by the job flow. 10114 Steps []*StepDetail `type:"list"` 10115 10116 // A list of strings set by third-party software when the job flow is launched. 10117 // If you are not using third-party software to manage the job flow, this value 10118 // is empty. 10119 SupportedProducts []*string `type:"list"` 10120 10121 // Indicates whether the cluster is visible to all IAM users of the AWS account 10122 // associated with the cluster. The default value, true, indicates that all 10123 // IAM users in the AWS account can perform cluster actions if they have the 10124 // proper IAM policy permissions. If this value is false, only the IAM user 10125 // that created the cluster can perform actions. This value can be changed on 10126 // a running cluster by using the SetVisibleToAllUsers action. You can override 10127 // the default value of true when you create a cluster by using the VisibleToAllUsers 10128 // parameter of the RunJobFlow action. 10129 VisibleToAllUsers *bool `type:"boolean"` 10130} 10131 10132// String returns the string representation 10133func (s JobFlowDetail) String() string { 10134 return awsutil.Prettify(s) 10135} 10136 10137// GoString returns the string representation 10138func (s JobFlowDetail) GoString() string { 10139 return s.String() 10140} 10141 10142// SetAmiVersion sets the AmiVersion field's value. 10143func (s *JobFlowDetail) SetAmiVersion(v string) *JobFlowDetail { 10144 s.AmiVersion = &v 10145 return s 10146} 10147 10148// SetAutoScalingRole sets the AutoScalingRole field's value. 10149func (s *JobFlowDetail) SetAutoScalingRole(v string) *JobFlowDetail { 10150 s.AutoScalingRole = &v 10151 return s 10152} 10153 10154// SetBootstrapActions sets the BootstrapActions field's value. 10155func (s *JobFlowDetail) SetBootstrapActions(v []*BootstrapActionDetail) *JobFlowDetail { 10156 s.BootstrapActions = v 10157 return s 10158} 10159 10160// SetExecutionStatusDetail sets the ExecutionStatusDetail field's value. 10161func (s *JobFlowDetail) SetExecutionStatusDetail(v *JobFlowExecutionStatusDetail) *JobFlowDetail { 10162 s.ExecutionStatusDetail = v 10163 return s 10164} 10165 10166// SetInstances sets the Instances field's value. 10167func (s *JobFlowDetail) SetInstances(v *JobFlowInstancesDetail) *JobFlowDetail { 10168 s.Instances = v 10169 return s 10170} 10171 10172// SetJobFlowId sets the JobFlowId field's value. 10173func (s *JobFlowDetail) SetJobFlowId(v string) *JobFlowDetail { 10174 s.JobFlowId = &v 10175 return s 10176} 10177 10178// SetJobFlowRole sets the JobFlowRole field's value. 10179func (s *JobFlowDetail) SetJobFlowRole(v string) *JobFlowDetail { 10180 s.JobFlowRole = &v 10181 return s 10182} 10183 10184// SetLogEncryptionKmsKeyId sets the LogEncryptionKmsKeyId field's value. 10185func (s *JobFlowDetail) SetLogEncryptionKmsKeyId(v string) *JobFlowDetail { 10186 s.LogEncryptionKmsKeyId = &v 10187 return s 10188} 10189 10190// SetLogUri sets the LogUri field's value. 10191func (s *JobFlowDetail) SetLogUri(v string) *JobFlowDetail { 10192 s.LogUri = &v 10193 return s 10194} 10195 10196// SetName sets the Name field's value. 10197func (s *JobFlowDetail) SetName(v string) *JobFlowDetail { 10198 s.Name = &v 10199 return s 10200} 10201 10202// SetScaleDownBehavior sets the ScaleDownBehavior field's value. 10203func (s *JobFlowDetail) SetScaleDownBehavior(v string) *JobFlowDetail { 10204 s.ScaleDownBehavior = &v 10205 return s 10206} 10207 10208// SetServiceRole sets the ServiceRole field's value. 10209func (s *JobFlowDetail) SetServiceRole(v string) *JobFlowDetail { 10210 s.ServiceRole = &v 10211 return s 10212} 10213 10214// SetSteps sets the Steps field's value. 10215func (s *JobFlowDetail) SetSteps(v []*StepDetail) *JobFlowDetail { 10216 s.Steps = v 10217 return s 10218} 10219 10220// SetSupportedProducts sets the SupportedProducts field's value. 10221func (s *JobFlowDetail) SetSupportedProducts(v []*string) *JobFlowDetail { 10222 s.SupportedProducts = v 10223 return s 10224} 10225 10226// SetVisibleToAllUsers sets the VisibleToAllUsers field's value. 10227func (s *JobFlowDetail) SetVisibleToAllUsers(v bool) *JobFlowDetail { 10228 s.VisibleToAllUsers = &v 10229 return s 10230} 10231 10232// Describes the status of the cluster (job flow). 10233type JobFlowExecutionStatusDetail struct { 10234 _ struct{} `type:"structure"` 10235 10236 // The creation date and time of the job flow. 10237 // 10238 // CreationDateTime is a required field 10239 CreationDateTime *time.Time `type:"timestamp" required:"true"` 10240 10241 // The completion date and time of the job flow. 10242 EndDateTime *time.Time `type:"timestamp"` 10243 10244 // Description of the job flow last changed state. 10245 LastStateChangeReason *string `type:"string"` 10246 10247 // The date and time when the job flow was ready to start running bootstrap 10248 // actions. 10249 ReadyDateTime *time.Time `type:"timestamp"` 10250 10251 // The start date and time of the job flow. 10252 StartDateTime *time.Time `type:"timestamp"` 10253 10254 // The state of the job flow. 10255 // 10256 // State is a required field 10257 State *string `type:"string" required:"true" enum:"JobFlowExecutionState"` 10258} 10259 10260// String returns the string representation 10261func (s JobFlowExecutionStatusDetail) String() string { 10262 return awsutil.Prettify(s) 10263} 10264 10265// GoString returns the string representation 10266func (s JobFlowExecutionStatusDetail) GoString() string { 10267 return s.String() 10268} 10269 10270// SetCreationDateTime sets the CreationDateTime field's value. 10271func (s *JobFlowExecutionStatusDetail) SetCreationDateTime(v time.Time) *JobFlowExecutionStatusDetail { 10272 s.CreationDateTime = &v 10273 return s 10274} 10275 10276// SetEndDateTime sets the EndDateTime field's value. 10277func (s *JobFlowExecutionStatusDetail) SetEndDateTime(v time.Time) *JobFlowExecutionStatusDetail { 10278 s.EndDateTime = &v 10279 return s 10280} 10281 10282// SetLastStateChangeReason sets the LastStateChangeReason field's value. 10283func (s *JobFlowExecutionStatusDetail) SetLastStateChangeReason(v string) *JobFlowExecutionStatusDetail { 10284 s.LastStateChangeReason = &v 10285 return s 10286} 10287 10288// SetReadyDateTime sets the ReadyDateTime field's value. 10289func (s *JobFlowExecutionStatusDetail) SetReadyDateTime(v time.Time) *JobFlowExecutionStatusDetail { 10290 s.ReadyDateTime = &v 10291 return s 10292} 10293 10294// SetStartDateTime sets the StartDateTime field's value. 10295func (s *JobFlowExecutionStatusDetail) SetStartDateTime(v time.Time) *JobFlowExecutionStatusDetail { 10296 s.StartDateTime = &v 10297 return s 10298} 10299 10300// SetState sets the State field's value. 10301func (s *JobFlowExecutionStatusDetail) SetState(v string) *JobFlowExecutionStatusDetail { 10302 s.State = &v 10303 return s 10304} 10305 10306// A description of the Amazon EC2 instance on which the cluster (job flow) 10307// runs. A valid JobFlowInstancesConfig must contain either InstanceGroups or 10308// InstanceFleets. They cannot be used together. You may also have MasterInstanceType, 10309// SlaveInstanceType, and InstanceCount (all three must be present), but we 10310// don't recommend this configuration. 10311type JobFlowInstancesConfig struct { 10312 _ struct{} `type:"structure"` 10313 10314 // A list of additional Amazon EC2 security group IDs for the master node. 10315 AdditionalMasterSecurityGroups []*string `type:"list"` 10316 10317 // A list of additional Amazon EC2 security group IDs for the core and task 10318 // nodes. 10319 AdditionalSlaveSecurityGroups []*string `type:"list"` 10320 10321 // The name of the EC2 key pair that can be used to connect to the master node 10322 // using SSH as the user called "hadoop." 10323 Ec2KeyName *string `type:"string"` 10324 10325 // Applies to clusters that use the uniform instance group configuration. To 10326 // launch the cluster in Amazon Virtual Private Cloud (Amazon VPC), set this 10327 // parameter to the identifier of the Amazon VPC subnet where you want the cluster 10328 // to launch. If you do not specify this value and your account supports EC2-Classic, 10329 // the cluster launches in EC2-Classic. 10330 Ec2SubnetId *string `type:"string"` 10331 10332 // Applies to clusters that use the instance fleet configuration. When multiple 10333 // EC2 subnet IDs are specified, Amazon EMR evaluates them and launches instances 10334 // in the optimal subnet. 10335 // 10336 // The instance fleet configuration is available only in Amazon EMR versions 10337 // 4.8.0 and later, excluding 5.0.x versions. 10338 Ec2SubnetIds []*string `type:"list"` 10339 10340 // The identifier of the Amazon EC2 security group for the master node. 10341 EmrManagedMasterSecurityGroup *string `type:"string"` 10342 10343 // The identifier of the Amazon EC2 security group for the core and task nodes. 10344 EmrManagedSlaveSecurityGroup *string `type:"string"` 10345 10346 // Applies only to Amazon EMR release versions earlier than 4.0. The Hadoop 10347 // version for the cluster. Valid inputs are "0.18" (no longer maintained), 10348 // "0.20" (no longer maintained), "0.20.205" (no longer maintained), "1.0.3", 10349 // "2.2.0", or "2.4.0". If you do not set this value, the default of 0.18 is 10350 // used, unless the AmiVersion parameter is set in the RunJobFlow call, in which 10351 // case the default version of Hadoop for that AMI version is used. 10352 HadoopVersion *string `type:"string"` 10353 10354 // The number of EC2 instances in the cluster. 10355 InstanceCount *int64 `type:"integer"` 10356 10357 // 10358 // The instance fleet configuration is available only in Amazon EMR versions 10359 // 4.8.0 and later, excluding 5.0.x versions. 10360 // 10361 // Describes the EC2 instances and instance configurations for clusters that 10362 // use the instance fleet configuration. 10363 InstanceFleets []*InstanceFleetConfig `type:"list"` 10364 10365 // Configuration for the instance groups in a cluster. 10366 InstanceGroups []*InstanceGroupConfig `type:"list"` 10367 10368 // Specifies whether the cluster should remain available after completing all 10369 // steps. 10370 KeepJobFlowAliveWhenNoSteps *bool `type:"boolean"` 10371 10372 // The EC2 instance type of the master node. 10373 MasterInstanceType *string `min:"1" type:"string"` 10374 10375 // The Availability Zone in which the cluster runs. 10376 Placement *PlacementType `type:"structure"` 10377 10378 // The identifier of the Amazon EC2 security group for the Amazon EMR service 10379 // to access clusters in VPC private subnets. 10380 ServiceAccessSecurityGroup *string `type:"string"` 10381 10382 // The EC2 instance type of the core and task nodes. 10383 SlaveInstanceType *string `min:"1" type:"string"` 10384 10385 // Specifies whether to lock the cluster to prevent the Amazon EC2 instances 10386 // from being terminated by API call, user intervention, or in the event of 10387 // a job-flow error. 10388 TerminationProtected *bool `type:"boolean"` 10389} 10390 10391// String returns the string representation 10392func (s JobFlowInstancesConfig) String() string { 10393 return awsutil.Prettify(s) 10394} 10395 10396// GoString returns the string representation 10397func (s JobFlowInstancesConfig) GoString() string { 10398 return s.String() 10399} 10400 10401// Validate inspects the fields of the type to determine if they are valid. 10402func (s *JobFlowInstancesConfig) Validate() error { 10403 invalidParams := request.ErrInvalidParams{Context: "JobFlowInstancesConfig"} 10404 if s.MasterInstanceType != nil && len(*s.MasterInstanceType) < 1 { 10405 invalidParams.Add(request.NewErrParamMinLen("MasterInstanceType", 1)) 10406 } 10407 if s.SlaveInstanceType != nil && len(*s.SlaveInstanceType) < 1 { 10408 invalidParams.Add(request.NewErrParamMinLen("SlaveInstanceType", 1)) 10409 } 10410 if s.InstanceFleets != nil { 10411 for i, v := range s.InstanceFleets { 10412 if v == nil { 10413 continue 10414 } 10415 if err := v.Validate(); err != nil { 10416 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "InstanceFleets", i), err.(request.ErrInvalidParams)) 10417 } 10418 } 10419 } 10420 if s.InstanceGroups != nil { 10421 for i, v := range s.InstanceGroups { 10422 if v == nil { 10423 continue 10424 } 10425 if err := v.Validate(); err != nil { 10426 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "InstanceGroups", i), err.(request.ErrInvalidParams)) 10427 } 10428 } 10429 } 10430 10431 if invalidParams.Len() > 0 { 10432 return invalidParams 10433 } 10434 return nil 10435} 10436 10437// SetAdditionalMasterSecurityGroups sets the AdditionalMasterSecurityGroups field's value. 10438func (s *JobFlowInstancesConfig) SetAdditionalMasterSecurityGroups(v []*string) *JobFlowInstancesConfig { 10439 s.AdditionalMasterSecurityGroups = v 10440 return s 10441} 10442 10443// SetAdditionalSlaveSecurityGroups sets the AdditionalSlaveSecurityGroups field's value. 10444func (s *JobFlowInstancesConfig) SetAdditionalSlaveSecurityGroups(v []*string) *JobFlowInstancesConfig { 10445 s.AdditionalSlaveSecurityGroups = v 10446 return s 10447} 10448 10449// SetEc2KeyName sets the Ec2KeyName field's value. 10450func (s *JobFlowInstancesConfig) SetEc2KeyName(v string) *JobFlowInstancesConfig { 10451 s.Ec2KeyName = &v 10452 return s 10453} 10454 10455// SetEc2SubnetId sets the Ec2SubnetId field's value. 10456func (s *JobFlowInstancesConfig) SetEc2SubnetId(v string) *JobFlowInstancesConfig { 10457 s.Ec2SubnetId = &v 10458 return s 10459} 10460 10461// SetEc2SubnetIds sets the Ec2SubnetIds field's value. 10462func (s *JobFlowInstancesConfig) SetEc2SubnetIds(v []*string) *JobFlowInstancesConfig { 10463 s.Ec2SubnetIds = v 10464 return s 10465} 10466 10467// SetEmrManagedMasterSecurityGroup sets the EmrManagedMasterSecurityGroup field's value. 10468func (s *JobFlowInstancesConfig) SetEmrManagedMasterSecurityGroup(v string) *JobFlowInstancesConfig { 10469 s.EmrManagedMasterSecurityGroup = &v 10470 return s 10471} 10472 10473// SetEmrManagedSlaveSecurityGroup sets the EmrManagedSlaveSecurityGroup field's value. 10474func (s *JobFlowInstancesConfig) SetEmrManagedSlaveSecurityGroup(v string) *JobFlowInstancesConfig { 10475 s.EmrManagedSlaveSecurityGroup = &v 10476 return s 10477} 10478 10479// SetHadoopVersion sets the HadoopVersion field's value. 10480func (s *JobFlowInstancesConfig) SetHadoopVersion(v string) *JobFlowInstancesConfig { 10481 s.HadoopVersion = &v 10482 return s 10483} 10484 10485// SetInstanceCount sets the InstanceCount field's value. 10486func (s *JobFlowInstancesConfig) SetInstanceCount(v int64) *JobFlowInstancesConfig { 10487 s.InstanceCount = &v 10488 return s 10489} 10490 10491// SetInstanceFleets sets the InstanceFleets field's value. 10492func (s *JobFlowInstancesConfig) SetInstanceFleets(v []*InstanceFleetConfig) *JobFlowInstancesConfig { 10493 s.InstanceFleets = v 10494 return s 10495} 10496 10497// SetInstanceGroups sets the InstanceGroups field's value. 10498func (s *JobFlowInstancesConfig) SetInstanceGroups(v []*InstanceGroupConfig) *JobFlowInstancesConfig { 10499 s.InstanceGroups = v 10500 return s 10501} 10502 10503// SetKeepJobFlowAliveWhenNoSteps sets the KeepJobFlowAliveWhenNoSteps field's value. 10504func (s *JobFlowInstancesConfig) SetKeepJobFlowAliveWhenNoSteps(v bool) *JobFlowInstancesConfig { 10505 s.KeepJobFlowAliveWhenNoSteps = &v 10506 return s 10507} 10508 10509// SetMasterInstanceType sets the MasterInstanceType field's value. 10510func (s *JobFlowInstancesConfig) SetMasterInstanceType(v string) *JobFlowInstancesConfig { 10511 s.MasterInstanceType = &v 10512 return s 10513} 10514 10515// SetPlacement sets the Placement field's value. 10516func (s *JobFlowInstancesConfig) SetPlacement(v *PlacementType) *JobFlowInstancesConfig { 10517 s.Placement = v 10518 return s 10519} 10520 10521// SetServiceAccessSecurityGroup sets the ServiceAccessSecurityGroup field's value. 10522func (s *JobFlowInstancesConfig) SetServiceAccessSecurityGroup(v string) *JobFlowInstancesConfig { 10523 s.ServiceAccessSecurityGroup = &v 10524 return s 10525} 10526 10527// SetSlaveInstanceType sets the SlaveInstanceType field's value. 10528func (s *JobFlowInstancesConfig) SetSlaveInstanceType(v string) *JobFlowInstancesConfig { 10529 s.SlaveInstanceType = &v 10530 return s 10531} 10532 10533// SetTerminationProtected sets the TerminationProtected field's value. 10534func (s *JobFlowInstancesConfig) SetTerminationProtected(v bool) *JobFlowInstancesConfig { 10535 s.TerminationProtected = &v 10536 return s 10537} 10538 10539// Specify the type of Amazon EC2 instances that the cluster (job flow) runs 10540// on. 10541type JobFlowInstancesDetail struct { 10542 _ struct{} `type:"structure"` 10543 10544 // The name of an Amazon EC2 key pair that can be used to connect to the master 10545 // node using SSH. 10546 Ec2KeyName *string `type:"string"` 10547 10548 // For clusters launched within Amazon Virtual Private Cloud, this is the identifier 10549 // of the subnet where the cluster was launched. 10550 Ec2SubnetId *string `type:"string"` 10551 10552 // The Hadoop version for the cluster. 10553 HadoopVersion *string `type:"string"` 10554 10555 // The number of Amazon EC2 instances in the cluster. If the value is 1, the 10556 // same instance serves as both the master and core and task node. If the value 10557 // is greater than 1, one instance is the master node and all others are core 10558 // and task nodes. 10559 // 10560 // InstanceCount is a required field 10561 InstanceCount *int64 `type:"integer" required:"true"` 10562 10563 // Details about the instance groups in a cluster. 10564 InstanceGroups []*InstanceGroupDetail `type:"list"` 10565 10566 // Specifies whether the cluster should remain available after completing all 10567 // steps. 10568 KeepJobFlowAliveWhenNoSteps *bool `type:"boolean"` 10569 10570 // The Amazon EC2 instance identifier of the master node. 10571 MasterInstanceId *string `type:"string"` 10572 10573 // The Amazon EC2 master node instance type. 10574 // 10575 // MasterInstanceType is a required field 10576 MasterInstanceType *string `min:"1" type:"string" required:"true"` 10577 10578 // The DNS name of the master node. If the cluster is on a private subnet, this 10579 // is the private DNS name. On a public subnet, this is the public DNS name. 10580 MasterPublicDnsName *string `type:"string"` 10581 10582 // An approximation of the cost of the cluster, represented in m1.small/hours. 10583 // This value is increased one time for every hour that an m1.small instance 10584 // runs. Larger instances are weighted more heavily, so an Amazon EC2 instance 10585 // that is roughly four times more expensive would result in the normalized 10586 // instance hours being increased incrementally four times. This result is only 10587 // an approximation and does not reflect the actual billing rate. 10588 NormalizedInstanceHours *int64 `type:"integer"` 10589 10590 // The Amazon EC2 Availability Zone for the cluster. 10591 Placement *PlacementType `type:"structure"` 10592 10593 // The Amazon EC2 core and task node instance type. 10594 // 10595 // SlaveInstanceType is a required field 10596 SlaveInstanceType *string `min:"1" type:"string" required:"true"` 10597 10598 // Specifies whether the Amazon EC2 instances in the cluster are protected from 10599 // termination by API calls, user intervention, or in the event of a job-flow 10600 // error. 10601 TerminationProtected *bool `type:"boolean"` 10602} 10603 10604// String returns the string representation 10605func (s JobFlowInstancesDetail) String() string { 10606 return awsutil.Prettify(s) 10607} 10608 10609// GoString returns the string representation 10610func (s JobFlowInstancesDetail) GoString() string { 10611 return s.String() 10612} 10613 10614// SetEc2KeyName sets the Ec2KeyName field's value. 10615func (s *JobFlowInstancesDetail) SetEc2KeyName(v string) *JobFlowInstancesDetail { 10616 s.Ec2KeyName = &v 10617 return s 10618} 10619 10620// SetEc2SubnetId sets the Ec2SubnetId field's value. 10621func (s *JobFlowInstancesDetail) SetEc2SubnetId(v string) *JobFlowInstancesDetail { 10622 s.Ec2SubnetId = &v 10623 return s 10624} 10625 10626// SetHadoopVersion sets the HadoopVersion field's value. 10627func (s *JobFlowInstancesDetail) SetHadoopVersion(v string) *JobFlowInstancesDetail { 10628 s.HadoopVersion = &v 10629 return s 10630} 10631 10632// SetInstanceCount sets the InstanceCount field's value. 10633func (s *JobFlowInstancesDetail) SetInstanceCount(v int64) *JobFlowInstancesDetail { 10634 s.InstanceCount = &v 10635 return s 10636} 10637 10638// SetInstanceGroups sets the InstanceGroups field's value. 10639func (s *JobFlowInstancesDetail) SetInstanceGroups(v []*InstanceGroupDetail) *JobFlowInstancesDetail { 10640 s.InstanceGroups = v 10641 return s 10642} 10643 10644// SetKeepJobFlowAliveWhenNoSteps sets the KeepJobFlowAliveWhenNoSteps field's value. 10645func (s *JobFlowInstancesDetail) SetKeepJobFlowAliveWhenNoSteps(v bool) *JobFlowInstancesDetail { 10646 s.KeepJobFlowAliveWhenNoSteps = &v 10647 return s 10648} 10649 10650// SetMasterInstanceId sets the MasterInstanceId field's value. 10651func (s *JobFlowInstancesDetail) SetMasterInstanceId(v string) *JobFlowInstancesDetail { 10652 s.MasterInstanceId = &v 10653 return s 10654} 10655 10656// SetMasterInstanceType sets the MasterInstanceType field's value. 10657func (s *JobFlowInstancesDetail) SetMasterInstanceType(v string) *JobFlowInstancesDetail { 10658 s.MasterInstanceType = &v 10659 return s 10660} 10661 10662// SetMasterPublicDnsName sets the MasterPublicDnsName field's value. 10663func (s *JobFlowInstancesDetail) SetMasterPublicDnsName(v string) *JobFlowInstancesDetail { 10664 s.MasterPublicDnsName = &v 10665 return s 10666} 10667 10668// SetNormalizedInstanceHours sets the NormalizedInstanceHours field's value. 10669func (s *JobFlowInstancesDetail) SetNormalizedInstanceHours(v int64) *JobFlowInstancesDetail { 10670 s.NormalizedInstanceHours = &v 10671 return s 10672} 10673 10674// SetPlacement sets the Placement field's value. 10675func (s *JobFlowInstancesDetail) SetPlacement(v *PlacementType) *JobFlowInstancesDetail { 10676 s.Placement = v 10677 return s 10678} 10679 10680// SetSlaveInstanceType sets the SlaveInstanceType field's value. 10681func (s *JobFlowInstancesDetail) SetSlaveInstanceType(v string) *JobFlowInstancesDetail { 10682 s.SlaveInstanceType = &v 10683 return s 10684} 10685 10686// SetTerminationProtected sets the TerminationProtected field's value. 10687func (s *JobFlowInstancesDetail) SetTerminationProtected(v bool) *JobFlowInstancesDetail { 10688 s.TerminationProtected = &v 10689 return s 10690} 10691 10692// Attributes for Kerberos configuration when Kerberos authentication is enabled 10693// using a security configuration. For more information see Use Kerberos Authentication 10694// (https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-kerberos.html) 10695// in the Amazon EMR Management Guide. 10696type KerberosAttributes struct { 10697 _ struct{} `type:"structure"` 10698 10699 // The Active Directory password for ADDomainJoinUser. 10700 ADDomainJoinPassword *string `type:"string"` 10701 10702 // Required only when establishing a cross-realm trust with an Active Directory 10703 // domain. A user with sufficient privileges to join resources to the domain. 10704 ADDomainJoinUser *string `type:"string"` 10705 10706 // Required only when establishing a cross-realm trust with a KDC in a different 10707 // realm. The cross-realm principal password, which must be identical across 10708 // realms. 10709 CrossRealmTrustPrincipalPassword *string `type:"string"` 10710 10711 // The password used within the cluster for the kadmin service on the cluster-dedicated 10712 // KDC, which maintains Kerberos principals, password policies, and keytabs 10713 // for the cluster. 10714 // 10715 // KdcAdminPassword is a required field 10716 KdcAdminPassword *string `type:"string" required:"true"` 10717 10718 // The name of the Kerberos realm to which all nodes in a cluster belong. For 10719 // example, EC2.INTERNAL. 10720 // 10721 // Realm is a required field 10722 Realm *string `type:"string" required:"true"` 10723} 10724 10725// String returns the string representation 10726func (s KerberosAttributes) String() string { 10727 return awsutil.Prettify(s) 10728} 10729 10730// GoString returns the string representation 10731func (s KerberosAttributes) GoString() string { 10732 return s.String() 10733} 10734 10735// Validate inspects the fields of the type to determine if they are valid. 10736func (s *KerberosAttributes) Validate() error { 10737 invalidParams := request.ErrInvalidParams{Context: "KerberosAttributes"} 10738 if s.KdcAdminPassword == nil { 10739 invalidParams.Add(request.NewErrParamRequired("KdcAdminPassword")) 10740 } 10741 if s.Realm == nil { 10742 invalidParams.Add(request.NewErrParamRequired("Realm")) 10743 } 10744 10745 if invalidParams.Len() > 0 { 10746 return invalidParams 10747 } 10748 return nil 10749} 10750 10751// SetADDomainJoinPassword sets the ADDomainJoinPassword field's value. 10752func (s *KerberosAttributes) SetADDomainJoinPassword(v string) *KerberosAttributes { 10753 s.ADDomainJoinPassword = &v 10754 return s 10755} 10756 10757// SetADDomainJoinUser sets the ADDomainJoinUser field's value. 10758func (s *KerberosAttributes) SetADDomainJoinUser(v string) *KerberosAttributes { 10759 s.ADDomainJoinUser = &v 10760 return s 10761} 10762 10763// SetCrossRealmTrustPrincipalPassword sets the CrossRealmTrustPrincipalPassword field's value. 10764func (s *KerberosAttributes) SetCrossRealmTrustPrincipalPassword(v string) *KerberosAttributes { 10765 s.CrossRealmTrustPrincipalPassword = &v 10766 return s 10767} 10768 10769// SetKdcAdminPassword sets the KdcAdminPassword field's value. 10770func (s *KerberosAttributes) SetKdcAdminPassword(v string) *KerberosAttributes { 10771 s.KdcAdminPassword = &v 10772 return s 10773} 10774 10775// SetRealm sets the Realm field's value. 10776func (s *KerberosAttributes) SetRealm(v string) *KerberosAttributes { 10777 s.Realm = &v 10778 return s 10779} 10780 10781// A key-value pair. 10782type KeyValue struct { 10783 _ struct{} `type:"structure"` 10784 10785 // The unique identifier of a key-value pair. 10786 Key *string `type:"string"` 10787 10788 // The value part of the identified key. 10789 Value *string `type:"string"` 10790} 10791 10792// String returns the string representation 10793func (s KeyValue) String() string { 10794 return awsutil.Prettify(s) 10795} 10796 10797// GoString returns the string representation 10798func (s KeyValue) GoString() string { 10799 return s.String() 10800} 10801 10802// SetKey sets the Key field's value. 10803func (s *KeyValue) SetKey(v string) *KeyValue { 10804 s.Key = &v 10805 return s 10806} 10807 10808// SetValue sets the Value field's value. 10809func (s *KeyValue) SetValue(v string) *KeyValue { 10810 s.Value = &v 10811 return s 10812} 10813 10814// This input determines which bootstrap actions to retrieve. 10815type ListBootstrapActionsInput struct { 10816 _ struct{} `type:"structure"` 10817 10818 // The cluster identifier for the bootstrap actions to list. 10819 // 10820 // ClusterId is a required field 10821 ClusterId *string `type:"string" required:"true"` 10822 10823 // The pagination token that indicates the next set of results to retrieve. 10824 Marker *string `type:"string"` 10825} 10826 10827// String returns the string representation 10828func (s ListBootstrapActionsInput) String() string { 10829 return awsutil.Prettify(s) 10830} 10831 10832// GoString returns the string representation 10833func (s ListBootstrapActionsInput) GoString() string { 10834 return s.String() 10835} 10836 10837// Validate inspects the fields of the type to determine if they are valid. 10838func (s *ListBootstrapActionsInput) Validate() error { 10839 invalidParams := request.ErrInvalidParams{Context: "ListBootstrapActionsInput"} 10840 if s.ClusterId == nil { 10841 invalidParams.Add(request.NewErrParamRequired("ClusterId")) 10842 } 10843 10844 if invalidParams.Len() > 0 { 10845 return invalidParams 10846 } 10847 return nil 10848} 10849 10850// SetClusterId sets the ClusterId field's value. 10851func (s *ListBootstrapActionsInput) SetClusterId(v string) *ListBootstrapActionsInput { 10852 s.ClusterId = &v 10853 return s 10854} 10855 10856// SetMarker sets the Marker field's value. 10857func (s *ListBootstrapActionsInput) SetMarker(v string) *ListBootstrapActionsInput { 10858 s.Marker = &v 10859 return s 10860} 10861 10862// This output contains the bootstrap actions detail. 10863type ListBootstrapActionsOutput struct { 10864 _ struct{} `type:"structure"` 10865 10866 // The bootstrap actions associated with the cluster. 10867 BootstrapActions []*Command `type:"list"` 10868 10869 // The pagination token that indicates the next set of results to retrieve. 10870 Marker *string `type:"string"` 10871} 10872 10873// String returns the string representation 10874func (s ListBootstrapActionsOutput) String() string { 10875 return awsutil.Prettify(s) 10876} 10877 10878// GoString returns the string representation 10879func (s ListBootstrapActionsOutput) GoString() string { 10880 return s.String() 10881} 10882 10883// SetBootstrapActions sets the BootstrapActions field's value. 10884func (s *ListBootstrapActionsOutput) SetBootstrapActions(v []*Command) *ListBootstrapActionsOutput { 10885 s.BootstrapActions = v 10886 return s 10887} 10888 10889// SetMarker sets the Marker field's value. 10890func (s *ListBootstrapActionsOutput) SetMarker(v string) *ListBootstrapActionsOutput { 10891 s.Marker = &v 10892 return s 10893} 10894 10895// This input determines how the ListClusters action filters the list of clusters 10896// that it returns. 10897type ListClustersInput struct { 10898 _ struct{} `type:"structure"` 10899 10900 // The cluster state filters to apply when listing clusters. 10901 ClusterStates []*string `type:"list"` 10902 10903 // The creation date and time beginning value filter for listing clusters. 10904 CreatedAfter *time.Time `type:"timestamp"` 10905 10906 // The creation date and time end value filter for listing clusters. 10907 CreatedBefore *time.Time `type:"timestamp"` 10908 10909 // The pagination token that indicates the next set of results to retrieve. 10910 Marker *string `type:"string"` 10911} 10912 10913// String returns the string representation 10914func (s ListClustersInput) String() string { 10915 return awsutil.Prettify(s) 10916} 10917 10918// GoString returns the string representation 10919func (s ListClustersInput) GoString() string { 10920 return s.String() 10921} 10922 10923// SetClusterStates sets the ClusterStates field's value. 10924func (s *ListClustersInput) SetClusterStates(v []*string) *ListClustersInput { 10925 s.ClusterStates = v 10926 return s 10927} 10928 10929// SetCreatedAfter sets the CreatedAfter field's value. 10930func (s *ListClustersInput) SetCreatedAfter(v time.Time) *ListClustersInput { 10931 s.CreatedAfter = &v 10932 return s 10933} 10934 10935// SetCreatedBefore sets the CreatedBefore field's value. 10936func (s *ListClustersInput) SetCreatedBefore(v time.Time) *ListClustersInput { 10937 s.CreatedBefore = &v 10938 return s 10939} 10940 10941// SetMarker sets the Marker field's value. 10942func (s *ListClustersInput) SetMarker(v string) *ListClustersInput { 10943 s.Marker = &v 10944 return s 10945} 10946 10947// This contains a ClusterSummaryList with the cluster details; for example, 10948// the cluster IDs, names, and status. 10949type ListClustersOutput struct { 10950 _ struct{} `type:"structure"` 10951 10952 // The list of clusters for the account based on the given filters. 10953 Clusters []*ClusterSummary `type:"list"` 10954 10955 // The pagination token that indicates the next set of results to retrieve. 10956 Marker *string `type:"string"` 10957} 10958 10959// String returns the string representation 10960func (s ListClustersOutput) String() string { 10961 return awsutil.Prettify(s) 10962} 10963 10964// GoString returns the string representation 10965func (s ListClustersOutput) GoString() string { 10966 return s.String() 10967} 10968 10969// SetClusters sets the Clusters field's value. 10970func (s *ListClustersOutput) SetClusters(v []*ClusterSummary) *ListClustersOutput { 10971 s.Clusters = v 10972 return s 10973} 10974 10975// SetMarker sets the Marker field's value. 10976func (s *ListClustersOutput) SetMarker(v string) *ListClustersOutput { 10977 s.Marker = &v 10978 return s 10979} 10980 10981type ListInstanceFleetsInput struct { 10982 _ struct{} `type:"structure"` 10983 10984 // The unique identifier of the cluster. 10985 // 10986 // ClusterId is a required field 10987 ClusterId *string `type:"string" required:"true"` 10988 10989 // The pagination token that indicates the next set of results to retrieve. 10990 Marker *string `type:"string"` 10991} 10992 10993// String returns the string representation 10994func (s ListInstanceFleetsInput) String() string { 10995 return awsutil.Prettify(s) 10996} 10997 10998// GoString returns the string representation 10999func (s ListInstanceFleetsInput) GoString() string { 11000 return s.String() 11001} 11002 11003// Validate inspects the fields of the type to determine if they are valid. 11004func (s *ListInstanceFleetsInput) Validate() error { 11005 invalidParams := request.ErrInvalidParams{Context: "ListInstanceFleetsInput"} 11006 if s.ClusterId == nil { 11007 invalidParams.Add(request.NewErrParamRequired("ClusterId")) 11008 } 11009 11010 if invalidParams.Len() > 0 { 11011 return invalidParams 11012 } 11013 return nil 11014} 11015 11016// SetClusterId sets the ClusterId field's value. 11017func (s *ListInstanceFleetsInput) SetClusterId(v string) *ListInstanceFleetsInput { 11018 s.ClusterId = &v 11019 return s 11020} 11021 11022// SetMarker sets the Marker field's value. 11023func (s *ListInstanceFleetsInput) SetMarker(v string) *ListInstanceFleetsInput { 11024 s.Marker = &v 11025 return s 11026} 11027 11028type ListInstanceFleetsOutput struct { 11029 _ struct{} `type:"structure"` 11030 11031 // The list of instance fleets for the cluster and given filters. 11032 InstanceFleets []*InstanceFleet `type:"list"` 11033 11034 // The pagination token that indicates the next set of results to retrieve. 11035 Marker *string `type:"string"` 11036} 11037 11038// String returns the string representation 11039func (s ListInstanceFleetsOutput) String() string { 11040 return awsutil.Prettify(s) 11041} 11042 11043// GoString returns the string representation 11044func (s ListInstanceFleetsOutput) GoString() string { 11045 return s.String() 11046} 11047 11048// SetInstanceFleets sets the InstanceFleets field's value. 11049func (s *ListInstanceFleetsOutput) SetInstanceFleets(v []*InstanceFleet) *ListInstanceFleetsOutput { 11050 s.InstanceFleets = v 11051 return s 11052} 11053 11054// SetMarker sets the Marker field's value. 11055func (s *ListInstanceFleetsOutput) SetMarker(v string) *ListInstanceFleetsOutput { 11056 s.Marker = &v 11057 return s 11058} 11059 11060// This input determines which instance groups to retrieve. 11061type ListInstanceGroupsInput struct { 11062 _ struct{} `type:"structure"` 11063 11064 // The identifier of the cluster for which to list the instance groups. 11065 // 11066 // ClusterId is a required field 11067 ClusterId *string `type:"string" required:"true"` 11068 11069 // The pagination token that indicates the next set of results to retrieve. 11070 Marker *string `type:"string"` 11071} 11072 11073// String returns the string representation 11074func (s ListInstanceGroupsInput) String() string { 11075 return awsutil.Prettify(s) 11076} 11077 11078// GoString returns the string representation 11079func (s ListInstanceGroupsInput) GoString() string { 11080 return s.String() 11081} 11082 11083// Validate inspects the fields of the type to determine if they are valid. 11084func (s *ListInstanceGroupsInput) Validate() error { 11085 invalidParams := request.ErrInvalidParams{Context: "ListInstanceGroupsInput"} 11086 if s.ClusterId == nil { 11087 invalidParams.Add(request.NewErrParamRequired("ClusterId")) 11088 } 11089 11090 if invalidParams.Len() > 0 { 11091 return invalidParams 11092 } 11093 return nil 11094} 11095 11096// SetClusterId sets the ClusterId field's value. 11097func (s *ListInstanceGroupsInput) SetClusterId(v string) *ListInstanceGroupsInput { 11098 s.ClusterId = &v 11099 return s 11100} 11101 11102// SetMarker sets the Marker field's value. 11103func (s *ListInstanceGroupsInput) SetMarker(v string) *ListInstanceGroupsInput { 11104 s.Marker = &v 11105 return s 11106} 11107 11108// This input determines which instance groups to retrieve. 11109type ListInstanceGroupsOutput struct { 11110 _ struct{} `type:"structure"` 11111 11112 // The list of instance groups for the cluster and given filters. 11113 InstanceGroups []*InstanceGroup `type:"list"` 11114 11115 // The pagination token that indicates the next set of results to retrieve. 11116 Marker *string `type:"string"` 11117} 11118 11119// String returns the string representation 11120func (s ListInstanceGroupsOutput) String() string { 11121 return awsutil.Prettify(s) 11122} 11123 11124// GoString returns the string representation 11125func (s ListInstanceGroupsOutput) GoString() string { 11126 return s.String() 11127} 11128 11129// SetInstanceGroups sets the InstanceGroups field's value. 11130func (s *ListInstanceGroupsOutput) SetInstanceGroups(v []*InstanceGroup) *ListInstanceGroupsOutput { 11131 s.InstanceGroups = v 11132 return s 11133} 11134 11135// SetMarker sets the Marker field's value. 11136func (s *ListInstanceGroupsOutput) SetMarker(v string) *ListInstanceGroupsOutput { 11137 s.Marker = &v 11138 return s 11139} 11140 11141// This input determines which instances to list. 11142type ListInstancesInput struct { 11143 _ struct{} `type:"structure"` 11144 11145 // The identifier of the cluster for which to list the instances. 11146 // 11147 // ClusterId is a required field 11148 ClusterId *string `type:"string" required:"true"` 11149 11150 // The unique identifier of the instance fleet. 11151 InstanceFleetId *string `type:"string"` 11152 11153 // The node type of the instance fleet. For example MASTER, CORE, or TASK. 11154 InstanceFleetType *string `type:"string" enum:"InstanceFleetType"` 11155 11156 // The identifier of the instance group for which to list the instances. 11157 InstanceGroupId *string `type:"string"` 11158 11159 // The type of instance group for which to list the instances. 11160 InstanceGroupTypes []*string `type:"list"` 11161 11162 // A list of instance states that will filter the instances returned with this 11163 // request. 11164 InstanceStates []*string `type:"list"` 11165 11166 // The pagination token that indicates the next set of results to retrieve. 11167 Marker *string `type:"string"` 11168} 11169 11170// String returns the string representation 11171func (s ListInstancesInput) String() string { 11172 return awsutil.Prettify(s) 11173} 11174 11175// GoString returns the string representation 11176func (s ListInstancesInput) GoString() string { 11177 return s.String() 11178} 11179 11180// Validate inspects the fields of the type to determine if they are valid. 11181func (s *ListInstancesInput) Validate() error { 11182 invalidParams := request.ErrInvalidParams{Context: "ListInstancesInput"} 11183 if s.ClusterId == nil { 11184 invalidParams.Add(request.NewErrParamRequired("ClusterId")) 11185 } 11186 11187 if invalidParams.Len() > 0 { 11188 return invalidParams 11189 } 11190 return nil 11191} 11192 11193// SetClusterId sets the ClusterId field's value. 11194func (s *ListInstancesInput) SetClusterId(v string) *ListInstancesInput { 11195 s.ClusterId = &v 11196 return s 11197} 11198 11199// SetInstanceFleetId sets the InstanceFleetId field's value. 11200func (s *ListInstancesInput) SetInstanceFleetId(v string) *ListInstancesInput { 11201 s.InstanceFleetId = &v 11202 return s 11203} 11204 11205// SetInstanceFleetType sets the InstanceFleetType field's value. 11206func (s *ListInstancesInput) SetInstanceFleetType(v string) *ListInstancesInput { 11207 s.InstanceFleetType = &v 11208 return s 11209} 11210 11211// SetInstanceGroupId sets the InstanceGroupId field's value. 11212func (s *ListInstancesInput) SetInstanceGroupId(v string) *ListInstancesInput { 11213 s.InstanceGroupId = &v 11214 return s 11215} 11216 11217// SetInstanceGroupTypes sets the InstanceGroupTypes field's value. 11218func (s *ListInstancesInput) SetInstanceGroupTypes(v []*string) *ListInstancesInput { 11219 s.InstanceGroupTypes = v 11220 return s 11221} 11222 11223// SetInstanceStates sets the InstanceStates field's value. 11224func (s *ListInstancesInput) SetInstanceStates(v []*string) *ListInstancesInput { 11225 s.InstanceStates = v 11226 return s 11227} 11228 11229// SetMarker sets the Marker field's value. 11230func (s *ListInstancesInput) SetMarker(v string) *ListInstancesInput { 11231 s.Marker = &v 11232 return s 11233} 11234 11235// This output contains the list of instances. 11236type ListInstancesOutput struct { 11237 _ struct{} `type:"structure"` 11238 11239 // The list of instances for the cluster and given filters. 11240 Instances []*Instance `type:"list"` 11241 11242 // The pagination token that indicates the next set of results to retrieve. 11243 Marker *string `type:"string"` 11244} 11245 11246// String returns the string representation 11247func (s ListInstancesOutput) String() string { 11248 return awsutil.Prettify(s) 11249} 11250 11251// GoString returns the string representation 11252func (s ListInstancesOutput) GoString() string { 11253 return s.String() 11254} 11255 11256// SetInstances sets the Instances field's value. 11257func (s *ListInstancesOutput) SetInstances(v []*Instance) *ListInstancesOutput { 11258 s.Instances = v 11259 return s 11260} 11261 11262// SetMarker sets the Marker field's value. 11263func (s *ListInstancesOutput) SetMarker(v string) *ListInstancesOutput { 11264 s.Marker = &v 11265 return s 11266} 11267 11268type ListNotebookExecutionsInput struct { 11269 _ struct{} `type:"structure"` 11270 11271 // The unique ID of the editor associated with the notebook execution. 11272 EditorId *string `type:"string"` 11273 11274 // The beginning of time range filter for listing notebook executions. The default 11275 // is the timestamp of 30 days ago. 11276 From *time.Time `type:"timestamp"` 11277 11278 // The pagination token, returned by a previous ListNotebookExecutions call, 11279 // that indicates the start of the list for this ListNotebookExecutions call. 11280 Marker *string `type:"string"` 11281 11282 // The status filter for listing notebook executions. 11283 // 11284 // * START_PENDING indicates that the cluster has received the execution 11285 // request but execution has not begun. 11286 // 11287 // * STARTING indicates that the execution is starting on the cluster. 11288 // 11289 // * RUNNING indicates that the execution is being processed by the cluster. 11290 // 11291 // * FINISHING indicates that execution processing is in the final stages. 11292 // 11293 // * FINISHED indicates that the execution has completed without error. 11294 // 11295 // * FAILING indicates that the execution is failing and will not finish 11296 // successfully. 11297 // 11298 // * FAILED indicates that the execution failed. 11299 // 11300 // * STOP_PENDING indicates that the cluster has received a StopNotebookExecution 11301 // request and the stop is pending. 11302 // 11303 // * STOPPING indicates that the cluster is in the process of stopping the 11304 // execution as a result of a StopNotebookExecution request. 11305 // 11306 // * STOPPED indicates that the execution stopped because of a StopNotebookExecution 11307 // request. 11308 Status *string `type:"string" enum:"NotebookExecutionStatus"` 11309 11310 // The end of time range filter for listing notebook executions. The default 11311 // is the current timestamp. 11312 To *time.Time `type:"timestamp"` 11313} 11314 11315// String returns the string representation 11316func (s ListNotebookExecutionsInput) String() string { 11317 return awsutil.Prettify(s) 11318} 11319 11320// GoString returns the string representation 11321func (s ListNotebookExecutionsInput) GoString() string { 11322 return s.String() 11323} 11324 11325// SetEditorId sets the EditorId field's value. 11326func (s *ListNotebookExecutionsInput) SetEditorId(v string) *ListNotebookExecutionsInput { 11327 s.EditorId = &v 11328 return s 11329} 11330 11331// SetFrom sets the From field's value. 11332func (s *ListNotebookExecutionsInput) SetFrom(v time.Time) *ListNotebookExecutionsInput { 11333 s.From = &v 11334 return s 11335} 11336 11337// SetMarker sets the Marker field's value. 11338func (s *ListNotebookExecutionsInput) SetMarker(v string) *ListNotebookExecutionsInput { 11339 s.Marker = &v 11340 return s 11341} 11342 11343// SetStatus sets the Status field's value. 11344func (s *ListNotebookExecutionsInput) SetStatus(v string) *ListNotebookExecutionsInput { 11345 s.Status = &v 11346 return s 11347} 11348 11349// SetTo sets the To field's value. 11350func (s *ListNotebookExecutionsInput) SetTo(v time.Time) *ListNotebookExecutionsInput { 11351 s.To = &v 11352 return s 11353} 11354 11355type ListNotebookExecutionsOutput struct { 11356 _ struct{} `type:"structure"` 11357 11358 // A pagination token that a subsequent ListNotebookExecutions can use to determine 11359 // the next set of results to retrieve. 11360 Marker *string `type:"string"` 11361 11362 // A list of notebook executions. 11363 NotebookExecutions []*NotebookExecutionSummary `type:"list"` 11364} 11365 11366// String returns the string representation 11367func (s ListNotebookExecutionsOutput) String() string { 11368 return awsutil.Prettify(s) 11369} 11370 11371// GoString returns the string representation 11372func (s ListNotebookExecutionsOutput) GoString() string { 11373 return s.String() 11374} 11375 11376// SetMarker sets the Marker field's value. 11377func (s *ListNotebookExecutionsOutput) SetMarker(v string) *ListNotebookExecutionsOutput { 11378 s.Marker = &v 11379 return s 11380} 11381 11382// SetNotebookExecutions sets the NotebookExecutions field's value. 11383func (s *ListNotebookExecutionsOutput) SetNotebookExecutions(v []*NotebookExecutionSummary) *ListNotebookExecutionsOutput { 11384 s.NotebookExecutions = v 11385 return s 11386} 11387 11388type ListSecurityConfigurationsInput struct { 11389 _ struct{} `type:"structure"` 11390 11391 // The pagination token that indicates the set of results to retrieve. 11392 Marker *string `type:"string"` 11393} 11394 11395// String returns the string representation 11396func (s ListSecurityConfigurationsInput) String() string { 11397 return awsutil.Prettify(s) 11398} 11399 11400// GoString returns the string representation 11401func (s ListSecurityConfigurationsInput) GoString() string { 11402 return s.String() 11403} 11404 11405// SetMarker sets the Marker field's value. 11406func (s *ListSecurityConfigurationsInput) SetMarker(v string) *ListSecurityConfigurationsInput { 11407 s.Marker = &v 11408 return s 11409} 11410 11411type ListSecurityConfigurationsOutput struct { 11412 _ struct{} `type:"structure"` 11413 11414 // A pagination token that indicates the next set of results to retrieve. Include 11415 // the marker in the next ListSecurityConfiguration call to retrieve the next 11416 // page of results, if required. 11417 Marker *string `type:"string"` 11418 11419 // The creation date and time, and name, of each security configuration. 11420 SecurityConfigurations []*SecurityConfigurationSummary `type:"list"` 11421} 11422 11423// String returns the string representation 11424func (s ListSecurityConfigurationsOutput) String() string { 11425 return awsutil.Prettify(s) 11426} 11427 11428// GoString returns the string representation 11429func (s ListSecurityConfigurationsOutput) GoString() string { 11430 return s.String() 11431} 11432 11433// SetMarker sets the Marker field's value. 11434func (s *ListSecurityConfigurationsOutput) SetMarker(v string) *ListSecurityConfigurationsOutput { 11435 s.Marker = &v 11436 return s 11437} 11438 11439// SetSecurityConfigurations sets the SecurityConfigurations field's value. 11440func (s *ListSecurityConfigurationsOutput) SetSecurityConfigurations(v []*SecurityConfigurationSummary) *ListSecurityConfigurationsOutput { 11441 s.SecurityConfigurations = v 11442 return s 11443} 11444 11445// This input determines which steps to list. 11446type ListStepsInput struct { 11447 _ struct{} `type:"structure"` 11448 11449 // The identifier of the cluster for which to list the steps. 11450 // 11451 // ClusterId is a required field 11452 ClusterId *string `type:"string" required:"true"` 11453 11454 // The pagination token that indicates the next set of results to retrieve. 11455 Marker *string `type:"string"` 11456 11457 // The filter to limit the step list based on the identifier of the steps. You 11458 // can specify a maximum of ten Step IDs. The character constraint applies to 11459 // the overall length of the array. 11460 StepIds []*string `type:"list"` 11461 11462 // The filter to limit the step list based on certain states. 11463 StepStates []*string `type:"list"` 11464} 11465 11466// String returns the string representation 11467func (s ListStepsInput) String() string { 11468 return awsutil.Prettify(s) 11469} 11470 11471// GoString returns the string representation 11472func (s ListStepsInput) GoString() string { 11473 return s.String() 11474} 11475 11476// Validate inspects the fields of the type to determine if they are valid. 11477func (s *ListStepsInput) Validate() error { 11478 invalidParams := request.ErrInvalidParams{Context: "ListStepsInput"} 11479 if s.ClusterId == nil { 11480 invalidParams.Add(request.NewErrParamRequired("ClusterId")) 11481 } 11482 11483 if invalidParams.Len() > 0 { 11484 return invalidParams 11485 } 11486 return nil 11487} 11488 11489// SetClusterId sets the ClusterId field's value. 11490func (s *ListStepsInput) SetClusterId(v string) *ListStepsInput { 11491 s.ClusterId = &v 11492 return s 11493} 11494 11495// SetMarker sets the Marker field's value. 11496func (s *ListStepsInput) SetMarker(v string) *ListStepsInput { 11497 s.Marker = &v 11498 return s 11499} 11500 11501// SetStepIds sets the StepIds field's value. 11502func (s *ListStepsInput) SetStepIds(v []*string) *ListStepsInput { 11503 s.StepIds = v 11504 return s 11505} 11506 11507// SetStepStates sets the StepStates field's value. 11508func (s *ListStepsInput) SetStepStates(v []*string) *ListStepsInput { 11509 s.StepStates = v 11510 return s 11511} 11512 11513// This output contains the list of steps returned in reverse order. This means 11514// that the last step is the first element in the list. 11515type ListStepsOutput struct { 11516 _ struct{} `type:"structure"` 11517 11518 // The pagination token that indicates the next set of results to retrieve. 11519 Marker *string `type:"string"` 11520 11521 // The filtered list of steps for the cluster. 11522 Steps []*StepSummary `type:"list"` 11523} 11524 11525// String returns the string representation 11526func (s ListStepsOutput) String() string { 11527 return awsutil.Prettify(s) 11528} 11529 11530// GoString returns the string representation 11531func (s ListStepsOutput) GoString() string { 11532 return s.String() 11533} 11534 11535// SetMarker sets the Marker field's value. 11536func (s *ListStepsOutput) SetMarker(v string) *ListStepsOutput { 11537 s.Marker = &v 11538 return s 11539} 11540 11541// SetSteps sets the Steps field's value. 11542func (s *ListStepsOutput) SetSteps(v []*StepSummary) *ListStepsOutput { 11543 s.Steps = v 11544 return s 11545} 11546 11547type ListStudioSessionMappingsInput struct { 11548 _ struct{} `type:"structure"` 11549 11550 // Specifies whether to return session mappings for users or groups. If not 11551 // specified, the results include session mapping details for both users and 11552 // groups. 11553 IdentityType *string `type:"string" enum:"IdentityType"` 11554 11555 // The pagination token that indicates the set of results to retrieve. 11556 Marker *string `type:"string"` 11557 11558 // The ID of the Amazon EMR Studio. 11559 StudioId *string `type:"string"` 11560} 11561 11562// String returns the string representation 11563func (s ListStudioSessionMappingsInput) String() string { 11564 return awsutil.Prettify(s) 11565} 11566 11567// GoString returns the string representation 11568func (s ListStudioSessionMappingsInput) GoString() string { 11569 return s.String() 11570} 11571 11572// SetIdentityType sets the IdentityType field's value. 11573func (s *ListStudioSessionMappingsInput) SetIdentityType(v string) *ListStudioSessionMappingsInput { 11574 s.IdentityType = &v 11575 return s 11576} 11577 11578// SetMarker sets the Marker field's value. 11579func (s *ListStudioSessionMappingsInput) SetMarker(v string) *ListStudioSessionMappingsInput { 11580 s.Marker = &v 11581 return s 11582} 11583 11584// SetStudioId sets the StudioId field's value. 11585func (s *ListStudioSessionMappingsInput) SetStudioId(v string) *ListStudioSessionMappingsInput { 11586 s.StudioId = &v 11587 return s 11588} 11589 11590type ListStudioSessionMappingsOutput struct { 11591 _ struct{} `type:"structure"` 11592 11593 // The pagination token that indicates the next set of results to retrieve. 11594 Marker *string `type:"string"` 11595 11596 // A list of session mapping summary objects. Each object includes session mapping 11597 // details such as creation time, identity type (user or group), and Studio 11598 // ID. 11599 SessionMappings []*SessionMappingSummary `type:"list"` 11600} 11601 11602// String returns the string representation 11603func (s ListStudioSessionMappingsOutput) String() string { 11604 return awsutil.Prettify(s) 11605} 11606 11607// GoString returns the string representation 11608func (s ListStudioSessionMappingsOutput) GoString() string { 11609 return s.String() 11610} 11611 11612// SetMarker sets the Marker field's value. 11613func (s *ListStudioSessionMappingsOutput) SetMarker(v string) *ListStudioSessionMappingsOutput { 11614 s.Marker = &v 11615 return s 11616} 11617 11618// SetSessionMappings sets the SessionMappings field's value. 11619func (s *ListStudioSessionMappingsOutput) SetSessionMappings(v []*SessionMappingSummary) *ListStudioSessionMappingsOutput { 11620 s.SessionMappings = v 11621 return s 11622} 11623 11624type ListStudiosInput struct { 11625 _ struct{} `type:"structure"` 11626 11627 // The pagination token that indicates the set of results to retrieve. 11628 Marker *string `type:"string"` 11629} 11630 11631// String returns the string representation 11632func (s ListStudiosInput) String() string { 11633 return awsutil.Prettify(s) 11634} 11635 11636// GoString returns the string representation 11637func (s ListStudiosInput) GoString() string { 11638 return s.String() 11639} 11640 11641// SetMarker sets the Marker field's value. 11642func (s *ListStudiosInput) SetMarker(v string) *ListStudiosInput { 11643 s.Marker = &v 11644 return s 11645} 11646 11647type ListStudiosOutput struct { 11648 _ struct{} `type:"structure"` 11649 11650 // The pagination token that indicates the next set of results to retrieve. 11651 Marker *string `type:"string"` 11652 11653 // The list of Studio summary objects. 11654 Studios []*StudioSummary `type:"list"` 11655} 11656 11657// String returns the string representation 11658func (s ListStudiosOutput) String() string { 11659 return awsutil.Prettify(s) 11660} 11661 11662// GoString returns the string representation 11663func (s ListStudiosOutput) GoString() string { 11664 return s.String() 11665} 11666 11667// SetMarker sets the Marker field's value. 11668func (s *ListStudiosOutput) SetMarker(v string) *ListStudiosOutput { 11669 s.Marker = &v 11670 return s 11671} 11672 11673// SetStudios sets the Studios field's value. 11674func (s *ListStudiosOutput) SetStudios(v []*StudioSummary) *ListStudiosOutput { 11675 s.Studios = v 11676 return s 11677} 11678 11679// Managed scaling policy for an Amazon EMR cluster. The policy specifies the 11680// limits for resources that can be added or terminated from a cluster. The 11681// policy only applies to the core and task nodes. The master node cannot be 11682// scaled after initial configuration. 11683type ManagedScalingPolicy struct { 11684 _ struct{} `type:"structure"` 11685 11686 // The EC2 unit limits for a managed scaling policy. The managed scaling activity 11687 // of a cluster is not allowed to go above or below these limits. The limit 11688 // only applies to the core and task nodes. The master node cannot be scaled 11689 // after initial configuration. 11690 ComputeLimits *ComputeLimits `type:"structure"` 11691} 11692 11693// String returns the string representation 11694func (s ManagedScalingPolicy) String() string { 11695 return awsutil.Prettify(s) 11696} 11697 11698// GoString returns the string representation 11699func (s ManagedScalingPolicy) GoString() string { 11700 return s.String() 11701} 11702 11703// Validate inspects the fields of the type to determine if they are valid. 11704func (s *ManagedScalingPolicy) Validate() error { 11705 invalidParams := request.ErrInvalidParams{Context: "ManagedScalingPolicy"} 11706 if s.ComputeLimits != nil { 11707 if err := s.ComputeLimits.Validate(); err != nil { 11708 invalidParams.AddNested("ComputeLimits", err.(request.ErrInvalidParams)) 11709 } 11710 } 11711 11712 if invalidParams.Len() > 0 { 11713 return invalidParams 11714 } 11715 return nil 11716} 11717 11718// SetComputeLimits sets the ComputeLimits field's value. 11719func (s *ManagedScalingPolicy) SetComputeLimits(v *ComputeLimits) *ManagedScalingPolicy { 11720 s.ComputeLimits = v 11721 return s 11722} 11723 11724// A CloudWatch dimension, which is specified using a Key (known as a Name in 11725// CloudWatch), Value pair. By default, Amazon EMR uses one dimension whose 11726// Key is JobFlowID and Value is a variable representing the cluster ID, which 11727// is ${emr.clusterId}. This enables the rule to bootstrap when the cluster 11728// ID becomes available. 11729type MetricDimension struct { 11730 _ struct{} `type:"structure"` 11731 11732 // The dimension name. 11733 Key *string `type:"string"` 11734 11735 // The dimension value. 11736 Value *string `type:"string"` 11737} 11738 11739// String returns the string representation 11740func (s MetricDimension) String() string { 11741 return awsutil.Prettify(s) 11742} 11743 11744// GoString returns the string representation 11745func (s MetricDimension) GoString() string { 11746 return s.String() 11747} 11748 11749// SetKey sets the Key field's value. 11750func (s *MetricDimension) SetKey(v string) *MetricDimension { 11751 s.Key = &v 11752 return s 11753} 11754 11755// SetValue sets the Value field's value. 11756func (s *MetricDimension) SetValue(v string) *MetricDimension { 11757 s.Value = &v 11758 return s 11759} 11760 11761type ModifyClusterInput struct { 11762 _ struct{} `type:"structure"` 11763 11764 // The unique identifier of the cluster. 11765 // 11766 // ClusterId is a required field 11767 ClusterId *string `type:"string" required:"true"` 11768 11769 // The number of steps that can be executed concurrently. You can specify a 11770 // maximum of 256 steps. 11771 StepConcurrencyLevel *int64 `type:"integer"` 11772} 11773 11774// String returns the string representation 11775func (s ModifyClusterInput) String() string { 11776 return awsutil.Prettify(s) 11777} 11778 11779// GoString returns the string representation 11780func (s ModifyClusterInput) GoString() string { 11781 return s.String() 11782} 11783 11784// Validate inspects the fields of the type to determine if they are valid. 11785func (s *ModifyClusterInput) Validate() error { 11786 invalidParams := request.ErrInvalidParams{Context: "ModifyClusterInput"} 11787 if s.ClusterId == nil { 11788 invalidParams.Add(request.NewErrParamRequired("ClusterId")) 11789 } 11790 11791 if invalidParams.Len() > 0 { 11792 return invalidParams 11793 } 11794 return nil 11795} 11796 11797// SetClusterId sets the ClusterId field's value. 11798func (s *ModifyClusterInput) SetClusterId(v string) *ModifyClusterInput { 11799 s.ClusterId = &v 11800 return s 11801} 11802 11803// SetStepConcurrencyLevel sets the StepConcurrencyLevel field's value. 11804func (s *ModifyClusterInput) SetStepConcurrencyLevel(v int64) *ModifyClusterInput { 11805 s.StepConcurrencyLevel = &v 11806 return s 11807} 11808 11809type ModifyClusterOutput struct { 11810 _ struct{} `type:"structure"` 11811 11812 // The number of steps that can be executed concurrently. 11813 StepConcurrencyLevel *int64 `type:"integer"` 11814} 11815 11816// String returns the string representation 11817func (s ModifyClusterOutput) String() string { 11818 return awsutil.Prettify(s) 11819} 11820 11821// GoString returns the string representation 11822func (s ModifyClusterOutput) GoString() string { 11823 return s.String() 11824} 11825 11826// SetStepConcurrencyLevel sets the StepConcurrencyLevel field's value. 11827func (s *ModifyClusterOutput) SetStepConcurrencyLevel(v int64) *ModifyClusterOutput { 11828 s.StepConcurrencyLevel = &v 11829 return s 11830} 11831 11832type ModifyInstanceFleetInput struct { 11833 _ struct{} `type:"structure"` 11834 11835 // The unique identifier of the cluster. 11836 // 11837 // ClusterId is a required field 11838 ClusterId *string `type:"string" required:"true"` 11839 11840 // The unique identifier of the instance fleet. 11841 // 11842 // InstanceFleet is a required field 11843 InstanceFleet *InstanceFleetModifyConfig `type:"structure" required:"true"` 11844} 11845 11846// String returns the string representation 11847func (s ModifyInstanceFleetInput) String() string { 11848 return awsutil.Prettify(s) 11849} 11850 11851// GoString returns the string representation 11852func (s ModifyInstanceFleetInput) GoString() string { 11853 return s.String() 11854} 11855 11856// Validate inspects the fields of the type to determine if they are valid. 11857func (s *ModifyInstanceFleetInput) Validate() error { 11858 invalidParams := request.ErrInvalidParams{Context: "ModifyInstanceFleetInput"} 11859 if s.ClusterId == nil { 11860 invalidParams.Add(request.NewErrParamRequired("ClusterId")) 11861 } 11862 if s.InstanceFleet == nil { 11863 invalidParams.Add(request.NewErrParamRequired("InstanceFleet")) 11864 } 11865 if s.InstanceFleet != nil { 11866 if err := s.InstanceFleet.Validate(); err != nil { 11867 invalidParams.AddNested("InstanceFleet", err.(request.ErrInvalidParams)) 11868 } 11869 } 11870 11871 if invalidParams.Len() > 0 { 11872 return invalidParams 11873 } 11874 return nil 11875} 11876 11877// SetClusterId sets the ClusterId field's value. 11878func (s *ModifyInstanceFleetInput) SetClusterId(v string) *ModifyInstanceFleetInput { 11879 s.ClusterId = &v 11880 return s 11881} 11882 11883// SetInstanceFleet sets the InstanceFleet field's value. 11884func (s *ModifyInstanceFleetInput) SetInstanceFleet(v *InstanceFleetModifyConfig) *ModifyInstanceFleetInput { 11885 s.InstanceFleet = v 11886 return s 11887} 11888 11889type ModifyInstanceFleetOutput struct { 11890 _ struct{} `type:"structure"` 11891} 11892 11893// String returns the string representation 11894func (s ModifyInstanceFleetOutput) String() string { 11895 return awsutil.Prettify(s) 11896} 11897 11898// GoString returns the string representation 11899func (s ModifyInstanceFleetOutput) GoString() string { 11900 return s.String() 11901} 11902 11903// Change the size of some instance groups. 11904type ModifyInstanceGroupsInput struct { 11905 _ struct{} `type:"structure"` 11906 11907 // The ID of the cluster to which the instance group belongs. 11908 ClusterId *string `type:"string"` 11909 11910 // Instance groups to change. 11911 InstanceGroups []*InstanceGroupModifyConfig `type:"list"` 11912} 11913 11914// String returns the string representation 11915func (s ModifyInstanceGroupsInput) String() string { 11916 return awsutil.Prettify(s) 11917} 11918 11919// GoString returns the string representation 11920func (s ModifyInstanceGroupsInput) GoString() string { 11921 return s.String() 11922} 11923 11924// Validate inspects the fields of the type to determine if they are valid. 11925func (s *ModifyInstanceGroupsInput) Validate() error { 11926 invalidParams := request.ErrInvalidParams{Context: "ModifyInstanceGroupsInput"} 11927 if s.InstanceGroups != nil { 11928 for i, v := range s.InstanceGroups { 11929 if v == nil { 11930 continue 11931 } 11932 if err := v.Validate(); err != nil { 11933 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "InstanceGroups", i), err.(request.ErrInvalidParams)) 11934 } 11935 } 11936 } 11937 11938 if invalidParams.Len() > 0 { 11939 return invalidParams 11940 } 11941 return nil 11942} 11943 11944// SetClusterId sets the ClusterId field's value. 11945func (s *ModifyInstanceGroupsInput) SetClusterId(v string) *ModifyInstanceGroupsInput { 11946 s.ClusterId = &v 11947 return s 11948} 11949 11950// SetInstanceGroups sets the InstanceGroups field's value. 11951func (s *ModifyInstanceGroupsInput) SetInstanceGroups(v []*InstanceGroupModifyConfig) *ModifyInstanceGroupsInput { 11952 s.InstanceGroups = v 11953 return s 11954} 11955 11956type ModifyInstanceGroupsOutput struct { 11957 _ struct{} `type:"structure"` 11958} 11959 11960// String returns the string representation 11961func (s ModifyInstanceGroupsOutput) String() string { 11962 return awsutil.Prettify(s) 11963} 11964 11965// GoString returns the string representation 11966func (s ModifyInstanceGroupsOutput) GoString() string { 11967 return s.String() 11968} 11969 11970// A notebook execution. An execution is a specific instance that an EMR Notebook 11971// is run using the StartNotebookExecution action. 11972type NotebookExecution struct { 11973 _ struct{} `type:"structure"` 11974 11975 // The Amazon Resource Name (ARN) of the notebook execution. 11976 Arn *string `type:"string"` 11977 11978 // The unique identifier of the EMR Notebook that is used for the notebook execution. 11979 EditorId *string `type:"string"` 11980 11981 // The timestamp when notebook execution ended. 11982 EndTime *time.Time `type:"timestamp"` 11983 11984 // The execution engine, such as an EMR cluster, used to run the EMR notebook 11985 // and perform the notebook execution. 11986 ExecutionEngine *ExecutionEngineConfig `type:"structure"` 11987 11988 // The reason for the latest status change of the notebook execution. 11989 LastStateChangeReason *string `type:"string"` 11990 11991 // The unique identifier of a notebook execution. 11992 NotebookExecutionId *string `type:"string"` 11993 11994 // A name for the notebook execution. 11995 NotebookExecutionName *string `type:"string"` 11996 11997 // The unique identifier of the EC2 security group associated with the EMR Notebook 11998 // instance. For more information see Specifying EC2 Security Groups for EMR 11999 // Notebooks (https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-managed-notebooks-security-groups.html) 12000 // in the EMR Management Guide. 12001 NotebookInstanceSecurityGroupId *string `type:"string"` 12002 12003 // Input parameters in JSON format passed to the EMR Notebook at runtime for 12004 // execution. 12005 NotebookParams *string `type:"string"` 12006 12007 // The location of the notebook execution's output file in Amazon S3. 12008 OutputNotebookURI *string `type:"string"` 12009 12010 // The timestamp when notebook execution started. 12011 StartTime *time.Time `type:"timestamp"` 12012 12013 // The status of the notebook execution. 12014 // 12015 // * START_PENDING indicates that the cluster has received the execution 12016 // request but execution has not begun. 12017 // 12018 // * STARTING indicates that the execution is starting on the cluster. 12019 // 12020 // * RUNNING indicates that the execution is being processed by the cluster. 12021 // 12022 // * FINISHING indicates that execution processing is in the final stages. 12023 // 12024 // * FINISHED indicates that the execution has completed without error. 12025 // 12026 // * FAILING indicates that the execution is failing and will not finish 12027 // successfully. 12028 // 12029 // * FAILED indicates that the execution failed. 12030 // 12031 // * STOP_PENDING indicates that the cluster has received a StopNotebookExecution 12032 // request and the stop is pending. 12033 // 12034 // * STOPPING indicates that the cluster is in the process of stopping the 12035 // execution as a result of a StopNotebookExecution request. 12036 // 12037 // * STOPPED indicates that the execution stopped because of a StopNotebookExecution 12038 // request. 12039 Status *string `type:"string" enum:"NotebookExecutionStatus"` 12040 12041 // A list of tags associated with a notebook execution. Tags are user-defined 12042 // key-value pairs that consist of a required key string with a maximum of 128 12043 // characters and an optional value string with a maximum of 256 characters. 12044 Tags []*Tag `type:"list"` 12045} 12046 12047// String returns the string representation 12048func (s NotebookExecution) String() string { 12049 return awsutil.Prettify(s) 12050} 12051 12052// GoString returns the string representation 12053func (s NotebookExecution) GoString() string { 12054 return s.String() 12055} 12056 12057// SetArn sets the Arn field's value. 12058func (s *NotebookExecution) SetArn(v string) *NotebookExecution { 12059 s.Arn = &v 12060 return s 12061} 12062 12063// SetEditorId sets the EditorId field's value. 12064func (s *NotebookExecution) SetEditorId(v string) *NotebookExecution { 12065 s.EditorId = &v 12066 return s 12067} 12068 12069// SetEndTime sets the EndTime field's value. 12070func (s *NotebookExecution) SetEndTime(v time.Time) *NotebookExecution { 12071 s.EndTime = &v 12072 return s 12073} 12074 12075// SetExecutionEngine sets the ExecutionEngine field's value. 12076func (s *NotebookExecution) SetExecutionEngine(v *ExecutionEngineConfig) *NotebookExecution { 12077 s.ExecutionEngine = v 12078 return s 12079} 12080 12081// SetLastStateChangeReason sets the LastStateChangeReason field's value. 12082func (s *NotebookExecution) SetLastStateChangeReason(v string) *NotebookExecution { 12083 s.LastStateChangeReason = &v 12084 return s 12085} 12086 12087// SetNotebookExecutionId sets the NotebookExecutionId field's value. 12088func (s *NotebookExecution) SetNotebookExecutionId(v string) *NotebookExecution { 12089 s.NotebookExecutionId = &v 12090 return s 12091} 12092 12093// SetNotebookExecutionName sets the NotebookExecutionName field's value. 12094func (s *NotebookExecution) SetNotebookExecutionName(v string) *NotebookExecution { 12095 s.NotebookExecutionName = &v 12096 return s 12097} 12098 12099// SetNotebookInstanceSecurityGroupId sets the NotebookInstanceSecurityGroupId field's value. 12100func (s *NotebookExecution) SetNotebookInstanceSecurityGroupId(v string) *NotebookExecution { 12101 s.NotebookInstanceSecurityGroupId = &v 12102 return s 12103} 12104 12105// SetNotebookParams sets the NotebookParams field's value. 12106func (s *NotebookExecution) SetNotebookParams(v string) *NotebookExecution { 12107 s.NotebookParams = &v 12108 return s 12109} 12110 12111// SetOutputNotebookURI sets the OutputNotebookURI field's value. 12112func (s *NotebookExecution) SetOutputNotebookURI(v string) *NotebookExecution { 12113 s.OutputNotebookURI = &v 12114 return s 12115} 12116 12117// SetStartTime sets the StartTime field's value. 12118func (s *NotebookExecution) SetStartTime(v time.Time) *NotebookExecution { 12119 s.StartTime = &v 12120 return s 12121} 12122 12123// SetStatus sets the Status field's value. 12124func (s *NotebookExecution) SetStatus(v string) *NotebookExecution { 12125 s.Status = &v 12126 return s 12127} 12128 12129// SetTags sets the Tags field's value. 12130func (s *NotebookExecution) SetTags(v []*Tag) *NotebookExecution { 12131 s.Tags = v 12132 return s 12133} 12134 12135type NotebookExecutionSummary struct { 12136 _ struct{} `type:"structure"` 12137 12138 // The unique identifier of the editor associated with the notebook execution. 12139 EditorId *string `type:"string"` 12140 12141 // The timestamp when notebook execution started. 12142 EndTime *time.Time `type:"timestamp"` 12143 12144 // The unique identifier of the notebook execution. 12145 NotebookExecutionId *string `type:"string"` 12146 12147 // The name of the notebook execution. 12148 NotebookExecutionName *string `type:"string"` 12149 12150 // The timestamp when notebook execution started. 12151 StartTime *time.Time `type:"timestamp"` 12152 12153 // The status of the notebook execution. 12154 // 12155 // * START_PENDING indicates that the cluster has received the execution 12156 // request but execution has not begun. 12157 // 12158 // * STARTING indicates that the execution is starting on the cluster. 12159 // 12160 // * RUNNING indicates that the execution is being processed by the cluster. 12161 // 12162 // * FINISHING indicates that execution processing is in the final stages. 12163 // 12164 // * FINISHED indicates that the execution has completed without error. 12165 // 12166 // * FAILING indicates that the execution is failing and will not finish 12167 // successfully. 12168 // 12169 // * FAILED indicates that the execution failed. 12170 // 12171 // * STOP_PENDING indicates that the cluster has received a StopNotebookExecution 12172 // request and the stop is pending. 12173 // 12174 // * STOPPING indicates that the cluster is in the process of stopping the 12175 // execution as a result of a StopNotebookExecution request. 12176 // 12177 // * STOPPED indicates that the execution stopped because of a StopNotebookExecution 12178 // request. 12179 Status *string `type:"string" enum:"NotebookExecutionStatus"` 12180} 12181 12182// String returns the string representation 12183func (s NotebookExecutionSummary) String() string { 12184 return awsutil.Prettify(s) 12185} 12186 12187// GoString returns the string representation 12188func (s NotebookExecutionSummary) GoString() string { 12189 return s.String() 12190} 12191 12192// SetEditorId sets the EditorId field's value. 12193func (s *NotebookExecutionSummary) SetEditorId(v string) *NotebookExecutionSummary { 12194 s.EditorId = &v 12195 return s 12196} 12197 12198// SetEndTime sets the EndTime field's value. 12199func (s *NotebookExecutionSummary) SetEndTime(v time.Time) *NotebookExecutionSummary { 12200 s.EndTime = &v 12201 return s 12202} 12203 12204// SetNotebookExecutionId sets the NotebookExecutionId field's value. 12205func (s *NotebookExecutionSummary) SetNotebookExecutionId(v string) *NotebookExecutionSummary { 12206 s.NotebookExecutionId = &v 12207 return s 12208} 12209 12210// SetNotebookExecutionName sets the NotebookExecutionName field's value. 12211func (s *NotebookExecutionSummary) SetNotebookExecutionName(v string) *NotebookExecutionSummary { 12212 s.NotebookExecutionName = &v 12213 return s 12214} 12215 12216// SetStartTime sets the StartTime field's value. 12217func (s *NotebookExecutionSummary) SetStartTime(v time.Time) *NotebookExecutionSummary { 12218 s.StartTime = &v 12219 return s 12220} 12221 12222// SetStatus sets the Status field's value. 12223func (s *NotebookExecutionSummary) SetStatus(v string) *NotebookExecutionSummary { 12224 s.Status = &v 12225 return s 12226} 12227 12228// The launch specification for On-Demand Instances in the instance fleet, which 12229// determines the allocation strategy. 12230// 12231// The instance fleet configuration is available only in Amazon EMR versions 12232// 4.8.0 and later, excluding 5.0.x versions. On-Demand Instances allocation 12233// strategy is available in Amazon EMR version 5.12.1 and later. 12234type OnDemandProvisioningSpecification struct { 12235 _ struct{} `type:"structure"` 12236 12237 // Specifies the strategy to use in launching On-Demand Instance fleets. Currently, 12238 // the only option is lowest-price (the default), which launches the lowest 12239 // price first. 12240 // 12241 // AllocationStrategy is a required field 12242 AllocationStrategy *string `type:"string" required:"true" enum:"OnDemandProvisioningAllocationStrategy"` 12243} 12244 12245// String returns the string representation 12246func (s OnDemandProvisioningSpecification) String() string { 12247 return awsutil.Prettify(s) 12248} 12249 12250// GoString returns the string representation 12251func (s OnDemandProvisioningSpecification) GoString() string { 12252 return s.String() 12253} 12254 12255// Validate inspects the fields of the type to determine if they are valid. 12256func (s *OnDemandProvisioningSpecification) Validate() error { 12257 invalidParams := request.ErrInvalidParams{Context: "OnDemandProvisioningSpecification"} 12258 if s.AllocationStrategy == nil { 12259 invalidParams.Add(request.NewErrParamRequired("AllocationStrategy")) 12260 } 12261 12262 if invalidParams.Len() > 0 { 12263 return invalidParams 12264 } 12265 return nil 12266} 12267 12268// SetAllocationStrategy sets the AllocationStrategy field's value. 12269func (s *OnDemandProvisioningSpecification) SetAllocationStrategy(v string) *OnDemandProvisioningSpecification { 12270 s.AllocationStrategy = &v 12271 return s 12272} 12273 12274// Placement group configuration for an Amazon EMR cluster. The configuration 12275// specifies the placement strategy that can be applied to instance roles during 12276// cluster creation. 12277// 12278// To use this configuration, consider attaching managed policy AmazonElasticMapReducePlacementGroupPolicy 12279// to the EMR role. 12280type PlacementGroupConfig struct { 12281 _ struct{} `type:"structure"` 12282 12283 // Role of the instance in the cluster. 12284 // 12285 // Starting with Amazon EMR version 5.23.0, the only supported instance role 12286 // is MASTER. 12287 // 12288 // InstanceRole is a required field 12289 InstanceRole *string `type:"string" required:"true" enum:"InstanceRoleType"` 12290 12291 // EC2 Placement Group strategy associated with instance role. 12292 // 12293 // Starting with Amazon EMR version 5.23.0, the only supported placement strategy 12294 // is SPREAD for the MASTER instance role. 12295 PlacementStrategy *string `type:"string" enum:"PlacementGroupStrategy"` 12296} 12297 12298// String returns the string representation 12299func (s PlacementGroupConfig) String() string { 12300 return awsutil.Prettify(s) 12301} 12302 12303// GoString returns the string representation 12304func (s PlacementGroupConfig) GoString() string { 12305 return s.String() 12306} 12307 12308// Validate inspects the fields of the type to determine if they are valid. 12309func (s *PlacementGroupConfig) Validate() error { 12310 invalidParams := request.ErrInvalidParams{Context: "PlacementGroupConfig"} 12311 if s.InstanceRole == nil { 12312 invalidParams.Add(request.NewErrParamRequired("InstanceRole")) 12313 } 12314 12315 if invalidParams.Len() > 0 { 12316 return invalidParams 12317 } 12318 return nil 12319} 12320 12321// SetInstanceRole sets the InstanceRole field's value. 12322func (s *PlacementGroupConfig) SetInstanceRole(v string) *PlacementGroupConfig { 12323 s.InstanceRole = &v 12324 return s 12325} 12326 12327// SetPlacementStrategy sets the PlacementStrategy field's value. 12328func (s *PlacementGroupConfig) SetPlacementStrategy(v string) *PlacementGroupConfig { 12329 s.PlacementStrategy = &v 12330 return s 12331} 12332 12333// The Amazon EC2 Availability Zone configuration of the cluster (job flow). 12334type PlacementType struct { 12335 _ struct{} `type:"structure"` 12336 12337 // The Amazon EC2 Availability Zone for the cluster. AvailabilityZone is used 12338 // for uniform instance groups, while AvailabilityZones (plural) is used for 12339 // instance fleets. 12340 AvailabilityZone *string `type:"string"` 12341 12342 // When multiple Availability Zones are specified, Amazon EMR evaluates them 12343 // and launches instances in the optimal Availability Zone. AvailabilityZones 12344 // is used for instance fleets, while AvailabilityZone (singular) is used for 12345 // uniform instance groups. 12346 // 12347 // The instance fleet configuration is available only in Amazon EMR versions 12348 // 4.8.0 and later, excluding 5.0.x versions. 12349 AvailabilityZones []*string `type:"list"` 12350} 12351 12352// String returns the string representation 12353func (s PlacementType) String() string { 12354 return awsutil.Prettify(s) 12355} 12356 12357// GoString returns the string representation 12358func (s PlacementType) GoString() string { 12359 return s.String() 12360} 12361 12362// SetAvailabilityZone sets the AvailabilityZone field's value. 12363func (s *PlacementType) SetAvailabilityZone(v string) *PlacementType { 12364 s.AvailabilityZone = &v 12365 return s 12366} 12367 12368// SetAvailabilityZones sets the AvailabilityZones field's value. 12369func (s *PlacementType) SetAvailabilityZones(v []*string) *PlacementType { 12370 s.AvailabilityZones = v 12371 return s 12372} 12373 12374// A list of port ranges that are permitted to allow inbound traffic from all 12375// public IP addresses. To specify a single port, use the same value for MinRange 12376// and MaxRange. 12377type PortRange struct { 12378 _ struct{} `type:"structure"` 12379 12380 // The smallest port number in a specified range of port numbers. 12381 MaxRange *int64 `type:"integer"` 12382 12383 // The smallest port number in a specified range of port numbers. 12384 // 12385 // MinRange is a required field 12386 MinRange *int64 `type:"integer" required:"true"` 12387} 12388 12389// String returns the string representation 12390func (s PortRange) String() string { 12391 return awsutil.Prettify(s) 12392} 12393 12394// GoString returns the string representation 12395func (s PortRange) GoString() string { 12396 return s.String() 12397} 12398 12399// Validate inspects the fields of the type to determine if they are valid. 12400func (s *PortRange) Validate() error { 12401 invalidParams := request.ErrInvalidParams{Context: "PortRange"} 12402 if s.MaxRange != nil && *s.MaxRange < -1 { 12403 invalidParams.Add(request.NewErrParamMinValue("MaxRange", -1)) 12404 } 12405 if s.MinRange == nil { 12406 invalidParams.Add(request.NewErrParamRequired("MinRange")) 12407 } 12408 if s.MinRange != nil && *s.MinRange < -1 { 12409 invalidParams.Add(request.NewErrParamMinValue("MinRange", -1)) 12410 } 12411 12412 if invalidParams.Len() > 0 { 12413 return invalidParams 12414 } 12415 return nil 12416} 12417 12418// SetMaxRange sets the MaxRange field's value. 12419func (s *PortRange) SetMaxRange(v int64) *PortRange { 12420 s.MaxRange = &v 12421 return s 12422} 12423 12424// SetMinRange sets the MinRange field's value. 12425func (s *PortRange) SetMinRange(v int64) *PortRange { 12426 s.MinRange = &v 12427 return s 12428} 12429 12430type PutAutoScalingPolicyInput struct { 12431 _ struct{} `type:"structure"` 12432 12433 // Specifies the definition of the automatic scaling policy. 12434 // 12435 // AutoScalingPolicy is a required field 12436 AutoScalingPolicy *AutoScalingPolicy `type:"structure" required:"true"` 12437 12438 // Specifies the ID of a cluster. The instance group to which the automatic 12439 // scaling policy is applied is within this cluster. 12440 // 12441 // ClusterId is a required field 12442 ClusterId *string `type:"string" required:"true"` 12443 12444 // Specifies the ID of the instance group to which the automatic scaling policy 12445 // is applied. 12446 // 12447 // InstanceGroupId is a required field 12448 InstanceGroupId *string `type:"string" required:"true"` 12449} 12450 12451// String returns the string representation 12452func (s PutAutoScalingPolicyInput) String() string { 12453 return awsutil.Prettify(s) 12454} 12455 12456// GoString returns the string representation 12457func (s PutAutoScalingPolicyInput) GoString() string { 12458 return s.String() 12459} 12460 12461// Validate inspects the fields of the type to determine if they are valid. 12462func (s *PutAutoScalingPolicyInput) Validate() error { 12463 invalidParams := request.ErrInvalidParams{Context: "PutAutoScalingPolicyInput"} 12464 if s.AutoScalingPolicy == nil { 12465 invalidParams.Add(request.NewErrParamRequired("AutoScalingPolicy")) 12466 } 12467 if s.ClusterId == nil { 12468 invalidParams.Add(request.NewErrParamRequired("ClusterId")) 12469 } 12470 if s.InstanceGroupId == nil { 12471 invalidParams.Add(request.NewErrParamRequired("InstanceGroupId")) 12472 } 12473 if s.AutoScalingPolicy != nil { 12474 if err := s.AutoScalingPolicy.Validate(); err != nil { 12475 invalidParams.AddNested("AutoScalingPolicy", err.(request.ErrInvalidParams)) 12476 } 12477 } 12478 12479 if invalidParams.Len() > 0 { 12480 return invalidParams 12481 } 12482 return nil 12483} 12484 12485// SetAutoScalingPolicy sets the AutoScalingPolicy field's value. 12486func (s *PutAutoScalingPolicyInput) SetAutoScalingPolicy(v *AutoScalingPolicy) *PutAutoScalingPolicyInput { 12487 s.AutoScalingPolicy = v 12488 return s 12489} 12490 12491// SetClusterId sets the ClusterId field's value. 12492func (s *PutAutoScalingPolicyInput) SetClusterId(v string) *PutAutoScalingPolicyInput { 12493 s.ClusterId = &v 12494 return s 12495} 12496 12497// SetInstanceGroupId sets the InstanceGroupId field's value. 12498func (s *PutAutoScalingPolicyInput) SetInstanceGroupId(v string) *PutAutoScalingPolicyInput { 12499 s.InstanceGroupId = &v 12500 return s 12501} 12502 12503type PutAutoScalingPolicyOutput struct { 12504 _ struct{} `type:"structure"` 12505 12506 // The automatic scaling policy definition. 12507 AutoScalingPolicy *AutoScalingPolicyDescription `type:"structure"` 12508 12509 // The Amazon Resource Name of the cluster. 12510 ClusterArn *string `min:"20" type:"string"` 12511 12512 // Specifies the ID of a cluster. The instance group to which the automatic 12513 // scaling policy is applied is within this cluster. 12514 ClusterId *string `type:"string"` 12515 12516 // Specifies the ID of the instance group to which the scaling policy is applied. 12517 InstanceGroupId *string `type:"string"` 12518} 12519 12520// String returns the string representation 12521func (s PutAutoScalingPolicyOutput) String() string { 12522 return awsutil.Prettify(s) 12523} 12524 12525// GoString returns the string representation 12526func (s PutAutoScalingPolicyOutput) GoString() string { 12527 return s.String() 12528} 12529 12530// SetAutoScalingPolicy sets the AutoScalingPolicy field's value. 12531func (s *PutAutoScalingPolicyOutput) SetAutoScalingPolicy(v *AutoScalingPolicyDescription) *PutAutoScalingPolicyOutput { 12532 s.AutoScalingPolicy = v 12533 return s 12534} 12535 12536// SetClusterArn sets the ClusterArn field's value. 12537func (s *PutAutoScalingPolicyOutput) SetClusterArn(v string) *PutAutoScalingPolicyOutput { 12538 s.ClusterArn = &v 12539 return s 12540} 12541 12542// SetClusterId sets the ClusterId field's value. 12543func (s *PutAutoScalingPolicyOutput) SetClusterId(v string) *PutAutoScalingPolicyOutput { 12544 s.ClusterId = &v 12545 return s 12546} 12547 12548// SetInstanceGroupId sets the InstanceGroupId field's value. 12549func (s *PutAutoScalingPolicyOutput) SetInstanceGroupId(v string) *PutAutoScalingPolicyOutput { 12550 s.InstanceGroupId = &v 12551 return s 12552} 12553 12554type PutBlockPublicAccessConfigurationInput struct { 12555 _ struct{} `type:"structure"` 12556 12557 // A configuration for Amazon EMR block public access. The configuration applies 12558 // to all clusters created in your account for the current Region. The configuration 12559 // specifies whether block public access is enabled. If block public access 12560 // is enabled, security groups associated with the cluster cannot have rules 12561 // that allow inbound traffic from 0.0.0.0/0 or ::/0 on a port, unless the port 12562 // is specified as an exception using PermittedPublicSecurityGroupRuleRanges 12563 // in the BlockPublicAccessConfiguration. By default, Port 22 (SSH) is an exception, 12564 // and public access is allowed on this port. You can change this by updating 12565 // BlockPublicSecurityGroupRules to remove the exception. 12566 // 12567 // For accounts that created clusters in a Region before November 25, 2019, 12568 // block public access is disabled by default in that Region. To use this feature, 12569 // you must manually enable and configure it. For accounts that did not create 12570 // an EMR cluster in a Region before this date, block public access is enabled 12571 // by default in that Region. 12572 // 12573 // BlockPublicAccessConfiguration is a required field 12574 BlockPublicAccessConfiguration *BlockPublicAccessConfiguration `type:"structure" required:"true"` 12575} 12576 12577// String returns the string representation 12578func (s PutBlockPublicAccessConfigurationInput) String() string { 12579 return awsutil.Prettify(s) 12580} 12581 12582// GoString returns the string representation 12583func (s PutBlockPublicAccessConfigurationInput) GoString() string { 12584 return s.String() 12585} 12586 12587// Validate inspects the fields of the type to determine if they are valid. 12588func (s *PutBlockPublicAccessConfigurationInput) Validate() error { 12589 invalidParams := request.ErrInvalidParams{Context: "PutBlockPublicAccessConfigurationInput"} 12590 if s.BlockPublicAccessConfiguration == nil { 12591 invalidParams.Add(request.NewErrParamRequired("BlockPublicAccessConfiguration")) 12592 } 12593 if s.BlockPublicAccessConfiguration != nil { 12594 if err := s.BlockPublicAccessConfiguration.Validate(); err != nil { 12595 invalidParams.AddNested("BlockPublicAccessConfiguration", err.(request.ErrInvalidParams)) 12596 } 12597 } 12598 12599 if invalidParams.Len() > 0 { 12600 return invalidParams 12601 } 12602 return nil 12603} 12604 12605// SetBlockPublicAccessConfiguration sets the BlockPublicAccessConfiguration field's value. 12606func (s *PutBlockPublicAccessConfigurationInput) SetBlockPublicAccessConfiguration(v *BlockPublicAccessConfiguration) *PutBlockPublicAccessConfigurationInput { 12607 s.BlockPublicAccessConfiguration = v 12608 return s 12609} 12610 12611type PutBlockPublicAccessConfigurationOutput struct { 12612 _ struct{} `type:"structure"` 12613} 12614 12615// String returns the string representation 12616func (s PutBlockPublicAccessConfigurationOutput) String() string { 12617 return awsutil.Prettify(s) 12618} 12619 12620// GoString returns the string representation 12621func (s PutBlockPublicAccessConfigurationOutput) GoString() string { 12622 return s.String() 12623} 12624 12625type PutManagedScalingPolicyInput struct { 12626 _ struct{} `type:"structure"` 12627 12628 // Specifies the ID of an EMR cluster where the managed scaling policy is attached. 12629 // 12630 // ClusterId is a required field 12631 ClusterId *string `type:"string" required:"true"` 12632 12633 // Specifies the constraints for the managed scaling policy. 12634 // 12635 // ManagedScalingPolicy is a required field 12636 ManagedScalingPolicy *ManagedScalingPolicy `type:"structure" required:"true"` 12637} 12638 12639// String returns the string representation 12640func (s PutManagedScalingPolicyInput) String() string { 12641 return awsutil.Prettify(s) 12642} 12643 12644// GoString returns the string representation 12645func (s PutManagedScalingPolicyInput) GoString() string { 12646 return s.String() 12647} 12648 12649// Validate inspects the fields of the type to determine if they are valid. 12650func (s *PutManagedScalingPolicyInput) Validate() error { 12651 invalidParams := request.ErrInvalidParams{Context: "PutManagedScalingPolicyInput"} 12652 if s.ClusterId == nil { 12653 invalidParams.Add(request.NewErrParamRequired("ClusterId")) 12654 } 12655 if s.ManagedScalingPolicy == nil { 12656 invalidParams.Add(request.NewErrParamRequired("ManagedScalingPolicy")) 12657 } 12658 if s.ManagedScalingPolicy != nil { 12659 if err := s.ManagedScalingPolicy.Validate(); err != nil { 12660 invalidParams.AddNested("ManagedScalingPolicy", err.(request.ErrInvalidParams)) 12661 } 12662 } 12663 12664 if invalidParams.Len() > 0 { 12665 return invalidParams 12666 } 12667 return nil 12668} 12669 12670// SetClusterId sets the ClusterId field's value. 12671func (s *PutManagedScalingPolicyInput) SetClusterId(v string) *PutManagedScalingPolicyInput { 12672 s.ClusterId = &v 12673 return s 12674} 12675 12676// SetManagedScalingPolicy sets the ManagedScalingPolicy field's value. 12677func (s *PutManagedScalingPolicyInput) SetManagedScalingPolicy(v *ManagedScalingPolicy) *PutManagedScalingPolicyInput { 12678 s.ManagedScalingPolicy = v 12679 return s 12680} 12681 12682type PutManagedScalingPolicyOutput struct { 12683 _ struct{} `type:"structure"` 12684} 12685 12686// String returns the string representation 12687func (s PutManagedScalingPolicyOutput) String() string { 12688 return awsutil.Prettify(s) 12689} 12690 12691// GoString returns the string representation 12692func (s PutManagedScalingPolicyOutput) GoString() string { 12693 return s.String() 12694} 12695 12696type RemoveAutoScalingPolicyInput struct { 12697 _ struct{} `type:"structure"` 12698 12699 // Specifies the ID of a cluster. The instance group to which the automatic 12700 // scaling policy is applied is within this cluster. 12701 // 12702 // ClusterId is a required field 12703 ClusterId *string `type:"string" required:"true"` 12704 12705 // Specifies the ID of the instance group to which the scaling policy is applied. 12706 // 12707 // InstanceGroupId is a required field 12708 InstanceGroupId *string `type:"string" required:"true"` 12709} 12710 12711// String returns the string representation 12712func (s RemoveAutoScalingPolicyInput) String() string { 12713 return awsutil.Prettify(s) 12714} 12715 12716// GoString returns the string representation 12717func (s RemoveAutoScalingPolicyInput) GoString() string { 12718 return s.String() 12719} 12720 12721// Validate inspects the fields of the type to determine if they are valid. 12722func (s *RemoveAutoScalingPolicyInput) Validate() error { 12723 invalidParams := request.ErrInvalidParams{Context: "RemoveAutoScalingPolicyInput"} 12724 if s.ClusterId == nil { 12725 invalidParams.Add(request.NewErrParamRequired("ClusterId")) 12726 } 12727 if s.InstanceGroupId == nil { 12728 invalidParams.Add(request.NewErrParamRequired("InstanceGroupId")) 12729 } 12730 12731 if invalidParams.Len() > 0 { 12732 return invalidParams 12733 } 12734 return nil 12735} 12736 12737// SetClusterId sets the ClusterId field's value. 12738func (s *RemoveAutoScalingPolicyInput) SetClusterId(v string) *RemoveAutoScalingPolicyInput { 12739 s.ClusterId = &v 12740 return s 12741} 12742 12743// SetInstanceGroupId sets the InstanceGroupId field's value. 12744func (s *RemoveAutoScalingPolicyInput) SetInstanceGroupId(v string) *RemoveAutoScalingPolicyInput { 12745 s.InstanceGroupId = &v 12746 return s 12747} 12748 12749type RemoveAutoScalingPolicyOutput struct { 12750 _ struct{} `type:"structure"` 12751} 12752 12753// String returns the string representation 12754func (s RemoveAutoScalingPolicyOutput) String() string { 12755 return awsutil.Prettify(s) 12756} 12757 12758// GoString returns the string representation 12759func (s RemoveAutoScalingPolicyOutput) GoString() string { 12760 return s.String() 12761} 12762 12763type RemoveManagedScalingPolicyInput struct { 12764 _ struct{} `type:"structure"` 12765 12766 // Specifies the ID of the cluster from which the managed scaling policy will 12767 // be removed. 12768 // 12769 // ClusterId is a required field 12770 ClusterId *string `type:"string" required:"true"` 12771} 12772 12773// String returns the string representation 12774func (s RemoveManagedScalingPolicyInput) String() string { 12775 return awsutil.Prettify(s) 12776} 12777 12778// GoString returns the string representation 12779func (s RemoveManagedScalingPolicyInput) GoString() string { 12780 return s.String() 12781} 12782 12783// Validate inspects the fields of the type to determine if they are valid. 12784func (s *RemoveManagedScalingPolicyInput) Validate() error { 12785 invalidParams := request.ErrInvalidParams{Context: "RemoveManagedScalingPolicyInput"} 12786 if s.ClusterId == nil { 12787 invalidParams.Add(request.NewErrParamRequired("ClusterId")) 12788 } 12789 12790 if invalidParams.Len() > 0 { 12791 return invalidParams 12792 } 12793 return nil 12794} 12795 12796// SetClusterId sets the ClusterId field's value. 12797func (s *RemoveManagedScalingPolicyInput) SetClusterId(v string) *RemoveManagedScalingPolicyInput { 12798 s.ClusterId = &v 12799 return s 12800} 12801 12802type RemoveManagedScalingPolicyOutput struct { 12803 _ struct{} `type:"structure"` 12804} 12805 12806// String returns the string representation 12807func (s RemoveManagedScalingPolicyOutput) String() string { 12808 return awsutil.Prettify(s) 12809} 12810 12811// GoString returns the string representation 12812func (s RemoveManagedScalingPolicyOutput) GoString() string { 12813 return s.String() 12814} 12815 12816// This input identifies a cluster and a list of tags to remove. 12817type RemoveTagsInput struct { 12818 _ struct{} `type:"structure"` 12819 12820 // The Amazon EMR resource identifier from which tags will be removed. This 12821 // value must be a cluster identifier. 12822 // 12823 // ResourceId is a required field 12824 ResourceId *string `type:"string" required:"true"` 12825 12826 // A list of tag keys to remove from a resource. 12827 // 12828 // TagKeys is a required field 12829 TagKeys []*string `type:"list" required:"true"` 12830} 12831 12832// String returns the string representation 12833func (s RemoveTagsInput) String() string { 12834 return awsutil.Prettify(s) 12835} 12836 12837// GoString returns the string representation 12838func (s RemoveTagsInput) GoString() string { 12839 return s.String() 12840} 12841 12842// Validate inspects the fields of the type to determine if they are valid. 12843func (s *RemoveTagsInput) Validate() error { 12844 invalidParams := request.ErrInvalidParams{Context: "RemoveTagsInput"} 12845 if s.ResourceId == nil { 12846 invalidParams.Add(request.NewErrParamRequired("ResourceId")) 12847 } 12848 if s.TagKeys == nil { 12849 invalidParams.Add(request.NewErrParamRequired("TagKeys")) 12850 } 12851 12852 if invalidParams.Len() > 0 { 12853 return invalidParams 12854 } 12855 return nil 12856} 12857 12858// SetResourceId sets the ResourceId field's value. 12859func (s *RemoveTagsInput) SetResourceId(v string) *RemoveTagsInput { 12860 s.ResourceId = &v 12861 return s 12862} 12863 12864// SetTagKeys sets the TagKeys field's value. 12865func (s *RemoveTagsInput) SetTagKeys(v []*string) *RemoveTagsInput { 12866 s.TagKeys = v 12867 return s 12868} 12869 12870// This output indicates the result of removing tags from a resource. 12871type RemoveTagsOutput struct { 12872 _ struct{} `type:"structure"` 12873} 12874 12875// String returns the string representation 12876func (s RemoveTagsOutput) String() string { 12877 return awsutil.Prettify(s) 12878} 12879 12880// GoString returns the string representation 12881func (s RemoveTagsOutput) GoString() string { 12882 return s.String() 12883} 12884 12885// Input to the RunJobFlow operation. 12886type RunJobFlowInput struct { 12887 _ struct{} `type:"structure"` 12888 12889 // A JSON string for selecting additional features. 12890 AdditionalInfo *string `type:"string"` 12891 12892 // Applies only to Amazon EMR AMI versions 3.x and 2.x. For Amazon EMR releases 12893 // 4.0 and later, ReleaseLabel is used. To specify a custom AMI, use CustomAmiID. 12894 AmiVersion *string `type:"string"` 12895 12896 // Applies to Amazon EMR releases 4.0 and later. A case-insensitive list of 12897 // applications for Amazon EMR to install and configure when launching the cluster. 12898 // For a list of applications available for each Amazon EMR release version, 12899 // see the Amazon EMR Release Guide (https://docs.aws.amazon.com/emr/latest/ReleaseGuide/). 12900 Applications []*Application `type:"list"` 12901 12902 // An IAM role for automatic scaling policies. The default role is EMR_AutoScaling_DefaultRole. 12903 // The IAM role provides permissions that the automatic scaling feature requires 12904 // to launch and terminate EC2 instances in an instance group. 12905 AutoScalingRole *string `type:"string"` 12906 12907 // A list of bootstrap actions to run before Hadoop starts on the cluster nodes. 12908 BootstrapActions []*BootstrapActionConfig `type:"list"` 12909 12910 // For Amazon EMR releases 4.0 and later. The list of configurations supplied 12911 // for the EMR cluster you are creating. 12912 Configurations []*Configuration `type:"list"` 12913 12914 // Available only in Amazon EMR version 5.7.0 and later. The ID of a custom 12915 // Amazon EBS-backed Linux AMI. If specified, Amazon EMR uses this AMI when 12916 // it launches cluster EC2 instances. For more information about custom AMIs 12917 // in Amazon EMR, see Using a Custom AMI (https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-custom-ami.html) 12918 // in the Amazon EMR Management Guide. If omitted, the cluster uses the base 12919 // Linux AMI for the ReleaseLabel specified. For Amazon EMR versions 2.x and 12920 // 3.x, use AmiVersion instead. 12921 // 12922 // For information about creating a custom AMI, see Creating an Amazon EBS-Backed 12923 // Linux AMI (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/creating-an-ami-ebs.html) 12924 // in the Amazon Elastic Compute Cloud User Guide for Linux Instances. For information 12925 // about finding an AMI ID, see Finding a Linux AMI (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/finding-an-ami.html). 12926 CustomAmiId *string `type:"string"` 12927 12928 // The size, in GiB, of the Amazon EBS root device volume of the Linux AMI that 12929 // is used for each EC2 instance. Available in Amazon EMR version 4.x and later. 12930 EbsRootVolumeSize *int64 `type:"integer"` 12931 12932 // A specification of the number and type of Amazon EC2 instances. 12933 // 12934 // Instances is a required field 12935 Instances *JobFlowInstancesConfig `type:"structure" required:"true"` 12936 12937 // Also called instance profile and EC2 role. An IAM role for an EMR cluster. 12938 // The EC2 instances of the cluster assume this role. The default role is EMR_EC2_DefaultRole. 12939 // In order to use the default role, you must have already created it using 12940 // the CLI or console. 12941 JobFlowRole *string `type:"string"` 12942 12943 // Attributes for Kerberos configuration when Kerberos authentication is enabled 12944 // using a security configuration. For more information see Use Kerberos Authentication 12945 // (https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-kerberos.html) 12946 // in the Amazon EMR Management Guide. 12947 KerberosAttributes *KerberosAttributes `type:"structure"` 12948 12949 // The AWS KMS customer master key (CMK) used for encrypting log files. If a 12950 // value is not provided, the logs remain encrypted by AES-256. This attribute 12951 // is only available with Amazon EMR version 5.30.0 and later, excluding Amazon 12952 // EMR 6.0.0. 12953 LogEncryptionKmsKeyId *string `type:"string"` 12954 12955 // The location in Amazon S3 to write the log files of the job flow. If a value 12956 // is not provided, logs are not created. 12957 LogUri *string `type:"string"` 12958 12959 // The specified managed scaling policy for an Amazon EMR cluster. 12960 ManagedScalingPolicy *ManagedScalingPolicy `type:"structure"` 12961 12962 // The name of the job flow. 12963 // 12964 // Name is a required field 12965 Name *string `type:"string" required:"true"` 12966 12967 // 12968 // For Amazon EMR releases 3.x and 2.x. For Amazon EMR releases 4.x and later, 12969 // use Applications. 12970 // 12971 // A list of strings that indicates third-party software to use with the job 12972 // flow that accepts a user argument list. EMR accepts and forwards the argument 12973 // list to the corresponding installation script as bootstrap action arguments. 12974 // For more information, see "Launch a Job Flow on the MapR Distribution for 12975 // Hadoop" in the Amazon EMR Developer Guide (https://docs.aws.amazon.com/emr/latest/DeveloperGuide/emr-dg.pdf). 12976 // Supported values are: 12977 // 12978 // * "mapr-m3" - launch the cluster using MapR M3 Edition. 12979 // 12980 // * "mapr-m5" - launch the cluster using MapR M5 Edition. 12981 // 12982 // * "mapr" with the user arguments specifying "--edition,m3" or "--edition,m5" 12983 // - launch the job flow using MapR M3 or M5 Edition respectively. 12984 // 12985 // * "mapr-m7" - launch the cluster using MapR M7 Edition. 12986 // 12987 // * "hunk" - launch the cluster with the Hunk Big Data Analtics Platform. 12988 // 12989 // * "hue"- launch the cluster with Hue installed. 12990 // 12991 // * "spark" - launch the cluster with Apache Spark installed. 12992 // 12993 // * "ganglia" - launch the cluster with the Ganglia Monitoring System installed. 12994 NewSupportedProducts []*SupportedProductConfig `type:"list"` 12995 12996 // The specified placement group configuration for an Amazon EMR cluster. 12997 PlacementGroupConfigs []*PlacementGroupConfig `type:"list"` 12998 12999 // The Amazon EMR release label, which determines the version of open-source 13000 // application packages installed on the cluster. Release labels are in the 13001 // form emr-x.x.x, where x.x.x is an Amazon EMR release version such as emr-5.14.0. 13002 // For more information about Amazon EMR release versions and included application 13003 // versions and features, see https://docs.aws.amazon.com/emr/latest/ReleaseGuide/ 13004 // (https://docs.aws.amazon.com/emr/latest/ReleaseGuide/). The release label 13005 // applies only to Amazon EMR releases version 4.0 and later. Earlier versions 13006 // use AmiVersion. 13007 ReleaseLabel *string `type:"string"` 13008 13009 // Applies only when CustomAmiID is used. Specifies which updates from the Amazon 13010 // Linux AMI package repositories to apply automatically when the instance boots 13011 // using the AMI. If omitted, the default is SECURITY, which indicates that 13012 // only security updates are applied. If NONE is specified, no updates are applied, 13013 // and all updates must be applied manually. 13014 RepoUpgradeOnBoot *string `type:"string" enum:"RepoUpgradeOnBoot"` 13015 13016 // Specifies the way that individual Amazon EC2 instances terminate when an 13017 // automatic scale-in activity occurs or an instance group is resized. TERMINATE_AT_INSTANCE_HOUR 13018 // indicates that Amazon EMR terminates nodes at the instance-hour boundary, 13019 // regardless of when the request to terminate the instance was submitted. This 13020 // option is only available with Amazon EMR 5.1.0 and later and is the default 13021 // for clusters created using that version. TERMINATE_AT_TASK_COMPLETION indicates 13022 // that Amazon EMR adds nodes to a deny list and drains tasks from nodes before 13023 // terminating the Amazon EC2 instances, regardless of the instance-hour boundary. 13024 // With either behavior, Amazon EMR removes the least active nodes first and 13025 // blocks instance termination if it could lead to HDFS corruption. TERMINATE_AT_TASK_COMPLETION 13026 // available only in Amazon EMR version 4.1.0 and later, and is the default 13027 // for versions of Amazon EMR earlier than 5.1.0. 13028 ScaleDownBehavior *string `type:"string" enum:"ScaleDownBehavior"` 13029 13030 // The name of a security configuration to apply to the cluster. 13031 SecurityConfiguration *string `type:"string"` 13032 13033 // The IAM role that will be assumed by the Amazon EMR service to access AWS 13034 // resources on your behalf. 13035 ServiceRole *string `type:"string"` 13036 13037 // Specifies the number of steps that can be executed concurrently. The default 13038 // value is 1. The maximum value is 256. 13039 StepConcurrencyLevel *int64 `type:"integer"` 13040 13041 // A list of steps to run. 13042 Steps []*StepConfig `type:"list"` 13043 13044 // 13045 // For Amazon EMR releases 3.x and 2.x. For Amazon EMR releases 4.x and later, 13046 // use Applications. 13047 // 13048 // A list of strings that indicates third-party software to use. For more information, 13049 // see the Amazon EMR Developer Guide (https://docs.aws.amazon.com/emr/latest/DeveloperGuide/emr-dg.pdf). 13050 // Currently supported values are: 13051 // 13052 // * "mapr-m3" - launch the job flow using MapR M3 Edition. 13053 // 13054 // * "mapr-m5" - launch the job flow using MapR M5 Edition. 13055 SupportedProducts []*string `type:"list"` 13056 13057 // A list of tags to associate with a cluster and propagate to Amazon EC2 instances. 13058 Tags []*Tag `type:"list"` 13059 13060 // A value of true indicates that all IAM users in the AWS account can perform 13061 // cluster actions if they have the proper IAM policy permissions. This is the 13062 // default. A value of false indicates that only the IAM user who created the 13063 // cluster can perform actions. 13064 VisibleToAllUsers *bool `type:"boolean"` 13065} 13066 13067// String returns the string representation 13068func (s RunJobFlowInput) String() string { 13069 return awsutil.Prettify(s) 13070} 13071 13072// GoString returns the string representation 13073func (s RunJobFlowInput) GoString() string { 13074 return s.String() 13075} 13076 13077// Validate inspects the fields of the type to determine if they are valid. 13078func (s *RunJobFlowInput) Validate() error { 13079 invalidParams := request.ErrInvalidParams{Context: "RunJobFlowInput"} 13080 if s.Instances == nil { 13081 invalidParams.Add(request.NewErrParamRequired("Instances")) 13082 } 13083 if s.Name == nil { 13084 invalidParams.Add(request.NewErrParamRequired("Name")) 13085 } 13086 if s.BootstrapActions != nil { 13087 for i, v := range s.BootstrapActions { 13088 if v == nil { 13089 continue 13090 } 13091 if err := v.Validate(); err != nil { 13092 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "BootstrapActions", i), err.(request.ErrInvalidParams)) 13093 } 13094 } 13095 } 13096 if s.Instances != nil { 13097 if err := s.Instances.Validate(); err != nil { 13098 invalidParams.AddNested("Instances", err.(request.ErrInvalidParams)) 13099 } 13100 } 13101 if s.KerberosAttributes != nil { 13102 if err := s.KerberosAttributes.Validate(); err != nil { 13103 invalidParams.AddNested("KerberosAttributes", err.(request.ErrInvalidParams)) 13104 } 13105 } 13106 if s.ManagedScalingPolicy != nil { 13107 if err := s.ManagedScalingPolicy.Validate(); err != nil { 13108 invalidParams.AddNested("ManagedScalingPolicy", err.(request.ErrInvalidParams)) 13109 } 13110 } 13111 if s.PlacementGroupConfigs != nil { 13112 for i, v := range s.PlacementGroupConfigs { 13113 if v == nil { 13114 continue 13115 } 13116 if err := v.Validate(); err != nil { 13117 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "PlacementGroupConfigs", i), err.(request.ErrInvalidParams)) 13118 } 13119 } 13120 } 13121 if s.Steps != nil { 13122 for i, v := range s.Steps { 13123 if v == nil { 13124 continue 13125 } 13126 if err := v.Validate(); err != nil { 13127 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Steps", i), err.(request.ErrInvalidParams)) 13128 } 13129 } 13130 } 13131 13132 if invalidParams.Len() > 0 { 13133 return invalidParams 13134 } 13135 return nil 13136} 13137 13138// SetAdditionalInfo sets the AdditionalInfo field's value. 13139func (s *RunJobFlowInput) SetAdditionalInfo(v string) *RunJobFlowInput { 13140 s.AdditionalInfo = &v 13141 return s 13142} 13143 13144// SetAmiVersion sets the AmiVersion field's value. 13145func (s *RunJobFlowInput) SetAmiVersion(v string) *RunJobFlowInput { 13146 s.AmiVersion = &v 13147 return s 13148} 13149 13150// SetApplications sets the Applications field's value. 13151func (s *RunJobFlowInput) SetApplications(v []*Application) *RunJobFlowInput { 13152 s.Applications = v 13153 return s 13154} 13155 13156// SetAutoScalingRole sets the AutoScalingRole field's value. 13157func (s *RunJobFlowInput) SetAutoScalingRole(v string) *RunJobFlowInput { 13158 s.AutoScalingRole = &v 13159 return s 13160} 13161 13162// SetBootstrapActions sets the BootstrapActions field's value. 13163func (s *RunJobFlowInput) SetBootstrapActions(v []*BootstrapActionConfig) *RunJobFlowInput { 13164 s.BootstrapActions = v 13165 return s 13166} 13167 13168// SetConfigurations sets the Configurations field's value. 13169func (s *RunJobFlowInput) SetConfigurations(v []*Configuration) *RunJobFlowInput { 13170 s.Configurations = v 13171 return s 13172} 13173 13174// SetCustomAmiId sets the CustomAmiId field's value. 13175func (s *RunJobFlowInput) SetCustomAmiId(v string) *RunJobFlowInput { 13176 s.CustomAmiId = &v 13177 return s 13178} 13179 13180// SetEbsRootVolumeSize sets the EbsRootVolumeSize field's value. 13181func (s *RunJobFlowInput) SetEbsRootVolumeSize(v int64) *RunJobFlowInput { 13182 s.EbsRootVolumeSize = &v 13183 return s 13184} 13185 13186// SetInstances sets the Instances field's value. 13187func (s *RunJobFlowInput) SetInstances(v *JobFlowInstancesConfig) *RunJobFlowInput { 13188 s.Instances = v 13189 return s 13190} 13191 13192// SetJobFlowRole sets the JobFlowRole field's value. 13193func (s *RunJobFlowInput) SetJobFlowRole(v string) *RunJobFlowInput { 13194 s.JobFlowRole = &v 13195 return s 13196} 13197 13198// SetKerberosAttributes sets the KerberosAttributes field's value. 13199func (s *RunJobFlowInput) SetKerberosAttributes(v *KerberosAttributes) *RunJobFlowInput { 13200 s.KerberosAttributes = v 13201 return s 13202} 13203 13204// SetLogEncryptionKmsKeyId sets the LogEncryptionKmsKeyId field's value. 13205func (s *RunJobFlowInput) SetLogEncryptionKmsKeyId(v string) *RunJobFlowInput { 13206 s.LogEncryptionKmsKeyId = &v 13207 return s 13208} 13209 13210// SetLogUri sets the LogUri field's value. 13211func (s *RunJobFlowInput) SetLogUri(v string) *RunJobFlowInput { 13212 s.LogUri = &v 13213 return s 13214} 13215 13216// SetManagedScalingPolicy sets the ManagedScalingPolicy field's value. 13217func (s *RunJobFlowInput) SetManagedScalingPolicy(v *ManagedScalingPolicy) *RunJobFlowInput { 13218 s.ManagedScalingPolicy = v 13219 return s 13220} 13221 13222// SetName sets the Name field's value. 13223func (s *RunJobFlowInput) SetName(v string) *RunJobFlowInput { 13224 s.Name = &v 13225 return s 13226} 13227 13228// SetNewSupportedProducts sets the NewSupportedProducts field's value. 13229func (s *RunJobFlowInput) SetNewSupportedProducts(v []*SupportedProductConfig) *RunJobFlowInput { 13230 s.NewSupportedProducts = v 13231 return s 13232} 13233 13234// SetPlacementGroupConfigs sets the PlacementGroupConfigs field's value. 13235func (s *RunJobFlowInput) SetPlacementGroupConfigs(v []*PlacementGroupConfig) *RunJobFlowInput { 13236 s.PlacementGroupConfigs = v 13237 return s 13238} 13239 13240// SetReleaseLabel sets the ReleaseLabel field's value. 13241func (s *RunJobFlowInput) SetReleaseLabel(v string) *RunJobFlowInput { 13242 s.ReleaseLabel = &v 13243 return s 13244} 13245 13246// SetRepoUpgradeOnBoot sets the RepoUpgradeOnBoot field's value. 13247func (s *RunJobFlowInput) SetRepoUpgradeOnBoot(v string) *RunJobFlowInput { 13248 s.RepoUpgradeOnBoot = &v 13249 return s 13250} 13251 13252// SetScaleDownBehavior sets the ScaleDownBehavior field's value. 13253func (s *RunJobFlowInput) SetScaleDownBehavior(v string) *RunJobFlowInput { 13254 s.ScaleDownBehavior = &v 13255 return s 13256} 13257 13258// SetSecurityConfiguration sets the SecurityConfiguration field's value. 13259func (s *RunJobFlowInput) SetSecurityConfiguration(v string) *RunJobFlowInput { 13260 s.SecurityConfiguration = &v 13261 return s 13262} 13263 13264// SetServiceRole sets the ServiceRole field's value. 13265func (s *RunJobFlowInput) SetServiceRole(v string) *RunJobFlowInput { 13266 s.ServiceRole = &v 13267 return s 13268} 13269 13270// SetStepConcurrencyLevel sets the StepConcurrencyLevel field's value. 13271func (s *RunJobFlowInput) SetStepConcurrencyLevel(v int64) *RunJobFlowInput { 13272 s.StepConcurrencyLevel = &v 13273 return s 13274} 13275 13276// SetSteps sets the Steps field's value. 13277func (s *RunJobFlowInput) SetSteps(v []*StepConfig) *RunJobFlowInput { 13278 s.Steps = v 13279 return s 13280} 13281 13282// SetSupportedProducts sets the SupportedProducts field's value. 13283func (s *RunJobFlowInput) SetSupportedProducts(v []*string) *RunJobFlowInput { 13284 s.SupportedProducts = v 13285 return s 13286} 13287 13288// SetTags sets the Tags field's value. 13289func (s *RunJobFlowInput) SetTags(v []*Tag) *RunJobFlowInput { 13290 s.Tags = v 13291 return s 13292} 13293 13294// SetVisibleToAllUsers sets the VisibleToAllUsers field's value. 13295func (s *RunJobFlowInput) SetVisibleToAllUsers(v bool) *RunJobFlowInput { 13296 s.VisibleToAllUsers = &v 13297 return s 13298} 13299 13300// The result of the RunJobFlow operation. 13301type RunJobFlowOutput struct { 13302 _ struct{} `type:"structure"` 13303 13304 // The Amazon Resource Name of the cluster. 13305 ClusterArn *string `min:"20" type:"string"` 13306 13307 // An unique identifier for the job flow. 13308 JobFlowId *string `type:"string"` 13309} 13310 13311// String returns the string representation 13312func (s RunJobFlowOutput) String() string { 13313 return awsutil.Prettify(s) 13314} 13315 13316// GoString returns the string representation 13317func (s RunJobFlowOutput) GoString() string { 13318 return s.String() 13319} 13320 13321// SetClusterArn sets the ClusterArn field's value. 13322func (s *RunJobFlowOutput) SetClusterArn(v string) *RunJobFlowOutput { 13323 s.ClusterArn = &v 13324 return s 13325} 13326 13327// SetJobFlowId sets the JobFlowId field's value. 13328func (s *RunJobFlowOutput) SetJobFlowId(v string) *RunJobFlowOutput { 13329 s.JobFlowId = &v 13330 return s 13331} 13332 13333// The type of adjustment the automatic scaling activity makes when triggered, 13334// and the periodicity of the adjustment. 13335type ScalingAction struct { 13336 _ struct{} `type:"structure"` 13337 13338 // Not available for instance groups. Instance groups use the market type specified 13339 // for the group. 13340 Market *string `type:"string" enum:"MarketType"` 13341 13342 // The type of adjustment the automatic scaling activity makes when triggered, 13343 // and the periodicity of the adjustment. 13344 // 13345 // SimpleScalingPolicyConfiguration is a required field 13346 SimpleScalingPolicyConfiguration *SimpleScalingPolicyConfiguration `type:"structure" required:"true"` 13347} 13348 13349// String returns the string representation 13350func (s ScalingAction) String() string { 13351 return awsutil.Prettify(s) 13352} 13353 13354// GoString returns the string representation 13355func (s ScalingAction) GoString() string { 13356 return s.String() 13357} 13358 13359// Validate inspects the fields of the type to determine if they are valid. 13360func (s *ScalingAction) Validate() error { 13361 invalidParams := request.ErrInvalidParams{Context: "ScalingAction"} 13362 if s.SimpleScalingPolicyConfiguration == nil { 13363 invalidParams.Add(request.NewErrParamRequired("SimpleScalingPolicyConfiguration")) 13364 } 13365 if s.SimpleScalingPolicyConfiguration != nil { 13366 if err := s.SimpleScalingPolicyConfiguration.Validate(); err != nil { 13367 invalidParams.AddNested("SimpleScalingPolicyConfiguration", err.(request.ErrInvalidParams)) 13368 } 13369 } 13370 13371 if invalidParams.Len() > 0 { 13372 return invalidParams 13373 } 13374 return nil 13375} 13376 13377// SetMarket sets the Market field's value. 13378func (s *ScalingAction) SetMarket(v string) *ScalingAction { 13379 s.Market = &v 13380 return s 13381} 13382 13383// SetSimpleScalingPolicyConfiguration sets the SimpleScalingPolicyConfiguration field's value. 13384func (s *ScalingAction) SetSimpleScalingPolicyConfiguration(v *SimpleScalingPolicyConfiguration) *ScalingAction { 13385 s.SimpleScalingPolicyConfiguration = v 13386 return s 13387} 13388 13389// The upper and lower EC2 instance limits for an automatic scaling policy. 13390// Automatic scaling activities triggered by automatic scaling rules will not 13391// cause an instance group to grow above or below these limits. 13392type ScalingConstraints struct { 13393 _ struct{} `type:"structure"` 13394 13395 // The upper boundary of EC2 instances in an instance group beyond which scaling 13396 // activities are not allowed to grow. Scale-out activities will not add instances 13397 // beyond this boundary. 13398 // 13399 // MaxCapacity is a required field 13400 MaxCapacity *int64 `type:"integer" required:"true"` 13401 13402 // The lower boundary of EC2 instances in an instance group below which scaling 13403 // activities are not allowed to shrink. Scale-in activities will not terminate 13404 // instances below this boundary. 13405 // 13406 // MinCapacity is a required field 13407 MinCapacity *int64 `type:"integer" required:"true"` 13408} 13409 13410// String returns the string representation 13411func (s ScalingConstraints) String() string { 13412 return awsutil.Prettify(s) 13413} 13414 13415// GoString returns the string representation 13416func (s ScalingConstraints) GoString() string { 13417 return s.String() 13418} 13419 13420// Validate inspects the fields of the type to determine if they are valid. 13421func (s *ScalingConstraints) Validate() error { 13422 invalidParams := request.ErrInvalidParams{Context: "ScalingConstraints"} 13423 if s.MaxCapacity == nil { 13424 invalidParams.Add(request.NewErrParamRequired("MaxCapacity")) 13425 } 13426 if s.MinCapacity == nil { 13427 invalidParams.Add(request.NewErrParamRequired("MinCapacity")) 13428 } 13429 13430 if invalidParams.Len() > 0 { 13431 return invalidParams 13432 } 13433 return nil 13434} 13435 13436// SetMaxCapacity sets the MaxCapacity field's value. 13437func (s *ScalingConstraints) SetMaxCapacity(v int64) *ScalingConstraints { 13438 s.MaxCapacity = &v 13439 return s 13440} 13441 13442// SetMinCapacity sets the MinCapacity field's value. 13443func (s *ScalingConstraints) SetMinCapacity(v int64) *ScalingConstraints { 13444 s.MinCapacity = &v 13445 return s 13446} 13447 13448// A scale-in or scale-out rule that defines scaling activity, including the 13449// CloudWatch metric alarm that triggers activity, how EC2 instances are added 13450// or removed, and the periodicity of adjustments. The automatic scaling policy 13451// for an instance group can comprise one or more automatic scaling rules. 13452type ScalingRule struct { 13453 _ struct{} `type:"structure"` 13454 13455 // The conditions that trigger an automatic scaling activity. 13456 // 13457 // Action is a required field 13458 Action *ScalingAction `type:"structure" required:"true"` 13459 13460 // A friendly, more verbose description of the automatic scaling rule. 13461 Description *string `type:"string"` 13462 13463 // The name used to identify an automatic scaling rule. Rule names must be unique 13464 // within a scaling policy. 13465 // 13466 // Name is a required field 13467 Name *string `type:"string" required:"true"` 13468 13469 // The CloudWatch alarm definition that determines when automatic scaling activity 13470 // is triggered. 13471 // 13472 // Trigger is a required field 13473 Trigger *ScalingTrigger `type:"structure" required:"true"` 13474} 13475 13476// String returns the string representation 13477func (s ScalingRule) String() string { 13478 return awsutil.Prettify(s) 13479} 13480 13481// GoString returns the string representation 13482func (s ScalingRule) GoString() string { 13483 return s.String() 13484} 13485 13486// Validate inspects the fields of the type to determine if they are valid. 13487func (s *ScalingRule) Validate() error { 13488 invalidParams := request.ErrInvalidParams{Context: "ScalingRule"} 13489 if s.Action == nil { 13490 invalidParams.Add(request.NewErrParamRequired("Action")) 13491 } 13492 if s.Name == nil { 13493 invalidParams.Add(request.NewErrParamRequired("Name")) 13494 } 13495 if s.Trigger == nil { 13496 invalidParams.Add(request.NewErrParamRequired("Trigger")) 13497 } 13498 if s.Action != nil { 13499 if err := s.Action.Validate(); err != nil { 13500 invalidParams.AddNested("Action", err.(request.ErrInvalidParams)) 13501 } 13502 } 13503 if s.Trigger != nil { 13504 if err := s.Trigger.Validate(); err != nil { 13505 invalidParams.AddNested("Trigger", err.(request.ErrInvalidParams)) 13506 } 13507 } 13508 13509 if invalidParams.Len() > 0 { 13510 return invalidParams 13511 } 13512 return nil 13513} 13514 13515// SetAction sets the Action field's value. 13516func (s *ScalingRule) SetAction(v *ScalingAction) *ScalingRule { 13517 s.Action = v 13518 return s 13519} 13520 13521// SetDescription sets the Description field's value. 13522func (s *ScalingRule) SetDescription(v string) *ScalingRule { 13523 s.Description = &v 13524 return s 13525} 13526 13527// SetName sets the Name field's value. 13528func (s *ScalingRule) SetName(v string) *ScalingRule { 13529 s.Name = &v 13530 return s 13531} 13532 13533// SetTrigger sets the Trigger field's value. 13534func (s *ScalingRule) SetTrigger(v *ScalingTrigger) *ScalingRule { 13535 s.Trigger = v 13536 return s 13537} 13538 13539// The conditions that trigger an automatic scaling activity. 13540type ScalingTrigger struct { 13541 _ struct{} `type:"structure"` 13542 13543 // The definition of a CloudWatch metric alarm. When the defined alarm conditions 13544 // are met along with other trigger parameters, scaling activity begins. 13545 // 13546 // CloudWatchAlarmDefinition is a required field 13547 CloudWatchAlarmDefinition *CloudWatchAlarmDefinition `type:"structure" required:"true"` 13548} 13549 13550// String returns the string representation 13551func (s ScalingTrigger) String() string { 13552 return awsutil.Prettify(s) 13553} 13554 13555// GoString returns the string representation 13556func (s ScalingTrigger) GoString() string { 13557 return s.String() 13558} 13559 13560// Validate inspects the fields of the type to determine if they are valid. 13561func (s *ScalingTrigger) Validate() error { 13562 invalidParams := request.ErrInvalidParams{Context: "ScalingTrigger"} 13563 if s.CloudWatchAlarmDefinition == nil { 13564 invalidParams.Add(request.NewErrParamRequired("CloudWatchAlarmDefinition")) 13565 } 13566 if s.CloudWatchAlarmDefinition != nil { 13567 if err := s.CloudWatchAlarmDefinition.Validate(); err != nil { 13568 invalidParams.AddNested("CloudWatchAlarmDefinition", err.(request.ErrInvalidParams)) 13569 } 13570 } 13571 13572 if invalidParams.Len() > 0 { 13573 return invalidParams 13574 } 13575 return nil 13576} 13577 13578// SetCloudWatchAlarmDefinition sets the CloudWatchAlarmDefinition field's value. 13579func (s *ScalingTrigger) SetCloudWatchAlarmDefinition(v *CloudWatchAlarmDefinition) *ScalingTrigger { 13580 s.CloudWatchAlarmDefinition = v 13581 return s 13582} 13583 13584// Configuration of the script to run during a bootstrap action. 13585type ScriptBootstrapActionConfig struct { 13586 _ struct{} `type:"structure"` 13587 13588 // A list of command line arguments to pass to the bootstrap action script. 13589 Args []*string `type:"list"` 13590 13591 // Location of the script to run during a bootstrap action. Can be either a 13592 // location in Amazon S3 or on a local file system. 13593 // 13594 // Path is a required field 13595 Path *string `type:"string" required:"true"` 13596} 13597 13598// String returns the string representation 13599func (s ScriptBootstrapActionConfig) String() string { 13600 return awsutil.Prettify(s) 13601} 13602 13603// GoString returns the string representation 13604func (s ScriptBootstrapActionConfig) GoString() string { 13605 return s.String() 13606} 13607 13608// Validate inspects the fields of the type to determine if they are valid. 13609func (s *ScriptBootstrapActionConfig) Validate() error { 13610 invalidParams := request.ErrInvalidParams{Context: "ScriptBootstrapActionConfig"} 13611 if s.Path == nil { 13612 invalidParams.Add(request.NewErrParamRequired("Path")) 13613 } 13614 13615 if invalidParams.Len() > 0 { 13616 return invalidParams 13617 } 13618 return nil 13619} 13620 13621// SetArgs sets the Args field's value. 13622func (s *ScriptBootstrapActionConfig) SetArgs(v []*string) *ScriptBootstrapActionConfig { 13623 s.Args = v 13624 return s 13625} 13626 13627// SetPath sets the Path field's value. 13628func (s *ScriptBootstrapActionConfig) SetPath(v string) *ScriptBootstrapActionConfig { 13629 s.Path = &v 13630 return s 13631} 13632 13633// The creation date and time, and name, of a security configuration. 13634type SecurityConfigurationSummary struct { 13635 _ struct{} `type:"structure"` 13636 13637 // The date and time the security configuration was created. 13638 CreationDateTime *time.Time `type:"timestamp"` 13639 13640 // The name of the security configuration. 13641 Name *string `type:"string"` 13642} 13643 13644// String returns the string representation 13645func (s SecurityConfigurationSummary) String() string { 13646 return awsutil.Prettify(s) 13647} 13648 13649// GoString returns the string representation 13650func (s SecurityConfigurationSummary) GoString() string { 13651 return s.String() 13652} 13653 13654// SetCreationDateTime sets the CreationDateTime field's value. 13655func (s *SecurityConfigurationSummary) SetCreationDateTime(v time.Time) *SecurityConfigurationSummary { 13656 s.CreationDateTime = &v 13657 return s 13658} 13659 13660// SetName sets the Name field's value. 13661func (s *SecurityConfigurationSummary) SetName(v string) *SecurityConfigurationSummary { 13662 s.Name = &v 13663 return s 13664} 13665 13666// Details for an Amazon EMR Studio session mapping including creation time, 13667// user or group ID, Studio ID, and so on. 13668type SessionMappingDetail struct { 13669 _ struct{} `type:"structure"` 13670 13671 // The time the session mapping was created. 13672 CreationTime *time.Time `type:"timestamp"` 13673 13674 // The globally unique identifier (GUID) of the user or group. 13675 IdentityId *string `type:"string"` 13676 13677 // 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-UserId) 13678 // and DisplayName (https://docs.aws.amazon.com/singlesignon/latest/IdentityStoreAPIReference/API_Group.html#singlesignon-Type-Group-DisplayName) 13679 // in the AWS SSO Identity Store API Reference. 13680 IdentityName *string `type:"string"` 13681 13682 // Specifies whether the identity mapped to the Studio is a user or a group. 13683 IdentityType *string `type:"string" enum:"IdentityType"` 13684 13685 // The time the session mapping was last modified. 13686 LastModifiedTime *time.Time `type:"timestamp"` 13687 13688 // The Amazon Resource Name (ARN) of the session policy associated with the 13689 // user or group. 13690 SessionPolicyArn *string `type:"string"` 13691 13692 // The ID of the Amazon EMR Studio. 13693 StudioId *string `type:"string"` 13694} 13695 13696// String returns the string representation 13697func (s SessionMappingDetail) String() string { 13698 return awsutil.Prettify(s) 13699} 13700 13701// GoString returns the string representation 13702func (s SessionMappingDetail) GoString() string { 13703 return s.String() 13704} 13705 13706// SetCreationTime sets the CreationTime field's value. 13707func (s *SessionMappingDetail) SetCreationTime(v time.Time) *SessionMappingDetail { 13708 s.CreationTime = &v 13709 return s 13710} 13711 13712// SetIdentityId sets the IdentityId field's value. 13713func (s *SessionMappingDetail) SetIdentityId(v string) *SessionMappingDetail { 13714 s.IdentityId = &v 13715 return s 13716} 13717 13718// SetIdentityName sets the IdentityName field's value. 13719func (s *SessionMappingDetail) SetIdentityName(v string) *SessionMappingDetail { 13720 s.IdentityName = &v 13721 return s 13722} 13723 13724// SetIdentityType sets the IdentityType field's value. 13725func (s *SessionMappingDetail) SetIdentityType(v string) *SessionMappingDetail { 13726 s.IdentityType = &v 13727 return s 13728} 13729 13730// SetLastModifiedTime sets the LastModifiedTime field's value. 13731func (s *SessionMappingDetail) SetLastModifiedTime(v time.Time) *SessionMappingDetail { 13732 s.LastModifiedTime = &v 13733 return s 13734} 13735 13736// SetSessionPolicyArn sets the SessionPolicyArn field's value. 13737func (s *SessionMappingDetail) SetSessionPolicyArn(v string) *SessionMappingDetail { 13738 s.SessionPolicyArn = &v 13739 return s 13740} 13741 13742// SetStudioId sets the StudioId field's value. 13743func (s *SessionMappingDetail) SetStudioId(v string) *SessionMappingDetail { 13744 s.StudioId = &v 13745 return s 13746} 13747 13748// Details for an Amazon EMR Studio session mapping. The details do not include 13749// the time the session mapping was last modified. 13750type SessionMappingSummary struct { 13751 _ struct{} `type:"structure"` 13752 13753 // The time the session mapping was created. 13754 CreationTime *time.Time `type:"timestamp"` 13755 13756 // The globally unique identifier (GUID) of the user or group from the AWS SSO 13757 // Identity Store. 13758 IdentityId *string `type:"string"` 13759 13760 // 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-UserId) 13761 // and DisplayName (https://docs.aws.amazon.com/singlesignon/latest/IdentityStoreAPIReference/API_Group.html#singlesignon-Type-Group-DisplayName) 13762 // in the AWS SSO Identity Store API Reference. 13763 IdentityName *string `type:"string"` 13764 13765 // Specifies whether the identity mapped to the Studio is a user or a group. 13766 IdentityType *string `type:"string" enum:"IdentityType"` 13767 13768 // The Amazon Resource Name (ARN) of the session policy associated with the 13769 // user or group. 13770 SessionPolicyArn *string `type:"string"` 13771 13772 // The ID of the Amazon EMR Studio. 13773 StudioId *string `type:"string"` 13774} 13775 13776// String returns the string representation 13777func (s SessionMappingSummary) String() string { 13778 return awsutil.Prettify(s) 13779} 13780 13781// GoString returns the string representation 13782func (s SessionMappingSummary) GoString() string { 13783 return s.String() 13784} 13785 13786// SetCreationTime sets the CreationTime field's value. 13787func (s *SessionMappingSummary) SetCreationTime(v time.Time) *SessionMappingSummary { 13788 s.CreationTime = &v 13789 return s 13790} 13791 13792// SetIdentityId sets the IdentityId field's value. 13793func (s *SessionMappingSummary) SetIdentityId(v string) *SessionMappingSummary { 13794 s.IdentityId = &v 13795 return s 13796} 13797 13798// SetIdentityName sets the IdentityName field's value. 13799func (s *SessionMappingSummary) SetIdentityName(v string) *SessionMappingSummary { 13800 s.IdentityName = &v 13801 return s 13802} 13803 13804// SetIdentityType sets the IdentityType field's value. 13805func (s *SessionMappingSummary) SetIdentityType(v string) *SessionMappingSummary { 13806 s.IdentityType = &v 13807 return s 13808} 13809 13810// SetSessionPolicyArn sets the SessionPolicyArn field's value. 13811func (s *SessionMappingSummary) SetSessionPolicyArn(v string) *SessionMappingSummary { 13812 s.SessionPolicyArn = &v 13813 return s 13814} 13815 13816// SetStudioId sets the StudioId field's value. 13817func (s *SessionMappingSummary) SetStudioId(v string) *SessionMappingSummary { 13818 s.StudioId = &v 13819 return s 13820} 13821 13822// The input argument to the TerminationProtection operation. 13823type SetTerminationProtectionInput struct { 13824 _ struct{} `type:"structure"` 13825 13826 // A list of strings that uniquely identify the clusters to protect. This identifier 13827 // is returned by RunJobFlow and can also be obtained from DescribeJobFlows . 13828 // 13829 // JobFlowIds is a required field 13830 JobFlowIds []*string `type:"list" required:"true"` 13831 13832 // A Boolean that indicates whether to protect the cluster and prevent the Amazon 13833 // EC2 instances in the cluster from shutting down due to API calls, user intervention, 13834 // or job-flow error. 13835 // 13836 // TerminationProtected is a required field 13837 TerminationProtected *bool `type:"boolean" required:"true"` 13838} 13839 13840// String returns the string representation 13841func (s SetTerminationProtectionInput) String() string { 13842 return awsutil.Prettify(s) 13843} 13844 13845// GoString returns the string representation 13846func (s SetTerminationProtectionInput) GoString() string { 13847 return s.String() 13848} 13849 13850// Validate inspects the fields of the type to determine if they are valid. 13851func (s *SetTerminationProtectionInput) Validate() error { 13852 invalidParams := request.ErrInvalidParams{Context: "SetTerminationProtectionInput"} 13853 if s.JobFlowIds == nil { 13854 invalidParams.Add(request.NewErrParamRequired("JobFlowIds")) 13855 } 13856 if s.TerminationProtected == nil { 13857 invalidParams.Add(request.NewErrParamRequired("TerminationProtected")) 13858 } 13859 13860 if invalidParams.Len() > 0 { 13861 return invalidParams 13862 } 13863 return nil 13864} 13865 13866// SetJobFlowIds sets the JobFlowIds field's value. 13867func (s *SetTerminationProtectionInput) SetJobFlowIds(v []*string) *SetTerminationProtectionInput { 13868 s.JobFlowIds = v 13869 return s 13870} 13871 13872// SetTerminationProtected sets the TerminationProtected field's value. 13873func (s *SetTerminationProtectionInput) SetTerminationProtected(v bool) *SetTerminationProtectionInput { 13874 s.TerminationProtected = &v 13875 return s 13876} 13877 13878type SetTerminationProtectionOutput struct { 13879 _ struct{} `type:"structure"` 13880} 13881 13882// String returns the string representation 13883func (s SetTerminationProtectionOutput) String() string { 13884 return awsutil.Prettify(s) 13885} 13886 13887// GoString returns the string representation 13888func (s SetTerminationProtectionOutput) GoString() string { 13889 return s.String() 13890} 13891 13892// The input to the SetVisibleToAllUsers action. 13893type SetVisibleToAllUsersInput struct { 13894 _ struct{} `type:"structure"` 13895 13896 // The unique identifier of the job flow (cluster). 13897 // 13898 // JobFlowIds is a required field 13899 JobFlowIds []*string `type:"list" required:"true"` 13900 13901 // A value of true indicates that all IAM users in the AWS account can perform 13902 // cluster actions if they have the proper IAM policy permissions. This is the 13903 // default. A value of false indicates that only the IAM user who created the 13904 // cluster can perform actions. 13905 // 13906 // VisibleToAllUsers is a required field 13907 VisibleToAllUsers *bool `type:"boolean" required:"true"` 13908} 13909 13910// String returns the string representation 13911func (s SetVisibleToAllUsersInput) String() string { 13912 return awsutil.Prettify(s) 13913} 13914 13915// GoString returns the string representation 13916func (s SetVisibleToAllUsersInput) GoString() string { 13917 return s.String() 13918} 13919 13920// Validate inspects the fields of the type to determine if they are valid. 13921func (s *SetVisibleToAllUsersInput) Validate() error { 13922 invalidParams := request.ErrInvalidParams{Context: "SetVisibleToAllUsersInput"} 13923 if s.JobFlowIds == nil { 13924 invalidParams.Add(request.NewErrParamRequired("JobFlowIds")) 13925 } 13926 if s.VisibleToAllUsers == nil { 13927 invalidParams.Add(request.NewErrParamRequired("VisibleToAllUsers")) 13928 } 13929 13930 if invalidParams.Len() > 0 { 13931 return invalidParams 13932 } 13933 return nil 13934} 13935 13936// SetJobFlowIds sets the JobFlowIds field's value. 13937func (s *SetVisibleToAllUsersInput) SetJobFlowIds(v []*string) *SetVisibleToAllUsersInput { 13938 s.JobFlowIds = v 13939 return s 13940} 13941 13942// SetVisibleToAllUsers sets the VisibleToAllUsers field's value. 13943func (s *SetVisibleToAllUsersInput) SetVisibleToAllUsers(v bool) *SetVisibleToAllUsersInput { 13944 s.VisibleToAllUsers = &v 13945 return s 13946} 13947 13948type SetVisibleToAllUsersOutput struct { 13949 _ struct{} `type:"structure"` 13950} 13951 13952// String returns the string representation 13953func (s SetVisibleToAllUsersOutput) String() string { 13954 return awsutil.Prettify(s) 13955} 13956 13957// GoString returns the string representation 13958func (s SetVisibleToAllUsersOutput) GoString() string { 13959 return s.String() 13960} 13961 13962// Policy for customizing shrink operations. Allows configuration of decommissioning 13963// timeout and targeted instance shrinking. 13964type ShrinkPolicy struct { 13965 _ struct{} `type:"structure"` 13966 13967 // The desired timeout for decommissioning an instance. Overrides the default 13968 // YARN decommissioning timeout. 13969 DecommissionTimeout *int64 `type:"integer"` 13970 13971 // Custom policy for requesting termination protection or termination of specific 13972 // instances when shrinking an instance group. 13973 InstanceResizePolicy *InstanceResizePolicy `type:"structure"` 13974} 13975 13976// String returns the string representation 13977func (s ShrinkPolicy) String() string { 13978 return awsutil.Prettify(s) 13979} 13980 13981// GoString returns the string representation 13982func (s ShrinkPolicy) GoString() string { 13983 return s.String() 13984} 13985 13986// SetDecommissionTimeout sets the DecommissionTimeout field's value. 13987func (s *ShrinkPolicy) SetDecommissionTimeout(v int64) *ShrinkPolicy { 13988 s.DecommissionTimeout = &v 13989 return s 13990} 13991 13992// SetInstanceResizePolicy sets the InstanceResizePolicy field's value. 13993func (s *ShrinkPolicy) SetInstanceResizePolicy(v *InstanceResizePolicy) *ShrinkPolicy { 13994 s.InstanceResizePolicy = v 13995 return s 13996} 13997 13998// An automatic scaling configuration, which describes how the policy adds or 13999// removes instances, the cooldown period, and the number of EC2 instances that 14000// will be added each time the CloudWatch metric alarm condition is satisfied. 14001type SimpleScalingPolicyConfiguration struct { 14002 _ struct{} `type:"structure"` 14003 14004 // The way in which EC2 instances are added (if ScalingAdjustment is a positive 14005 // number) or terminated (if ScalingAdjustment is a negative number) each time 14006 // the scaling activity is triggered. CHANGE_IN_CAPACITY is the default. CHANGE_IN_CAPACITY 14007 // indicates that the EC2 instance count increments or decrements by ScalingAdjustment, 14008 // which should be expressed as an integer. PERCENT_CHANGE_IN_CAPACITY indicates 14009 // the instance count increments or decrements by the percentage specified by 14010 // ScalingAdjustment, which should be expressed as an integer. For example, 14011 // 20 indicates an increase in 20% increments of cluster capacity. EXACT_CAPACITY 14012 // indicates the scaling activity results in an instance group with the number 14013 // of EC2 instances specified by ScalingAdjustment, which should be expressed 14014 // as a positive integer. 14015 AdjustmentType *string `type:"string" enum:"AdjustmentType"` 14016 14017 // The amount of time, in seconds, after a scaling activity completes before 14018 // any further trigger-related scaling activities can start. The default value 14019 // is 0. 14020 CoolDown *int64 `type:"integer"` 14021 14022 // The amount by which to scale in or scale out, based on the specified AdjustmentType. 14023 // A positive value adds to the instance group's EC2 instance count while a 14024 // negative number removes instances. If AdjustmentType is set to EXACT_CAPACITY, 14025 // the number should only be a positive integer. If AdjustmentType is set to 14026 // PERCENT_CHANGE_IN_CAPACITY, the value should express the percentage as an 14027 // integer. For example, -20 indicates a decrease in 20% increments of cluster 14028 // capacity. 14029 // 14030 // ScalingAdjustment is a required field 14031 ScalingAdjustment *int64 `type:"integer" required:"true"` 14032} 14033 14034// String returns the string representation 14035func (s SimpleScalingPolicyConfiguration) String() string { 14036 return awsutil.Prettify(s) 14037} 14038 14039// GoString returns the string representation 14040func (s SimpleScalingPolicyConfiguration) GoString() string { 14041 return s.String() 14042} 14043 14044// Validate inspects the fields of the type to determine if they are valid. 14045func (s *SimpleScalingPolicyConfiguration) Validate() error { 14046 invalidParams := request.ErrInvalidParams{Context: "SimpleScalingPolicyConfiguration"} 14047 if s.ScalingAdjustment == nil { 14048 invalidParams.Add(request.NewErrParamRequired("ScalingAdjustment")) 14049 } 14050 14051 if invalidParams.Len() > 0 { 14052 return invalidParams 14053 } 14054 return nil 14055} 14056 14057// SetAdjustmentType sets the AdjustmentType field's value. 14058func (s *SimpleScalingPolicyConfiguration) SetAdjustmentType(v string) *SimpleScalingPolicyConfiguration { 14059 s.AdjustmentType = &v 14060 return s 14061} 14062 14063// SetCoolDown sets the CoolDown field's value. 14064func (s *SimpleScalingPolicyConfiguration) SetCoolDown(v int64) *SimpleScalingPolicyConfiguration { 14065 s.CoolDown = &v 14066 return s 14067} 14068 14069// SetScalingAdjustment sets the ScalingAdjustment field's value. 14070func (s *SimpleScalingPolicyConfiguration) SetScalingAdjustment(v int64) *SimpleScalingPolicyConfiguration { 14071 s.ScalingAdjustment = &v 14072 return s 14073} 14074 14075// The launch specification for Spot Instances in the instance fleet, which 14076// determines the defined duration, provisioning timeout behavior, and allocation 14077// strategy. 14078// 14079// The instance fleet configuration is available only in Amazon EMR versions 14080// 4.8.0 and later, excluding 5.0.x versions. Spot Instance allocation strategy 14081// is available in Amazon EMR version 5.12.1 and later. 14082type SpotProvisioningSpecification struct { 14083 _ struct{} `type:"structure"` 14084 14085 // Specifies the strategy to use in launching Spot Instance fleets. Currently, 14086 // the only option is capacity-optimized (the default), which launches instances 14087 // from Spot Instance pools with optimal capacity for the number of instances 14088 // that are launching. 14089 AllocationStrategy *string `type:"string" enum:"SpotProvisioningAllocationStrategy"` 14090 14091 // The defined duration for Spot Instances (also known as Spot blocks) in minutes. 14092 // When specified, the Spot Instance does not terminate before the defined duration 14093 // expires, and defined duration pricing for Spot instances applies. Valid values 14094 // are 60, 120, 180, 240, 300, or 360. The duration period starts as soon as 14095 // a Spot Instance receives its instance ID. At the end of the duration, Amazon 14096 // EC2 marks the Spot Instance for termination and provides a Spot Instance 14097 // termination notice, which gives the instance a two-minute warning before 14098 // it terminates. 14099 BlockDurationMinutes *int64 `type:"integer"` 14100 14101 // The action to take when TargetSpotCapacity has not been fulfilled when the 14102 // TimeoutDurationMinutes has expired; that is, when all Spot Instances could 14103 // not be provisioned within the Spot provisioning timeout. Valid values are 14104 // TERMINATE_CLUSTER and SWITCH_TO_ON_DEMAND. SWITCH_TO_ON_DEMAND specifies 14105 // that if no Spot Instances are available, On-Demand Instances should be provisioned 14106 // to fulfill any remaining Spot capacity. 14107 // 14108 // TimeoutAction is a required field 14109 TimeoutAction *string `type:"string" required:"true" enum:"SpotProvisioningTimeoutAction"` 14110 14111 // The spot provisioning timeout period in minutes. If Spot Instances are not 14112 // provisioned within this time period, the TimeOutAction is taken. Minimum 14113 // value is 5 and maximum value is 1440. The timeout applies only during initial 14114 // provisioning, when the cluster is first created. 14115 // 14116 // TimeoutDurationMinutes is a required field 14117 TimeoutDurationMinutes *int64 `type:"integer" required:"true"` 14118} 14119 14120// String returns the string representation 14121func (s SpotProvisioningSpecification) String() string { 14122 return awsutil.Prettify(s) 14123} 14124 14125// GoString returns the string representation 14126func (s SpotProvisioningSpecification) GoString() string { 14127 return s.String() 14128} 14129 14130// Validate inspects the fields of the type to determine if they are valid. 14131func (s *SpotProvisioningSpecification) Validate() error { 14132 invalidParams := request.ErrInvalidParams{Context: "SpotProvisioningSpecification"} 14133 if s.TimeoutAction == nil { 14134 invalidParams.Add(request.NewErrParamRequired("TimeoutAction")) 14135 } 14136 if s.TimeoutDurationMinutes == nil { 14137 invalidParams.Add(request.NewErrParamRequired("TimeoutDurationMinutes")) 14138 } 14139 14140 if invalidParams.Len() > 0 { 14141 return invalidParams 14142 } 14143 return nil 14144} 14145 14146// SetAllocationStrategy sets the AllocationStrategy field's value. 14147func (s *SpotProvisioningSpecification) SetAllocationStrategy(v string) *SpotProvisioningSpecification { 14148 s.AllocationStrategy = &v 14149 return s 14150} 14151 14152// SetBlockDurationMinutes sets the BlockDurationMinutes field's value. 14153func (s *SpotProvisioningSpecification) SetBlockDurationMinutes(v int64) *SpotProvisioningSpecification { 14154 s.BlockDurationMinutes = &v 14155 return s 14156} 14157 14158// SetTimeoutAction sets the TimeoutAction field's value. 14159func (s *SpotProvisioningSpecification) SetTimeoutAction(v string) *SpotProvisioningSpecification { 14160 s.TimeoutAction = &v 14161 return s 14162} 14163 14164// SetTimeoutDurationMinutes sets the TimeoutDurationMinutes field's value. 14165func (s *SpotProvisioningSpecification) SetTimeoutDurationMinutes(v int64) *SpotProvisioningSpecification { 14166 s.TimeoutDurationMinutes = &v 14167 return s 14168} 14169 14170type StartNotebookExecutionInput struct { 14171 _ struct{} `type:"structure"` 14172 14173 // The unique identifier of the EMR Notebook to use for notebook execution. 14174 // 14175 // EditorId is a required field 14176 EditorId *string `type:"string" required:"true"` 14177 14178 // Specifies the execution engine (cluster) that runs the notebook execution. 14179 // 14180 // ExecutionEngine is a required field 14181 ExecutionEngine *ExecutionEngineConfig `type:"structure" required:"true"` 14182 14183 // An optional name for the notebook execution. 14184 NotebookExecutionName *string `type:"string"` 14185 14186 // The unique identifier of the Amazon EC2 security group to associate with 14187 // the EMR Notebook for this notebook execution. 14188 NotebookInstanceSecurityGroupId *string `type:"string"` 14189 14190 // Input parameters in JSON format passed to the EMR Notebook at runtime for 14191 // execution. 14192 NotebookParams *string `type:"string"` 14193 14194 // The path and file name of the notebook file for this execution, relative 14195 // to the path specified for the EMR Notebook. For example, if you specify a 14196 // path of s3://MyBucket/MyNotebooks when you create an EMR Notebook for a notebook 14197 // with an ID of e-ABCDEFGHIJK1234567890ABCD (the EditorID of this request), 14198 // and you specify a RelativePath of my_notebook_executions/notebook_execution.ipynb, 14199 // the location of the file for the notebook execution is s3://MyBucket/MyNotebooks/e-ABCDEFGHIJK1234567890ABCD/my_notebook_executions/notebook_execution.ipynb. 14200 // 14201 // RelativePath is a required field 14202 RelativePath *string `type:"string" required:"true"` 14203 14204 // The name or ARN of the IAM role that is used as the service role for Amazon 14205 // EMR (the EMR role) for the notebook execution. 14206 // 14207 // ServiceRole is a required field 14208 ServiceRole *string `type:"string" required:"true"` 14209 14210 // A list of tags associated with a notebook execution. Tags are user-defined 14211 // key-value pairs that consist of a required key string with a maximum of 128 14212 // characters and an optional value string with a maximum of 256 characters. 14213 Tags []*Tag `type:"list"` 14214} 14215 14216// String returns the string representation 14217func (s StartNotebookExecutionInput) String() string { 14218 return awsutil.Prettify(s) 14219} 14220 14221// GoString returns the string representation 14222func (s StartNotebookExecutionInput) GoString() string { 14223 return s.String() 14224} 14225 14226// Validate inspects the fields of the type to determine if they are valid. 14227func (s *StartNotebookExecutionInput) Validate() error { 14228 invalidParams := request.ErrInvalidParams{Context: "StartNotebookExecutionInput"} 14229 if s.EditorId == nil { 14230 invalidParams.Add(request.NewErrParamRequired("EditorId")) 14231 } 14232 if s.ExecutionEngine == nil { 14233 invalidParams.Add(request.NewErrParamRequired("ExecutionEngine")) 14234 } 14235 if s.RelativePath == nil { 14236 invalidParams.Add(request.NewErrParamRequired("RelativePath")) 14237 } 14238 if s.ServiceRole == nil { 14239 invalidParams.Add(request.NewErrParamRequired("ServiceRole")) 14240 } 14241 if s.ExecutionEngine != nil { 14242 if err := s.ExecutionEngine.Validate(); err != nil { 14243 invalidParams.AddNested("ExecutionEngine", err.(request.ErrInvalidParams)) 14244 } 14245 } 14246 14247 if invalidParams.Len() > 0 { 14248 return invalidParams 14249 } 14250 return nil 14251} 14252 14253// SetEditorId sets the EditorId field's value. 14254func (s *StartNotebookExecutionInput) SetEditorId(v string) *StartNotebookExecutionInput { 14255 s.EditorId = &v 14256 return s 14257} 14258 14259// SetExecutionEngine sets the ExecutionEngine field's value. 14260func (s *StartNotebookExecutionInput) SetExecutionEngine(v *ExecutionEngineConfig) *StartNotebookExecutionInput { 14261 s.ExecutionEngine = v 14262 return s 14263} 14264 14265// SetNotebookExecutionName sets the NotebookExecutionName field's value. 14266func (s *StartNotebookExecutionInput) SetNotebookExecutionName(v string) *StartNotebookExecutionInput { 14267 s.NotebookExecutionName = &v 14268 return s 14269} 14270 14271// SetNotebookInstanceSecurityGroupId sets the NotebookInstanceSecurityGroupId field's value. 14272func (s *StartNotebookExecutionInput) SetNotebookInstanceSecurityGroupId(v string) *StartNotebookExecutionInput { 14273 s.NotebookInstanceSecurityGroupId = &v 14274 return s 14275} 14276 14277// SetNotebookParams sets the NotebookParams field's value. 14278func (s *StartNotebookExecutionInput) SetNotebookParams(v string) *StartNotebookExecutionInput { 14279 s.NotebookParams = &v 14280 return s 14281} 14282 14283// SetRelativePath sets the RelativePath field's value. 14284func (s *StartNotebookExecutionInput) SetRelativePath(v string) *StartNotebookExecutionInput { 14285 s.RelativePath = &v 14286 return s 14287} 14288 14289// SetServiceRole sets the ServiceRole field's value. 14290func (s *StartNotebookExecutionInput) SetServiceRole(v string) *StartNotebookExecutionInput { 14291 s.ServiceRole = &v 14292 return s 14293} 14294 14295// SetTags sets the Tags field's value. 14296func (s *StartNotebookExecutionInput) SetTags(v []*Tag) *StartNotebookExecutionInput { 14297 s.Tags = v 14298 return s 14299} 14300 14301type StartNotebookExecutionOutput struct { 14302 _ struct{} `type:"structure"` 14303 14304 // The unique identifier of the notebook execution. 14305 NotebookExecutionId *string `type:"string"` 14306} 14307 14308// String returns the string representation 14309func (s StartNotebookExecutionOutput) String() string { 14310 return awsutil.Prettify(s) 14311} 14312 14313// GoString returns the string representation 14314func (s StartNotebookExecutionOutput) GoString() string { 14315 return s.String() 14316} 14317 14318// SetNotebookExecutionId sets the NotebookExecutionId field's value. 14319func (s *StartNotebookExecutionOutput) SetNotebookExecutionId(v string) *StartNotebookExecutionOutput { 14320 s.NotebookExecutionId = &v 14321 return s 14322} 14323 14324// This represents a step in a cluster. 14325type Step struct { 14326 _ struct{} `type:"structure"` 14327 14328 // The action to take when the cluster step fails. Possible values are TERMINATE_CLUSTER, 14329 // CANCEL_AND_WAIT, and CONTINUE. TERMINATE_JOB_FLOW is provided for backward 14330 // compatibility. We recommend using TERMINATE_CLUSTER instead. 14331 ActionOnFailure *string `type:"string" enum:"ActionOnFailure"` 14332 14333 // The Hadoop job configuration of the cluster step. 14334 Config *HadoopStepConfig `type:"structure"` 14335 14336 // The identifier of the cluster step. 14337 Id *string `type:"string"` 14338 14339 // The name of the cluster step. 14340 Name *string `type:"string"` 14341 14342 // The current execution status details of the cluster step. 14343 Status *StepStatus `type:"structure"` 14344} 14345 14346// String returns the string representation 14347func (s Step) String() string { 14348 return awsutil.Prettify(s) 14349} 14350 14351// GoString returns the string representation 14352func (s Step) GoString() string { 14353 return s.String() 14354} 14355 14356// SetActionOnFailure sets the ActionOnFailure field's value. 14357func (s *Step) SetActionOnFailure(v string) *Step { 14358 s.ActionOnFailure = &v 14359 return s 14360} 14361 14362// SetConfig sets the Config field's value. 14363func (s *Step) SetConfig(v *HadoopStepConfig) *Step { 14364 s.Config = v 14365 return s 14366} 14367 14368// SetId sets the Id field's value. 14369func (s *Step) SetId(v string) *Step { 14370 s.Id = &v 14371 return s 14372} 14373 14374// SetName sets the Name field's value. 14375func (s *Step) SetName(v string) *Step { 14376 s.Name = &v 14377 return s 14378} 14379 14380// SetStatus sets the Status field's value. 14381func (s *Step) SetStatus(v *StepStatus) *Step { 14382 s.Status = v 14383 return s 14384} 14385 14386// Specification of a cluster (job flow) step. 14387type StepConfig struct { 14388 _ struct{} `type:"structure"` 14389 14390 // The action to take when the cluster step fails. Possible values are TERMINATE_CLUSTER, 14391 // CANCEL_AND_WAIT, and CONTINUE. TERMINATE_JOB_FLOW is provided for backward 14392 // compatibility. We recommend using TERMINATE_CLUSTER instead. 14393 ActionOnFailure *string `type:"string" enum:"ActionOnFailure"` 14394 14395 // The JAR file used for the step. 14396 // 14397 // HadoopJarStep is a required field 14398 HadoopJarStep *HadoopJarStepConfig `type:"structure" required:"true"` 14399 14400 // The name of the step. 14401 // 14402 // Name is a required field 14403 Name *string `type:"string" required:"true"` 14404} 14405 14406// String returns the string representation 14407func (s StepConfig) String() string { 14408 return awsutil.Prettify(s) 14409} 14410 14411// GoString returns the string representation 14412func (s StepConfig) GoString() string { 14413 return s.String() 14414} 14415 14416// Validate inspects the fields of the type to determine if they are valid. 14417func (s *StepConfig) Validate() error { 14418 invalidParams := request.ErrInvalidParams{Context: "StepConfig"} 14419 if s.HadoopJarStep == nil { 14420 invalidParams.Add(request.NewErrParamRequired("HadoopJarStep")) 14421 } 14422 if s.Name == nil { 14423 invalidParams.Add(request.NewErrParamRequired("Name")) 14424 } 14425 if s.HadoopJarStep != nil { 14426 if err := s.HadoopJarStep.Validate(); err != nil { 14427 invalidParams.AddNested("HadoopJarStep", err.(request.ErrInvalidParams)) 14428 } 14429 } 14430 14431 if invalidParams.Len() > 0 { 14432 return invalidParams 14433 } 14434 return nil 14435} 14436 14437// SetActionOnFailure sets the ActionOnFailure field's value. 14438func (s *StepConfig) SetActionOnFailure(v string) *StepConfig { 14439 s.ActionOnFailure = &v 14440 return s 14441} 14442 14443// SetHadoopJarStep sets the HadoopJarStep field's value. 14444func (s *StepConfig) SetHadoopJarStep(v *HadoopJarStepConfig) *StepConfig { 14445 s.HadoopJarStep = v 14446 return s 14447} 14448 14449// SetName sets the Name field's value. 14450func (s *StepConfig) SetName(v string) *StepConfig { 14451 s.Name = &v 14452 return s 14453} 14454 14455// Combines the execution state and configuration of a step. 14456type StepDetail struct { 14457 _ struct{} `type:"structure"` 14458 14459 // The description of the step status. 14460 // 14461 // ExecutionStatusDetail is a required field 14462 ExecutionStatusDetail *StepExecutionStatusDetail `type:"structure" required:"true"` 14463 14464 // The step configuration. 14465 // 14466 // StepConfig is a required field 14467 StepConfig *StepConfig `type:"structure" required:"true"` 14468} 14469 14470// String returns the string representation 14471func (s StepDetail) String() string { 14472 return awsutil.Prettify(s) 14473} 14474 14475// GoString returns the string representation 14476func (s StepDetail) GoString() string { 14477 return s.String() 14478} 14479 14480// SetExecutionStatusDetail sets the ExecutionStatusDetail field's value. 14481func (s *StepDetail) SetExecutionStatusDetail(v *StepExecutionStatusDetail) *StepDetail { 14482 s.ExecutionStatusDetail = v 14483 return s 14484} 14485 14486// SetStepConfig sets the StepConfig field's value. 14487func (s *StepDetail) SetStepConfig(v *StepConfig) *StepDetail { 14488 s.StepConfig = v 14489 return s 14490} 14491 14492// The execution state of a step. 14493type StepExecutionStatusDetail struct { 14494 _ struct{} `type:"structure"` 14495 14496 // The creation date and time of the step. 14497 // 14498 // CreationDateTime is a required field 14499 CreationDateTime *time.Time `type:"timestamp" required:"true"` 14500 14501 // The completion date and time of the step. 14502 EndDateTime *time.Time `type:"timestamp"` 14503 14504 // A description of the step's current state. 14505 LastStateChangeReason *string `type:"string"` 14506 14507 // The start date and time of the step. 14508 StartDateTime *time.Time `type:"timestamp"` 14509 14510 // The state of the step. 14511 // 14512 // State is a required field 14513 State *string `type:"string" required:"true" enum:"StepExecutionState"` 14514} 14515 14516// String returns the string representation 14517func (s StepExecutionStatusDetail) String() string { 14518 return awsutil.Prettify(s) 14519} 14520 14521// GoString returns the string representation 14522func (s StepExecutionStatusDetail) GoString() string { 14523 return s.String() 14524} 14525 14526// SetCreationDateTime sets the CreationDateTime field's value. 14527func (s *StepExecutionStatusDetail) SetCreationDateTime(v time.Time) *StepExecutionStatusDetail { 14528 s.CreationDateTime = &v 14529 return s 14530} 14531 14532// SetEndDateTime sets the EndDateTime field's value. 14533func (s *StepExecutionStatusDetail) SetEndDateTime(v time.Time) *StepExecutionStatusDetail { 14534 s.EndDateTime = &v 14535 return s 14536} 14537 14538// SetLastStateChangeReason sets the LastStateChangeReason field's value. 14539func (s *StepExecutionStatusDetail) SetLastStateChangeReason(v string) *StepExecutionStatusDetail { 14540 s.LastStateChangeReason = &v 14541 return s 14542} 14543 14544// SetStartDateTime sets the StartDateTime field's value. 14545func (s *StepExecutionStatusDetail) SetStartDateTime(v time.Time) *StepExecutionStatusDetail { 14546 s.StartDateTime = &v 14547 return s 14548} 14549 14550// SetState sets the State field's value. 14551func (s *StepExecutionStatusDetail) SetState(v string) *StepExecutionStatusDetail { 14552 s.State = &v 14553 return s 14554} 14555 14556// The details of the step state change reason. 14557type StepStateChangeReason struct { 14558 _ struct{} `type:"structure"` 14559 14560 // The programmable code for the state change reason. Note: Currently, the service 14561 // provides no code for the state change. 14562 Code *string `type:"string" enum:"StepStateChangeReasonCode"` 14563 14564 // The descriptive message for the state change reason. 14565 Message *string `type:"string"` 14566} 14567 14568// String returns the string representation 14569func (s StepStateChangeReason) String() string { 14570 return awsutil.Prettify(s) 14571} 14572 14573// GoString returns the string representation 14574func (s StepStateChangeReason) GoString() string { 14575 return s.String() 14576} 14577 14578// SetCode sets the Code field's value. 14579func (s *StepStateChangeReason) SetCode(v string) *StepStateChangeReason { 14580 s.Code = &v 14581 return s 14582} 14583 14584// SetMessage sets the Message field's value. 14585func (s *StepStateChangeReason) SetMessage(v string) *StepStateChangeReason { 14586 s.Message = &v 14587 return s 14588} 14589 14590// The execution status details of the cluster step. 14591type StepStatus struct { 14592 _ struct{} `type:"structure"` 14593 14594 // The details for the step failure including reason, message, and log file 14595 // path where the root cause was identified. 14596 FailureDetails *FailureDetails `type:"structure"` 14597 14598 // The execution state of the cluster step. 14599 State *string `type:"string" enum:"StepState"` 14600 14601 // The reason for the step execution status change. 14602 StateChangeReason *StepStateChangeReason `type:"structure"` 14603 14604 // The timeline of the cluster step status over time. 14605 Timeline *StepTimeline `type:"structure"` 14606} 14607 14608// String returns the string representation 14609func (s StepStatus) String() string { 14610 return awsutil.Prettify(s) 14611} 14612 14613// GoString returns the string representation 14614func (s StepStatus) GoString() string { 14615 return s.String() 14616} 14617 14618// SetFailureDetails sets the FailureDetails field's value. 14619func (s *StepStatus) SetFailureDetails(v *FailureDetails) *StepStatus { 14620 s.FailureDetails = v 14621 return s 14622} 14623 14624// SetState sets the State field's value. 14625func (s *StepStatus) SetState(v string) *StepStatus { 14626 s.State = &v 14627 return s 14628} 14629 14630// SetStateChangeReason sets the StateChangeReason field's value. 14631func (s *StepStatus) SetStateChangeReason(v *StepStateChangeReason) *StepStatus { 14632 s.StateChangeReason = v 14633 return s 14634} 14635 14636// SetTimeline sets the Timeline field's value. 14637func (s *StepStatus) SetTimeline(v *StepTimeline) *StepStatus { 14638 s.Timeline = v 14639 return s 14640} 14641 14642// The summary of the cluster step. 14643type StepSummary struct { 14644 _ struct{} `type:"structure"` 14645 14646 // The action to take when the cluster step fails. Possible values are TERMINATE_CLUSTER, 14647 // CANCEL_AND_WAIT, and CONTINUE. TERMINATE_JOB_FLOW is available for backward 14648 // compatibility. We recommend using TERMINATE_CLUSTER instead. 14649 ActionOnFailure *string `type:"string" enum:"ActionOnFailure"` 14650 14651 // The Hadoop job configuration of the cluster step. 14652 Config *HadoopStepConfig `type:"structure"` 14653 14654 // The identifier of the cluster step. 14655 Id *string `type:"string"` 14656 14657 // The name of the cluster step. 14658 Name *string `type:"string"` 14659 14660 // The current execution status details of the cluster step. 14661 Status *StepStatus `type:"structure"` 14662} 14663 14664// String returns the string representation 14665func (s StepSummary) String() string { 14666 return awsutil.Prettify(s) 14667} 14668 14669// GoString returns the string representation 14670func (s StepSummary) GoString() string { 14671 return s.String() 14672} 14673 14674// SetActionOnFailure sets the ActionOnFailure field's value. 14675func (s *StepSummary) SetActionOnFailure(v string) *StepSummary { 14676 s.ActionOnFailure = &v 14677 return s 14678} 14679 14680// SetConfig sets the Config field's value. 14681func (s *StepSummary) SetConfig(v *HadoopStepConfig) *StepSummary { 14682 s.Config = v 14683 return s 14684} 14685 14686// SetId sets the Id field's value. 14687func (s *StepSummary) SetId(v string) *StepSummary { 14688 s.Id = &v 14689 return s 14690} 14691 14692// SetName sets the Name field's value. 14693func (s *StepSummary) SetName(v string) *StepSummary { 14694 s.Name = &v 14695 return s 14696} 14697 14698// SetStatus sets the Status field's value. 14699func (s *StepSummary) SetStatus(v *StepStatus) *StepSummary { 14700 s.Status = v 14701 return s 14702} 14703 14704// The timeline of the cluster step lifecycle. 14705type StepTimeline struct { 14706 _ struct{} `type:"structure"` 14707 14708 // The date and time when the cluster step was created. 14709 CreationDateTime *time.Time `type:"timestamp"` 14710 14711 // The date and time when the cluster step execution completed or failed. 14712 EndDateTime *time.Time `type:"timestamp"` 14713 14714 // The date and time when the cluster step execution started. 14715 StartDateTime *time.Time `type:"timestamp"` 14716} 14717 14718// String returns the string representation 14719func (s StepTimeline) String() string { 14720 return awsutil.Prettify(s) 14721} 14722 14723// GoString returns the string representation 14724func (s StepTimeline) GoString() string { 14725 return s.String() 14726} 14727 14728// SetCreationDateTime sets the CreationDateTime field's value. 14729func (s *StepTimeline) SetCreationDateTime(v time.Time) *StepTimeline { 14730 s.CreationDateTime = &v 14731 return s 14732} 14733 14734// SetEndDateTime sets the EndDateTime field's value. 14735func (s *StepTimeline) SetEndDateTime(v time.Time) *StepTimeline { 14736 s.EndDateTime = &v 14737 return s 14738} 14739 14740// SetStartDateTime sets the StartDateTime field's value. 14741func (s *StepTimeline) SetStartDateTime(v time.Time) *StepTimeline { 14742 s.StartDateTime = &v 14743 return s 14744} 14745 14746type StopNotebookExecutionInput struct { 14747 _ struct{} `type:"structure"` 14748 14749 // The unique identifier of the notebook execution. 14750 // 14751 // NotebookExecutionId is a required field 14752 NotebookExecutionId *string `type:"string" required:"true"` 14753} 14754 14755// String returns the string representation 14756func (s StopNotebookExecutionInput) String() string { 14757 return awsutil.Prettify(s) 14758} 14759 14760// GoString returns the string representation 14761func (s StopNotebookExecutionInput) GoString() string { 14762 return s.String() 14763} 14764 14765// Validate inspects the fields of the type to determine if they are valid. 14766func (s *StopNotebookExecutionInput) Validate() error { 14767 invalidParams := request.ErrInvalidParams{Context: "StopNotebookExecutionInput"} 14768 if s.NotebookExecutionId == nil { 14769 invalidParams.Add(request.NewErrParamRequired("NotebookExecutionId")) 14770 } 14771 14772 if invalidParams.Len() > 0 { 14773 return invalidParams 14774 } 14775 return nil 14776} 14777 14778// SetNotebookExecutionId sets the NotebookExecutionId field's value. 14779func (s *StopNotebookExecutionInput) SetNotebookExecutionId(v string) *StopNotebookExecutionInput { 14780 s.NotebookExecutionId = &v 14781 return s 14782} 14783 14784type StopNotebookExecutionOutput struct { 14785 _ struct{} `type:"structure"` 14786} 14787 14788// String returns the string representation 14789func (s StopNotebookExecutionOutput) String() string { 14790 return awsutil.Prettify(s) 14791} 14792 14793// GoString returns the string representation 14794func (s StopNotebookExecutionOutput) GoString() string { 14795 return s.String() 14796} 14797 14798// Details for an Amazon EMR Studio including ID, creation time, name, and so 14799// on. 14800type Studio struct { 14801 _ struct{} `type:"structure"` 14802 14803 // Specifies whether the Studio authenticates users using single sign-on (SSO) 14804 // or IAM. 14805 AuthMode *string `type:"string" enum:"AuthMode"` 14806 14807 // The time the Amazon EMR Studio was created. 14808 CreationTime *time.Time `type:"timestamp"` 14809 14810 // The default Amazon S3 location to back up Amazon EMR Studio Workspaces and 14811 // notebook files. 14812 DefaultS3Location *string `type:"string"` 14813 14814 // The detailed description of the EMR Studio. 14815 Description *string `type:"string"` 14816 14817 // The ID of the Engine security group associated with the Amazon EMR Studio. 14818 // The Engine security group allows inbound network traffic from resources in 14819 // the Workspace security group. 14820 EngineSecurityGroupId *string `type:"string"` 14821 14822 // The name of the EMR Studio. 14823 Name *string `type:"string"` 14824 14825 // The name of the IAM role assumed by the Amazon EMR Studio. 14826 ServiceRole *string `type:"string"` 14827 14828 // The Amazon Resource Name (ARN) of the EMR Studio. 14829 StudioArn *string `type:"string"` 14830 14831 // The ID of the EMR Studio. 14832 StudioId *string `type:"string"` 14833 14834 // The list of IDs of the subnets associated with the Amazon EMR Studio. 14835 SubnetIds []*string `type:"list"` 14836 14837 // A list of tags associated with the Amazon EMR Studio. 14838 Tags []*Tag `type:"list"` 14839 14840 // The unique access URL of the Amazon EMR Studio. 14841 Url *string `type:"string"` 14842 14843 // The name of the IAM role assumed by users logged in to the Amazon EMR Studio. 14844 UserRole *string `type:"string"` 14845 14846 // The ID of the VPC associated with the EMR Studio. 14847 VpcId *string `type:"string"` 14848 14849 // The ID of the Workspace security group associated with the Amazon EMR Studio. 14850 // The Workspace security group allows outbound network traffic to resources 14851 // in the Engine security group and to the internet. 14852 WorkspaceSecurityGroupId *string `type:"string"` 14853} 14854 14855// String returns the string representation 14856func (s Studio) String() string { 14857 return awsutil.Prettify(s) 14858} 14859 14860// GoString returns the string representation 14861func (s Studio) GoString() string { 14862 return s.String() 14863} 14864 14865// SetAuthMode sets the AuthMode field's value. 14866func (s *Studio) SetAuthMode(v string) *Studio { 14867 s.AuthMode = &v 14868 return s 14869} 14870 14871// SetCreationTime sets the CreationTime field's value. 14872func (s *Studio) SetCreationTime(v time.Time) *Studio { 14873 s.CreationTime = &v 14874 return s 14875} 14876 14877// SetDefaultS3Location sets the DefaultS3Location field's value. 14878func (s *Studio) SetDefaultS3Location(v string) *Studio { 14879 s.DefaultS3Location = &v 14880 return s 14881} 14882 14883// SetDescription sets the Description field's value. 14884func (s *Studio) SetDescription(v string) *Studio { 14885 s.Description = &v 14886 return s 14887} 14888 14889// SetEngineSecurityGroupId sets the EngineSecurityGroupId field's value. 14890func (s *Studio) SetEngineSecurityGroupId(v string) *Studio { 14891 s.EngineSecurityGroupId = &v 14892 return s 14893} 14894 14895// SetName sets the Name field's value. 14896func (s *Studio) SetName(v string) *Studio { 14897 s.Name = &v 14898 return s 14899} 14900 14901// SetServiceRole sets the ServiceRole field's value. 14902func (s *Studio) SetServiceRole(v string) *Studio { 14903 s.ServiceRole = &v 14904 return s 14905} 14906 14907// SetStudioArn sets the StudioArn field's value. 14908func (s *Studio) SetStudioArn(v string) *Studio { 14909 s.StudioArn = &v 14910 return s 14911} 14912 14913// SetStudioId sets the StudioId field's value. 14914func (s *Studio) SetStudioId(v string) *Studio { 14915 s.StudioId = &v 14916 return s 14917} 14918 14919// SetSubnetIds sets the SubnetIds field's value. 14920func (s *Studio) SetSubnetIds(v []*string) *Studio { 14921 s.SubnetIds = v 14922 return s 14923} 14924 14925// SetTags sets the Tags field's value. 14926func (s *Studio) SetTags(v []*Tag) *Studio { 14927 s.Tags = v 14928 return s 14929} 14930 14931// SetUrl sets the Url field's value. 14932func (s *Studio) SetUrl(v string) *Studio { 14933 s.Url = &v 14934 return s 14935} 14936 14937// SetUserRole sets the UserRole field's value. 14938func (s *Studio) SetUserRole(v string) *Studio { 14939 s.UserRole = &v 14940 return s 14941} 14942 14943// SetVpcId sets the VpcId field's value. 14944func (s *Studio) SetVpcId(v string) *Studio { 14945 s.VpcId = &v 14946 return s 14947} 14948 14949// SetWorkspaceSecurityGroupId sets the WorkspaceSecurityGroupId field's value. 14950func (s *Studio) SetWorkspaceSecurityGroupId(v string) *Studio { 14951 s.WorkspaceSecurityGroupId = &v 14952 return s 14953} 14954 14955// Details for an Amazon EMR Studio, including ID, Name, VPC, and Description. 14956// The details do not include subnets, IAM roles, security groups, or tags associated 14957// with the Studio. 14958type StudioSummary struct { 14959 _ struct{} `type:"structure"` 14960 14961 // The time when the Amazon EMR Studio was created. 14962 CreationTime *time.Time `type:"timestamp"` 14963 14964 // The detailed description of the EMR Studio. 14965 Description *string `type:"string"` 14966 14967 // The name of the Amazon EMR Studio. 14968 Name *string `type:"string"` 14969 14970 // The ID of the Amazon EMR Studio. 14971 StudioId *string `type:"string"` 14972 14973 // The unique access URL of the Amazon EMR Studio. 14974 Url *string `type:"string"` 14975 14976 // The ID of the Virtual Private Cloud (Amazon VPC) associated with the Amazon 14977 // EMR Studio. 14978 VpcId *string `type:"string"` 14979} 14980 14981// String returns the string representation 14982func (s StudioSummary) String() string { 14983 return awsutil.Prettify(s) 14984} 14985 14986// GoString returns the string representation 14987func (s StudioSummary) GoString() string { 14988 return s.String() 14989} 14990 14991// SetCreationTime sets the CreationTime field's value. 14992func (s *StudioSummary) SetCreationTime(v time.Time) *StudioSummary { 14993 s.CreationTime = &v 14994 return s 14995} 14996 14997// SetDescription sets the Description field's value. 14998func (s *StudioSummary) SetDescription(v string) *StudioSummary { 14999 s.Description = &v 15000 return s 15001} 15002 15003// SetName sets the Name field's value. 15004func (s *StudioSummary) SetName(v string) *StudioSummary { 15005 s.Name = &v 15006 return s 15007} 15008 15009// SetStudioId sets the StudioId field's value. 15010func (s *StudioSummary) SetStudioId(v string) *StudioSummary { 15011 s.StudioId = &v 15012 return s 15013} 15014 15015// SetUrl sets the Url field's value. 15016func (s *StudioSummary) SetUrl(v string) *StudioSummary { 15017 s.Url = &v 15018 return s 15019} 15020 15021// SetVpcId sets the VpcId field's value. 15022func (s *StudioSummary) SetVpcId(v string) *StudioSummary { 15023 s.VpcId = &v 15024 return s 15025} 15026 15027// The list of supported product configurations which allow user-supplied arguments. 15028// EMR accepts these arguments and forwards them to the corresponding installation 15029// script as bootstrap action arguments. 15030type SupportedProductConfig struct { 15031 _ struct{} `type:"structure"` 15032 15033 // The list of user-supplied arguments. 15034 Args []*string `type:"list"` 15035 15036 // The name of the product configuration. 15037 Name *string `type:"string"` 15038} 15039 15040// String returns the string representation 15041func (s SupportedProductConfig) String() string { 15042 return awsutil.Prettify(s) 15043} 15044 15045// GoString returns the string representation 15046func (s SupportedProductConfig) GoString() string { 15047 return s.String() 15048} 15049 15050// SetArgs sets the Args field's value. 15051func (s *SupportedProductConfig) SetArgs(v []*string) *SupportedProductConfig { 15052 s.Args = v 15053 return s 15054} 15055 15056// SetName sets the Name field's value. 15057func (s *SupportedProductConfig) SetName(v string) *SupportedProductConfig { 15058 s.Name = &v 15059 return s 15060} 15061 15062// A key-value pair containing user-defined metadata that you can associate 15063// with an Amazon EMR resource. Tags make it easier to associate clusters in 15064// various ways, such as grouping clusters to track your Amazon EMR resource 15065// allocation costs. For more information, see Tag Clusters (https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-plan-tags.html). 15066type Tag struct { 15067 _ struct{} `type:"structure"` 15068 15069 // A user-defined key, which is the minimum required information for a valid 15070 // tag. For more information, see Tag (https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-plan-tags.html). 15071 Key *string `type:"string"` 15072 15073 // A user-defined value, which is optional in a tag. For more information, see 15074 // Tag Clusters (https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-plan-tags.html). 15075 Value *string `type:"string"` 15076} 15077 15078// String returns the string representation 15079func (s Tag) String() string { 15080 return awsutil.Prettify(s) 15081} 15082 15083// GoString returns the string representation 15084func (s Tag) GoString() string { 15085 return s.String() 15086} 15087 15088// SetKey sets the Key field's value. 15089func (s *Tag) SetKey(v string) *Tag { 15090 s.Key = &v 15091 return s 15092} 15093 15094// SetValue sets the Value field's value. 15095func (s *Tag) SetValue(v string) *Tag { 15096 s.Value = &v 15097 return s 15098} 15099 15100// Input to the TerminateJobFlows operation. 15101type TerminateJobFlowsInput struct { 15102 _ struct{} `type:"structure"` 15103 15104 // A list of job flows to be shut down. 15105 // 15106 // JobFlowIds is a required field 15107 JobFlowIds []*string `type:"list" required:"true"` 15108} 15109 15110// String returns the string representation 15111func (s TerminateJobFlowsInput) String() string { 15112 return awsutil.Prettify(s) 15113} 15114 15115// GoString returns the string representation 15116func (s TerminateJobFlowsInput) GoString() string { 15117 return s.String() 15118} 15119 15120// Validate inspects the fields of the type to determine if they are valid. 15121func (s *TerminateJobFlowsInput) Validate() error { 15122 invalidParams := request.ErrInvalidParams{Context: "TerminateJobFlowsInput"} 15123 if s.JobFlowIds == nil { 15124 invalidParams.Add(request.NewErrParamRequired("JobFlowIds")) 15125 } 15126 15127 if invalidParams.Len() > 0 { 15128 return invalidParams 15129 } 15130 return nil 15131} 15132 15133// SetJobFlowIds sets the JobFlowIds field's value. 15134func (s *TerminateJobFlowsInput) SetJobFlowIds(v []*string) *TerminateJobFlowsInput { 15135 s.JobFlowIds = v 15136 return s 15137} 15138 15139type TerminateJobFlowsOutput struct { 15140 _ struct{} `type:"structure"` 15141} 15142 15143// String returns the string representation 15144func (s TerminateJobFlowsOutput) String() string { 15145 return awsutil.Prettify(s) 15146} 15147 15148// GoString returns the string representation 15149func (s TerminateJobFlowsOutput) GoString() string { 15150 return s.String() 15151} 15152 15153type UpdateStudioSessionMappingInput struct { 15154 _ struct{} `type:"structure"` 15155 15156 // The globally unique identifier (GUID) of the user or group. For more information, 15157 // see UserId (https://docs.aws.amazon.com/singlesignon/latest/IdentityStoreAPIReference/API_User.html#singlesignon-Type-User-UserId) 15158 // and GroupId (https://docs.aws.amazon.com/singlesignon/latest/IdentityStoreAPIReference/API_Group.html#singlesignon-Type-Group-GroupId) 15159 // in the AWS SSO Identity Store API Reference. Either IdentityName or IdentityId 15160 // must be specified. 15161 IdentityId *string `type:"string"` 15162 15163 // The name of the user or group to update. For more information, see UserName 15164 // (https://docs.aws.amazon.com/singlesignon/latest/IdentityStoreAPIReference/API_User.html#singlesignon-Type-User-UserId) 15165 // and DisplayName (https://docs.aws.amazon.com/singlesignon/latest/IdentityStoreAPIReference/API_Group.html#singlesignon-Type-Group-DisplayName) 15166 // in the AWS SSO Identity Store API Reference. Either IdentityName or IdentityId 15167 // must be specified. 15168 IdentityName *string `type:"string"` 15169 15170 // Specifies whether the identity to update is a user or a group. 15171 // 15172 // IdentityType is a required field 15173 IdentityType *string `type:"string" required:"true" enum:"IdentityType"` 15174 15175 // The Amazon Resource Name (ARN) of the session policy to associate with the 15176 // specified user or group. 15177 // 15178 // SessionPolicyArn is a required field 15179 SessionPolicyArn *string `type:"string" required:"true"` 15180 15181 // The ID of the EMR Studio. 15182 // 15183 // StudioId is a required field 15184 StudioId *string `type:"string" required:"true"` 15185} 15186 15187// String returns the string representation 15188func (s UpdateStudioSessionMappingInput) String() string { 15189 return awsutil.Prettify(s) 15190} 15191 15192// GoString returns the string representation 15193func (s UpdateStudioSessionMappingInput) GoString() string { 15194 return s.String() 15195} 15196 15197// Validate inspects the fields of the type to determine if they are valid. 15198func (s *UpdateStudioSessionMappingInput) Validate() error { 15199 invalidParams := request.ErrInvalidParams{Context: "UpdateStudioSessionMappingInput"} 15200 if s.IdentityType == nil { 15201 invalidParams.Add(request.NewErrParamRequired("IdentityType")) 15202 } 15203 if s.SessionPolicyArn == nil { 15204 invalidParams.Add(request.NewErrParamRequired("SessionPolicyArn")) 15205 } 15206 if s.StudioId == nil { 15207 invalidParams.Add(request.NewErrParamRequired("StudioId")) 15208 } 15209 15210 if invalidParams.Len() > 0 { 15211 return invalidParams 15212 } 15213 return nil 15214} 15215 15216// SetIdentityId sets the IdentityId field's value. 15217func (s *UpdateStudioSessionMappingInput) SetIdentityId(v string) *UpdateStudioSessionMappingInput { 15218 s.IdentityId = &v 15219 return s 15220} 15221 15222// SetIdentityName sets the IdentityName field's value. 15223func (s *UpdateStudioSessionMappingInput) SetIdentityName(v string) *UpdateStudioSessionMappingInput { 15224 s.IdentityName = &v 15225 return s 15226} 15227 15228// SetIdentityType sets the IdentityType field's value. 15229func (s *UpdateStudioSessionMappingInput) SetIdentityType(v string) *UpdateStudioSessionMappingInput { 15230 s.IdentityType = &v 15231 return s 15232} 15233 15234// SetSessionPolicyArn sets the SessionPolicyArn field's value. 15235func (s *UpdateStudioSessionMappingInput) SetSessionPolicyArn(v string) *UpdateStudioSessionMappingInput { 15236 s.SessionPolicyArn = &v 15237 return s 15238} 15239 15240// SetStudioId sets the StudioId field's value. 15241func (s *UpdateStudioSessionMappingInput) SetStudioId(v string) *UpdateStudioSessionMappingInput { 15242 s.StudioId = &v 15243 return s 15244} 15245 15246type UpdateStudioSessionMappingOutput struct { 15247 _ struct{} `type:"structure"` 15248} 15249 15250// String returns the string representation 15251func (s UpdateStudioSessionMappingOutput) String() string { 15252 return awsutil.Prettify(s) 15253} 15254 15255// GoString returns the string representation 15256func (s UpdateStudioSessionMappingOutput) GoString() string { 15257 return s.String() 15258} 15259 15260// EBS volume specifications such as volume type, IOPS, and size (GiB) that 15261// will be requested for the EBS volume attached to an EC2 instance in the cluster. 15262type VolumeSpecification struct { 15263 _ struct{} `type:"structure"` 15264 15265 // The number of I/O operations per second (IOPS) that the volume supports. 15266 Iops *int64 `type:"integer"` 15267 15268 // The volume size, in gibibytes (GiB). This can be a number from 1 - 1024. 15269 // If the volume type is EBS-optimized, the minimum value is 10. 15270 // 15271 // SizeInGB is a required field 15272 SizeInGB *int64 `type:"integer" required:"true"` 15273 15274 // The volume type. Volume types supported are gp2, io1, standard. 15275 // 15276 // VolumeType is a required field 15277 VolumeType *string `type:"string" required:"true"` 15278} 15279 15280// String returns the string representation 15281func (s VolumeSpecification) String() string { 15282 return awsutil.Prettify(s) 15283} 15284 15285// GoString returns the string representation 15286func (s VolumeSpecification) GoString() string { 15287 return s.String() 15288} 15289 15290// Validate inspects the fields of the type to determine if they are valid. 15291func (s *VolumeSpecification) Validate() error { 15292 invalidParams := request.ErrInvalidParams{Context: "VolumeSpecification"} 15293 if s.SizeInGB == nil { 15294 invalidParams.Add(request.NewErrParamRequired("SizeInGB")) 15295 } 15296 if s.VolumeType == nil { 15297 invalidParams.Add(request.NewErrParamRequired("VolumeType")) 15298 } 15299 15300 if invalidParams.Len() > 0 { 15301 return invalidParams 15302 } 15303 return nil 15304} 15305 15306// SetIops sets the Iops field's value. 15307func (s *VolumeSpecification) SetIops(v int64) *VolumeSpecification { 15308 s.Iops = &v 15309 return s 15310} 15311 15312// SetSizeInGB sets the SizeInGB field's value. 15313func (s *VolumeSpecification) SetSizeInGB(v int64) *VolumeSpecification { 15314 s.SizeInGB = &v 15315 return s 15316} 15317 15318// SetVolumeType sets the VolumeType field's value. 15319func (s *VolumeSpecification) SetVolumeType(v string) *VolumeSpecification { 15320 s.VolumeType = &v 15321 return s 15322} 15323 15324const ( 15325 // ActionOnFailureTerminateJobFlow is a ActionOnFailure enum value 15326 ActionOnFailureTerminateJobFlow = "TERMINATE_JOB_FLOW" 15327 15328 // ActionOnFailureTerminateCluster is a ActionOnFailure enum value 15329 ActionOnFailureTerminateCluster = "TERMINATE_CLUSTER" 15330 15331 // ActionOnFailureCancelAndWait is a ActionOnFailure enum value 15332 ActionOnFailureCancelAndWait = "CANCEL_AND_WAIT" 15333 15334 // ActionOnFailureContinue is a ActionOnFailure enum value 15335 ActionOnFailureContinue = "CONTINUE" 15336) 15337 15338// ActionOnFailure_Values returns all elements of the ActionOnFailure enum 15339func ActionOnFailure_Values() []string { 15340 return []string{ 15341 ActionOnFailureTerminateJobFlow, 15342 ActionOnFailureTerminateCluster, 15343 ActionOnFailureCancelAndWait, 15344 ActionOnFailureContinue, 15345 } 15346} 15347 15348const ( 15349 // AdjustmentTypeChangeInCapacity is a AdjustmentType enum value 15350 AdjustmentTypeChangeInCapacity = "CHANGE_IN_CAPACITY" 15351 15352 // AdjustmentTypePercentChangeInCapacity is a AdjustmentType enum value 15353 AdjustmentTypePercentChangeInCapacity = "PERCENT_CHANGE_IN_CAPACITY" 15354 15355 // AdjustmentTypeExactCapacity is a AdjustmentType enum value 15356 AdjustmentTypeExactCapacity = "EXACT_CAPACITY" 15357) 15358 15359// AdjustmentType_Values returns all elements of the AdjustmentType enum 15360func AdjustmentType_Values() []string { 15361 return []string{ 15362 AdjustmentTypeChangeInCapacity, 15363 AdjustmentTypePercentChangeInCapacity, 15364 AdjustmentTypeExactCapacity, 15365 } 15366} 15367 15368const ( 15369 // AuthModeSso is a AuthMode enum value 15370 AuthModeSso = "SSO" 15371 15372 // AuthModeIam is a AuthMode enum value 15373 AuthModeIam = "IAM" 15374) 15375 15376// AuthMode_Values returns all elements of the AuthMode enum 15377func AuthMode_Values() []string { 15378 return []string{ 15379 AuthModeSso, 15380 AuthModeIam, 15381 } 15382} 15383 15384const ( 15385 // AutoScalingPolicyStatePending is a AutoScalingPolicyState enum value 15386 AutoScalingPolicyStatePending = "PENDING" 15387 15388 // AutoScalingPolicyStateAttaching is a AutoScalingPolicyState enum value 15389 AutoScalingPolicyStateAttaching = "ATTACHING" 15390 15391 // AutoScalingPolicyStateAttached is a AutoScalingPolicyState enum value 15392 AutoScalingPolicyStateAttached = "ATTACHED" 15393 15394 // AutoScalingPolicyStateDetaching is a AutoScalingPolicyState enum value 15395 AutoScalingPolicyStateDetaching = "DETACHING" 15396 15397 // AutoScalingPolicyStateDetached is a AutoScalingPolicyState enum value 15398 AutoScalingPolicyStateDetached = "DETACHED" 15399 15400 // AutoScalingPolicyStateFailed is a AutoScalingPolicyState enum value 15401 AutoScalingPolicyStateFailed = "FAILED" 15402) 15403 15404// AutoScalingPolicyState_Values returns all elements of the AutoScalingPolicyState enum 15405func AutoScalingPolicyState_Values() []string { 15406 return []string{ 15407 AutoScalingPolicyStatePending, 15408 AutoScalingPolicyStateAttaching, 15409 AutoScalingPolicyStateAttached, 15410 AutoScalingPolicyStateDetaching, 15411 AutoScalingPolicyStateDetached, 15412 AutoScalingPolicyStateFailed, 15413 } 15414} 15415 15416const ( 15417 // AutoScalingPolicyStateChangeReasonCodeUserRequest is a AutoScalingPolicyStateChangeReasonCode enum value 15418 AutoScalingPolicyStateChangeReasonCodeUserRequest = "USER_REQUEST" 15419 15420 // AutoScalingPolicyStateChangeReasonCodeProvisionFailure is a AutoScalingPolicyStateChangeReasonCode enum value 15421 AutoScalingPolicyStateChangeReasonCodeProvisionFailure = "PROVISION_FAILURE" 15422 15423 // AutoScalingPolicyStateChangeReasonCodeCleanupFailure is a AutoScalingPolicyStateChangeReasonCode enum value 15424 AutoScalingPolicyStateChangeReasonCodeCleanupFailure = "CLEANUP_FAILURE" 15425) 15426 15427// AutoScalingPolicyStateChangeReasonCode_Values returns all elements of the AutoScalingPolicyStateChangeReasonCode enum 15428func AutoScalingPolicyStateChangeReasonCode_Values() []string { 15429 return []string{ 15430 AutoScalingPolicyStateChangeReasonCodeUserRequest, 15431 AutoScalingPolicyStateChangeReasonCodeProvisionFailure, 15432 AutoScalingPolicyStateChangeReasonCodeCleanupFailure, 15433 } 15434} 15435 15436const ( 15437 // CancelStepsRequestStatusSubmitted is a CancelStepsRequestStatus enum value 15438 CancelStepsRequestStatusSubmitted = "SUBMITTED" 15439 15440 // CancelStepsRequestStatusFailed is a CancelStepsRequestStatus enum value 15441 CancelStepsRequestStatusFailed = "FAILED" 15442) 15443 15444// CancelStepsRequestStatus_Values returns all elements of the CancelStepsRequestStatus enum 15445func CancelStepsRequestStatus_Values() []string { 15446 return []string{ 15447 CancelStepsRequestStatusSubmitted, 15448 CancelStepsRequestStatusFailed, 15449 } 15450} 15451 15452const ( 15453 // ClusterStateStarting is a ClusterState enum value 15454 ClusterStateStarting = "STARTING" 15455 15456 // ClusterStateBootstrapping is a ClusterState enum value 15457 ClusterStateBootstrapping = "BOOTSTRAPPING" 15458 15459 // ClusterStateRunning is a ClusterState enum value 15460 ClusterStateRunning = "RUNNING" 15461 15462 // ClusterStateWaiting is a ClusterState enum value 15463 ClusterStateWaiting = "WAITING" 15464 15465 // ClusterStateTerminating is a ClusterState enum value 15466 ClusterStateTerminating = "TERMINATING" 15467 15468 // ClusterStateTerminated is a ClusterState enum value 15469 ClusterStateTerminated = "TERMINATED" 15470 15471 // ClusterStateTerminatedWithErrors is a ClusterState enum value 15472 ClusterStateTerminatedWithErrors = "TERMINATED_WITH_ERRORS" 15473) 15474 15475// ClusterState_Values returns all elements of the ClusterState enum 15476func ClusterState_Values() []string { 15477 return []string{ 15478 ClusterStateStarting, 15479 ClusterStateBootstrapping, 15480 ClusterStateRunning, 15481 ClusterStateWaiting, 15482 ClusterStateTerminating, 15483 ClusterStateTerminated, 15484 ClusterStateTerminatedWithErrors, 15485 } 15486} 15487 15488const ( 15489 // ClusterStateChangeReasonCodeInternalError is a ClusterStateChangeReasonCode enum value 15490 ClusterStateChangeReasonCodeInternalError = "INTERNAL_ERROR" 15491 15492 // ClusterStateChangeReasonCodeValidationError is a ClusterStateChangeReasonCode enum value 15493 ClusterStateChangeReasonCodeValidationError = "VALIDATION_ERROR" 15494 15495 // ClusterStateChangeReasonCodeInstanceFailure is a ClusterStateChangeReasonCode enum value 15496 ClusterStateChangeReasonCodeInstanceFailure = "INSTANCE_FAILURE" 15497 15498 // ClusterStateChangeReasonCodeInstanceFleetTimeout is a ClusterStateChangeReasonCode enum value 15499 ClusterStateChangeReasonCodeInstanceFleetTimeout = "INSTANCE_FLEET_TIMEOUT" 15500 15501 // ClusterStateChangeReasonCodeBootstrapFailure is a ClusterStateChangeReasonCode enum value 15502 ClusterStateChangeReasonCodeBootstrapFailure = "BOOTSTRAP_FAILURE" 15503 15504 // ClusterStateChangeReasonCodeUserRequest is a ClusterStateChangeReasonCode enum value 15505 ClusterStateChangeReasonCodeUserRequest = "USER_REQUEST" 15506 15507 // ClusterStateChangeReasonCodeStepFailure is a ClusterStateChangeReasonCode enum value 15508 ClusterStateChangeReasonCodeStepFailure = "STEP_FAILURE" 15509 15510 // ClusterStateChangeReasonCodeAllStepsCompleted is a ClusterStateChangeReasonCode enum value 15511 ClusterStateChangeReasonCodeAllStepsCompleted = "ALL_STEPS_COMPLETED" 15512) 15513 15514// ClusterStateChangeReasonCode_Values returns all elements of the ClusterStateChangeReasonCode enum 15515func ClusterStateChangeReasonCode_Values() []string { 15516 return []string{ 15517 ClusterStateChangeReasonCodeInternalError, 15518 ClusterStateChangeReasonCodeValidationError, 15519 ClusterStateChangeReasonCodeInstanceFailure, 15520 ClusterStateChangeReasonCodeInstanceFleetTimeout, 15521 ClusterStateChangeReasonCodeBootstrapFailure, 15522 ClusterStateChangeReasonCodeUserRequest, 15523 ClusterStateChangeReasonCodeStepFailure, 15524 ClusterStateChangeReasonCodeAllStepsCompleted, 15525 } 15526} 15527 15528const ( 15529 // ComparisonOperatorGreaterThanOrEqual is a ComparisonOperator enum value 15530 ComparisonOperatorGreaterThanOrEqual = "GREATER_THAN_OR_EQUAL" 15531 15532 // ComparisonOperatorGreaterThan is a ComparisonOperator enum value 15533 ComparisonOperatorGreaterThan = "GREATER_THAN" 15534 15535 // ComparisonOperatorLessThan is a ComparisonOperator enum value 15536 ComparisonOperatorLessThan = "LESS_THAN" 15537 15538 // ComparisonOperatorLessThanOrEqual is a ComparisonOperator enum value 15539 ComparisonOperatorLessThanOrEqual = "LESS_THAN_OR_EQUAL" 15540) 15541 15542// ComparisonOperator_Values returns all elements of the ComparisonOperator enum 15543func ComparisonOperator_Values() []string { 15544 return []string{ 15545 ComparisonOperatorGreaterThanOrEqual, 15546 ComparisonOperatorGreaterThan, 15547 ComparisonOperatorLessThan, 15548 ComparisonOperatorLessThanOrEqual, 15549 } 15550} 15551 15552const ( 15553 // ComputeLimitsUnitTypeInstanceFleetUnits is a ComputeLimitsUnitType enum value 15554 ComputeLimitsUnitTypeInstanceFleetUnits = "InstanceFleetUnits" 15555 15556 // ComputeLimitsUnitTypeInstances is a ComputeLimitsUnitType enum value 15557 ComputeLimitsUnitTypeInstances = "Instances" 15558 15559 // ComputeLimitsUnitTypeVcpu is a ComputeLimitsUnitType enum value 15560 ComputeLimitsUnitTypeVcpu = "VCPU" 15561) 15562 15563// ComputeLimitsUnitType_Values returns all elements of the ComputeLimitsUnitType enum 15564func ComputeLimitsUnitType_Values() []string { 15565 return []string{ 15566 ComputeLimitsUnitTypeInstanceFleetUnits, 15567 ComputeLimitsUnitTypeInstances, 15568 ComputeLimitsUnitTypeVcpu, 15569 } 15570} 15571 15572const ( 15573 // ExecutionEngineTypeEmr is a ExecutionEngineType enum value 15574 ExecutionEngineTypeEmr = "EMR" 15575) 15576 15577// ExecutionEngineType_Values returns all elements of the ExecutionEngineType enum 15578func ExecutionEngineType_Values() []string { 15579 return []string{ 15580 ExecutionEngineTypeEmr, 15581 } 15582} 15583 15584const ( 15585 // IdentityTypeUser is a IdentityType enum value 15586 IdentityTypeUser = "USER" 15587 15588 // IdentityTypeGroup is a IdentityType enum value 15589 IdentityTypeGroup = "GROUP" 15590) 15591 15592// IdentityType_Values returns all elements of the IdentityType enum 15593func IdentityType_Values() []string { 15594 return []string{ 15595 IdentityTypeUser, 15596 IdentityTypeGroup, 15597 } 15598} 15599 15600const ( 15601 // InstanceCollectionTypeInstanceFleet is a InstanceCollectionType enum value 15602 InstanceCollectionTypeInstanceFleet = "INSTANCE_FLEET" 15603 15604 // InstanceCollectionTypeInstanceGroup is a InstanceCollectionType enum value 15605 InstanceCollectionTypeInstanceGroup = "INSTANCE_GROUP" 15606) 15607 15608// InstanceCollectionType_Values returns all elements of the InstanceCollectionType enum 15609func InstanceCollectionType_Values() []string { 15610 return []string{ 15611 InstanceCollectionTypeInstanceFleet, 15612 InstanceCollectionTypeInstanceGroup, 15613 } 15614} 15615 15616const ( 15617 // InstanceFleetStateProvisioning is a InstanceFleetState enum value 15618 InstanceFleetStateProvisioning = "PROVISIONING" 15619 15620 // InstanceFleetStateBootstrapping is a InstanceFleetState enum value 15621 InstanceFleetStateBootstrapping = "BOOTSTRAPPING" 15622 15623 // InstanceFleetStateRunning is a InstanceFleetState enum value 15624 InstanceFleetStateRunning = "RUNNING" 15625 15626 // InstanceFleetStateResizing is a InstanceFleetState enum value 15627 InstanceFleetStateResizing = "RESIZING" 15628 15629 // InstanceFleetStateSuspended is a InstanceFleetState enum value 15630 InstanceFleetStateSuspended = "SUSPENDED" 15631 15632 // InstanceFleetStateTerminating is a InstanceFleetState enum value 15633 InstanceFleetStateTerminating = "TERMINATING" 15634 15635 // InstanceFleetStateTerminated is a InstanceFleetState enum value 15636 InstanceFleetStateTerminated = "TERMINATED" 15637) 15638 15639// InstanceFleetState_Values returns all elements of the InstanceFleetState enum 15640func InstanceFleetState_Values() []string { 15641 return []string{ 15642 InstanceFleetStateProvisioning, 15643 InstanceFleetStateBootstrapping, 15644 InstanceFleetStateRunning, 15645 InstanceFleetStateResizing, 15646 InstanceFleetStateSuspended, 15647 InstanceFleetStateTerminating, 15648 InstanceFleetStateTerminated, 15649 } 15650} 15651 15652const ( 15653 // InstanceFleetStateChangeReasonCodeInternalError is a InstanceFleetStateChangeReasonCode enum value 15654 InstanceFleetStateChangeReasonCodeInternalError = "INTERNAL_ERROR" 15655 15656 // InstanceFleetStateChangeReasonCodeValidationError is a InstanceFleetStateChangeReasonCode enum value 15657 InstanceFleetStateChangeReasonCodeValidationError = "VALIDATION_ERROR" 15658 15659 // InstanceFleetStateChangeReasonCodeInstanceFailure is a InstanceFleetStateChangeReasonCode enum value 15660 InstanceFleetStateChangeReasonCodeInstanceFailure = "INSTANCE_FAILURE" 15661 15662 // InstanceFleetStateChangeReasonCodeClusterTerminated is a InstanceFleetStateChangeReasonCode enum value 15663 InstanceFleetStateChangeReasonCodeClusterTerminated = "CLUSTER_TERMINATED" 15664) 15665 15666// InstanceFleetStateChangeReasonCode_Values returns all elements of the InstanceFleetStateChangeReasonCode enum 15667func InstanceFleetStateChangeReasonCode_Values() []string { 15668 return []string{ 15669 InstanceFleetStateChangeReasonCodeInternalError, 15670 InstanceFleetStateChangeReasonCodeValidationError, 15671 InstanceFleetStateChangeReasonCodeInstanceFailure, 15672 InstanceFleetStateChangeReasonCodeClusterTerminated, 15673 } 15674} 15675 15676const ( 15677 // InstanceFleetTypeMaster is a InstanceFleetType enum value 15678 InstanceFleetTypeMaster = "MASTER" 15679 15680 // InstanceFleetTypeCore is a InstanceFleetType enum value 15681 InstanceFleetTypeCore = "CORE" 15682 15683 // InstanceFleetTypeTask is a InstanceFleetType enum value 15684 InstanceFleetTypeTask = "TASK" 15685) 15686 15687// InstanceFleetType_Values returns all elements of the InstanceFleetType enum 15688func InstanceFleetType_Values() []string { 15689 return []string{ 15690 InstanceFleetTypeMaster, 15691 InstanceFleetTypeCore, 15692 InstanceFleetTypeTask, 15693 } 15694} 15695 15696const ( 15697 // InstanceGroupStateProvisioning is a InstanceGroupState enum value 15698 InstanceGroupStateProvisioning = "PROVISIONING" 15699 15700 // InstanceGroupStateBootstrapping is a InstanceGroupState enum value 15701 InstanceGroupStateBootstrapping = "BOOTSTRAPPING" 15702 15703 // InstanceGroupStateRunning is a InstanceGroupState enum value 15704 InstanceGroupStateRunning = "RUNNING" 15705 15706 // InstanceGroupStateReconfiguring is a InstanceGroupState enum value 15707 InstanceGroupStateReconfiguring = "RECONFIGURING" 15708 15709 // InstanceGroupStateResizing is a InstanceGroupState enum value 15710 InstanceGroupStateResizing = "RESIZING" 15711 15712 // InstanceGroupStateSuspended is a InstanceGroupState enum value 15713 InstanceGroupStateSuspended = "SUSPENDED" 15714 15715 // InstanceGroupStateTerminating is a InstanceGroupState enum value 15716 InstanceGroupStateTerminating = "TERMINATING" 15717 15718 // InstanceGroupStateTerminated is a InstanceGroupState enum value 15719 InstanceGroupStateTerminated = "TERMINATED" 15720 15721 // InstanceGroupStateArrested is a InstanceGroupState enum value 15722 InstanceGroupStateArrested = "ARRESTED" 15723 15724 // InstanceGroupStateShuttingDown is a InstanceGroupState enum value 15725 InstanceGroupStateShuttingDown = "SHUTTING_DOWN" 15726 15727 // InstanceGroupStateEnded is a InstanceGroupState enum value 15728 InstanceGroupStateEnded = "ENDED" 15729) 15730 15731// InstanceGroupState_Values returns all elements of the InstanceGroupState enum 15732func InstanceGroupState_Values() []string { 15733 return []string{ 15734 InstanceGroupStateProvisioning, 15735 InstanceGroupStateBootstrapping, 15736 InstanceGroupStateRunning, 15737 InstanceGroupStateReconfiguring, 15738 InstanceGroupStateResizing, 15739 InstanceGroupStateSuspended, 15740 InstanceGroupStateTerminating, 15741 InstanceGroupStateTerminated, 15742 InstanceGroupStateArrested, 15743 InstanceGroupStateShuttingDown, 15744 InstanceGroupStateEnded, 15745 } 15746} 15747 15748const ( 15749 // InstanceGroupStateChangeReasonCodeInternalError is a InstanceGroupStateChangeReasonCode enum value 15750 InstanceGroupStateChangeReasonCodeInternalError = "INTERNAL_ERROR" 15751 15752 // InstanceGroupStateChangeReasonCodeValidationError is a InstanceGroupStateChangeReasonCode enum value 15753 InstanceGroupStateChangeReasonCodeValidationError = "VALIDATION_ERROR" 15754 15755 // InstanceGroupStateChangeReasonCodeInstanceFailure is a InstanceGroupStateChangeReasonCode enum value 15756 InstanceGroupStateChangeReasonCodeInstanceFailure = "INSTANCE_FAILURE" 15757 15758 // InstanceGroupStateChangeReasonCodeClusterTerminated is a InstanceGroupStateChangeReasonCode enum value 15759 InstanceGroupStateChangeReasonCodeClusterTerminated = "CLUSTER_TERMINATED" 15760) 15761 15762// InstanceGroupStateChangeReasonCode_Values returns all elements of the InstanceGroupStateChangeReasonCode enum 15763func InstanceGroupStateChangeReasonCode_Values() []string { 15764 return []string{ 15765 InstanceGroupStateChangeReasonCodeInternalError, 15766 InstanceGroupStateChangeReasonCodeValidationError, 15767 InstanceGroupStateChangeReasonCodeInstanceFailure, 15768 InstanceGroupStateChangeReasonCodeClusterTerminated, 15769 } 15770} 15771 15772const ( 15773 // InstanceGroupTypeMaster is a InstanceGroupType enum value 15774 InstanceGroupTypeMaster = "MASTER" 15775 15776 // InstanceGroupTypeCore is a InstanceGroupType enum value 15777 InstanceGroupTypeCore = "CORE" 15778 15779 // InstanceGroupTypeTask is a InstanceGroupType enum value 15780 InstanceGroupTypeTask = "TASK" 15781) 15782 15783// InstanceGroupType_Values returns all elements of the InstanceGroupType enum 15784func InstanceGroupType_Values() []string { 15785 return []string{ 15786 InstanceGroupTypeMaster, 15787 InstanceGroupTypeCore, 15788 InstanceGroupTypeTask, 15789 } 15790} 15791 15792const ( 15793 // InstanceRoleTypeMaster is a InstanceRoleType enum value 15794 InstanceRoleTypeMaster = "MASTER" 15795 15796 // InstanceRoleTypeCore is a InstanceRoleType enum value 15797 InstanceRoleTypeCore = "CORE" 15798 15799 // InstanceRoleTypeTask is a InstanceRoleType enum value 15800 InstanceRoleTypeTask = "TASK" 15801) 15802 15803// InstanceRoleType_Values returns all elements of the InstanceRoleType enum 15804func InstanceRoleType_Values() []string { 15805 return []string{ 15806 InstanceRoleTypeMaster, 15807 InstanceRoleTypeCore, 15808 InstanceRoleTypeTask, 15809 } 15810} 15811 15812const ( 15813 // InstanceStateAwaitingFulfillment is a InstanceState enum value 15814 InstanceStateAwaitingFulfillment = "AWAITING_FULFILLMENT" 15815 15816 // InstanceStateProvisioning is a InstanceState enum value 15817 InstanceStateProvisioning = "PROVISIONING" 15818 15819 // InstanceStateBootstrapping is a InstanceState enum value 15820 InstanceStateBootstrapping = "BOOTSTRAPPING" 15821 15822 // InstanceStateRunning is a InstanceState enum value 15823 InstanceStateRunning = "RUNNING" 15824 15825 // InstanceStateTerminated is a InstanceState enum value 15826 InstanceStateTerminated = "TERMINATED" 15827) 15828 15829// InstanceState_Values returns all elements of the InstanceState enum 15830func InstanceState_Values() []string { 15831 return []string{ 15832 InstanceStateAwaitingFulfillment, 15833 InstanceStateProvisioning, 15834 InstanceStateBootstrapping, 15835 InstanceStateRunning, 15836 InstanceStateTerminated, 15837 } 15838} 15839 15840const ( 15841 // InstanceStateChangeReasonCodeInternalError is a InstanceStateChangeReasonCode enum value 15842 InstanceStateChangeReasonCodeInternalError = "INTERNAL_ERROR" 15843 15844 // InstanceStateChangeReasonCodeValidationError is a InstanceStateChangeReasonCode enum value 15845 InstanceStateChangeReasonCodeValidationError = "VALIDATION_ERROR" 15846 15847 // InstanceStateChangeReasonCodeInstanceFailure is a InstanceStateChangeReasonCode enum value 15848 InstanceStateChangeReasonCodeInstanceFailure = "INSTANCE_FAILURE" 15849 15850 // InstanceStateChangeReasonCodeBootstrapFailure is a InstanceStateChangeReasonCode enum value 15851 InstanceStateChangeReasonCodeBootstrapFailure = "BOOTSTRAP_FAILURE" 15852 15853 // InstanceStateChangeReasonCodeClusterTerminated is a InstanceStateChangeReasonCode enum value 15854 InstanceStateChangeReasonCodeClusterTerminated = "CLUSTER_TERMINATED" 15855) 15856 15857// InstanceStateChangeReasonCode_Values returns all elements of the InstanceStateChangeReasonCode enum 15858func InstanceStateChangeReasonCode_Values() []string { 15859 return []string{ 15860 InstanceStateChangeReasonCodeInternalError, 15861 InstanceStateChangeReasonCodeValidationError, 15862 InstanceStateChangeReasonCodeInstanceFailure, 15863 InstanceStateChangeReasonCodeBootstrapFailure, 15864 InstanceStateChangeReasonCodeClusterTerminated, 15865 } 15866} 15867 15868// The type of instance. 15869const ( 15870 // JobFlowExecutionStateStarting is a JobFlowExecutionState enum value 15871 JobFlowExecutionStateStarting = "STARTING" 15872 15873 // JobFlowExecutionStateBootstrapping is a JobFlowExecutionState enum value 15874 JobFlowExecutionStateBootstrapping = "BOOTSTRAPPING" 15875 15876 // JobFlowExecutionStateRunning is a JobFlowExecutionState enum value 15877 JobFlowExecutionStateRunning = "RUNNING" 15878 15879 // JobFlowExecutionStateWaiting is a JobFlowExecutionState enum value 15880 JobFlowExecutionStateWaiting = "WAITING" 15881 15882 // JobFlowExecutionStateShuttingDown is a JobFlowExecutionState enum value 15883 JobFlowExecutionStateShuttingDown = "SHUTTING_DOWN" 15884 15885 // JobFlowExecutionStateTerminated is a JobFlowExecutionState enum value 15886 JobFlowExecutionStateTerminated = "TERMINATED" 15887 15888 // JobFlowExecutionStateCompleted is a JobFlowExecutionState enum value 15889 JobFlowExecutionStateCompleted = "COMPLETED" 15890 15891 // JobFlowExecutionStateFailed is a JobFlowExecutionState enum value 15892 JobFlowExecutionStateFailed = "FAILED" 15893) 15894 15895// JobFlowExecutionState_Values returns all elements of the JobFlowExecutionState enum 15896func JobFlowExecutionState_Values() []string { 15897 return []string{ 15898 JobFlowExecutionStateStarting, 15899 JobFlowExecutionStateBootstrapping, 15900 JobFlowExecutionStateRunning, 15901 JobFlowExecutionStateWaiting, 15902 JobFlowExecutionStateShuttingDown, 15903 JobFlowExecutionStateTerminated, 15904 JobFlowExecutionStateCompleted, 15905 JobFlowExecutionStateFailed, 15906 } 15907} 15908 15909const ( 15910 // MarketTypeOnDemand is a MarketType enum value 15911 MarketTypeOnDemand = "ON_DEMAND" 15912 15913 // MarketTypeSpot is a MarketType enum value 15914 MarketTypeSpot = "SPOT" 15915) 15916 15917// MarketType_Values returns all elements of the MarketType enum 15918func MarketType_Values() []string { 15919 return []string{ 15920 MarketTypeOnDemand, 15921 MarketTypeSpot, 15922 } 15923} 15924 15925const ( 15926 // NotebookExecutionStatusStartPending is a NotebookExecutionStatus enum value 15927 NotebookExecutionStatusStartPending = "START_PENDING" 15928 15929 // NotebookExecutionStatusStarting is a NotebookExecutionStatus enum value 15930 NotebookExecutionStatusStarting = "STARTING" 15931 15932 // NotebookExecutionStatusRunning is a NotebookExecutionStatus enum value 15933 NotebookExecutionStatusRunning = "RUNNING" 15934 15935 // NotebookExecutionStatusFinishing is a NotebookExecutionStatus enum value 15936 NotebookExecutionStatusFinishing = "FINISHING" 15937 15938 // NotebookExecutionStatusFinished is a NotebookExecutionStatus enum value 15939 NotebookExecutionStatusFinished = "FINISHED" 15940 15941 // NotebookExecutionStatusFailing is a NotebookExecutionStatus enum value 15942 NotebookExecutionStatusFailing = "FAILING" 15943 15944 // NotebookExecutionStatusFailed is a NotebookExecutionStatus enum value 15945 NotebookExecutionStatusFailed = "FAILED" 15946 15947 // NotebookExecutionStatusStopPending is a NotebookExecutionStatus enum value 15948 NotebookExecutionStatusStopPending = "STOP_PENDING" 15949 15950 // NotebookExecutionStatusStopping is a NotebookExecutionStatus enum value 15951 NotebookExecutionStatusStopping = "STOPPING" 15952 15953 // NotebookExecutionStatusStopped is a NotebookExecutionStatus enum value 15954 NotebookExecutionStatusStopped = "STOPPED" 15955) 15956 15957// NotebookExecutionStatus_Values returns all elements of the NotebookExecutionStatus enum 15958func NotebookExecutionStatus_Values() []string { 15959 return []string{ 15960 NotebookExecutionStatusStartPending, 15961 NotebookExecutionStatusStarting, 15962 NotebookExecutionStatusRunning, 15963 NotebookExecutionStatusFinishing, 15964 NotebookExecutionStatusFinished, 15965 NotebookExecutionStatusFailing, 15966 NotebookExecutionStatusFailed, 15967 NotebookExecutionStatusStopPending, 15968 NotebookExecutionStatusStopping, 15969 NotebookExecutionStatusStopped, 15970 } 15971} 15972 15973const ( 15974 // OnDemandProvisioningAllocationStrategyLowestPrice is a OnDemandProvisioningAllocationStrategy enum value 15975 OnDemandProvisioningAllocationStrategyLowestPrice = "lowest-price" 15976) 15977 15978// OnDemandProvisioningAllocationStrategy_Values returns all elements of the OnDemandProvisioningAllocationStrategy enum 15979func OnDemandProvisioningAllocationStrategy_Values() []string { 15980 return []string{ 15981 OnDemandProvisioningAllocationStrategyLowestPrice, 15982 } 15983} 15984 15985const ( 15986 // PlacementGroupStrategySpread is a PlacementGroupStrategy enum value 15987 PlacementGroupStrategySpread = "SPREAD" 15988 15989 // PlacementGroupStrategyPartition is a PlacementGroupStrategy enum value 15990 PlacementGroupStrategyPartition = "PARTITION" 15991 15992 // PlacementGroupStrategyCluster is a PlacementGroupStrategy enum value 15993 PlacementGroupStrategyCluster = "CLUSTER" 15994 15995 // PlacementGroupStrategyNone is a PlacementGroupStrategy enum value 15996 PlacementGroupStrategyNone = "NONE" 15997) 15998 15999// PlacementGroupStrategy_Values returns all elements of the PlacementGroupStrategy enum 16000func PlacementGroupStrategy_Values() []string { 16001 return []string{ 16002 PlacementGroupStrategySpread, 16003 PlacementGroupStrategyPartition, 16004 PlacementGroupStrategyCluster, 16005 PlacementGroupStrategyNone, 16006 } 16007} 16008 16009const ( 16010 // RepoUpgradeOnBootSecurity is a RepoUpgradeOnBoot enum value 16011 RepoUpgradeOnBootSecurity = "SECURITY" 16012 16013 // RepoUpgradeOnBootNone is a RepoUpgradeOnBoot enum value 16014 RepoUpgradeOnBootNone = "NONE" 16015) 16016 16017// RepoUpgradeOnBoot_Values returns all elements of the RepoUpgradeOnBoot enum 16018func RepoUpgradeOnBoot_Values() []string { 16019 return []string{ 16020 RepoUpgradeOnBootSecurity, 16021 RepoUpgradeOnBootNone, 16022 } 16023} 16024 16025const ( 16026 // ScaleDownBehaviorTerminateAtInstanceHour is a ScaleDownBehavior enum value 16027 ScaleDownBehaviorTerminateAtInstanceHour = "TERMINATE_AT_INSTANCE_HOUR" 16028 16029 // ScaleDownBehaviorTerminateAtTaskCompletion is a ScaleDownBehavior enum value 16030 ScaleDownBehaviorTerminateAtTaskCompletion = "TERMINATE_AT_TASK_COMPLETION" 16031) 16032 16033// ScaleDownBehavior_Values returns all elements of the ScaleDownBehavior enum 16034func ScaleDownBehavior_Values() []string { 16035 return []string{ 16036 ScaleDownBehaviorTerminateAtInstanceHour, 16037 ScaleDownBehaviorTerminateAtTaskCompletion, 16038 } 16039} 16040 16041const ( 16042 // SpotProvisioningAllocationStrategyCapacityOptimized is a SpotProvisioningAllocationStrategy enum value 16043 SpotProvisioningAllocationStrategyCapacityOptimized = "capacity-optimized" 16044) 16045 16046// SpotProvisioningAllocationStrategy_Values returns all elements of the SpotProvisioningAllocationStrategy enum 16047func SpotProvisioningAllocationStrategy_Values() []string { 16048 return []string{ 16049 SpotProvisioningAllocationStrategyCapacityOptimized, 16050 } 16051} 16052 16053const ( 16054 // SpotProvisioningTimeoutActionSwitchToOnDemand is a SpotProvisioningTimeoutAction enum value 16055 SpotProvisioningTimeoutActionSwitchToOnDemand = "SWITCH_TO_ON_DEMAND" 16056 16057 // SpotProvisioningTimeoutActionTerminateCluster is a SpotProvisioningTimeoutAction enum value 16058 SpotProvisioningTimeoutActionTerminateCluster = "TERMINATE_CLUSTER" 16059) 16060 16061// SpotProvisioningTimeoutAction_Values returns all elements of the SpotProvisioningTimeoutAction enum 16062func SpotProvisioningTimeoutAction_Values() []string { 16063 return []string{ 16064 SpotProvisioningTimeoutActionSwitchToOnDemand, 16065 SpotProvisioningTimeoutActionTerminateCluster, 16066 } 16067} 16068 16069const ( 16070 // StatisticSampleCount is a Statistic enum value 16071 StatisticSampleCount = "SAMPLE_COUNT" 16072 16073 // StatisticAverage is a Statistic enum value 16074 StatisticAverage = "AVERAGE" 16075 16076 // StatisticSum is a Statistic enum value 16077 StatisticSum = "SUM" 16078 16079 // StatisticMinimum is a Statistic enum value 16080 StatisticMinimum = "MINIMUM" 16081 16082 // StatisticMaximum is a Statistic enum value 16083 StatisticMaximum = "MAXIMUM" 16084) 16085 16086// Statistic_Values returns all elements of the Statistic enum 16087func Statistic_Values() []string { 16088 return []string{ 16089 StatisticSampleCount, 16090 StatisticAverage, 16091 StatisticSum, 16092 StatisticMinimum, 16093 StatisticMaximum, 16094 } 16095} 16096 16097const ( 16098 // StepCancellationOptionSendInterrupt is a StepCancellationOption enum value 16099 StepCancellationOptionSendInterrupt = "SEND_INTERRUPT" 16100 16101 // StepCancellationOptionTerminateProcess is a StepCancellationOption enum value 16102 StepCancellationOptionTerminateProcess = "TERMINATE_PROCESS" 16103) 16104 16105// StepCancellationOption_Values returns all elements of the StepCancellationOption enum 16106func StepCancellationOption_Values() []string { 16107 return []string{ 16108 StepCancellationOptionSendInterrupt, 16109 StepCancellationOptionTerminateProcess, 16110 } 16111} 16112 16113const ( 16114 // StepExecutionStatePending is a StepExecutionState enum value 16115 StepExecutionStatePending = "PENDING" 16116 16117 // StepExecutionStateRunning is a StepExecutionState enum value 16118 StepExecutionStateRunning = "RUNNING" 16119 16120 // StepExecutionStateContinue is a StepExecutionState enum value 16121 StepExecutionStateContinue = "CONTINUE" 16122 16123 // StepExecutionStateCompleted is a StepExecutionState enum value 16124 StepExecutionStateCompleted = "COMPLETED" 16125 16126 // StepExecutionStateCancelled is a StepExecutionState enum value 16127 StepExecutionStateCancelled = "CANCELLED" 16128 16129 // StepExecutionStateFailed is a StepExecutionState enum value 16130 StepExecutionStateFailed = "FAILED" 16131 16132 // StepExecutionStateInterrupted is a StepExecutionState enum value 16133 StepExecutionStateInterrupted = "INTERRUPTED" 16134) 16135 16136// StepExecutionState_Values returns all elements of the StepExecutionState enum 16137func StepExecutionState_Values() []string { 16138 return []string{ 16139 StepExecutionStatePending, 16140 StepExecutionStateRunning, 16141 StepExecutionStateContinue, 16142 StepExecutionStateCompleted, 16143 StepExecutionStateCancelled, 16144 StepExecutionStateFailed, 16145 StepExecutionStateInterrupted, 16146 } 16147} 16148 16149const ( 16150 // StepStatePending is a StepState enum value 16151 StepStatePending = "PENDING" 16152 16153 // StepStateCancelPending is a StepState enum value 16154 StepStateCancelPending = "CANCEL_PENDING" 16155 16156 // StepStateRunning is a StepState enum value 16157 StepStateRunning = "RUNNING" 16158 16159 // StepStateCompleted is a StepState enum value 16160 StepStateCompleted = "COMPLETED" 16161 16162 // StepStateCancelled is a StepState enum value 16163 StepStateCancelled = "CANCELLED" 16164 16165 // StepStateFailed is a StepState enum value 16166 StepStateFailed = "FAILED" 16167 16168 // StepStateInterrupted is a StepState enum value 16169 StepStateInterrupted = "INTERRUPTED" 16170) 16171 16172// StepState_Values returns all elements of the StepState enum 16173func StepState_Values() []string { 16174 return []string{ 16175 StepStatePending, 16176 StepStateCancelPending, 16177 StepStateRunning, 16178 StepStateCompleted, 16179 StepStateCancelled, 16180 StepStateFailed, 16181 StepStateInterrupted, 16182 } 16183} 16184 16185const ( 16186 // StepStateChangeReasonCodeNone is a StepStateChangeReasonCode enum value 16187 StepStateChangeReasonCodeNone = "NONE" 16188) 16189 16190// StepStateChangeReasonCode_Values returns all elements of the StepStateChangeReasonCode enum 16191func StepStateChangeReasonCode_Values() []string { 16192 return []string{ 16193 StepStateChangeReasonCodeNone, 16194 } 16195} 16196 16197const ( 16198 // UnitNone is a Unit enum value 16199 UnitNone = "NONE" 16200 16201 // UnitSeconds is a Unit enum value 16202 UnitSeconds = "SECONDS" 16203 16204 // UnitMicroSeconds is a Unit enum value 16205 UnitMicroSeconds = "MICRO_SECONDS" 16206 16207 // UnitMilliSeconds is a Unit enum value 16208 UnitMilliSeconds = "MILLI_SECONDS" 16209 16210 // UnitBytes is a Unit enum value 16211 UnitBytes = "BYTES" 16212 16213 // UnitKiloBytes is a Unit enum value 16214 UnitKiloBytes = "KILO_BYTES" 16215 16216 // UnitMegaBytes is a Unit enum value 16217 UnitMegaBytes = "MEGA_BYTES" 16218 16219 // UnitGigaBytes is a Unit enum value 16220 UnitGigaBytes = "GIGA_BYTES" 16221 16222 // UnitTeraBytes is a Unit enum value 16223 UnitTeraBytes = "TERA_BYTES" 16224 16225 // UnitBits is a Unit enum value 16226 UnitBits = "BITS" 16227 16228 // UnitKiloBits is a Unit enum value 16229 UnitKiloBits = "KILO_BITS" 16230 16231 // UnitMegaBits is a Unit enum value 16232 UnitMegaBits = "MEGA_BITS" 16233 16234 // UnitGigaBits is a Unit enum value 16235 UnitGigaBits = "GIGA_BITS" 16236 16237 // UnitTeraBits is a Unit enum value 16238 UnitTeraBits = "TERA_BITS" 16239 16240 // UnitPercent is a Unit enum value 16241 UnitPercent = "PERCENT" 16242 16243 // UnitCount is a Unit enum value 16244 UnitCount = "COUNT" 16245 16246 // UnitBytesPerSecond is a Unit enum value 16247 UnitBytesPerSecond = "BYTES_PER_SECOND" 16248 16249 // UnitKiloBytesPerSecond is a Unit enum value 16250 UnitKiloBytesPerSecond = "KILO_BYTES_PER_SECOND" 16251 16252 // UnitMegaBytesPerSecond is a Unit enum value 16253 UnitMegaBytesPerSecond = "MEGA_BYTES_PER_SECOND" 16254 16255 // UnitGigaBytesPerSecond is a Unit enum value 16256 UnitGigaBytesPerSecond = "GIGA_BYTES_PER_SECOND" 16257 16258 // UnitTeraBytesPerSecond is a Unit enum value 16259 UnitTeraBytesPerSecond = "TERA_BYTES_PER_SECOND" 16260 16261 // UnitBitsPerSecond is a Unit enum value 16262 UnitBitsPerSecond = "BITS_PER_SECOND" 16263 16264 // UnitKiloBitsPerSecond is a Unit enum value 16265 UnitKiloBitsPerSecond = "KILO_BITS_PER_SECOND" 16266 16267 // UnitMegaBitsPerSecond is a Unit enum value 16268 UnitMegaBitsPerSecond = "MEGA_BITS_PER_SECOND" 16269 16270 // UnitGigaBitsPerSecond is a Unit enum value 16271 UnitGigaBitsPerSecond = "GIGA_BITS_PER_SECOND" 16272 16273 // UnitTeraBitsPerSecond is a Unit enum value 16274 UnitTeraBitsPerSecond = "TERA_BITS_PER_SECOND" 16275 16276 // UnitCountPerSecond is a Unit enum value 16277 UnitCountPerSecond = "COUNT_PER_SECOND" 16278) 16279 16280// Unit_Values returns all elements of the Unit enum 16281func Unit_Values() []string { 16282 return []string{ 16283 UnitNone, 16284 UnitSeconds, 16285 UnitMicroSeconds, 16286 UnitMilliSeconds, 16287 UnitBytes, 16288 UnitKiloBytes, 16289 UnitMegaBytes, 16290 UnitGigaBytes, 16291 UnitTeraBytes, 16292 UnitBits, 16293 UnitKiloBits, 16294 UnitMegaBits, 16295 UnitGigaBits, 16296 UnitTeraBits, 16297 UnitPercent, 16298 UnitCount, 16299 UnitBytesPerSecond, 16300 UnitKiloBytesPerSecond, 16301 UnitMegaBytesPerSecond, 16302 UnitGigaBytesPerSecond, 16303 UnitTeraBytesPerSecond, 16304 UnitBitsPerSecond, 16305 UnitKiloBitsPerSecond, 16306 UnitMegaBitsPerSecond, 16307 UnitGigaBitsPerSecond, 16308 UnitTeraBitsPerSecond, 16309 UnitCountPerSecond, 16310 } 16311} 16312