1// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. 2 3package emr 4 5import ( 6 "fmt" 7 "time" 8 9 "github.com/aws/aws-sdk-go/aws" 10 "github.com/aws/aws-sdk-go/aws/awsutil" 11 "github.com/aws/aws-sdk-go/aws/request" 12 "github.com/aws/aws-sdk-go/private/protocol" 13 "github.com/aws/aws-sdk-go/private/protocol/jsonrpc" 14) 15 16const opAddInstanceFleet = "AddInstanceFleet" 17 18// AddInstanceFleetRequest generates a "aws/request.Request" representing the 19// client's request for the AddInstanceFleet operation. The "output" return 20// value will be populated with the request's response once the request completes 21// successfully. 22// 23// Use "Send" method on the returned Request to send the API call to the service. 24// the "output" return value is not valid until after Send returns without error. 25// 26// See AddInstanceFleet for more information on using the AddInstanceFleet 27// API call, and error handling. 28// 29// This method is useful when you want to inject custom logic or configuration 30// into the SDK's request lifecycle. Such as custom headers, or retry logic. 31// 32// 33// // Example sending a request using the AddInstanceFleetRequest method. 34// req, resp := client.AddInstanceFleetRequest(params) 35// 36// err := req.Send() 37// if err == nil { // resp is now filled 38// fmt.Println(resp) 39// } 40// 41// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/AddInstanceFleet 42func (c *EMR) AddInstanceFleetRequest(input *AddInstanceFleetInput) (req *request.Request, output *AddInstanceFleetOutput) { 43 op := &request.Operation{ 44 Name: opAddInstanceFleet, 45 HTTPMethod: "POST", 46 HTTPPath: "/", 47 } 48 49 if input == nil { 50 input = &AddInstanceFleetInput{} 51 } 52 53 output = &AddInstanceFleetOutput{} 54 req = c.newRequest(op, input, output) 55 return 56} 57 58// AddInstanceFleet API operation for Amazon EMR. 59// 60// Adds an instance fleet to a running cluster. 61// 62// The instance fleet configuration is available only in Amazon EMR versions 63// 4.8.0 and later, excluding 5.0.x. 64// 65// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 66// with awserr.Error's Code and Message methods to get detailed information about 67// the error. 68// 69// See the AWS API reference guide for Amazon EMR's 70// API operation AddInstanceFleet for usage and error information. 71// 72// Returned Error Types: 73// * InternalServerException 74// This exception occurs when there is an internal failure in the Amazon EMR 75// service. 76// 77// * InvalidRequestException 78// This exception occurs when there is something wrong with user input. 79// 80// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/AddInstanceFleet 81func (c *EMR) AddInstanceFleet(input *AddInstanceFleetInput) (*AddInstanceFleetOutput, error) { 82 req, out := c.AddInstanceFleetRequest(input) 83 return out, req.Send() 84} 85 86// AddInstanceFleetWithContext is the same as AddInstanceFleet with the addition of 87// the ability to pass a context and additional request options. 88// 89// See AddInstanceFleet for details on how to use this API operation. 90// 91// The context must be non-nil and will be used for request cancellation. If 92// the context is nil a panic will occur. In the future the SDK may create 93// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 94// for more information on using Contexts. 95func (c *EMR) AddInstanceFleetWithContext(ctx aws.Context, input *AddInstanceFleetInput, opts ...request.Option) (*AddInstanceFleetOutput, error) { 96 req, out := c.AddInstanceFleetRequest(input) 97 req.SetContext(ctx) 98 req.ApplyOptions(opts...) 99 return out, req.Send() 100} 101 102const opAddInstanceGroups = "AddInstanceGroups" 103 104// AddInstanceGroupsRequest generates a "aws/request.Request" representing the 105// client's request for the AddInstanceGroups operation. The "output" return 106// value will be populated with the request's response once the request completes 107// successfully. 108// 109// Use "Send" method on the returned Request to send the API call to the service. 110// the "output" return value is not valid until after Send returns without error. 111// 112// See AddInstanceGroups for more information on using the AddInstanceGroups 113// API call, and error handling. 114// 115// This method is useful when you want to inject custom logic or configuration 116// into the SDK's request lifecycle. Such as custom headers, or retry logic. 117// 118// 119// // Example sending a request using the AddInstanceGroupsRequest method. 120// req, resp := client.AddInstanceGroupsRequest(params) 121// 122// err := req.Send() 123// if err == nil { // resp is now filled 124// fmt.Println(resp) 125// } 126// 127// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/AddInstanceGroups 128func (c *EMR) AddInstanceGroupsRequest(input *AddInstanceGroupsInput) (req *request.Request, output *AddInstanceGroupsOutput) { 129 op := &request.Operation{ 130 Name: opAddInstanceGroups, 131 HTTPMethod: "POST", 132 HTTPPath: "/", 133 } 134 135 if input == nil { 136 input = &AddInstanceGroupsInput{} 137 } 138 139 output = &AddInstanceGroupsOutput{} 140 req = c.newRequest(op, input, output) 141 return 142} 143 144// AddInstanceGroups API operation for Amazon EMR. 145// 146// Adds one or more instance groups to a running cluster. 147// 148// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 149// with awserr.Error's Code and Message methods to get detailed information about 150// the error. 151// 152// See the AWS API reference guide for Amazon EMR's 153// API operation AddInstanceGroups for usage and error information. 154// 155// Returned Error Types: 156// * InternalServerError 157// Indicates that an error occurred while processing the request and that the 158// request was not completed. 159// 160// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/AddInstanceGroups 161func (c *EMR) AddInstanceGroups(input *AddInstanceGroupsInput) (*AddInstanceGroupsOutput, error) { 162 req, out := c.AddInstanceGroupsRequest(input) 163 return out, req.Send() 164} 165 166// AddInstanceGroupsWithContext is the same as AddInstanceGroups with the addition of 167// the ability to pass a context and additional request options. 168// 169// See AddInstanceGroups for details on how to use this API operation. 170// 171// The context must be non-nil and will be used for request cancellation. If 172// the context is nil a panic will occur. In the future the SDK may create 173// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 174// for more information on using Contexts. 175func (c *EMR) AddInstanceGroupsWithContext(ctx aws.Context, input *AddInstanceGroupsInput, opts ...request.Option) (*AddInstanceGroupsOutput, error) { 176 req, out := c.AddInstanceGroupsRequest(input) 177 req.SetContext(ctx) 178 req.ApplyOptions(opts...) 179 return out, req.Send() 180} 181 182const opAddJobFlowSteps = "AddJobFlowSteps" 183 184// AddJobFlowStepsRequest generates a "aws/request.Request" representing the 185// client's request for the AddJobFlowSteps operation. The "output" return 186// value will be populated with the request's response once the request completes 187// successfully. 188// 189// Use "Send" method on the returned Request to send the API call to the service. 190// the "output" return value is not valid until after Send returns without error. 191// 192// See AddJobFlowSteps for more information on using the AddJobFlowSteps 193// API call, and error handling. 194// 195// This method is useful when you want to inject custom logic or configuration 196// into the SDK's request lifecycle. Such as custom headers, or retry logic. 197// 198// 199// // Example sending a request using the AddJobFlowStepsRequest method. 200// req, resp := client.AddJobFlowStepsRequest(params) 201// 202// err := req.Send() 203// if err == nil { // resp is now filled 204// fmt.Println(resp) 205// } 206// 207// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/AddJobFlowSteps 208func (c *EMR) AddJobFlowStepsRequest(input *AddJobFlowStepsInput) (req *request.Request, output *AddJobFlowStepsOutput) { 209 op := &request.Operation{ 210 Name: opAddJobFlowSteps, 211 HTTPMethod: "POST", 212 HTTPPath: "/", 213 } 214 215 if input == nil { 216 input = &AddJobFlowStepsInput{} 217 } 218 219 output = &AddJobFlowStepsOutput{} 220 req = c.newRequest(op, input, output) 221 return 222} 223 224// AddJobFlowSteps API operation for Amazon EMR. 225// 226// AddJobFlowSteps adds new steps to a running cluster. A maximum of 256 steps 227// are allowed in each job flow. 228// 229// If your cluster is long-running (such as a Hive data warehouse) or complex, 230// you may require more than 256 steps to process your data. You can bypass 231// the 256-step limitation in various ways, including using SSH to connect to 232// the master node and submitting queries directly to the software running on 233// the master node, such as Hive and Hadoop. For more information on how to 234// do this, see Add More than 256 Steps to a Cluster (https://docs.aws.amazon.com/emr/latest/ManagementGuide/AddMoreThan256Steps.html) 235// in the Amazon EMR Management Guide. 236// 237// A step specifies the location of a JAR file stored either on the master node 238// of the cluster or in Amazon S3. Each step is performed by the main function 239// of the main class of the JAR file. The main class can be specified either 240// in the manifest of the JAR or by using the MainFunction parameter of the 241// step. 242// 243// Amazon EMR executes each step in the order listed. For a step to be considered 244// complete, the main function must exit with a zero exit code and all Hadoop 245// jobs started while the step was running must have completed and run successfully. 246// 247// You can only add steps to a cluster that is in one of the following states: 248// STARTING, BOOTSTRAPPING, RUNNING, or WAITING. 249// 250// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 251// with awserr.Error's Code and Message methods to get detailed information about 252// the error. 253// 254// See the AWS API reference guide for Amazon EMR's 255// API operation AddJobFlowSteps for usage and error information. 256// 257// Returned Error Types: 258// * InternalServerError 259// Indicates that an error occurred while processing the request and that the 260// request was not completed. 261// 262// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/AddJobFlowSteps 263func (c *EMR) AddJobFlowSteps(input *AddJobFlowStepsInput) (*AddJobFlowStepsOutput, error) { 264 req, out := c.AddJobFlowStepsRequest(input) 265 return out, req.Send() 266} 267 268// AddJobFlowStepsWithContext is the same as AddJobFlowSteps with the addition of 269// the ability to pass a context and additional request options. 270// 271// See AddJobFlowSteps for details on how to use this API operation. 272// 273// The context must be non-nil and will be used for request cancellation. If 274// the context is nil a panic will occur. In the future the SDK may create 275// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 276// for more information on using Contexts. 277func (c *EMR) AddJobFlowStepsWithContext(ctx aws.Context, input *AddJobFlowStepsInput, opts ...request.Option) (*AddJobFlowStepsOutput, error) { 278 req, out := c.AddJobFlowStepsRequest(input) 279 req.SetContext(ctx) 280 req.ApplyOptions(opts...) 281 return out, req.Send() 282} 283 284const opAddTags = "AddTags" 285 286// AddTagsRequest generates a "aws/request.Request" representing the 287// client's request for the AddTags operation. The "output" return 288// value will be populated with the request's response once the request completes 289// successfully. 290// 291// Use "Send" method on the returned Request to send the API call to the service. 292// the "output" return value is not valid until after Send returns without error. 293// 294// See AddTags for more information on using the AddTags 295// API call, and error handling. 296// 297// This method is useful when you want to inject custom logic or configuration 298// into the SDK's request lifecycle. Such as custom headers, or retry logic. 299// 300// 301// // Example sending a request using the AddTagsRequest method. 302// req, resp := client.AddTagsRequest(params) 303// 304// err := req.Send() 305// if err == nil { // resp is now filled 306// fmt.Println(resp) 307// } 308// 309// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/AddTags 310func (c *EMR) AddTagsRequest(input *AddTagsInput) (req *request.Request, output *AddTagsOutput) { 311 op := &request.Operation{ 312 Name: opAddTags, 313 HTTPMethod: "POST", 314 HTTPPath: "/", 315 } 316 317 if input == nil { 318 input = &AddTagsInput{} 319 } 320 321 output = &AddTagsOutput{} 322 req = c.newRequest(op, input, output) 323 req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 324 return 325} 326 327// AddTags API operation for Amazon EMR. 328// 329// Adds tags to an Amazon EMR resource, such as a cluster or an Amazon EMR Studio. 330// Tags make it easier to associate resources in various ways, such as grouping 331// clusters to track your Amazon EMR resource allocation costs. For more information, 332// see Tag Clusters (https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-plan-tags.html). 333// 334// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 335// with awserr.Error's Code and Message methods to get detailed information about 336// the error. 337// 338// See the AWS API reference guide for Amazon EMR's 339// API operation AddTags for usage and error information. 340// 341// Returned Error Types: 342// * InternalServerException 343// This exception occurs when there is an internal failure in the Amazon EMR 344// service. 345// 346// * InvalidRequestException 347// This exception occurs when there is something wrong with user input. 348// 349// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/AddTags 350func (c *EMR) AddTags(input *AddTagsInput) (*AddTagsOutput, error) { 351 req, out := c.AddTagsRequest(input) 352 return out, req.Send() 353} 354 355// AddTagsWithContext is the same as AddTags with the addition of 356// the ability to pass a context and additional request options. 357// 358// See AddTags for details on how to use this API operation. 359// 360// The context must be non-nil and will be used for request cancellation. If 361// the context is nil a panic will occur. In the future the SDK may create 362// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 363// for more information on using Contexts. 364func (c *EMR) AddTagsWithContext(ctx aws.Context, input *AddTagsInput, opts ...request.Option) (*AddTagsOutput, error) { 365 req, out := c.AddTagsRequest(input) 366 req.SetContext(ctx) 367 req.ApplyOptions(opts...) 368 return out, req.Send() 369} 370 371const opCancelSteps = "CancelSteps" 372 373// CancelStepsRequest generates a "aws/request.Request" representing the 374// client's request for the CancelSteps operation. The "output" return 375// value will be populated with the request's response once the request completes 376// successfully. 377// 378// Use "Send" method on the returned Request to send the API call to the service. 379// the "output" return value is not valid until after Send returns without error. 380// 381// See CancelSteps for more information on using the CancelSteps 382// API call, and error handling. 383// 384// This method is useful when you want to inject custom logic or configuration 385// into the SDK's request lifecycle. Such as custom headers, or retry logic. 386// 387// 388// // Example sending a request using the CancelStepsRequest method. 389// req, resp := client.CancelStepsRequest(params) 390// 391// err := req.Send() 392// if err == nil { // resp is now filled 393// fmt.Println(resp) 394// } 395// 396// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/CancelSteps 397func (c *EMR) CancelStepsRequest(input *CancelStepsInput) (req *request.Request, output *CancelStepsOutput) { 398 op := &request.Operation{ 399 Name: opCancelSteps, 400 HTTPMethod: "POST", 401 HTTPPath: "/", 402 } 403 404 if input == nil { 405 input = &CancelStepsInput{} 406 } 407 408 output = &CancelStepsOutput{} 409 req = c.newRequest(op, input, output) 410 return 411} 412 413// CancelSteps API operation for Amazon EMR. 414// 415// Cancels a pending step or steps in a running cluster. Available only in Amazon 416// EMR versions 4.8.0 and later, excluding version 5.0.0. A maximum of 256 steps 417// are allowed in each CancelSteps request. CancelSteps is idempotent but asynchronous; 418// it does not guarantee that a step will be canceled, even if the request is 419// successfully submitted. When you use Amazon EMR versions 5.28.0 and later, 420// you can cancel steps that are in a PENDING or RUNNING state. In earlier versions 421// of Amazon EMR, you can only cancel steps that are in a PENDING state. 422// 423// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 424// with awserr.Error's Code and Message methods to get detailed information about 425// the error. 426// 427// See the AWS API reference guide for Amazon EMR's 428// API operation CancelSteps for usage and error information. 429// 430// Returned Error Types: 431// * InternalServerError 432// Indicates that an error occurred while processing the request and that the 433// request was not completed. 434// 435// * InvalidRequestException 436// This exception occurs when there is something wrong with user input. 437// 438// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/CancelSteps 439func (c *EMR) CancelSteps(input *CancelStepsInput) (*CancelStepsOutput, error) { 440 req, out := c.CancelStepsRequest(input) 441 return out, req.Send() 442} 443 444// CancelStepsWithContext is the same as CancelSteps with the addition of 445// the ability to pass a context and additional request options. 446// 447// See CancelSteps for details on how to use this API operation. 448// 449// The context must be non-nil and will be used for request cancellation. If 450// the context is nil a panic will occur. In the future the SDK may create 451// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 452// for more information on using Contexts. 453func (c *EMR) CancelStepsWithContext(ctx aws.Context, input *CancelStepsInput, opts ...request.Option) (*CancelStepsOutput, error) { 454 req, out := c.CancelStepsRequest(input) 455 req.SetContext(ctx) 456 req.ApplyOptions(opts...) 457 return out, req.Send() 458} 459 460const opCreateSecurityConfiguration = "CreateSecurityConfiguration" 461 462// CreateSecurityConfigurationRequest generates a "aws/request.Request" representing the 463// client's request for the CreateSecurityConfiguration operation. The "output" return 464// value will be populated with the request's response once the request completes 465// successfully. 466// 467// Use "Send" method on the returned Request to send the API call to the service. 468// the "output" return value is not valid until after Send returns without error. 469// 470// See CreateSecurityConfiguration for more information on using the CreateSecurityConfiguration 471// API call, and error handling. 472// 473// This method is useful when you want to inject custom logic or configuration 474// into the SDK's request lifecycle. Such as custom headers, or retry logic. 475// 476// 477// // Example sending a request using the CreateSecurityConfigurationRequest method. 478// req, resp := client.CreateSecurityConfigurationRequest(params) 479// 480// err := req.Send() 481// if err == nil { // resp is now filled 482// fmt.Println(resp) 483// } 484// 485// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/CreateSecurityConfiguration 486func (c *EMR) CreateSecurityConfigurationRequest(input *CreateSecurityConfigurationInput) (req *request.Request, output *CreateSecurityConfigurationOutput) { 487 op := &request.Operation{ 488 Name: opCreateSecurityConfiguration, 489 HTTPMethod: "POST", 490 HTTPPath: "/", 491 } 492 493 if input == nil { 494 input = &CreateSecurityConfigurationInput{} 495 } 496 497 output = &CreateSecurityConfigurationOutput{} 498 req = c.newRequest(op, input, output) 499 return 500} 501 502// CreateSecurityConfiguration API operation for Amazon EMR. 503// 504// Creates a security configuration, which is stored in the service and can 505// be specified when a cluster is created. 506// 507// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 508// with awserr.Error's Code and Message methods to get detailed information about 509// the error. 510// 511// See the AWS API reference guide for Amazon EMR's 512// API operation CreateSecurityConfiguration for usage and error information. 513// 514// Returned Error Types: 515// * InternalServerException 516// This exception occurs when there is an internal failure in the Amazon EMR 517// service. 518// 519// * InvalidRequestException 520// This exception occurs when there is something wrong with user input. 521// 522// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/CreateSecurityConfiguration 523func (c *EMR) CreateSecurityConfiguration(input *CreateSecurityConfigurationInput) (*CreateSecurityConfigurationOutput, error) { 524 req, out := c.CreateSecurityConfigurationRequest(input) 525 return out, req.Send() 526} 527 528// CreateSecurityConfigurationWithContext is the same as CreateSecurityConfiguration with the addition of 529// the ability to pass a context and additional request options. 530// 531// See CreateSecurityConfiguration for details on how to use this API operation. 532// 533// The context must be non-nil and will be used for request cancellation. If 534// the context is nil a panic will occur. In the future the SDK may create 535// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 536// for more information on using Contexts. 537func (c *EMR) CreateSecurityConfigurationWithContext(ctx aws.Context, input *CreateSecurityConfigurationInput, opts ...request.Option) (*CreateSecurityConfigurationOutput, error) { 538 req, out := c.CreateSecurityConfigurationRequest(input) 539 req.SetContext(ctx) 540 req.ApplyOptions(opts...) 541 return out, req.Send() 542} 543 544const opCreateStudio = "CreateStudio" 545 546// CreateStudioRequest generates a "aws/request.Request" representing the 547// client's request for the CreateStudio operation. The "output" return 548// value will be populated with the request's response once the request completes 549// successfully. 550// 551// Use "Send" method on the returned Request to send the API call to the service. 552// the "output" return value is not valid until after Send returns without error. 553// 554// See CreateStudio for more information on using the CreateStudio 555// API call, and error handling. 556// 557// This method is useful when you want to inject custom logic or configuration 558// into the SDK's request lifecycle. Such as custom headers, or retry logic. 559// 560// 561// // Example sending a request using the CreateStudioRequest method. 562// req, resp := client.CreateStudioRequest(params) 563// 564// err := req.Send() 565// if err == nil { // resp is now filled 566// fmt.Println(resp) 567// } 568// 569// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/CreateStudio 570func (c *EMR) CreateStudioRequest(input *CreateStudioInput) (req *request.Request, output *CreateStudioOutput) { 571 op := &request.Operation{ 572 Name: opCreateStudio, 573 HTTPMethod: "POST", 574 HTTPPath: "/", 575 } 576 577 if input == nil { 578 input = &CreateStudioInput{} 579 } 580 581 output = &CreateStudioOutput{} 582 req = c.newRequest(op, input, output) 583 return 584} 585 586// CreateStudio API operation for Amazon EMR. 587// 588// Creates a new Amazon EMR Studio. 589// 590// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 591// with awserr.Error's Code and Message methods to get detailed information about 592// the error. 593// 594// See the AWS API reference guide for Amazon EMR's 595// API operation CreateStudio for usage and error information. 596// 597// Returned Error Types: 598// * InternalServerException 599// This exception occurs when there is an internal failure in the Amazon EMR 600// service. 601// 602// * InvalidRequestException 603// This exception occurs when there is something wrong with user input. 604// 605// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/CreateStudio 606func (c *EMR) CreateStudio(input *CreateStudioInput) (*CreateStudioOutput, error) { 607 req, out := c.CreateStudioRequest(input) 608 return out, req.Send() 609} 610 611// CreateStudioWithContext is the same as CreateStudio with the addition of 612// the ability to pass a context and additional request options. 613// 614// See CreateStudio for details on how to use this API operation. 615// 616// The context must be non-nil and will be used for request cancellation. If 617// the context is nil a panic will occur. In the future the SDK may create 618// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 619// for more information on using Contexts. 620func (c *EMR) CreateStudioWithContext(ctx aws.Context, input *CreateStudioInput, opts ...request.Option) (*CreateStudioOutput, error) { 621 req, out := c.CreateStudioRequest(input) 622 req.SetContext(ctx) 623 req.ApplyOptions(opts...) 624 return out, req.Send() 625} 626 627const opCreateStudioSessionMapping = "CreateStudioSessionMapping" 628 629// CreateStudioSessionMappingRequest generates a "aws/request.Request" representing the 630// client's request for the CreateStudioSessionMapping operation. The "output" return 631// value will be populated with the request's response once the request completes 632// successfully. 633// 634// Use "Send" method on the returned Request to send the API call to the service. 635// the "output" return value is not valid until after Send returns without error. 636// 637// See CreateStudioSessionMapping for more information on using the CreateStudioSessionMapping 638// API call, and error handling. 639// 640// This method is useful when you want to inject custom logic or configuration 641// into the SDK's request lifecycle. Such as custom headers, or retry logic. 642// 643// 644// // Example sending a request using the CreateStudioSessionMappingRequest method. 645// req, resp := client.CreateStudioSessionMappingRequest(params) 646// 647// err := req.Send() 648// if err == nil { // resp is now filled 649// fmt.Println(resp) 650// } 651// 652// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/CreateStudioSessionMapping 653func (c *EMR) CreateStudioSessionMappingRequest(input *CreateStudioSessionMappingInput) (req *request.Request, output *CreateStudioSessionMappingOutput) { 654 op := &request.Operation{ 655 Name: opCreateStudioSessionMapping, 656 HTTPMethod: "POST", 657 HTTPPath: "/", 658 } 659 660 if input == nil { 661 input = &CreateStudioSessionMappingInput{} 662 } 663 664 output = &CreateStudioSessionMappingOutput{} 665 req = c.newRequest(op, input, output) 666 req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 667 return 668} 669 670// CreateStudioSessionMapping API operation for Amazon EMR. 671// 672// Maps a user or group to the Amazon EMR Studio specified by StudioId, and 673// applies a session policy to refine Studio permissions for that user or group. 674// Use CreateStudioSessionMapping to assign users to a Studio when you use Amazon 675// Web Services SSO authentication. For instructions on how to assign users 676// to a Studio when you use IAM authentication, see Assign a user or group to 677// your EMR Studio (https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-studio-manage-users.html#emr-studio-assign-users-groups). 678// 679// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 680// with awserr.Error's Code and Message methods to get detailed information about 681// the error. 682// 683// See the AWS API reference guide for Amazon EMR's 684// API operation CreateStudioSessionMapping for usage and error information. 685// 686// Returned Error Types: 687// * InternalServerError 688// Indicates that an error occurred while processing the request and that the 689// request was not completed. 690// 691// * InvalidRequestException 692// This exception occurs when there is something wrong with user input. 693// 694// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/CreateStudioSessionMapping 695func (c *EMR) CreateStudioSessionMapping(input *CreateStudioSessionMappingInput) (*CreateStudioSessionMappingOutput, error) { 696 req, out := c.CreateStudioSessionMappingRequest(input) 697 return out, req.Send() 698} 699 700// CreateStudioSessionMappingWithContext is the same as CreateStudioSessionMapping with the addition of 701// the ability to pass a context and additional request options. 702// 703// See CreateStudioSessionMapping for details on how to use this API operation. 704// 705// The context must be non-nil and will be used for request cancellation. If 706// the context is nil a panic will occur. In the future the SDK may create 707// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 708// for more information on using Contexts. 709func (c *EMR) CreateStudioSessionMappingWithContext(ctx aws.Context, input *CreateStudioSessionMappingInput, opts ...request.Option) (*CreateStudioSessionMappingOutput, error) { 710 req, out := c.CreateStudioSessionMappingRequest(input) 711 req.SetContext(ctx) 712 req.ApplyOptions(opts...) 713 return out, req.Send() 714} 715 716const opDeleteSecurityConfiguration = "DeleteSecurityConfiguration" 717 718// DeleteSecurityConfigurationRequest generates a "aws/request.Request" representing the 719// client's request for the DeleteSecurityConfiguration operation. The "output" return 720// value will be populated with the request's response once the request completes 721// successfully. 722// 723// Use "Send" method on the returned Request to send the API call to the service. 724// the "output" return value is not valid until after Send returns without error. 725// 726// See DeleteSecurityConfiguration for more information on using the DeleteSecurityConfiguration 727// API call, and error handling. 728// 729// This method is useful when you want to inject custom logic or configuration 730// into the SDK's request lifecycle. Such as custom headers, or retry logic. 731// 732// 733// // Example sending a request using the DeleteSecurityConfigurationRequest method. 734// req, resp := client.DeleteSecurityConfigurationRequest(params) 735// 736// err := req.Send() 737// if err == nil { // resp is now filled 738// fmt.Println(resp) 739// } 740// 741// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/DeleteSecurityConfiguration 742func (c *EMR) DeleteSecurityConfigurationRequest(input *DeleteSecurityConfigurationInput) (req *request.Request, output *DeleteSecurityConfigurationOutput) { 743 op := &request.Operation{ 744 Name: opDeleteSecurityConfiguration, 745 HTTPMethod: "POST", 746 HTTPPath: "/", 747 } 748 749 if input == nil { 750 input = &DeleteSecurityConfigurationInput{} 751 } 752 753 output = &DeleteSecurityConfigurationOutput{} 754 req = c.newRequest(op, input, output) 755 req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 756 return 757} 758 759// DeleteSecurityConfiguration API operation for Amazon EMR. 760// 761// Deletes a security configuration. 762// 763// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 764// with awserr.Error's Code and Message methods to get detailed information about 765// the error. 766// 767// See the AWS API reference guide for Amazon EMR's 768// API operation DeleteSecurityConfiguration for usage and error information. 769// 770// Returned Error Types: 771// * InternalServerException 772// This exception occurs when there is an internal failure in the Amazon EMR 773// service. 774// 775// * InvalidRequestException 776// This exception occurs when there is something wrong with user input. 777// 778// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/DeleteSecurityConfiguration 779func (c *EMR) DeleteSecurityConfiguration(input *DeleteSecurityConfigurationInput) (*DeleteSecurityConfigurationOutput, error) { 780 req, out := c.DeleteSecurityConfigurationRequest(input) 781 return out, req.Send() 782} 783 784// DeleteSecurityConfigurationWithContext is the same as DeleteSecurityConfiguration with the addition of 785// the ability to pass a context and additional request options. 786// 787// See DeleteSecurityConfiguration for details on how to use this API operation. 788// 789// The context must be non-nil and will be used for request cancellation. If 790// the context is nil a panic will occur. In the future the SDK may create 791// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 792// for more information on using Contexts. 793func (c *EMR) DeleteSecurityConfigurationWithContext(ctx aws.Context, input *DeleteSecurityConfigurationInput, opts ...request.Option) (*DeleteSecurityConfigurationOutput, error) { 794 req, out := c.DeleteSecurityConfigurationRequest(input) 795 req.SetContext(ctx) 796 req.ApplyOptions(opts...) 797 return out, req.Send() 798} 799 800const opDeleteStudio = "DeleteStudio" 801 802// DeleteStudioRequest generates a "aws/request.Request" representing the 803// client's request for the DeleteStudio operation. The "output" return 804// value will be populated with the request's response once the request completes 805// successfully. 806// 807// Use "Send" method on the returned Request to send the API call to the service. 808// the "output" return value is not valid until after Send returns without error. 809// 810// See DeleteStudio for more information on using the DeleteStudio 811// API call, and error handling. 812// 813// This method is useful when you want to inject custom logic or configuration 814// into the SDK's request lifecycle. Such as custom headers, or retry logic. 815// 816// 817// // Example sending a request using the DeleteStudioRequest method. 818// req, resp := client.DeleteStudioRequest(params) 819// 820// err := req.Send() 821// if err == nil { // resp is now filled 822// fmt.Println(resp) 823// } 824// 825// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/DeleteStudio 826func (c *EMR) DeleteStudioRequest(input *DeleteStudioInput) (req *request.Request, output *DeleteStudioOutput) { 827 op := &request.Operation{ 828 Name: opDeleteStudio, 829 HTTPMethod: "POST", 830 HTTPPath: "/", 831 } 832 833 if input == nil { 834 input = &DeleteStudioInput{} 835 } 836 837 output = &DeleteStudioOutput{} 838 req = c.newRequest(op, input, output) 839 req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 840 return 841} 842 843// DeleteStudio API operation for Amazon EMR. 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 EMR'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 Amazon EMR 857// service. 858// 859// * InvalidRequestException 860// This exception occurs when there is something wrong with user input. 861// 862// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/DeleteStudio 863func (c *EMR) DeleteStudio(input *DeleteStudioInput) (*DeleteStudioOutput, error) { 864 req, out := c.DeleteStudioRequest(input) 865 return out, req.Send() 866} 867 868// DeleteStudioWithContext is the same as DeleteStudio with the addition of 869// the ability to pass a context and additional request options. 870// 871// See DeleteStudio for details on how to use this API operation. 872// 873// The context must be non-nil and will be used for request cancellation. If 874// the context is nil a panic will occur. In the future the SDK may create 875// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 876// for more information on using Contexts. 877func (c *EMR) DeleteStudioWithContext(ctx aws.Context, input *DeleteStudioInput, opts ...request.Option) (*DeleteStudioOutput, error) { 878 req, out := c.DeleteStudioRequest(input) 879 req.SetContext(ctx) 880 req.ApplyOptions(opts...) 881 return out, req.Send() 882} 883 884const opDeleteStudioSessionMapping = "DeleteStudioSessionMapping" 885 886// DeleteStudioSessionMappingRequest generates a "aws/request.Request" representing the 887// client's request for the DeleteStudioSessionMapping operation. The "output" return 888// value will be populated with the request's response once the request completes 889// successfully. 890// 891// Use "Send" method on the returned Request to send the API call to the service. 892// the "output" return value is not valid until after Send returns without error. 893// 894// See DeleteStudioSessionMapping for more information on using the DeleteStudioSessionMapping 895// API call, and error handling. 896// 897// This method is useful when you want to inject custom logic or configuration 898// into the SDK's request lifecycle. Such as custom headers, or retry logic. 899// 900// 901// // Example sending a request using the DeleteStudioSessionMappingRequest method. 902// req, resp := client.DeleteStudioSessionMappingRequest(params) 903// 904// err := req.Send() 905// if err == nil { // resp is now filled 906// fmt.Println(resp) 907// } 908// 909// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/DeleteStudioSessionMapping 910func (c *EMR) DeleteStudioSessionMappingRequest(input *DeleteStudioSessionMappingInput) (req *request.Request, output *DeleteStudioSessionMappingOutput) { 911 op := &request.Operation{ 912 Name: opDeleteStudioSessionMapping, 913 HTTPMethod: "POST", 914 HTTPPath: "/", 915 } 916 917 if input == nil { 918 input = &DeleteStudioSessionMappingInput{} 919 } 920 921 output = &DeleteStudioSessionMappingOutput{} 922 req = c.newRequest(op, input, output) 923 req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 924 return 925} 926 927// DeleteStudioSessionMapping API operation for Amazon EMR. 928// 929// Removes a user or group from an Amazon EMR Studio. 930// 931// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 932// with awserr.Error's Code and Message methods to get detailed information about 933// the error. 934// 935// See the AWS API reference guide for Amazon EMR's 936// API operation DeleteStudioSessionMapping for usage and error information. 937// 938// Returned Error Types: 939// * InternalServerError 940// Indicates that an error occurred while processing the request and that the 941// request was not completed. 942// 943// * InvalidRequestException 944// This exception occurs when there is something wrong with user input. 945// 946// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/DeleteStudioSessionMapping 947func (c *EMR) DeleteStudioSessionMapping(input *DeleteStudioSessionMappingInput) (*DeleteStudioSessionMappingOutput, error) { 948 req, out := c.DeleteStudioSessionMappingRequest(input) 949 return out, req.Send() 950} 951 952// DeleteStudioSessionMappingWithContext is the same as DeleteStudioSessionMapping with the addition of 953// the ability to pass a context and additional request options. 954// 955// See DeleteStudioSessionMapping for details on how to use this API operation. 956// 957// The context must be non-nil and will be used for request cancellation. If 958// the context is nil a panic will occur. In the future the SDK may create 959// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 960// for more information on using Contexts. 961func (c *EMR) DeleteStudioSessionMappingWithContext(ctx aws.Context, input *DeleteStudioSessionMappingInput, opts ...request.Option) (*DeleteStudioSessionMappingOutput, error) { 962 req, out := c.DeleteStudioSessionMappingRequest(input) 963 req.SetContext(ctx) 964 req.ApplyOptions(opts...) 965 return out, req.Send() 966} 967 968const opDescribeCluster = "DescribeCluster" 969 970// DescribeClusterRequest generates a "aws/request.Request" representing the 971// client's request for the DescribeCluster operation. The "output" return 972// value will be populated with the request's response once the request completes 973// successfully. 974// 975// Use "Send" method on the returned Request to send the API call to the service. 976// the "output" return value is not valid until after Send returns without error. 977// 978// See DescribeCluster for more information on using the DescribeCluster 979// API call, and error handling. 980// 981// This method is useful when you want to inject custom logic or configuration 982// into the SDK's request lifecycle. Such as custom headers, or retry logic. 983// 984// 985// // Example sending a request using the DescribeClusterRequest method. 986// req, resp := client.DescribeClusterRequest(params) 987// 988// err := req.Send() 989// if err == nil { // resp is now filled 990// fmt.Println(resp) 991// } 992// 993// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/DescribeCluster 994func (c *EMR) DescribeClusterRequest(input *DescribeClusterInput) (req *request.Request, output *DescribeClusterOutput) { 995 op := &request.Operation{ 996 Name: opDescribeCluster, 997 HTTPMethod: "POST", 998 HTTPPath: "/", 999 } 1000 1001 if input == nil { 1002 input = &DescribeClusterInput{} 1003 } 1004 1005 output = &DescribeClusterOutput{} 1006 req = c.newRequest(op, input, output) 1007 return 1008} 1009 1010// DescribeCluster API operation for Amazon EMR. 1011// 1012// Provides cluster-level details including status, hardware and software configuration, 1013// VPC settings, and so on. 1014// 1015// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1016// with awserr.Error's Code and Message methods to get detailed information about 1017// the error. 1018// 1019// See the AWS API reference guide for Amazon EMR's 1020// API operation DescribeCluster for usage and error information. 1021// 1022// Returned Error Types: 1023// * InternalServerException 1024// This exception occurs when there is an internal failure in the Amazon EMR 1025// service. 1026// 1027// * InvalidRequestException 1028// This exception occurs when there is something wrong with user input. 1029// 1030// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/DescribeCluster 1031func (c *EMR) DescribeCluster(input *DescribeClusterInput) (*DescribeClusterOutput, error) { 1032 req, out := c.DescribeClusterRequest(input) 1033 return out, req.Send() 1034} 1035 1036// DescribeClusterWithContext is the same as DescribeCluster with the addition of 1037// the ability to pass a context and additional request options. 1038// 1039// See DescribeCluster for details on how to use this API operation. 1040// 1041// The context must be non-nil and will be used for request cancellation. If 1042// the context is nil a panic will occur. In the future the SDK may create 1043// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1044// for more information on using Contexts. 1045func (c *EMR) DescribeClusterWithContext(ctx aws.Context, input *DescribeClusterInput, opts ...request.Option) (*DescribeClusterOutput, error) { 1046 req, out := c.DescribeClusterRequest(input) 1047 req.SetContext(ctx) 1048 req.ApplyOptions(opts...) 1049 return out, req.Send() 1050} 1051 1052const opDescribeJobFlows = "DescribeJobFlows" 1053 1054// DescribeJobFlowsRequest generates a "aws/request.Request" representing the 1055// client's request for the DescribeJobFlows operation. The "output" return 1056// value will be populated with the request's response once the request completes 1057// successfully. 1058// 1059// Use "Send" method on the returned Request to send the API call to the service. 1060// the "output" return value is not valid until after Send returns without error. 1061// 1062// See DescribeJobFlows for more information on using the DescribeJobFlows 1063// API call, and error handling. 1064// 1065// This method is useful when you want to inject custom logic or configuration 1066// into the SDK's request lifecycle. Such as custom headers, or retry logic. 1067// 1068// 1069// // Example sending a request using the DescribeJobFlowsRequest method. 1070// req, resp := client.DescribeJobFlowsRequest(params) 1071// 1072// err := req.Send() 1073// if err == nil { // resp is now filled 1074// fmt.Println(resp) 1075// } 1076// 1077// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/DescribeJobFlows 1078// 1079// Deprecated: DescribeJobFlows has been deprecated 1080func (c *EMR) DescribeJobFlowsRequest(input *DescribeJobFlowsInput) (req *request.Request, output *DescribeJobFlowsOutput) { 1081 if c.Client.Config.Logger != nil { 1082 c.Client.Config.Logger.Log("This operation, DescribeJobFlows, has been deprecated") 1083 } 1084 op := &request.Operation{ 1085 Name: opDescribeJobFlows, 1086 HTTPMethod: "POST", 1087 HTTPPath: "/", 1088 } 1089 1090 if input == nil { 1091 input = &DescribeJobFlowsInput{} 1092 } 1093 1094 output = &DescribeJobFlowsOutput{} 1095 req = c.newRequest(op, input, output) 1096 return 1097} 1098 1099// DescribeJobFlows API operation for Amazon EMR. 1100// 1101// This API is no longer supported and will eventually be removed. We recommend 1102// you use ListClusters, DescribeCluster, ListSteps, ListInstanceGroups and 1103// ListBootstrapActions instead. 1104// 1105// DescribeJobFlows returns a list of job flows that match all of the supplied 1106// parameters. The parameters can include a list of job flow IDs, job flow states, 1107// and restrictions on job flow creation date and time. 1108// 1109// Regardless of supplied parameters, only job flows created within the last 1110// two months are returned. 1111// 1112// If no parameters are supplied, then job flows matching either of the following 1113// criteria are returned: 1114// 1115// * Job flows created and completed in the last two weeks 1116// 1117// * Job flows created within the last two months that are in one of the 1118// following states: RUNNING, WAITING, SHUTTING_DOWN, STARTING 1119// 1120// Amazon EMR can return a maximum of 512 job flow descriptions. 1121// 1122// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1123// with awserr.Error's Code and Message methods to get detailed information about 1124// the error. 1125// 1126// See the AWS API reference guide for Amazon EMR's 1127// API operation DescribeJobFlows for usage and error information. 1128// 1129// Returned Error Types: 1130// * InternalServerError 1131// Indicates that an error occurred while processing the request and that the 1132// request was not completed. 1133// 1134// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/DescribeJobFlows 1135// 1136// Deprecated: DescribeJobFlows has been deprecated 1137func (c *EMR) DescribeJobFlows(input *DescribeJobFlowsInput) (*DescribeJobFlowsOutput, error) { 1138 req, out := c.DescribeJobFlowsRequest(input) 1139 return out, req.Send() 1140} 1141 1142// DescribeJobFlowsWithContext is the same as DescribeJobFlows with the addition of 1143// the ability to pass a context and additional request options. 1144// 1145// See DescribeJobFlows for details on how to use this API operation. 1146// 1147// The context must be non-nil and will be used for request cancellation. If 1148// the context is nil a panic will occur. In the future the SDK may create 1149// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1150// for more information on using Contexts. 1151// 1152// Deprecated: DescribeJobFlowsWithContext has been deprecated 1153func (c *EMR) DescribeJobFlowsWithContext(ctx aws.Context, input *DescribeJobFlowsInput, opts ...request.Option) (*DescribeJobFlowsOutput, error) { 1154 req, out := c.DescribeJobFlowsRequest(input) 1155 req.SetContext(ctx) 1156 req.ApplyOptions(opts...) 1157 return out, req.Send() 1158} 1159 1160const opDescribeNotebookExecution = "DescribeNotebookExecution" 1161 1162// DescribeNotebookExecutionRequest generates a "aws/request.Request" representing the 1163// client's request for the DescribeNotebookExecution operation. The "output" return 1164// value will be populated with the request's response once the request completes 1165// successfully. 1166// 1167// Use "Send" method on the returned Request to send the API call to the service. 1168// the "output" return value is not valid until after Send returns without error. 1169// 1170// See DescribeNotebookExecution for more information on using the DescribeNotebookExecution 1171// API call, and error handling. 1172// 1173// This method is useful when you want to inject custom logic or configuration 1174// into the SDK's request lifecycle. Such as custom headers, or retry logic. 1175// 1176// 1177// // Example sending a request using the DescribeNotebookExecutionRequest method. 1178// req, resp := client.DescribeNotebookExecutionRequest(params) 1179// 1180// err := req.Send() 1181// if err == nil { // resp is now filled 1182// fmt.Println(resp) 1183// } 1184// 1185// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/DescribeNotebookExecution 1186func (c *EMR) DescribeNotebookExecutionRequest(input *DescribeNotebookExecutionInput) (req *request.Request, output *DescribeNotebookExecutionOutput) { 1187 op := &request.Operation{ 1188 Name: opDescribeNotebookExecution, 1189 HTTPMethod: "POST", 1190 HTTPPath: "/", 1191 } 1192 1193 if input == nil { 1194 input = &DescribeNotebookExecutionInput{} 1195 } 1196 1197 output = &DescribeNotebookExecutionOutput{} 1198 req = c.newRequest(op, input, output) 1199 return 1200} 1201 1202// DescribeNotebookExecution API operation for Amazon EMR. 1203// 1204// Provides details of a notebook execution. 1205// 1206// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1207// with awserr.Error's Code and Message methods to get detailed information about 1208// the error. 1209// 1210// See the AWS API reference guide for Amazon EMR's 1211// API operation DescribeNotebookExecution for usage and error information. 1212// 1213// Returned Error Types: 1214// * InternalServerError 1215// Indicates that an error occurred while processing the request and that the 1216// request was not completed. 1217// 1218// * InvalidRequestException 1219// This exception occurs when there is something wrong with user input. 1220// 1221// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/DescribeNotebookExecution 1222func (c *EMR) DescribeNotebookExecution(input *DescribeNotebookExecutionInput) (*DescribeNotebookExecutionOutput, error) { 1223 req, out := c.DescribeNotebookExecutionRequest(input) 1224 return out, req.Send() 1225} 1226 1227// DescribeNotebookExecutionWithContext is the same as DescribeNotebookExecution with the addition of 1228// the ability to pass a context and additional request options. 1229// 1230// See DescribeNotebookExecution for details on how to use this API operation. 1231// 1232// The context must be non-nil and will be used for request cancellation. If 1233// the context is nil a panic will occur. In the future the SDK may create 1234// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1235// for more information on using Contexts. 1236func (c *EMR) DescribeNotebookExecutionWithContext(ctx aws.Context, input *DescribeNotebookExecutionInput, opts ...request.Option) (*DescribeNotebookExecutionOutput, error) { 1237 req, out := c.DescribeNotebookExecutionRequest(input) 1238 req.SetContext(ctx) 1239 req.ApplyOptions(opts...) 1240 return out, req.Send() 1241} 1242 1243const opDescribeReleaseLabel = "DescribeReleaseLabel" 1244 1245// DescribeReleaseLabelRequest generates a "aws/request.Request" representing the 1246// client's request for the DescribeReleaseLabel operation. The "output" return 1247// value will be populated with the request's response once the request completes 1248// successfully. 1249// 1250// Use "Send" method on the returned Request to send the API call to the service. 1251// the "output" return value is not valid until after Send returns without error. 1252// 1253// See DescribeReleaseLabel for more information on using the DescribeReleaseLabel 1254// API call, and error handling. 1255// 1256// This method is useful when you want to inject custom logic or configuration 1257// into the SDK's request lifecycle. Such as custom headers, or retry logic. 1258// 1259// 1260// // Example sending a request using the DescribeReleaseLabelRequest method. 1261// req, resp := client.DescribeReleaseLabelRequest(params) 1262// 1263// err := req.Send() 1264// if err == nil { // resp is now filled 1265// fmt.Println(resp) 1266// } 1267// 1268// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/DescribeReleaseLabel 1269func (c *EMR) DescribeReleaseLabelRequest(input *DescribeReleaseLabelInput) (req *request.Request, output *DescribeReleaseLabelOutput) { 1270 op := &request.Operation{ 1271 Name: opDescribeReleaseLabel, 1272 HTTPMethod: "POST", 1273 HTTPPath: "/", 1274 } 1275 1276 if input == nil { 1277 input = &DescribeReleaseLabelInput{} 1278 } 1279 1280 output = &DescribeReleaseLabelOutput{} 1281 req = c.newRequest(op, input, output) 1282 return 1283} 1284 1285// DescribeReleaseLabel API operation for Amazon EMR. 1286// 1287// Provides EMR release label details, such as releases available the region 1288// where the API request is run, and the available applications for a specific 1289// EMR release label. Can also list EMR release versions that support a specified 1290// version of Spark. 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 EMR's 1297// API operation DescribeReleaseLabel for usage and error information. 1298// 1299// Returned Error Types: 1300// * InternalServerException 1301// This exception occurs when there is an internal failure in the Amazon EMR 1302// service. 1303// 1304// * InvalidRequestException 1305// This exception occurs when there is something wrong with user input. 1306// 1307// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/DescribeReleaseLabel 1308func (c *EMR) DescribeReleaseLabel(input *DescribeReleaseLabelInput) (*DescribeReleaseLabelOutput, error) { 1309 req, out := c.DescribeReleaseLabelRequest(input) 1310 return out, req.Send() 1311} 1312 1313// DescribeReleaseLabelWithContext is the same as DescribeReleaseLabel with the addition of 1314// the ability to pass a context and additional request options. 1315// 1316// See DescribeReleaseLabel for details on how to use this API operation. 1317// 1318// The context must be non-nil and will be used for request cancellation. If 1319// the context is nil a panic will occur. In the future the SDK may create 1320// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1321// for more information on using Contexts. 1322func (c *EMR) DescribeReleaseLabelWithContext(ctx aws.Context, input *DescribeReleaseLabelInput, opts ...request.Option) (*DescribeReleaseLabelOutput, error) { 1323 req, out := c.DescribeReleaseLabelRequest(input) 1324 req.SetContext(ctx) 1325 req.ApplyOptions(opts...) 1326 return out, req.Send() 1327} 1328 1329const opDescribeSecurityConfiguration = "DescribeSecurityConfiguration" 1330 1331// DescribeSecurityConfigurationRequest generates a "aws/request.Request" representing the 1332// client's request for the DescribeSecurityConfiguration operation. The "output" return 1333// value will be populated with the request's response once the request completes 1334// successfully. 1335// 1336// Use "Send" method on the returned Request to send the API call to the service. 1337// the "output" return value is not valid until after Send returns without error. 1338// 1339// See DescribeSecurityConfiguration for more information on using the DescribeSecurityConfiguration 1340// API call, and error handling. 1341// 1342// This method is useful when you want to inject custom logic or configuration 1343// into the SDK's request lifecycle. Such as custom headers, or retry logic. 1344// 1345// 1346// // Example sending a request using the DescribeSecurityConfigurationRequest method. 1347// req, resp := client.DescribeSecurityConfigurationRequest(params) 1348// 1349// err := req.Send() 1350// if err == nil { // resp is now filled 1351// fmt.Println(resp) 1352// } 1353// 1354// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/DescribeSecurityConfiguration 1355func (c *EMR) DescribeSecurityConfigurationRequest(input *DescribeSecurityConfigurationInput) (req *request.Request, output *DescribeSecurityConfigurationOutput) { 1356 op := &request.Operation{ 1357 Name: opDescribeSecurityConfiguration, 1358 HTTPMethod: "POST", 1359 HTTPPath: "/", 1360 } 1361 1362 if input == nil { 1363 input = &DescribeSecurityConfigurationInput{} 1364 } 1365 1366 output = &DescribeSecurityConfigurationOutput{} 1367 req = c.newRequest(op, input, output) 1368 return 1369} 1370 1371// DescribeSecurityConfiguration API operation for Amazon EMR. 1372// 1373// Provides the details of a security configuration by returning the configuration 1374// JSON. 1375// 1376// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1377// with awserr.Error's Code and Message methods to get detailed information about 1378// the error. 1379// 1380// See the AWS API reference guide for Amazon EMR's 1381// API operation DescribeSecurityConfiguration for usage and error information. 1382// 1383// Returned Error Types: 1384// * InternalServerException 1385// This exception occurs when there is an internal failure in the Amazon EMR 1386// service. 1387// 1388// * InvalidRequestException 1389// This exception occurs when there is something wrong with user input. 1390// 1391// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/DescribeSecurityConfiguration 1392func (c *EMR) DescribeSecurityConfiguration(input *DescribeSecurityConfigurationInput) (*DescribeSecurityConfigurationOutput, error) { 1393 req, out := c.DescribeSecurityConfigurationRequest(input) 1394 return out, req.Send() 1395} 1396 1397// DescribeSecurityConfigurationWithContext is the same as DescribeSecurityConfiguration with the addition of 1398// the ability to pass a context and additional request options. 1399// 1400// See DescribeSecurityConfiguration for details on how to use this API operation. 1401// 1402// The context must be non-nil and will be used for request cancellation. If 1403// the context is nil a panic will occur. In the future the SDK may create 1404// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1405// for more information on using Contexts. 1406func (c *EMR) DescribeSecurityConfigurationWithContext(ctx aws.Context, input *DescribeSecurityConfigurationInput, opts ...request.Option) (*DescribeSecurityConfigurationOutput, error) { 1407 req, out := c.DescribeSecurityConfigurationRequest(input) 1408 req.SetContext(ctx) 1409 req.ApplyOptions(opts...) 1410 return out, req.Send() 1411} 1412 1413const opDescribeStep = "DescribeStep" 1414 1415// DescribeStepRequest generates a "aws/request.Request" representing the 1416// client's request for the DescribeStep operation. The "output" return 1417// value will be populated with the request's response once the request completes 1418// successfully. 1419// 1420// Use "Send" method on the returned Request to send the API call to the service. 1421// the "output" return value is not valid until after Send returns without error. 1422// 1423// See DescribeStep for more information on using the DescribeStep 1424// API call, and error handling. 1425// 1426// This method is useful when you want to inject custom logic or configuration 1427// into the SDK's request lifecycle. Such as custom headers, or retry logic. 1428// 1429// 1430// // Example sending a request using the DescribeStepRequest method. 1431// req, resp := client.DescribeStepRequest(params) 1432// 1433// err := req.Send() 1434// if err == nil { // resp is now filled 1435// fmt.Println(resp) 1436// } 1437// 1438// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/DescribeStep 1439func (c *EMR) DescribeStepRequest(input *DescribeStepInput) (req *request.Request, output *DescribeStepOutput) { 1440 op := &request.Operation{ 1441 Name: opDescribeStep, 1442 HTTPMethod: "POST", 1443 HTTPPath: "/", 1444 } 1445 1446 if input == nil { 1447 input = &DescribeStepInput{} 1448 } 1449 1450 output = &DescribeStepOutput{} 1451 req = c.newRequest(op, input, output) 1452 return 1453} 1454 1455// DescribeStep API operation for Amazon EMR. 1456// 1457// Provides more detail about the cluster step. 1458// 1459// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1460// with awserr.Error's Code and Message methods to get detailed information about 1461// the error. 1462// 1463// See the AWS API reference guide for Amazon EMR's 1464// API operation DescribeStep for usage and error information. 1465// 1466// Returned Error Types: 1467// * InternalServerException 1468// This exception occurs when there is an internal failure in the Amazon EMR 1469// service. 1470// 1471// * InvalidRequestException 1472// This exception occurs when there is something wrong with user input. 1473// 1474// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/DescribeStep 1475func (c *EMR) DescribeStep(input *DescribeStepInput) (*DescribeStepOutput, error) { 1476 req, out := c.DescribeStepRequest(input) 1477 return out, req.Send() 1478} 1479 1480// DescribeStepWithContext is the same as DescribeStep with the addition of 1481// the ability to pass a context and additional request options. 1482// 1483// See DescribeStep for details on how to use this API operation. 1484// 1485// The context must be non-nil and will be used for request cancellation. If 1486// the context is nil a panic will occur. In the future the SDK may create 1487// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1488// for more information on using Contexts. 1489func (c *EMR) DescribeStepWithContext(ctx aws.Context, input *DescribeStepInput, opts ...request.Option) (*DescribeStepOutput, error) { 1490 req, out := c.DescribeStepRequest(input) 1491 req.SetContext(ctx) 1492 req.ApplyOptions(opts...) 1493 return out, req.Send() 1494} 1495 1496const opDescribeStudio = "DescribeStudio" 1497 1498// DescribeStudioRequest generates a "aws/request.Request" representing the 1499// client's request for the DescribeStudio operation. The "output" return 1500// value will be populated with the request's response once the request completes 1501// successfully. 1502// 1503// Use "Send" method on the returned Request to send the API call to the service. 1504// the "output" return value is not valid until after Send returns without error. 1505// 1506// See DescribeStudio for more information on using the DescribeStudio 1507// API call, and error handling. 1508// 1509// This method is useful when you want to inject custom logic or configuration 1510// into the SDK's request lifecycle. Such as custom headers, or retry logic. 1511// 1512// 1513// // Example sending a request using the DescribeStudioRequest method. 1514// req, resp := client.DescribeStudioRequest(params) 1515// 1516// err := req.Send() 1517// if err == nil { // resp is now filled 1518// fmt.Println(resp) 1519// } 1520// 1521// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/DescribeStudio 1522func (c *EMR) DescribeStudioRequest(input *DescribeStudioInput) (req *request.Request, output *DescribeStudioOutput) { 1523 op := &request.Operation{ 1524 Name: opDescribeStudio, 1525 HTTPMethod: "POST", 1526 HTTPPath: "/", 1527 } 1528 1529 if input == nil { 1530 input = &DescribeStudioInput{} 1531 } 1532 1533 output = &DescribeStudioOutput{} 1534 req = c.newRequest(op, input, output) 1535 return 1536} 1537 1538// DescribeStudio API operation for Amazon EMR. 1539// 1540// Returns details for the specified Amazon EMR Studio including ID, Name, VPC, 1541// Studio access URL, and so on. 1542// 1543// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1544// with awserr.Error's Code and Message methods to get detailed information about 1545// the error. 1546// 1547// See the AWS API reference guide for Amazon EMR's 1548// API operation DescribeStudio for usage and error information. 1549// 1550// Returned Error Types: 1551// * InternalServerException 1552// This exception occurs when there is an internal failure in the Amazon EMR 1553// service. 1554// 1555// * InvalidRequestException 1556// This exception occurs when there is something wrong with user input. 1557// 1558// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/DescribeStudio 1559func (c *EMR) DescribeStudio(input *DescribeStudioInput) (*DescribeStudioOutput, error) { 1560 req, out := c.DescribeStudioRequest(input) 1561 return out, req.Send() 1562} 1563 1564// DescribeStudioWithContext is the same as DescribeStudio with the addition of 1565// the ability to pass a context and additional request options. 1566// 1567// See DescribeStudio for details on how to use this API operation. 1568// 1569// The context must be non-nil and will be used for request cancellation. If 1570// the context is nil a panic will occur. In the future the SDK may create 1571// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1572// for more information on using Contexts. 1573func (c *EMR) DescribeStudioWithContext(ctx aws.Context, input *DescribeStudioInput, opts ...request.Option) (*DescribeStudioOutput, error) { 1574 req, out := c.DescribeStudioRequest(input) 1575 req.SetContext(ctx) 1576 req.ApplyOptions(opts...) 1577 return out, req.Send() 1578} 1579 1580const opGetAutoTerminationPolicy = "GetAutoTerminationPolicy" 1581 1582// GetAutoTerminationPolicyRequest generates a "aws/request.Request" representing the 1583// client's request for the GetAutoTerminationPolicy operation. The "output" return 1584// value will be populated with the request's response once the request completes 1585// successfully. 1586// 1587// Use "Send" method on the returned Request to send the API call to the service. 1588// the "output" return value is not valid until after Send returns without error. 1589// 1590// See GetAutoTerminationPolicy for more information on using the GetAutoTerminationPolicy 1591// API call, and error handling. 1592// 1593// This method is useful when you want to inject custom logic or configuration 1594// into the SDK's request lifecycle. Such as custom headers, or retry logic. 1595// 1596// 1597// // Example sending a request using the GetAutoTerminationPolicyRequest method. 1598// req, resp := client.GetAutoTerminationPolicyRequest(params) 1599// 1600// err := req.Send() 1601// if err == nil { // resp is now filled 1602// fmt.Println(resp) 1603// } 1604// 1605// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/GetAutoTerminationPolicy 1606func (c *EMR) GetAutoTerminationPolicyRequest(input *GetAutoTerminationPolicyInput) (req *request.Request, output *GetAutoTerminationPolicyOutput) { 1607 op := &request.Operation{ 1608 Name: opGetAutoTerminationPolicy, 1609 HTTPMethod: "POST", 1610 HTTPPath: "/", 1611 } 1612 1613 if input == nil { 1614 input = &GetAutoTerminationPolicyInput{} 1615 } 1616 1617 output = &GetAutoTerminationPolicyOutput{} 1618 req = c.newRequest(op, input, output) 1619 return 1620} 1621 1622// GetAutoTerminationPolicy API operation for Amazon EMR. 1623// 1624// Returns the auto-termination policy for an Amazon EMR cluster. 1625// 1626// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1627// with awserr.Error's Code and Message methods to get detailed information about 1628// the error. 1629// 1630// See the AWS API reference guide for Amazon EMR's 1631// API operation GetAutoTerminationPolicy for usage and error information. 1632// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/GetAutoTerminationPolicy 1633func (c *EMR) GetAutoTerminationPolicy(input *GetAutoTerminationPolicyInput) (*GetAutoTerminationPolicyOutput, error) { 1634 req, out := c.GetAutoTerminationPolicyRequest(input) 1635 return out, req.Send() 1636} 1637 1638// GetAutoTerminationPolicyWithContext is the same as GetAutoTerminationPolicy with the addition of 1639// the ability to pass a context and additional request options. 1640// 1641// See GetAutoTerminationPolicy for details on how to use this API operation. 1642// 1643// The context must be non-nil and will be used for request cancellation. If 1644// the context is nil a panic will occur. In the future the SDK may create 1645// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1646// for more information on using Contexts. 1647func (c *EMR) GetAutoTerminationPolicyWithContext(ctx aws.Context, input *GetAutoTerminationPolicyInput, opts ...request.Option) (*GetAutoTerminationPolicyOutput, error) { 1648 req, out := c.GetAutoTerminationPolicyRequest(input) 1649 req.SetContext(ctx) 1650 req.ApplyOptions(opts...) 1651 return out, req.Send() 1652} 1653 1654const opGetBlockPublicAccessConfiguration = "GetBlockPublicAccessConfiguration" 1655 1656// GetBlockPublicAccessConfigurationRequest generates a "aws/request.Request" representing the 1657// client's request for the GetBlockPublicAccessConfiguration operation. The "output" return 1658// value will be populated with the request's response once the request completes 1659// successfully. 1660// 1661// Use "Send" method on the returned Request to send the API call to the service. 1662// the "output" return value is not valid until after Send returns without error. 1663// 1664// See GetBlockPublicAccessConfiguration for more information on using the GetBlockPublicAccessConfiguration 1665// API call, and error handling. 1666// 1667// This method is useful when you want to inject custom logic or configuration 1668// into the SDK's request lifecycle. Such as custom headers, or retry logic. 1669// 1670// 1671// // Example sending a request using the GetBlockPublicAccessConfigurationRequest method. 1672// req, resp := client.GetBlockPublicAccessConfigurationRequest(params) 1673// 1674// err := req.Send() 1675// if err == nil { // resp is now filled 1676// fmt.Println(resp) 1677// } 1678// 1679// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/GetBlockPublicAccessConfiguration 1680func (c *EMR) GetBlockPublicAccessConfigurationRequest(input *GetBlockPublicAccessConfigurationInput) (req *request.Request, output *GetBlockPublicAccessConfigurationOutput) { 1681 op := &request.Operation{ 1682 Name: opGetBlockPublicAccessConfiguration, 1683 HTTPMethod: "POST", 1684 HTTPPath: "/", 1685 } 1686 1687 if input == nil { 1688 input = &GetBlockPublicAccessConfigurationInput{} 1689 } 1690 1691 output = &GetBlockPublicAccessConfigurationOutput{} 1692 req = c.newRequest(op, input, output) 1693 return 1694} 1695 1696// GetBlockPublicAccessConfiguration API operation for Amazon EMR. 1697// 1698// Returns the Amazon EMR block public access configuration for your Amazon 1699// Web Services account in the current Region. For more information see Configure 1700// Block Public Access for Amazon EMR (https://docs.aws.amazon.com/emr/latest/ManagementGuide/configure-block-public-access.html) 1701// in the Amazon EMR Management Guide. 1702// 1703// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1704// with awserr.Error's Code and Message methods to get detailed information about 1705// the error. 1706// 1707// See the AWS API reference guide for Amazon EMR's 1708// API operation GetBlockPublicAccessConfiguration for usage and error information. 1709// 1710// Returned Error Types: 1711// * InternalServerException 1712// This exception occurs when there is an internal failure in the Amazon EMR 1713// service. 1714// 1715// * InvalidRequestException 1716// This exception occurs when there is something wrong with user input. 1717// 1718// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/GetBlockPublicAccessConfiguration 1719func (c *EMR) GetBlockPublicAccessConfiguration(input *GetBlockPublicAccessConfigurationInput) (*GetBlockPublicAccessConfigurationOutput, error) { 1720 req, out := c.GetBlockPublicAccessConfigurationRequest(input) 1721 return out, req.Send() 1722} 1723 1724// GetBlockPublicAccessConfigurationWithContext is the same as GetBlockPublicAccessConfiguration with the addition of 1725// the ability to pass a context and additional request options. 1726// 1727// See GetBlockPublicAccessConfiguration for details on how to use this API operation. 1728// 1729// The context must be non-nil and will be used for request cancellation. If 1730// the context is nil a panic will occur. In the future the SDK may create 1731// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1732// for more information on using Contexts. 1733func (c *EMR) GetBlockPublicAccessConfigurationWithContext(ctx aws.Context, input *GetBlockPublicAccessConfigurationInput, opts ...request.Option) (*GetBlockPublicAccessConfigurationOutput, error) { 1734 req, out := c.GetBlockPublicAccessConfigurationRequest(input) 1735 req.SetContext(ctx) 1736 req.ApplyOptions(opts...) 1737 return out, req.Send() 1738} 1739 1740const opGetManagedScalingPolicy = "GetManagedScalingPolicy" 1741 1742// GetManagedScalingPolicyRequest generates a "aws/request.Request" representing the 1743// client's request for the GetManagedScalingPolicy operation. The "output" return 1744// value will be populated with the request's response once the request completes 1745// successfully. 1746// 1747// Use "Send" method on the returned Request to send the API call to the service. 1748// the "output" return value is not valid until after Send returns without error. 1749// 1750// See GetManagedScalingPolicy for more information on using the GetManagedScalingPolicy 1751// API call, and error handling. 1752// 1753// This method is useful when you want to inject custom logic or configuration 1754// into the SDK's request lifecycle. Such as custom headers, or retry logic. 1755// 1756// 1757// // Example sending a request using the GetManagedScalingPolicyRequest method. 1758// req, resp := client.GetManagedScalingPolicyRequest(params) 1759// 1760// err := req.Send() 1761// if err == nil { // resp is now filled 1762// fmt.Println(resp) 1763// } 1764// 1765// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/GetManagedScalingPolicy 1766func (c *EMR) GetManagedScalingPolicyRequest(input *GetManagedScalingPolicyInput) (req *request.Request, output *GetManagedScalingPolicyOutput) { 1767 op := &request.Operation{ 1768 Name: opGetManagedScalingPolicy, 1769 HTTPMethod: "POST", 1770 HTTPPath: "/", 1771 } 1772 1773 if input == nil { 1774 input = &GetManagedScalingPolicyInput{} 1775 } 1776 1777 output = &GetManagedScalingPolicyOutput{} 1778 req = c.newRequest(op, input, output) 1779 return 1780} 1781 1782// GetManagedScalingPolicy API operation for Amazon EMR. 1783// 1784// Fetches the attached managed scaling policy for an Amazon EMR cluster. 1785// 1786// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1787// with awserr.Error's Code and Message methods to get detailed information about 1788// the error. 1789// 1790// See the AWS API reference guide for Amazon EMR's 1791// API operation GetManagedScalingPolicy for usage and error information. 1792// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/GetManagedScalingPolicy 1793func (c *EMR) GetManagedScalingPolicy(input *GetManagedScalingPolicyInput) (*GetManagedScalingPolicyOutput, error) { 1794 req, out := c.GetManagedScalingPolicyRequest(input) 1795 return out, req.Send() 1796} 1797 1798// GetManagedScalingPolicyWithContext is the same as GetManagedScalingPolicy with the addition of 1799// the ability to pass a context and additional request options. 1800// 1801// See GetManagedScalingPolicy for details on how to use this API operation. 1802// 1803// The context must be non-nil and will be used for request cancellation. If 1804// the context is nil a panic will occur. In the future the SDK may create 1805// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1806// for more information on using Contexts. 1807func (c *EMR) GetManagedScalingPolicyWithContext(ctx aws.Context, input *GetManagedScalingPolicyInput, opts ...request.Option) (*GetManagedScalingPolicyOutput, error) { 1808 req, out := c.GetManagedScalingPolicyRequest(input) 1809 req.SetContext(ctx) 1810 req.ApplyOptions(opts...) 1811 return out, req.Send() 1812} 1813 1814const opGetStudioSessionMapping = "GetStudioSessionMapping" 1815 1816// GetStudioSessionMappingRequest generates a "aws/request.Request" representing the 1817// client's request for the GetStudioSessionMapping operation. The "output" return 1818// value will be populated with the request's response once the request completes 1819// successfully. 1820// 1821// Use "Send" method on the returned Request to send the API call to the service. 1822// the "output" return value is not valid until after Send returns without error. 1823// 1824// See GetStudioSessionMapping for more information on using the GetStudioSessionMapping 1825// API call, and error handling. 1826// 1827// This method is useful when you want to inject custom logic or configuration 1828// into the SDK's request lifecycle. Such as custom headers, or retry logic. 1829// 1830// 1831// // Example sending a request using the GetStudioSessionMappingRequest method. 1832// req, resp := client.GetStudioSessionMappingRequest(params) 1833// 1834// err := req.Send() 1835// if err == nil { // resp is now filled 1836// fmt.Println(resp) 1837// } 1838// 1839// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/GetStudioSessionMapping 1840func (c *EMR) GetStudioSessionMappingRequest(input *GetStudioSessionMappingInput) (req *request.Request, output *GetStudioSessionMappingOutput) { 1841 op := &request.Operation{ 1842 Name: opGetStudioSessionMapping, 1843 HTTPMethod: "POST", 1844 HTTPPath: "/", 1845 } 1846 1847 if input == nil { 1848 input = &GetStudioSessionMappingInput{} 1849 } 1850 1851 output = &GetStudioSessionMappingOutput{} 1852 req = c.newRequest(op, input, output) 1853 return 1854} 1855 1856// GetStudioSessionMapping API operation for Amazon EMR. 1857// 1858// Fetches mapping details for the specified Amazon EMR Studio and identity 1859// (user or group). 1860// 1861// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1862// with awserr.Error's Code and Message methods to get detailed information about 1863// the error. 1864// 1865// See the AWS API reference guide for Amazon EMR's 1866// API operation GetStudioSessionMapping for usage and error information. 1867// 1868// Returned Error Types: 1869// * InternalServerError 1870// Indicates that an error occurred while processing the request and that the 1871// request was not completed. 1872// 1873// * InvalidRequestException 1874// This exception occurs when there is something wrong with user input. 1875// 1876// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/GetStudioSessionMapping 1877func (c *EMR) GetStudioSessionMapping(input *GetStudioSessionMappingInput) (*GetStudioSessionMappingOutput, error) { 1878 req, out := c.GetStudioSessionMappingRequest(input) 1879 return out, req.Send() 1880} 1881 1882// GetStudioSessionMappingWithContext is the same as GetStudioSessionMapping with the addition of 1883// the ability to pass a context and additional request options. 1884// 1885// See GetStudioSessionMapping for details on how to use this API operation. 1886// 1887// The context must be non-nil and will be used for request cancellation. If 1888// the context is nil a panic will occur. In the future the SDK may create 1889// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1890// for more information on using Contexts. 1891func (c *EMR) GetStudioSessionMappingWithContext(ctx aws.Context, input *GetStudioSessionMappingInput, opts ...request.Option) (*GetStudioSessionMappingOutput, error) { 1892 req, out := c.GetStudioSessionMappingRequest(input) 1893 req.SetContext(ctx) 1894 req.ApplyOptions(opts...) 1895 return out, req.Send() 1896} 1897 1898const opListBootstrapActions = "ListBootstrapActions" 1899 1900// ListBootstrapActionsRequest generates a "aws/request.Request" representing the 1901// client's request for the ListBootstrapActions operation. The "output" return 1902// value will be populated with the request's response once the request completes 1903// successfully. 1904// 1905// Use "Send" method on the returned Request to send the API call to the service. 1906// the "output" return value is not valid until after Send returns without error. 1907// 1908// See ListBootstrapActions for more information on using the ListBootstrapActions 1909// API call, and error handling. 1910// 1911// This method is useful when you want to inject custom logic or configuration 1912// into the SDK's request lifecycle. Such as custom headers, or retry logic. 1913// 1914// 1915// // Example sending a request using the ListBootstrapActionsRequest method. 1916// req, resp := client.ListBootstrapActionsRequest(params) 1917// 1918// err := req.Send() 1919// if err == nil { // resp is now filled 1920// fmt.Println(resp) 1921// } 1922// 1923// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/ListBootstrapActions 1924func (c *EMR) ListBootstrapActionsRequest(input *ListBootstrapActionsInput) (req *request.Request, output *ListBootstrapActionsOutput) { 1925 op := &request.Operation{ 1926 Name: opListBootstrapActions, 1927 HTTPMethod: "POST", 1928 HTTPPath: "/", 1929 Paginator: &request.Paginator{ 1930 InputTokens: []string{"Marker"}, 1931 OutputTokens: []string{"Marker"}, 1932 LimitToken: "", 1933 TruncationToken: "", 1934 }, 1935 } 1936 1937 if input == nil { 1938 input = &ListBootstrapActionsInput{} 1939 } 1940 1941 output = &ListBootstrapActionsOutput{} 1942 req = c.newRequest(op, input, output) 1943 return 1944} 1945 1946// ListBootstrapActions API operation for Amazon EMR. 1947// 1948// Provides information about the bootstrap actions associated with a cluster. 1949// 1950// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1951// with awserr.Error's Code and Message methods to get detailed information about 1952// the error. 1953// 1954// See the AWS API reference guide for Amazon EMR's 1955// API operation ListBootstrapActions for usage and error information. 1956// 1957// Returned Error Types: 1958// * InternalServerException 1959// This exception occurs when there is an internal failure in the Amazon EMR 1960// service. 1961// 1962// * InvalidRequestException 1963// This exception occurs when there is something wrong with user input. 1964// 1965// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/ListBootstrapActions 1966func (c *EMR) ListBootstrapActions(input *ListBootstrapActionsInput) (*ListBootstrapActionsOutput, error) { 1967 req, out := c.ListBootstrapActionsRequest(input) 1968 return out, req.Send() 1969} 1970 1971// ListBootstrapActionsWithContext is the same as ListBootstrapActions with the addition of 1972// the ability to pass a context and additional request options. 1973// 1974// See ListBootstrapActions for details on how to use this API operation. 1975// 1976// The context must be non-nil and will be used for request cancellation. If 1977// the context is nil a panic will occur. In the future the SDK may create 1978// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1979// for more information on using Contexts. 1980func (c *EMR) ListBootstrapActionsWithContext(ctx aws.Context, input *ListBootstrapActionsInput, opts ...request.Option) (*ListBootstrapActionsOutput, error) { 1981 req, out := c.ListBootstrapActionsRequest(input) 1982 req.SetContext(ctx) 1983 req.ApplyOptions(opts...) 1984 return out, req.Send() 1985} 1986 1987// ListBootstrapActionsPages iterates over the pages of a ListBootstrapActions operation, 1988// calling the "fn" function with the response data for each page. To stop 1989// iterating, return false from the fn function. 1990// 1991// See ListBootstrapActions method for more information on how to use this operation. 1992// 1993// Note: This operation can generate multiple requests to a service. 1994// 1995// // Example iterating over at most 3 pages of a ListBootstrapActions operation. 1996// pageNum := 0 1997// err := client.ListBootstrapActionsPages(params, 1998// func(page *emr.ListBootstrapActionsOutput, lastPage bool) bool { 1999// pageNum++ 2000// fmt.Println(page) 2001// return pageNum <= 3 2002// }) 2003// 2004func (c *EMR) ListBootstrapActionsPages(input *ListBootstrapActionsInput, fn func(*ListBootstrapActionsOutput, bool) bool) error { 2005 return c.ListBootstrapActionsPagesWithContext(aws.BackgroundContext(), input, fn) 2006} 2007 2008// ListBootstrapActionsPagesWithContext same as ListBootstrapActionsPages except 2009// it takes a Context and allows setting request options on the pages. 2010// 2011// The context must be non-nil and will be used for request cancellation. If 2012// the context is nil a panic will occur. In the future the SDK may create 2013// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2014// for more information on using Contexts. 2015func (c *EMR) ListBootstrapActionsPagesWithContext(ctx aws.Context, input *ListBootstrapActionsInput, fn func(*ListBootstrapActionsOutput, bool) bool, opts ...request.Option) error { 2016 p := request.Pagination{ 2017 NewRequest: func() (*request.Request, error) { 2018 var inCpy *ListBootstrapActionsInput 2019 if input != nil { 2020 tmp := *input 2021 inCpy = &tmp 2022 } 2023 req, _ := c.ListBootstrapActionsRequest(inCpy) 2024 req.SetContext(ctx) 2025 req.ApplyOptions(opts...) 2026 return req, nil 2027 }, 2028 } 2029 2030 for p.Next() { 2031 if !fn(p.Page().(*ListBootstrapActionsOutput), !p.HasNextPage()) { 2032 break 2033 } 2034 } 2035 2036 return p.Err() 2037} 2038 2039const opListClusters = "ListClusters" 2040 2041// ListClustersRequest generates a "aws/request.Request" representing the 2042// client's request for the ListClusters operation. The "output" return 2043// value will be populated with the request's response once the request completes 2044// successfully. 2045// 2046// Use "Send" method on the returned Request to send the API call to the service. 2047// the "output" return value is not valid until after Send returns without error. 2048// 2049// See ListClusters for more information on using the ListClusters 2050// API call, and error handling. 2051// 2052// This method is useful when you want to inject custom logic or configuration 2053// into the SDK's request lifecycle. Such as custom headers, or retry logic. 2054// 2055// 2056// // Example sending a request using the ListClustersRequest method. 2057// req, resp := client.ListClustersRequest(params) 2058// 2059// err := req.Send() 2060// if err == nil { // resp is now filled 2061// fmt.Println(resp) 2062// } 2063// 2064// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/ListClusters 2065func (c *EMR) ListClustersRequest(input *ListClustersInput) (req *request.Request, output *ListClustersOutput) { 2066 op := &request.Operation{ 2067 Name: opListClusters, 2068 HTTPMethod: "POST", 2069 HTTPPath: "/", 2070 Paginator: &request.Paginator{ 2071 InputTokens: []string{"Marker"}, 2072 OutputTokens: []string{"Marker"}, 2073 LimitToken: "", 2074 TruncationToken: "", 2075 }, 2076 } 2077 2078 if input == nil { 2079 input = &ListClustersInput{} 2080 } 2081 2082 output = &ListClustersOutput{} 2083 req = c.newRequest(op, input, output) 2084 return 2085} 2086 2087// ListClusters API operation for Amazon EMR. 2088// 2089// Provides the status of all clusters visible to this Amazon Web Services account. 2090// Allows you to filter the list of clusters based on certain criteria; for 2091// example, filtering by cluster creation date and time or by status. This call 2092// returns a maximum of 50 clusters in unsorted order per call, but returns 2093// a marker to track the paging of the cluster list across multiple ListClusters 2094// calls. 2095// 2096// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 2097// with awserr.Error's Code and Message methods to get detailed information about 2098// the error. 2099// 2100// See the AWS API reference guide for Amazon EMR's 2101// API operation ListClusters for usage and error information. 2102// 2103// Returned Error Types: 2104// * InternalServerException 2105// This exception occurs when there is an internal failure in the Amazon EMR 2106// service. 2107// 2108// * InvalidRequestException 2109// This exception occurs when there is something wrong with user input. 2110// 2111// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/ListClusters 2112func (c *EMR) ListClusters(input *ListClustersInput) (*ListClustersOutput, error) { 2113 req, out := c.ListClustersRequest(input) 2114 return out, req.Send() 2115} 2116 2117// ListClustersWithContext is the same as ListClusters with the addition of 2118// the ability to pass a context and additional request options. 2119// 2120// See ListClusters for details on how to use this API operation. 2121// 2122// The context must be non-nil and will be used for request cancellation. If 2123// the context is nil a panic will occur. In the future the SDK may create 2124// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2125// for more information on using Contexts. 2126func (c *EMR) ListClustersWithContext(ctx aws.Context, input *ListClustersInput, opts ...request.Option) (*ListClustersOutput, error) { 2127 req, out := c.ListClustersRequest(input) 2128 req.SetContext(ctx) 2129 req.ApplyOptions(opts...) 2130 return out, req.Send() 2131} 2132 2133// ListClustersPages iterates over the pages of a ListClusters operation, 2134// calling the "fn" function with the response data for each page. To stop 2135// iterating, return false from the fn function. 2136// 2137// See ListClusters method for more information on how to use this operation. 2138// 2139// Note: This operation can generate multiple requests to a service. 2140// 2141// // Example iterating over at most 3 pages of a ListClusters operation. 2142// pageNum := 0 2143// err := client.ListClustersPages(params, 2144// func(page *emr.ListClustersOutput, lastPage bool) bool { 2145// pageNum++ 2146// fmt.Println(page) 2147// return pageNum <= 3 2148// }) 2149// 2150func (c *EMR) ListClustersPages(input *ListClustersInput, fn func(*ListClustersOutput, bool) bool) error { 2151 return c.ListClustersPagesWithContext(aws.BackgroundContext(), input, fn) 2152} 2153 2154// ListClustersPagesWithContext same as ListClustersPages except 2155// it takes a Context and allows setting request options on the pages. 2156// 2157// The context must be non-nil and will be used for request cancellation. If 2158// the context is nil a panic will occur. In the future the SDK may create 2159// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2160// for more information on using Contexts. 2161func (c *EMR) ListClustersPagesWithContext(ctx aws.Context, input *ListClustersInput, fn func(*ListClustersOutput, bool) bool, opts ...request.Option) error { 2162 p := request.Pagination{ 2163 NewRequest: func() (*request.Request, error) { 2164 var inCpy *ListClustersInput 2165 if input != nil { 2166 tmp := *input 2167 inCpy = &tmp 2168 } 2169 req, _ := c.ListClustersRequest(inCpy) 2170 req.SetContext(ctx) 2171 req.ApplyOptions(opts...) 2172 return req, nil 2173 }, 2174 } 2175 2176 for p.Next() { 2177 if !fn(p.Page().(*ListClustersOutput), !p.HasNextPage()) { 2178 break 2179 } 2180 } 2181 2182 return p.Err() 2183} 2184 2185const opListInstanceFleets = "ListInstanceFleets" 2186 2187// ListInstanceFleetsRequest generates a "aws/request.Request" representing the 2188// client's request for the ListInstanceFleets operation. The "output" return 2189// value will be populated with the request's response once the request completes 2190// successfully. 2191// 2192// Use "Send" method on the returned Request to send the API call to the service. 2193// the "output" return value is not valid until after Send returns without error. 2194// 2195// See ListInstanceFleets for more information on using the ListInstanceFleets 2196// API call, and error handling. 2197// 2198// This method is useful when you want to inject custom logic or configuration 2199// into the SDK's request lifecycle. Such as custom headers, or retry logic. 2200// 2201// 2202// // Example sending a request using the ListInstanceFleetsRequest method. 2203// req, resp := client.ListInstanceFleetsRequest(params) 2204// 2205// err := req.Send() 2206// if err == nil { // resp is now filled 2207// fmt.Println(resp) 2208// } 2209// 2210// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/ListInstanceFleets 2211func (c *EMR) ListInstanceFleetsRequest(input *ListInstanceFleetsInput) (req *request.Request, output *ListInstanceFleetsOutput) { 2212 op := &request.Operation{ 2213 Name: opListInstanceFleets, 2214 HTTPMethod: "POST", 2215 HTTPPath: "/", 2216 Paginator: &request.Paginator{ 2217 InputTokens: []string{"Marker"}, 2218 OutputTokens: []string{"Marker"}, 2219 LimitToken: "", 2220 TruncationToken: "", 2221 }, 2222 } 2223 2224 if input == nil { 2225 input = &ListInstanceFleetsInput{} 2226 } 2227 2228 output = &ListInstanceFleetsOutput{} 2229 req = c.newRequest(op, input, output) 2230 return 2231} 2232 2233// ListInstanceFleets API operation for Amazon EMR. 2234// 2235// Lists all available details about the instance fleets in a cluster. 2236// 2237// The instance fleet configuration is available only in Amazon EMR versions 2238// 4.8.0 and later, excluding 5.0.x versions. 2239// 2240// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 2241// with awserr.Error's Code and Message methods to get detailed information about 2242// the error. 2243// 2244// See the AWS API reference guide for Amazon EMR's 2245// API operation ListInstanceFleets for usage and error information. 2246// 2247// Returned Error Types: 2248// * InternalServerException 2249// This exception occurs when there is an internal failure in the Amazon EMR 2250// service. 2251// 2252// * InvalidRequestException 2253// This exception occurs when there is something wrong with user input. 2254// 2255// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/ListInstanceFleets 2256func (c *EMR) ListInstanceFleets(input *ListInstanceFleetsInput) (*ListInstanceFleetsOutput, error) { 2257 req, out := c.ListInstanceFleetsRequest(input) 2258 return out, req.Send() 2259} 2260 2261// ListInstanceFleetsWithContext is the same as ListInstanceFleets with the addition of 2262// the ability to pass a context and additional request options. 2263// 2264// See ListInstanceFleets for details on how to use this API operation. 2265// 2266// The context must be non-nil and will be used for request cancellation. If 2267// the context is nil a panic will occur. In the future the SDK may create 2268// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2269// for more information on using Contexts. 2270func (c *EMR) ListInstanceFleetsWithContext(ctx aws.Context, input *ListInstanceFleetsInput, opts ...request.Option) (*ListInstanceFleetsOutput, error) { 2271 req, out := c.ListInstanceFleetsRequest(input) 2272 req.SetContext(ctx) 2273 req.ApplyOptions(opts...) 2274 return out, req.Send() 2275} 2276 2277// ListInstanceFleetsPages iterates over the pages of a ListInstanceFleets operation, 2278// calling the "fn" function with the response data for each page. To stop 2279// iterating, return false from the fn function. 2280// 2281// See ListInstanceFleets method for more information on how to use this operation. 2282// 2283// Note: This operation can generate multiple requests to a service. 2284// 2285// // Example iterating over at most 3 pages of a ListInstanceFleets operation. 2286// pageNum := 0 2287// err := client.ListInstanceFleetsPages(params, 2288// func(page *emr.ListInstanceFleetsOutput, lastPage bool) bool { 2289// pageNum++ 2290// fmt.Println(page) 2291// return pageNum <= 3 2292// }) 2293// 2294func (c *EMR) ListInstanceFleetsPages(input *ListInstanceFleetsInput, fn func(*ListInstanceFleetsOutput, bool) bool) error { 2295 return c.ListInstanceFleetsPagesWithContext(aws.BackgroundContext(), input, fn) 2296} 2297 2298// ListInstanceFleetsPagesWithContext same as ListInstanceFleetsPages except 2299// it takes a Context and allows setting request options on the pages. 2300// 2301// The context must be non-nil and will be used for request cancellation. If 2302// the context is nil a panic will occur. In the future the SDK may create 2303// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2304// for more information on using Contexts. 2305func (c *EMR) ListInstanceFleetsPagesWithContext(ctx aws.Context, input *ListInstanceFleetsInput, fn func(*ListInstanceFleetsOutput, bool) bool, opts ...request.Option) error { 2306 p := request.Pagination{ 2307 NewRequest: func() (*request.Request, error) { 2308 var inCpy *ListInstanceFleetsInput 2309 if input != nil { 2310 tmp := *input 2311 inCpy = &tmp 2312 } 2313 req, _ := c.ListInstanceFleetsRequest(inCpy) 2314 req.SetContext(ctx) 2315 req.ApplyOptions(opts...) 2316 return req, nil 2317 }, 2318 } 2319 2320 for p.Next() { 2321 if !fn(p.Page().(*ListInstanceFleetsOutput), !p.HasNextPage()) { 2322 break 2323 } 2324 } 2325 2326 return p.Err() 2327} 2328 2329const opListInstanceGroups = "ListInstanceGroups" 2330 2331// ListInstanceGroupsRequest generates a "aws/request.Request" representing the 2332// client's request for the ListInstanceGroups operation. The "output" return 2333// value will be populated with the request's response once the request completes 2334// successfully. 2335// 2336// Use "Send" method on the returned Request to send the API call to the service. 2337// the "output" return value is not valid until after Send returns without error. 2338// 2339// See ListInstanceGroups for more information on using the ListInstanceGroups 2340// API call, and error handling. 2341// 2342// This method is useful when you want to inject custom logic or configuration 2343// into the SDK's request lifecycle. Such as custom headers, or retry logic. 2344// 2345// 2346// // Example sending a request using the ListInstanceGroupsRequest method. 2347// req, resp := client.ListInstanceGroupsRequest(params) 2348// 2349// err := req.Send() 2350// if err == nil { // resp is now filled 2351// fmt.Println(resp) 2352// } 2353// 2354// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/ListInstanceGroups 2355func (c *EMR) ListInstanceGroupsRequest(input *ListInstanceGroupsInput) (req *request.Request, output *ListInstanceGroupsOutput) { 2356 op := &request.Operation{ 2357 Name: opListInstanceGroups, 2358 HTTPMethod: "POST", 2359 HTTPPath: "/", 2360 Paginator: &request.Paginator{ 2361 InputTokens: []string{"Marker"}, 2362 OutputTokens: []string{"Marker"}, 2363 LimitToken: "", 2364 TruncationToken: "", 2365 }, 2366 } 2367 2368 if input == nil { 2369 input = &ListInstanceGroupsInput{} 2370 } 2371 2372 output = &ListInstanceGroupsOutput{} 2373 req = c.newRequest(op, input, output) 2374 return 2375} 2376 2377// ListInstanceGroups API operation for Amazon EMR. 2378// 2379// Provides all available details about the instance groups in a cluster. 2380// 2381// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 2382// with awserr.Error's Code and Message methods to get detailed information about 2383// the error. 2384// 2385// See the AWS API reference guide for Amazon EMR's 2386// API operation ListInstanceGroups for usage and error information. 2387// 2388// Returned Error Types: 2389// * InternalServerException 2390// This exception occurs when there is an internal failure in the Amazon EMR 2391// service. 2392// 2393// * InvalidRequestException 2394// This exception occurs when there is something wrong with user input. 2395// 2396// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/ListInstanceGroups 2397func (c *EMR) ListInstanceGroups(input *ListInstanceGroupsInput) (*ListInstanceGroupsOutput, error) { 2398 req, out := c.ListInstanceGroupsRequest(input) 2399 return out, req.Send() 2400} 2401 2402// ListInstanceGroupsWithContext is the same as ListInstanceGroups with the addition of 2403// the ability to pass a context and additional request options. 2404// 2405// See ListInstanceGroups for details on how to use this API operation. 2406// 2407// The context must be non-nil and will be used for request cancellation. If 2408// the context is nil a panic will occur. In the future the SDK may create 2409// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2410// for more information on using Contexts. 2411func (c *EMR) ListInstanceGroupsWithContext(ctx aws.Context, input *ListInstanceGroupsInput, opts ...request.Option) (*ListInstanceGroupsOutput, error) { 2412 req, out := c.ListInstanceGroupsRequest(input) 2413 req.SetContext(ctx) 2414 req.ApplyOptions(opts...) 2415 return out, req.Send() 2416} 2417 2418// ListInstanceGroupsPages iterates over the pages of a ListInstanceGroups operation, 2419// calling the "fn" function with the response data for each page. To stop 2420// iterating, return false from the fn function. 2421// 2422// See ListInstanceGroups method for more information on how to use this operation. 2423// 2424// Note: This operation can generate multiple requests to a service. 2425// 2426// // Example iterating over at most 3 pages of a ListInstanceGroups operation. 2427// pageNum := 0 2428// err := client.ListInstanceGroupsPages(params, 2429// func(page *emr.ListInstanceGroupsOutput, lastPage bool) bool { 2430// pageNum++ 2431// fmt.Println(page) 2432// return pageNum <= 3 2433// }) 2434// 2435func (c *EMR) ListInstanceGroupsPages(input *ListInstanceGroupsInput, fn func(*ListInstanceGroupsOutput, bool) bool) error { 2436 return c.ListInstanceGroupsPagesWithContext(aws.BackgroundContext(), input, fn) 2437} 2438 2439// ListInstanceGroupsPagesWithContext same as ListInstanceGroupsPages except 2440// it takes a Context and allows setting request options on the pages. 2441// 2442// The context must be non-nil and will be used for request cancellation. If 2443// the context is nil a panic will occur. In the future the SDK may create 2444// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2445// for more information on using Contexts. 2446func (c *EMR) ListInstanceGroupsPagesWithContext(ctx aws.Context, input *ListInstanceGroupsInput, fn func(*ListInstanceGroupsOutput, bool) bool, opts ...request.Option) error { 2447 p := request.Pagination{ 2448 NewRequest: func() (*request.Request, error) { 2449 var inCpy *ListInstanceGroupsInput 2450 if input != nil { 2451 tmp := *input 2452 inCpy = &tmp 2453 } 2454 req, _ := c.ListInstanceGroupsRequest(inCpy) 2455 req.SetContext(ctx) 2456 req.ApplyOptions(opts...) 2457 return req, nil 2458 }, 2459 } 2460 2461 for p.Next() { 2462 if !fn(p.Page().(*ListInstanceGroupsOutput), !p.HasNextPage()) { 2463 break 2464 } 2465 } 2466 2467 return p.Err() 2468} 2469 2470const opListInstances = "ListInstances" 2471 2472// ListInstancesRequest generates a "aws/request.Request" representing the 2473// client's request for the ListInstances operation. The "output" return 2474// value will be populated with the request's response once the request completes 2475// successfully. 2476// 2477// Use "Send" method on the returned Request to send the API call to the service. 2478// the "output" return value is not valid until after Send returns without error. 2479// 2480// See ListInstances for more information on using the ListInstances 2481// API call, and error handling. 2482// 2483// This method is useful when you want to inject custom logic or configuration 2484// into the SDK's request lifecycle. Such as custom headers, or retry logic. 2485// 2486// 2487// // Example sending a request using the ListInstancesRequest method. 2488// req, resp := client.ListInstancesRequest(params) 2489// 2490// err := req.Send() 2491// if err == nil { // resp is now filled 2492// fmt.Println(resp) 2493// } 2494// 2495// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/ListInstances 2496func (c *EMR) ListInstancesRequest(input *ListInstancesInput) (req *request.Request, output *ListInstancesOutput) { 2497 op := &request.Operation{ 2498 Name: opListInstances, 2499 HTTPMethod: "POST", 2500 HTTPPath: "/", 2501 Paginator: &request.Paginator{ 2502 InputTokens: []string{"Marker"}, 2503 OutputTokens: []string{"Marker"}, 2504 LimitToken: "", 2505 TruncationToken: "", 2506 }, 2507 } 2508 2509 if input == nil { 2510 input = &ListInstancesInput{} 2511 } 2512 2513 output = &ListInstancesOutput{} 2514 req = c.newRequest(op, input, output) 2515 return 2516} 2517 2518// ListInstances API operation for Amazon EMR. 2519// 2520// Provides information for all active EC2 instances and EC2 instances terminated 2521// in the last 30 days, up to a maximum of 2,000. EC2 instances in any of the 2522// following states are considered active: AWAITING_FULFILLMENT, PROVISIONING, 2523// BOOTSTRAPPING, RUNNING. 2524// 2525// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 2526// with awserr.Error's Code and Message methods to get detailed information about 2527// the error. 2528// 2529// See the AWS API reference guide for Amazon EMR's 2530// API operation ListInstances for usage and error information. 2531// 2532// Returned Error Types: 2533// * InternalServerException 2534// This exception occurs when there is an internal failure in the Amazon EMR 2535// service. 2536// 2537// * InvalidRequestException 2538// This exception occurs when there is something wrong with user input. 2539// 2540// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/ListInstances 2541func (c *EMR) ListInstances(input *ListInstancesInput) (*ListInstancesOutput, error) { 2542 req, out := c.ListInstancesRequest(input) 2543 return out, req.Send() 2544} 2545 2546// ListInstancesWithContext is the same as ListInstances with the addition of 2547// the ability to pass a context and additional request options. 2548// 2549// See ListInstances for details on how to use this API operation. 2550// 2551// The context must be non-nil and will be used for request cancellation. If 2552// the context is nil a panic will occur. In the future the SDK may create 2553// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2554// for more information on using Contexts. 2555func (c *EMR) ListInstancesWithContext(ctx aws.Context, input *ListInstancesInput, opts ...request.Option) (*ListInstancesOutput, error) { 2556 req, out := c.ListInstancesRequest(input) 2557 req.SetContext(ctx) 2558 req.ApplyOptions(opts...) 2559 return out, req.Send() 2560} 2561 2562// ListInstancesPages iterates over the pages of a ListInstances operation, 2563// calling the "fn" function with the response data for each page. To stop 2564// iterating, return false from the fn function. 2565// 2566// See ListInstances method for more information on how to use this operation. 2567// 2568// Note: This operation can generate multiple requests to a service. 2569// 2570// // Example iterating over at most 3 pages of a ListInstances operation. 2571// pageNum := 0 2572// err := client.ListInstancesPages(params, 2573// func(page *emr.ListInstancesOutput, lastPage bool) bool { 2574// pageNum++ 2575// fmt.Println(page) 2576// return pageNum <= 3 2577// }) 2578// 2579func (c *EMR) ListInstancesPages(input *ListInstancesInput, fn func(*ListInstancesOutput, bool) bool) error { 2580 return c.ListInstancesPagesWithContext(aws.BackgroundContext(), input, fn) 2581} 2582 2583// ListInstancesPagesWithContext same as ListInstancesPages except 2584// it takes a Context and allows setting request options on the pages. 2585// 2586// The context must be non-nil and will be used for request cancellation. If 2587// the context is nil a panic will occur. In the future the SDK may create 2588// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2589// for more information on using Contexts. 2590func (c *EMR) ListInstancesPagesWithContext(ctx aws.Context, input *ListInstancesInput, fn func(*ListInstancesOutput, bool) bool, opts ...request.Option) error { 2591 p := request.Pagination{ 2592 NewRequest: func() (*request.Request, error) { 2593 var inCpy *ListInstancesInput 2594 if input != nil { 2595 tmp := *input 2596 inCpy = &tmp 2597 } 2598 req, _ := c.ListInstancesRequest(inCpy) 2599 req.SetContext(ctx) 2600 req.ApplyOptions(opts...) 2601 return req, nil 2602 }, 2603 } 2604 2605 for p.Next() { 2606 if !fn(p.Page().(*ListInstancesOutput), !p.HasNextPage()) { 2607 break 2608 } 2609 } 2610 2611 return p.Err() 2612} 2613 2614const opListNotebookExecutions = "ListNotebookExecutions" 2615 2616// ListNotebookExecutionsRequest generates a "aws/request.Request" representing the 2617// client's request for the ListNotebookExecutions operation. The "output" return 2618// value will be populated with the request's response once the request completes 2619// successfully. 2620// 2621// Use "Send" method on the returned Request to send the API call to the service. 2622// the "output" return value is not valid until after Send returns without error. 2623// 2624// See ListNotebookExecutions for more information on using the ListNotebookExecutions 2625// API call, and error handling. 2626// 2627// This method is useful when you want to inject custom logic or configuration 2628// into the SDK's request lifecycle. Such as custom headers, or retry logic. 2629// 2630// 2631// // Example sending a request using the ListNotebookExecutionsRequest method. 2632// req, resp := client.ListNotebookExecutionsRequest(params) 2633// 2634// err := req.Send() 2635// if err == nil { // resp is now filled 2636// fmt.Println(resp) 2637// } 2638// 2639// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/ListNotebookExecutions 2640func (c *EMR) ListNotebookExecutionsRequest(input *ListNotebookExecutionsInput) (req *request.Request, output *ListNotebookExecutionsOutput) { 2641 op := &request.Operation{ 2642 Name: opListNotebookExecutions, 2643 HTTPMethod: "POST", 2644 HTTPPath: "/", 2645 Paginator: &request.Paginator{ 2646 InputTokens: []string{"Marker"}, 2647 OutputTokens: []string{"Marker"}, 2648 LimitToken: "", 2649 TruncationToken: "", 2650 }, 2651 } 2652 2653 if input == nil { 2654 input = &ListNotebookExecutionsInput{} 2655 } 2656 2657 output = &ListNotebookExecutionsOutput{} 2658 req = c.newRequest(op, input, output) 2659 return 2660} 2661 2662// ListNotebookExecutions API operation for Amazon EMR. 2663// 2664// Provides summaries of all notebook executions. You can filter the list based 2665// on multiple criteria such as status, time range, and editor id. Returns a 2666// maximum of 50 notebook executions and a marker to track the paging of a longer 2667// notebook execution list across multiple ListNotebookExecution calls. 2668// 2669// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 2670// with awserr.Error's Code and Message methods to get detailed information about 2671// the error. 2672// 2673// See the AWS API reference guide for Amazon EMR's 2674// API operation ListNotebookExecutions for usage and error information. 2675// 2676// Returned Error Types: 2677// * InternalServerError 2678// Indicates that an error occurred while processing the request and that the 2679// request was not completed. 2680// 2681// * InvalidRequestException 2682// This exception occurs when there is something wrong with user input. 2683// 2684// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/ListNotebookExecutions 2685func (c *EMR) ListNotebookExecutions(input *ListNotebookExecutionsInput) (*ListNotebookExecutionsOutput, error) { 2686 req, out := c.ListNotebookExecutionsRequest(input) 2687 return out, req.Send() 2688} 2689 2690// ListNotebookExecutionsWithContext is the same as ListNotebookExecutions with the addition of 2691// the ability to pass a context and additional request options. 2692// 2693// See ListNotebookExecutions for details on how to use this API operation. 2694// 2695// The context must be non-nil and will be used for request cancellation. If 2696// the context is nil a panic will occur. In the future the SDK may create 2697// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2698// for more information on using Contexts. 2699func (c *EMR) ListNotebookExecutionsWithContext(ctx aws.Context, input *ListNotebookExecutionsInput, opts ...request.Option) (*ListNotebookExecutionsOutput, error) { 2700 req, out := c.ListNotebookExecutionsRequest(input) 2701 req.SetContext(ctx) 2702 req.ApplyOptions(opts...) 2703 return out, req.Send() 2704} 2705 2706// ListNotebookExecutionsPages iterates over the pages of a ListNotebookExecutions operation, 2707// calling the "fn" function with the response data for each page. To stop 2708// iterating, return false from the fn function. 2709// 2710// See ListNotebookExecutions method for more information on how to use this operation. 2711// 2712// Note: This operation can generate multiple requests to a service. 2713// 2714// // Example iterating over at most 3 pages of a ListNotebookExecutions operation. 2715// pageNum := 0 2716// err := client.ListNotebookExecutionsPages(params, 2717// func(page *emr.ListNotebookExecutionsOutput, lastPage bool) bool { 2718// pageNum++ 2719// fmt.Println(page) 2720// return pageNum <= 3 2721// }) 2722// 2723func (c *EMR) ListNotebookExecutionsPages(input *ListNotebookExecutionsInput, fn func(*ListNotebookExecutionsOutput, bool) bool) error { 2724 return c.ListNotebookExecutionsPagesWithContext(aws.BackgroundContext(), input, fn) 2725} 2726 2727// ListNotebookExecutionsPagesWithContext same as ListNotebookExecutionsPages except 2728// it takes a Context and allows setting request options on the pages. 2729// 2730// The context must be non-nil and will be used for request cancellation. If 2731// the context is nil a panic will occur. In the future the SDK may create 2732// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2733// for more information on using Contexts. 2734func (c *EMR) ListNotebookExecutionsPagesWithContext(ctx aws.Context, input *ListNotebookExecutionsInput, fn func(*ListNotebookExecutionsOutput, bool) bool, opts ...request.Option) error { 2735 p := request.Pagination{ 2736 NewRequest: func() (*request.Request, error) { 2737 var inCpy *ListNotebookExecutionsInput 2738 if input != nil { 2739 tmp := *input 2740 inCpy = &tmp 2741 } 2742 req, _ := c.ListNotebookExecutionsRequest(inCpy) 2743 req.SetContext(ctx) 2744 req.ApplyOptions(opts...) 2745 return req, nil 2746 }, 2747 } 2748 2749 for p.Next() { 2750 if !fn(p.Page().(*ListNotebookExecutionsOutput), !p.HasNextPage()) { 2751 break 2752 } 2753 } 2754 2755 return p.Err() 2756} 2757 2758const opListReleaseLabels = "ListReleaseLabels" 2759 2760// ListReleaseLabelsRequest generates a "aws/request.Request" representing the 2761// client's request for the ListReleaseLabels operation. The "output" return 2762// value will be populated with the request's response once the request completes 2763// successfully. 2764// 2765// Use "Send" method on the returned Request to send the API call to the service. 2766// the "output" return value is not valid until after Send returns without error. 2767// 2768// See ListReleaseLabels for more information on using the ListReleaseLabels 2769// API call, and error handling. 2770// 2771// This method is useful when you want to inject custom logic or configuration 2772// into the SDK's request lifecycle. Such as custom headers, or retry logic. 2773// 2774// 2775// // Example sending a request using the ListReleaseLabelsRequest method. 2776// req, resp := client.ListReleaseLabelsRequest(params) 2777// 2778// err := req.Send() 2779// if err == nil { // resp is now filled 2780// fmt.Println(resp) 2781// } 2782// 2783// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/ListReleaseLabels 2784func (c *EMR) ListReleaseLabelsRequest(input *ListReleaseLabelsInput) (req *request.Request, output *ListReleaseLabelsOutput) { 2785 op := &request.Operation{ 2786 Name: opListReleaseLabels, 2787 HTTPMethod: "POST", 2788 HTTPPath: "/", 2789 Paginator: &request.Paginator{ 2790 InputTokens: []string{"NextToken"}, 2791 OutputTokens: []string{"NextToken"}, 2792 LimitToken: "MaxResults", 2793 TruncationToken: "", 2794 }, 2795 } 2796 2797 if input == nil { 2798 input = &ListReleaseLabelsInput{} 2799 } 2800 2801 output = &ListReleaseLabelsOutput{} 2802 req = c.newRequest(op, input, output) 2803 return 2804} 2805 2806// ListReleaseLabels API operation for Amazon EMR. 2807// 2808// Retrieves release labels of EMR services in the region where the API is called. 2809// 2810// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 2811// with awserr.Error's Code and Message methods to get detailed information about 2812// the error. 2813// 2814// See the AWS API reference guide for Amazon EMR's 2815// API operation ListReleaseLabels for usage and error information. 2816// 2817// Returned Error Types: 2818// * InternalServerException 2819// This exception occurs when there is an internal failure in the Amazon EMR 2820// service. 2821// 2822// * InvalidRequestException 2823// This exception occurs when there is something wrong with user input. 2824// 2825// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/ListReleaseLabels 2826func (c *EMR) ListReleaseLabels(input *ListReleaseLabelsInput) (*ListReleaseLabelsOutput, error) { 2827 req, out := c.ListReleaseLabelsRequest(input) 2828 return out, req.Send() 2829} 2830 2831// ListReleaseLabelsWithContext is the same as ListReleaseLabels with the addition of 2832// the ability to pass a context and additional request options. 2833// 2834// See ListReleaseLabels for details on how to use this API operation. 2835// 2836// The context must be non-nil and will be used for request cancellation. If 2837// the context is nil a panic will occur. In the future the SDK may create 2838// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2839// for more information on using Contexts. 2840func (c *EMR) ListReleaseLabelsWithContext(ctx aws.Context, input *ListReleaseLabelsInput, opts ...request.Option) (*ListReleaseLabelsOutput, error) { 2841 req, out := c.ListReleaseLabelsRequest(input) 2842 req.SetContext(ctx) 2843 req.ApplyOptions(opts...) 2844 return out, req.Send() 2845} 2846 2847// ListReleaseLabelsPages iterates over the pages of a ListReleaseLabels operation, 2848// calling the "fn" function with the response data for each page. To stop 2849// iterating, return false from the fn function. 2850// 2851// See ListReleaseLabels method for more information on how to use this operation. 2852// 2853// Note: This operation can generate multiple requests to a service. 2854// 2855// // Example iterating over at most 3 pages of a ListReleaseLabels operation. 2856// pageNum := 0 2857// err := client.ListReleaseLabelsPages(params, 2858// func(page *emr.ListReleaseLabelsOutput, lastPage bool) bool { 2859// pageNum++ 2860// fmt.Println(page) 2861// return pageNum <= 3 2862// }) 2863// 2864func (c *EMR) ListReleaseLabelsPages(input *ListReleaseLabelsInput, fn func(*ListReleaseLabelsOutput, bool) bool) error { 2865 return c.ListReleaseLabelsPagesWithContext(aws.BackgroundContext(), input, fn) 2866} 2867 2868// ListReleaseLabelsPagesWithContext same as ListReleaseLabelsPages except 2869// it takes a Context and allows setting request options on the pages. 2870// 2871// The context must be non-nil and will be used for request cancellation. If 2872// the context is nil a panic will occur. In the future the SDK may create 2873// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2874// for more information on using Contexts. 2875func (c *EMR) ListReleaseLabelsPagesWithContext(ctx aws.Context, input *ListReleaseLabelsInput, fn func(*ListReleaseLabelsOutput, bool) bool, opts ...request.Option) error { 2876 p := request.Pagination{ 2877 NewRequest: func() (*request.Request, error) { 2878 var inCpy *ListReleaseLabelsInput 2879 if input != nil { 2880 tmp := *input 2881 inCpy = &tmp 2882 } 2883 req, _ := c.ListReleaseLabelsRequest(inCpy) 2884 req.SetContext(ctx) 2885 req.ApplyOptions(opts...) 2886 return req, nil 2887 }, 2888 } 2889 2890 for p.Next() { 2891 if !fn(p.Page().(*ListReleaseLabelsOutput), !p.HasNextPage()) { 2892 break 2893 } 2894 } 2895 2896 return p.Err() 2897} 2898 2899const opListSecurityConfigurations = "ListSecurityConfigurations" 2900 2901// ListSecurityConfigurationsRequest generates a "aws/request.Request" representing the 2902// client's request for the ListSecurityConfigurations operation. The "output" return 2903// value will be populated with the request's response once the request completes 2904// successfully. 2905// 2906// Use "Send" method on the returned Request to send the API call to the service. 2907// the "output" return value is not valid until after Send returns without error. 2908// 2909// See ListSecurityConfigurations for more information on using the ListSecurityConfigurations 2910// API call, and error handling. 2911// 2912// This method is useful when you want to inject custom logic or configuration 2913// into the SDK's request lifecycle. Such as custom headers, or retry logic. 2914// 2915// 2916// // Example sending a request using the ListSecurityConfigurationsRequest method. 2917// req, resp := client.ListSecurityConfigurationsRequest(params) 2918// 2919// err := req.Send() 2920// if err == nil { // resp is now filled 2921// fmt.Println(resp) 2922// } 2923// 2924// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/ListSecurityConfigurations 2925func (c *EMR) ListSecurityConfigurationsRequest(input *ListSecurityConfigurationsInput) (req *request.Request, output *ListSecurityConfigurationsOutput) { 2926 op := &request.Operation{ 2927 Name: opListSecurityConfigurations, 2928 HTTPMethod: "POST", 2929 HTTPPath: "/", 2930 Paginator: &request.Paginator{ 2931 InputTokens: []string{"Marker"}, 2932 OutputTokens: []string{"Marker"}, 2933 LimitToken: "", 2934 TruncationToken: "", 2935 }, 2936 } 2937 2938 if input == nil { 2939 input = &ListSecurityConfigurationsInput{} 2940 } 2941 2942 output = &ListSecurityConfigurationsOutput{} 2943 req = c.newRequest(op, input, output) 2944 return 2945} 2946 2947// ListSecurityConfigurations API operation for Amazon EMR. 2948// 2949// Lists all the security configurations visible to this account, providing 2950// their creation dates and times, and their names. This call returns a maximum 2951// of 50 clusters per call, but returns a marker to track the paging of the 2952// cluster list across multiple ListSecurityConfigurations calls. 2953// 2954// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 2955// with awserr.Error's Code and Message methods to get detailed information about 2956// the error. 2957// 2958// See the AWS API reference guide for Amazon EMR's 2959// API operation ListSecurityConfigurations for usage and error information. 2960// 2961// Returned Error Types: 2962// * InternalServerException 2963// This exception occurs when there is an internal failure in the Amazon EMR 2964// service. 2965// 2966// * InvalidRequestException 2967// This exception occurs when there is something wrong with user input. 2968// 2969// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/ListSecurityConfigurations 2970func (c *EMR) ListSecurityConfigurations(input *ListSecurityConfigurationsInput) (*ListSecurityConfigurationsOutput, error) { 2971 req, out := c.ListSecurityConfigurationsRequest(input) 2972 return out, req.Send() 2973} 2974 2975// ListSecurityConfigurationsWithContext is the same as ListSecurityConfigurations with the addition of 2976// the ability to pass a context and additional request options. 2977// 2978// See ListSecurityConfigurations for details on how to use this API operation. 2979// 2980// The context must be non-nil and will be used for request cancellation. If 2981// the context is nil a panic will occur. In the future the SDK may create 2982// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2983// for more information on using Contexts. 2984func (c *EMR) ListSecurityConfigurationsWithContext(ctx aws.Context, input *ListSecurityConfigurationsInput, opts ...request.Option) (*ListSecurityConfigurationsOutput, error) { 2985 req, out := c.ListSecurityConfigurationsRequest(input) 2986 req.SetContext(ctx) 2987 req.ApplyOptions(opts...) 2988 return out, req.Send() 2989} 2990 2991// ListSecurityConfigurationsPages iterates over the pages of a ListSecurityConfigurations operation, 2992// calling the "fn" function with the response data for each page. To stop 2993// iterating, return false from the fn function. 2994// 2995// See ListSecurityConfigurations method for more information on how to use this operation. 2996// 2997// Note: This operation can generate multiple requests to a service. 2998// 2999// // Example iterating over at most 3 pages of a ListSecurityConfigurations operation. 3000// pageNum := 0 3001// err := client.ListSecurityConfigurationsPages(params, 3002// func(page *emr.ListSecurityConfigurationsOutput, lastPage bool) bool { 3003// pageNum++ 3004// fmt.Println(page) 3005// return pageNum <= 3 3006// }) 3007// 3008func (c *EMR) ListSecurityConfigurationsPages(input *ListSecurityConfigurationsInput, fn func(*ListSecurityConfigurationsOutput, bool) bool) error { 3009 return c.ListSecurityConfigurationsPagesWithContext(aws.BackgroundContext(), input, fn) 3010} 3011 3012// ListSecurityConfigurationsPagesWithContext same as ListSecurityConfigurationsPages except 3013// it takes a Context and allows setting request options on the pages. 3014// 3015// The context must be non-nil and will be used for request cancellation. If 3016// the context is nil a panic will occur. In the future the SDK may create 3017// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 3018// for more information on using Contexts. 3019func (c *EMR) ListSecurityConfigurationsPagesWithContext(ctx aws.Context, input *ListSecurityConfigurationsInput, fn func(*ListSecurityConfigurationsOutput, bool) bool, opts ...request.Option) error { 3020 p := request.Pagination{ 3021 NewRequest: func() (*request.Request, error) { 3022 var inCpy *ListSecurityConfigurationsInput 3023 if input != nil { 3024 tmp := *input 3025 inCpy = &tmp 3026 } 3027 req, _ := c.ListSecurityConfigurationsRequest(inCpy) 3028 req.SetContext(ctx) 3029 req.ApplyOptions(opts...) 3030 return req, nil 3031 }, 3032 } 3033 3034 for p.Next() { 3035 if !fn(p.Page().(*ListSecurityConfigurationsOutput), !p.HasNextPage()) { 3036 break 3037 } 3038 } 3039 3040 return p.Err() 3041} 3042 3043const opListSteps = "ListSteps" 3044 3045// ListStepsRequest generates a "aws/request.Request" representing the 3046// client's request for the ListSteps operation. The "output" return 3047// value will be populated with the request's response once the request completes 3048// successfully. 3049// 3050// Use "Send" method on the returned Request to send the API call to the service. 3051// the "output" return value is not valid until after Send returns without error. 3052// 3053// See ListSteps for more information on using the ListSteps 3054// API call, and error handling. 3055// 3056// This method is useful when you want to inject custom logic or configuration 3057// into the SDK's request lifecycle. Such as custom headers, or retry logic. 3058// 3059// 3060// // Example sending a request using the ListStepsRequest method. 3061// req, resp := client.ListStepsRequest(params) 3062// 3063// err := req.Send() 3064// if err == nil { // resp is now filled 3065// fmt.Println(resp) 3066// } 3067// 3068// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/ListSteps 3069func (c *EMR) ListStepsRequest(input *ListStepsInput) (req *request.Request, output *ListStepsOutput) { 3070 op := &request.Operation{ 3071 Name: opListSteps, 3072 HTTPMethod: "POST", 3073 HTTPPath: "/", 3074 Paginator: &request.Paginator{ 3075 InputTokens: []string{"Marker"}, 3076 OutputTokens: []string{"Marker"}, 3077 LimitToken: "", 3078 TruncationToken: "", 3079 }, 3080 } 3081 3082 if input == nil { 3083 input = &ListStepsInput{} 3084 } 3085 3086 output = &ListStepsOutput{} 3087 req = c.newRequest(op, input, output) 3088 return 3089} 3090 3091// ListSteps API operation for Amazon EMR. 3092// 3093// Provides a list of steps for the cluster in reverse order unless you specify 3094// stepIds with the request or filter by StepStates. You can specify a maximum 3095// of 10 stepIDs. The CLI automatically paginates results to return a list greater 3096// than 50 steps. To return more than 50 steps using the CLI, specify a Marker, 3097// which is a pagination token that indicates the next set of steps to retrieve. 3098// 3099// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 3100// with awserr.Error's Code and Message methods to get detailed information about 3101// the error. 3102// 3103// See the AWS API reference guide for Amazon EMR's 3104// API operation ListSteps for usage and error information. 3105// 3106// Returned Error Types: 3107// * InternalServerException 3108// This exception occurs when there is an internal failure in the Amazon EMR 3109// service. 3110// 3111// * InvalidRequestException 3112// This exception occurs when there is something wrong with user input. 3113// 3114// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/ListSteps 3115func (c *EMR) ListSteps(input *ListStepsInput) (*ListStepsOutput, error) { 3116 req, out := c.ListStepsRequest(input) 3117 return out, req.Send() 3118} 3119 3120// ListStepsWithContext is the same as ListSteps with the addition of 3121// the ability to pass a context and additional request options. 3122// 3123// See ListSteps for details on how to use this API operation. 3124// 3125// The context must be non-nil and will be used for request cancellation. If 3126// the context is nil a panic will occur. In the future the SDK may create 3127// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 3128// for more information on using Contexts. 3129func (c *EMR) ListStepsWithContext(ctx aws.Context, input *ListStepsInput, opts ...request.Option) (*ListStepsOutput, error) { 3130 req, out := c.ListStepsRequest(input) 3131 req.SetContext(ctx) 3132 req.ApplyOptions(opts...) 3133 return out, req.Send() 3134} 3135 3136// ListStepsPages iterates over the pages of a ListSteps operation, 3137// calling the "fn" function with the response data for each page. To stop 3138// iterating, return false from the fn function. 3139// 3140// See ListSteps method for more information on how to use this operation. 3141// 3142// Note: This operation can generate multiple requests to a service. 3143// 3144// // Example iterating over at most 3 pages of a ListSteps operation. 3145// pageNum := 0 3146// err := client.ListStepsPages(params, 3147// func(page *emr.ListStepsOutput, lastPage bool) bool { 3148// pageNum++ 3149// fmt.Println(page) 3150// return pageNum <= 3 3151// }) 3152// 3153func (c *EMR) ListStepsPages(input *ListStepsInput, fn func(*ListStepsOutput, bool) bool) error { 3154 return c.ListStepsPagesWithContext(aws.BackgroundContext(), input, fn) 3155} 3156 3157// ListStepsPagesWithContext same as ListStepsPages except 3158// it takes a Context and allows setting request options on the pages. 3159// 3160// The context must be non-nil and will be used for request cancellation. If 3161// the context is nil a panic will occur. In the future the SDK may create 3162// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 3163// for more information on using Contexts. 3164func (c *EMR) ListStepsPagesWithContext(ctx aws.Context, input *ListStepsInput, fn func(*ListStepsOutput, bool) bool, opts ...request.Option) error { 3165 p := request.Pagination{ 3166 NewRequest: func() (*request.Request, error) { 3167 var inCpy *ListStepsInput 3168 if input != nil { 3169 tmp := *input 3170 inCpy = &tmp 3171 } 3172 req, _ := c.ListStepsRequest(inCpy) 3173 req.SetContext(ctx) 3174 req.ApplyOptions(opts...) 3175 return req, nil 3176 }, 3177 } 3178 3179 for p.Next() { 3180 if !fn(p.Page().(*ListStepsOutput), !p.HasNextPage()) { 3181 break 3182 } 3183 } 3184 3185 return p.Err() 3186} 3187 3188const opListStudioSessionMappings = "ListStudioSessionMappings" 3189 3190// ListStudioSessionMappingsRequest generates a "aws/request.Request" representing the 3191// client's request for the ListStudioSessionMappings operation. The "output" return 3192// value will be populated with the request's response once the request completes 3193// successfully. 3194// 3195// Use "Send" method on the returned Request to send the API call to the service. 3196// the "output" return value is not valid until after Send returns without error. 3197// 3198// See ListStudioSessionMappings for more information on using the ListStudioSessionMappings 3199// API call, and error handling. 3200// 3201// This method is useful when you want to inject custom logic or configuration 3202// into the SDK's request lifecycle. Such as custom headers, or retry logic. 3203// 3204// 3205// // Example sending a request using the ListStudioSessionMappingsRequest method. 3206// req, resp := client.ListStudioSessionMappingsRequest(params) 3207// 3208// err := req.Send() 3209// if err == nil { // resp is now filled 3210// fmt.Println(resp) 3211// } 3212// 3213// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/ListStudioSessionMappings 3214func (c *EMR) ListStudioSessionMappingsRequest(input *ListStudioSessionMappingsInput) (req *request.Request, output *ListStudioSessionMappingsOutput) { 3215 op := &request.Operation{ 3216 Name: opListStudioSessionMappings, 3217 HTTPMethod: "POST", 3218 HTTPPath: "/", 3219 Paginator: &request.Paginator{ 3220 InputTokens: []string{"Marker"}, 3221 OutputTokens: []string{"Marker"}, 3222 LimitToken: "", 3223 TruncationToken: "", 3224 }, 3225 } 3226 3227 if input == nil { 3228 input = &ListStudioSessionMappingsInput{} 3229 } 3230 3231 output = &ListStudioSessionMappingsOutput{} 3232 req = c.newRequest(op, input, output) 3233 return 3234} 3235 3236// ListStudioSessionMappings API operation for Amazon EMR. 3237// 3238// Returns a list of all user or group session mappings for the Amazon EMR Studio 3239// specified by StudioId. 3240// 3241// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 3242// with awserr.Error's Code and Message methods to get detailed information about 3243// the error. 3244// 3245// See the AWS API reference guide for Amazon EMR's 3246// API operation ListStudioSessionMappings for usage and error information. 3247// 3248// Returned Error Types: 3249// * InternalServerError 3250// Indicates that an error occurred while processing the request and that the 3251// request was not completed. 3252// 3253// * InvalidRequestException 3254// This exception occurs when there is something wrong with user input. 3255// 3256// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/ListStudioSessionMappings 3257func (c *EMR) ListStudioSessionMappings(input *ListStudioSessionMappingsInput) (*ListStudioSessionMappingsOutput, error) { 3258 req, out := c.ListStudioSessionMappingsRequest(input) 3259 return out, req.Send() 3260} 3261 3262// ListStudioSessionMappingsWithContext is the same as ListStudioSessionMappings with the addition of 3263// the ability to pass a context and additional request options. 3264// 3265// See ListStudioSessionMappings for details on how to use this API operation. 3266// 3267// The context must be non-nil and will be used for request cancellation. If 3268// the context is nil a panic will occur. In the future the SDK may create 3269// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 3270// for more information on using Contexts. 3271func (c *EMR) ListStudioSessionMappingsWithContext(ctx aws.Context, input *ListStudioSessionMappingsInput, opts ...request.Option) (*ListStudioSessionMappingsOutput, error) { 3272 req, out := c.ListStudioSessionMappingsRequest(input) 3273 req.SetContext(ctx) 3274 req.ApplyOptions(opts...) 3275 return out, req.Send() 3276} 3277 3278// ListStudioSessionMappingsPages iterates over the pages of a ListStudioSessionMappings operation, 3279// calling the "fn" function with the response data for each page. To stop 3280// iterating, return false from the fn function. 3281// 3282// See ListStudioSessionMappings method for more information on how to use this operation. 3283// 3284// Note: This operation can generate multiple requests to a service. 3285// 3286// // Example iterating over at most 3 pages of a ListStudioSessionMappings operation. 3287// pageNum := 0 3288// err := client.ListStudioSessionMappingsPages(params, 3289// func(page *emr.ListStudioSessionMappingsOutput, lastPage bool) bool { 3290// pageNum++ 3291// fmt.Println(page) 3292// return pageNum <= 3 3293// }) 3294// 3295func (c *EMR) ListStudioSessionMappingsPages(input *ListStudioSessionMappingsInput, fn func(*ListStudioSessionMappingsOutput, bool) bool) error { 3296 return c.ListStudioSessionMappingsPagesWithContext(aws.BackgroundContext(), input, fn) 3297} 3298 3299// ListStudioSessionMappingsPagesWithContext same as ListStudioSessionMappingsPages except 3300// it takes a Context and allows setting request options on the pages. 3301// 3302// The context must be non-nil and will be used for request cancellation. If 3303// the context is nil a panic will occur. In the future the SDK may create 3304// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 3305// for more information on using Contexts. 3306func (c *EMR) ListStudioSessionMappingsPagesWithContext(ctx aws.Context, input *ListStudioSessionMappingsInput, fn func(*ListStudioSessionMappingsOutput, bool) bool, opts ...request.Option) error { 3307 p := request.Pagination{ 3308 NewRequest: func() (*request.Request, error) { 3309 var inCpy *ListStudioSessionMappingsInput 3310 if input != nil { 3311 tmp := *input 3312 inCpy = &tmp 3313 } 3314 req, _ := c.ListStudioSessionMappingsRequest(inCpy) 3315 req.SetContext(ctx) 3316 req.ApplyOptions(opts...) 3317 return req, nil 3318 }, 3319 } 3320 3321 for p.Next() { 3322 if !fn(p.Page().(*ListStudioSessionMappingsOutput), !p.HasNextPage()) { 3323 break 3324 } 3325 } 3326 3327 return p.Err() 3328} 3329 3330const opListStudios = "ListStudios" 3331 3332// ListStudiosRequest generates a "aws/request.Request" representing the 3333// client's request for the ListStudios operation. The "output" return 3334// value will be populated with the request's response once the request completes 3335// successfully. 3336// 3337// Use "Send" method on the returned Request to send the API call to the service. 3338// the "output" return value is not valid until after Send returns without error. 3339// 3340// See ListStudios for more information on using the ListStudios 3341// API call, and error handling. 3342// 3343// This method is useful when you want to inject custom logic or configuration 3344// into the SDK's request lifecycle. Such as custom headers, or retry logic. 3345// 3346// 3347// // Example sending a request using the ListStudiosRequest method. 3348// req, resp := client.ListStudiosRequest(params) 3349// 3350// err := req.Send() 3351// if err == nil { // resp is now filled 3352// fmt.Println(resp) 3353// } 3354// 3355// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/ListStudios 3356func (c *EMR) ListStudiosRequest(input *ListStudiosInput) (req *request.Request, output *ListStudiosOutput) { 3357 op := &request.Operation{ 3358 Name: opListStudios, 3359 HTTPMethod: "POST", 3360 HTTPPath: "/", 3361 Paginator: &request.Paginator{ 3362 InputTokens: []string{"Marker"}, 3363 OutputTokens: []string{"Marker"}, 3364 LimitToken: "", 3365 TruncationToken: "", 3366 }, 3367 } 3368 3369 if input == nil { 3370 input = &ListStudiosInput{} 3371 } 3372 3373 output = &ListStudiosOutput{} 3374 req = c.newRequest(op, input, output) 3375 return 3376} 3377 3378// ListStudios API operation for Amazon EMR. 3379// 3380// Returns a list of all Amazon EMR Studios associated with the Amazon Web Services 3381// account. The list includes details such as ID, Studio Access URL, and creation 3382// time for each Studio. 3383// 3384// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 3385// with awserr.Error's Code and Message methods to get detailed information about 3386// the error. 3387// 3388// See the AWS API reference guide for Amazon EMR's 3389// API operation ListStudios for usage and error information. 3390// 3391// Returned Error Types: 3392// * InternalServerException 3393// This exception occurs when there is an internal failure in the Amazon EMR 3394// service. 3395// 3396// * InvalidRequestException 3397// This exception occurs when there is something wrong with user input. 3398// 3399// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/ListStudios 3400func (c *EMR) ListStudios(input *ListStudiosInput) (*ListStudiosOutput, error) { 3401 req, out := c.ListStudiosRequest(input) 3402 return out, req.Send() 3403} 3404 3405// ListStudiosWithContext is the same as ListStudios with the addition of 3406// the ability to pass a context and additional request options. 3407// 3408// See ListStudios for details on how to use this API operation. 3409// 3410// The context must be non-nil and will be used for request cancellation. If 3411// the context is nil a panic will occur. In the future the SDK may create 3412// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 3413// for more information on using Contexts. 3414func (c *EMR) ListStudiosWithContext(ctx aws.Context, input *ListStudiosInput, opts ...request.Option) (*ListStudiosOutput, error) { 3415 req, out := c.ListStudiosRequest(input) 3416 req.SetContext(ctx) 3417 req.ApplyOptions(opts...) 3418 return out, req.Send() 3419} 3420 3421// ListStudiosPages iterates over the pages of a ListStudios operation, 3422// calling the "fn" function with the response data for each page. To stop 3423// iterating, return false from the fn function. 3424// 3425// See ListStudios method for more information on how to use this operation. 3426// 3427// Note: This operation can generate multiple requests to a service. 3428// 3429// // Example iterating over at most 3 pages of a ListStudios operation. 3430// pageNum := 0 3431// err := client.ListStudiosPages(params, 3432// func(page *emr.ListStudiosOutput, lastPage bool) bool { 3433// pageNum++ 3434// fmt.Println(page) 3435// return pageNum <= 3 3436// }) 3437// 3438func (c *EMR) ListStudiosPages(input *ListStudiosInput, fn func(*ListStudiosOutput, bool) bool) error { 3439 return c.ListStudiosPagesWithContext(aws.BackgroundContext(), input, fn) 3440} 3441 3442// ListStudiosPagesWithContext same as ListStudiosPages except 3443// it takes a Context and allows setting request options on the pages. 3444// 3445// The context must be non-nil and will be used for request cancellation. If 3446// the context is nil a panic will occur. In the future the SDK may create 3447// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 3448// for more information on using Contexts. 3449func (c *EMR) ListStudiosPagesWithContext(ctx aws.Context, input *ListStudiosInput, fn func(*ListStudiosOutput, bool) bool, opts ...request.Option) error { 3450 p := request.Pagination{ 3451 NewRequest: func() (*request.Request, error) { 3452 var inCpy *ListStudiosInput 3453 if input != nil { 3454 tmp := *input 3455 inCpy = &tmp 3456 } 3457 req, _ := c.ListStudiosRequest(inCpy) 3458 req.SetContext(ctx) 3459 req.ApplyOptions(opts...) 3460 return req, nil 3461 }, 3462 } 3463 3464 for p.Next() { 3465 if !fn(p.Page().(*ListStudiosOutput), !p.HasNextPage()) { 3466 break 3467 } 3468 } 3469 3470 return p.Err() 3471} 3472 3473const opModifyCluster = "ModifyCluster" 3474 3475// ModifyClusterRequest generates a "aws/request.Request" representing the 3476// client's request for the ModifyCluster operation. The "output" return 3477// value will be populated with the request's response once the request completes 3478// successfully. 3479// 3480// Use "Send" method on the returned Request to send the API call to the service. 3481// the "output" return value is not valid until after Send returns without error. 3482// 3483// See ModifyCluster for more information on using the ModifyCluster 3484// API call, and error handling. 3485// 3486// This method is useful when you want to inject custom logic or configuration 3487// into the SDK's request lifecycle. Such as custom headers, or retry logic. 3488// 3489// 3490// // Example sending a request using the ModifyClusterRequest method. 3491// req, resp := client.ModifyClusterRequest(params) 3492// 3493// err := req.Send() 3494// if err == nil { // resp is now filled 3495// fmt.Println(resp) 3496// } 3497// 3498// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/ModifyCluster 3499func (c *EMR) ModifyClusterRequest(input *ModifyClusterInput) (req *request.Request, output *ModifyClusterOutput) { 3500 op := &request.Operation{ 3501 Name: opModifyCluster, 3502 HTTPMethod: "POST", 3503 HTTPPath: "/", 3504 } 3505 3506 if input == nil { 3507 input = &ModifyClusterInput{} 3508 } 3509 3510 output = &ModifyClusterOutput{} 3511 req = c.newRequest(op, input, output) 3512 return 3513} 3514 3515// ModifyCluster API operation for Amazon EMR. 3516// 3517// Modifies the number of steps that can be executed concurrently for the cluster 3518// specified using ClusterID. 3519// 3520// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 3521// with awserr.Error's Code and Message methods to get detailed information about 3522// the error. 3523// 3524// See the AWS API reference guide for Amazon EMR's 3525// API operation ModifyCluster for usage and error information. 3526// 3527// Returned Error Types: 3528// * InternalServerError 3529// Indicates that an error occurred while processing the request and that the 3530// request was not completed. 3531// 3532// * InvalidRequestException 3533// This exception occurs when there is something wrong with user input. 3534// 3535// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/ModifyCluster 3536func (c *EMR) ModifyCluster(input *ModifyClusterInput) (*ModifyClusterOutput, error) { 3537 req, out := c.ModifyClusterRequest(input) 3538 return out, req.Send() 3539} 3540 3541// ModifyClusterWithContext is the same as ModifyCluster with the addition of 3542// the ability to pass a context and additional request options. 3543// 3544// See ModifyCluster for details on how to use this API operation. 3545// 3546// The context must be non-nil and will be used for request cancellation. If 3547// the context is nil a panic will occur. In the future the SDK may create 3548// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 3549// for more information on using Contexts. 3550func (c *EMR) ModifyClusterWithContext(ctx aws.Context, input *ModifyClusterInput, opts ...request.Option) (*ModifyClusterOutput, error) { 3551 req, out := c.ModifyClusterRequest(input) 3552 req.SetContext(ctx) 3553 req.ApplyOptions(opts...) 3554 return out, req.Send() 3555} 3556 3557const opModifyInstanceFleet = "ModifyInstanceFleet" 3558 3559// ModifyInstanceFleetRequest generates a "aws/request.Request" representing the 3560// client's request for the ModifyInstanceFleet operation. The "output" return 3561// value will be populated with the request's response once the request completes 3562// successfully. 3563// 3564// Use "Send" method on the returned Request to send the API call to the service. 3565// the "output" return value is not valid until after Send returns without error. 3566// 3567// See ModifyInstanceFleet for more information on using the ModifyInstanceFleet 3568// API call, and error handling. 3569// 3570// This method is useful when you want to inject custom logic or configuration 3571// into the SDK's request lifecycle. Such as custom headers, or retry logic. 3572// 3573// 3574// // Example sending a request using the ModifyInstanceFleetRequest method. 3575// req, resp := client.ModifyInstanceFleetRequest(params) 3576// 3577// err := req.Send() 3578// if err == nil { // resp is now filled 3579// fmt.Println(resp) 3580// } 3581// 3582// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/ModifyInstanceFleet 3583func (c *EMR) ModifyInstanceFleetRequest(input *ModifyInstanceFleetInput) (req *request.Request, output *ModifyInstanceFleetOutput) { 3584 op := &request.Operation{ 3585 Name: opModifyInstanceFleet, 3586 HTTPMethod: "POST", 3587 HTTPPath: "/", 3588 } 3589 3590 if input == nil { 3591 input = &ModifyInstanceFleetInput{} 3592 } 3593 3594 output = &ModifyInstanceFleetOutput{} 3595 req = c.newRequest(op, input, output) 3596 req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 3597 return 3598} 3599 3600// ModifyInstanceFleet API operation for Amazon EMR. 3601// 3602// Modifies the target On-Demand and target Spot capacities for the instance 3603// fleet with the specified InstanceFleetID within the cluster specified using 3604// ClusterID. The call either succeeds or fails atomically. 3605// 3606// The instance fleet configuration is available only in Amazon EMR versions 3607// 4.8.0 and later, excluding 5.0.x versions. 3608// 3609// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 3610// with awserr.Error's Code and Message methods to get detailed information about 3611// the error. 3612// 3613// See the AWS API reference guide for Amazon EMR's 3614// API operation ModifyInstanceFleet for usage and error information. 3615// 3616// Returned Error Types: 3617// * InternalServerException 3618// This exception occurs when there is an internal failure in the Amazon EMR 3619// service. 3620// 3621// * InvalidRequestException 3622// This exception occurs when there is something wrong with user input. 3623// 3624// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/ModifyInstanceFleet 3625func (c *EMR) ModifyInstanceFleet(input *ModifyInstanceFleetInput) (*ModifyInstanceFleetOutput, error) { 3626 req, out := c.ModifyInstanceFleetRequest(input) 3627 return out, req.Send() 3628} 3629 3630// ModifyInstanceFleetWithContext is the same as ModifyInstanceFleet with the addition of 3631// the ability to pass a context and additional request options. 3632// 3633// See ModifyInstanceFleet for details on how to use this API operation. 3634// 3635// The context must be non-nil and will be used for request cancellation. If 3636// the context is nil a panic will occur. In the future the SDK may create 3637// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 3638// for more information on using Contexts. 3639func (c *EMR) ModifyInstanceFleetWithContext(ctx aws.Context, input *ModifyInstanceFleetInput, opts ...request.Option) (*ModifyInstanceFleetOutput, error) { 3640 req, out := c.ModifyInstanceFleetRequest(input) 3641 req.SetContext(ctx) 3642 req.ApplyOptions(opts...) 3643 return out, req.Send() 3644} 3645 3646const opModifyInstanceGroups = "ModifyInstanceGroups" 3647 3648// ModifyInstanceGroupsRequest generates a "aws/request.Request" representing the 3649// client's request for the ModifyInstanceGroups operation. The "output" return 3650// value will be populated with the request's response once the request completes 3651// successfully. 3652// 3653// Use "Send" method on the returned Request to send the API call to the service. 3654// the "output" return value is not valid until after Send returns without error. 3655// 3656// See ModifyInstanceGroups for more information on using the ModifyInstanceGroups 3657// API call, and error handling. 3658// 3659// This method is useful when you want to inject custom logic or configuration 3660// into the SDK's request lifecycle. Such as custom headers, or retry logic. 3661// 3662// 3663// // Example sending a request using the ModifyInstanceGroupsRequest method. 3664// req, resp := client.ModifyInstanceGroupsRequest(params) 3665// 3666// err := req.Send() 3667// if err == nil { // resp is now filled 3668// fmt.Println(resp) 3669// } 3670// 3671// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/ModifyInstanceGroups 3672func (c *EMR) ModifyInstanceGroupsRequest(input *ModifyInstanceGroupsInput) (req *request.Request, output *ModifyInstanceGroupsOutput) { 3673 op := &request.Operation{ 3674 Name: opModifyInstanceGroups, 3675 HTTPMethod: "POST", 3676 HTTPPath: "/", 3677 } 3678 3679 if input == nil { 3680 input = &ModifyInstanceGroupsInput{} 3681 } 3682 3683 output = &ModifyInstanceGroupsOutput{} 3684 req = c.newRequest(op, input, output) 3685 req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 3686 return 3687} 3688 3689// ModifyInstanceGroups API operation for Amazon EMR. 3690// 3691// ModifyInstanceGroups modifies the number of nodes and configuration settings 3692// of an instance group. The input parameters include the new target instance 3693// count for the group and the instance group ID. The call will either succeed 3694// or fail atomically. 3695// 3696// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 3697// with awserr.Error's Code and Message methods to get detailed information about 3698// the error. 3699// 3700// See the AWS API reference guide for Amazon EMR's 3701// API operation ModifyInstanceGroups for usage and error information. 3702// 3703// Returned Error Types: 3704// * InternalServerError 3705// Indicates that an error occurred while processing the request and that the 3706// request was not completed. 3707// 3708// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/ModifyInstanceGroups 3709func (c *EMR) ModifyInstanceGroups(input *ModifyInstanceGroupsInput) (*ModifyInstanceGroupsOutput, error) { 3710 req, out := c.ModifyInstanceGroupsRequest(input) 3711 return out, req.Send() 3712} 3713 3714// ModifyInstanceGroupsWithContext is the same as ModifyInstanceGroups with the addition of 3715// the ability to pass a context and additional request options. 3716// 3717// See ModifyInstanceGroups for details on how to use this API operation. 3718// 3719// The context must be non-nil and will be used for request cancellation. If 3720// the context is nil a panic will occur. In the future the SDK may create 3721// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 3722// for more information on using Contexts. 3723func (c *EMR) ModifyInstanceGroupsWithContext(ctx aws.Context, input *ModifyInstanceGroupsInput, opts ...request.Option) (*ModifyInstanceGroupsOutput, error) { 3724 req, out := c.ModifyInstanceGroupsRequest(input) 3725 req.SetContext(ctx) 3726 req.ApplyOptions(opts...) 3727 return out, req.Send() 3728} 3729 3730const opPutAutoScalingPolicy = "PutAutoScalingPolicy" 3731 3732// PutAutoScalingPolicyRequest generates a "aws/request.Request" representing the 3733// client's request for the PutAutoScalingPolicy operation. The "output" return 3734// value will be populated with the request's response once the request completes 3735// successfully. 3736// 3737// Use "Send" method on the returned Request to send the API call to the service. 3738// the "output" return value is not valid until after Send returns without error. 3739// 3740// See PutAutoScalingPolicy for more information on using the PutAutoScalingPolicy 3741// API call, and error handling. 3742// 3743// This method is useful when you want to inject custom logic or configuration 3744// into the SDK's request lifecycle. Such as custom headers, or retry logic. 3745// 3746// 3747// // Example sending a request using the PutAutoScalingPolicyRequest method. 3748// req, resp := client.PutAutoScalingPolicyRequest(params) 3749// 3750// err := req.Send() 3751// if err == nil { // resp is now filled 3752// fmt.Println(resp) 3753// } 3754// 3755// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/PutAutoScalingPolicy 3756func (c *EMR) PutAutoScalingPolicyRequest(input *PutAutoScalingPolicyInput) (req *request.Request, output *PutAutoScalingPolicyOutput) { 3757 op := &request.Operation{ 3758 Name: opPutAutoScalingPolicy, 3759 HTTPMethod: "POST", 3760 HTTPPath: "/", 3761 } 3762 3763 if input == nil { 3764 input = &PutAutoScalingPolicyInput{} 3765 } 3766 3767 output = &PutAutoScalingPolicyOutput{} 3768 req = c.newRequest(op, input, output) 3769 return 3770} 3771 3772// PutAutoScalingPolicy API operation for Amazon EMR. 3773// 3774// Creates or updates an automatic scaling policy for a core instance group 3775// or task instance group in an Amazon EMR cluster. The automatic scaling policy 3776// defines how an instance group dynamically adds and terminates EC2 instances 3777// in response to the value of a CloudWatch metric. 3778// 3779// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 3780// with awserr.Error's Code and Message methods to get detailed information about 3781// the error. 3782// 3783// See the AWS API reference guide for Amazon EMR's 3784// API operation PutAutoScalingPolicy for usage and error information. 3785// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/PutAutoScalingPolicy 3786func (c *EMR) PutAutoScalingPolicy(input *PutAutoScalingPolicyInput) (*PutAutoScalingPolicyOutput, error) { 3787 req, out := c.PutAutoScalingPolicyRequest(input) 3788 return out, req.Send() 3789} 3790 3791// PutAutoScalingPolicyWithContext is the same as PutAutoScalingPolicy with the addition of 3792// the ability to pass a context and additional request options. 3793// 3794// See PutAutoScalingPolicy for details on how to use this API operation. 3795// 3796// The context must be non-nil and will be used for request cancellation. If 3797// the context is nil a panic will occur. In the future the SDK may create 3798// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 3799// for more information on using Contexts. 3800func (c *EMR) PutAutoScalingPolicyWithContext(ctx aws.Context, input *PutAutoScalingPolicyInput, opts ...request.Option) (*PutAutoScalingPolicyOutput, error) { 3801 req, out := c.PutAutoScalingPolicyRequest(input) 3802 req.SetContext(ctx) 3803 req.ApplyOptions(opts...) 3804 return out, req.Send() 3805} 3806 3807const opPutAutoTerminationPolicy = "PutAutoTerminationPolicy" 3808 3809// PutAutoTerminationPolicyRequest generates a "aws/request.Request" representing the 3810// client's request for the PutAutoTerminationPolicy operation. The "output" return 3811// value will be populated with the request's response once the request completes 3812// successfully. 3813// 3814// Use "Send" method on the returned Request to send the API call to the service. 3815// the "output" return value is not valid until after Send returns without error. 3816// 3817// See PutAutoTerminationPolicy for more information on using the PutAutoTerminationPolicy 3818// API call, and error handling. 3819// 3820// This method is useful when you want to inject custom logic or configuration 3821// into the SDK's request lifecycle. Such as custom headers, or retry logic. 3822// 3823// 3824// // Example sending a request using the PutAutoTerminationPolicyRequest method. 3825// req, resp := client.PutAutoTerminationPolicyRequest(params) 3826// 3827// err := req.Send() 3828// if err == nil { // resp is now filled 3829// fmt.Println(resp) 3830// } 3831// 3832// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/PutAutoTerminationPolicy 3833func (c *EMR) PutAutoTerminationPolicyRequest(input *PutAutoTerminationPolicyInput) (req *request.Request, output *PutAutoTerminationPolicyOutput) { 3834 op := &request.Operation{ 3835 Name: opPutAutoTerminationPolicy, 3836 HTTPMethod: "POST", 3837 HTTPPath: "/", 3838 } 3839 3840 if input == nil { 3841 input = &PutAutoTerminationPolicyInput{} 3842 } 3843 3844 output = &PutAutoTerminationPolicyOutput{} 3845 req = c.newRequest(op, input, output) 3846 req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 3847 return 3848} 3849 3850// PutAutoTerminationPolicy API operation for Amazon EMR. 3851// 3852// Creates or updates an auto-termination policy for an Amazon EMR cluster. 3853// An auto-termination policy defines the amount of idle time in seconds after 3854// which a cluster automatically terminates. For alternative cluster termination 3855// options, see Control cluster termination (https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-plan-termination.html). 3856// 3857// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 3858// with awserr.Error's Code and Message methods to get detailed information about 3859// the error. 3860// 3861// See the AWS API reference guide for Amazon EMR's 3862// API operation PutAutoTerminationPolicy for usage and error information. 3863// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/PutAutoTerminationPolicy 3864func (c *EMR) PutAutoTerminationPolicy(input *PutAutoTerminationPolicyInput) (*PutAutoTerminationPolicyOutput, error) { 3865 req, out := c.PutAutoTerminationPolicyRequest(input) 3866 return out, req.Send() 3867} 3868 3869// PutAutoTerminationPolicyWithContext is the same as PutAutoTerminationPolicy with the addition of 3870// the ability to pass a context and additional request options. 3871// 3872// See PutAutoTerminationPolicy for details on how to use this API operation. 3873// 3874// The context must be non-nil and will be used for request cancellation. If 3875// the context is nil a panic will occur. In the future the SDK may create 3876// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 3877// for more information on using Contexts. 3878func (c *EMR) PutAutoTerminationPolicyWithContext(ctx aws.Context, input *PutAutoTerminationPolicyInput, opts ...request.Option) (*PutAutoTerminationPolicyOutput, error) { 3879 req, out := c.PutAutoTerminationPolicyRequest(input) 3880 req.SetContext(ctx) 3881 req.ApplyOptions(opts...) 3882 return out, req.Send() 3883} 3884 3885const opPutBlockPublicAccessConfiguration = "PutBlockPublicAccessConfiguration" 3886 3887// PutBlockPublicAccessConfigurationRequest generates a "aws/request.Request" representing the 3888// client's request for the PutBlockPublicAccessConfiguration operation. The "output" return 3889// value will be populated with the request's response once the request completes 3890// successfully. 3891// 3892// Use "Send" method on the returned Request to send the API call to the service. 3893// the "output" return value is not valid until after Send returns without error. 3894// 3895// See PutBlockPublicAccessConfiguration for more information on using the PutBlockPublicAccessConfiguration 3896// API call, and error handling. 3897// 3898// This method is useful when you want to inject custom logic or configuration 3899// into the SDK's request lifecycle. Such as custom headers, or retry logic. 3900// 3901// 3902// // Example sending a request using the PutBlockPublicAccessConfigurationRequest method. 3903// req, resp := client.PutBlockPublicAccessConfigurationRequest(params) 3904// 3905// err := req.Send() 3906// if err == nil { // resp is now filled 3907// fmt.Println(resp) 3908// } 3909// 3910// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/PutBlockPublicAccessConfiguration 3911func (c *EMR) PutBlockPublicAccessConfigurationRequest(input *PutBlockPublicAccessConfigurationInput) (req *request.Request, output *PutBlockPublicAccessConfigurationOutput) { 3912 op := &request.Operation{ 3913 Name: opPutBlockPublicAccessConfiguration, 3914 HTTPMethod: "POST", 3915 HTTPPath: "/", 3916 } 3917 3918 if input == nil { 3919 input = &PutBlockPublicAccessConfigurationInput{} 3920 } 3921 3922 output = &PutBlockPublicAccessConfigurationOutput{} 3923 req = c.newRequest(op, input, output) 3924 req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 3925 return 3926} 3927 3928// PutBlockPublicAccessConfiguration API operation for Amazon EMR. 3929// 3930// Creates or updates an Amazon EMR block public access configuration for your 3931// Amazon Web Services account in the current Region. For more information see 3932// Configure Block Public Access for Amazon EMR (https://docs.aws.amazon.com/emr/latest/ManagementGuide/configure-block-public-access.html) 3933// in the Amazon EMR Management Guide. 3934// 3935// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 3936// with awserr.Error's Code and Message methods to get detailed information about 3937// the error. 3938// 3939// See the AWS API reference guide for Amazon EMR's 3940// API operation PutBlockPublicAccessConfiguration for usage and error information. 3941// 3942// Returned Error Types: 3943// * InternalServerException 3944// This exception occurs when there is an internal failure in the Amazon EMR 3945// service. 3946// 3947// * InvalidRequestException 3948// This exception occurs when there is something wrong with user input. 3949// 3950// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/PutBlockPublicAccessConfiguration 3951func (c *EMR) PutBlockPublicAccessConfiguration(input *PutBlockPublicAccessConfigurationInput) (*PutBlockPublicAccessConfigurationOutput, error) { 3952 req, out := c.PutBlockPublicAccessConfigurationRequest(input) 3953 return out, req.Send() 3954} 3955 3956// PutBlockPublicAccessConfigurationWithContext is the same as PutBlockPublicAccessConfiguration with the addition of 3957// the ability to pass a context and additional request options. 3958// 3959// See PutBlockPublicAccessConfiguration for details on how to use this API operation. 3960// 3961// The context must be non-nil and will be used for request cancellation. If 3962// the context is nil a panic will occur. In the future the SDK may create 3963// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 3964// for more information on using Contexts. 3965func (c *EMR) PutBlockPublicAccessConfigurationWithContext(ctx aws.Context, input *PutBlockPublicAccessConfigurationInput, opts ...request.Option) (*PutBlockPublicAccessConfigurationOutput, error) { 3966 req, out := c.PutBlockPublicAccessConfigurationRequest(input) 3967 req.SetContext(ctx) 3968 req.ApplyOptions(opts...) 3969 return out, req.Send() 3970} 3971 3972const opPutManagedScalingPolicy = "PutManagedScalingPolicy" 3973 3974// PutManagedScalingPolicyRequest generates a "aws/request.Request" representing the 3975// client's request for the PutManagedScalingPolicy operation. The "output" return 3976// value will be populated with the request's response once the request completes 3977// successfully. 3978// 3979// Use "Send" method on the returned Request to send the API call to the service. 3980// the "output" return value is not valid until after Send returns without error. 3981// 3982// See PutManagedScalingPolicy for more information on using the PutManagedScalingPolicy 3983// API call, and error handling. 3984// 3985// This method is useful when you want to inject custom logic or configuration 3986// into the SDK's request lifecycle. Such as custom headers, or retry logic. 3987// 3988// 3989// // Example sending a request using the PutManagedScalingPolicyRequest method. 3990// req, resp := client.PutManagedScalingPolicyRequest(params) 3991// 3992// err := req.Send() 3993// if err == nil { // resp is now filled 3994// fmt.Println(resp) 3995// } 3996// 3997// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/PutManagedScalingPolicy 3998func (c *EMR) PutManagedScalingPolicyRequest(input *PutManagedScalingPolicyInput) (req *request.Request, output *PutManagedScalingPolicyOutput) { 3999 op := &request.Operation{ 4000 Name: opPutManagedScalingPolicy, 4001 HTTPMethod: "POST", 4002 HTTPPath: "/", 4003 } 4004 4005 if input == nil { 4006 input = &PutManagedScalingPolicyInput{} 4007 } 4008 4009 output = &PutManagedScalingPolicyOutput{} 4010 req = c.newRequest(op, input, output) 4011 req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 4012 return 4013} 4014 4015// PutManagedScalingPolicy API operation for Amazon EMR. 4016// 4017// Creates or updates a managed scaling policy for an Amazon EMR cluster. The 4018// managed scaling policy defines the limits for resources, such as EC2 instances 4019// that can be added or terminated from a cluster. The policy only applies to 4020// the core and task nodes. The master node cannot be scaled after initial configuration. 4021// 4022// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 4023// with awserr.Error's Code and Message methods to get detailed information about 4024// the error. 4025// 4026// See the AWS API reference guide for Amazon EMR's 4027// API operation PutManagedScalingPolicy for usage and error information. 4028// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/PutManagedScalingPolicy 4029func (c *EMR) PutManagedScalingPolicy(input *PutManagedScalingPolicyInput) (*PutManagedScalingPolicyOutput, error) { 4030 req, out := c.PutManagedScalingPolicyRequest(input) 4031 return out, req.Send() 4032} 4033 4034// PutManagedScalingPolicyWithContext is the same as PutManagedScalingPolicy with the addition of 4035// the ability to pass a context and additional request options. 4036// 4037// See PutManagedScalingPolicy for details on how to use this API operation. 4038// 4039// The context must be non-nil and will be used for request cancellation. If 4040// the context is nil a panic will occur. In the future the SDK may create 4041// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 4042// for more information on using Contexts. 4043func (c *EMR) PutManagedScalingPolicyWithContext(ctx aws.Context, input *PutManagedScalingPolicyInput, opts ...request.Option) (*PutManagedScalingPolicyOutput, error) { 4044 req, out := c.PutManagedScalingPolicyRequest(input) 4045 req.SetContext(ctx) 4046 req.ApplyOptions(opts...) 4047 return out, req.Send() 4048} 4049 4050const opRemoveAutoScalingPolicy = "RemoveAutoScalingPolicy" 4051 4052// RemoveAutoScalingPolicyRequest generates a "aws/request.Request" representing the 4053// client's request for the RemoveAutoScalingPolicy operation. The "output" return 4054// value will be populated with the request's response once the request completes 4055// successfully. 4056// 4057// Use "Send" method on the returned Request to send the API call to the service. 4058// the "output" return value is not valid until after Send returns without error. 4059// 4060// See RemoveAutoScalingPolicy for more information on using the RemoveAutoScalingPolicy 4061// API call, and error handling. 4062// 4063// This method is useful when you want to inject custom logic or configuration 4064// into the SDK's request lifecycle. Such as custom headers, or retry logic. 4065// 4066// 4067// // Example sending a request using the RemoveAutoScalingPolicyRequest method. 4068// req, resp := client.RemoveAutoScalingPolicyRequest(params) 4069// 4070// err := req.Send() 4071// if err == nil { // resp is now filled 4072// fmt.Println(resp) 4073// } 4074// 4075// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/RemoveAutoScalingPolicy 4076func (c *EMR) RemoveAutoScalingPolicyRequest(input *RemoveAutoScalingPolicyInput) (req *request.Request, output *RemoveAutoScalingPolicyOutput) { 4077 op := &request.Operation{ 4078 Name: opRemoveAutoScalingPolicy, 4079 HTTPMethod: "POST", 4080 HTTPPath: "/", 4081 } 4082 4083 if input == nil { 4084 input = &RemoveAutoScalingPolicyInput{} 4085 } 4086 4087 output = &RemoveAutoScalingPolicyOutput{} 4088 req = c.newRequest(op, input, output) 4089 req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 4090 return 4091} 4092 4093// RemoveAutoScalingPolicy API operation for Amazon EMR. 4094// 4095// Removes an automatic scaling policy from a specified instance group within 4096// an EMR cluster. 4097// 4098// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 4099// with awserr.Error's Code and Message methods to get detailed information about 4100// the error. 4101// 4102// See the AWS API reference guide for Amazon EMR's 4103// API operation RemoveAutoScalingPolicy for usage and error information. 4104// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/RemoveAutoScalingPolicy 4105func (c *EMR) RemoveAutoScalingPolicy(input *RemoveAutoScalingPolicyInput) (*RemoveAutoScalingPolicyOutput, error) { 4106 req, out := c.RemoveAutoScalingPolicyRequest(input) 4107 return out, req.Send() 4108} 4109 4110// RemoveAutoScalingPolicyWithContext is the same as RemoveAutoScalingPolicy with the addition of 4111// the ability to pass a context and additional request options. 4112// 4113// See RemoveAutoScalingPolicy for details on how to use this API operation. 4114// 4115// The context must be non-nil and will be used for request cancellation. If 4116// the context is nil a panic will occur. In the future the SDK may create 4117// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 4118// for more information on using Contexts. 4119func (c *EMR) RemoveAutoScalingPolicyWithContext(ctx aws.Context, input *RemoveAutoScalingPolicyInput, opts ...request.Option) (*RemoveAutoScalingPolicyOutput, error) { 4120 req, out := c.RemoveAutoScalingPolicyRequest(input) 4121 req.SetContext(ctx) 4122 req.ApplyOptions(opts...) 4123 return out, req.Send() 4124} 4125 4126const opRemoveAutoTerminationPolicy = "RemoveAutoTerminationPolicy" 4127 4128// RemoveAutoTerminationPolicyRequest generates a "aws/request.Request" representing the 4129// client's request for the RemoveAutoTerminationPolicy operation. The "output" return 4130// value will be populated with the request's response once the request completes 4131// successfully. 4132// 4133// Use "Send" method on the returned Request to send the API call to the service. 4134// the "output" return value is not valid until after Send returns without error. 4135// 4136// See RemoveAutoTerminationPolicy for more information on using the RemoveAutoTerminationPolicy 4137// API call, and error handling. 4138// 4139// This method is useful when you want to inject custom logic or configuration 4140// into the SDK's request lifecycle. Such as custom headers, or retry logic. 4141// 4142// 4143// // Example sending a request using the RemoveAutoTerminationPolicyRequest method. 4144// req, resp := client.RemoveAutoTerminationPolicyRequest(params) 4145// 4146// err := req.Send() 4147// if err == nil { // resp is now filled 4148// fmt.Println(resp) 4149// } 4150// 4151// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/RemoveAutoTerminationPolicy 4152func (c *EMR) RemoveAutoTerminationPolicyRequest(input *RemoveAutoTerminationPolicyInput) (req *request.Request, output *RemoveAutoTerminationPolicyOutput) { 4153 op := &request.Operation{ 4154 Name: opRemoveAutoTerminationPolicy, 4155 HTTPMethod: "POST", 4156 HTTPPath: "/", 4157 } 4158 4159 if input == nil { 4160 input = &RemoveAutoTerminationPolicyInput{} 4161 } 4162 4163 output = &RemoveAutoTerminationPolicyOutput{} 4164 req = c.newRequest(op, input, output) 4165 req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 4166 return 4167} 4168 4169// RemoveAutoTerminationPolicy API operation for Amazon EMR. 4170// 4171// Removes an auto-termination policy from an Amazon EMR cluster. 4172// 4173// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 4174// with awserr.Error's Code and Message methods to get detailed information about 4175// the error. 4176// 4177// See the AWS API reference guide for Amazon EMR's 4178// API operation RemoveAutoTerminationPolicy for usage and error information. 4179// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/RemoveAutoTerminationPolicy 4180func (c *EMR) RemoveAutoTerminationPolicy(input *RemoveAutoTerminationPolicyInput) (*RemoveAutoTerminationPolicyOutput, error) { 4181 req, out := c.RemoveAutoTerminationPolicyRequest(input) 4182 return out, req.Send() 4183} 4184 4185// RemoveAutoTerminationPolicyWithContext is the same as RemoveAutoTerminationPolicy with the addition of 4186// the ability to pass a context and additional request options. 4187// 4188// See RemoveAutoTerminationPolicy for details on how to use this API operation. 4189// 4190// The context must be non-nil and will be used for request cancellation. If 4191// the context is nil a panic will occur. In the future the SDK may create 4192// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 4193// for more information on using Contexts. 4194func (c *EMR) RemoveAutoTerminationPolicyWithContext(ctx aws.Context, input *RemoveAutoTerminationPolicyInput, opts ...request.Option) (*RemoveAutoTerminationPolicyOutput, error) { 4195 req, out := c.RemoveAutoTerminationPolicyRequest(input) 4196 req.SetContext(ctx) 4197 req.ApplyOptions(opts...) 4198 return out, req.Send() 4199} 4200 4201const opRemoveManagedScalingPolicy = "RemoveManagedScalingPolicy" 4202 4203// RemoveManagedScalingPolicyRequest generates a "aws/request.Request" representing the 4204// client's request for the RemoveManagedScalingPolicy operation. The "output" return 4205// value will be populated with the request's response once the request completes 4206// successfully. 4207// 4208// Use "Send" method on the returned Request to send the API call to the service. 4209// the "output" return value is not valid until after Send returns without error. 4210// 4211// See RemoveManagedScalingPolicy for more information on using the RemoveManagedScalingPolicy 4212// API call, and error handling. 4213// 4214// This method is useful when you want to inject custom logic or configuration 4215// into the SDK's request lifecycle. Such as custom headers, or retry logic. 4216// 4217// 4218// // Example sending a request using the RemoveManagedScalingPolicyRequest method. 4219// req, resp := client.RemoveManagedScalingPolicyRequest(params) 4220// 4221// err := req.Send() 4222// if err == nil { // resp is now filled 4223// fmt.Println(resp) 4224// } 4225// 4226// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/RemoveManagedScalingPolicy 4227func (c *EMR) RemoveManagedScalingPolicyRequest(input *RemoveManagedScalingPolicyInput) (req *request.Request, output *RemoveManagedScalingPolicyOutput) { 4228 op := &request.Operation{ 4229 Name: opRemoveManagedScalingPolicy, 4230 HTTPMethod: "POST", 4231 HTTPPath: "/", 4232 } 4233 4234 if input == nil { 4235 input = &RemoveManagedScalingPolicyInput{} 4236 } 4237 4238 output = &RemoveManagedScalingPolicyOutput{} 4239 req = c.newRequest(op, input, output) 4240 req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 4241 return 4242} 4243 4244// RemoveManagedScalingPolicy API operation for Amazon EMR. 4245// 4246// Removes a managed scaling policy from a specified EMR cluster. 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 EMR's 4253// API operation RemoveManagedScalingPolicy for usage and error information. 4254// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/RemoveManagedScalingPolicy 4255func (c *EMR) RemoveManagedScalingPolicy(input *RemoveManagedScalingPolicyInput) (*RemoveManagedScalingPolicyOutput, error) { 4256 req, out := c.RemoveManagedScalingPolicyRequest(input) 4257 return out, req.Send() 4258} 4259 4260// RemoveManagedScalingPolicyWithContext is the same as RemoveManagedScalingPolicy with the addition of 4261// the ability to pass a context and additional request options. 4262// 4263// See RemoveManagedScalingPolicy for details on how to use this API operation. 4264// 4265// The context must be non-nil and will be used for request cancellation. If 4266// the context is nil a panic will occur. In the future the SDK may create 4267// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 4268// for more information on using Contexts. 4269func (c *EMR) RemoveManagedScalingPolicyWithContext(ctx aws.Context, input *RemoveManagedScalingPolicyInput, opts ...request.Option) (*RemoveManagedScalingPolicyOutput, error) { 4270 req, out := c.RemoveManagedScalingPolicyRequest(input) 4271 req.SetContext(ctx) 4272 req.ApplyOptions(opts...) 4273 return out, req.Send() 4274} 4275 4276const opRemoveTags = "RemoveTags" 4277 4278// RemoveTagsRequest generates a "aws/request.Request" representing the 4279// client's request for the RemoveTags operation. The "output" return 4280// value will be populated with the request's response once the request completes 4281// successfully. 4282// 4283// Use "Send" method on the returned Request to send the API call to the service. 4284// the "output" return value is not valid until after Send returns without error. 4285// 4286// See RemoveTags for more information on using the RemoveTags 4287// API call, and error handling. 4288// 4289// This method is useful when you want to inject custom logic or configuration 4290// into the SDK's request lifecycle. Such as custom headers, or retry logic. 4291// 4292// 4293// // Example sending a request using the RemoveTagsRequest method. 4294// req, resp := client.RemoveTagsRequest(params) 4295// 4296// err := req.Send() 4297// if err == nil { // resp is now filled 4298// fmt.Println(resp) 4299// } 4300// 4301// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/RemoveTags 4302func (c *EMR) RemoveTagsRequest(input *RemoveTagsInput) (req *request.Request, output *RemoveTagsOutput) { 4303 op := &request.Operation{ 4304 Name: opRemoveTags, 4305 HTTPMethod: "POST", 4306 HTTPPath: "/", 4307 } 4308 4309 if input == nil { 4310 input = &RemoveTagsInput{} 4311 } 4312 4313 output = &RemoveTagsOutput{} 4314 req = c.newRequest(op, input, output) 4315 req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 4316 return 4317} 4318 4319// RemoveTags API operation for Amazon EMR. 4320// 4321// Removes tags from an Amazon EMR resource, such as a cluster or Amazon EMR 4322// Studio. Tags make it easier to associate resources in various ways, such 4323// as grouping clusters to track your Amazon EMR resource allocation costs. 4324// For more information, see Tag Clusters (https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-plan-tags.html). 4325// 4326// The following example removes the stack tag with value Prod from a cluster: 4327// 4328// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 4329// with awserr.Error's Code and Message methods to get detailed information about 4330// the error. 4331// 4332// See the AWS API reference guide for Amazon EMR's 4333// API operation RemoveTags for usage and error information. 4334// 4335// Returned Error Types: 4336// * InternalServerException 4337// This exception occurs when there is an internal failure in the Amazon EMR 4338// service. 4339// 4340// * InvalidRequestException 4341// This exception occurs when there is something wrong with user input. 4342// 4343// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/RemoveTags 4344func (c *EMR) RemoveTags(input *RemoveTagsInput) (*RemoveTagsOutput, error) { 4345 req, out := c.RemoveTagsRequest(input) 4346 return out, req.Send() 4347} 4348 4349// RemoveTagsWithContext is the same as RemoveTags with the addition of 4350// the ability to pass a context and additional request options. 4351// 4352// See RemoveTags for details on how to use this API operation. 4353// 4354// The context must be non-nil and will be used for request cancellation. If 4355// the context is nil a panic will occur. In the future the SDK may create 4356// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 4357// for more information on using Contexts. 4358func (c *EMR) RemoveTagsWithContext(ctx aws.Context, input *RemoveTagsInput, opts ...request.Option) (*RemoveTagsOutput, error) { 4359 req, out := c.RemoveTagsRequest(input) 4360 req.SetContext(ctx) 4361 req.ApplyOptions(opts...) 4362 return out, req.Send() 4363} 4364 4365const opRunJobFlow = "RunJobFlow" 4366 4367// RunJobFlowRequest generates a "aws/request.Request" representing the 4368// client's request for the RunJobFlow operation. The "output" return 4369// value will be populated with the request's response once the request completes 4370// successfully. 4371// 4372// Use "Send" method on the returned Request to send the API call to the service. 4373// the "output" return value is not valid until after Send returns without error. 4374// 4375// See RunJobFlow for more information on using the RunJobFlow 4376// API call, and error handling. 4377// 4378// This method is useful when you want to inject custom logic or configuration 4379// into the SDK's request lifecycle. Such as custom headers, or retry logic. 4380// 4381// 4382// // Example sending a request using the RunJobFlowRequest method. 4383// req, resp := client.RunJobFlowRequest(params) 4384// 4385// err := req.Send() 4386// if err == nil { // resp is now filled 4387// fmt.Println(resp) 4388// } 4389// 4390// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/RunJobFlow 4391func (c *EMR) RunJobFlowRequest(input *RunJobFlowInput) (req *request.Request, output *RunJobFlowOutput) { 4392 op := &request.Operation{ 4393 Name: opRunJobFlow, 4394 HTTPMethod: "POST", 4395 HTTPPath: "/", 4396 } 4397 4398 if input == nil { 4399 input = &RunJobFlowInput{} 4400 } 4401 4402 output = &RunJobFlowOutput{} 4403 req = c.newRequest(op, input, output) 4404 return 4405} 4406 4407// RunJobFlow API operation for Amazon EMR. 4408// 4409// RunJobFlow creates and starts running a new cluster (job flow). The cluster 4410// runs the steps specified. After the steps complete, the cluster stops and 4411// the HDFS partition is lost. To prevent loss of data, configure the last step 4412// of the job flow to store results in Amazon S3. If the JobFlowInstancesConfig 4413// KeepJobFlowAliveWhenNoSteps parameter is set to TRUE, the cluster transitions 4414// to the WAITING state rather than shutting down after the steps have completed. 4415// 4416// For additional protection, you can set the JobFlowInstancesConfig TerminationProtected 4417// parameter to TRUE to lock the cluster and prevent it from being terminated 4418// by API call, user intervention, or in the event of a job flow error. 4419// 4420// A maximum of 256 steps are allowed in each job flow. 4421// 4422// If your cluster is long-running (such as a Hive data warehouse) or complex, 4423// you may require more than 256 steps to process your data. You can bypass 4424// the 256-step limitation in various ways, including using the SSH shell to 4425// connect to the master node and submitting queries directly to the software 4426// running on the master node, such as Hive and Hadoop. For more information 4427// on how to do this, see Add More than 256 Steps to a Cluster (https://docs.aws.amazon.com/emr/latest/ManagementGuide/AddMoreThan256Steps.html) 4428// in the Amazon EMR Management Guide. 4429// 4430// For long running clusters, we recommend that you periodically store your 4431// results. 4432// 4433// The instance fleets configuration is available only in Amazon EMR versions 4434// 4.8.0 and later, excluding 5.0.x versions. The RunJobFlow request can contain 4435// InstanceFleets parameters or InstanceGroups parameters, but not both. 4436// 4437// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 4438// with awserr.Error's Code and Message methods to get detailed information about 4439// the error. 4440// 4441// See the AWS API reference guide for Amazon EMR's 4442// API operation RunJobFlow for usage and error information. 4443// 4444// Returned Error Types: 4445// * InternalServerError 4446// Indicates that an error occurred while processing the request and that the 4447// request was not completed. 4448// 4449// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/RunJobFlow 4450func (c *EMR) RunJobFlow(input *RunJobFlowInput) (*RunJobFlowOutput, error) { 4451 req, out := c.RunJobFlowRequest(input) 4452 return out, req.Send() 4453} 4454 4455// RunJobFlowWithContext is the same as RunJobFlow with the addition of 4456// the ability to pass a context and additional request options. 4457// 4458// See RunJobFlow for details on how to use this API operation. 4459// 4460// The context must be non-nil and will be used for request cancellation. If 4461// the context is nil a panic will occur. In the future the SDK may create 4462// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 4463// for more information on using Contexts. 4464func (c *EMR) RunJobFlowWithContext(ctx aws.Context, input *RunJobFlowInput, opts ...request.Option) (*RunJobFlowOutput, error) { 4465 req, out := c.RunJobFlowRequest(input) 4466 req.SetContext(ctx) 4467 req.ApplyOptions(opts...) 4468 return out, req.Send() 4469} 4470 4471const opSetTerminationProtection = "SetTerminationProtection" 4472 4473// SetTerminationProtectionRequest generates a "aws/request.Request" representing the 4474// client's request for the SetTerminationProtection operation. The "output" return 4475// value will be populated with the request's response once the request completes 4476// successfully. 4477// 4478// Use "Send" method on the returned Request to send the API call to the service. 4479// the "output" return value is not valid until after Send returns without error. 4480// 4481// See SetTerminationProtection for more information on using the SetTerminationProtection 4482// API call, and error handling. 4483// 4484// This method is useful when you want to inject custom logic or configuration 4485// into the SDK's request lifecycle. Such as custom headers, or retry logic. 4486// 4487// 4488// // Example sending a request using the SetTerminationProtectionRequest method. 4489// req, resp := client.SetTerminationProtectionRequest(params) 4490// 4491// err := req.Send() 4492// if err == nil { // resp is now filled 4493// fmt.Println(resp) 4494// } 4495// 4496// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/SetTerminationProtection 4497func (c *EMR) SetTerminationProtectionRequest(input *SetTerminationProtectionInput) (req *request.Request, output *SetTerminationProtectionOutput) { 4498 op := &request.Operation{ 4499 Name: opSetTerminationProtection, 4500 HTTPMethod: "POST", 4501 HTTPPath: "/", 4502 } 4503 4504 if input == nil { 4505 input = &SetTerminationProtectionInput{} 4506 } 4507 4508 output = &SetTerminationProtectionOutput{} 4509 req = c.newRequest(op, input, output) 4510 req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 4511 return 4512} 4513 4514// SetTerminationProtection API operation for Amazon EMR. 4515// 4516// SetTerminationProtection locks a cluster (job flow) so the EC2 instances 4517// in the cluster cannot be terminated by user intervention, an API call, or 4518// in the event of a job-flow error. The cluster still terminates upon successful 4519// completion of the job flow. Calling SetTerminationProtection on a cluster 4520// is similar to calling the Amazon EC2 DisableAPITermination API on all EC2 4521// instances in a cluster. 4522// 4523// SetTerminationProtection is used to prevent accidental termination of a cluster 4524// and to ensure that in the event of an error, the instances persist so that 4525// you can recover any data stored in their ephemeral instance storage. 4526// 4527// To terminate a cluster that has been locked by setting SetTerminationProtection 4528// to true, you must first unlock the job flow by a subsequent call to SetTerminationProtection 4529// in which you set the value to false. 4530// 4531// For more information, seeManaging Cluster Termination (https://docs.aws.amazon.com/emr/latest/ManagementGuide/UsingEMR_TerminationProtection.html) 4532// in the Amazon EMR Management Guide. 4533// 4534// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 4535// with awserr.Error's Code and Message methods to get detailed information about 4536// the error. 4537// 4538// See the AWS API reference guide for Amazon EMR's 4539// API operation SetTerminationProtection for usage and error information. 4540// 4541// Returned Error Types: 4542// * InternalServerError 4543// Indicates that an error occurred while processing the request and that the 4544// request was not completed. 4545// 4546// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/SetTerminationProtection 4547func (c *EMR) SetTerminationProtection(input *SetTerminationProtectionInput) (*SetTerminationProtectionOutput, error) { 4548 req, out := c.SetTerminationProtectionRequest(input) 4549 return out, req.Send() 4550} 4551 4552// SetTerminationProtectionWithContext is the same as SetTerminationProtection with the addition of 4553// the ability to pass a context and additional request options. 4554// 4555// See SetTerminationProtection for details on how to use this API operation. 4556// 4557// The context must be non-nil and will be used for request cancellation. If 4558// the context is nil a panic will occur. In the future the SDK may create 4559// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 4560// for more information on using Contexts. 4561func (c *EMR) SetTerminationProtectionWithContext(ctx aws.Context, input *SetTerminationProtectionInput, opts ...request.Option) (*SetTerminationProtectionOutput, error) { 4562 req, out := c.SetTerminationProtectionRequest(input) 4563 req.SetContext(ctx) 4564 req.ApplyOptions(opts...) 4565 return out, req.Send() 4566} 4567 4568const opSetVisibleToAllUsers = "SetVisibleToAllUsers" 4569 4570// SetVisibleToAllUsersRequest generates a "aws/request.Request" representing the 4571// client's request for the SetVisibleToAllUsers operation. The "output" return 4572// value will be populated with the request's response once the request completes 4573// successfully. 4574// 4575// Use "Send" method on the returned Request to send the API call to the service. 4576// the "output" return value is not valid until after Send returns without error. 4577// 4578// See SetVisibleToAllUsers for more information on using the SetVisibleToAllUsers 4579// API call, and error handling. 4580// 4581// This method is useful when you want to inject custom logic or configuration 4582// into the SDK's request lifecycle. Such as custom headers, or retry logic. 4583// 4584// 4585// // Example sending a request using the SetVisibleToAllUsersRequest method. 4586// req, resp := client.SetVisibleToAllUsersRequest(params) 4587// 4588// err := req.Send() 4589// if err == nil { // resp is now filled 4590// fmt.Println(resp) 4591// } 4592// 4593// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/SetVisibleToAllUsers 4594func (c *EMR) SetVisibleToAllUsersRequest(input *SetVisibleToAllUsersInput) (req *request.Request, output *SetVisibleToAllUsersOutput) { 4595 op := &request.Operation{ 4596 Name: opSetVisibleToAllUsers, 4597 HTTPMethod: "POST", 4598 HTTPPath: "/", 4599 } 4600 4601 if input == nil { 4602 input = &SetVisibleToAllUsersInput{} 4603 } 4604 4605 output = &SetVisibleToAllUsersOutput{} 4606 req = c.newRequest(op, input, output) 4607 req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 4608 return 4609} 4610 4611// SetVisibleToAllUsers API operation for Amazon EMR. 4612// 4613// Sets the Cluster$VisibleToAllUsers value for an EMR cluster. When true, IAM 4614// principals in the Amazon Web Services account can perform EMR cluster actions 4615// that their IAM policies allow. When false, only the IAM principal that created 4616// the cluster and the Amazon Web Services account root user can perform EMR 4617// actions on the cluster, regardless of IAM permissions policies attached to 4618// other IAM principals. 4619// 4620// This action works on running clusters. When you create a cluster, use the 4621// RunJobFlowInput$VisibleToAllUsers parameter. 4622// 4623// For more information, see Understanding the EMR Cluster VisibleToAllUsers 4624// Setting (https://docs.aws.amazon.com/emr/latest/ManagementGuide/security_iam_emr-with-iam.html#security_set_visible_to_all_users) 4625// in the Amazon EMRManagement Guide. 4626// 4627// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 4628// with awserr.Error's Code and Message methods to get detailed information about 4629// the error. 4630// 4631// See the AWS API reference guide for Amazon EMR's 4632// API operation SetVisibleToAllUsers for usage and error information. 4633// 4634// Returned Error Types: 4635// * InternalServerError 4636// Indicates that an error occurred while processing the request and that the 4637// request was not completed. 4638// 4639// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/SetVisibleToAllUsers 4640func (c *EMR) SetVisibleToAllUsers(input *SetVisibleToAllUsersInput) (*SetVisibleToAllUsersOutput, error) { 4641 req, out := c.SetVisibleToAllUsersRequest(input) 4642 return out, req.Send() 4643} 4644 4645// SetVisibleToAllUsersWithContext is the same as SetVisibleToAllUsers with the addition of 4646// the ability to pass a context and additional request options. 4647// 4648// See SetVisibleToAllUsers for details on how to use this API operation. 4649// 4650// The context must be non-nil and will be used for request cancellation. If 4651// the context is nil a panic will occur. In the future the SDK may create 4652// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 4653// for more information on using Contexts. 4654func (c *EMR) SetVisibleToAllUsersWithContext(ctx aws.Context, input *SetVisibleToAllUsersInput, opts ...request.Option) (*SetVisibleToAllUsersOutput, error) { 4655 req, out := c.SetVisibleToAllUsersRequest(input) 4656 req.SetContext(ctx) 4657 req.ApplyOptions(opts...) 4658 return out, req.Send() 4659} 4660 4661const opStartNotebookExecution = "StartNotebookExecution" 4662 4663// StartNotebookExecutionRequest generates a "aws/request.Request" representing the 4664// client's request for the StartNotebookExecution operation. The "output" return 4665// value will be populated with the request's response once the request completes 4666// successfully. 4667// 4668// Use "Send" method on the returned Request to send the API call to the service. 4669// the "output" return value is not valid until after Send returns without error. 4670// 4671// See StartNotebookExecution for more information on using the StartNotebookExecution 4672// API call, and error handling. 4673// 4674// This method is useful when you want to inject custom logic or configuration 4675// into the SDK's request lifecycle. Such as custom headers, or retry logic. 4676// 4677// 4678// // Example sending a request using the StartNotebookExecutionRequest method. 4679// req, resp := client.StartNotebookExecutionRequest(params) 4680// 4681// err := req.Send() 4682// if err == nil { // resp is now filled 4683// fmt.Println(resp) 4684// } 4685// 4686// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/StartNotebookExecution 4687func (c *EMR) StartNotebookExecutionRequest(input *StartNotebookExecutionInput) (req *request.Request, output *StartNotebookExecutionOutput) { 4688 op := &request.Operation{ 4689 Name: opStartNotebookExecution, 4690 HTTPMethod: "POST", 4691 HTTPPath: "/", 4692 } 4693 4694 if input == nil { 4695 input = &StartNotebookExecutionInput{} 4696 } 4697 4698 output = &StartNotebookExecutionOutput{} 4699 req = c.newRequest(op, input, output) 4700 return 4701} 4702 4703// StartNotebookExecution API operation for Amazon EMR. 4704// 4705// Starts a notebook execution. 4706// 4707// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 4708// with awserr.Error's Code and Message methods to get detailed information about 4709// the error. 4710// 4711// See the AWS API reference guide for Amazon EMR's 4712// API operation StartNotebookExecution for usage and error information. 4713// 4714// Returned Error Types: 4715// * InternalServerException 4716// This exception occurs when there is an internal failure in the Amazon EMR 4717// service. 4718// 4719// * InvalidRequestException 4720// This exception occurs when there is something wrong with user input. 4721// 4722// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/StartNotebookExecution 4723func (c *EMR) StartNotebookExecution(input *StartNotebookExecutionInput) (*StartNotebookExecutionOutput, error) { 4724 req, out := c.StartNotebookExecutionRequest(input) 4725 return out, req.Send() 4726} 4727 4728// StartNotebookExecutionWithContext is the same as StartNotebookExecution with the addition of 4729// the ability to pass a context and additional request options. 4730// 4731// See StartNotebookExecution for details on how to use this API operation. 4732// 4733// The context must be non-nil and will be used for request cancellation. If 4734// the context is nil a panic will occur. In the future the SDK may create 4735// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 4736// for more information on using Contexts. 4737func (c *EMR) StartNotebookExecutionWithContext(ctx aws.Context, input *StartNotebookExecutionInput, opts ...request.Option) (*StartNotebookExecutionOutput, error) { 4738 req, out := c.StartNotebookExecutionRequest(input) 4739 req.SetContext(ctx) 4740 req.ApplyOptions(opts...) 4741 return out, req.Send() 4742} 4743 4744const opStopNotebookExecution = "StopNotebookExecution" 4745 4746// StopNotebookExecutionRequest generates a "aws/request.Request" representing the 4747// client's request for the StopNotebookExecution operation. The "output" return 4748// value will be populated with the request's response once the request completes 4749// successfully. 4750// 4751// Use "Send" method on the returned Request to send the API call to the service. 4752// the "output" return value is not valid until after Send returns without error. 4753// 4754// See StopNotebookExecution for more information on using the StopNotebookExecution 4755// API call, and error handling. 4756// 4757// This method is useful when you want to inject custom logic or configuration 4758// into the SDK's request lifecycle. Such as custom headers, or retry logic. 4759// 4760// 4761// // Example sending a request using the StopNotebookExecutionRequest method. 4762// req, resp := client.StopNotebookExecutionRequest(params) 4763// 4764// err := req.Send() 4765// if err == nil { // resp is now filled 4766// fmt.Println(resp) 4767// } 4768// 4769// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/StopNotebookExecution 4770func (c *EMR) StopNotebookExecutionRequest(input *StopNotebookExecutionInput) (req *request.Request, output *StopNotebookExecutionOutput) { 4771 op := &request.Operation{ 4772 Name: opStopNotebookExecution, 4773 HTTPMethod: "POST", 4774 HTTPPath: "/", 4775 } 4776 4777 if input == nil { 4778 input = &StopNotebookExecutionInput{} 4779 } 4780 4781 output = &StopNotebookExecutionOutput{} 4782 req = c.newRequest(op, input, output) 4783 req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 4784 return 4785} 4786 4787// StopNotebookExecution API operation for Amazon EMR. 4788// 4789// Stops a notebook execution. 4790// 4791// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 4792// with awserr.Error's Code and Message methods to get detailed information about 4793// the error. 4794// 4795// See the AWS API reference guide for Amazon EMR's 4796// API operation StopNotebookExecution for usage and error information. 4797// 4798// Returned Error Types: 4799// * InternalServerError 4800// Indicates that an error occurred while processing the request and that the 4801// request was not completed. 4802// 4803// * InvalidRequestException 4804// This exception occurs when there is something wrong with user input. 4805// 4806// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/StopNotebookExecution 4807func (c *EMR) StopNotebookExecution(input *StopNotebookExecutionInput) (*StopNotebookExecutionOutput, error) { 4808 req, out := c.StopNotebookExecutionRequest(input) 4809 return out, req.Send() 4810} 4811 4812// StopNotebookExecutionWithContext is the same as StopNotebookExecution with the addition of 4813// the ability to pass a context and additional request options. 4814// 4815// See StopNotebookExecution for details on how to use this API operation. 4816// 4817// The context must be non-nil and will be used for request cancellation. If 4818// the context is nil a panic will occur. In the future the SDK may create 4819// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 4820// for more information on using Contexts. 4821func (c *EMR) StopNotebookExecutionWithContext(ctx aws.Context, input *StopNotebookExecutionInput, opts ...request.Option) (*StopNotebookExecutionOutput, error) { 4822 req, out := c.StopNotebookExecutionRequest(input) 4823 req.SetContext(ctx) 4824 req.ApplyOptions(opts...) 4825 return out, req.Send() 4826} 4827 4828const opTerminateJobFlows = "TerminateJobFlows" 4829 4830// TerminateJobFlowsRequest generates a "aws/request.Request" representing the 4831// client's request for the TerminateJobFlows operation. The "output" return 4832// value will be populated with the request's response once the request completes 4833// successfully. 4834// 4835// Use "Send" method on the returned Request to send the API call to the service. 4836// the "output" return value is not valid until after Send returns without error. 4837// 4838// See TerminateJobFlows for more information on using the TerminateJobFlows 4839// API call, and error handling. 4840// 4841// This method is useful when you want to inject custom logic or configuration 4842// into the SDK's request lifecycle. Such as custom headers, or retry logic. 4843// 4844// 4845// // Example sending a request using the TerminateJobFlowsRequest method. 4846// req, resp := client.TerminateJobFlowsRequest(params) 4847// 4848// err := req.Send() 4849// if err == nil { // resp is now filled 4850// fmt.Println(resp) 4851// } 4852// 4853// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/TerminateJobFlows 4854func (c *EMR) TerminateJobFlowsRequest(input *TerminateJobFlowsInput) (req *request.Request, output *TerminateJobFlowsOutput) { 4855 op := &request.Operation{ 4856 Name: opTerminateJobFlows, 4857 HTTPMethod: "POST", 4858 HTTPPath: "/", 4859 } 4860 4861 if input == nil { 4862 input = &TerminateJobFlowsInput{} 4863 } 4864 4865 output = &TerminateJobFlowsOutput{} 4866 req = c.newRequest(op, input, output) 4867 req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 4868 return 4869} 4870 4871// TerminateJobFlows API operation for Amazon EMR. 4872// 4873// TerminateJobFlows shuts a list of clusters (job flows) down. When a job flow 4874// is shut down, any step not yet completed is canceled and the EC2 instances 4875// on which the cluster is running are stopped. Any log files not already saved 4876// are uploaded to Amazon S3 if a LogUri was specified when the cluster was 4877// created. 4878// 4879// The maximum number of clusters allowed is 10. The call to TerminateJobFlows 4880// is asynchronous. Depending on the configuration of the cluster, it may take 4881// up to 1-5 minutes for the cluster to completely terminate and release allocated 4882// resources, such as Amazon EC2 instances. 4883// 4884// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 4885// with awserr.Error's Code and Message methods to get detailed information about 4886// the error. 4887// 4888// See the AWS API reference guide for Amazon EMR's 4889// API operation TerminateJobFlows for usage and error information. 4890// 4891// Returned Error Types: 4892// * InternalServerError 4893// Indicates that an error occurred while processing the request and that the 4894// request was not completed. 4895// 4896// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/TerminateJobFlows 4897func (c *EMR) TerminateJobFlows(input *TerminateJobFlowsInput) (*TerminateJobFlowsOutput, error) { 4898 req, out := c.TerminateJobFlowsRequest(input) 4899 return out, req.Send() 4900} 4901 4902// TerminateJobFlowsWithContext is the same as TerminateJobFlows with the addition of 4903// the ability to pass a context and additional request options. 4904// 4905// See TerminateJobFlows for details on how to use this API operation. 4906// 4907// The context must be non-nil and will be used for request cancellation. If 4908// the context is nil a panic will occur. In the future the SDK may create 4909// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 4910// for more information on using Contexts. 4911func (c *EMR) TerminateJobFlowsWithContext(ctx aws.Context, input *TerminateJobFlowsInput, opts ...request.Option) (*TerminateJobFlowsOutput, error) { 4912 req, out := c.TerminateJobFlowsRequest(input) 4913 req.SetContext(ctx) 4914 req.ApplyOptions(opts...) 4915 return out, req.Send() 4916} 4917 4918const opUpdateStudio = "UpdateStudio" 4919 4920// UpdateStudioRequest generates a "aws/request.Request" representing the 4921// client's request for the UpdateStudio operation. The "output" return 4922// value will be populated with the request's response once the request completes 4923// successfully. 4924// 4925// Use "Send" method on the returned Request to send the API call to the service. 4926// the "output" return value is not valid until after Send returns without error. 4927// 4928// See UpdateStudio for more information on using the UpdateStudio 4929// API call, and error handling. 4930// 4931// This method is useful when you want to inject custom logic or configuration 4932// into the SDK's request lifecycle. Such as custom headers, or retry logic. 4933// 4934// 4935// // Example sending a request using the UpdateStudioRequest method. 4936// req, resp := client.UpdateStudioRequest(params) 4937// 4938// err := req.Send() 4939// if err == nil { // resp is now filled 4940// fmt.Println(resp) 4941// } 4942// 4943// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/UpdateStudio 4944func (c *EMR) UpdateStudioRequest(input *UpdateStudioInput) (req *request.Request, output *UpdateStudioOutput) { 4945 op := &request.Operation{ 4946 Name: opUpdateStudio, 4947 HTTPMethod: "POST", 4948 HTTPPath: "/", 4949 } 4950 4951 if input == nil { 4952 input = &UpdateStudioInput{} 4953 } 4954 4955 output = &UpdateStudioOutput{} 4956 req = c.newRequest(op, input, output) 4957 req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 4958 return 4959} 4960 4961// UpdateStudio API operation for Amazon EMR. 4962// 4963// Updates an Amazon EMR Studio configuration, including attributes such as 4964// name, description, and subnets. 4965// 4966// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 4967// with awserr.Error's Code and Message methods to get detailed information about 4968// the error. 4969// 4970// See the AWS API reference guide for Amazon EMR's 4971// API operation UpdateStudio for usage and error information. 4972// 4973// Returned Error Types: 4974// * InternalServerException 4975// This exception occurs when there is an internal failure in the Amazon EMR 4976// service. 4977// 4978// * InvalidRequestException 4979// This exception occurs when there is something wrong with user input. 4980// 4981// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/UpdateStudio 4982func (c *EMR) UpdateStudio(input *UpdateStudioInput) (*UpdateStudioOutput, error) { 4983 req, out := c.UpdateStudioRequest(input) 4984 return out, req.Send() 4985} 4986 4987// UpdateStudioWithContext is the same as UpdateStudio with the addition of 4988// the ability to pass a context and additional request options. 4989// 4990// See UpdateStudio for details on how to use this API operation. 4991// 4992// The context must be non-nil and will be used for request cancellation. If 4993// the context is nil a panic will occur. In the future the SDK may create 4994// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 4995// for more information on using Contexts. 4996func (c *EMR) UpdateStudioWithContext(ctx aws.Context, input *UpdateStudioInput, opts ...request.Option) (*UpdateStudioOutput, error) { 4997 req, out := c.UpdateStudioRequest(input) 4998 req.SetContext(ctx) 4999 req.ApplyOptions(opts...) 5000 return out, req.Send() 5001} 5002 5003const opUpdateStudioSessionMapping = "UpdateStudioSessionMapping" 5004 5005// UpdateStudioSessionMappingRequest generates a "aws/request.Request" representing the 5006// client's request for the UpdateStudioSessionMapping operation. The "output" return 5007// value will be populated with the request's response once the request completes 5008// successfully. 5009// 5010// Use "Send" method on the returned Request to send the API call to the service. 5011// the "output" return value is not valid until after Send returns without error. 5012// 5013// See UpdateStudioSessionMapping for more information on using the UpdateStudioSessionMapping 5014// API call, and error handling. 5015// 5016// This method is useful when you want to inject custom logic or configuration 5017// into the SDK's request lifecycle. Such as custom headers, or retry logic. 5018// 5019// 5020// // Example sending a request using the UpdateStudioSessionMappingRequest method. 5021// req, resp := client.UpdateStudioSessionMappingRequest(params) 5022// 5023// err := req.Send() 5024// if err == nil { // resp is now filled 5025// fmt.Println(resp) 5026// } 5027// 5028// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/UpdateStudioSessionMapping 5029func (c *EMR) UpdateStudioSessionMappingRequest(input *UpdateStudioSessionMappingInput) (req *request.Request, output *UpdateStudioSessionMappingOutput) { 5030 op := &request.Operation{ 5031 Name: opUpdateStudioSessionMapping, 5032 HTTPMethod: "POST", 5033 HTTPPath: "/", 5034 } 5035 5036 if input == nil { 5037 input = &UpdateStudioSessionMappingInput{} 5038 } 5039 5040 output = &UpdateStudioSessionMappingOutput{} 5041 req = c.newRequest(op, input, output) 5042 req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 5043 return 5044} 5045 5046// UpdateStudioSessionMapping API operation for Amazon EMR. 5047// 5048// Updates the session policy attached to the user or group for the specified 5049// Amazon EMR Studio. 5050// 5051// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 5052// with awserr.Error's Code and Message methods to get detailed information about 5053// the error. 5054// 5055// See the AWS API reference guide for Amazon EMR's 5056// API operation UpdateStudioSessionMapping for usage and error information. 5057// 5058// Returned Error Types: 5059// * InternalServerError 5060// Indicates that an error occurred while processing the request and that the 5061// request was not completed. 5062// 5063// * InvalidRequestException 5064// This exception occurs when there is something wrong with user input. 5065// 5066// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/UpdateStudioSessionMapping 5067func (c *EMR) UpdateStudioSessionMapping(input *UpdateStudioSessionMappingInput) (*UpdateStudioSessionMappingOutput, error) { 5068 req, out := c.UpdateStudioSessionMappingRequest(input) 5069 return out, req.Send() 5070} 5071 5072// UpdateStudioSessionMappingWithContext is the same as UpdateStudioSessionMapping with the addition of 5073// the ability to pass a context and additional request options. 5074// 5075// See UpdateStudioSessionMapping for details on how to use this API operation. 5076// 5077// The context must be non-nil and will be used for request cancellation. If 5078// the context is nil a panic will occur. In the future the SDK may create 5079// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 5080// for more information on using Contexts. 5081func (c *EMR) UpdateStudioSessionMappingWithContext(ctx aws.Context, input *UpdateStudioSessionMappingInput, opts ...request.Option) (*UpdateStudioSessionMappingOutput, error) { 5082 req, out := c.UpdateStudioSessionMappingRequest(input) 5083 req.SetContext(ctx) 5084 req.ApplyOptions(opts...) 5085 return out, req.Send() 5086} 5087 5088type AddInstanceFleetInput struct { 5089 _ struct{} `type:"structure"` 5090 5091 // The unique identifier of the cluster. 5092 // 5093 // ClusterId is a required field 5094 ClusterId *string `type:"string" required:"true"` 5095 5096 // Specifies the configuration of the instance fleet. 5097 // 5098 // InstanceFleet is a required field 5099 InstanceFleet *InstanceFleetConfig `type:"structure" required:"true"` 5100} 5101 5102// String returns the string representation. 5103// 5104// API parameter values that are decorated as "sensitive" in the API will not 5105// be included in the string output. The member name will be present, but the 5106// value will be replaced with "sensitive". 5107func (s AddInstanceFleetInput) String() string { 5108 return awsutil.Prettify(s) 5109} 5110 5111// GoString returns the string representation. 5112// 5113// API parameter values that are decorated as "sensitive" in the API will not 5114// be included in the string output. The member name will be present, but the 5115// value will be replaced with "sensitive". 5116func (s AddInstanceFleetInput) GoString() string { 5117 return s.String() 5118} 5119 5120// Validate inspects the fields of the type to determine if they are valid. 5121func (s *AddInstanceFleetInput) Validate() error { 5122 invalidParams := request.ErrInvalidParams{Context: "AddInstanceFleetInput"} 5123 if s.ClusterId == nil { 5124 invalidParams.Add(request.NewErrParamRequired("ClusterId")) 5125 } 5126 if s.InstanceFleet == nil { 5127 invalidParams.Add(request.NewErrParamRequired("InstanceFleet")) 5128 } 5129 if s.InstanceFleet != nil { 5130 if err := s.InstanceFleet.Validate(); err != nil { 5131 invalidParams.AddNested("InstanceFleet", err.(request.ErrInvalidParams)) 5132 } 5133 } 5134 5135 if invalidParams.Len() > 0 { 5136 return invalidParams 5137 } 5138 return nil 5139} 5140 5141// SetClusterId sets the ClusterId field's value. 5142func (s *AddInstanceFleetInput) SetClusterId(v string) *AddInstanceFleetInput { 5143 s.ClusterId = &v 5144 return s 5145} 5146 5147// SetInstanceFleet sets the InstanceFleet field's value. 5148func (s *AddInstanceFleetInput) SetInstanceFleet(v *InstanceFleetConfig) *AddInstanceFleetInput { 5149 s.InstanceFleet = v 5150 return s 5151} 5152 5153type AddInstanceFleetOutput struct { 5154 _ struct{} `type:"structure"` 5155 5156 // The Amazon Resource Name of the cluster. 5157 ClusterArn *string `min:"20" type:"string"` 5158 5159 // The unique identifier of the cluster. 5160 ClusterId *string `type:"string"` 5161 5162 // The unique identifier of the instance fleet. 5163 InstanceFleetId *string `type:"string"` 5164} 5165 5166// String returns the string representation. 5167// 5168// API parameter values that are decorated as "sensitive" in the API will not 5169// be included in the string output. The member name will be present, but the 5170// value will be replaced with "sensitive". 5171func (s AddInstanceFleetOutput) String() string { 5172 return awsutil.Prettify(s) 5173} 5174 5175// GoString returns the string representation. 5176// 5177// API parameter values that are decorated as "sensitive" in the API will not 5178// be included in the string output. The member name will be present, but the 5179// value will be replaced with "sensitive". 5180func (s AddInstanceFleetOutput) GoString() string { 5181 return s.String() 5182} 5183 5184// SetClusterArn sets the ClusterArn field's value. 5185func (s *AddInstanceFleetOutput) SetClusterArn(v string) *AddInstanceFleetOutput { 5186 s.ClusterArn = &v 5187 return s 5188} 5189 5190// SetClusterId sets the ClusterId field's value. 5191func (s *AddInstanceFleetOutput) SetClusterId(v string) *AddInstanceFleetOutput { 5192 s.ClusterId = &v 5193 return s 5194} 5195 5196// SetInstanceFleetId sets the InstanceFleetId field's value. 5197func (s *AddInstanceFleetOutput) SetInstanceFleetId(v string) *AddInstanceFleetOutput { 5198 s.InstanceFleetId = &v 5199 return s 5200} 5201 5202// Input to an AddInstanceGroups call. 5203type AddInstanceGroupsInput struct { 5204 _ struct{} `type:"structure"` 5205 5206 // Instance groups to add. 5207 // 5208 // InstanceGroups is a required field 5209 InstanceGroups []*InstanceGroupConfig `type:"list" required:"true"` 5210 5211 // Job flow in which to add the instance groups. 5212 // 5213 // JobFlowId is a required field 5214 JobFlowId *string `type:"string" required:"true"` 5215} 5216 5217// String returns the string representation. 5218// 5219// API parameter values that are decorated as "sensitive" in the API will not 5220// be included in the string output. The member name will be present, but the 5221// value will be replaced with "sensitive". 5222func (s AddInstanceGroupsInput) String() string { 5223 return awsutil.Prettify(s) 5224} 5225 5226// GoString returns the string representation. 5227// 5228// API parameter values that are decorated as "sensitive" in the API will not 5229// be included in the string output. The member name will be present, but the 5230// value will be replaced with "sensitive". 5231func (s AddInstanceGroupsInput) GoString() string { 5232 return s.String() 5233} 5234 5235// Validate inspects the fields of the type to determine if they are valid. 5236func (s *AddInstanceGroupsInput) Validate() error { 5237 invalidParams := request.ErrInvalidParams{Context: "AddInstanceGroupsInput"} 5238 if s.InstanceGroups == nil { 5239 invalidParams.Add(request.NewErrParamRequired("InstanceGroups")) 5240 } 5241 if s.JobFlowId == nil { 5242 invalidParams.Add(request.NewErrParamRequired("JobFlowId")) 5243 } 5244 if s.InstanceGroups != nil { 5245 for i, v := range s.InstanceGroups { 5246 if v == nil { 5247 continue 5248 } 5249 if err := v.Validate(); err != nil { 5250 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "InstanceGroups", i), err.(request.ErrInvalidParams)) 5251 } 5252 } 5253 } 5254 5255 if invalidParams.Len() > 0 { 5256 return invalidParams 5257 } 5258 return nil 5259} 5260 5261// SetInstanceGroups sets the InstanceGroups field's value. 5262func (s *AddInstanceGroupsInput) SetInstanceGroups(v []*InstanceGroupConfig) *AddInstanceGroupsInput { 5263 s.InstanceGroups = v 5264 return s 5265} 5266 5267// SetJobFlowId sets the JobFlowId field's value. 5268func (s *AddInstanceGroupsInput) SetJobFlowId(v string) *AddInstanceGroupsInput { 5269 s.JobFlowId = &v 5270 return s 5271} 5272 5273// Output from an AddInstanceGroups call. 5274type AddInstanceGroupsOutput struct { 5275 _ struct{} `type:"structure"` 5276 5277 // The Amazon Resource Name of the cluster. 5278 ClusterArn *string `min:"20" type:"string"` 5279 5280 // Instance group IDs of the newly created instance groups. 5281 InstanceGroupIds []*string `type:"list"` 5282 5283 // The job flow ID in which the instance groups are added. 5284 JobFlowId *string `type:"string"` 5285} 5286 5287// String returns the string representation. 5288// 5289// API parameter values that are decorated as "sensitive" in the API will not 5290// be included in the string output. The member name will be present, but the 5291// value will be replaced with "sensitive". 5292func (s AddInstanceGroupsOutput) String() string { 5293 return awsutil.Prettify(s) 5294} 5295 5296// GoString returns the string representation. 5297// 5298// API parameter values that are decorated as "sensitive" in the API will not 5299// be included in the string output. The member name will be present, but the 5300// value will be replaced with "sensitive". 5301func (s AddInstanceGroupsOutput) GoString() string { 5302 return s.String() 5303} 5304 5305// SetClusterArn sets the ClusterArn field's value. 5306func (s *AddInstanceGroupsOutput) SetClusterArn(v string) *AddInstanceGroupsOutput { 5307 s.ClusterArn = &v 5308 return s 5309} 5310 5311// SetInstanceGroupIds sets the InstanceGroupIds field's value. 5312func (s *AddInstanceGroupsOutput) SetInstanceGroupIds(v []*string) *AddInstanceGroupsOutput { 5313 s.InstanceGroupIds = v 5314 return s 5315} 5316 5317// SetJobFlowId sets the JobFlowId field's value. 5318func (s *AddInstanceGroupsOutput) SetJobFlowId(v string) *AddInstanceGroupsOutput { 5319 s.JobFlowId = &v 5320 return s 5321} 5322 5323// The input argument to the AddJobFlowSteps operation. 5324type AddJobFlowStepsInput struct { 5325 _ struct{} `type:"structure"` 5326 5327 // A string that uniquely identifies the job flow. This identifier is returned 5328 // by RunJobFlow and can also be obtained from ListClusters. 5329 // 5330 // JobFlowId is a required field 5331 JobFlowId *string `type:"string" required:"true"` 5332 5333 // A list of StepConfig to be executed by the job flow. 5334 // 5335 // Steps is a required field 5336 Steps []*StepConfig `type:"list" required:"true"` 5337} 5338 5339// String returns the string representation. 5340// 5341// API parameter values that are decorated as "sensitive" in the API will not 5342// be included in the string output. The member name will be present, but the 5343// value will be replaced with "sensitive". 5344func (s AddJobFlowStepsInput) String() string { 5345 return awsutil.Prettify(s) 5346} 5347 5348// GoString returns the string representation. 5349// 5350// API parameter values that are decorated as "sensitive" in the API will not 5351// be included in the string output. The member name will be present, but the 5352// value will be replaced with "sensitive". 5353func (s AddJobFlowStepsInput) GoString() string { 5354 return s.String() 5355} 5356 5357// Validate inspects the fields of the type to determine if they are valid. 5358func (s *AddJobFlowStepsInput) Validate() error { 5359 invalidParams := request.ErrInvalidParams{Context: "AddJobFlowStepsInput"} 5360 if s.JobFlowId == nil { 5361 invalidParams.Add(request.NewErrParamRequired("JobFlowId")) 5362 } 5363 if s.Steps == nil { 5364 invalidParams.Add(request.NewErrParamRequired("Steps")) 5365 } 5366 if s.Steps != nil { 5367 for i, v := range s.Steps { 5368 if v == nil { 5369 continue 5370 } 5371 if err := v.Validate(); err != nil { 5372 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Steps", i), err.(request.ErrInvalidParams)) 5373 } 5374 } 5375 } 5376 5377 if invalidParams.Len() > 0 { 5378 return invalidParams 5379 } 5380 return nil 5381} 5382 5383// SetJobFlowId sets the JobFlowId field's value. 5384func (s *AddJobFlowStepsInput) SetJobFlowId(v string) *AddJobFlowStepsInput { 5385 s.JobFlowId = &v 5386 return s 5387} 5388 5389// SetSteps sets the Steps field's value. 5390func (s *AddJobFlowStepsInput) SetSteps(v []*StepConfig) *AddJobFlowStepsInput { 5391 s.Steps = v 5392 return s 5393} 5394 5395// The output for the AddJobFlowSteps operation. 5396type AddJobFlowStepsOutput struct { 5397 _ struct{} `type:"structure"` 5398 5399 // The identifiers of the list of steps added to the job flow. 5400 StepIds []*string `type:"list"` 5401} 5402 5403// String returns the string representation. 5404// 5405// API parameter values that are decorated as "sensitive" in the API will not 5406// be included in the string output. The member name will be present, but the 5407// value will be replaced with "sensitive". 5408func (s AddJobFlowStepsOutput) String() string { 5409 return awsutil.Prettify(s) 5410} 5411 5412// GoString returns the string representation. 5413// 5414// API parameter values that are decorated as "sensitive" in the API will not 5415// be included in the string output. The member name will be present, but the 5416// value will be replaced with "sensitive". 5417func (s AddJobFlowStepsOutput) GoString() string { 5418 return s.String() 5419} 5420 5421// SetStepIds sets the StepIds field's value. 5422func (s *AddJobFlowStepsOutput) SetStepIds(v []*string) *AddJobFlowStepsOutput { 5423 s.StepIds = v 5424 return s 5425} 5426 5427// This input identifies an Amazon EMR resource and a list of tags to attach. 5428type AddTagsInput struct { 5429 _ struct{} `type:"structure"` 5430 5431 // The Amazon EMR resource identifier to which tags will be added. For example, 5432 // a cluster identifier or an Amazon EMR Studio ID. 5433 // 5434 // ResourceId is a required field 5435 ResourceId *string `type:"string" required:"true"` 5436 5437 // A list of tags to associate with a resource. Tags are user-defined key-value 5438 // pairs that consist of a required key string with a maximum of 128 characters, 5439 // and an optional value string with a maximum of 256 characters. 5440 // 5441 // Tags is a required field 5442 Tags []*Tag `type:"list" required:"true"` 5443} 5444 5445// String returns the string representation. 5446// 5447// API parameter values that are decorated as "sensitive" in the API will not 5448// be included in the string output. The member name will be present, but the 5449// value will be replaced with "sensitive". 5450func (s AddTagsInput) String() string { 5451 return awsutil.Prettify(s) 5452} 5453 5454// GoString returns the string representation. 5455// 5456// API parameter values that are decorated as "sensitive" in the API will not 5457// be included in the string output. The member name will be present, but the 5458// value will be replaced with "sensitive". 5459func (s AddTagsInput) GoString() string { 5460 return s.String() 5461} 5462 5463// Validate inspects the fields of the type to determine if they are valid. 5464func (s *AddTagsInput) Validate() error { 5465 invalidParams := request.ErrInvalidParams{Context: "AddTagsInput"} 5466 if s.ResourceId == nil { 5467 invalidParams.Add(request.NewErrParamRequired("ResourceId")) 5468 } 5469 if s.Tags == nil { 5470 invalidParams.Add(request.NewErrParamRequired("Tags")) 5471 } 5472 5473 if invalidParams.Len() > 0 { 5474 return invalidParams 5475 } 5476 return nil 5477} 5478 5479// SetResourceId sets the ResourceId field's value. 5480func (s *AddTagsInput) SetResourceId(v string) *AddTagsInput { 5481 s.ResourceId = &v 5482 return s 5483} 5484 5485// SetTags sets the Tags field's value. 5486func (s *AddTagsInput) SetTags(v []*Tag) *AddTagsInput { 5487 s.Tags = v 5488 return s 5489} 5490 5491// This output indicates the result of adding tags to a resource. 5492type AddTagsOutput struct { 5493 _ struct{} `type:"structure"` 5494} 5495 5496// String returns the string representation. 5497// 5498// API parameter values that are decorated as "sensitive" in the API will not 5499// be included in the string output. The member name will be present, but the 5500// value will be replaced with "sensitive". 5501func (s AddTagsOutput) String() string { 5502 return awsutil.Prettify(s) 5503} 5504 5505// GoString returns the string representation. 5506// 5507// API parameter values that are decorated as "sensitive" in the API will not 5508// be included in the string output. The member name will be present, but the 5509// value will be replaced with "sensitive". 5510func (s AddTagsOutput) GoString() string { 5511 return s.String() 5512} 5513 5514// With Amazon EMR release version 4.0 and later, the only accepted parameter 5515// is the application name. To pass arguments to applications, you use configuration 5516// classifications specified using configuration JSON objects. For more information, 5517// see Configuring Applications (https://docs.aws.amazon.com/emr/latest/ReleaseGuide/emr-configure-apps.html). 5518// 5519// With earlier Amazon EMR releases, the application is any Amazon or third-party 5520// software that you can add to the cluster. This structure contains a list 5521// of strings that indicates the software to use with the cluster and accepts 5522// a user argument list. Amazon EMR accepts and forwards the argument list to 5523// the corresponding installation script as bootstrap action argument. 5524type Application struct { 5525 _ struct{} `type:"structure"` 5526 5527 // This option is for advanced users only. This is meta information about third-party 5528 // applications that third-party vendors use for testing purposes. 5529 AdditionalInfo map[string]*string `type:"map"` 5530 5531 // Arguments for Amazon EMR to pass to the application. 5532 Args []*string `type:"list"` 5533 5534 // The name of the application. 5535 Name *string `type:"string"` 5536 5537 // The version of the application. 5538 Version *string `type:"string"` 5539} 5540 5541// String returns the string representation. 5542// 5543// API parameter values that are decorated as "sensitive" in the API will not 5544// be included in the string output. The member name will be present, but the 5545// value will be replaced with "sensitive". 5546func (s Application) String() string { 5547 return awsutil.Prettify(s) 5548} 5549 5550// GoString returns the string representation. 5551// 5552// API parameter values that are decorated as "sensitive" in the API will not 5553// be included in the string output. The member name will be present, but the 5554// value will be replaced with "sensitive". 5555func (s Application) GoString() string { 5556 return s.String() 5557} 5558 5559// SetAdditionalInfo sets the AdditionalInfo field's value. 5560func (s *Application) SetAdditionalInfo(v map[string]*string) *Application { 5561 s.AdditionalInfo = v 5562 return s 5563} 5564 5565// SetArgs sets the Args field's value. 5566func (s *Application) SetArgs(v []*string) *Application { 5567 s.Args = v 5568 return s 5569} 5570 5571// SetName sets the Name field's value. 5572func (s *Application) SetName(v string) *Application { 5573 s.Name = &v 5574 return s 5575} 5576 5577// SetVersion sets the Version field's value. 5578func (s *Application) SetVersion(v string) *Application { 5579 s.Version = &v 5580 return s 5581} 5582 5583// An automatic scaling policy for a core instance group or task instance group 5584// in an Amazon EMR cluster. An automatic scaling policy defines how an instance 5585// group dynamically adds and terminates EC2 instances in response to the value 5586// of a CloudWatch metric. See PutAutoScalingPolicy. 5587type AutoScalingPolicy struct { 5588 _ struct{} `type:"structure"` 5589 5590 // The upper and lower EC2 instance limits for an automatic scaling policy. 5591 // Automatic scaling activity will not cause an instance group to grow above 5592 // or below these limits. 5593 // 5594 // Constraints is a required field 5595 Constraints *ScalingConstraints `type:"structure" required:"true"` 5596 5597 // The scale-in and scale-out rules that comprise the automatic scaling policy. 5598 // 5599 // Rules is a required field 5600 Rules []*ScalingRule `type:"list" required:"true"` 5601} 5602 5603// String returns the string representation. 5604// 5605// API parameter values that are decorated as "sensitive" in the API will not 5606// be included in the string output. The member name will be present, but the 5607// value will be replaced with "sensitive". 5608func (s AutoScalingPolicy) String() string { 5609 return awsutil.Prettify(s) 5610} 5611 5612// GoString returns the string representation. 5613// 5614// API parameter values that are decorated as "sensitive" in the API will not 5615// be included in the string output. The member name will be present, but the 5616// value will be replaced with "sensitive". 5617func (s AutoScalingPolicy) GoString() string { 5618 return s.String() 5619} 5620 5621// Validate inspects the fields of the type to determine if they are valid. 5622func (s *AutoScalingPolicy) Validate() error { 5623 invalidParams := request.ErrInvalidParams{Context: "AutoScalingPolicy"} 5624 if s.Constraints == nil { 5625 invalidParams.Add(request.NewErrParamRequired("Constraints")) 5626 } 5627 if s.Rules == nil { 5628 invalidParams.Add(request.NewErrParamRequired("Rules")) 5629 } 5630 if s.Constraints != nil { 5631 if err := s.Constraints.Validate(); err != nil { 5632 invalidParams.AddNested("Constraints", err.(request.ErrInvalidParams)) 5633 } 5634 } 5635 if s.Rules != nil { 5636 for i, v := range s.Rules { 5637 if v == nil { 5638 continue 5639 } 5640 if err := v.Validate(); err != nil { 5641 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Rules", i), err.(request.ErrInvalidParams)) 5642 } 5643 } 5644 } 5645 5646 if invalidParams.Len() > 0 { 5647 return invalidParams 5648 } 5649 return nil 5650} 5651 5652// SetConstraints sets the Constraints field's value. 5653func (s *AutoScalingPolicy) SetConstraints(v *ScalingConstraints) *AutoScalingPolicy { 5654 s.Constraints = v 5655 return s 5656} 5657 5658// SetRules sets the Rules field's value. 5659func (s *AutoScalingPolicy) SetRules(v []*ScalingRule) *AutoScalingPolicy { 5660 s.Rules = v 5661 return s 5662} 5663 5664// An automatic scaling policy for a core instance group or task instance group 5665// in an Amazon EMR cluster. The automatic scaling policy defines how an instance 5666// group dynamically adds and terminates EC2 instances in response to the value 5667// of a CloudWatch metric. See PutAutoScalingPolicy. 5668type AutoScalingPolicyDescription struct { 5669 _ struct{} `type:"structure"` 5670 5671 // The upper and lower EC2 instance limits for an automatic scaling policy. 5672 // Automatic scaling activity will not cause an instance group to grow above 5673 // or below these limits. 5674 Constraints *ScalingConstraints `type:"structure"` 5675 5676 // The scale-in and scale-out rules that comprise the automatic scaling policy. 5677 Rules []*ScalingRule `type:"list"` 5678 5679 // The status of an automatic scaling policy. 5680 Status *AutoScalingPolicyStatus `type:"structure"` 5681} 5682 5683// String returns the string representation. 5684// 5685// API parameter values that are decorated as "sensitive" in the API will not 5686// be included in the string output. The member name will be present, but the 5687// value will be replaced with "sensitive". 5688func (s AutoScalingPolicyDescription) String() string { 5689 return awsutil.Prettify(s) 5690} 5691 5692// GoString returns the string representation. 5693// 5694// API parameter values that are decorated as "sensitive" in the API will not 5695// be included in the string output. The member name will be present, but the 5696// value will be replaced with "sensitive". 5697func (s AutoScalingPolicyDescription) GoString() string { 5698 return s.String() 5699} 5700 5701// SetConstraints sets the Constraints field's value. 5702func (s *AutoScalingPolicyDescription) SetConstraints(v *ScalingConstraints) *AutoScalingPolicyDescription { 5703 s.Constraints = v 5704 return s 5705} 5706 5707// SetRules sets the Rules field's value. 5708func (s *AutoScalingPolicyDescription) SetRules(v []*ScalingRule) *AutoScalingPolicyDescription { 5709 s.Rules = v 5710 return s 5711} 5712 5713// SetStatus sets the Status field's value. 5714func (s *AutoScalingPolicyDescription) SetStatus(v *AutoScalingPolicyStatus) *AutoScalingPolicyDescription { 5715 s.Status = v 5716 return s 5717} 5718 5719// The reason for an AutoScalingPolicyStatus change. 5720type AutoScalingPolicyStateChangeReason struct { 5721 _ struct{} `type:"structure"` 5722 5723 // The code indicating the reason for the change in status.USER_REQUEST indicates 5724 // that the scaling policy status was changed by a user. PROVISION_FAILURE indicates 5725 // that the status change was because the policy failed to provision. CLEANUP_FAILURE 5726 // indicates an error. 5727 Code *string `type:"string" enum:"AutoScalingPolicyStateChangeReasonCode"` 5728 5729 // A friendly, more verbose message that accompanies an automatic scaling policy 5730 // state change. 5731 Message *string `type:"string"` 5732} 5733 5734// String returns the string representation. 5735// 5736// API parameter values that are decorated as "sensitive" in the API will not 5737// be included in the string output. The member name will be present, but the 5738// value will be replaced with "sensitive". 5739func (s AutoScalingPolicyStateChangeReason) String() string { 5740 return awsutil.Prettify(s) 5741} 5742 5743// GoString returns the string representation. 5744// 5745// API parameter values that are decorated as "sensitive" in the API will not 5746// be included in the string output. The member name will be present, but the 5747// value will be replaced with "sensitive". 5748func (s AutoScalingPolicyStateChangeReason) GoString() string { 5749 return s.String() 5750} 5751 5752// SetCode sets the Code field's value. 5753func (s *AutoScalingPolicyStateChangeReason) SetCode(v string) *AutoScalingPolicyStateChangeReason { 5754 s.Code = &v 5755 return s 5756} 5757 5758// SetMessage sets the Message field's value. 5759func (s *AutoScalingPolicyStateChangeReason) SetMessage(v string) *AutoScalingPolicyStateChangeReason { 5760 s.Message = &v 5761 return s 5762} 5763 5764// The status of an automatic scaling policy. 5765type AutoScalingPolicyStatus struct { 5766 _ struct{} `type:"structure"` 5767 5768 // Indicates the status of the automatic scaling policy. 5769 State *string `type:"string" enum:"AutoScalingPolicyState"` 5770 5771 // The reason for a change in status. 5772 StateChangeReason *AutoScalingPolicyStateChangeReason `type:"structure"` 5773} 5774 5775// String returns the string representation. 5776// 5777// API parameter values that are decorated as "sensitive" in the API will not 5778// be included in the string output. The member name will be present, but the 5779// value will be replaced with "sensitive". 5780func (s AutoScalingPolicyStatus) String() string { 5781 return awsutil.Prettify(s) 5782} 5783 5784// GoString returns the string representation. 5785// 5786// API parameter values that are decorated as "sensitive" in the API will not 5787// be included in the string output. The member name will be present, but the 5788// value will be replaced with "sensitive". 5789func (s AutoScalingPolicyStatus) GoString() string { 5790 return s.String() 5791} 5792 5793// SetState sets the State field's value. 5794func (s *AutoScalingPolicyStatus) SetState(v string) *AutoScalingPolicyStatus { 5795 s.State = &v 5796 return s 5797} 5798 5799// SetStateChangeReason sets the StateChangeReason field's value. 5800func (s *AutoScalingPolicyStatus) SetStateChangeReason(v *AutoScalingPolicyStateChangeReason) *AutoScalingPolicyStatus { 5801 s.StateChangeReason = v 5802 return s 5803} 5804 5805// An auto-termination policy for an Amazon EMR cluster. An auto-termination 5806// policy defines the amount of idle time in seconds after which a cluster automatically 5807// terminates. For alternative cluster termination options, see Control cluster 5808// termination (https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-plan-termination.html). 5809type AutoTerminationPolicy struct { 5810 _ struct{} `type:"structure"` 5811 5812 // Specifies the amount of idle time in seconds after which the cluster automatically 5813 // terminates. You can specify a minimum of 60 seconds and a maximum of 604800 5814 // seconds (seven days). 5815 IdleTimeout *int64 `type:"long"` 5816} 5817 5818// String returns the string representation. 5819// 5820// API parameter values that are decorated as "sensitive" in the API will not 5821// be included in the string output. The member name will be present, but the 5822// value will be replaced with "sensitive". 5823func (s AutoTerminationPolicy) String() string { 5824 return awsutil.Prettify(s) 5825} 5826 5827// GoString returns the string representation. 5828// 5829// API parameter values that are decorated as "sensitive" in the API will not 5830// be included in the string output. The member name will be present, but the 5831// value will be replaced with "sensitive". 5832func (s AutoTerminationPolicy) GoString() string { 5833 return s.String() 5834} 5835 5836// SetIdleTimeout sets the IdleTimeout field's value. 5837func (s *AutoTerminationPolicy) SetIdleTimeout(v int64) *AutoTerminationPolicy { 5838 s.IdleTimeout = &v 5839 return s 5840} 5841 5842// A configuration for Amazon EMR block public access. When BlockPublicSecurityGroupRules 5843// is set to true, Amazon EMR prevents cluster creation if one of the cluster's 5844// security groups has a rule that allows inbound traffic from 0.0.0.0/0 or 5845// ::/0 on a port, unless the port is specified as an exception using PermittedPublicSecurityGroupRuleRanges. 5846type BlockPublicAccessConfiguration struct { 5847 _ struct{} `type:"structure"` 5848 5849 // Indicates whether Amazon EMR block public access is enabled (true) or disabled 5850 // (false). By default, the value is false for accounts that have created EMR 5851 // clusters before July 2019. For accounts created after this, the default is 5852 // true. 5853 // 5854 // BlockPublicSecurityGroupRules is a required field 5855 BlockPublicSecurityGroupRules *bool `type:"boolean" required:"true"` 5856 5857 // Specifies ports and port ranges that are permitted to have security group 5858 // rules that allow inbound traffic from all public sources. For example, if 5859 // Port 23 (Telnet) is specified for PermittedPublicSecurityGroupRuleRanges, 5860 // Amazon EMR allows cluster creation if a security group associated with the 5861 // cluster has a rule that allows inbound traffic on Port 23 from IPv4 0.0.0.0/0 5862 // or IPv6 port ::/0 as the source. 5863 // 5864 // By default, Port 22, which is used for SSH access to the cluster EC2 instances, 5865 // is in the list of PermittedPublicSecurityGroupRuleRanges. 5866 PermittedPublicSecurityGroupRuleRanges []*PortRange `type:"list"` 5867} 5868 5869// String returns the string representation. 5870// 5871// API parameter values that are decorated as "sensitive" in the API will not 5872// be included in the string output. The member name will be present, but the 5873// value will be replaced with "sensitive". 5874func (s BlockPublicAccessConfiguration) String() string { 5875 return awsutil.Prettify(s) 5876} 5877 5878// GoString returns the string representation. 5879// 5880// API parameter values that are decorated as "sensitive" in the API will not 5881// be included in the string output. The member name will be present, but the 5882// value will be replaced with "sensitive". 5883func (s BlockPublicAccessConfiguration) GoString() string { 5884 return s.String() 5885} 5886 5887// Validate inspects the fields of the type to determine if they are valid. 5888func (s *BlockPublicAccessConfiguration) Validate() error { 5889 invalidParams := request.ErrInvalidParams{Context: "BlockPublicAccessConfiguration"} 5890 if s.BlockPublicSecurityGroupRules == nil { 5891 invalidParams.Add(request.NewErrParamRequired("BlockPublicSecurityGroupRules")) 5892 } 5893 if s.PermittedPublicSecurityGroupRuleRanges != nil { 5894 for i, v := range s.PermittedPublicSecurityGroupRuleRanges { 5895 if v == nil { 5896 continue 5897 } 5898 if err := v.Validate(); err != nil { 5899 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "PermittedPublicSecurityGroupRuleRanges", i), err.(request.ErrInvalidParams)) 5900 } 5901 } 5902 } 5903 5904 if invalidParams.Len() > 0 { 5905 return invalidParams 5906 } 5907 return nil 5908} 5909 5910// SetBlockPublicSecurityGroupRules sets the BlockPublicSecurityGroupRules field's value. 5911func (s *BlockPublicAccessConfiguration) SetBlockPublicSecurityGroupRules(v bool) *BlockPublicAccessConfiguration { 5912 s.BlockPublicSecurityGroupRules = &v 5913 return s 5914} 5915 5916// SetPermittedPublicSecurityGroupRuleRanges sets the PermittedPublicSecurityGroupRuleRanges field's value. 5917func (s *BlockPublicAccessConfiguration) SetPermittedPublicSecurityGroupRuleRanges(v []*PortRange) *BlockPublicAccessConfiguration { 5918 s.PermittedPublicSecurityGroupRuleRanges = v 5919 return s 5920} 5921 5922// Properties that describe the Amazon Web Services principal that created the 5923// BlockPublicAccessConfiguration using the PutBlockPublicAccessConfiguration 5924// action as well as the date and time that the configuration was created. Each 5925// time a configuration for block public access is updated, Amazon EMR updates 5926// this metadata. 5927type BlockPublicAccessConfigurationMetadata struct { 5928 _ struct{} `type:"structure"` 5929 5930 // The Amazon Resource Name that created or last modified the configuration. 5931 // 5932 // CreatedByArn is a required field 5933 CreatedByArn *string `min:"20" type:"string" required:"true"` 5934 5935 // The date and time that the configuration was created. 5936 // 5937 // CreationDateTime is a required field 5938 CreationDateTime *time.Time `type:"timestamp" required:"true"` 5939} 5940 5941// String returns the string representation. 5942// 5943// API parameter values that are decorated as "sensitive" in the API will not 5944// be included in the string output. The member name will be present, but the 5945// value will be replaced with "sensitive". 5946func (s BlockPublicAccessConfigurationMetadata) String() string { 5947 return awsutil.Prettify(s) 5948} 5949 5950// GoString returns the string representation. 5951// 5952// API parameter values that are decorated as "sensitive" in the API will not 5953// be included in the string output. The member name will be present, but the 5954// value will be replaced with "sensitive". 5955func (s BlockPublicAccessConfigurationMetadata) GoString() string { 5956 return s.String() 5957} 5958 5959// SetCreatedByArn sets the CreatedByArn field's value. 5960func (s *BlockPublicAccessConfigurationMetadata) SetCreatedByArn(v string) *BlockPublicAccessConfigurationMetadata { 5961 s.CreatedByArn = &v 5962 return s 5963} 5964 5965// SetCreationDateTime sets the CreationDateTime field's value. 5966func (s *BlockPublicAccessConfigurationMetadata) SetCreationDateTime(v time.Time) *BlockPublicAccessConfigurationMetadata { 5967 s.CreationDateTime = &v 5968 return s 5969} 5970 5971// Configuration of a bootstrap action. 5972type BootstrapActionConfig struct { 5973 _ struct{} `type:"structure"` 5974 5975 // The name of the bootstrap action. 5976 // 5977 // Name is a required field 5978 Name *string `type:"string" required:"true"` 5979 5980 // The script run by the bootstrap action. 5981 // 5982 // ScriptBootstrapAction is a required field 5983 ScriptBootstrapAction *ScriptBootstrapActionConfig `type:"structure" required:"true"` 5984} 5985 5986// String returns the string representation. 5987// 5988// API parameter values that are decorated as "sensitive" in the API will not 5989// be included in the string output. The member name will be present, but the 5990// value will be replaced with "sensitive". 5991func (s BootstrapActionConfig) String() string { 5992 return awsutil.Prettify(s) 5993} 5994 5995// GoString returns the string representation. 5996// 5997// API parameter values that are decorated as "sensitive" in the API will not 5998// be included in the string output. The member name will be present, but the 5999// value will be replaced with "sensitive". 6000func (s BootstrapActionConfig) GoString() string { 6001 return s.String() 6002} 6003 6004// Validate inspects the fields of the type to determine if they are valid. 6005func (s *BootstrapActionConfig) Validate() error { 6006 invalidParams := request.ErrInvalidParams{Context: "BootstrapActionConfig"} 6007 if s.Name == nil { 6008 invalidParams.Add(request.NewErrParamRequired("Name")) 6009 } 6010 if s.ScriptBootstrapAction == nil { 6011 invalidParams.Add(request.NewErrParamRequired("ScriptBootstrapAction")) 6012 } 6013 if s.ScriptBootstrapAction != nil { 6014 if err := s.ScriptBootstrapAction.Validate(); err != nil { 6015 invalidParams.AddNested("ScriptBootstrapAction", err.(request.ErrInvalidParams)) 6016 } 6017 } 6018 6019 if invalidParams.Len() > 0 { 6020 return invalidParams 6021 } 6022 return nil 6023} 6024 6025// SetName sets the Name field's value. 6026func (s *BootstrapActionConfig) SetName(v string) *BootstrapActionConfig { 6027 s.Name = &v 6028 return s 6029} 6030 6031// SetScriptBootstrapAction sets the ScriptBootstrapAction field's value. 6032func (s *BootstrapActionConfig) SetScriptBootstrapAction(v *ScriptBootstrapActionConfig) *BootstrapActionConfig { 6033 s.ScriptBootstrapAction = v 6034 return s 6035} 6036 6037// Reports the configuration of a bootstrap action in a cluster (job flow). 6038type BootstrapActionDetail struct { 6039 _ struct{} `type:"structure"` 6040 6041 // A description of the bootstrap action. 6042 BootstrapActionConfig *BootstrapActionConfig `type:"structure"` 6043} 6044 6045// String returns the string representation. 6046// 6047// API parameter values that are decorated as "sensitive" in the API will not 6048// be included in the string output. The member name will be present, but the 6049// value will be replaced with "sensitive". 6050func (s BootstrapActionDetail) String() string { 6051 return awsutil.Prettify(s) 6052} 6053 6054// GoString returns the string representation. 6055// 6056// API parameter values that are decorated as "sensitive" in the API will not 6057// be included in the string output. The member name will be present, but the 6058// value will be replaced with "sensitive". 6059func (s BootstrapActionDetail) GoString() string { 6060 return s.String() 6061} 6062 6063// SetBootstrapActionConfig sets the BootstrapActionConfig field's value. 6064func (s *BootstrapActionDetail) SetBootstrapActionConfig(v *BootstrapActionConfig) *BootstrapActionDetail { 6065 s.BootstrapActionConfig = v 6066 return s 6067} 6068 6069// Specification of the status of a CancelSteps request. Available only in Amazon 6070// EMR version 4.8.0 and later, excluding version 5.0.0. 6071type CancelStepsInfo struct { 6072 _ struct{} `type:"structure"` 6073 6074 // The reason for the failure if the CancelSteps request fails. 6075 Reason *string `type:"string"` 6076 6077 // The status of a CancelSteps Request. The value may be SUBMITTED or FAILED. 6078 Status *string `type:"string" enum:"CancelStepsRequestStatus"` 6079 6080 // The encrypted StepId of a step. 6081 StepId *string `type:"string"` 6082} 6083 6084// String returns the string representation. 6085// 6086// API parameter values that are decorated as "sensitive" in the API will not 6087// be included in the string output. The member name will be present, but the 6088// value will be replaced with "sensitive". 6089func (s CancelStepsInfo) String() string { 6090 return awsutil.Prettify(s) 6091} 6092 6093// GoString returns the string representation. 6094// 6095// API parameter values that are decorated as "sensitive" in the API will not 6096// be included in the string output. The member name will be present, but the 6097// value will be replaced with "sensitive". 6098func (s CancelStepsInfo) GoString() string { 6099 return s.String() 6100} 6101 6102// SetReason sets the Reason field's value. 6103func (s *CancelStepsInfo) SetReason(v string) *CancelStepsInfo { 6104 s.Reason = &v 6105 return s 6106} 6107 6108// SetStatus sets the Status field's value. 6109func (s *CancelStepsInfo) SetStatus(v string) *CancelStepsInfo { 6110 s.Status = &v 6111 return s 6112} 6113 6114// SetStepId sets the StepId field's value. 6115func (s *CancelStepsInfo) SetStepId(v string) *CancelStepsInfo { 6116 s.StepId = &v 6117 return s 6118} 6119 6120// The input argument to the CancelSteps operation. 6121type CancelStepsInput struct { 6122 _ struct{} `type:"structure"` 6123 6124 // The ClusterID for the specified steps that will be canceled. Use RunJobFlow 6125 // and ListClusters to get ClusterIDs. 6126 // 6127 // ClusterId is a required field 6128 ClusterId *string `type:"string" required:"true"` 6129 6130 // The option to choose to cancel RUNNING steps. By default, the value is SEND_INTERRUPT. 6131 StepCancellationOption *string `type:"string" enum:"StepCancellationOption"` 6132 6133 // The list of StepIDs to cancel. Use ListSteps to get steps and their states 6134 // for the specified cluster. 6135 // 6136 // StepIds is a required field 6137 StepIds []*string `type:"list" required:"true"` 6138} 6139 6140// String returns the string representation. 6141// 6142// API parameter values that are decorated as "sensitive" in the API will not 6143// be included in the string output. The member name will be present, but the 6144// value will be replaced with "sensitive". 6145func (s CancelStepsInput) String() string { 6146 return awsutil.Prettify(s) 6147} 6148 6149// GoString returns the string representation. 6150// 6151// API parameter values that are decorated as "sensitive" in the API will not 6152// be included in the string output. The member name will be present, but the 6153// value will be replaced with "sensitive". 6154func (s CancelStepsInput) GoString() string { 6155 return s.String() 6156} 6157 6158// Validate inspects the fields of the type to determine if they are valid. 6159func (s *CancelStepsInput) Validate() error { 6160 invalidParams := request.ErrInvalidParams{Context: "CancelStepsInput"} 6161 if s.ClusterId == nil { 6162 invalidParams.Add(request.NewErrParamRequired("ClusterId")) 6163 } 6164 if s.StepIds == nil { 6165 invalidParams.Add(request.NewErrParamRequired("StepIds")) 6166 } 6167 6168 if invalidParams.Len() > 0 { 6169 return invalidParams 6170 } 6171 return nil 6172} 6173 6174// SetClusterId sets the ClusterId field's value. 6175func (s *CancelStepsInput) SetClusterId(v string) *CancelStepsInput { 6176 s.ClusterId = &v 6177 return s 6178} 6179 6180// SetStepCancellationOption sets the StepCancellationOption field's value. 6181func (s *CancelStepsInput) SetStepCancellationOption(v string) *CancelStepsInput { 6182 s.StepCancellationOption = &v 6183 return s 6184} 6185 6186// SetStepIds sets the StepIds field's value. 6187func (s *CancelStepsInput) SetStepIds(v []*string) *CancelStepsInput { 6188 s.StepIds = v 6189 return s 6190} 6191 6192// The output for the CancelSteps operation. 6193type CancelStepsOutput struct { 6194 _ struct{} `type:"structure"` 6195 6196 // A list of CancelStepsInfo, which shows the status of specified cancel requests 6197 // for each StepID specified. 6198 CancelStepsInfoList []*CancelStepsInfo `type:"list"` 6199} 6200 6201// String returns the string representation. 6202// 6203// API parameter values that are decorated as "sensitive" in the API will not 6204// be included in the string output. The member name will be present, but the 6205// value will be replaced with "sensitive". 6206func (s CancelStepsOutput) String() string { 6207 return awsutil.Prettify(s) 6208} 6209 6210// GoString returns the string representation. 6211// 6212// API parameter values that are decorated as "sensitive" in the API will not 6213// be included in the string output. The member name will be present, but the 6214// value will be replaced with "sensitive". 6215func (s CancelStepsOutput) GoString() string { 6216 return s.String() 6217} 6218 6219// SetCancelStepsInfoList sets the CancelStepsInfoList field's value. 6220func (s *CancelStepsOutput) SetCancelStepsInfoList(v []*CancelStepsInfo) *CancelStepsOutput { 6221 s.CancelStepsInfoList = v 6222 return s 6223} 6224 6225// The definition of a CloudWatch metric alarm, which determines when an automatic 6226// scaling activity is triggered. When the defined alarm conditions are satisfied, 6227// scaling activity begins. 6228type CloudWatchAlarmDefinition struct { 6229 _ struct{} `type:"structure"` 6230 6231 // Determines how the metric specified by MetricName is compared to the value 6232 // specified by Threshold. 6233 // 6234 // ComparisonOperator is a required field 6235 ComparisonOperator *string `type:"string" required:"true" enum:"ComparisonOperator"` 6236 6237 // A CloudWatch metric dimension. 6238 Dimensions []*MetricDimension `type:"list"` 6239 6240 // The number of periods, in five-minute increments, during which the alarm 6241 // condition must exist before the alarm triggers automatic scaling activity. 6242 // The default value is 1. 6243 EvaluationPeriods *int64 `type:"integer"` 6244 6245 // The name of the CloudWatch metric that is watched to determine an alarm condition. 6246 // 6247 // MetricName is a required field 6248 MetricName *string `type:"string" required:"true"` 6249 6250 // The namespace for the CloudWatch metric. The default is AWS/ElasticMapReduce. 6251 Namespace *string `type:"string"` 6252 6253 // The period, in seconds, over which the statistic is applied. EMR CloudWatch 6254 // metrics are emitted every five minutes (300 seconds), so if an EMR CloudWatch 6255 // metric is specified, specify 300. 6256 // 6257 // Period is a required field 6258 Period *int64 `type:"integer" required:"true"` 6259 6260 // The statistic to apply to the metric associated with the alarm. The default 6261 // is AVERAGE. 6262 Statistic *string `type:"string" enum:"Statistic"` 6263 6264 // The value against which the specified statistic is compared. 6265 // 6266 // Threshold is a required field 6267 Threshold *float64 `type:"double" required:"true"` 6268 6269 // The unit of measure associated with the CloudWatch metric being watched. 6270 // The value specified for Unit must correspond to the units specified in the 6271 // CloudWatch metric. 6272 Unit *string `type:"string" enum:"Unit"` 6273} 6274 6275// String returns the string representation. 6276// 6277// API parameter values that are decorated as "sensitive" in the API will not 6278// be included in the string output. The member name will be present, but the 6279// value will be replaced with "sensitive". 6280func (s CloudWatchAlarmDefinition) String() string { 6281 return awsutil.Prettify(s) 6282} 6283 6284// GoString returns the string representation. 6285// 6286// API parameter values that are decorated as "sensitive" in the API will not 6287// be included in the string output. The member name will be present, but the 6288// value will be replaced with "sensitive". 6289func (s CloudWatchAlarmDefinition) GoString() string { 6290 return s.String() 6291} 6292 6293// Validate inspects the fields of the type to determine if they are valid. 6294func (s *CloudWatchAlarmDefinition) Validate() error { 6295 invalidParams := request.ErrInvalidParams{Context: "CloudWatchAlarmDefinition"} 6296 if s.ComparisonOperator == nil { 6297 invalidParams.Add(request.NewErrParamRequired("ComparisonOperator")) 6298 } 6299 if s.MetricName == nil { 6300 invalidParams.Add(request.NewErrParamRequired("MetricName")) 6301 } 6302 if s.Period == nil { 6303 invalidParams.Add(request.NewErrParamRequired("Period")) 6304 } 6305 if s.Threshold == nil { 6306 invalidParams.Add(request.NewErrParamRequired("Threshold")) 6307 } 6308 6309 if invalidParams.Len() > 0 { 6310 return invalidParams 6311 } 6312 return nil 6313} 6314 6315// SetComparisonOperator sets the ComparisonOperator field's value. 6316func (s *CloudWatchAlarmDefinition) SetComparisonOperator(v string) *CloudWatchAlarmDefinition { 6317 s.ComparisonOperator = &v 6318 return s 6319} 6320 6321// SetDimensions sets the Dimensions field's value. 6322func (s *CloudWatchAlarmDefinition) SetDimensions(v []*MetricDimension) *CloudWatchAlarmDefinition { 6323 s.Dimensions = v 6324 return s 6325} 6326 6327// SetEvaluationPeriods sets the EvaluationPeriods field's value. 6328func (s *CloudWatchAlarmDefinition) SetEvaluationPeriods(v int64) *CloudWatchAlarmDefinition { 6329 s.EvaluationPeriods = &v 6330 return s 6331} 6332 6333// SetMetricName sets the MetricName field's value. 6334func (s *CloudWatchAlarmDefinition) SetMetricName(v string) *CloudWatchAlarmDefinition { 6335 s.MetricName = &v 6336 return s 6337} 6338 6339// SetNamespace sets the Namespace field's value. 6340func (s *CloudWatchAlarmDefinition) SetNamespace(v string) *CloudWatchAlarmDefinition { 6341 s.Namespace = &v 6342 return s 6343} 6344 6345// SetPeriod sets the Period field's value. 6346func (s *CloudWatchAlarmDefinition) SetPeriod(v int64) *CloudWatchAlarmDefinition { 6347 s.Period = &v 6348 return s 6349} 6350 6351// SetStatistic sets the Statistic field's value. 6352func (s *CloudWatchAlarmDefinition) SetStatistic(v string) *CloudWatchAlarmDefinition { 6353 s.Statistic = &v 6354 return s 6355} 6356 6357// SetThreshold sets the Threshold field's value. 6358func (s *CloudWatchAlarmDefinition) SetThreshold(v float64) *CloudWatchAlarmDefinition { 6359 s.Threshold = &v 6360 return s 6361} 6362 6363// SetUnit sets the Unit field's value. 6364func (s *CloudWatchAlarmDefinition) SetUnit(v string) *CloudWatchAlarmDefinition { 6365 s.Unit = &v 6366 return s 6367} 6368 6369// The detailed description of the cluster. 6370type Cluster struct { 6371 _ struct{} `type:"structure"` 6372 6373 // The applications installed on this cluster. 6374 Applications []*Application `type:"list"` 6375 6376 // An IAM role for automatic scaling policies. The default role is EMR_AutoScaling_DefaultRole. 6377 // The IAM role provides permissions that the automatic scaling feature requires 6378 // to launch and terminate EC2 instances in an instance group. 6379 AutoScalingRole *string `type:"string"` 6380 6381 // Specifies whether the cluster should terminate after completing all steps. 6382 AutoTerminate *bool `type:"boolean"` 6383 6384 // The Amazon Resource Name of the cluster. 6385 ClusterArn *string `min:"20" type:"string"` 6386 6387 // Applies only to Amazon EMR releases 4.x and later. The list of Configurations 6388 // supplied to the EMR cluster. 6389 Configurations []*Configuration `type:"list"` 6390 6391 // Available only in Amazon EMR version 5.7.0 and later. The ID of a custom 6392 // Amazon EBS-backed Linux AMI if the cluster uses a custom AMI. 6393 CustomAmiId *string `type:"string"` 6394 6395 // The size, in GiB, of the Amazon EBS root device volume of the Linux AMI that 6396 // is used for each EC2 instance. Available in Amazon EMR version 4.x and later. 6397 EbsRootVolumeSize *int64 `type:"integer"` 6398 6399 // Provides information about the EC2 instances in a cluster grouped by category. 6400 // For example, key name, subnet ID, IAM instance profile, and so on. 6401 Ec2InstanceAttributes *Ec2InstanceAttributes `type:"structure"` 6402 6403 // The unique identifier for the cluster. 6404 Id *string `type:"string"` 6405 6406 // 6407 // The instance fleet configuration is available only in Amazon EMR versions 6408 // 4.8.0 and later, excluding 5.0.x versions. 6409 // 6410 // The instance group configuration of the cluster. A value of INSTANCE_GROUP 6411 // indicates a uniform instance group configuration. A value of INSTANCE_FLEET 6412 // indicates an instance fleets configuration. 6413 InstanceCollectionType *string `type:"string" enum:"InstanceCollectionType"` 6414 6415 // Attributes for Kerberos configuration when Kerberos authentication is enabled 6416 // using a security configuration. For more information see Use Kerberos Authentication 6417 // (https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-kerberos.html) 6418 // in the Amazon EMR Management Guide. 6419 KerberosAttributes *KerberosAttributes `type:"structure"` 6420 6421 // The KMS key used for encrypting log files. This attribute is only available 6422 // with EMR version 5.30.0 and later, excluding EMR 6.0.0. 6423 LogEncryptionKmsKeyId *string `type:"string"` 6424 6425 // The path to the Amazon S3 location where logs for this cluster are stored. 6426 LogUri *string `type:"string"` 6427 6428 // The DNS name of the master node. If the cluster is on a private subnet, this 6429 // is the private DNS name. On a public subnet, this is the public DNS name. 6430 MasterPublicDnsName *string `type:"string"` 6431 6432 // The name of the cluster. 6433 Name *string `type:"string"` 6434 6435 // An approximation of the cost of the cluster, represented in m1.small/hours. 6436 // This value is incremented one time for every hour an m1.small instance runs. 6437 // Larger instances are weighted more, so an EC2 instance that is roughly four 6438 // times more expensive would result in the normalized instance hours being 6439 // incremented by four. This result is only an approximation and does not reflect 6440 // the actual billing rate. 6441 NormalizedInstanceHours *int64 `type:"integer"` 6442 6443 // The Amazon Resource Name (ARN) of the Outpost where the cluster is launched. 6444 OutpostArn *string `type:"string"` 6445 6446 // Placement group configured for an Amazon EMR cluster. 6447 PlacementGroups []*PlacementGroupConfig `type:"list"` 6448 6449 // The Amazon EMR release label, which determines the version of open-source 6450 // application packages installed on the cluster. Release labels are in the 6451 // form emr-x.x.x, where x.x.x is an Amazon EMR release version such as emr-5.14.0. 6452 // For more information about Amazon EMR release versions and included application 6453 // versions and features, see https://docs.aws.amazon.com/emr/latest/ReleaseGuide/ 6454 // (https://docs.aws.amazon.com/emr/latest/ReleaseGuide/). The release label 6455 // applies only to Amazon EMR releases version 4.0 and later. Earlier versions 6456 // use AmiVersion. 6457 ReleaseLabel *string `type:"string"` 6458 6459 // Applies only when CustomAmiID is used. Specifies the type of updates that 6460 // are applied from the Amazon Linux AMI package repositories when an instance 6461 // boots using the AMI. 6462 RepoUpgradeOnBoot *string `type:"string" enum:"RepoUpgradeOnBoot"` 6463 6464 // The AMI version requested for this cluster. 6465 RequestedAmiVersion *string `type:"string"` 6466 6467 // The AMI version running on this cluster. 6468 RunningAmiVersion *string `type:"string"` 6469 6470 // The way that individual Amazon EC2 instances terminate when an automatic 6471 // scale-in activity occurs or an instance group is resized. TERMINATE_AT_INSTANCE_HOUR 6472 // indicates that Amazon EMR terminates nodes at the instance-hour boundary, 6473 // regardless of when the request to terminate the instance was submitted. This 6474 // option is only available with Amazon EMR 5.1.0 and later and is the default 6475 // for clusters created using that version. TERMINATE_AT_TASK_COMPLETION indicates 6476 // that Amazon EMR adds nodes to a deny list and drains tasks from nodes before 6477 // terminating the Amazon EC2 instances, regardless of the instance-hour boundary. 6478 // With either behavior, Amazon EMR removes the least active nodes first and 6479 // blocks instance termination if it could lead to HDFS corruption. TERMINATE_AT_TASK_COMPLETION 6480 // is available only in Amazon EMR version 4.1.0 and later, and is the default 6481 // for versions of Amazon EMR earlier than 5.1.0. 6482 ScaleDownBehavior *string `type:"string" enum:"ScaleDownBehavior"` 6483 6484 // The name of the security configuration applied to the cluster. 6485 SecurityConfiguration *string `type:"string"` 6486 6487 // The IAM role that Amazon EMR assumes in order to access Amazon Web Services 6488 // resources on your behalf. 6489 ServiceRole *string `type:"string"` 6490 6491 // The current status details about the cluster. 6492 Status *ClusterStatus `type:"structure"` 6493 6494 // Specifies the number of steps that can be executed concurrently. 6495 StepConcurrencyLevel *int64 `type:"integer"` 6496 6497 // A list of tags associated with a cluster. 6498 Tags []*Tag `type:"list"` 6499 6500 // Indicates whether Amazon EMR will lock the cluster to prevent the EC2 instances 6501 // from being terminated by an API call or user intervention, or in the event 6502 // of a cluster error. 6503 TerminationProtected *bool `type:"boolean"` 6504 6505 // Indicates whether the cluster is visible to IAM principals in the Amazon 6506 // Web Services account associated with the cluster. When true, IAM principals 6507 // in the Amazon Web Services account can perform EMR cluster actions on the 6508 // cluster that their IAM policies allow. When false, only the IAM principal 6509 // that created the cluster and the Amazon Web Services account root user can 6510 // perform EMR actions, regardless of IAM permissions policies attached to other 6511 // IAM principals. 6512 // 6513 // The default value is true if a value is not provided when creating a cluster 6514 // using the EMR API RunJobFlow command, the CLI create-cluster (https://docs.aws.amazon.com/cli/latest/reference/emr/create-cluster.html) 6515 // command, or the Amazon Web Services Management Console. IAM principals that 6516 // are allowed to perform actions on the cluster can use the SetVisibleToAllUsers 6517 // action to change the value on a running cluster. For more information, see 6518 // Understanding the EMR Cluster VisibleToAllUsers Setting (https://docs.aws.amazon.com/emr/latest/ManagementGuide/security_iam_emr-with-iam.html#security_set_visible_to_all_users) 6519 // in the Amazon EMRManagement Guide. 6520 VisibleToAllUsers *bool `type:"boolean"` 6521} 6522 6523// String returns the string representation. 6524// 6525// API parameter values that are decorated as "sensitive" in the API will not 6526// be included in the string output. The member name will be present, but the 6527// value will be replaced with "sensitive". 6528func (s Cluster) String() string { 6529 return awsutil.Prettify(s) 6530} 6531 6532// GoString returns the string representation. 6533// 6534// API parameter values that are decorated as "sensitive" in the API will not 6535// be included in the string output. The member name will be present, but the 6536// value will be replaced with "sensitive". 6537func (s Cluster) GoString() string { 6538 return s.String() 6539} 6540 6541// SetApplications sets the Applications field's value. 6542func (s *Cluster) SetApplications(v []*Application) *Cluster { 6543 s.Applications = v 6544 return s 6545} 6546 6547// SetAutoScalingRole sets the AutoScalingRole field's value. 6548func (s *Cluster) SetAutoScalingRole(v string) *Cluster { 6549 s.AutoScalingRole = &v 6550 return s 6551} 6552 6553// SetAutoTerminate sets the AutoTerminate field's value. 6554func (s *Cluster) SetAutoTerminate(v bool) *Cluster { 6555 s.AutoTerminate = &v 6556 return s 6557} 6558 6559// SetClusterArn sets the ClusterArn field's value. 6560func (s *Cluster) SetClusterArn(v string) *Cluster { 6561 s.ClusterArn = &v 6562 return s 6563} 6564 6565// SetConfigurations sets the Configurations field's value. 6566func (s *Cluster) SetConfigurations(v []*Configuration) *Cluster { 6567 s.Configurations = v 6568 return s 6569} 6570 6571// SetCustomAmiId sets the CustomAmiId field's value. 6572func (s *Cluster) SetCustomAmiId(v string) *Cluster { 6573 s.CustomAmiId = &v 6574 return s 6575} 6576 6577// SetEbsRootVolumeSize sets the EbsRootVolumeSize field's value. 6578func (s *Cluster) SetEbsRootVolumeSize(v int64) *Cluster { 6579 s.EbsRootVolumeSize = &v 6580 return s 6581} 6582 6583// SetEc2InstanceAttributes sets the Ec2InstanceAttributes field's value. 6584func (s *Cluster) SetEc2InstanceAttributes(v *Ec2InstanceAttributes) *Cluster { 6585 s.Ec2InstanceAttributes = v 6586 return s 6587} 6588 6589// SetId sets the Id field's value. 6590func (s *Cluster) SetId(v string) *Cluster { 6591 s.Id = &v 6592 return s 6593} 6594 6595// SetInstanceCollectionType sets the InstanceCollectionType field's value. 6596func (s *Cluster) SetInstanceCollectionType(v string) *Cluster { 6597 s.InstanceCollectionType = &v 6598 return s 6599} 6600 6601// SetKerberosAttributes sets the KerberosAttributes field's value. 6602func (s *Cluster) SetKerberosAttributes(v *KerberosAttributes) *Cluster { 6603 s.KerberosAttributes = v 6604 return s 6605} 6606 6607// SetLogEncryptionKmsKeyId sets the LogEncryptionKmsKeyId field's value. 6608func (s *Cluster) SetLogEncryptionKmsKeyId(v string) *Cluster { 6609 s.LogEncryptionKmsKeyId = &v 6610 return s 6611} 6612 6613// SetLogUri sets the LogUri field's value. 6614func (s *Cluster) SetLogUri(v string) *Cluster { 6615 s.LogUri = &v 6616 return s 6617} 6618 6619// SetMasterPublicDnsName sets the MasterPublicDnsName field's value. 6620func (s *Cluster) SetMasterPublicDnsName(v string) *Cluster { 6621 s.MasterPublicDnsName = &v 6622 return s 6623} 6624 6625// SetName sets the Name field's value. 6626func (s *Cluster) SetName(v string) *Cluster { 6627 s.Name = &v 6628 return s 6629} 6630 6631// SetNormalizedInstanceHours sets the NormalizedInstanceHours field's value. 6632func (s *Cluster) SetNormalizedInstanceHours(v int64) *Cluster { 6633 s.NormalizedInstanceHours = &v 6634 return s 6635} 6636 6637// SetOutpostArn sets the OutpostArn field's value. 6638func (s *Cluster) SetOutpostArn(v string) *Cluster { 6639 s.OutpostArn = &v 6640 return s 6641} 6642 6643// SetPlacementGroups sets the PlacementGroups field's value. 6644func (s *Cluster) SetPlacementGroups(v []*PlacementGroupConfig) *Cluster { 6645 s.PlacementGroups = v 6646 return s 6647} 6648 6649// SetReleaseLabel sets the ReleaseLabel field's value. 6650func (s *Cluster) SetReleaseLabel(v string) *Cluster { 6651 s.ReleaseLabel = &v 6652 return s 6653} 6654 6655// SetRepoUpgradeOnBoot sets the RepoUpgradeOnBoot field's value. 6656func (s *Cluster) SetRepoUpgradeOnBoot(v string) *Cluster { 6657 s.RepoUpgradeOnBoot = &v 6658 return s 6659} 6660 6661// SetRequestedAmiVersion sets the RequestedAmiVersion field's value. 6662func (s *Cluster) SetRequestedAmiVersion(v string) *Cluster { 6663 s.RequestedAmiVersion = &v 6664 return s 6665} 6666 6667// SetRunningAmiVersion sets the RunningAmiVersion field's value. 6668func (s *Cluster) SetRunningAmiVersion(v string) *Cluster { 6669 s.RunningAmiVersion = &v 6670 return s 6671} 6672 6673// SetScaleDownBehavior sets the ScaleDownBehavior field's value. 6674func (s *Cluster) SetScaleDownBehavior(v string) *Cluster { 6675 s.ScaleDownBehavior = &v 6676 return s 6677} 6678 6679// SetSecurityConfiguration sets the SecurityConfiguration field's value. 6680func (s *Cluster) SetSecurityConfiguration(v string) *Cluster { 6681 s.SecurityConfiguration = &v 6682 return s 6683} 6684 6685// SetServiceRole sets the ServiceRole field's value. 6686func (s *Cluster) SetServiceRole(v string) *Cluster { 6687 s.ServiceRole = &v 6688 return s 6689} 6690 6691// SetStatus sets the Status field's value. 6692func (s *Cluster) SetStatus(v *ClusterStatus) *Cluster { 6693 s.Status = v 6694 return s 6695} 6696 6697// SetStepConcurrencyLevel sets the StepConcurrencyLevel field's value. 6698func (s *Cluster) SetStepConcurrencyLevel(v int64) *Cluster { 6699 s.StepConcurrencyLevel = &v 6700 return s 6701} 6702 6703// SetTags sets the Tags field's value. 6704func (s *Cluster) SetTags(v []*Tag) *Cluster { 6705 s.Tags = v 6706 return s 6707} 6708 6709// SetTerminationProtected sets the TerminationProtected field's value. 6710func (s *Cluster) SetTerminationProtected(v bool) *Cluster { 6711 s.TerminationProtected = &v 6712 return s 6713} 6714 6715// SetVisibleToAllUsers sets the VisibleToAllUsers field's value. 6716func (s *Cluster) SetVisibleToAllUsers(v bool) *Cluster { 6717 s.VisibleToAllUsers = &v 6718 return s 6719} 6720 6721// The reason that the cluster changed to its current state. 6722type ClusterStateChangeReason struct { 6723 _ struct{} `type:"structure"` 6724 6725 // The programmatic code for the state change reason. 6726 Code *string `type:"string" enum:"ClusterStateChangeReasonCode"` 6727 6728 // The descriptive message for the state change reason. 6729 Message *string `type:"string"` 6730} 6731 6732// String returns the string representation. 6733// 6734// API parameter values that are decorated as "sensitive" in the API will not 6735// be included in the string output. The member name will be present, but the 6736// value will be replaced with "sensitive". 6737func (s ClusterStateChangeReason) String() string { 6738 return awsutil.Prettify(s) 6739} 6740 6741// GoString returns the string representation. 6742// 6743// API parameter values that are decorated as "sensitive" in the API will not 6744// be included in the string output. The member name will be present, but the 6745// value will be replaced with "sensitive". 6746func (s ClusterStateChangeReason) GoString() string { 6747 return s.String() 6748} 6749 6750// SetCode sets the Code field's value. 6751func (s *ClusterStateChangeReason) SetCode(v string) *ClusterStateChangeReason { 6752 s.Code = &v 6753 return s 6754} 6755 6756// SetMessage sets the Message field's value. 6757func (s *ClusterStateChangeReason) SetMessage(v string) *ClusterStateChangeReason { 6758 s.Message = &v 6759 return s 6760} 6761 6762// The detailed status of the cluster. 6763type ClusterStatus struct { 6764 _ struct{} `type:"structure"` 6765 6766 // The current state of the cluster. 6767 State *string `type:"string" enum:"ClusterState"` 6768 6769 // The reason for the cluster status change. 6770 StateChangeReason *ClusterStateChangeReason `type:"structure"` 6771 6772 // A timeline that represents the status of a cluster over the lifetime of the 6773 // cluster. 6774 Timeline *ClusterTimeline `type:"structure"` 6775} 6776 6777// String returns the string representation. 6778// 6779// API parameter values that are decorated as "sensitive" in the API will not 6780// be included in the string output. The member name will be present, but the 6781// value will be replaced with "sensitive". 6782func (s ClusterStatus) String() string { 6783 return awsutil.Prettify(s) 6784} 6785 6786// GoString returns the string representation. 6787// 6788// API parameter values that are decorated as "sensitive" in the API will not 6789// be included in the string output. The member name will be present, but the 6790// value will be replaced with "sensitive". 6791func (s ClusterStatus) GoString() string { 6792 return s.String() 6793} 6794 6795// SetState sets the State field's value. 6796func (s *ClusterStatus) SetState(v string) *ClusterStatus { 6797 s.State = &v 6798 return s 6799} 6800 6801// SetStateChangeReason sets the StateChangeReason field's value. 6802func (s *ClusterStatus) SetStateChangeReason(v *ClusterStateChangeReason) *ClusterStatus { 6803 s.StateChangeReason = v 6804 return s 6805} 6806 6807// SetTimeline sets the Timeline field's value. 6808func (s *ClusterStatus) SetTimeline(v *ClusterTimeline) *ClusterStatus { 6809 s.Timeline = v 6810 return s 6811} 6812 6813// The summary description of the cluster. 6814type ClusterSummary struct { 6815 _ struct{} `type:"structure"` 6816 6817 // The Amazon Resource Name of the cluster. 6818 ClusterArn *string `min:"20" type:"string"` 6819 6820 // The unique identifier for the cluster. 6821 Id *string `type:"string"` 6822 6823 // The name of the cluster. 6824 Name *string `type:"string"` 6825 6826 // An approximation of the cost of the cluster, represented in m1.small/hours. 6827 // This value is incremented one time for every hour an m1.small instance runs. 6828 // Larger instances are weighted more, so an EC2 instance that is roughly four 6829 // times more expensive would result in the normalized instance hours being 6830 // incremented by four. This result is only an approximation and does not reflect 6831 // the actual billing rate. 6832 NormalizedInstanceHours *int64 `type:"integer"` 6833 6834 // The Amazon Resource Name (ARN) of the Outpost where the cluster is launched. 6835 OutpostArn *string `type:"string"` 6836 6837 // The details about the current status of the cluster. 6838 Status *ClusterStatus `type:"structure"` 6839} 6840 6841// String returns the string representation. 6842// 6843// API parameter values that are decorated as "sensitive" in the API will not 6844// be included in the string output. The member name will be present, but the 6845// value will be replaced with "sensitive". 6846func (s ClusterSummary) String() string { 6847 return awsutil.Prettify(s) 6848} 6849 6850// GoString returns the string representation. 6851// 6852// API parameter values that are decorated as "sensitive" in the API will not 6853// be included in the string output. The member name will be present, but the 6854// value will be replaced with "sensitive". 6855func (s ClusterSummary) GoString() string { 6856 return s.String() 6857} 6858 6859// SetClusterArn sets the ClusterArn field's value. 6860func (s *ClusterSummary) SetClusterArn(v string) *ClusterSummary { 6861 s.ClusterArn = &v 6862 return s 6863} 6864 6865// SetId sets the Id field's value. 6866func (s *ClusterSummary) SetId(v string) *ClusterSummary { 6867 s.Id = &v 6868 return s 6869} 6870 6871// SetName sets the Name field's value. 6872func (s *ClusterSummary) SetName(v string) *ClusterSummary { 6873 s.Name = &v 6874 return s 6875} 6876 6877// SetNormalizedInstanceHours sets the NormalizedInstanceHours field's value. 6878func (s *ClusterSummary) SetNormalizedInstanceHours(v int64) *ClusterSummary { 6879 s.NormalizedInstanceHours = &v 6880 return s 6881} 6882 6883// SetOutpostArn sets the OutpostArn field's value. 6884func (s *ClusterSummary) SetOutpostArn(v string) *ClusterSummary { 6885 s.OutpostArn = &v 6886 return s 6887} 6888 6889// SetStatus sets the Status field's value. 6890func (s *ClusterSummary) SetStatus(v *ClusterStatus) *ClusterSummary { 6891 s.Status = v 6892 return s 6893} 6894 6895// Represents the timeline of the cluster's lifecycle. 6896type ClusterTimeline struct { 6897 _ struct{} `type:"structure"` 6898 6899 // The creation date and time of the cluster. 6900 CreationDateTime *time.Time `type:"timestamp"` 6901 6902 // The date and time when the cluster was terminated. 6903 EndDateTime *time.Time `type:"timestamp"` 6904 6905 // The date and time when the cluster was ready to run steps. 6906 ReadyDateTime *time.Time `type:"timestamp"` 6907} 6908 6909// String returns the string representation. 6910// 6911// API parameter values that are decorated as "sensitive" in the API will not 6912// be included in the string output. The member name will be present, but the 6913// value will be replaced with "sensitive". 6914func (s ClusterTimeline) String() string { 6915 return awsutil.Prettify(s) 6916} 6917 6918// GoString returns the string representation. 6919// 6920// API parameter values that are decorated as "sensitive" in the API will not 6921// be included in the string output. The member name will be present, but the 6922// value will be replaced with "sensitive". 6923func (s ClusterTimeline) GoString() string { 6924 return s.String() 6925} 6926 6927// SetCreationDateTime sets the CreationDateTime field's value. 6928func (s *ClusterTimeline) SetCreationDateTime(v time.Time) *ClusterTimeline { 6929 s.CreationDateTime = &v 6930 return s 6931} 6932 6933// SetEndDateTime sets the EndDateTime field's value. 6934func (s *ClusterTimeline) SetEndDateTime(v time.Time) *ClusterTimeline { 6935 s.EndDateTime = &v 6936 return s 6937} 6938 6939// SetReadyDateTime sets the ReadyDateTime field's value. 6940func (s *ClusterTimeline) SetReadyDateTime(v time.Time) *ClusterTimeline { 6941 s.ReadyDateTime = &v 6942 return s 6943} 6944 6945// An entity describing an executable that runs on a cluster. 6946type Command struct { 6947 _ struct{} `type:"structure"` 6948 6949 // Arguments for Amazon EMR to pass to the command for execution. 6950 Args []*string `type:"list"` 6951 6952 // The name of the command. 6953 Name *string `type:"string"` 6954 6955 // The Amazon S3 location of the command script. 6956 ScriptPath *string `type:"string"` 6957} 6958 6959// String returns the string representation. 6960// 6961// API parameter values that are decorated as "sensitive" in the API will not 6962// be included in the string output. The member name will be present, but the 6963// value will be replaced with "sensitive". 6964func (s Command) String() string { 6965 return awsutil.Prettify(s) 6966} 6967 6968// GoString returns the string representation. 6969// 6970// API parameter values that are decorated as "sensitive" in the API will not 6971// be included in the string output. The member name will be present, but the 6972// value will be replaced with "sensitive". 6973func (s Command) GoString() string { 6974 return s.String() 6975} 6976 6977// SetArgs sets the Args field's value. 6978func (s *Command) SetArgs(v []*string) *Command { 6979 s.Args = v 6980 return s 6981} 6982 6983// SetName sets the Name field's value. 6984func (s *Command) SetName(v string) *Command { 6985 s.Name = &v 6986 return s 6987} 6988 6989// SetScriptPath sets the ScriptPath field's value. 6990func (s *Command) SetScriptPath(v string) *Command { 6991 s.ScriptPath = &v 6992 return s 6993} 6994 6995// The EC2 unit limits for a managed scaling policy. The managed scaling activity 6996// of a cluster can not be above or below these limits. The limit only applies 6997// to the core and task nodes. The master node cannot be scaled after initial 6998// configuration. 6999type ComputeLimits struct { 7000 _ struct{} `type:"structure"` 7001 7002 // The upper boundary of EC2 units. It is measured through vCPU cores or instances 7003 // for instance groups and measured through units for instance fleets. Managed 7004 // scaling activities are not allowed beyond this boundary. The limit only applies 7005 // to the core and task nodes. The master node cannot be scaled after initial 7006 // configuration. 7007 // 7008 // MaximumCapacityUnits is a required field 7009 MaximumCapacityUnits *int64 `type:"integer" required:"true"` 7010 7011 // The upper boundary of EC2 units for core node type in a cluster. It is measured 7012 // through vCPU cores or instances for instance groups and measured through 7013 // units for instance fleets. The core units are not allowed to scale beyond 7014 // this boundary. The parameter is used to split capacity allocation between 7015 // core and task nodes. 7016 MaximumCoreCapacityUnits *int64 `type:"integer"` 7017 7018 // The upper boundary of On-Demand EC2 units. It is measured through vCPU cores 7019 // or instances for instance groups and measured through units for instance 7020 // fleets. The On-Demand units are not allowed to scale beyond this boundary. 7021 // The parameter is used to split capacity allocation between On-Demand and 7022 // Spot Instances. 7023 MaximumOnDemandCapacityUnits *int64 `type:"integer"` 7024 7025 // The lower boundary of EC2 units. It is measured through vCPU cores or instances 7026 // for instance groups and measured through units for instance fleets. Managed 7027 // scaling activities are not allowed beyond this boundary. The limit only applies 7028 // to the core and task nodes. The master node cannot be scaled after initial 7029 // configuration. 7030 // 7031 // MinimumCapacityUnits is a required field 7032 MinimumCapacityUnits *int64 `type:"integer" required:"true"` 7033 7034 // The unit type used for specifying a managed scaling policy. 7035 // 7036 // UnitType is a required field 7037 UnitType *string `type:"string" required:"true" enum:"ComputeLimitsUnitType"` 7038} 7039 7040// String returns the string representation. 7041// 7042// API parameter values that are decorated as "sensitive" in the API will not 7043// be included in the string output. The member name will be present, but the 7044// value will be replaced with "sensitive". 7045func (s ComputeLimits) String() string { 7046 return awsutil.Prettify(s) 7047} 7048 7049// GoString returns the string representation. 7050// 7051// API parameter values that are decorated as "sensitive" in the API will not 7052// be included in the string output. The member name will be present, but the 7053// value will be replaced with "sensitive". 7054func (s ComputeLimits) GoString() string { 7055 return s.String() 7056} 7057 7058// Validate inspects the fields of the type to determine if they are valid. 7059func (s *ComputeLimits) Validate() error { 7060 invalidParams := request.ErrInvalidParams{Context: "ComputeLimits"} 7061 if s.MaximumCapacityUnits == nil { 7062 invalidParams.Add(request.NewErrParamRequired("MaximumCapacityUnits")) 7063 } 7064 if s.MinimumCapacityUnits == nil { 7065 invalidParams.Add(request.NewErrParamRequired("MinimumCapacityUnits")) 7066 } 7067 if s.UnitType == nil { 7068 invalidParams.Add(request.NewErrParamRequired("UnitType")) 7069 } 7070 7071 if invalidParams.Len() > 0 { 7072 return invalidParams 7073 } 7074 return nil 7075} 7076 7077// SetMaximumCapacityUnits sets the MaximumCapacityUnits field's value. 7078func (s *ComputeLimits) SetMaximumCapacityUnits(v int64) *ComputeLimits { 7079 s.MaximumCapacityUnits = &v 7080 return s 7081} 7082 7083// SetMaximumCoreCapacityUnits sets the MaximumCoreCapacityUnits field's value. 7084func (s *ComputeLimits) SetMaximumCoreCapacityUnits(v int64) *ComputeLimits { 7085 s.MaximumCoreCapacityUnits = &v 7086 return s 7087} 7088 7089// SetMaximumOnDemandCapacityUnits sets the MaximumOnDemandCapacityUnits field's value. 7090func (s *ComputeLimits) SetMaximumOnDemandCapacityUnits(v int64) *ComputeLimits { 7091 s.MaximumOnDemandCapacityUnits = &v 7092 return s 7093} 7094 7095// SetMinimumCapacityUnits sets the MinimumCapacityUnits field's value. 7096func (s *ComputeLimits) SetMinimumCapacityUnits(v int64) *ComputeLimits { 7097 s.MinimumCapacityUnits = &v 7098 return s 7099} 7100 7101// SetUnitType sets the UnitType field's value. 7102func (s *ComputeLimits) SetUnitType(v string) *ComputeLimits { 7103 s.UnitType = &v 7104 return s 7105} 7106 7107// 7108// Amazon EMR releases 4.x or later. 7109// 7110// An optional configuration specification to be used when provisioning cluster 7111// instances, which can include configurations for applications and software 7112// bundled with Amazon EMR. A configuration consists of a classification, properties, 7113// and optional nested configurations. A classification refers to an application-specific 7114// configuration file. Properties are the settings you want to change in that 7115// file. For more information, see Configuring Applications (https://docs.aws.amazon.com/emr/latest/ReleaseGuide/emr-configure-apps.html). 7116type Configuration struct { 7117 _ struct{} `type:"structure"` 7118 7119 // The classification within a configuration. 7120 Classification *string `type:"string"` 7121 7122 // A list of additional configurations to apply within a configuration object. 7123 Configurations []*Configuration `type:"list"` 7124 7125 // A set of properties specified within a configuration classification. 7126 Properties map[string]*string `type:"map"` 7127} 7128 7129// String returns the string representation. 7130// 7131// API parameter values that are decorated as "sensitive" in the API will not 7132// be included in the string output. The member name will be present, but the 7133// value will be replaced with "sensitive". 7134func (s Configuration) String() string { 7135 return awsutil.Prettify(s) 7136} 7137 7138// GoString returns the string representation. 7139// 7140// API parameter values that are decorated as "sensitive" in the API will not 7141// be included in the string output. The member name will be present, but the 7142// value will be replaced with "sensitive". 7143func (s Configuration) GoString() string { 7144 return s.String() 7145} 7146 7147// SetClassification sets the Classification field's value. 7148func (s *Configuration) SetClassification(v string) *Configuration { 7149 s.Classification = &v 7150 return s 7151} 7152 7153// SetConfigurations sets the Configurations field's value. 7154func (s *Configuration) SetConfigurations(v []*Configuration) *Configuration { 7155 s.Configurations = v 7156 return s 7157} 7158 7159// SetProperties sets the Properties field's value. 7160func (s *Configuration) SetProperties(v map[string]*string) *Configuration { 7161 s.Properties = v 7162 return s 7163} 7164 7165type CreateSecurityConfigurationInput struct { 7166 _ struct{} `type:"structure"` 7167 7168 // The name of the security configuration. 7169 // 7170 // Name is a required field 7171 Name *string `type:"string" required:"true"` 7172 7173 // The security configuration details in JSON format. For JSON parameters and 7174 // examples, see Use Security Configurations to Set Up Cluster Security (https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-security-configurations.html) 7175 // in the Amazon EMR Management Guide. 7176 // 7177 // SecurityConfiguration is a required field 7178 SecurityConfiguration *string `type:"string" required:"true"` 7179} 7180 7181// String returns the string representation. 7182// 7183// API parameter values that are decorated as "sensitive" in the API will not 7184// be included in the string output. The member name will be present, but the 7185// value will be replaced with "sensitive". 7186func (s CreateSecurityConfigurationInput) String() string { 7187 return awsutil.Prettify(s) 7188} 7189 7190// GoString returns the string representation. 7191// 7192// API parameter values that are decorated as "sensitive" in the API will not 7193// be included in the string output. The member name will be present, but the 7194// value will be replaced with "sensitive". 7195func (s CreateSecurityConfigurationInput) GoString() string { 7196 return s.String() 7197} 7198 7199// Validate inspects the fields of the type to determine if they are valid. 7200func (s *CreateSecurityConfigurationInput) Validate() error { 7201 invalidParams := request.ErrInvalidParams{Context: "CreateSecurityConfigurationInput"} 7202 if s.Name == nil { 7203 invalidParams.Add(request.NewErrParamRequired("Name")) 7204 } 7205 if s.SecurityConfiguration == nil { 7206 invalidParams.Add(request.NewErrParamRequired("SecurityConfiguration")) 7207 } 7208 7209 if invalidParams.Len() > 0 { 7210 return invalidParams 7211 } 7212 return nil 7213} 7214 7215// SetName sets the Name field's value. 7216func (s *CreateSecurityConfigurationInput) SetName(v string) *CreateSecurityConfigurationInput { 7217 s.Name = &v 7218 return s 7219} 7220 7221// SetSecurityConfiguration sets the SecurityConfiguration field's value. 7222func (s *CreateSecurityConfigurationInput) SetSecurityConfiguration(v string) *CreateSecurityConfigurationInput { 7223 s.SecurityConfiguration = &v 7224 return s 7225} 7226 7227type CreateSecurityConfigurationOutput struct { 7228 _ struct{} `type:"structure"` 7229 7230 // The date and time the security configuration was created. 7231 // 7232 // CreationDateTime is a required field 7233 CreationDateTime *time.Time `type:"timestamp" required:"true"` 7234 7235 // The name of the security configuration. 7236 // 7237 // Name is a required field 7238 Name *string `type:"string" required:"true"` 7239} 7240 7241// String returns the string representation. 7242// 7243// API parameter values that are decorated as "sensitive" in the API will not 7244// be included in the string output. The member name will be present, but the 7245// value will be replaced with "sensitive". 7246func (s CreateSecurityConfigurationOutput) String() string { 7247 return awsutil.Prettify(s) 7248} 7249 7250// GoString returns the string representation. 7251// 7252// API parameter values that are decorated as "sensitive" in the API will not 7253// be included in the string output. The member name will be present, but the 7254// value will be replaced with "sensitive". 7255func (s CreateSecurityConfigurationOutput) GoString() string { 7256 return s.String() 7257} 7258 7259// SetCreationDateTime sets the CreationDateTime field's value. 7260func (s *CreateSecurityConfigurationOutput) SetCreationDateTime(v time.Time) *CreateSecurityConfigurationOutput { 7261 s.CreationDateTime = &v 7262 return s 7263} 7264 7265// SetName sets the Name field's value. 7266func (s *CreateSecurityConfigurationOutput) SetName(v string) *CreateSecurityConfigurationOutput { 7267 s.Name = &v 7268 return s 7269} 7270 7271type CreateStudioInput struct { 7272 _ struct{} `type:"structure"` 7273 7274 // Specifies whether the Studio authenticates users using IAM or Amazon Web 7275 // Services SSO. 7276 // 7277 // AuthMode is a required field 7278 AuthMode *string `type:"string" required:"true" enum:"AuthMode"` 7279 7280 // The Amazon S3 location to back up Amazon EMR Studio Workspaces and notebook 7281 // files. 7282 // 7283 // DefaultS3Location is a required field 7284 DefaultS3Location *string `type:"string" required:"true"` 7285 7286 // A detailed description of the Amazon EMR Studio. 7287 Description *string `type:"string"` 7288 7289 // The ID of the Amazon EMR Studio Engine security group. The Engine security 7290 // group allows inbound network traffic from the Workspace security group, and 7291 // it must be in the same VPC specified by VpcId. 7292 // 7293 // EngineSecurityGroupId is a required field 7294 EngineSecurityGroupId *string `type:"string" required:"true"` 7295 7296 // The authentication endpoint of your identity provider (IdP). Specify this 7297 // value when you use IAM authentication and want to let federated users log 7298 // in to a Studio with the Studio URL and credentials from your IdP. Amazon 7299 // EMR Studio redirects users to this endpoint to enter credentials. 7300 IdpAuthUrl *string `type:"string"` 7301 7302 // The name that your identity provider (IdP) uses for its RelayState parameter. 7303 // For example, RelayState or TargetSource. Specify this value when you use 7304 // IAM authentication and want to let federated users log in to a Studio using 7305 // the Studio URL. The RelayState parameter differs by IdP. 7306 IdpRelayStateParameterName *string `type:"string"` 7307 7308 // A descriptive name for the Amazon EMR Studio. 7309 // 7310 // Name is a required field 7311 Name *string `type:"string" required:"true"` 7312 7313 // The IAM role that the Amazon EMR Studio assumes. The service role provides 7314 // a way for Amazon EMR Studio to interoperate with other Amazon Web Services 7315 // services. 7316 // 7317 // ServiceRole is a required field 7318 ServiceRole *string `type:"string" required:"true"` 7319 7320 // A list of subnet IDs to associate with the Amazon EMR Studio. A Studio can 7321 // have a maximum of 5 subnets. The subnets must belong to the VPC specified 7322 // by VpcId. Studio users can create a Workspace in any of the specified subnets. 7323 // 7324 // SubnetIds is a required field 7325 SubnetIds []*string `type:"list" required:"true"` 7326 7327 // A list of tags to associate with the Amazon EMR Studio. Tags are user-defined 7328 // key-value pairs that consist of a required key string with a maximum of 128 7329 // characters, and an optional value string with a maximum of 256 characters. 7330 Tags []*Tag `type:"list"` 7331 7332 // The IAM user role that users and groups assume when logged in to an Amazon 7333 // EMR Studio. Only specify a UserRole when you use Amazon Web Services SSO 7334 // authentication. The permissions attached to the UserRole can be scoped down 7335 // for each user or group using session policies. 7336 UserRole *string `type:"string"` 7337 7338 // The ID of the Amazon Virtual Private Cloud (Amazon VPC) to associate with 7339 // the Studio. 7340 // 7341 // VpcId is a required field 7342 VpcId *string `type:"string" required:"true"` 7343 7344 // The ID of the Amazon EMR Studio Workspace security group. The Workspace security 7345 // group allows outbound network traffic to resources in the Engine security 7346 // group, and it must be in the same VPC specified by VpcId. 7347 // 7348 // WorkspaceSecurityGroupId is a required field 7349 WorkspaceSecurityGroupId *string `type:"string" required:"true"` 7350} 7351 7352// String returns the string representation. 7353// 7354// API parameter values that are decorated as "sensitive" in the API will not 7355// be included in the string output. The member name will be present, but the 7356// value will be replaced with "sensitive". 7357func (s CreateStudioInput) String() string { 7358 return awsutil.Prettify(s) 7359} 7360 7361// GoString returns the string representation. 7362// 7363// API parameter values that are decorated as "sensitive" in the API will not 7364// be included in the string output. The member name will be present, but the 7365// value will be replaced with "sensitive". 7366func (s CreateStudioInput) GoString() string { 7367 return s.String() 7368} 7369 7370// Validate inspects the fields of the type to determine if they are valid. 7371func (s *CreateStudioInput) Validate() error { 7372 invalidParams := request.ErrInvalidParams{Context: "CreateStudioInput"} 7373 if s.AuthMode == nil { 7374 invalidParams.Add(request.NewErrParamRequired("AuthMode")) 7375 } 7376 if s.DefaultS3Location == nil { 7377 invalidParams.Add(request.NewErrParamRequired("DefaultS3Location")) 7378 } 7379 if s.EngineSecurityGroupId == nil { 7380 invalidParams.Add(request.NewErrParamRequired("EngineSecurityGroupId")) 7381 } 7382 if s.Name == nil { 7383 invalidParams.Add(request.NewErrParamRequired("Name")) 7384 } 7385 if s.ServiceRole == nil { 7386 invalidParams.Add(request.NewErrParamRequired("ServiceRole")) 7387 } 7388 if s.SubnetIds == nil { 7389 invalidParams.Add(request.NewErrParamRequired("SubnetIds")) 7390 } 7391 if s.VpcId == nil { 7392 invalidParams.Add(request.NewErrParamRequired("VpcId")) 7393 } 7394 if s.WorkspaceSecurityGroupId == nil { 7395 invalidParams.Add(request.NewErrParamRequired("WorkspaceSecurityGroupId")) 7396 } 7397 7398 if invalidParams.Len() > 0 { 7399 return invalidParams 7400 } 7401 return nil 7402} 7403 7404// SetAuthMode sets the AuthMode field's value. 7405func (s *CreateStudioInput) SetAuthMode(v string) *CreateStudioInput { 7406 s.AuthMode = &v 7407 return s 7408} 7409 7410// SetDefaultS3Location sets the DefaultS3Location field's value. 7411func (s *CreateStudioInput) SetDefaultS3Location(v string) *CreateStudioInput { 7412 s.DefaultS3Location = &v 7413 return s 7414} 7415 7416// SetDescription sets the Description field's value. 7417func (s *CreateStudioInput) SetDescription(v string) *CreateStudioInput { 7418 s.Description = &v 7419 return s 7420} 7421 7422// SetEngineSecurityGroupId sets the EngineSecurityGroupId field's value. 7423func (s *CreateStudioInput) SetEngineSecurityGroupId(v string) *CreateStudioInput { 7424 s.EngineSecurityGroupId = &v 7425 return s 7426} 7427 7428// SetIdpAuthUrl sets the IdpAuthUrl field's value. 7429func (s *CreateStudioInput) SetIdpAuthUrl(v string) *CreateStudioInput { 7430 s.IdpAuthUrl = &v 7431 return s 7432} 7433 7434// SetIdpRelayStateParameterName sets the IdpRelayStateParameterName field's value. 7435func (s *CreateStudioInput) SetIdpRelayStateParameterName(v string) *CreateStudioInput { 7436 s.IdpRelayStateParameterName = &v 7437 return s 7438} 7439 7440// SetName sets the Name field's value. 7441func (s *CreateStudioInput) SetName(v string) *CreateStudioInput { 7442 s.Name = &v 7443 return s 7444} 7445 7446// SetServiceRole sets the ServiceRole field's value. 7447func (s *CreateStudioInput) SetServiceRole(v string) *CreateStudioInput { 7448 s.ServiceRole = &v 7449 return s 7450} 7451 7452// SetSubnetIds sets the SubnetIds field's value. 7453func (s *CreateStudioInput) SetSubnetIds(v []*string) *CreateStudioInput { 7454 s.SubnetIds = v 7455 return s 7456} 7457 7458// SetTags sets the Tags field's value. 7459func (s *CreateStudioInput) SetTags(v []*Tag) *CreateStudioInput { 7460 s.Tags = v 7461 return s 7462} 7463 7464// SetUserRole sets the UserRole field's value. 7465func (s *CreateStudioInput) SetUserRole(v string) *CreateStudioInput { 7466 s.UserRole = &v 7467 return s 7468} 7469 7470// SetVpcId sets the VpcId field's value. 7471func (s *CreateStudioInput) SetVpcId(v string) *CreateStudioInput { 7472 s.VpcId = &v 7473 return s 7474} 7475 7476// SetWorkspaceSecurityGroupId sets the WorkspaceSecurityGroupId field's value. 7477func (s *CreateStudioInput) SetWorkspaceSecurityGroupId(v string) *CreateStudioInput { 7478 s.WorkspaceSecurityGroupId = &v 7479 return s 7480} 7481 7482type CreateStudioOutput struct { 7483 _ struct{} `type:"structure"` 7484 7485 // The ID of the Amazon EMR Studio. 7486 StudioId *string `type:"string"` 7487 7488 // The unique Studio access URL. 7489 Url *string `type:"string"` 7490} 7491 7492// String returns the string representation. 7493// 7494// API parameter values that are decorated as "sensitive" in the API will not 7495// be included in the string output. The member name will be present, but the 7496// value will be replaced with "sensitive". 7497func (s CreateStudioOutput) String() string { 7498 return awsutil.Prettify(s) 7499} 7500 7501// GoString returns the string representation. 7502// 7503// API parameter values that are decorated as "sensitive" in the API will not 7504// be included in the string output. The member name will be present, but the 7505// value will be replaced with "sensitive". 7506func (s CreateStudioOutput) GoString() string { 7507 return s.String() 7508} 7509 7510// SetStudioId sets the StudioId field's value. 7511func (s *CreateStudioOutput) SetStudioId(v string) *CreateStudioOutput { 7512 s.StudioId = &v 7513 return s 7514} 7515 7516// SetUrl sets the Url field's value. 7517func (s *CreateStudioOutput) SetUrl(v string) *CreateStudioOutput { 7518 s.Url = &v 7519 return s 7520} 7521 7522type CreateStudioSessionMappingInput struct { 7523 _ struct{} `type:"structure"` 7524 7525 // The globally unique identifier (GUID) of the user or group from the Amazon 7526 // Web Services SSO Identity Store. For more information, see UserId (https://docs.aws.amazon.com/singlesignon/latest/IdentityStoreAPIReference/API_User.html#singlesignon-Type-User-UserId) 7527 // and GroupId (https://docs.aws.amazon.com/singlesignon/latest/IdentityStoreAPIReference/API_Group.html#singlesignon-Type-Group-GroupId) 7528 // in the Amazon Web Services SSO Identity Store API Reference. Either IdentityName 7529 // or IdentityId must be specified, but not both. 7530 IdentityId *string `type:"string"` 7531 7532 // The name of the user or group. For more information, see UserName (https://docs.aws.amazon.com/singlesignon/latest/IdentityStoreAPIReference/API_User.html#singlesignon-Type-User-UserName) 7533 // and DisplayName (https://docs.aws.amazon.com/singlesignon/latest/IdentityStoreAPIReference/API_Group.html#singlesignon-Type-Group-DisplayName) 7534 // in the Amazon Web Services SSO Identity Store API Reference. Either IdentityName 7535 // or IdentityId must be specified, but not both. 7536 IdentityName *string `type:"string"` 7537 7538 // Specifies whether the identity to map to the Amazon EMR Studio is a user 7539 // or a group. 7540 // 7541 // IdentityType is a required field 7542 IdentityType *string `type:"string" required:"true" enum:"IdentityType"` 7543 7544 // The Amazon Resource Name (ARN) for the session policy that will be applied 7545 // to the user or group. You should specify the ARN for the session policy that 7546 // you want to apply, not the ARN of your user role. For more information, see 7547 // Create an EMR Studio User Role with Session Policies (https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-studio-user-role.html). 7548 // 7549 // SessionPolicyArn is a required field 7550 SessionPolicyArn *string `type:"string" required:"true"` 7551 7552 // The ID of the Amazon EMR Studio to which the user or group will be mapped. 7553 // 7554 // StudioId is a required field 7555 StudioId *string `type:"string" required:"true"` 7556} 7557 7558// String returns the string representation. 7559// 7560// API parameter values that are decorated as "sensitive" in the API will not 7561// be included in the string output. The member name will be present, but the 7562// value will be replaced with "sensitive". 7563func (s CreateStudioSessionMappingInput) String() string { 7564 return awsutil.Prettify(s) 7565} 7566 7567// GoString returns the string representation. 7568// 7569// API parameter values that are decorated as "sensitive" in the API will not 7570// be included in the string output. The member name will be present, but the 7571// value will be replaced with "sensitive". 7572func (s CreateStudioSessionMappingInput) GoString() string { 7573 return s.String() 7574} 7575 7576// Validate inspects the fields of the type to determine if they are valid. 7577func (s *CreateStudioSessionMappingInput) Validate() error { 7578 invalidParams := request.ErrInvalidParams{Context: "CreateStudioSessionMappingInput"} 7579 if s.IdentityType == nil { 7580 invalidParams.Add(request.NewErrParamRequired("IdentityType")) 7581 } 7582 if s.SessionPolicyArn == nil { 7583 invalidParams.Add(request.NewErrParamRequired("SessionPolicyArn")) 7584 } 7585 if s.StudioId == nil { 7586 invalidParams.Add(request.NewErrParamRequired("StudioId")) 7587 } 7588 7589 if invalidParams.Len() > 0 { 7590 return invalidParams 7591 } 7592 return nil 7593} 7594 7595// SetIdentityId sets the IdentityId field's value. 7596func (s *CreateStudioSessionMappingInput) SetIdentityId(v string) *CreateStudioSessionMappingInput { 7597 s.IdentityId = &v 7598 return s 7599} 7600 7601// SetIdentityName sets the IdentityName field's value. 7602func (s *CreateStudioSessionMappingInput) SetIdentityName(v string) *CreateStudioSessionMappingInput { 7603 s.IdentityName = &v 7604 return s 7605} 7606 7607// SetIdentityType sets the IdentityType field's value. 7608func (s *CreateStudioSessionMappingInput) SetIdentityType(v string) *CreateStudioSessionMappingInput { 7609 s.IdentityType = &v 7610 return s 7611} 7612 7613// SetSessionPolicyArn sets the SessionPolicyArn field's value. 7614func (s *CreateStudioSessionMappingInput) SetSessionPolicyArn(v string) *CreateStudioSessionMappingInput { 7615 s.SessionPolicyArn = &v 7616 return s 7617} 7618 7619// SetStudioId sets the StudioId field's value. 7620func (s *CreateStudioSessionMappingInput) SetStudioId(v string) *CreateStudioSessionMappingInput { 7621 s.StudioId = &v 7622 return s 7623} 7624 7625type CreateStudioSessionMappingOutput struct { 7626 _ struct{} `type:"structure"` 7627} 7628 7629// String returns the string representation. 7630// 7631// API parameter values that are decorated as "sensitive" in the API will not 7632// be included in the string output. The member name will be present, but the 7633// value will be replaced with "sensitive". 7634func (s CreateStudioSessionMappingOutput) String() string { 7635 return awsutil.Prettify(s) 7636} 7637 7638// GoString returns the string representation. 7639// 7640// API parameter values that are decorated as "sensitive" in the API will not 7641// be included in the string output. The member name will be present, but the 7642// value will be replaced with "sensitive". 7643func (s CreateStudioSessionMappingOutput) GoString() string { 7644 return s.String() 7645} 7646 7647type DeleteSecurityConfigurationInput struct { 7648 _ struct{} `type:"structure"` 7649 7650 // The name of the security configuration. 7651 // 7652 // Name is a required field 7653 Name *string `type:"string" required:"true"` 7654} 7655 7656// String returns the string representation. 7657// 7658// API parameter values that are decorated as "sensitive" in the API will not 7659// be included in the string output. The member name will be present, but the 7660// value will be replaced with "sensitive". 7661func (s DeleteSecurityConfigurationInput) String() string { 7662 return awsutil.Prettify(s) 7663} 7664 7665// GoString returns the string representation. 7666// 7667// API parameter values that are decorated as "sensitive" in the API will not 7668// be included in the string output. The member name will be present, but the 7669// value will be replaced with "sensitive". 7670func (s DeleteSecurityConfigurationInput) GoString() string { 7671 return s.String() 7672} 7673 7674// Validate inspects the fields of the type to determine if they are valid. 7675func (s *DeleteSecurityConfigurationInput) Validate() error { 7676 invalidParams := request.ErrInvalidParams{Context: "DeleteSecurityConfigurationInput"} 7677 if s.Name == nil { 7678 invalidParams.Add(request.NewErrParamRequired("Name")) 7679 } 7680 7681 if invalidParams.Len() > 0 { 7682 return invalidParams 7683 } 7684 return nil 7685} 7686 7687// SetName sets the Name field's value. 7688func (s *DeleteSecurityConfigurationInput) SetName(v string) *DeleteSecurityConfigurationInput { 7689 s.Name = &v 7690 return s 7691} 7692 7693type DeleteSecurityConfigurationOutput struct { 7694 _ struct{} `type:"structure"` 7695} 7696 7697// String returns the string representation. 7698// 7699// API parameter values that are decorated as "sensitive" in the API will not 7700// be included in the string output. The member name will be present, but the 7701// value will be replaced with "sensitive". 7702func (s DeleteSecurityConfigurationOutput) String() string { 7703 return awsutil.Prettify(s) 7704} 7705 7706// GoString returns the string representation. 7707// 7708// API parameter values that are decorated as "sensitive" in the API will not 7709// be included in the string output. The member name will be present, but the 7710// value will be replaced with "sensitive". 7711func (s DeleteSecurityConfigurationOutput) GoString() string { 7712 return s.String() 7713} 7714 7715type DeleteStudioInput struct { 7716 _ struct{} `type:"structure"` 7717 7718 // The ID of the Amazon EMR Studio. 7719 // 7720 // StudioId is a required field 7721 StudioId *string `type:"string" required:"true"` 7722} 7723 7724// String returns the string representation. 7725// 7726// API parameter values that are decorated as "sensitive" in the API will not 7727// be included in the string output. The member name will be present, but the 7728// value will be replaced with "sensitive". 7729func (s DeleteStudioInput) String() string { 7730 return awsutil.Prettify(s) 7731} 7732 7733// GoString returns the string representation. 7734// 7735// API parameter values that are decorated as "sensitive" in the API will not 7736// be included in the string output. The member name will be present, but the 7737// value will be replaced with "sensitive". 7738func (s DeleteStudioInput) GoString() string { 7739 return s.String() 7740} 7741 7742// Validate inspects the fields of the type to determine if they are valid. 7743func (s *DeleteStudioInput) Validate() error { 7744 invalidParams := request.ErrInvalidParams{Context: "DeleteStudioInput"} 7745 if s.StudioId == nil { 7746 invalidParams.Add(request.NewErrParamRequired("StudioId")) 7747 } 7748 7749 if invalidParams.Len() > 0 { 7750 return invalidParams 7751 } 7752 return nil 7753} 7754 7755// SetStudioId sets the StudioId field's value. 7756func (s *DeleteStudioInput) SetStudioId(v string) *DeleteStudioInput { 7757 s.StudioId = &v 7758 return s 7759} 7760 7761type DeleteStudioOutput struct { 7762 _ struct{} `type:"structure"` 7763} 7764 7765// String returns the string representation. 7766// 7767// API parameter values that are decorated as "sensitive" in the API will not 7768// be included in the string output. The member name will be present, but the 7769// value will be replaced with "sensitive". 7770func (s DeleteStudioOutput) String() string { 7771 return awsutil.Prettify(s) 7772} 7773 7774// GoString returns the string representation. 7775// 7776// API parameter values that are decorated as "sensitive" in the API will not 7777// be included in the string output. The member name will be present, but the 7778// value will be replaced with "sensitive". 7779func (s DeleteStudioOutput) GoString() string { 7780 return s.String() 7781} 7782 7783type DeleteStudioSessionMappingInput struct { 7784 _ struct{} `type:"structure"` 7785 7786 // The globally unique identifier (GUID) of the user or group to remove from 7787 // the Amazon EMR Studio. For more information, see UserId (https://docs.aws.amazon.com/singlesignon/latest/IdentityStoreAPIReference/API_User.html#singlesignon-Type-User-UserId) 7788 // and GroupId (https://docs.aws.amazon.com/singlesignon/latest/IdentityStoreAPIReference/API_Group.html#singlesignon-Type-Group-GroupId) 7789 // in the Amazon Web Services SSO Identity Store API Reference. Either IdentityName 7790 // or IdentityId must be specified. 7791 IdentityId *string `type:"string"` 7792 7793 // The name of the user name or group to remove from the Amazon EMR Studio. 7794 // For more information, see UserName (https://docs.aws.amazon.com/singlesignon/latest/IdentityStoreAPIReference/API_User.html#singlesignon-Type-User-UserName) 7795 // and DisplayName (https://docs.aws.amazon.com/singlesignon/latest/IdentityStoreAPIReference/API_Group.html#singlesignon-Type-Group-DisplayName) 7796 // in the Amazon Web Services SSO Store API Reference. Either IdentityName or 7797 // IdentityId must be specified. 7798 IdentityName *string `type:"string"` 7799 7800 // Specifies whether the identity to delete from the Amazon EMR Studio is a 7801 // user or a group. 7802 // 7803 // IdentityType is a required field 7804 IdentityType *string `type:"string" required:"true" enum:"IdentityType"` 7805 7806 // The ID of the Amazon EMR Studio. 7807 // 7808 // StudioId is a required field 7809 StudioId *string `type:"string" required:"true"` 7810} 7811 7812// String returns the string representation. 7813// 7814// API parameter values that are decorated as "sensitive" in the API will not 7815// be included in the string output. The member name will be present, but the 7816// value will be replaced with "sensitive". 7817func (s DeleteStudioSessionMappingInput) String() string { 7818 return awsutil.Prettify(s) 7819} 7820 7821// GoString returns the string representation. 7822// 7823// API parameter values that are decorated as "sensitive" in the API will not 7824// be included in the string output. The member name will be present, but the 7825// value will be replaced with "sensitive". 7826func (s DeleteStudioSessionMappingInput) GoString() string { 7827 return s.String() 7828} 7829 7830// Validate inspects the fields of the type to determine if they are valid. 7831func (s *DeleteStudioSessionMappingInput) Validate() error { 7832 invalidParams := request.ErrInvalidParams{Context: "DeleteStudioSessionMappingInput"} 7833 if s.IdentityType == nil { 7834 invalidParams.Add(request.NewErrParamRequired("IdentityType")) 7835 } 7836 if s.StudioId == nil { 7837 invalidParams.Add(request.NewErrParamRequired("StudioId")) 7838 } 7839 7840 if invalidParams.Len() > 0 { 7841 return invalidParams 7842 } 7843 return nil 7844} 7845 7846// SetIdentityId sets the IdentityId field's value. 7847func (s *DeleteStudioSessionMappingInput) SetIdentityId(v string) *DeleteStudioSessionMappingInput { 7848 s.IdentityId = &v 7849 return s 7850} 7851 7852// SetIdentityName sets the IdentityName field's value. 7853func (s *DeleteStudioSessionMappingInput) SetIdentityName(v string) *DeleteStudioSessionMappingInput { 7854 s.IdentityName = &v 7855 return s 7856} 7857 7858// SetIdentityType sets the IdentityType field's value. 7859func (s *DeleteStudioSessionMappingInput) SetIdentityType(v string) *DeleteStudioSessionMappingInput { 7860 s.IdentityType = &v 7861 return s 7862} 7863 7864// SetStudioId sets the StudioId field's value. 7865func (s *DeleteStudioSessionMappingInput) SetStudioId(v string) *DeleteStudioSessionMappingInput { 7866 s.StudioId = &v 7867 return s 7868} 7869 7870type DeleteStudioSessionMappingOutput struct { 7871 _ struct{} `type:"structure"` 7872} 7873 7874// String returns the string representation. 7875// 7876// API parameter values that are decorated as "sensitive" in the API will not 7877// be included in the string output. The member name will be present, but the 7878// value will be replaced with "sensitive". 7879func (s DeleteStudioSessionMappingOutput) String() string { 7880 return awsutil.Prettify(s) 7881} 7882 7883// GoString returns the string representation. 7884// 7885// API parameter values that are decorated as "sensitive" in the API will not 7886// be included in the string output. The member name will be present, but the 7887// value will be replaced with "sensitive". 7888func (s DeleteStudioSessionMappingOutput) GoString() string { 7889 return s.String() 7890} 7891 7892// This input determines which cluster to describe. 7893type DescribeClusterInput struct { 7894 _ struct{} `type:"structure"` 7895 7896 // The identifier of the cluster to describe. 7897 // 7898 // ClusterId is a required field 7899 ClusterId *string `type:"string" required:"true"` 7900} 7901 7902// String returns the string representation. 7903// 7904// API parameter values that are decorated as "sensitive" in the API will not 7905// be included in the string output. The member name will be present, but the 7906// value will be replaced with "sensitive". 7907func (s DescribeClusterInput) String() string { 7908 return awsutil.Prettify(s) 7909} 7910 7911// GoString returns the string representation. 7912// 7913// API parameter values that are decorated as "sensitive" in the API will not 7914// be included in the string output. The member name will be present, but the 7915// value will be replaced with "sensitive". 7916func (s DescribeClusterInput) GoString() string { 7917 return s.String() 7918} 7919 7920// Validate inspects the fields of the type to determine if they are valid. 7921func (s *DescribeClusterInput) Validate() error { 7922 invalidParams := request.ErrInvalidParams{Context: "DescribeClusterInput"} 7923 if s.ClusterId == nil { 7924 invalidParams.Add(request.NewErrParamRequired("ClusterId")) 7925 } 7926 7927 if invalidParams.Len() > 0 { 7928 return invalidParams 7929 } 7930 return nil 7931} 7932 7933// SetClusterId sets the ClusterId field's value. 7934func (s *DescribeClusterInput) SetClusterId(v string) *DescribeClusterInput { 7935 s.ClusterId = &v 7936 return s 7937} 7938 7939// This output contains the description of the cluster. 7940type DescribeClusterOutput struct { 7941 _ struct{} `type:"structure"` 7942 7943 // This output contains the details for the requested cluster. 7944 Cluster *Cluster `type:"structure"` 7945} 7946 7947// String returns the string representation. 7948// 7949// API parameter values that are decorated as "sensitive" in the API will not 7950// be included in the string output. The member name will be present, but the 7951// value will be replaced with "sensitive". 7952func (s DescribeClusterOutput) String() string { 7953 return awsutil.Prettify(s) 7954} 7955 7956// GoString returns the string representation. 7957// 7958// API parameter values that are decorated as "sensitive" in the API will not 7959// be included in the string output. The member name will be present, but the 7960// value will be replaced with "sensitive". 7961func (s DescribeClusterOutput) GoString() string { 7962 return s.String() 7963} 7964 7965// SetCluster sets the Cluster field's value. 7966func (s *DescribeClusterOutput) SetCluster(v *Cluster) *DescribeClusterOutput { 7967 s.Cluster = v 7968 return s 7969} 7970 7971// The input for the DescribeJobFlows operation. 7972type DescribeJobFlowsInput struct { 7973 _ struct{} `type:"structure"` 7974 7975 // Return only job flows created after this date and time. 7976 CreatedAfter *time.Time `type:"timestamp"` 7977 7978 // Return only job flows created before this date and time. 7979 CreatedBefore *time.Time `type:"timestamp"` 7980 7981 // Return only job flows whose job flow ID is contained in this list. 7982 JobFlowIds []*string `type:"list"` 7983 7984 // Return only job flows whose state is contained in this list. 7985 JobFlowStates []*string `type:"list"` 7986} 7987 7988// String returns the string representation. 7989// 7990// API parameter values that are decorated as "sensitive" in the API will not 7991// be included in the string output. The member name will be present, but the 7992// value will be replaced with "sensitive". 7993func (s DescribeJobFlowsInput) String() string { 7994 return awsutil.Prettify(s) 7995} 7996 7997// GoString returns the string representation. 7998// 7999// API parameter values that are decorated as "sensitive" in the API will not 8000// be included in the string output. The member name will be present, but the 8001// value will be replaced with "sensitive". 8002func (s DescribeJobFlowsInput) GoString() string { 8003 return s.String() 8004} 8005 8006// SetCreatedAfter sets the CreatedAfter field's value. 8007func (s *DescribeJobFlowsInput) SetCreatedAfter(v time.Time) *DescribeJobFlowsInput { 8008 s.CreatedAfter = &v 8009 return s 8010} 8011 8012// SetCreatedBefore sets the CreatedBefore field's value. 8013func (s *DescribeJobFlowsInput) SetCreatedBefore(v time.Time) *DescribeJobFlowsInput { 8014 s.CreatedBefore = &v 8015 return s 8016} 8017 8018// SetJobFlowIds sets the JobFlowIds field's value. 8019func (s *DescribeJobFlowsInput) SetJobFlowIds(v []*string) *DescribeJobFlowsInput { 8020 s.JobFlowIds = v 8021 return s 8022} 8023 8024// SetJobFlowStates sets the JobFlowStates field's value. 8025func (s *DescribeJobFlowsInput) SetJobFlowStates(v []*string) *DescribeJobFlowsInput { 8026 s.JobFlowStates = v 8027 return s 8028} 8029 8030// The output for the DescribeJobFlows operation. 8031type DescribeJobFlowsOutput struct { 8032 _ struct{} `type:"structure"` 8033 8034 // A list of job flows matching the parameters supplied. 8035 JobFlows []*JobFlowDetail `type:"list"` 8036} 8037 8038// String returns the string representation. 8039// 8040// API parameter values that are decorated as "sensitive" in the API will not 8041// be included in the string output. The member name will be present, but the 8042// value will be replaced with "sensitive". 8043func (s DescribeJobFlowsOutput) String() string { 8044 return awsutil.Prettify(s) 8045} 8046 8047// GoString returns the string representation. 8048// 8049// API parameter values that are decorated as "sensitive" in the API will not 8050// be included in the string output. The member name will be present, but the 8051// value will be replaced with "sensitive". 8052func (s DescribeJobFlowsOutput) GoString() string { 8053 return s.String() 8054} 8055 8056// SetJobFlows sets the JobFlows field's value. 8057func (s *DescribeJobFlowsOutput) SetJobFlows(v []*JobFlowDetail) *DescribeJobFlowsOutput { 8058 s.JobFlows = v 8059 return s 8060} 8061 8062type DescribeNotebookExecutionInput struct { 8063 _ struct{} `type:"structure"` 8064 8065 // The unique identifier of the notebook execution. 8066 // 8067 // NotebookExecutionId is a required field 8068 NotebookExecutionId *string `type:"string" required:"true"` 8069} 8070 8071// String returns the string representation. 8072// 8073// API parameter values that are decorated as "sensitive" in the API will not 8074// be included in the string output. The member name will be present, but the 8075// value will be replaced with "sensitive". 8076func (s DescribeNotebookExecutionInput) String() string { 8077 return awsutil.Prettify(s) 8078} 8079 8080// GoString returns the string representation. 8081// 8082// API parameter values that are decorated as "sensitive" in the API will not 8083// be included in the string output. The member name will be present, but the 8084// value will be replaced with "sensitive". 8085func (s DescribeNotebookExecutionInput) GoString() string { 8086 return s.String() 8087} 8088 8089// Validate inspects the fields of the type to determine if they are valid. 8090func (s *DescribeNotebookExecutionInput) Validate() error { 8091 invalidParams := request.ErrInvalidParams{Context: "DescribeNotebookExecutionInput"} 8092 if s.NotebookExecutionId == nil { 8093 invalidParams.Add(request.NewErrParamRequired("NotebookExecutionId")) 8094 } 8095 8096 if invalidParams.Len() > 0 { 8097 return invalidParams 8098 } 8099 return nil 8100} 8101 8102// SetNotebookExecutionId sets the NotebookExecutionId field's value. 8103func (s *DescribeNotebookExecutionInput) SetNotebookExecutionId(v string) *DescribeNotebookExecutionInput { 8104 s.NotebookExecutionId = &v 8105 return s 8106} 8107 8108type DescribeNotebookExecutionOutput struct { 8109 _ struct{} `type:"structure"` 8110 8111 // Properties of the notebook execution. 8112 NotebookExecution *NotebookExecution `type:"structure"` 8113} 8114 8115// String returns the string representation. 8116// 8117// API parameter values that are decorated as "sensitive" in the API will not 8118// be included in the string output. The member name will be present, but the 8119// value will be replaced with "sensitive". 8120func (s DescribeNotebookExecutionOutput) String() string { 8121 return awsutil.Prettify(s) 8122} 8123 8124// GoString returns the string representation. 8125// 8126// API parameter values that are decorated as "sensitive" in the API will not 8127// be included in the string output. The member name will be present, but the 8128// value will be replaced with "sensitive". 8129func (s DescribeNotebookExecutionOutput) GoString() string { 8130 return s.String() 8131} 8132 8133// SetNotebookExecution sets the NotebookExecution field's value. 8134func (s *DescribeNotebookExecutionOutput) SetNotebookExecution(v *NotebookExecution) *DescribeNotebookExecutionOutput { 8135 s.NotebookExecution = v 8136 return s 8137} 8138 8139type DescribeReleaseLabelInput struct { 8140 _ struct{} `type:"structure"` 8141 8142 // Reserved for future use. Currently set to null. 8143 MaxResults *int64 `min:"1" type:"integer"` 8144 8145 // The pagination token. Reserved for future use. Currently set to null. 8146 NextToken *string `type:"string"` 8147 8148 // The target release label to be described. 8149 ReleaseLabel *string `type:"string"` 8150} 8151 8152// String returns the string representation. 8153// 8154// API parameter values that are decorated as "sensitive" in the API will not 8155// be included in the string output. The member name will be present, but the 8156// value will be replaced with "sensitive". 8157func (s DescribeReleaseLabelInput) String() string { 8158 return awsutil.Prettify(s) 8159} 8160 8161// GoString returns the string representation. 8162// 8163// API parameter values that are decorated as "sensitive" in the API will not 8164// be included in the string output. The member name will be present, but the 8165// value will be replaced with "sensitive". 8166func (s DescribeReleaseLabelInput) GoString() string { 8167 return s.String() 8168} 8169 8170// Validate inspects the fields of the type to determine if they are valid. 8171func (s *DescribeReleaseLabelInput) Validate() error { 8172 invalidParams := request.ErrInvalidParams{Context: "DescribeReleaseLabelInput"} 8173 if s.MaxResults != nil && *s.MaxResults < 1 { 8174 invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) 8175 } 8176 8177 if invalidParams.Len() > 0 { 8178 return invalidParams 8179 } 8180 return nil 8181} 8182 8183// SetMaxResults sets the MaxResults field's value. 8184func (s *DescribeReleaseLabelInput) SetMaxResults(v int64) *DescribeReleaseLabelInput { 8185 s.MaxResults = &v 8186 return s 8187} 8188 8189// SetNextToken sets the NextToken field's value. 8190func (s *DescribeReleaseLabelInput) SetNextToken(v string) *DescribeReleaseLabelInput { 8191 s.NextToken = &v 8192 return s 8193} 8194 8195// SetReleaseLabel sets the ReleaseLabel field's value. 8196func (s *DescribeReleaseLabelInput) SetReleaseLabel(v string) *DescribeReleaseLabelInput { 8197 s.ReleaseLabel = &v 8198 return s 8199} 8200 8201type DescribeReleaseLabelOutput struct { 8202 _ struct{} `type:"structure"` 8203 8204 // The list of applications available for the target release label. Name is 8205 // the name of the application. Version is the concise version of the application. 8206 Applications []*SimplifiedApplication `type:"list"` 8207 8208 // The pagination token. Reserved for future use. Currently set to null. 8209 NextToken *string `type:"string"` 8210 8211 // The target release label described in the response. 8212 ReleaseLabel *string `type:"string"` 8213} 8214 8215// String returns the string representation. 8216// 8217// API parameter values that are decorated as "sensitive" in the API will not 8218// be included in the string output. The member name will be present, but the 8219// value will be replaced with "sensitive". 8220func (s DescribeReleaseLabelOutput) String() string { 8221 return awsutil.Prettify(s) 8222} 8223 8224// GoString returns the string representation. 8225// 8226// API parameter values that are decorated as "sensitive" in the API will not 8227// be included in the string output. The member name will be present, but the 8228// value will be replaced with "sensitive". 8229func (s DescribeReleaseLabelOutput) GoString() string { 8230 return s.String() 8231} 8232 8233// SetApplications sets the Applications field's value. 8234func (s *DescribeReleaseLabelOutput) SetApplications(v []*SimplifiedApplication) *DescribeReleaseLabelOutput { 8235 s.Applications = v 8236 return s 8237} 8238 8239// SetNextToken sets the NextToken field's value. 8240func (s *DescribeReleaseLabelOutput) SetNextToken(v string) *DescribeReleaseLabelOutput { 8241 s.NextToken = &v 8242 return s 8243} 8244 8245// SetReleaseLabel sets the ReleaseLabel field's value. 8246func (s *DescribeReleaseLabelOutput) SetReleaseLabel(v string) *DescribeReleaseLabelOutput { 8247 s.ReleaseLabel = &v 8248 return s 8249} 8250 8251type DescribeSecurityConfigurationInput struct { 8252 _ struct{} `type:"structure"` 8253 8254 // The name of the security configuration. 8255 // 8256 // Name is a required field 8257 Name *string `type:"string" required:"true"` 8258} 8259 8260// String returns the string representation. 8261// 8262// API parameter values that are decorated as "sensitive" in the API will not 8263// be included in the string output. The member name will be present, but the 8264// value will be replaced with "sensitive". 8265func (s DescribeSecurityConfigurationInput) String() string { 8266 return awsutil.Prettify(s) 8267} 8268 8269// GoString returns the string representation. 8270// 8271// API parameter values that are decorated as "sensitive" in the API will not 8272// be included in the string output. The member name will be present, but the 8273// value will be replaced with "sensitive". 8274func (s DescribeSecurityConfigurationInput) GoString() string { 8275 return s.String() 8276} 8277 8278// Validate inspects the fields of the type to determine if they are valid. 8279func (s *DescribeSecurityConfigurationInput) Validate() error { 8280 invalidParams := request.ErrInvalidParams{Context: "DescribeSecurityConfigurationInput"} 8281 if s.Name == nil { 8282 invalidParams.Add(request.NewErrParamRequired("Name")) 8283 } 8284 8285 if invalidParams.Len() > 0 { 8286 return invalidParams 8287 } 8288 return nil 8289} 8290 8291// SetName sets the Name field's value. 8292func (s *DescribeSecurityConfigurationInput) SetName(v string) *DescribeSecurityConfigurationInput { 8293 s.Name = &v 8294 return s 8295} 8296 8297type DescribeSecurityConfigurationOutput struct { 8298 _ struct{} `type:"structure"` 8299 8300 // The date and time the security configuration was created 8301 CreationDateTime *time.Time `type:"timestamp"` 8302 8303 // The name of the security configuration. 8304 Name *string `type:"string"` 8305 8306 // The security configuration details in JSON format. 8307 SecurityConfiguration *string `type:"string"` 8308} 8309 8310// String returns the string representation. 8311// 8312// API parameter values that are decorated as "sensitive" in the API will not 8313// be included in the string output. The member name will be present, but the 8314// value will be replaced with "sensitive". 8315func (s DescribeSecurityConfigurationOutput) String() string { 8316 return awsutil.Prettify(s) 8317} 8318 8319// GoString returns the string representation. 8320// 8321// API parameter values that are decorated as "sensitive" in the API will not 8322// be included in the string output. The member name will be present, but the 8323// value will be replaced with "sensitive". 8324func (s DescribeSecurityConfigurationOutput) GoString() string { 8325 return s.String() 8326} 8327 8328// SetCreationDateTime sets the CreationDateTime field's value. 8329func (s *DescribeSecurityConfigurationOutput) SetCreationDateTime(v time.Time) *DescribeSecurityConfigurationOutput { 8330 s.CreationDateTime = &v 8331 return s 8332} 8333 8334// SetName sets the Name field's value. 8335func (s *DescribeSecurityConfigurationOutput) SetName(v string) *DescribeSecurityConfigurationOutput { 8336 s.Name = &v 8337 return s 8338} 8339 8340// SetSecurityConfiguration sets the SecurityConfiguration field's value. 8341func (s *DescribeSecurityConfigurationOutput) SetSecurityConfiguration(v string) *DescribeSecurityConfigurationOutput { 8342 s.SecurityConfiguration = &v 8343 return s 8344} 8345 8346// This input determines which step to describe. 8347type DescribeStepInput struct { 8348 _ struct{} `type:"structure"` 8349 8350 // The identifier of the cluster with steps to describe. 8351 // 8352 // ClusterId is a required field 8353 ClusterId *string `type:"string" required:"true"` 8354 8355 // The identifier of the step to describe. 8356 // 8357 // StepId is a required field 8358 StepId *string `type:"string" required:"true"` 8359} 8360 8361// String returns the string representation. 8362// 8363// API parameter values that are decorated as "sensitive" in the API will not 8364// be included in the string output. The member name will be present, but the 8365// value will be replaced with "sensitive". 8366func (s DescribeStepInput) String() string { 8367 return awsutil.Prettify(s) 8368} 8369 8370// GoString returns the string representation. 8371// 8372// API parameter values that are decorated as "sensitive" in the API will not 8373// be included in the string output. The member name will be present, but the 8374// value will be replaced with "sensitive". 8375func (s DescribeStepInput) GoString() string { 8376 return s.String() 8377} 8378 8379// Validate inspects the fields of the type to determine if they are valid. 8380func (s *DescribeStepInput) Validate() error { 8381 invalidParams := request.ErrInvalidParams{Context: "DescribeStepInput"} 8382 if s.ClusterId == nil { 8383 invalidParams.Add(request.NewErrParamRequired("ClusterId")) 8384 } 8385 if s.StepId == nil { 8386 invalidParams.Add(request.NewErrParamRequired("StepId")) 8387 } 8388 8389 if invalidParams.Len() > 0 { 8390 return invalidParams 8391 } 8392 return nil 8393} 8394 8395// SetClusterId sets the ClusterId field's value. 8396func (s *DescribeStepInput) SetClusterId(v string) *DescribeStepInput { 8397 s.ClusterId = &v 8398 return s 8399} 8400 8401// SetStepId sets the StepId field's value. 8402func (s *DescribeStepInput) SetStepId(v string) *DescribeStepInput { 8403 s.StepId = &v 8404 return s 8405} 8406 8407// This output contains the description of the cluster step. 8408type DescribeStepOutput struct { 8409 _ struct{} `type:"structure"` 8410 8411 // The step details for the requested step identifier. 8412 Step *Step `type:"structure"` 8413} 8414 8415// String returns the string representation. 8416// 8417// API parameter values that are decorated as "sensitive" in the API will not 8418// be included in the string output. The member name will be present, but the 8419// value will be replaced with "sensitive". 8420func (s DescribeStepOutput) String() string { 8421 return awsutil.Prettify(s) 8422} 8423 8424// GoString returns the string representation. 8425// 8426// API parameter values that are decorated as "sensitive" in the API will not 8427// be included in the string output. The member name will be present, but the 8428// value will be replaced with "sensitive". 8429func (s DescribeStepOutput) GoString() string { 8430 return s.String() 8431} 8432 8433// SetStep sets the Step field's value. 8434func (s *DescribeStepOutput) SetStep(v *Step) *DescribeStepOutput { 8435 s.Step = v 8436 return s 8437} 8438 8439type DescribeStudioInput struct { 8440 _ struct{} `type:"structure"` 8441 8442 // The Amazon EMR Studio ID. 8443 // 8444 // StudioId is a required field 8445 StudioId *string `type:"string" required:"true"` 8446} 8447 8448// String returns the string representation. 8449// 8450// API parameter values that are decorated as "sensitive" in the API will not 8451// be included in the string output. The member name will be present, but the 8452// value will be replaced with "sensitive". 8453func (s DescribeStudioInput) String() string { 8454 return awsutil.Prettify(s) 8455} 8456 8457// GoString returns the string representation. 8458// 8459// API parameter values that are decorated as "sensitive" in the API will not 8460// be included in the string output. The member name will be present, but the 8461// value will be replaced with "sensitive". 8462func (s DescribeStudioInput) GoString() string { 8463 return s.String() 8464} 8465 8466// Validate inspects the fields of the type to determine if they are valid. 8467func (s *DescribeStudioInput) Validate() error { 8468 invalidParams := request.ErrInvalidParams{Context: "DescribeStudioInput"} 8469 if s.StudioId == nil { 8470 invalidParams.Add(request.NewErrParamRequired("StudioId")) 8471 } 8472 8473 if invalidParams.Len() > 0 { 8474 return invalidParams 8475 } 8476 return nil 8477} 8478 8479// SetStudioId sets the StudioId field's value. 8480func (s *DescribeStudioInput) SetStudioId(v string) *DescribeStudioInput { 8481 s.StudioId = &v 8482 return s 8483} 8484 8485type DescribeStudioOutput struct { 8486 _ struct{} `type:"structure"` 8487 8488 // The Amazon EMR Studio details. 8489 Studio *Studio `type:"structure"` 8490} 8491 8492// String returns the string representation. 8493// 8494// API parameter values that are decorated as "sensitive" in the API will not 8495// be included in the string output. The member name will be present, but the 8496// value will be replaced with "sensitive". 8497func (s DescribeStudioOutput) String() string { 8498 return awsutil.Prettify(s) 8499} 8500 8501// GoString returns the string representation. 8502// 8503// API parameter values that are decorated as "sensitive" in the API will not 8504// be included in the string output. The member name will be present, but the 8505// value will be replaced with "sensitive". 8506func (s DescribeStudioOutput) GoString() string { 8507 return s.String() 8508} 8509 8510// SetStudio sets the Studio field's value. 8511func (s *DescribeStudioOutput) SetStudio(v *Studio) *DescribeStudioOutput { 8512 s.Studio = v 8513 return s 8514} 8515 8516// Configuration of requested EBS block device associated with the instance 8517// group. 8518type EbsBlockDevice struct { 8519 _ struct{} `type:"structure"` 8520 8521 // The device name that is exposed to the instance, such as /dev/sdh. 8522 Device *string `type:"string"` 8523 8524 // EBS volume specifications such as volume type, IOPS, and size (GiB) that 8525 // will be requested for the EBS volume attached to an EC2 instance in the cluster. 8526 VolumeSpecification *VolumeSpecification `type:"structure"` 8527} 8528 8529// String returns the string representation. 8530// 8531// API parameter values that are decorated as "sensitive" in the API will not 8532// be included in the string output. The member name will be present, but the 8533// value will be replaced with "sensitive". 8534func (s EbsBlockDevice) String() string { 8535 return awsutil.Prettify(s) 8536} 8537 8538// GoString returns the string representation. 8539// 8540// API parameter values that are decorated as "sensitive" in the API will not 8541// be included in the string output. The member name will be present, but the 8542// value will be replaced with "sensitive". 8543func (s EbsBlockDevice) GoString() string { 8544 return s.String() 8545} 8546 8547// SetDevice sets the Device field's value. 8548func (s *EbsBlockDevice) SetDevice(v string) *EbsBlockDevice { 8549 s.Device = &v 8550 return s 8551} 8552 8553// SetVolumeSpecification sets the VolumeSpecification field's value. 8554func (s *EbsBlockDevice) SetVolumeSpecification(v *VolumeSpecification) *EbsBlockDevice { 8555 s.VolumeSpecification = v 8556 return s 8557} 8558 8559// Configuration of requested EBS block device associated with the instance 8560// group with count of volumes that will be associated to every instance. 8561type EbsBlockDeviceConfig struct { 8562 _ struct{} `type:"structure"` 8563 8564 // EBS volume specifications such as volume type, IOPS, and size (GiB) that 8565 // will be requested for the EBS volume attached to an EC2 instance in the cluster. 8566 // 8567 // VolumeSpecification is a required field 8568 VolumeSpecification *VolumeSpecification `type:"structure" required:"true"` 8569 8570 // Number of EBS volumes with a specific volume configuration that will be associated 8571 // with every instance in the instance group 8572 VolumesPerInstance *int64 `type:"integer"` 8573} 8574 8575// String returns the string representation. 8576// 8577// API parameter values that are decorated as "sensitive" in the API will not 8578// be included in the string output. The member name will be present, but the 8579// value will be replaced with "sensitive". 8580func (s EbsBlockDeviceConfig) String() string { 8581 return awsutil.Prettify(s) 8582} 8583 8584// GoString returns the string representation. 8585// 8586// API parameter values that are decorated as "sensitive" in the API will not 8587// be included in the string output. The member name will be present, but the 8588// value will be replaced with "sensitive". 8589func (s EbsBlockDeviceConfig) GoString() string { 8590 return s.String() 8591} 8592 8593// Validate inspects the fields of the type to determine if they are valid. 8594func (s *EbsBlockDeviceConfig) Validate() error { 8595 invalidParams := request.ErrInvalidParams{Context: "EbsBlockDeviceConfig"} 8596 if s.VolumeSpecification == nil { 8597 invalidParams.Add(request.NewErrParamRequired("VolumeSpecification")) 8598 } 8599 if s.VolumeSpecification != nil { 8600 if err := s.VolumeSpecification.Validate(); err != nil { 8601 invalidParams.AddNested("VolumeSpecification", err.(request.ErrInvalidParams)) 8602 } 8603 } 8604 8605 if invalidParams.Len() > 0 { 8606 return invalidParams 8607 } 8608 return nil 8609} 8610 8611// SetVolumeSpecification sets the VolumeSpecification field's value. 8612func (s *EbsBlockDeviceConfig) SetVolumeSpecification(v *VolumeSpecification) *EbsBlockDeviceConfig { 8613 s.VolumeSpecification = v 8614 return s 8615} 8616 8617// SetVolumesPerInstance sets the VolumesPerInstance field's value. 8618func (s *EbsBlockDeviceConfig) SetVolumesPerInstance(v int64) *EbsBlockDeviceConfig { 8619 s.VolumesPerInstance = &v 8620 return s 8621} 8622 8623// The Amazon EBS configuration of a cluster instance. 8624type EbsConfiguration struct { 8625 _ struct{} `type:"structure"` 8626 8627 // An array of Amazon EBS volume specifications attached to a cluster instance. 8628 EbsBlockDeviceConfigs []*EbsBlockDeviceConfig `type:"list"` 8629 8630 // Indicates whether an Amazon EBS volume is EBS-optimized. 8631 EbsOptimized *bool `type:"boolean"` 8632} 8633 8634// String returns the string representation. 8635// 8636// API parameter values that are decorated as "sensitive" in the API will not 8637// be included in the string output. The member name will be present, but the 8638// value will be replaced with "sensitive". 8639func (s EbsConfiguration) String() string { 8640 return awsutil.Prettify(s) 8641} 8642 8643// GoString returns the string representation. 8644// 8645// API parameter values that are decorated as "sensitive" in the API will not 8646// be included in the string output. The member name will be present, but the 8647// value will be replaced with "sensitive". 8648func (s EbsConfiguration) GoString() string { 8649 return s.String() 8650} 8651 8652// Validate inspects the fields of the type to determine if they are valid. 8653func (s *EbsConfiguration) Validate() error { 8654 invalidParams := request.ErrInvalidParams{Context: "EbsConfiguration"} 8655 if s.EbsBlockDeviceConfigs != nil { 8656 for i, v := range s.EbsBlockDeviceConfigs { 8657 if v == nil { 8658 continue 8659 } 8660 if err := v.Validate(); err != nil { 8661 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "EbsBlockDeviceConfigs", i), err.(request.ErrInvalidParams)) 8662 } 8663 } 8664 } 8665 8666 if invalidParams.Len() > 0 { 8667 return invalidParams 8668 } 8669 return nil 8670} 8671 8672// SetEbsBlockDeviceConfigs sets the EbsBlockDeviceConfigs field's value. 8673func (s *EbsConfiguration) SetEbsBlockDeviceConfigs(v []*EbsBlockDeviceConfig) *EbsConfiguration { 8674 s.EbsBlockDeviceConfigs = v 8675 return s 8676} 8677 8678// SetEbsOptimized sets the EbsOptimized field's value. 8679func (s *EbsConfiguration) SetEbsOptimized(v bool) *EbsConfiguration { 8680 s.EbsOptimized = &v 8681 return s 8682} 8683 8684// EBS block device that's attached to an EC2 instance. 8685type EbsVolume struct { 8686 _ struct{} `type:"structure"` 8687 8688 // The device name that is exposed to the instance, such as /dev/sdh. 8689 Device *string `type:"string"` 8690 8691 // The volume identifier of the EBS volume. 8692 VolumeId *string `type:"string"` 8693} 8694 8695// String returns the string representation. 8696// 8697// API parameter values that are decorated as "sensitive" in the API will not 8698// be included in the string output. The member name will be present, but the 8699// value will be replaced with "sensitive". 8700func (s EbsVolume) String() string { 8701 return awsutil.Prettify(s) 8702} 8703 8704// GoString returns the string representation. 8705// 8706// API parameter values that are decorated as "sensitive" in the API will not 8707// be included in the string output. The member name will be present, but the 8708// value will be replaced with "sensitive". 8709func (s EbsVolume) GoString() string { 8710 return s.String() 8711} 8712 8713// SetDevice sets the Device field's value. 8714func (s *EbsVolume) SetDevice(v string) *EbsVolume { 8715 s.Device = &v 8716 return s 8717} 8718 8719// SetVolumeId sets the VolumeId field's value. 8720func (s *EbsVolume) SetVolumeId(v string) *EbsVolume { 8721 s.VolumeId = &v 8722 return s 8723} 8724 8725// Provides information about the EC2 instances in a cluster grouped by category. 8726// For example, key name, subnet ID, IAM instance profile, and so on. 8727type Ec2InstanceAttributes struct { 8728 _ struct{} `type:"structure"` 8729 8730 // A list of additional Amazon EC2 security group IDs for the master node. 8731 AdditionalMasterSecurityGroups []*string `type:"list"` 8732 8733 // A list of additional Amazon EC2 security group IDs for the core and task 8734 // nodes. 8735 AdditionalSlaveSecurityGroups []*string `type:"list"` 8736 8737 // The Availability Zone in which the cluster will run. 8738 Ec2AvailabilityZone *string `type:"string"` 8739 8740 // The name of the Amazon EC2 key pair to use when connecting with SSH into 8741 // the master node as a user named "hadoop". 8742 Ec2KeyName *string `type:"string"` 8743 8744 // Set this parameter to the identifier of the Amazon VPC subnet where you want 8745 // the cluster to launch. If you do not specify this value, and your account 8746 // supports EC2-Classic, the cluster launches in EC2-Classic. 8747 Ec2SubnetId *string `type:"string"` 8748 8749 // The identifier of the Amazon EC2 security group for the master node. 8750 EmrManagedMasterSecurityGroup *string `type:"string"` 8751 8752 // The identifier of the Amazon EC2 security group for the core and task nodes. 8753 EmrManagedSlaveSecurityGroup *string `type:"string"` 8754 8755 // The IAM role that was specified when the cluster was launched. The EC2 instances 8756 // of the cluster assume this role. 8757 IamInstanceProfile *string `type:"string"` 8758 8759 // Applies to clusters configured with the instance fleets option. Specifies 8760 // one or more Availability Zones in which to launch EC2 cluster instances when 8761 // the EC2-Classic network configuration is supported. Amazon EMR chooses the 8762 // Availability Zone with the best fit from among the list of RequestedEc2AvailabilityZones, 8763 // and then launches all cluster instances within that Availability Zone. If 8764 // you do not specify this value, Amazon EMR chooses the Availability Zone for 8765 // you. RequestedEc2SubnetIDs and RequestedEc2AvailabilityZones cannot be specified 8766 // together. 8767 RequestedEc2AvailabilityZones []*string `type:"list"` 8768 8769 // Applies to clusters configured with the instance fleets option. Specifies 8770 // the unique identifier of one or more Amazon EC2 subnets in which to launch 8771 // EC2 cluster instances. Subnets must exist within the same VPC. Amazon EMR 8772 // chooses the EC2 subnet with the best fit from among the list of RequestedEc2SubnetIds, 8773 // and then launches all cluster instances within that Subnet. If this value 8774 // is not specified, and the account and Region support EC2-Classic networks, 8775 // the cluster launches instances in the EC2-Classic network and uses RequestedEc2AvailabilityZones 8776 // instead of this setting. If EC2-Classic is not supported, and no Subnet is 8777 // specified, Amazon EMR chooses the subnet for you. RequestedEc2SubnetIDs and 8778 // RequestedEc2AvailabilityZones cannot be specified together. 8779 RequestedEc2SubnetIds []*string `type:"list"` 8780 8781 // The identifier of the Amazon EC2 security group for the Amazon EMR service 8782 // to access clusters in VPC private subnets. 8783 ServiceAccessSecurityGroup *string `type:"string"` 8784} 8785 8786// String returns the string representation. 8787// 8788// API parameter values that are decorated as "sensitive" in the API will not 8789// be included in the string output. The member name will be present, but the 8790// value will be replaced with "sensitive". 8791func (s Ec2InstanceAttributes) String() string { 8792 return awsutil.Prettify(s) 8793} 8794 8795// GoString returns the string representation. 8796// 8797// API parameter values that are decorated as "sensitive" in the API will not 8798// be included in the string output. The member name will be present, but the 8799// value will be replaced with "sensitive". 8800func (s Ec2InstanceAttributes) GoString() string { 8801 return s.String() 8802} 8803 8804// SetAdditionalMasterSecurityGroups sets the AdditionalMasterSecurityGroups field's value. 8805func (s *Ec2InstanceAttributes) SetAdditionalMasterSecurityGroups(v []*string) *Ec2InstanceAttributes { 8806 s.AdditionalMasterSecurityGroups = v 8807 return s 8808} 8809 8810// SetAdditionalSlaveSecurityGroups sets the AdditionalSlaveSecurityGroups field's value. 8811func (s *Ec2InstanceAttributes) SetAdditionalSlaveSecurityGroups(v []*string) *Ec2InstanceAttributes { 8812 s.AdditionalSlaveSecurityGroups = v 8813 return s 8814} 8815 8816// SetEc2AvailabilityZone sets the Ec2AvailabilityZone field's value. 8817func (s *Ec2InstanceAttributes) SetEc2AvailabilityZone(v string) *Ec2InstanceAttributes { 8818 s.Ec2AvailabilityZone = &v 8819 return s 8820} 8821 8822// SetEc2KeyName sets the Ec2KeyName field's value. 8823func (s *Ec2InstanceAttributes) SetEc2KeyName(v string) *Ec2InstanceAttributes { 8824 s.Ec2KeyName = &v 8825 return s 8826} 8827 8828// SetEc2SubnetId sets the Ec2SubnetId field's value. 8829func (s *Ec2InstanceAttributes) SetEc2SubnetId(v string) *Ec2InstanceAttributes { 8830 s.Ec2SubnetId = &v 8831 return s 8832} 8833 8834// SetEmrManagedMasterSecurityGroup sets the EmrManagedMasterSecurityGroup field's value. 8835func (s *Ec2InstanceAttributes) SetEmrManagedMasterSecurityGroup(v string) *Ec2InstanceAttributes { 8836 s.EmrManagedMasterSecurityGroup = &v 8837 return s 8838} 8839 8840// SetEmrManagedSlaveSecurityGroup sets the EmrManagedSlaveSecurityGroup field's value. 8841func (s *Ec2InstanceAttributes) SetEmrManagedSlaveSecurityGroup(v string) *Ec2InstanceAttributes { 8842 s.EmrManagedSlaveSecurityGroup = &v 8843 return s 8844} 8845 8846// SetIamInstanceProfile sets the IamInstanceProfile field's value. 8847func (s *Ec2InstanceAttributes) SetIamInstanceProfile(v string) *Ec2InstanceAttributes { 8848 s.IamInstanceProfile = &v 8849 return s 8850} 8851 8852// SetRequestedEc2AvailabilityZones sets the RequestedEc2AvailabilityZones field's value. 8853func (s *Ec2InstanceAttributes) SetRequestedEc2AvailabilityZones(v []*string) *Ec2InstanceAttributes { 8854 s.RequestedEc2AvailabilityZones = v 8855 return s 8856} 8857 8858// SetRequestedEc2SubnetIds sets the RequestedEc2SubnetIds field's value. 8859func (s *Ec2InstanceAttributes) SetRequestedEc2SubnetIds(v []*string) *Ec2InstanceAttributes { 8860 s.RequestedEc2SubnetIds = v 8861 return s 8862} 8863 8864// SetServiceAccessSecurityGroup sets the ServiceAccessSecurityGroup field's value. 8865func (s *Ec2InstanceAttributes) SetServiceAccessSecurityGroup(v string) *Ec2InstanceAttributes { 8866 s.ServiceAccessSecurityGroup = &v 8867 return s 8868} 8869 8870// Specifies the execution engine (cluster) to run the notebook and perform 8871// the notebook execution, for example, an EMR cluster. 8872type ExecutionEngineConfig struct { 8873 _ struct{} `type:"structure"` 8874 8875 // The unique identifier of the execution engine. For an EMR cluster, this is 8876 // the cluster ID. 8877 // 8878 // Id is a required field 8879 Id *string `type:"string" required:"true"` 8880 8881 // An optional unique ID of an EC2 security group to associate with the master 8882 // instance of the EMR cluster for this notebook execution. For more information 8883 // see Specifying EC2 Security Groups for EMR Notebooks (https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-managed-notebooks-security-groups.html) 8884 // in the EMR Management Guide. 8885 MasterInstanceSecurityGroupId *string `type:"string"` 8886 8887 // The type of execution engine. A value of EMR specifies an EMR cluster. 8888 Type *string `type:"string" enum:"ExecutionEngineType"` 8889} 8890 8891// String returns the string representation. 8892// 8893// API parameter values that are decorated as "sensitive" in the API will not 8894// be included in the string output. The member name will be present, but the 8895// value will be replaced with "sensitive". 8896func (s ExecutionEngineConfig) String() string { 8897 return awsutil.Prettify(s) 8898} 8899 8900// GoString returns the string representation. 8901// 8902// API parameter values that are decorated as "sensitive" in the API will not 8903// be included in the string output. The member name will be present, but the 8904// value will be replaced with "sensitive". 8905func (s ExecutionEngineConfig) GoString() string { 8906 return s.String() 8907} 8908 8909// Validate inspects the fields of the type to determine if they are valid. 8910func (s *ExecutionEngineConfig) Validate() error { 8911 invalidParams := request.ErrInvalidParams{Context: "ExecutionEngineConfig"} 8912 if s.Id == nil { 8913 invalidParams.Add(request.NewErrParamRequired("Id")) 8914 } 8915 8916 if invalidParams.Len() > 0 { 8917 return invalidParams 8918 } 8919 return nil 8920} 8921 8922// SetId sets the Id field's value. 8923func (s *ExecutionEngineConfig) SetId(v string) *ExecutionEngineConfig { 8924 s.Id = &v 8925 return s 8926} 8927 8928// SetMasterInstanceSecurityGroupId sets the MasterInstanceSecurityGroupId field's value. 8929func (s *ExecutionEngineConfig) SetMasterInstanceSecurityGroupId(v string) *ExecutionEngineConfig { 8930 s.MasterInstanceSecurityGroupId = &v 8931 return s 8932} 8933 8934// SetType sets the Type field's value. 8935func (s *ExecutionEngineConfig) SetType(v string) *ExecutionEngineConfig { 8936 s.Type = &v 8937 return s 8938} 8939 8940// The details of the step failure. The service attempts to detect the root 8941// cause for many common failures. 8942type FailureDetails struct { 8943 _ struct{} `type:"structure"` 8944 8945 // The path to the log file where the step failure root cause was originally 8946 // recorded. 8947 LogFile *string `type:"string"` 8948 8949 // The descriptive message including the error the Amazon EMR service has identified 8950 // as the cause of step failure. This is text from an error log that describes 8951 // the root cause of the failure. 8952 Message *string `type:"string"` 8953 8954 // The reason for the step failure. In the case where the service cannot successfully 8955 // determine the root cause of the failure, it returns "Unknown Error" as a 8956 // reason. 8957 Reason *string `type:"string"` 8958} 8959 8960// String returns the string representation. 8961// 8962// API parameter values that are decorated as "sensitive" in the API will not 8963// be included in the string output. The member name will be present, but the 8964// value will be replaced with "sensitive". 8965func (s FailureDetails) String() string { 8966 return awsutil.Prettify(s) 8967} 8968 8969// GoString returns the string representation. 8970// 8971// API parameter values that are decorated as "sensitive" in the API will not 8972// be included in the string output. The member name will be present, but the 8973// value will be replaced with "sensitive". 8974func (s FailureDetails) GoString() string { 8975 return s.String() 8976} 8977 8978// SetLogFile sets the LogFile field's value. 8979func (s *FailureDetails) SetLogFile(v string) *FailureDetails { 8980 s.LogFile = &v 8981 return s 8982} 8983 8984// SetMessage sets the Message field's value. 8985func (s *FailureDetails) SetMessage(v string) *FailureDetails { 8986 s.Message = &v 8987 return s 8988} 8989 8990// SetReason sets the Reason field's value. 8991func (s *FailureDetails) SetReason(v string) *FailureDetails { 8992 s.Reason = &v 8993 return s 8994} 8995 8996type GetAutoTerminationPolicyInput struct { 8997 _ struct{} `type:"structure"` 8998 8999 // Specifies the ID of the Amazon EMR cluster for which the auto-termination 9000 // policy will be fetched. 9001 // 9002 // ClusterId is a required field 9003 ClusterId *string `type:"string" required:"true"` 9004} 9005 9006// String returns the string representation. 9007// 9008// API parameter values that are decorated as "sensitive" in the API will not 9009// be included in the string output. The member name will be present, but the 9010// value will be replaced with "sensitive". 9011func (s GetAutoTerminationPolicyInput) String() string { 9012 return awsutil.Prettify(s) 9013} 9014 9015// GoString returns the string representation. 9016// 9017// API parameter values that are decorated as "sensitive" in the API will not 9018// be included in the string output. The member name will be present, but the 9019// value will be replaced with "sensitive". 9020func (s GetAutoTerminationPolicyInput) GoString() string { 9021 return s.String() 9022} 9023 9024// Validate inspects the fields of the type to determine if they are valid. 9025func (s *GetAutoTerminationPolicyInput) Validate() error { 9026 invalidParams := request.ErrInvalidParams{Context: "GetAutoTerminationPolicyInput"} 9027 if s.ClusterId == nil { 9028 invalidParams.Add(request.NewErrParamRequired("ClusterId")) 9029 } 9030 9031 if invalidParams.Len() > 0 { 9032 return invalidParams 9033 } 9034 return nil 9035} 9036 9037// SetClusterId sets the ClusterId field's value. 9038func (s *GetAutoTerminationPolicyInput) SetClusterId(v string) *GetAutoTerminationPolicyInput { 9039 s.ClusterId = &v 9040 return s 9041} 9042 9043type GetAutoTerminationPolicyOutput struct { 9044 _ struct{} `type:"structure"` 9045 9046 // Specifies the auto-termination policy that is attached to an Amazon EMR cluster. 9047 AutoTerminationPolicy *AutoTerminationPolicy `type:"structure"` 9048} 9049 9050// String returns the string representation. 9051// 9052// API parameter values that are decorated as "sensitive" in the API will not 9053// be included in the string output. The member name will be present, but the 9054// value will be replaced with "sensitive". 9055func (s GetAutoTerminationPolicyOutput) String() string { 9056 return awsutil.Prettify(s) 9057} 9058 9059// GoString returns the string representation. 9060// 9061// API parameter values that are decorated as "sensitive" in the API will not 9062// be included in the string output. The member name will be present, but the 9063// value will be replaced with "sensitive". 9064func (s GetAutoTerminationPolicyOutput) GoString() string { 9065 return s.String() 9066} 9067 9068// SetAutoTerminationPolicy sets the AutoTerminationPolicy field's value. 9069func (s *GetAutoTerminationPolicyOutput) SetAutoTerminationPolicy(v *AutoTerminationPolicy) *GetAutoTerminationPolicyOutput { 9070 s.AutoTerminationPolicy = v 9071 return s 9072} 9073 9074type GetBlockPublicAccessConfigurationInput struct { 9075 _ struct{} `type:"structure"` 9076} 9077 9078// String returns the string representation. 9079// 9080// API parameter values that are decorated as "sensitive" in the API will not 9081// be included in the string output. The member name will be present, but the 9082// value will be replaced with "sensitive". 9083func (s GetBlockPublicAccessConfigurationInput) String() string { 9084 return awsutil.Prettify(s) 9085} 9086 9087// GoString returns the string representation. 9088// 9089// API parameter values that are decorated as "sensitive" in the API will not 9090// be included in the string output. The member name will be present, but the 9091// value will be replaced with "sensitive". 9092func (s GetBlockPublicAccessConfigurationInput) GoString() string { 9093 return s.String() 9094} 9095 9096type GetBlockPublicAccessConfigurationOutput struct { 9097 _ struct{} `type:"structure"` 9098 9099 // A configuration for Amazon EMR block public access. The configuration applies 9100 // to all clusters created in your account for the current Region. The configuration 9101 // specifies whether block public access is enabled. If block public access 9102 // is enabled, security groups associated with the cluster cannot have rules 9103 // that allow inbound traffic from 0.0.0.0/0 or ::/0 on a port, unless the port 9104 // is specified as an exception using PermittedPublicSecurityGroupRuleRanges 9105 // in the BlockPublicAccessConfiguration. By default, Port 22 (SSH) is an exception, 9106 // and public access is allowed on this port. You can change this by updating 9107 // the block public access configuration to remove the exception. 9108 // 9109 // For accounts that created clusters in a Region before November 25, 2019, 9110 // block public access is disabled by default in that Region. To use this feature, 9111 // you must manually enable and configure it. For accounts that did not create 9112 // an EMR cluster in a Region before this date, block public access is enabled 9113 // by default in that Region. 9114 // 9115 // BlockPublicAccessConfiguration is a required field 9116 BlockPublicAccessConfiguration *BlockPublicAccessConfiguration `type:"structure" required:"true"` 9117 9118 // Properties that describe the Amazon Web Services principal that created the 9119 // BlockPublicAccessConfiguration using the PutBlockPublicAccessConfiguration 9120 // action as well as the date and time that the configuration was created. Each 9121 // time a configuration for block public access is updated, Amazon EMR updates 9122 // this metadata. 9123 // 9124 // BlockPublicAccessConfigurationMetadata is a required field 9125 BlockPublicAccessConfigurationMetadata *BlockPublicAccessConfigurationMetadata `type:"structure" required:"true"` 9126} 9127 9128// String returns the string representation. 9129// 9130// API parameter values that are decorated as "sensitive" in the API will not 9131// be included in the string output. The member name will be present, but the 9132// value will be replaced with "sensitive". 9133func (s GetBlockPublicAccessConfigurationOutput) String() string { 9134 return awsutil.Prettify(s) 9135} 9136 9137// GoString returns the string representation. 9138// 9139// API parameter values that are decorated as "sensitive" in the API will not 9140// be included in the string output. The member name will be present, but the 9141// value will be replaced with "sensitive". 9142func (s GetBlockPublicAccessConfigurationOutput) GoString() string { 9143 return s.String() 9144} 9145 9146// SetBlockPublicAccessConfiguration sets the BlockPublicAccessConfiguration field's value. 9147func (s *GetBlockPublicAccessConfigurationOutput) SetBlockPublicAccessConfiguration(v *BlockPublicAccessConfiguration) *GetBlockPublicAccessConfigurationOutput { 9148 s.BlockPublicAccessConfiguration = v 9149 return s 9150} 9151 9152// SetBlockPublicAccessConfigurationMetadata sets the BlockPublicAccessConfigurationMetadata field's value. 9153func (s *GetBlockPublicAccessConfigurationOutput) SetBlockPublicAccessConfigurationMetadata(v *BlockPublicAccessConfigurationMetadata) *GetBlockPublicAccessConfigurationOutput { 9154 s.BlockPublicAccessConfigurationMetadata = v 9155 return s 9156} 9157 9158type GetManagedScalingPolicyInput struct { 9159 _ struct{} `type:"structure"` 9160 9161 // Specifies the ID of the cluster for which the managed scaling policy will 9162 // be fetched. 9163 // 9164 // ClusterId is a required field 9165 ClusterId *string `type:"string" required:"true"` 9166} 9167 9168// String returns the string representation. 9169// 9170// API parameter values that are decorated as "sensitive" in the API will not 9171// be included in the string output. The member name will be present, but the 9172// value will be replaced with "sensitive". 9173func (s GetManagedScalingPolicyInput) String() string { 9174 return awsutil.Prettify(s) 9175} 9176 9177// GoString returns the string representation. 9178// 9179// API parameter values that are decorated as "sensitive" in the API will not 9180// be included in the string output. The member name will be present, but the 9181// value will be replaced with "sensitive". 9182func (s GetManagedScalingPolicyInput) GoString() string { 9183 return s.String() 9184} 9185 9186// Validate inspects the fields of the type to determine if they are valid. 9187func (s *GetManagedScalingPolicyInput) Validate() error { 9188 invalidParams := request.ErrInvalidParams{Context: "GetManagedScalingPolicyInput"} 9189 if s.ClusterId == nil { 9190 invalidParams.Add(request.NewErrParamRequired("ClusterId")) 9191 } 9192 9193 if invalidParams.Len() > 0 { 9194 return invalidParams 9195 } 9196 return nil 9197} 9198 9199// SetClusterId sets the ClusterId field's value. 9200func (s *GetManagedScalingPolicyInput) SetClusterId(v string) *GetManagedScalingPolicyInput { 9201 s.ClusterId = &v 9202 return s 9203} 9204 9205type GetManagedScalingPolicyOutput struct { 9206 _ struct{} `type:"structure"` 9207 9208 // Specifies the managed scaling policy that is attached to an Amazon EMR cluster. 9209 ManagedScalingPolicy *ManagedScalingPolicy `type:"structure"` 9210} 9211 9212// String returns the string representation. 9213// 9214// API parameter values that are decorated as "sensitive" in the API will not 9215// be included in the string output. The member name will be present, but the 9216// value will be replaced with "sensitive". 9217func (s GetManagedScalingPolicyOutput) String() string { 9218 return awsutil.Prettify(s) 9219} 9220 9221// GoString returns the string representation. 9222// 9223// API parameter values that are decorated as "sensitive" in the API will not 9224// be included in the string output. The member name will be present, but the 9225// value will be replaced with "sensitive". 9226func (s GetManagedScalingPolicyOutput) GoString() string { 9227 return s.String() 9228} 9229 9230// SetManagedScalingPolicy sets the ManagedScalingPolicy field's value. 9231func (s *GetManagedScalingPolicyOutput) SetManagedScalingPolicy(v *ManagedScalingPolicy) *GetManagedScalingPolicyOutput { 9232 s.ManagedScalingPolicy = v 9233 return s 9234} 9235 9236type GetStudioSessionMappingInput struct { 9237 _ struct{} `type:"structure"` 9238 9239 // The globally unique identifier (GUID) of the user or group. For more information, 9240 // see UserId (https://docs.aws.amazon.com/singlesignon/latest/IdentityStoreAPIReference/API_User.html#singlesignon-Type-User-UserId) 9241 // and GroupId (https://docs.aws.amazon.com/singlesignon/latest/IdentityStoreAPIReference/API_Group.html#singlesignon-Type-Group-GroupId) 9242 // in the Amazon Web Services SSO Identity Store API Reference. Either IdentityName 9243 // or IdentityId must be specified. 9244 IdentityId *string `type:"string"` 9245 9246 // The name of the user or group to fetch. For more information, see UserName 9247 // (https://docs.aws.amazon.com/singlesignon/latest/IdentityStoreAPIReference/API_User.html#singlesignon-Type-User-UserName) 9248 // and DisplayName (https://docs.aws.amazon.com/singlesignon/latest/IdentityStoreAPIReference/API_Group.html#singlesignon-Type-Group-DisplayName) 9249 // in the Amazon Web Services SSO Identity Store API Reference. Either IdentityName 9250 // or IdentityId must be specified. 9251 IdentityName *string `type:"string"` 9252 9253 // Specifies whether the identity to fetch is a user or a group. 9254 // 9255 // IdentityType is a required field 9256 IdentityType *string `type:"string" required:"true" enum:"IdentityType"` 9257 9258 // The ID of the Amazon EMR Studio. 9259 // 9260 // StudioId is a required field 9261 StudioId *string `type:"string" required:"true"` 9262} 9263 9264// String returns the string representation. 9265// 9266// API parameter values that are decorated as "sensitive" in the API will not 9267// be included in the string output. The member name will be present, but the 9268// value will be replaced with "sensitive". 9269func (s GetStudioSessionMappingInput) String() string { 9270 return awsutil.Prettify(s) 9271} 9272 9273// GoString returns the string representation. 9274// 9275// API parameter values that are decorated as "sensitive" in the API will not 9276// be included in the string output. The member name will be present, but the 9277// value will be replaced with "sensitive". 9278func (s GetStudioSessionMappingInput) GoString() string { 9279 return s.String() 9280} 9281 9282// Validate inspects the fields of the type to determine if they are valid. 9283func (s *GetStudioSessionMappingInput) Validate() error { 9284 invalidParams := request.ErrInvalidParams{Context: "GetStudioSessionMappingInput"} 9285 if s.IdentityType == nil { 9286 invalidParams.Add(request.NewErrParamRequired("IdentityType")) 9287 } 9288 if s.StudioId == nil { 9289 invalidParams.Add(request.NewErrParamRequired("StudioId")) 9290 } 9291 9292 if invalidParams.Len() > 0 { 9293 return invalidParams 9294 } 9295 return nil 9296} 9297 9298// SetIdentityId sets the IdentityId field's value. 9299func (s *GetStudioSessionMappingInput) SetIdentityId(v string) *GetStudioSessionMappingInput { 9300 s.IdentityId = &v 9301 return s 9302} 9303 9304// SetIdentityName sets the IdentityName field's value. 9305func (s *GetStudioSessionMappingInput) SetIdentityName(v string) *GetStudioSessionMappingInput { 9306 s.IdentityName = &v 9307 return s 9308} 9309 9310// SetIdentityType sets the IdentityType field's value. 9311func (s *GetStudioSessionMappingInput) SetIdentityType(v string) *GetStudioSessionMappingInput { 9312 s.IdentityType = &v 9313 return s 9314} 9315 9316// SetStudioId sets the StudioId field's value. 9317func (s *GetStudioSessionMappingInput) SetStudioId(v string) *GetStudioSessionMappingInput { 9318 s.StudioId = &v 9319 return s 9320} 9321 9322type GetStudioSessionMappingOutput struct { 9323 _ struct{} `type:"structure"` 9324 9325 // The session mapping details for the specified Amazon EMR Studio and identity, 9326 // including session policy ARN and creation time. 9327 SessionMapping *SessionMappingDetail `type:"structure"` 9328} 9329 9330// String returns the string representation. 9331// 9332// API parameter values that are decorated as "sensitive" in the API will not 9333// be included in the string output. The member name will be present, but the 9334// value will be replaced with "sensitive". 9335func (s GetStudioSessionMappingOutput) String() string { 9336 return awsutil.Prettify(s) 9337} 9338 9339// GoString returns the string representation. 9340// 9341// API parameter values that are decorated as "sensitive" in the API will not 9342// be included in the string output. The member name will be present, but the 9343// value will be replaced with "sensitive". 9344func (s GetStudioSessionMappingOutput) GoString() string { 9345 return s.String() 9346} 9347 9348// SetSessionMapping sets the SessionMapping field's value. 9349func (s *GetStudioSessionMappingOutput) SetSessionMapping(v *SessionMappingDetail) *GetStudioSessionMappingOutput { 9350 s.SessionMapping = v 9351 return s 9352} 9353 9354// A job flow step consisting of a JAR file whose main function will be executed. 9355// The main function submits a job for Hadoop to execute and waits for the job 9356// to finish or fail. 9357type HadoopJarStepConfig struct { 9358 _ struct{} `type:"structure"` 9359 9360 // A list of command line arguments passed to the JAR file's main function when 9361 // executed. 9362 Args []*string `type:"list"` 9363 9364 // A path to a JAR file run during the step. 9365 // 9366 // Jar is a required field 9367 Jar *string `type:"string" required:"true"` 9368 9369 // The name of the main class in the specified Java file. If not specified, 9370 // the JAR file should specify a Main-Class in its manifest file. 9371 MainClass *string `type:"string"` 9372 9373 // A list of Java properties that are set when the step runs. You can use these 9374 // properties to pass key-value pairs to your main function. 9375 Properties []*KeyValue `type:"list"` 9376} 9377 9378// String returns the string representation. 9379// 9380// API parameter values that are decorated as "sensitive" in the API will not 9381// be included in the string output. The member name will be present, but the 9382// value will be replaced with "sensitive". 9383func (s HadoopJarStepConfig) String() string { 9384 return awsutil.Prettify(s) 9385} 9386 9387// GoString returns the string representation. 9388// 9389// API parameter values that are decorated as "sensitive" in the API will not 9390// be included in the string output. The member name will be present, but the 9391// value will be replaced with "sensitive". 9392func (s HadoopJarStepConfig) GoString() string { 9393 return s.String() 9394} 9395 9396// Validate inspects the fields of the type to determine if they are valid. 9397func (s *HadoopJarStepConfig) Validate() error { 9398 invalidParams := request.ErrInvalidParams{Context: "HadoopJarStepConfig"} 9399 if s.Jar == nil { 9400 invalidParams.Add(request.NewErrParamRequired("Jar")) 9401 } 9402 9403 if invalidParams.Len() > 0 { 9404 return invalidParams 9405 } 9406 return nil 9407} 9408 9409// SetArgs sets the Args field's value. 9410func (s *HadoopJarStepConfig) SetArgs(v []*string) *HadoopJarStepConfig { 9411 s.Args = v 9412 return s 9413} 9414 9415// SetJar sets the Jar field's value. 9416func (s *HadoopJarStepConfig) SetJar(v string) *HadoopJarStepConfig { 9417 s.Jar = &v 9418 return s 9419} 9420 9421// SetMainClass sets the MainClass field's value. 9422func (s *HadoopJarStepConfig) SetMainClass(v string) *HadoopJarStepConfig { 9423 s.MainClass = &v 9424 return s 9425} 9426 9427// SetProperties sets the Properties field's value. 9428func (s *HadoopJarStepConfig) SetProperties(v []*KeyValue) *HadoopJarStepConfig { 9429 s.Properties = v 9430 return s 9431} 9432 9433// A cluster step consisting of a JAR file whose main function will be executed. 9434// The main function submits a job for Hadoop to execute and waits for the job 9435// to finish or fail. 9436type HadoopStepConfig struct { 9437 _ struct{} `type:"structure"` 9438 9439 // The list of command line arguments to pass to the JAR file's main function 9440 // for execution. 9441 Args []*string `type:"list"` 9442 9443 // The path to the JAR file that runs during the step. 9444 Jar *string `type:"string"` 9445 9446 // The name of the main class in the specified Java file. If not specified, 9447 // the JAR file should specify a main class in its manifest file. 9448 MainClass *string `type:"string"` 9449 9450 // The list of Java properties that are set when the step runs. You can use 9451 // these properties to pass key-value pairs to your main function. 9452 Properties map[string]*string `type:"map"` 9453} 9454 9455// String returns the string representation. 9456// 9457// API parameter values that are decorated as "sensitive" in the API will not 9458// be included in the string output. The member name will be present, but the 9459// value will be replaced with "sensitive". 9460func (s HadoopStepConfig) String() string { 9461 return awsutil.Prettify(s) 9462} 9463 9464// GoString returns the string representation. 9465// 9466// API parameter values that are decorated as "sensitive" in the API will not 9467// be included in the string output. The member name will be present, but the 9468// value will be replaced with "sensitive". 9469func (s HadoopStepConfig) GoString() string { 9470 return s.String() 9471} 9472 9473// SetArgs sets the Args field's value. 9474func (s *HadoopStepConfig) SetArgs(v []*string) *HadoopStepConfig { 9475 s.Args = v 9476 return s 9477} 9478 9479// SetJar sets the Jar field's value. 9480func (s *HadoopStepConfig) SetJar(v string) *HadoopStepConfig { 9481 s.Jar = &v 9482 return s 9483} 9484 9485// SetMainClass sets the MainClass field's value. 9486func (s *HadoopStepConfig) SetMainClass(v string) *HadoopStepConfig { 9487 s.MainClass = &v 9488 return s 9489} 9490 9491// SetProperties sets the Properties field's value. 9492func (s *HadoopStepConfig) SetProperties(v map[string]*string) *HadoopStepConfig { 9493 s.Properties = v 9494 return s 9495} 9496 9497// Represents an EC2 instance provisioned as part of cluster. 9498type Instance struct { 9499 _ struct{} `type:"structure"` 9500 9501 // The list of Amazon EBS volumes that are attached to this instance. 9502 EbsVolumes []*EbsVolume `type:"list"` 9503 9504 // The unique identifier of the instance in Amazon EC2. 9505 Ec2InstanceId *string `type:"string"` 9506 9507 // The unique identifier for the instance in Amazon EMR. 9508 Id *string `type:"string"` 9509 9510 // The unique identifier of the instance fleet to which an EC2 instance belongs. 9511 InstanceFleetId *string `type:"string"` 9512 9513 // The identifier of the instance group to which this instance belongs. 9514 InstanceGroupId *string `type:"string"` 9515 9516 // The EC2 instance type, for example m3.xlarge. 9517 InstanceType *string `min:"1" type:"string"` 9518 9519 // The instance purchasing option. Valid values are ON_DEMAND or SPOT. 9520 Market *string `type:"string" enum:"MarketType"` 9521 9522 // The private DNS name of the instance. 9523 PrivateDnsName *string `type:"string"` 9524 9525 // The private IP address of the instance. 9526 PrivateIpAddress *string `type:"string"` 9527 9528 // The public DNS name of the instance. 9529 PublicDnsName *string `type:"string"` 9530 9531 // The public IP address of the instance. 9532 PublicIpAddress *string `type:"string"` 9533 9534 // The current status of the instance. 9535 Status *InstanceStatus `type:"structure"` 9536} 9537 9538// String returns the string representation. 9539// 9540// API parameter values that are decorated as "sensitive" in the API will not 9541// be included in the string output. The member name will be present, but the 9542// value will be replaced with "sensitive". 9543func (s Instance) String() string { 9544 return awsutil.Prettify(s) 9545} 9546 9547// GoString returns the string representation. 9548// 9549// API parameter values that are decorated as "sensitive" in the API will not 9550// be included in the string output. The member name will be present, but the 9551// value will be replaced with "sensitive". 9552func (s Instance) GoString() string { 9553 return s.String() 9554} 9555 9556// SetEbsVolumes sets the EbsVolumes field's value. 9557func (s *Instance) SetEbsVolumes(v []*EbsVolume) *Instance { 9558 s.EbsVolumes = v 9559 return s 9560} 9561 9562// SetEc2InstanceId sets the Ec2InstanceId field's value. 9563func (s *Instance) SetEc2InstanceId(v string) *Instance { 9564 s.Ec2InstanceId = &v 9565 return s 9566} 9567 9568// SetId sets the Id field's value. 9569func (s *Instance) SetId(v string) *Instance { 9570 s.Id = &v 9571 return s 9572} 9573 9574// SetInstanceFleetId sets the InstanceFleetId field's value. 9575func (s *Instance) SetInstanceFleetId(v string) *Instance { 9576 s.InstanceFleetId = &v 9577 return s 9578} 9579 9580// SetInstanceGroupId sets the InstanceGroupId field's value. 9581func (s *Instance) SetInstanceGroupId(v string) *Instance { 9582 s.InstanceGroupId = &v 9583 return s 9584} 9585 9586// SetInstanceType sets the InstanceType field's value. 9587func (s *Instance) SetInstanceType(v string) *Instance { 9588 s.InstanceType = &v 9589 return s 9590} 9591 9592// SetMarket sets the Market field's value. 9593func (s *Instance) SetMarket(v string) *Instance { 9594 s.Market = &v 9595 return s 9596} 9597 9598// SetPrivateDnsName sets the PrivateDnsName field's value. 9599func (s *Instance) SetPrivateDnsName(v string) *Instance { 9600 s.PrivateDnsName = &v 9601 return s 9602} 9603 9604// SetPrivateIpAddress sets the PrivateIpAddress field's value. 9605func (s *Instance) SetPrivateIpAddress(v string) *Instance { 9606 s.PrivateIpAddress = &v 9607 return s 9608} 9609 9610// SetPublicDnsName sets the PublicDnsName field's value. 9611func (s *Instance) SetPublicDnsName(v string) *Instance { 9612 s.PublicDnsName = &v 9613 return s 9614} 9615 9616// SetPublicIpAddress sets the PublicIpAddress field's value. 9617func (s *Instance) SetPublicIpAddress(v string) *Instance { 9618 s.PublicIpAddress = &v 9619 return s 9620} 9621 9622// SetStatus sets the Status field's value. 9623func (s *Instance) SetStatus(v *InstanceStatus) *Instance { 9624 s.Status = v 9625 return s 9626} 9627 9628// Describes an instance fleet, which is a group of EC2 instances that host 9629// a particular node type (master, core, or task) in an Amazon EMR cluster. 9630// Instance fleets can consist of a mix of instance types and On-Demand and 9631// Spot Instances, which are provisioned to meet a defined target capacity. 9632// 9633// The instance fleet configuration is available only in Amazon EMR versions 9634// 4.8.0 and later, excluding 5.0.x versions. 9635type InstanceFleet struct { 9636 _ struct{} `type:"structure"` 9637 9638 // The unique identifier of the instance fleet. 9639 Id *string `type:"string"` 9640 9641 // The node type that the instance fleet hosts. Valid values are MASTER, CORE, 9642 // or TASK. 9643 InstanceFleetType *string `type:"string" enum:"InstanceFleetType"` 9644 9645 // An array of specifications for the instance types that comprise an instance 9646 // fleet. 9647 InstanceTypeSpecifications []*InstanceTypeSpecification `type:"list"` 9648 9649 // Describes the launch specification for an instance fleet. 9650 LaunchSpecifications *InstanceFleetProvisioningSpecifications `type:"structure"` 9651 9652 // A friendly name for the instance fleet. 9653 Name *string `type:"string"` 9654 9655 // The number of On-Demand units that have been provisioned for the instance 9656 // fleet to fulfill TargetOnDemandCapacity. This provisioned capacity might 9657 // be less than or greater than TargetOnDemandCapacity. 9658 ProvisionedOnDemandCapacity *int64 `type:"integer"` 9659 9660 // The number of Spot units that have been provisioned for this instance fleet 9661 // to fulfill TargetSpotCapacity. This provisioned capacity might be less than 9662 // or greater than TargetSpotCapacity. 9663 ProvisionedSpotCapacity *int64 `type:"integer"` 9664 9665 // The current status of the instance fleet. 9666 Status *InstanceFleetStatus `type:"structure"` 9667 9668 // The target capacity of On-Demand units for the instance fleet, which determines 9669 // how many On-Demand Instances to provision. When the instance fleet launches, 9670 // Amazon EMR tries to provision On-Demand Instances as specified by InstanceTypeConfig. 9671 // Each instance configuration has a specified WeightedCapacity. When an On-Demand 9672 // Instance is provisioned, the WeightedCapacity units count toward the target 9673 // capacity. Amazon EMR provisions instances until the target capacity is totally 9674 // fulfilled, even if this results in an overage. For example, if there are 9675 // 2 units remaining to fulfill capacity, and Amazon EMR can only provision 9676 // an instance with a WeightedCapacity of 5 units, the instance is provisioned, 9677 // and the target capacity is exceeded by 3 units. You can use InstanceFleet$ProvisionedOnDemandCapacity 9678 // to determine the Spot capacity units that have been provisioned for the instance 9679 // fleet. 9680 // 9681 // If not specified or set to 0, only Spot Instances are provisioned for the 9682 // instance fleet using TargetSpotCapacity. At least one of TargetSpotCapacity 9683 // and TargetOnDemandCapacity should be greater than 0. For a master instance 9684 // fleet, only one of TargetSpotCapacity and TargetOnDemandCapacity can be specified, 9685 // and its value must be 1. 9686 TargetOnDemandCapacity *int64 `type:"integer"` 9687 9688 // The target capacity of Spot units for the instance fleet, which determines 9689 // how many Spot Instances to provision. When the instance fleet launches, Amazon 9690 // EMR tries to provision Spot Instances as specified by InstanceTypeConfig. 9691 // Each instance configuration has a specified WeightedCapacity. When a Spot 9692 // instance is provisioned, the WeightedCapacity units count toward the target 9693 // capacity. Amazon EMR provisions instances until the target capacity is totally 9694 // fulfilled, even if this results in an overage. For example, if there are 9695 // 2 units remaining to fulfill capacity, and Amazon EMR can only provision 9696 // an instance with a WeightedCapacity of 5 units, the instance is provisioned, 9697 // and the target capacity is exceeded by 3 units. You can use InstanceFleet$ProvisionedSpotCapacity 9698 // to determine the Spot capacity units that have been provisioned for the instance 9699 // fleet. 9700 // 9701 // If not specified or set to 0, only On-Demand Instances are provisioned for 9702 // the instance fleet. At least one of TargetSpotCapacity and TargetOnDemandCapacity 9703 // should be greater than 0. For a master instance fleet, only one of TargetSpotCapacity 9704 // and TargetOnDemandCapacity can be specified, and its value must be 1. 9705 TargetSpotCapacity *int64 `type:"integer"` 9706} 9707 9708// String returns the string representation. 9709// 9710// API parameter values that are decorated as "sensitive" in the API will not 9711// be included in the string output. The member name will be present, but the 9712// value will be replaced with "sensitive". 9713func (s InstanceFleet) String() string { 9714 return awsutil.Prettify(s) 9715} 9716 9717// GoString returns the string representation. 9718// 9719// API parameter values that are decorated as "sensitive" in the API will not 9720// be included in the string output. The member name will be present, but the 9721// value will be replaced with "sensitive". 9722func (s InstanceFleet) GoString() string { 9723 return s.String() 9724} 9725 9726// SetId sets the Id field's value. 9727func (s *InstanceFleet) SetId(v string) *InstanceFleet { 9728 s.Id = &v 9729 return s 9730} 9731 9732// SetInstanceFleetType sets the InstanceFleetType field's value. 9733func (s *InstanceFleet) SetInstanceFleetType(v string) *InstanceFleet { 9734 s.InstanceFleetType = &v 9735 return s 9736} 9737 9738// SetInstanceTypeSpecifications sets the InstanceTypeSpecifications field's value. 9739func (s *InstanceFleet) SetInstanceTypeSpecifications(v []*InstanceTypeSpecification) *InstanceFleet { 9740 s.InstanceTypeSpecifications = v 9741 return s 9742} 9743 9744// SetLaunchSpecifications sets the LaunchSpecifications field's value. 9745func (s *InstanceFleet) SetLaunchSpecifications(v *InstanceFleetProvisioningSpecifications) *InstanceFleet { 9746 s.LaunchSpecifications = v 9747 return s 9748} 9749 9750// SetName sets the Name field's value. 9751func (s *InstanceFleet) SetName(v string) *InstanceFleet { 9752 s.Name = &v 9753 return s 9754} 9755 9756// SetProvisionedOnDemandCapacity sets the ProvisionedOnDemandCapacity field's value. 9757func (s *InstanceFleet) SetProvisionedOnDemandCapacity(v int64) *InstanceFleet { 9758 s.ProvisionedOnDemandCapacity = &v 9759 return s 9760} 9761 9762// SetProvisionedSpotCapacity sets the ProvisionedSpotCapacity field's value. 9763func (s *InstanceFleet) SetProvisionedSpotCapacity(v int64) *InstanceFleet { 9764 s.ProvisionedSpotCapacity = &v 9765 return s 9766} 9767 9768// SetStatus sets the Status field's value. 9769func (s *InstanceFleet) SetStatus(v *InstanceFleetStatus) *InstanceFleet { 9770 s.Status = v 9771 return s 9772} 9773 9774// SetTargetOnDemandCapacity sets the TargetOnDemandCapacity field's value. 9775func (s *InstanceFleet) SetTargetOnDemandCapacity(v int64) *InstanceFleet { 9776 s.TargetOnDemandCapacity = &v 9777 return s 9778} 9779 9780// SetTargetSpotCapacity sets the TargetSpotCapacity field's value. 9781func (s *InstanceFleet) SetTargetSpotCapacity(v int64) *InstanceFleet { 9782 s.TargetSpotCapacity = &v 9783 return s 9784} 9785 9786// The configuration that defines an instance fleet. 9787// 9788// The instance fleet configuration is available only in Amazon EMR versions 9789// 4.8.0 and later, excluding 5.0.x versions. 9790type InstanceFleetConfig struct { 9791 _ struct{} `type:"structure"` 9792 9793 // The node type that the instance fleet hosts. Valid values are MASTER, CORE, 9794 // and TASK. 9795 // 9796 // InstanceFleetType is a required field 9797 InstanceFleetType *string `type:"string" required:"true" enum:"InstanceFleetType"` 9798 9799 // The instance type configurations that define the EC2 instances in the instance 9800 // fleet. 9801 InstanceTypeConfigs []*InstanceTypeConfig `type:"list"` 9802 9803 // The launch specification for the instance fleet. 9804 LaunchSpecifications *InstanceFleetProvisioningSpecifications `type:"structure"` 9805 9806 // The friendly name of the instance fleet. 9807 Name *string `type:"string"` 9808 9809 // The target capacity of On-Demand units for the instance fleet, which determines 9810 // how many On-Demand Instances to provision. When the instance fleet launches, 9811 // Amazon EMR tries to provision On-Demand Instances as specified by InstanceTypeConfig. 9812 // Each instance configuration has a specified WeightedCapacity. When an On-Demand 9813 // Instance is provisioned, the WeightedCapacity units count toward the target 9814 // capacity. Amazon EMR provisions instances until the target capacity is totally 9815 // fulfilled, even if this results in an overage. For example, if there are 9816 // 2 units remaining to fulfill capacity, and Amazon EMR can only provision 9817 // an instance with a WeightedCapacity of 5 units, the instance is provisioned, 9818 // and the target capacity is exceeded by 3 units. 9819 // 9820 // If not specified or set to 0, only Spot Instances are provisioned for the 9821 // instance fleet using TargetSpotCapacity. At least one of TargetSpotCapacity 9822 // and TargetOnDemandCapacity should be greater than 0. For a master instance 9823 // fleet, only one of TargetSpotCapacity and TargetOnDemandCapacity can be specified, 9824 // and its value must be 1. 9825 TargetOnDemandCapacity *int64 `type:"integer"` 9826 9827 // The target capacity of Spot units for the instance fleet, which determines 9828 // how many Spot Instances to provision. When the instance fleet launches, Amazon 9829 // EMR tries to provision Spot Instances as specified by InstanceTypeConfig. 9830 // Each instance configuration has a specified WeightedCapacity. When a Spot 9831 // Instance is provisioned, the WeightedCapacity units count toward the target 9832 // capacity. Amazon EMR provisions instances until the target capacity is totally 9833 // fulfilled, even if this results in an overage. For example, if there are 9834 // 2 units remaining to fulfill capacity, and Amazon EMR can only provision 9835 // an instance with a WeightedCapacity of 5 units, the instance is provisioned, 9836 // and the target capacity is exceeded by 3 units. 9837 // 9838 // If not specified or set to 0, only On-Demand Instances are provisioned for 9839 // the instance fleet. At least one of TargetSpotCapacity and TargetOnDemandCapacity 9840 // should be greater than 0. For a master instance fleet, only one of TargetSpotCapacity 9841 // and TargetOnDemandCapacity can be specified, and its value must be 1. 9842 TargetSpotCapacity *int64 `type:"integer"` 9843} 9844 9845// String returns the string representation. 9846// 9847// API parameter values that are decorated as "sensitive" in the API will not 9848// be included in the string output. The member name will be present, but the 9849// value will be replaced with "sensitive". 9850func (s InstanceFleetConfig) String() string { 9851 return awsutil.Prettify(s) 9852} 9853 9854// GoString returns the string representation. 9855// 9856// API parameter values that are decorated as "sensitive" in the API will not 9857// be included in the string output. The member name will be present, but the 9858// value will be replaced with "sensitive". 9859func (s InstanceFleetConfig) GoString() string { 9860 return s.String() 9861} 9862 9863// Validate inspects the fields of the type to determine if they are valid. 9864func (s *InstanceFleetConfig) Validate() error { 9865 invalidParams := request.ErrInvalidParams{Context: "InstanceFleetConfig"} 9866 if s.InstanceFleetType == nil { 9867 invalidParams.Add(request.NewErrParamRequired("InstanceFleetType")) 9868 } 9869 if s.InstanceTypeConfigs != nil { 9870 for i, v := range s.InstanceTypeConfigs { 9871 if v == nil { 9872 continue 9873 } 9874 if err := v.Validate(); err != nil { 9875 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "InstanceTypeConfigs", i), err.(request.ErrInvalidParams)) 9876 } 9877 } 9878 } 9879 if s.LaunchSpecifications != nil { 9880 if err := s.LaunchSpecifications.Validate(); err != nil { 9881 invalidParams.AddNested("LaunchSpecifications", err.(request.ErrInvalidParams)) 9882 } 9883 } 9884 9885 if invalidParams.Len() > 0 { 9886 return invalidParams 9887 } 9888 return nil 9889} 9890 9891// SetInstanceFleetType sets the InstanceFleetType field's value. 9892func (s *InstanceFleetConfig) SetInstanceFleetType(v string) *InstanceFleetConfig { 9893 s.InstanceFleetType = &v 9894 return s 9895} 9896 9897// SetInstanceTypeConfigs sets the InstanceTypeConfigs field's value. 9898func (s *InstanceFleetConfig) SetInstanceTypeConfigs(v []*InstanceTypeConfig) *InstanceFleetConfig { 9899 s.InstanceTypeConfigs = v 9900 return s 9901} 9902 9903// SetLaunchSpecifications sets the LaunchSpecifications field's value. 9904func (s *InstanceFleetConfig) SetLaunchSpecifications(v *InstanceFleetProvisioningSpecifications) *InstanceFleetConfig { 9905 s.LaunchSpecifications = v 9906 return s 9907} 9908 9909// SetName sets the Name field's value. 9910func (s *InstanceFleetConfig) SetName(v string) *InstanceFleetConfig { 9911 s.Name = &v 9912 return s 9913} 9914 9915// SetTargetOnDemandCapacity sets the TargetOnDemandCapacity field's value. 9916func (s *InstanceFleetConfig) SetTargetOnDemandCapacity(v int64) *InstanceFleetConfig { 9917 s.TargetOnDemandCapacity = &v 9918 return s 9919} 9920 9921// SetTargetSpotCapacity sets the TargetSpotCapacity field's value. 9922func (s *InstanceFleetConfig) SetTargetSpotCapacity(v int64) *InstanceFleetConfig { 9923 s.TargetSpotCapacity = &v 9924 return s 9925} 9926 9927// Configuration parameters for an instance fleet modification request. 9928// 9929// The instance fleet configuration is available only in Amazon EMR versions 9930// 4.8.0 and later, excluding 5.0.x versions. 9931type InstanceFleetModifyConfig struct { 9932 _ struct{} `type:"structure"` 9933 9934 // A unique identifier for the instance fleet. 9935 // 9936 // InstanceFleetId is a required field 9937 InstanceFleetId *string `type:"string" required:"true"` 9938 9939 // The target capacity of On-Demand units for the instance fleet. For more information 9940 // see InstanceFleetConfig$TargetOnDemandCapacity. 9941 TargetOnDemandCapacity *int64 `type:"integer"` 9942 9943 // The target capacity of Spot units for the instance fleet. For more information, 9944 // see InstanceFleetConfig$TargetSpotCapacity. 9945 TargetSpotCapacity *int64 `type:"integer"` 9946} 9947 9948// String returns the string representation. 9949// 9950// API parameter values that are decorated as "sensitive" in the API will not 9951// be included in the string output. The member name will be present, but the 9952// value will be replaced with "sensitive". 9953func (s InstanceFleetModifyConfig) String() string { 9954 return awsutil.Prettify(s) 9955} 9956 9957// GoString returns the string representation. 9958// 9959// API parameter values that are decorated as "sensitive" in the API will not 9960// be included in the string output. The member name will be present, but the 9961// value will be replaced with "sensitive". 9962func (s InstanceFleetModifyConfig) GoString() string { 9963 return s.String() 9964} 9965 9966// Validate inspects the fields of the type to determine if they are valid. 9967func (s *InstanceFleetModifyConfig) Validate() error { 9968 invalidParams := request.ErrInvalidParams{Context: "InstanceFleetModifyConfig"} 9969 if s.InstanceFleetId == nil { 9970 invalidParams.Add(request.NewErrParamRequired("InstanceFleetId")) 9971 } 9972 9973 if invalidParams.Len() > 0 { 9974 return invalidParams 9975 } 9976 return nil 9977} 9978 9979// SetInstanceFleetId sets the InstanceFleetId field's value. 9980func (s *InstanceFleetModifyConfig) SetInstanceFleetId(v string) *InstanceFleetModifyConfig { 9981 s.InstanceFleetId = &v 9982 return s 9983} 9984 9985// SetTargetOnDemandCapacity sets the TargetOnDemandCapacity field's value. 9986func (s *InstanceFleetModifyConfig) SetTargetOnDemandCapacity(v int64) *InstanceFleetModifyConfig { 9987 s.TargetOnDemandCapacity = &v 9988 return s 9989} 9990 9991// SetTargetSpotCapacity sets the TargetSpotCapacity field's value. 9992func (s *InstanceFleetModifyConfig) SetTargetSpotCapacity(v int64) *InstanceFleetModifyConfig { 9993 s.TargetSpotCapacity = &v 9994 return s 9995} 9996 9997// The launch specification for Spot Instances in the fleet, which determines 9998// the defined duration, provisioning timeout behavior, and allocation strategy. 9999// 10000// The instance fleet configuration is available only in Amazon EMR versions 10001// 4.8.0 and later, excluding 5.0.x versions. On-Demand and Spot Instance allocation 10002// strategies are available in Amazon EMR version 5.12.1 and later. 10003type InstanceFleetProvisioningSpecifications struct { 10004 _ struct{} `type:"structure"` 10005 10006 // The launch specification for On-Demand Instances in the instance fleet, which 10007 // determines the allocation strategy. 10008 // 10009 // The instance fleet configuration is available only in Amazon EMR versions 10010 // 4.8.0 and later, excluding 5.0.x versions. On-Demand Instances allocation 10011 // strategy is available in Amazon EMR version 5.12.1 and later. 10012 OnDemandSpecification *OnDemandProvisioningSpecification `type:"structure"` 10013 10014 // The launch specification for Spot Instances in the fleet, which determines 10015 // the defined duration, provisioning timeout behavior, and allocation strategy. 10016 SpotSpecification *SpotProvisioningSpecification `type:"structure"` 10017} 10018 10019// String returns the string representation. 10020// 10021// API parameter values that are decorated as "sensitive" in the API will not 10022// be included in the string output. The member name will be present, but the 10023// value will be replaced with "sensitive". 10024func (s InstanceFleetProvisioningSpecifications) String() string { 10025 return awsutil.Prettify(s) 10026} 10027 10028// GoString returns the string representation. 10029// 10030// API parameter values that are decorated as "sensitive" in the API will not 10031// be included in the string output. The member name will be present, but the 10032// value will be replaced with "sensitive". 10033func (s InstanceFleetProvisioningSpecifications) GoString() string { 10034 return s.String() 10035} 10036 10037// Validate inspects the fields of the type to determine if they are valid. 10038func (s *InstanceFleetProvisioningSpecifications) Validate() error { 10039 invalidParams := request.ErrInvalidParams{Context: "InstanceFleetProvisioningSpecifications"} 10040 if s.OnDemandSpecification != nil { 10041 if err := s.OnDemandSpecification.Validate(); err != nil { 10042 invalidParams.AddNested("OnDemandSpecification", err.(request.ErrInvalidParams)) 10043 } 10044 } 10045 if s.SpotSpecification != nil { 10046 if err := s.SpotSpecification.Validate(); err != nil { 10047 invalidParams.AddNested("SpotSpecification", err.(request.ErrInvalidParams)) 10048 } 10049 } 10050 10051 if invalidParams.Len() > 0 { 10052 return invalidParams 10053 } 10054 return nil 10055} 10056 10057// SetOnDemandSpecification sets the OnDemandSpecification field's value. 10058func (s *InstanceFleetProvisioningSpecifications) SetOnDemandSpecification(v *OnDemandProvisioningSpecification) *InstanceFleetProvisioningSpecifications { 10059 s.OnDemandSpecification = v 10060 return s 10061} 10062 10063// SetSpotSpecification sets the SpotSpecification field's value. 10064func (s *InstanceFleetProvisioningSpecifications) SetSpotSpecification(v *SpotProvisioningSpecification) *InstanceFleetProvisioningSpecifications { 10065 s.SpotSpecification = v 10066 return s 10067} 10068 10069// Provides status change reason details for the instance fleet. 10070// 10071// The instance fleet configuration is available only in Amazon EMR versions 10072// 4.8.0 and later, excluding 5.0.x versions. 10073type InstanceFleetStateChangeReason struct { 10074 _ struct{} `type:"structure"` 10075 10076 // A code corresponding to the reason the state change occurred. 10077 Code *string `type:"string" enum:"InstanceFleetStateChangeReasonCode"` 10078 10079 // An explanatory message. 10080 Message *string `type:"string"` 10081} 10082 10083// String returns the string representation. 10084// 10085// API parameter values that are decorated as "sensitive" in the API will not 10086// be included in the string output. The member name will be present, but the 10087// value will be replaced with "sensitive". 10088func (s InstanceFleetStateChangeReason) String() string { 10089 return awsutil.Prettify(s) 10090} 10091 10092// GoString returns the string representation. 10093// 10094// API parameter values that are decorated as "sensitive" in the API will not 10095// be included in the string output. The member name will be present, but the 10096// value will be replaced with "sensitive". 10097func (s InstanceFleetStateChangeReason) GoString() string { 10098 return s.String() 10099} 10100 10101// SetCode sets the Code field's value. 10102func (s *InstanceFleetStateChangeReason) SetCode(v string) *InstanceFleetStateChangeReason { 10103 s.Code = &v 10104 return s 10105} 10106 10107// SetMessage sets the Message field's value. 10108func (s *InstanceFleetStateChangeReason) SetMessage(v string) *InstanceFleetStateChangeReason { 10109 s.Message = &v 10110 return s 10111} 10112 10113// The status of the instance fleet. 10114// 10115// The instance fleet configuration is available only in Amazon EMR versions 10116// 4.8.0 and later, excluding 5.0.x versions. 10117type InstanceFleetStatus struct { 10118 _ struct{} `type:"structure"` 10119 10120 // A code representing the instance fleet status. 10121 // 10122 // * PROVISIONING—The instance fleet is provisioning EC2 resources and 10123 // is not yet ready to run jobs. 10124 // 10125 // * BOOTSTRAPPING—EC2 instances and other resources have been provisioned 10126 // and the bootstrap actions specified for the instances are underway. 10127 // 10128 // * RUNNING—EC2 instances and other resources are running. They are either 10129 // executing jobs or waiting to execute jobs. 10130 // 10131 // * RESIZING—A resize operation is underway. EC2 instances are either 10132 // being added or removed. 10133 // 10134 // * SUSPENDED—A resize operation could not complete. Existing EC2 instances 10135 // are running, but instances can't be added or removed. 10136 // 10137 // * TERMINATING—The instance fleet is terminating EC2 instances. 10138 // 10139 // * TERMINATED—The instance fleet is no longer active, and all EC2 instances 10140 // have been terminated. 10141 State *string `type:"string" enum:"InstanceFleetState"` 10142 10143 // Provides status change reason details for the instance fleet. 10144 StateChangeReason *InstanceFleetStateChangeReason `type:"structure"` 10145 10146 // Provides historical timestamps for the instance fleet, including the time 10147 // of creation, the time it became ready to run jobs, and the time of termination. 10148 Timeline *InstanceFleetTimeline `type:"structure"` 10149} 10150 10151// String returns the string representation. 10152// 10153// API parameter values that are decorated as "sensitive" in the API will not 10154// be included in the string output. The member name will be present, but the 10155// value will be replaced with "sensitive". 10156func (s InstanceFleetStatus) String() string { 10157 return awsutil.Prettify(s) 10158} 10159 10160// GoString returns the string representation. 10161// 10162// API parameter values that are decorated as "sensitive" in the API will not 10163// be included in the string output. The member name will be present, but the 10164// value will be replaced with "sensitive". 10165func (s InstanceFleetStatus) GoString() string { 10166 return s.String() 10167} 10168 10169// SetState sets the State field's value. 10170func (s *InstanceFleetStatus) SetState(v string) *InstanceFleetStatus { 10171 s.State = &v 10172 return s 10173} 10174 10175// SetStateChangeReason sets the StateChangeReason field's value. 10176func (s *InstanceFleetStatus) SetStateChangeReason(v *InstanceFleetStateChangeReason) *InstanceFleetStatus { 10177 s.StateChangeReason = v 10178 return s 10179} 10180 10181// SetTimeline sets the Timeline field's value. 10182func (s *InstanceFleetStatus) SetTimeline(v *InstanceFleetTimeline) *InstanceFleetStatus { 10183 s.Timeline = v 10184 return s 10185} 10186 10187// Provides historical timestamps for the instance fleet, including the time 10188// of creation, the time it became ready to run jobs, and the time of termination. 10189// 10190// The instance fleet configuration is available only in Amazon EMR versions 10191// 4.8.0 and later, excluding 5.0.x versions. 10192type InstanceFleetTimeline struct { 10193 _ struct{} `type:"structure"` 10194 10195 // The time and date the instance fleet was created. 10196 CreationDateTime *time.Time `type:"timestamp"` 10197 10198 // The time and date the instance fleet terminated. 10199 EndDateTime *time.Time `type:"timestamp"` 10200 10201 // The time and date the instance fleet was ready to run jobs. 10202 ReadyDateTime *time.Time `type:"timestamp"` 10203} 10204 10205// String returns the string representation. 10206// 10207// API parameter values that are decorated as "sensitive" in the API will not 10208// be included in the string output. The member name will be present, but the 10209// value will be replaced with "sensitive". 10210func (s InstanceFleetTimeline) String() string { 10211 return awsutil.Prettify(s) 10212} 10213 10214// GoString returns the string representation. 10215// 10216// API parameter values that are decorated as "sensitive" in the API will not 10217// be included in the string output. The member name will be present, but the 10218// value will be replaced with "sensitive". 10219func (s InstanceFleetTimeline) GoString() string { 10220 return s.String() 10221} 10222 10223// SetCreationDateTime sets the CreationDateTime field's value. 10224func (s *InstanceFleetTimeline) SetCreationDateTime(v time.Time) *InstanceFleetTimeline { 10225 s.CreationDateTime = &v 10226 return s 10227} 10228 10229// SetEndDateTime sets the EndDateTime field's value. 10230func (s *InstanceFleetTimeline) SetEndDateTime(v time.Time) *InstanceFleetTimeline { 10231 s.EndDateTime = &v 10232 return s 10233} 10234 10235// SetReadyDateTime sets the ReadyDateTime field's value. 10236func (s *InstanceFleetTimeline) SetReadyDateTime(v time.Time) *InstanceFleetTimeline { 10237 s.ReadyDateTime = &v 10238 return s 10239} 10240 10241// This entity represents an instance group, which is a group of instances that 10242// have common purpose. For example, CORE instance group is used for HDFS. 10243type InstanceGroup struct { 10244 _ struct{} `type:"structure"` 10245 10246 // An automatic scaling policy for a core instance group or task instance group 10247 // in an Amazon EMR cluster. The automatic scaling policy defines how an instance 10248 // group dynamically adds and terminates EC2 instances in response to the value 10249 // of a CloudWatch metric. See PutAutoScalingPolicy. 10250 AutoScalingPolicy *AutoScalingPolicyDescription `type:"structure"` 10251 10252 // If specified, indicates that the instance group uses Spot Instances. This 10253 // is the maximum price you are willing to pay for Spot Instances. Specify OnDemandPrice 10254 // to set the amount equal to the On-Demand price, or specify an amount in USD. 10255 BidPrice *string `type:"string"` 10256 10257 // 10258 // Amazon EMR releases 4.x or later. 10259 // 10260 // The list of configurations supplied for an Amazon EMR cluster instance group. 10261 // You can specify a separate configuration for each instance group (master, 10262 // core, and task). 10263 Configurations []*Configuration `type:"list"` 10264 10265 // The version number of the requested configuration specification for this 10266 // instance group. 10267 ConfigurationsVersion *int64 `type:"long"` 10268 10269 // The custom AMI ID to use for the provisioned instance group. 10270 CustomAmiId *string `type:"string"` 10271 10272 // The EBS block devices that are mapped to this instance group. 10273 EbsBlockDevices []*EbsBlockDevice `type:"list"` 10274 10275 // If the instance group is EBS-optimized. An Amazon EBS-optimized instance 10276 // uses an optimized configuration stack and provides additional, dedicated 10277 // capacity for Amazon EBS I/O. 10278 EbsOptimized *bool `type:"boolean"` 10279 10280 // The identifier of the instance group. 10281 Id *string `type:"string"` 10282 10283 // The type of the instance group. Valid values are MASTER, CORE or TASK. 10284 InstanceGroupType *string `type:"string" enum:"InstanceGroupType"` 10285 10286 // The EC2 instance type for all instances in the instance group. 10287 InstanceType *string `min:"1" type:"string"` 10288 10289 // A list of configurations that were successfully applied for an instance group 10290 // last time. 10291 LastSuccessfullyAppliedConfigurations []*Configuration `type:"list"` 10292 10293 // The version number of a configuration specification that was successfully 10294 // applied for an instance group last time. 10295 LastSuccessfullyAppliedConfigurationsVersion *int64 `type:"long"` 10296 10297 // The marketplace to provision instances for this group. Valid values are ON_DEMAND 10298 // or SPOT. 10299 Market *string `type:"string" enum:"MarketType"` 10300 10301 // The name of the instance group. 10302 Name *string `type:"string"` 10303 10304 // The target number of instances for the instance group. 10305 RequestedInstanceCount *int64 `type:"integer"` 10306 10307 // The number of instances currently running in this instance group. 10308 RunningInstanceCount *int64 `type:"integer"` 10309 10310 // Policy for customizing shrink operations. 10311 ShrinkPolicy *ShrinkPolicy `type:"structure"` 10312 10313 // The current status of the instance group. 10314 Status *InstanceGroupStatus `type:"structure"` 10315} 10316 10317// String returns the string representation. 10318// 10319// API parameter values that are decorated as "sensitive" in the API will not 10320// be included in the string output. The member name will be present, but the 10321// value will be replaced with "sensitive". 10322func (s InstanceGroup) String() string { 10323 return awsutil.Prettify(s) 10324} 10325 10326// GoString returns the string representation. 10327// 10328// API parameter values that are decorated as "sensitive" in the API will not 10329// be included in the string output. The member name will be present, but the 10330// value will be replaced with "sensitive". 10331func (s InstanceGroup) GoString() string { 10332 return s.String() 10333} 10334 10335// SetAutoScalingPolicy sets the AutoScalingPolicy field's value. 10336func (s *InstanceGroup) SetAutoScalingPolicy(v *AutoScalingPolicyDescription) *InstanceGroup { 10337 s.AutoScalingPolicy = v 10338 return s 10339} 10340 10341// SetBidPrice sets the BidPrice field's value. 10342func (s *InstanceGroup) SetBidPrice(v string) *InstanceGroup { 10343 s.BidPrice = &v 10344 return s 10345} 10346 10347// SetConfigurations sets the Configurations field's value. 10348func (s *InstanceGroup) SetConfigurations(v []*Configuration) *InstanceGroup { 10349 s.Configurations = v 10350 return s 10351} 10352 10353// SetConfigurationsVersion sets the ConfigurationsVersion field's value. 10354func (s *InstanceGroup) SetConfigurationsVersion(v int64) *InstanceGroup { 10355 s.ConfigurationsVersion = &v 10356 return s 10357} 10358 10359// SetCustomAmiId sets the CustomAmiId field's value. 10360func (s *InstanceGroup) SetCustomAmiId(v string) *InstanceGroup { 10361 s.CustomAmiId = &v 10362 return s 10363} 10364 10365// SetEbsBlockDevices sets the EbsBlockDevices field's value. 10366func (s *InstanceGroup) SetEbsBlockDevices(v []*EbsBlockDevice) *InstanceGroup { 10367 s.EbsBlockDevices = v 10368 return s 10369} 10370 10371// SetEbsOptimized sets the EbsOptimized field's value. 10372func (s *InstanceGroup) SetEbsOptimized(v bool) *InstanceGroup { 10373 s.EbsOptimized = &v 10374 return s 10375} 10376 10377// SetId sets the Id field's value. 10378func (s *InstanceGroup) SetId(v string) *InstanceGroup { 10379 s.Id = &v 10380 return s 10381} 10382 10383// SetInstanceGroupType sets the InstanceGroupType field's value. 10384func (s *InstanceGroup) SetInstanceGroupType(v string) *InstanceGroup { 10385 s.InstanceGroupType = &v 10386 return s 10387} 10388 10389// SetInstanceType sets the InstanceType field's value. 10390func (s *InstanceGroup) SetInstanceType(v string) *InstanceGroup { 10391 s.InstanceType = &v 10392 return s 10393} 10394 10395// SetLastSuccessfullyAppliedConfigurations sets the LastSuccessfullyAppliedConfigurations field's value. 10396func (s *InstanceGroup) SetLastSuccessfullyAppliedConfigurations(v []*Configuration) *InstanceGroup { 10397 s.LastSuccessfullyAppliedConfigurations = v 10398 return s 10399} 10400 10401// SetLastSuccessfullyAppliedConfigurationsVersion sets the LastSuccessfullyAppliedConfigurationsVersion field's value. 10402func (s *InstanceGroup) SetLastSuccessfullyAppliedConfigurationsVersion(v int64) *InstanceGroup { 10403 s.LastSuccessfullyAppliedConfigurationsVersion = &v 10404 return s 10405} 10406 10407// SetMarket sets the Market field's value. 10408func (s *InstanceGroup) SetMarket(v string) *InstanceGroup { 10409 s.Market = &v 10410 return s 10411} 10412 10413// SetName sets the Name field's value. 10414func (s *InstanceGroup) SetName(v string) *InstanceGroup { 10415 s.Name = &v 10416 return s 10417} 10418 10419// SetRequestedInstanceCount sets the RequestedInstanceCount field's value. 10420func (s *InstanceGroup) SetRequestedInstanceCount(v int64) *InstanceGroup { 10421 s.RequestedInstanceCount = &v 10422 return s 10423} 10424 10425// SetRunningInstanceCount sets the RunningInstanceCount field's value. 10426func (s *InstanceGroup) SetRunningInstanceCount(v int64) *InstanceGroup { 10427 s.RunningInstanceCount = &v 10428 return s 10429} 10430 10431// SetShrinkPolicy sets the ShrinkPolicy field's value. 10432func (s *InstanceGroup) SetShrinkPolicy(v *ShrinkPolicy) *InstanceGroup { 10433 s.ShrinkPolicy = v 10434 return s 10435} 10436 10437// SetStatus sets the Status field's value. 10438func (s *InstanceGroup) SetStatus(v *InstanceGroupStatus) *InstanceGroup { 10439 s.Status = v 10440 return s 10441} 10442 10443// Configuration defining a new instance group. 10444type InstanceGroupConfig struct { 10445 _ struct{} `type:"structure"` 10446 10447 // An automatic scaling policy for a core instance group or task instance group 10448 // in an Amazon EMR cluster. The automatic scaling policy defines how an instance 10449 // group dynamically adds and terminates EC2 instances in response to the value 10450 // of a CloudWatch metric. See PutAutoScalingPolicy. 10451 AutoScalingPolicy *AutoScalingPolicy `type:"structure"` 10452 10453 // If specified, indicates that the instance group uses Spot Instances. This 10454 // is the maximum price you are willing to pay for Spot Instances. Specify OnDemandPrice 10455 // to set the amount equal to the On-Demand price, or specify an amount in USD. 10456 BidPrice *string `type:"string"` 10457 10458 // 10459 // Amazon EMR releases 4.x or later. 10460 // 10461 // The list of configurations supplied for an EMR cluster instance group. You 10462 // can specify a separate configuration for each instance group (master, core, 10463 // and task). 10464 Configurations []*Configuration `type:"list"` 10465 10466 // The custom AMI ID to use for the provisioned instance group. 10467 CustomAmiId *string `type:"string"` 10468 10469 // EBS configurations that will be attached to each EC2 instance in the instance 10470 // group. 10471 EbsConfiguration *EbsConfiguration `type:"structure"` 10472 10473 // Target number of instances for the instance group. 10474 // 10475 // InstanceCount is a required field 10476 InstanceCount *int64 `type:"integer" required:"true"` 10477 10478 // The role of the instance group in the cluster. 10479 // 10480 // InstanceRole is a required field 10481 InstanceRole *string `type:"string" required:"true" enum:"InstanceRoleType"` 10482 10483 // The EC2 instance type for all instances in the instance group. 10484 // 10485 // InstanceType is a required field 10486 InstanceType *string `min:"1" type:"string" required:"true"` 10487 10488 // Market type of the EC2 instances used to create a cluster node. 10489 Market *string `type:"string" enum:"MarketType"` 10490 10491 // Friendly name given to the instance group. 10492 Name *string `type:"string"` 10493} 10494 10495// String returns the string representation. 10496// 10497// API parameter values that are decorated as "sensitive" in the API will not 10498// be included in the string output. The member name will be present, but the 10499// value will be replaced with "sensitive". 10500func (s InstanceGroupConfig) String() string { 10501 return awsutil.Prettify(s) 10502} 10503 10504// GoString returns the string representation. 10505// 10506// API parameter values that are decorated as "sensitive" in the API will not 10507// be included in the string output. The member name will be present, but the 10508// value will be replaced with "sensitive". 10509func (s InstanceGroupConfig) GoString() string { 10510 return s.String() 10511} 10512 10513// Validate inspects the fields of the type to determine if they are valid. 10514func (s *InstanceGroupConfig) Validate() error { 10515 invalidParams := request.ErrInvalidParams{Context: "InstanceGroupConfig"} 10516 if s.InstanceCount == nil { 10517 invalidParams.Add(request.NewErrParamRequired("InstanceCount")) 10518 } 10519 if s.InstanceRole == nil { 10520 invalidParams.Add(request.NewErrParamRequired("InstanceRole")) 10521 } 10522 if s.InstanceType == nil { 10523 invalidParams.Add(request.NewErrParamRequired("InstanceType")) 10524 } 10525 if s.InstanceType != nil && len(*s.InstanceType) < 1 { 10526 invalidParams.Add(request.NewErrParamMinLen("InstanceType", 1)) 10527 } 10528 if s.AutoScalingPolicy != nil { 10529 if err := s.AutoScalingPolicy.Validate(); err != nil { 10530 invalidParams.AddNested("AutoScalingPolicy", err.(request.ErrInvalidParams)) 10531 } 10532 } 10533 if s.EbsConfiguration != nil { 10534 if err := s.EbsConfiguration.Validate(); err != nil { 10535 invalidParams.AddNested("EbsConfiguration", err.(request.ErrInvalidParams)) 10536 } 10537 } 10538 10539 if invalidParams.Len() > 0 { 10540 return invalidParams 10541 } 10542 return nil 10543} 10544 10545// SetAutoScalingPolicy sets the AutoScalingPolicy field's value. 10546func (s *InstanceGroupConfig) SetAutoScalingPolicy(v *AutoScalingPolicy) *InstanceGroupConfig { 10547 s.AutoScalingPolicy = v 10548 return s 10549} 10550 10551// SetBidPrice sets the BidPrice field's value. 10552func (s *InstanceGroupConfig) SetBidPrice(v string) *InstanceGroupConfig { 10553 s.BidPrice = &v 10554 return s 10555} 10556 10557// SetConfigurations sets the Configurations field's value. 10558func (s *InstanceGroupConfig) SetConfigurations(v []*Configuration) *InstanceGroupConfig { 10559 s.Configurations = v 10560 return s 10561} 10562 10563// SetCustomAmiId sets the CustomAmiId field's value. 10564func (s *InstanceGroupConfig) SetCustomAmiId(v string) *InstanceGroupConfig { 10565 s.CustomAmiId = &v 10566 return s 10567} 10568 10569// SetEbsConfiguration sets the EbsConfiguration field's value. 10570func (s *InstanceGroupConfig) SetEbsConfiguration(v *EbsConfiguration) *InstanceGroupConfig { 10571 s.EbsConfiguration = v 10572 return s 10573} 10574 10575// SetInstanceCount sets the InstanceCount field's value. 10576func (s *InstanceGroupConfig) SetInstanceCount(v int64) *InstanceGroupConfig { 10577 s.InstanceCount = &v 10578 return s 10579} 10580 10581// SetInstanceRole sets the InstanceRole field's value. 10582func (s *InstanceGroupConfig) SetInstanceRole(v string) *InstanceGroupConfig { 10583 s.InstanceRole = &v 10584 return s 10585} 10586 10587// SetInstanceType sets the InstanceType field's value. 10588func (s *InstanceGroupConfig) SetInstanceType(v string) *InstanceGroupConfig { 10589 s.InstanceType = &v 10590 return s 10591} 10592 10593// SetMarket sets the Market field's value. 10594func (s *InstanceGroupConfig) SetMarket(v string) *InstanceGroupConfig { 10595 s.Market = &v 10596 return s 10597} 10598 10599// SetName sets the Name field's value. 10600func (s *InstanceGroupConfig) SetName(v string) *InstanceGroupConfig { 10601 s.Name = &v 10602 return s 10603} 10604 10605// Detailed information about an instance group. 10606type InstanceGroupDetail struct { 10607 _ struct{} `type:"structure"` 10608 10609 // If specified, indicates that the instance group uses Spot Instances. This 10610 // is the maximum price you are willing to pay for Spot Instances. Specify OnDemandPrice 10611 // to set the amount equal to the On-Demand price, or specify an amount in USD. 10612 BidPrice *string `type:"string"` 10613 10614 // The date/time the instance group was created. 10615 // 10616 // CreationDateTime is a required field 10617 CreationDateTime *time.Time `type:"timestamp" required:"true"` 10618 10619 // The custom AMI ID to use for the provisioned instance group. 10620 CustomAmiId *string `type:"string"` 10621 10622 // The date/time the instance group was terminated. 10623 EndDateTime *time.Time `type:"timestamp"` 10624 10625 // Unique identifier for the instance group. 10626 InstanceGroupId *string `type:"string"` 10627 10628 // Target number of instances to run in the instance group. 10629 // 10630 // InstanceRequestCount is a required field 10631 InstanceRequestCount *int64 `type:"integer" required:"true"` 10632 10633 // Instance group role in the cluster 10634 // 10635 // InstanceRole is a required field 10636 InstanceRole *string `type:"string" required:"true" enum:"InstanceRoleType"` 10637 10638 // Actual count of running instances. 10639 // 10640 // InstanceRunningCount is a required field 10641 InstanceRunningCount *int64 `type:"integer" required:"true"` 10642 10643 // EC2 instance type. 10644 // 10645 // InstanceType is a required field 10646 InstanceType *string `min:"1" type:"string" required:"true"` 10647 10648 // Details regarding the state of the instance group. 10649 LastStateChangeReason *string `type:"string"` 10650 10651 // Market type of the EC2 instances used to create a cluster node. 10652 // 10653 // Market is a required field 10654 Market *string `type:"string" required:"true" enum:"MarketType"` 10655 10656 // Friendly name for the instance group. 10657 Name *string `type:"string"` 10658 10659 // The date/time the instance group was available to the cluster. 10660 ReadyDateTime *time.Time `type:"timestamp"` 10661 10662 // The date/time the instance group was started. 10663 StartDateTime *time.Time `type:"timestamp"` 10664 10665 // State of instance group. The following values are deprecated: STARTING, TERMINATED, 10666 // and FAILED. 10667 // 10668 // State is a required field 10669 State *string `type:"string" required:"true" enum:"InstanceGroupState"` 10670} 10671 10672// String returns the string representation. 10673// 10674// API parameter values that are decorated as "sensitive" in the API will not 10675// be included in the string output. The member name will be present, but the 10676// value will be replaced with "sensitive". 10677func (s InstanceGroupDetail) String() string { 10678 return awsutil.Prettify(s) 10679} 10680 10681// GoString returns the string representation. 10682// 10683// API parameter values that are decorated as "sensitive" in the API will not 10684// be included in the string output. The member name will be present, but the 10685// value will be replaced with "sensitive". 10686func (s InstanceGroupDetail) GoString() string { 10687 return s.String() 10688} 10689 10690// SetBidPrice sets the BidPrice field's value. 10691func (s *InstanceGroupDetail) SetBidPrice(v string) *InstanceGroupDetail { 10692 s.BidPrice = &v 10693 return s 10694} 10695 10696// SetCreationDateTime sets the CreationDateTime field's value. 10697func (s *InstanceGroupDetail) SetCreationDateTime(v time.Time) *InstanceGroupDetail { 10698 s.CreationDateTime = &v 10699 return s 10700} 10701 10702// SetCustomAmiId sets the CustomAmiId field's value. 10703func (s *InstanceGroupDetail) SetCustomAmiId(v string) *InstanceGroupDetail { 10704 s.CustomAmiId = &v 10705 return s 10706} 10707 10708// SetEndDateTime sets the EndDateTime field's value. 10709func (s *InstanceGroupDetail) SetEndDateTime(v time.Time) *InstanceGroupDetail { 10710 s.EndDateTime = &v 10711 return s 10712} 10713 10714// SetInstanceGroupId sets the InstanceGroupId field's value. 10715func (s *InstanceGroupDetail) SetInstanceGroupId(v string) *InstanceGroupDetail { 10716 s.InstanceGroupId = &v 10717 return s 10718} 10719 10720// SetInstanceRequestCount sets the InstanceRequestCount field's value. 10721func (s *InstanceGroupDetail) SetInstanceRequestCount(v int64) *InstanceGroupDetail { 10722 s.InstanceRequestCount = &v 10723 return s 10724} 10725 10726// SetInstanceRole sets the InstanceRole field's value. 10727func (s *InstanceGroupDetail) SetInstanceRole(v string) *InstanceGroupDetail { 10728 s.InstanceRole = &v 10729 return s 10730} 10731 10732// SetInstanceRunningCount sets the InstanceRunningCount field's value. 10733func (s *InstanceGroupDetail) SetInstanceRunningCount(v int64) *InstanceGroupDetail { 10734 s.InstanceRunningCount = &v 10735 return s 10736} 10737 10738// SetInstanceType sets the InstanceType field's value. 10739func (s *InstanceGroupDetail) SetInstanceType(v string) *InstanceGroupDetail { 10740 s.InstanceType = &v 10741 return s 10742} 10743 10744// SetLastStateChangeReason sets the LastStateChangeReason field's value. 10745func (s *InstanceGroupDetail) SetLastStateChangeReason(v string) *InstanceGroupDetail { 10746 s.LastStateChangeReason = &v 10747 return s 10748} 10749 10750// SetMarket sets the Market field's value. 10751func (s *InstanceGroupDetail) SetMarket(v string) *InstanceGroupDetail { 10752 s.Market = &v 10753 return s 10754} 10755 10756// SetName sets the Name field's value. 10757func (s *InstanceGroupDetail) SetName(v string) *InstanceGroupDetail { 10758 s.Name = &v 10759 return s 10760} 10761 10762// SetReadyDateTime sets the ReadyDateTime field's value. 10763func (s *InstanceGroupDetail) SetReadyDateTime(v time.Time) *InstanceGroupDetail { 10764 s.ReadyDateTime = &v 10765 return s 10766} 10767 10768// SetStartDateTime sets the StartDateTime field's value. 10769func (s *InstanceGroupDetail) SetStartDateTime(v time.Time) *InstanceGroupDetail { 10770 s.StartDateTime = &v 10771 return s 10772} 10773 10774// SetState sets the State field's value. 10775func (s *InstanceGroupDetail) SetState(v string) *InstanceGroupDetail { 10776 s.State = &v 10777 return s 10778} 10779 10780// Modify the size or configurations of an instance group. 10781type InstanceGroupModifyConfig struct { 10782 _ struct{} `type:"structure"` 10783 10784 // A list of new or modified configurations to apply for an instance group. 10785 Configurations []*Configuration `type:"list"` 10786 10787 // The EC2 InstanceIds to terminate. After you terminate the instances, the 10788 // instance group will not return to its original requested size. 10789 EC2InstanceIdsToTerminate []*string `type:"list"` 10790 10791 // Target size for the instance group. 10792 InstanceCount *int64 `type:"integer"` 10793 10794 // Unique ID of the instance group to modify. 10795 // 10796 // InstanceGroupId is a required field 10797 InstanceGroupId *string `type:"string" required:"true"` 10798 10799 // Policy for customizing shrink operations. 10800 ShrinkPolicy *ShrinkPolicy `type:"structure"` 10801} 10802 10803// String returns the string representation. 10804// 10805// API parameter values that are decorated as "sensitive" in the API will not 10806// be included in the string output. The member name will be present, but the 10807// value will be replaced with "sensitive". 10808func (s InstanceGroupModifyConfig) String() string { 10809 return awsutil.Prettify(s) 10810} 10811 10812// GoString returns the string representation. 10813// 10814// API parameter values that are decorated as "sensitive" in the API will not 10815// be included in the string output. The member name will be present, but the 10816// value will be replaced with "sensitive". 10817func (s InstanceGroupModifyConfig) GoString() string { 10818 return s.String() 10819} 10820 10821// Validate inspects the fields of the type to determine if they are valid. 10822func (s *InstanceGroupModifyConfig) Validate() error { 10823 invalidParams := request.ErrInvalidParams{Context: "InstanceGroupModifyConfig"} 10824 if s.InstanceGroupId == nil { 10825 invalidParams.Add(request.NewErrParamRequired("InstanceGroupId")) 10826 } 10827 10828 if invalidParams.Len() > 0 { 10829 return invalidParams 10830 } 10831 return nil 10832} 10833 10834// SetConfigurations sets the Configurations field's value. 10835func (s *InstanceGroupModifyConfig) SetConfigurations(v []*Configuration) *InstanceGroupModifyConfig { 10836 s.Configurations = v 10837 return s 10838} 10839 10840// SetEC2InstanceIdsToTerminate sets the EC2InstanceIdsToTerminate field's value. 10841func (s *InstanceGroupModifyConfig) SetEC2InstanceIdsToTerminate(v []*string) *InstanceGroupModifyConfig { 10842 s.EC2InstanceIdsToTerminate = v 10843 return s 10844} 10845 10846// SetInstanceCount sets the InstanceCount field's value. 10847func (s *InstanceGroupModifyConfig) SetInstanceCount(v int64) *InstanceGroupModifyConfig { 10848 s.InstanceCount = &v 10849 return s 10850} 10851 10852// SetInstanceGroupId sets the InstanceGroupId field's value. 10853func (s *InstanceGroupModifyConfig) SetInstanceGroupId(v string) *InstanceGroupModifyConfig { 10854 s.InstanceGroupId = &v 10855 return s 10856} 10857 10858// SetShrinkPolicy sets the ShrinkPolicy field's value. 10859func (s *InstanceGroupModifyConfig) SetShrinkPolicy(v *ShrinkPolicy) *InstanceGroupModifyConfig { 10860 s.ShrinkPolicy = v 10861 return s 10862} 10863 10864// The status change reason details for the instance group. 10865type InstanceGroupStateChangeReason struct { 10866 _ struct{} `type:"structure"` 10867 10868 // The programmable code for the state change reason. 10869 Code *string `type:"string" enum:"InstanceGroupStateChangeReasonCode"` 10870 10871 // The status change reason description. 10872 Message *string `type:"string"` 10873} 10874 10875// String returns the string representation. 10876// 10877// API parameter values that are decorated as "sensitive" in the API will not 10878// be included in the string output. The member name will be present, but the 10879// value will be replaced with "sensitive". 10880func (s InstanceGroupStateChangeReason) String() string { 10881 return awsutil.Prettify(s) 10882} 10883 10884// GoString returns the string representation. 10885// 10886// API parameter values that are decorated as "sensitive" in the API will not 10887// be included in the string output. The member name will be present, but the 10888// value will be replaced with "sensitive". 10889func (s InstanceGroupStateChangeReason) GoString() string { 10890 return s.String() 10891} 10892 10893// SetCode sets the Code field's value. 10894func (s *InstanceGroupStateChangeReason) SetCode(v string) *InstanceGroupStateChangeReason { 10895 s.Code = &v 10896 return s 10897} 10898 10899// SetMessage sets the Message field's value. 10900func (s *InstanceGroupStateChangeReason) SetMessage(v string) *InstanceGroupStateChangeReason { 10901 s.Message = &v 10902 return s 10903} 10904 10905// The details of the instance group status. 10906type InstanceGroupStatus struct { 10907 _ struct{} `type:"structure"` 10908 10909 // The current state of the instance group. 10910 State *string `type:"string" enum:"InstanceGroupState"` 10911 10912 // The status change reason details for the instance group. 10913 StateChangeReason *InstanceGroupStateChangeReason `type:"structure"` 10914 10915 // The timeline of the instance group status over time. 10916 Timeline *InstanceGroupTimeline `type:"structure"` 10917} 10918 10919// String returns the string representation. 10920// 10921// API parameter values that are decorated as "sensitive" in the API will not 10922// be included in the string output. The member name will be present, but the 10923// value will be replaced with "sensitive". 10924func (s InstanceGroupStatus) String() string { 10925 return awsutil.Prettify(s) 10926} 10927 10928// GoString returns the string representation. 10929// 10930// API parameter values that are decorated as "sensitive" in the API will not 10931// be included in the string output. The member name will be present, but the 10932// value will be replaced with "sensitive". 10933func (s InstanceGroupStatus) GoString() string { 10934 return s.String() 10935} 10936 10937// SetState sets the State field's value. 10938func (s *InstanceGroupStatus) SetState(v string) *InstanceGroupStatus { 10939 s.State = &v 10940 return s 10941} 10942 10943// SetStateChangeReason sets the StateChangeReason field's value. 10944func (s *InstanceGroupStatus) SetStateChangeReason(v *InstanceGroupStateChangeReason) *InstanceGroupStatus { 10945 s.StateChangeReason = v 10946 return s 10947} 10948 10949// SetTimeline sets the Timeline field's value. 10950func (s *InstanceGroupStatus) SetTimeline(v *InstanceGroupTimeline) *InstanceGroupStatus { 10951 s.Timeline = v 10952 return s 10953} 10954 10955// The timeline of the instance group lifecycle. 10956type InstanceGroupTimeline struct { 10957 _ struct{} `type:"structure"` 10958 10959 // The creation date and time of the instance group. 10960 CreationDateTime *time.Time `type:"timestamp"` 10961 10962 // The date and time when the instance group terminated. 10963 EndDateTime *time.Time `type:"timestamp"` 10964 10965 // The date and time when the instance group became ready to perform tasks. 10966 ReadyDateTime *time.Time `type:"timestamp"` 10967} 10968 10969// String returns the string representation. 10970// 10971// API parameter values that are decorated as "sensitive" in the API will not 10972// be included in the string output. The member name will be present, but the 10973// value will be replaced with "sensitive". 10974func (s InstanceGroupTimeline) String() string { 10975 return awsutil.Prettify(s) 10976} 10977 10978// GoString returns the string representation. 10979// 10980// API parameter values that are decorated as "sensitive" in the API will not 10981// be included in the string output. The member name will be present, but the 10982// value will be replaced with "sensitive". 10983func (s InstanceGroupTimeline) GoString() string { 10984 return s.String() 10985} 10986 10987// SetCreationDateTime sets the CreationDateTime field's value. 10988func (s *InstanceGroupTimeline) SetCreationDateTime(v time.Time) *InstanceGroupTimeline { 10989 s.CreationDateTime = &v 10990 return s 10991} 10992 10993// SetEndDateTime sets the EndDateTime field's value. 10994func (s *InstanceGroupTimeline) SetEndDateTime(v time.Time) *InstanceGroupTimeline { 10995 s.EndDateTime = &v 10996 return s 10997} 10998 10999// SetReadyDateTime sets the ReadyDateTime field's value. 11000func (s *InstanceGroupTimeline) SetReadyDateTime(v time.Time) *InstanceGroupTimeline { 11001 s.ReadyDateTime = &v 11002 return s 11003} 11004 11005// Custom policy for requesting termination protection or termination of specific 11006// instances when shrinking an instance group. 11007type InstanceResizePolicy struct { 11008 _ struct{} `type:"structure"` 11009 11010 // Decommissioning timeout override for the specific list of instances to be 11011 // terminated. 11012 InstanceTerminationTimeout *int64 `type:"integer"` 11013 11014 // Specific list of instances to be protected when shrinking an instance group. 11015 InstancesToProtect []*string `type:"list"` 11016 11017 // Specific list of instances to be terminated when shrinking an instance group. 11018 InstancesToTerminate []*string `type:"list"` 11019} 11020 11021// String returns the string representation. 11022// 11023// API parameter values that are decorated as "sensitive" in the API will not 11024// be included in the string output. The member name will be present, but the 11025// value will be replaced with "sensitive". 11026func (s InstanceResizePolicy) String() string { 11027 return awsutil.Prettify(s) 11028} 11029 11030// GoString returns the string representation. 11031// 11032// API parameter values that are decorated as "sensitive" in the API will not 11033// be included in the string output. The member name will be present, but the 11034// value will be replaced with "sensitive". 11035func (s InstanceResizePolicy) GoString() string { 11036 return s.String() 11037} 11038 11039// SetInstanceTerminationTimeout sets the InstanceTerminationTimeout field's value. 11040func (s *InstanceResizePolicy) SetInstanceTerminationTimeout(v int64) *InstanceResizePolicy { 11041 s.InstanceTerminationTimeout = &v 11042 return s 11043} 11044 11045// SetInstancesToProtect sets the InstancesToProtect field's value. 11046func (s *InstanceResizePolicy) SetInstancesToProtect(v []*string) *InstanceResizePolicy { 11047 s.InstancesToProtect = v 11048 return s 11049} 11050 11051// SetInstancesToTerminate sets the InstancesToTerminate field's value. 11052func (s *InstanceResizePolicy) SetInstancesToTerminate(v []*string) *InstanceResizePolicy { 11053 s.InstancesToTerminate = v 11054 return s 11055} 11056 11057// The details of the status change reason for the instance. 11058type InstanceStateChangeReason struct { 11059 _ struct{} `type:"structure"` 11060 11061 // The programmable code for the state change reason. 11062 Code *string `type:"string" enum:"InstanceStateChangeReasonCode"` 11063 11064 // The status change reason description. 11065 Message *string `type:"string"` 11066} 11067 11068// String returns the string representation. 11069// 11070// API parameter values that are decorated as "sensitive" in the API will not 11071// be included in the string output. The member name will be present, but the 11072// value will be replaced with "sensitive". 11073func (s InstanceStateChangeReason) String() string { 11074 return awsutil.Prettify(s) 11075} 11076 11077// GoString returns the string representation. 11078// 11079// API parameter values that are decorated as "sensitive" in the API will not 11080// be included in the string output. The member name will be present, but the 11081// value will be replaced with "sensitive". 11082func (s InstanceStateChangeReason) GoString() string { 11083 return s.String() 11084} 11085 11086// SetCode sets the Code field's value. 11087func (s *InstanceStateChangeReason) SetCode(v string) *InstanceStateChangeReason { 11088 s.Code = &v 11089 return s 11090} 11091 11092// SetMessage sets the Message field's value. 11093func (s *InstanceStateChangeReason) SetMessage(v string) *InstanceStateChangeReason { 11094 s.Message = &v 11095 return s 11096} 11097 11098// The instance status details. 11099type InstanceStatus struct { 11100 _ struct{} `type:"structure"` 11101 11102 // The current state of the instance. 11103 State *string `type:"string" enum:"InstanceState"` 11104 11105 // The details of the status change reason for the instance. 11106 StateChangeReason *InstanceStateChangeReason `type:"structure"` 11107 11108 // The timeline of the instance status over time. 11109 Timeline *InstanceTimeline `type:"structure"` 11110} 11111 11112// String returns the string representation. 11113// 11114// API parameter values that are decorated as "sensitive" in the API will not 11115// be included in the string output. The member name will be present, but the 11116// value will be replaced with "sensitive". 11117func (s InstanceStatus) String() string { 11118 return awsutil.Prettify(s) 11119} 11120 11121// GoString returns the string representation. 11122// 11123// API parameter values that are decorated as "sensitive" in the API will not 11124// be included in the string output. The member name will be present, but the 11125// value will be replaced with "sensitive". 11126func (s InstanceStatus) GoString() string { 11127 return s.String() 11128} 11129 11130// SetState sets the State field's value. 11131func (s *InstanceStatus) SetState(v string) *InstanceStatus { 11132 s.State = &v 11133 return s 11134} 11135 11136// SetStateChangeReason sets the StateChangeReason field's value. 11137func (s *InstanceStatus) SetStateChangeReason(v *InstanceStateChangeReason) *InstanceStatus { 11138 s.StateChangeReason = v 11139 return s 11140} 11141 11142// SetTimeline sets the Timeline field's value. 11143func (s *InstanceStatus) SetTimeline(v *InstanceTimeline) *InstanceStatus { 11144 s.Timeline = v 11145 return s 11146} 11147 11148// The timeline of the instance lifecycle. 11149type InstanceTimeline struct { 11150 _ struct{} `type:"structure"` 11151 11152 // The creation date and time of the instance. 11153 CreationDateTime *time.Time `type:"timestamp"` 11154 11155 // The date and time when the instance was terminated. 11156 EndDateTime *time.Time `type:"timestamp"` 11157 11158 // The date and time when the instance was ready to perform tasks. 11159 ReadyDateTime *time.Time `type:"timestamp"` 11160} 11161 11162// String returns the string representation. 11163// 11164// API parameter values that are decorated as "sensitive" in the API will not 11165// be included in the string output. The member name will be present, but the 11166// value will be replaced with "sensitive". 11167func (s InstanceTimeline) String() string { 11168 return awsutil.Prettify(s) 11169} 11170 11171// GoString returns the string representation. 11172// 11173// API parameter values that are decorated as "sensitive" in the API will not 11174// be included in the string output. The member name will be present, but the 11175// value will be replaced with "sensitive". 11176func (s InstanceTimeline) GoString() string { 11177 return s.String() 11178} 11179 11180// SetCreationDateTime sets the CreationDateTime field's value. 11181func (s *InstanceTimeline) SetCreationDateTime(v time.Time) *InstanceTimeline { 11182 s.CreationDateTime = &v 11183 return s 11184} 11185 11186// SetEndDateTime sets the EndDateTime field's value. 11187func (s *InstanceTimeline) SetEndDateTime(v time.Time) *InstanceTimeline { 11188 s.EndDateTime = &v 11189 return s 11190} 11191 11192// SetReadyDateTime sets the ReadyDateTime field's value. 11193func (s *InstanceTimeline) SetReadyDateTime(v time.Time) *InstanceTimeline { 11194 s.ReadyDateTime = &v 11195 return s 11196} 11197 11198// An instance type configuration for each instance type in an instance fleet, 11199// which determines the EC2 instances Amazon EMR attempts to provision to fulfill 11200// On-Demand and Spot target capacities. When you use an allocation strategy, 11201// you can include a maximum of 30 instance type configurations for a fleet. 11202// For more information about how to use an allocation strategy, see Configure 11203// Instance Fleets (https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-instance-fleet.html). 11204// Without an allocation strategy, you may specify a maximum of five instance 11205// type configurations for a fleet. 11206// 11207// The instance fleet configuration is available only in Amazon EMR versions 11208// 4.8.0 and later, excluding 5.0.x versions. 11209type InstanceTypeConfig struct { 11210 _ struct{} `type:"structure"` 11211 11212 // The bid price for each EC2 Spot Instance type as defined by InstanceType. 11213 // Expressed in USD. If neither BidPrice nor BidPriceAsPercentageOfOnDemandPrice 11214 // is provided, BidPriceAsPercentageOfOnDemandPrice defaults to 100%. 11215 BidPrice *string `type:"string"` 11216 11217 // The bid price, as a percentage of On-Demand price, for each EC2 Spot Instance 11218 // as defined by InstanceType. Expressed as a number (for example, 20 specifies 11219 // 20%). If neither BidPrice nor BidPriceAsPercentageOfOnDemandPrice is provided, 11220 // BidPriceAsPercentageOfOnDemandPrice defaults to 100%. 11221 BidPriceAsPercentageOfOnDemandPrice *float64 `type:"double"` 11222 11223 // A configuration classification that applies when provisioning cluster instances, 11224 // which can include configurations for applications and software that run on 11225 // the cluster. 11226 Configurations []*Configuration `type:"list"` 11227 11228 // The custom AMI ID to use for the instance type. 11229 CustomAmiId *string `type:"string"` 11230 11231 // The configuration of Amazon Elastic Block Store (Amazon EBS) attached to 11232 // each instance as defined by InstanceType. 11233 EbsConfiguration *EbsConfiguration `type:"structure"` 11234 11235 // An EC2 instance type, such as m3.xlarge. 11236 // 11237 // InstanceType is a required field 11238 InstanceType *string `min:"1" type:"string" required:"true"` 11239 11240 // The number of units that a provisioned instance of this type provides toward 11241 // fulfilling the target capacities defined in InstanceFleetConfig. This value 11242 // is 1 for a master instance fleet, and must be 1 or greater for core and task 11243 // instance fleets. Defaults to 1 if not specified. 11244 WeightedCapacity *int64 `type:"integer"` 11245} 11246 11247// String returns the string representation. 11248// 11249// API parameter values that are decorated as "sensitive" in the API will not 11250// be included in the string output. The member name will be present, but the 11251// value will be replaced with "sensitive". 11252func (s InstanceTypeConfig) String() string { 11253 return awsutil.Prettify(s) 11254} 11255 11256// GoString returns the string representation. 11257// 11258// API parameter values that are decorated as "sensitive" in the API will not 11259// be included in the string output. The member name will be present, but the 11260// value will be replaced with "sensitive". 11261func (s InstanceTypeConfig) GoString() string { 11262 return s.String() 11263} 11264 11265// Validate inspects the fields of the type to determine if they are valid. 11266func (s *InstanceTypeConfig) Validate() error { 11267 invalidParams := request.ErrInvalidParams{Context: "InstanceTypeConfig"} 11268 if s.InstanceType == nil { 11269 invalidParams.Add(request.NewErrParamRequired("InstanceType")) 11270 } 11271 if s.InstanceType != nil && len(*s.InstanceType) < 1 { 11272 invalidParams.Add(request.NewErrParamMinLen("InstanceType", 1)) 11273 } 11274 if s.EbsConfiguration != nil { 11275 if err := s.EbsConfiguration.Validate(); err != nil { 11276 invalidParams.AddNested("EbsConfiguration", err.(request.ErrInvalidParams)) 11277 } 11278 } 11279 11280 if invalidParams.Len() > 0 { 11281 return invalidParams 11282 } 11283 return nil 11284} 11285 11286// SetBidPrice sets the BidPrice field's value. 11287func (s *InstanceTypeConfig) SetBidPrice(v string) *InstanceTypeConfig { 11288 s.BidPrice = &v 11289 return s 11290} 11291 11292// SetBidPriceAsPercentageOfOnDemandPrice sets the BidPriceAsPercentageOfOnDemandPrice field's value. 11293func (s *InstanceTypeConfig) SetBidPriceAsPercentageOfOnDemandPrice(v float64) *InstanceTypeConfig { 11294 s.BidPriceAsPercentageOfOnDemandPrice = &v 11295 return s 11296} 11297 11298// SetConfigurations sets the Configurations field's value. 11299func (s *InstanceTypeConfig) SetConfigurations(v []*Configuration) *InstanceTypeConfig { 11300 s.Configurations = v 11301 return s 11302} 11303 11304// SetCustomAmiId sets the CustomAmiId field's value. 11305func (s *InstanceTypeConfig) SetCustomAmiId(v string) *InstanceTypeConfig { 11306 s.CustomAmiId = &v 11307 return s 11308} 11309 11310// SetEbsConfiguration sets the EbsConfiguration field's value. 11311func (s *InstanceTypeConfig) SetEbsConfiguration(v *EbsConfiguration) *InstanceTypeConfig { 11312 s.EbsConfiguration = v 11313 return s 11314} 11315 11316// SetInstanceType sets the InstanceType field's value. 11317func (s *InstanceTypeConfig) SetInstanceType(v string) *InstanceTypeConfig { 11318 s.InstanceType = &v 11319 return s 11320} 11321 11322// SetWeightedCapacity sets the WeightedCapacity field's value. 11323func (s *InstanceTypeConfig) SetWeightedCapacity(v int64) *InstanceTypeConfig { 11324 s.WeightedCapacity = &v 11325 return s 11326} 11327 11328// The configuration specification for each instance type in an instance fleet. 11329// 11330// The instance fleet configuration is available only in Amazon EMR versions 11331// 4.8.0 and later, excluding 5.0.x versions. 11332type InstanceTypeSpecification struct { 11333 _ struct{} `type:"structure"` 11334 11335 // The bid price for each EC2 Spot Instance type as defined by InstanceType. 11336 // Expressed in USD. 11337 BidPrice *string `type:"string"` 11338 11339 // The bid price, as a percentage of On-Demand price, for each EC2 Spot Instance 11340 // as defined by InstanceType. Expressed as a number (for example, 20 specifies 11341 // 20%). 11342 BidPriceAsPercentageOfOnDemandPrice *float64 `type:"double"` 11343 11344 // A configuration classification that applies when provisioning cluster instances, 11345 // which can include configurations for applications and software bundled with 11346 // Amazon EMR. 11347 Configurations []*Configuration `type:"list"` 11348 11349 // The custom AMI ID to use for the instance type. 11350 CustomAmiId *string `type:"string"` 11351 11352 // The configuration of Amazon Elastic Block Store (Amazon EBS) attached to 11353 // each instance as defined by InstanceType. 11354 EbsBlockDevices []*EbsBlockDevice `type:"list"` 11355 11356 // Evaluates to TRUE when the specified InstanceType is EBS-optimized. 11357 EbsOptimized *bool `type:"boolean"` 11358 11359 // The EC2 instance type, for example m3.xlarge. 11360 InstanceType *string `min:"1" type:"string"` 11361 11362 // The number of units that a provisioned instance of this type provides toward 11363 // fulfilling the target capacities defined in InstanceFleetConfig. Capacity 11364 // values represent performance characteristics such as vCPUs, memory, or I/O. 11365 // If not specified, the default value is 1. 11366 WeightedCapacity *int64 `type:"integer"` 11367} 11368 11369// String returns the string representation. 11370// 11371// API parameter values that are decorated as "sensitive" in the API will not 11372// be included in the string output. The member name will be present, but the 11373// value will be replaced with "sensitive". 11374func (s InstanceTypeSpecification) String() string { 11375 return awsutil.Prettify(s) 11376} 11377 11378// GoString returns the string representation. 11379// 11380// API parameter values that are decorated as "sensitive" in the API will not 11381// be included in the string output. The member name will be present, but the 11382// value will be replaced with "sensitive". 11383func (s InstanceTypeSpecification) GoString() string { 11384 return s.String() 11385} 11386 11387// SetBidPrice sets the BidPrice field's value. 11388func (s *InstanceTypeSpecification) SetBidPrice(v string) *InstanceTypeSpecification { 11389 s.BidPrice = &v 11390 return s 11391} 11392 11393// SetBidPriceAsPercentageOfOnDemandPrice sets the BidPriceAsPercentageOfOnDemandPrice field's value. 11394func (s *InstanceTypeSpecification) SetBidPriceAsPercentageOfOnDemandPrice(v float64) *InstanceTypeSpecification { 11395 s.BidPriceAsPercentageOfOnDemandPrice = &v 11396 return s 11397} 11398 11399// SetConfigurations sets the Configurations field's value. 11400func (s *InstanceTypeSpecification) SetConfigurations(v []*Configuration) *InstanceTypeSpecification { 11401 s.Configurations = v 11402 return s 11403} 11404 11405// SetCustomAmiId sets the CustomAmiId field's value. 11406func (s *InstanceTypeSpecification) SetCustomAmiId(v string) *InstanceTypeSpecification { 11407 s.CustomAmiId = &v 11408 return s 11409} 11410 11411// SetEbsBlockDevices sets the EbsBlockDevices field's value. 11412func (s *InstanceTypeSpecification) SetEbsBlockDevices(v []*EbsBlockDevice) *InstanceTypeSpecification { 11413 s.EbsBlockDevices = v 11414 return s 11415} 11416 11417// SetEbsOptimized sets the EbsOptimized field's value. 11418func (s *InstanceTypeSpecification) SetEbsOptimized(v bool) *InstanceTypeSpecification { 11419 s.EbsOptimized = &v 11420 return s 11421} 11422 11423// SetInstanceType sets the InstanceType field's value. 11424func (s *InstanceTypeSpecification) SetInstanceType(v string) *InstanceTypeSpecification { 11425 s.InstanceType = &v 11426 return s 11427} 11428 11429// SetWeightedCapacity sets the WeightedCapacity field's value. 11430func (s *InstanceTypeSpecification) SetWeightedCapacity(v int64) *InstanceTypeSpecification { 11431 s.WeightedCapacity = &v 11432 return s 11433} 11434 11435// Indicates that an error occurred while processing the request and that the 11436// request was not completed. 11437type InternalServerError struct { 11438 _ struct{} `type:"structure"` 11439 RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` 11440 11441 Message_ *string `locationName:"message" type:"string"` 11442} 11443 11444// String returns the string representation. 11445// 11446// API parameter values that are decorated as "sensitive" in the API will not 11447// be included in the string output. The member name will be present, but the 11448// value will be replaced with "sensitive". 11449func (s InternalServerError) String() string { 11450 return awsutil.Prettify(s) 11451} 11452 11453// GoString returns the string representation. 11454// 11455// API parameter values that are decorated as "sensitive" in the API will not 11456// be included in the string output. The member name will be present, but the 11457// value will be replaced with "sensitive". 11458func (s InternalServerError) GoString() string { 11459 return s.String() 11460} 11461 11462func newErrorInternalServerError(v protocol.ResponseMetadata) error { 11463 return &InternalServerError{ 11464 RespMetadata: v, 11465 } 11466} 11467 11468// Code returns the exception type name. 11469func (s *InternalServerError) Code() string { 11470 return "InternalServerError" 11471} 11472 11473// Message returns the exception's message. 11474func (s *InternalServerError) Message() string { 11475 if s.Message_ != nil { 11476 return *s.Message_ 11477 } 11478 return "" 11479} 11480 11481// OrigErr always returns nil, satisfies awserr.Error interface. 11482func (s *InternalServerError) OrigErr() error { 11483 return nil 11484} 11485 11486func (s *InternalServerError) Error() string { 11487 return fmt.Sprintf("%s: %s", s.Code(), s.Message()) 11488} 11489 11490// Status code returns the HTTP status code for the request's response error. 11491func (s *InternalServerError) StatusCode() int { 11492 return s.RespMetadata.StatusCode 11493} 11494 11495// RequestID returns the service's response RequestID for request. 11496func (s *InternalServerError) RequestID() string { 11497 return s.RespMetadata.RequestID 11498} 11499 11500// This exception occurs when there is an internal failure in the Amazon EMR 11501// service. 11502type InternalServerException struct { 11503 _ struct{} `type:"structure"` 11504 RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` 11505 11506 // The message associated with the exception. 11507 Message_ *string `locationName:"Message" type:"string"` 11508} 11509 11510// String returns the string representation. 11511// 11512// API parameter values that are decorated as "sensitive" in the API will not 11513// be included in the string output. The member name will be present, but the 11514// value will be replaced with "sensitive". 11515func (s InternalServerException) String() string { 11516 return awsutil.Prettify(s) 11517} 11518 11519// GoString returns the string representation. 11520// 11521// API parameter values that are decorated as "sensitive" in the API will not 11522// be included in the string output. The member name will be present, but the 11523// value will be replaced with "sensitive". 11524func (s InternalServerException) GoString() string { 11525 return s.String() 11526} 11527 11528func newErrorInternalServerException(v protocol.ResponseMetadata) error { 11529 return &InternalServerException{ 11530 RespMetadata: v, 11531 } 11532} 11533 11534// Code returns the exception type name. 11535func (s *InternalServerException) Code() string { 11536 return "InternalServerException" 11537} 11538 11539// Message returns the exception's message. 11540func (s *InternalServerException) Message() string { 11541 if s.Message_ != nil { 11542 return *s.Message_ 11543 } 11544 return "" 11545} 11546 11547// OrigErr always returns nil, satisfies awserr.Error interface. 11548func (s *InternalServerException) OrigErr() error { 11549 return nil 11550} 11551 11552func (s *InternalServerException) Error() string { 11553 return fmt.Sprintf("%s: %s", s.Code(), s.Message()) 11554} 11555 11556// Status code returns the HTTP status code for the request's response error. 11557func (s *InternalServerException) StatusCode() int { 11558 return s.RespMetadata.StatusCode 11559} 11560 11561// RequestID returns the service's response RequestID for request. 11562func (s *InternalServerException) RequestID() string { 11563 return s.RespMetadata.RequestID 11564} 11565 11566// This exception occurs when there is something wrong with user input. 11567type InvalidRequestException struct { 11568 _ struct{} `type:"structure"` 11569 RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` 11570 11571 // The error code associated with the exception. 11572 ErrorCode *string `min:"1" type:"string"` 11573 11574 // The message associated with the exception. 11575 Message_ *string `locationName:"Message" type:"string"` 11576} 11577 11578// String returns the string representation. 11579// 11580// API parameter values that are decorated as "sensitive" in the API will not 11581// be included in the string output. The member name will be present, but the 11582// value will be replaced with "sensitive". 11583func (s InvalidRequestException) String() string { 11584 return awsutil.Prettify(s) 11585} 11586 11587// GoString returns the string representation. 11588// 11589// API parameter values that are decorated as "sensitive" in the API will not 11590// be included in the string output. The member name will be present, but the 11591// value will be replaced with "sensitive". 11592func (s InvalidRequestException) GoString() string { 11593 return s.String() 11594} 11595 11596func newErrorInvalidRequestException(v protocol.ResponseMetadata) error { 11597 return &InvalidRequestException{ 11598 RespMetadata: v, 11599 } 11600} 11601 11602// Code returns the exception type name. 11603func (s *InvalidRequestException) Code() string { 11604 return "InvalidRequestException" 11605} 11606 11607// Message returns the exception's message. 11608func (s *InvalidRequestException) Message() string { 11609 if s.Message_ != nil { 11610 return *s.Message_ 11611 } 11612 return "" 11613} 11614 11615// OrigErr always returns nil, satisfies awserr.Error interface. 11616func (s *InvalidRequestException) OrigErr() error { 11617 return nil 11618} 11619 11620func (s *InvalidRequestException) Error() string { 11621 return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) 11622} 11623 11624// Status code returns the HTTP status code for the request's response error. 11625func (s *InvalidRequestException) StatusCode() int { 11626 return s.RespMetadata.StatusCode 11627} 11628 11629// RequestID returns the service's response RequestID for request. 11630func (s *InvalidRequestException) RequestID() string { 11631 return s.RespMetadata.RequestID 11632} 11633 11634// A description of a cluster (job flow). 11635type JobFlowDetail struct { 11636 _ struct{} `type:"structure"` 11637 11638 // Applies only to Amazon EMR AMI versions 3.x and 2.x. For Amazon EMR releases 11639 // 4.0 and later, ReleaseLabel is used. To specify a custom AMI, use CustomAmiID. 11640 AmiVersion *string `type:"string"` 11641 11642 // An IAM role for automatic scaling policies. The default role is EMR_AutoScaling_DefaultRole. 11643 // The IAM role provides a way for the automatic scaling feature to get the 11644 // required permissions it needs to launch and terminate EC2 instances in an 11645 // instance group. 11646 AutoScalingRole *string `type:"string"` 11647 11648 // A list of the bootstrap actions run by the job flow. 11649 BootstrapActions []*BootstrapActionDetail `type:"list"` 11650 11651 // Describes the execution status of the job flow. 11652 // 11653 // ExecutionStatusDetail is a required field 11654 ExecutionStatusDetail *JobFlowExecutionStatusDetail `type:"structure" required:"true"` 11655 11656 // Describes the Amazon EC2 instances of the job flow. 11657 // 11658 // Instances is a required field 11659 Instances *JobFlowInstancesDetail `type:"structure" required:"true"` 11660 11661 // The job flow identifier. 11662 // 11663 // JobFlowId is a required field 11664 JobFlowId *string `type:"string" required:"true"` 11665 11666 // The IAM role that was specified when the job flow was launched. The EC2 instances 11667 // of the job flow assume this role. 11668 JobFlowRole *string `type:"string"` 11669 11670 // The KMS key used for encrypting log files. This attribute is only available 11671 // with EMR version 5.30.0 and later, excluding EMR 6.0.0. 11672 LogEncryptionKmsKeyId *string `type:"string"` 11673 11674 // The location in Amazon S3 where log files for the job are stored. 11675 LogUri *string `type:"string"` 11676 11677 // The name of the job flow. 11678 // 11679 // Name is a required field 11680 Name *string `type:"string" required:"true"` 11681 11682 // The way that individual Amazon EC2 instances terminate when an automatic 11683 // scale-in activity occurs or an instance group is resized. TERMINATE_AT_INSTANCE_HOUR 11684 // indicates that Amazon EMR terminates nodes at the instance-hour boundary, 11685 // regardless of when the request to terminate the instance was submitted. This 11686 // option is only available with Amazon EMR 5.1.0 and later and is the default 11687 // for clusters created using that version. TERMINATE_AT_TASK_COMPLETION indicates 11688 // that Amazon EMR adds nodes to a deny list and drains tasks from nodes before 11689 // terminating the Amazon EC2 instances, regardless of the instance-hour boundary. 11690 // With either behavior, Amazon EMR removes the least active nodes first and 11691 // blocks instance termination if it could lead to HDFS corruption. TERMINATE_AT_TASK_COMPLETION 11692 // available only in Amazon EMR version 4.1.0 and later, and is the default 11693 // for versions of Amazon EMR earlier than 5.1.0. 11694 ScaleDownBehavior *string `type:"string" enum:"ScaleDownBehavior"` 11695 11696 // The IAM role that is assumed by the Amazon EMR service to access Amazon Web 11697 // Services resources on your behalf. 11698 ServiceRole *string `type:"string"` 11699 11700 // A list of steps run by the job flow. 11701 Steps []*StepDetail `type:"list"` 11702 11703 // A list of strings set by third-party software when the job flow is launched. 11704 // If you are not using third-party software to manage the job flow, this value 11705 // is empty. 11706 SupportedProducts []*string `type:"list"` 11707 11708 // Indicates whether the cluster is visible to IAM principals in the Amazon 11709 // Web Services account associated with the cluster. When true, IAM principals 11710 // in the Amazon Web Services account can perform EMR cluster actions that their 11711 // IAM policies allow. When false, only the IAM principal that created the cluster 11712 // and the Amazon Web Services account root user can perform EMR actions, regardless 11713 // of IAM permissions policies attached to other IAM principals. 11714 // 11715 // The default value is true if a value is not provided when creating a cluster 11716 // using the EMR API RunJobFlow command, the CLI create-cluster (https://docs.aws.amazon.com/cli/latest/reference/emr/create-cluster.html) 11717 // command, or the Amazon Web Services Management Console. IAM principals that 11718 // are authorized to perform actions on the cluster can use the SetVisibleToAllUsers 11719 // action to change the value on a running cluster. For more information, see 11720 // Understanding the EMR Cluster VisibleToAllUsers Setting (https://docs.aws.amazon.com/emr/latest/ManagementGuide/security_iam_emr-with-iam.html#security_set_visible_to_all_users) 11721 // in the Amazon EMRManagement Guide. 11722 VisibleToAllUsers *bool `type:"boolean"` 11723} 11724 11725// String returns the string representation. 11726// 11727// API parameter values that are decorated as "sensitive" in the API will not 11728// be included in the string output. The member name will be present, but the 11729// value will be replaced with "sensitive". 11730func (s JobFlowDetail) String() string { 11731 return awsutil.Prettify(s) 11732} 11733 11734// GoString returns the string representation. 11735// 11736// API parameter values that are decorated as "sensitive" in the API will not 11737// be included in the string output. The member name will be present, but the 11738// value will be replaced with "sensitive". 11739func (s JobFlowDetail) GoString() string { 11740 return s.String() 11741} 11742 11743// SetAmiVersion sets the AmiVersion field's value. 11744func (s *JobFlowDetail) SetAmiVersion(v string) *JobFlowDetail { 11745 s.AmiVersion = &v 11746 return s 11747} 11748 11749// SetAutoScalingRole sets the AutoScalingRole field's value. 11750func (s *JobFlowDetail) SetAutoScalingRole(v string) *JobFlowDetail { 11751 s.AutoScalingRole = &v 11752 return s 11753} 11754 11755// SetBootstrapActions sets the BootstrapActions field's value. 11756func (s *JobFlowDetail) SetBootstrapActions(v []*BootstrapActionDetail) *JobFlowDetail { 11757 s.BootstrapActions = v 11758 return s 11759} 11760 11761// SetExecutionStatusDetail sets the ExecutionStatusDetail field's value. 11762func (s *JobFlowDetail) SetExecutionStatusDetail(v *JobFlowExecutionStatusDetail) *JobFlowDetail { 11763 s.ExecutionStatusDetail = v 11764 return s 11765} 11766 11767// SetInstances sets the Instances field's value. 11768func (s *JobFlowDetail) SetInstances(v *JobFlowInstancesDetail) *JobFlowDetail { 11769 s.Instances = v 11770 return s 11771} 11772 11773// SetJobFlowId sets the JobFlowId field's value. 11774func (s *JobFlowDetail) SetJobFlowId(v string) *JobFlowDetail { 11775 s.JobFlowId = &v 11776 return s 11777} 11778 11779// SetJobFlowRole sets the JobFlowRole field's value. 11780func (s *JobFlowDetail) SetJobFlowRole(v string) *JobFlowDetail { 11781 s.JobFlowRole = &v 11782 return s 11783} 11784 11785// SetLogEncryptionKmsKeyId sets the LogEncryptionKmsKeyId field's value. 11786func (s *JobFlowDetail) SetLogEncryptionKmsKeyId(v string) *JobFlowDetail { 11787 s.LogEncryptionKmsKeyId = &v 11788 return s 11789} 11790 11791// SetLogUri sets the LogUri field's value. 11792func (s *JobFlowDetail) SetLogUri(v string) *JobFlowDetail { 11793 s.LogUri = &v 11794 return s 11795} 11796 11797// SetName sets the Name field's value. 11798func (s *JobFlowDetail) SetName(v string) *JobFlowDetail { 11799 s.Name = &v 11800 return s 11801} 11802 11803// SetScaleDownBehavior sets the ScaleDownBehavior field's value. 11804func (s *JobFlowDetail) SetScaleDownBehavior(v string) *JobFlowDetail { 11805 s.ScaleDownBehavior = &v 11806 return s 11807} 11808 11809// SetServiceRole sets the ServiceRole field's value. 11810func (s *JobFlowDetail) SetServiceRole(v string) *JobFlowDetail { 11811 s.ServiceRole = &v 11812 return s 11813} 11814 11815// SetSteps sets the Steps field's value. 11816func (s *JobFlowDetail) SetSteps(v []*StepDetail) *JobFlowDetail { 11817 s.Steps = v 11818 return s 11819} 11820 11821// SetSupportedProducts sets the SupportedProducts field's value. 11822func (s *JobFlowDetail) SetSupportedProducts(v []*string) *JobFlowDetail { 11823 s.SupportedProducts = v 11824 return s 11825} 11826 11827// SetVisibleToAllUsers sets the VisibleToAllUsers field's value. 11828func (s *JobFlowDetail) SetVisibleToAllUsers(v bool) *JobFlowDetail { 11829 s.VisibleToAllUsers = &v 11830 return s 11831} 11832 11833// Describes the status of the cluster (job flow). 11834type JobFlowExecutionStatusDetail struct { 11835 _ struct{} `type:"structure"` 11836 11837 // The creation date and time of the job flow. 11838 // 11839 // CreationDateTime is a required field 11840 CreationDateTime *time.Time `type:"timestamp" required:"true"` 11841 11842 // The completion date and time of the job flow. 11843 EndDateTime *time.Time `type:"timestamp"` 11844 11845 // Description of the job flow last changed state. 11846 LastStateChangeReason *string `type:"string"` 11847 11848 // The date and time when the job flow was ready to start running bootstrap 11849 // actions. 11850 ReadyDateTime *time.Time `type:"timestamp"` 11851 11852 // The start date and time of the job flow. 11853 StartDateTime *time.Time `type:"timestamp"` 11854 11855 // The state of the job flow. 11856 // 11857 // State is a required field 11858 State *string `type:"string" required:"true" enum:"JobFlowExecutionState"` 11859} 11860 11861// String returns the string representation. 11862// 11863// API parameter values that are decorated as "sensitive" in the API will not 11864// be included in the string output. The member name will be present, but the 11865// value will be replaced with "sensitive". 11866func (s JobFlowExecutionStatusDetail) String() string { 11867 return awsutil.Prettify(s) 11868} 11869 11870// GoString returns the string representation. 11871// 11872// API parameter values that are decorated as "sensitive" in the API will not 11873// be included in the string output. The member name will be present, but the 11874// value will be replaced with "sensitive". 11875func (s JobFlowExecutionStatusDetail) GoString() string { 11876 return s.String() 11877} 11878 11879// SetCreationDateTime sets the CreationDateTime field's value. 11880func (s *JobFlowExecutionStatusDetail) SetCreationDateTime(v time.Time) *JobFlowExecutionStatusDetail { 11881 s.CreationDateTime = &v 11882 return s 11883} 11884 11885// SetEndDateTime sets the EndDateTime field's value. 11886func (s *JobFlowExecutionStatusDetail) SetEndDateTime(v time.Time) *JobFlowExecutionStatusDetail { 11887 s.EndDateTime = &v 11888 return s 11889} 11890 11891// SetLastStateChangeReason sets the LastStateChangeReason field's value. 11892func (s *JobFlowExecutionStatusDetail) SetLastStateChangeReason(v string) *JobFlowExecutionStatusDetail { 11893 s.LastStateChangeReason = &v 11894 return s 11895} 11896 11897// SetReadyDateTime sets the ReadyDateTime field's value. 11898func (s *JobFlowExecutionStatusDetail) SetReadyDateTime(v time.Time) *JobFlowExecutionStatusDetail { 11899 s.ReadyDateTime = &v 11900 return s 11901} 11902 11903// SetStartDateTime sets the StartDateTime field's value. 11904func (s *JobFlowExecutionStatusDetail) SetStartDateTime(v time.Time) *JobFlowExecutionStatusDetail { 11905 s.StartDateTime = &v 11906 return s 11907} 11908 11909// SetState sets the State field's value. 11910func (s *JobFlowExecutionStatusDetail) SetState(v string) *JobFlowExecutionStatusDetail { 11911 s.State = &v 11912 return s 11913} 11914 11915// A description of the Amazon EC2 instance on which the cluster (job flow) 11916// runs. A valid JobFlowInstancesConfig must contain either InstanceGroups or 11917// InstanceFleets. They cannot be used together. You may also have MasterInstanceType, 11918// SlaveInstanceType, and InstanceCount (all three must be present), but we 11919// don't recommend this configuration. 11920type JobFlowInstancesConfig struct { 11921 _ struct{} `type:"structure"` 11922 11923 // A list of additional Amazon EC2 security group IDs for the master node. 11924 AdditionalMasterSecurityGroups []*string `type:"list"` 11925 11926 // A list of additional Amazon EC2 security group IDs for the core and task 11927 // nodes. 11928 AdditionalSlaveSecurityGroups []*string `type:"list"` 11929 11930 // The name of the EC2 key pair that can be used to connect to the master node 11931 // using SSH as the user called "hadoop." 11932 Ec2KeyName *string `type:"string"` 11933 11934 // Applies to clusters that use the uniform instance group configuration. To 11935 // launch the cluster in Amazon Virtual Private Cloud (Amazon VPC), set this 11936 // parameter to the identifier of the Amazon VPC subnet where you want the cluster 11937 // to launch. If you do not specify this value and your account supports EC2-Classic, 11938 // the cluster launches in EC2-Classic. 11939 Ec2SubnetId *string `type:"string"` 11940 11941 // Applies to clusters that use the instance fleet configuration. When multiple 11942 // EC2 subnet IDs are specified, Amazon EMR evaluates them and launches instances 11943 // in the optimal subnet. 11944 // 11945 // The instance fleet configuration is available only in Amazon EMR versions 11946 // 4.8.0 and later, excluding 5.0.x versions. 11947 Ec2SubnetIds []*string `type:"list"` 11948 11949 // The identifier of the Amazon EC2 security group for the master node. If you 11950 // specify EmrManagedMasterSecurityGroup, you must also specify EmrManagedSlaveSecurityGroup. 11951 EmrManagedMasterSecurityGroup *string `type:"string"` 11952 11953 // The identifier of the Amazon EC2 security group for the core and task nodes. 11954 // If you specify EmrManagedSlaveSecurityGroup, you must also specify EmrManagedMasterSecurityGroup. 11955 EmrManagedSlaveSecurityGroup *string `type:"string"` 11956 11957 // Applies only to Amazon EMR release versions earlier than 4.0. The Hadoop 11958 // version for the cluster. Valid inputs are "0.18" (no longer maintained), 11959 // "0.20" (no longer maintained), "0.20.205" (no longer maintained), "1.0.3", 11960 // "2.2.0", or "2.4.0". If you do not set this value, the default of 0.18 is 11961 // used, unless the AmiVersion parameter is set in the RunJobFlow call, in which 11962 // case the default version of Hadoop for that AMI version is used. 11963 HadoopVersion *string `type:"string"` 11964 11965 // The number of EC2 instances in the cluster. 11966 InstanceCount *int64 `type:"integer"` 11967 11968 // 11969 // The instance fleet configuration is available only in Amazon EMR versions 11970 // 4.8.0 and later, excluding 5.0.x versions. 11971 // 11972 // Describes the EC2 instances and instance configurations for clusters that 11973 // use the instance fleet configuration. 11974 InstanceFleets []*InstanceFleetConfig `type:"list"` 11975 11976 // Configuration for the instance groups in a cluster. 11977 InstanceGroups []*InstanceGroupConfig `type:"list"` 11978 11979 // Specifies whether the cluster should remain available after completing all 11980 // steps. Defaults to true. For more information about configuring cluster termination, 11981 // see Control Cluster Termination (https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-plan-termination.html) 11982 // in the EMR Management Guide. 11983 KeepJobFlowAliveWhenNoSteps *bool `type:"boolean"` 11984 11985 // The EC2 instance type of the master node. 11986 MasterInstanceType *string `min:"1" type:"string"` 11987 11988 // The Availability Zone in which the cluster runs. 11989 Placement *PlacementType `type:"structure"` 11990 11991 // The identifier of the Amazon EC2 security group for the Amazon EMR service 11992 // to access clusters in VPC private subnets. 11993 ServiceAccessSecurityGroup *string `type:"string"` 11994 11995 // The EC2 instance type of the core and task nodes. 11996 SlaveInstanceType *string `min:"1" type:"string"` 11997 11998 // Specifies whether to lock the cluster to prevent the Amazon EC2 instances 11999 // from being terminated by API call, user intervention, or in the event of 12000 // a job-flow error. 12001 TerminationProtected *bool `type:"boolean"` 12002} 12003 12004// String returns the string representation. 12005// 12006// API parameter values that are decorated as "sensitive" in the API will not 12007// be included in the string output. The member name will be present, but the 12008// value will be replaced with "sensitive". 12009func (s JobFlowInstancesConfig) String() string { 12010 return awsutil.Prettify(s) 12011} 12012 12013// GoString returns the string representation. 12014// 12015// API parameter values that are decorated as "sensitive" in the API will not 12016// be included in the string output. The member name will be present, but the 12017// value will be replaced with "sensitive". 12018func (s JobFlowInstancesConfig) GoString() string { 12019 return s.String() 12020} 12021 12022// Validate inspects the fields of the type to determine if they are valid. 12023func (s *JobFlowInstancesConfig) Validate() error { 12024 invalidParams := request.ErrInvalidParams{Context: "JobFlowInstancesConfig"} 12025 if s.MasterInstanceType != nil && len(*s.MasterInstanceType) < 1 { 12026 invalidParams.Add(request.NewErrParamMinLen("MasterInstanceType", 1)) 12027 } 12028 if s.SlaveInstanceType != nil && len(*s.SlaveInstanceType) < 1 { 12029 invalidParams.Add(request.NewErrParamMinLen("SlaveInstanceType", 1)) 12030 } 12031 if s.InstanceFleets != nil { 12032 for i, v := range s.InstanceFleets { 12033 if v == nil { 12034 continue 12035 } 12036 if err := v.Validate(); err != nil { 12037 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "InstanceFleets", i), err.(request.ErrInvalidParams)) 12038 } 12039 } 12040 } 12041 if s.InstanceGroups != nil { 12042 for i, v := range s.InstanceGroups { 12043 if v == nil { 12044 continue 12045 } 12046 if err := v.Validate(); err != nil { 12047 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "InstanceGroups", i), err.(request.ErrInvalidParams)) 12048 } 12049 } 12050 } 12051 12052 if invalidParams.Len() > 0 { 12053 return invalidParams 12054 } 12055 return nil 12056} 12057 12058// SetAdditionalMasterSecurityGroups sets the AdditionalMasterSecurityGroups field's value. 12059func (s *JobFlowInstancesConfig) SetAdditionalMasterSecurityGroups(v []*string) *JobFlowInstancesConfig { 12060 s.AdditionalMasterSecurityGroups = v 12061 return s 12062} 12063 12064// SetAdditionalSlaveSecurityGroups sets the AdditionalSlaveSecurityGroups field's value. 12065func (s *JobFlowInstancesConfig) SetAdditionalSlaveSecurityGroups(v []*string) *JobFlowInstancesConfig { 12066 s.AdditionalSlaveSecurityGroups = v 12067 return s 12068} 12069 12070// SetEc2KeyName sets the Ec2KeyName field's value. 12071func (s *JobFlowInstancesConfig) SetEc2KeyName(v string) *JobFlowInstancesConfig { 12072 s.Ec2KeyName = &v 12073 return s 12074} 12075 12076// SetEc2SubnetId sets the Ec2SubnetId field's value. 12077func (s *JobFlowInstancesConfig) SetEc2SubnetId(v string) *JobFlowInstancesConfig { 12078 s.Ec2SubnetId = &v 12079 return s 12080} 12081 12082// SetEc2SubnetIds sets the Ec2SubnetIds field's value. 12083func (s *JobFlowInstancesConfig) SetEc2SubnetIds(v []*string) *JobFlowInstancesConfig { 12084 s.Ec2SubnetIds = v 12085 return s 12086} 12087 12088// SetEmrManagedMasterSecurityGroup sets the EmrManagedMasterSecurityGroup field's value. 12089func (s *JobFlowInstancesConfig) SetEmrManagedMasterSecurityGroup(v string) *JobFlowInstancesConfig { 12090 s.EmrManagedMasterSecurityGroup = &v 12091 return s 12092} 12093 12094// SetEmrManagedSlaveSecurityGroup sets the EmrManagedSlaveSecurityGroup field's value. 12095func (s *JobFlowInstancesConfig) SetEmrManagedSlaveSecurityGroup(v string) *JobFlowInstancesConfig { 12096 s.EmrManagedSlaveSecurityGroup = &v 12097 return s 12098} 12099 12100// SetHadoopVersion sets the HadoopVersion field's value. 12101func (s *JobFlowInstancesConfig) SetHadoopVersion(v string) *JobFlowInstancesConfig { 12102 s.HadoopVersion = &v 12103 return s 12104} 12105 12106// SetInstanceCount sets the InstanceCount field's value. 12107func (s *JobFlowInstancesConfig) SetInstanceCount(v int64) *JobFlowInstancesConfig { 12108 s.InstanceCount = &v 12109 return s 12110} 12111 12112// SetInstanceFleets sets the InstanceFleets field's value. 12113func (s *JobFlowInstancesConfig) SetInstanceFleets(v []*InstanceFleetConfig) *JobFlowInstancesConfig { 12114 s.InstanceFleets = v 12115 return s 12116} 12117 12118// SetInstanceGroups sets the InstanceGroups field's value. 12119func (s *JobFlowInstancesConfig) SetInstanceGroups(v []*InstanceGroupConfig) *JobFlowInstancesConfig { 12120 s.InstanceGroups = v 12121 return s 12122} 12123 12124// SetKeepJobFlowAliveWhenNoSteps sets the KeepJobFlowAliveWhenNoSteps field's value. 12125func (s *JobFlowInstancesConfig) SetKeepJobFlowAliveWhenNoSteps(v bool) *JobFlowInstancesConfig { 12126 s.KeepJobFlowAliveWhenNoSteps = &v 12127 return s 12128} 12129 12130// SetMasterInstanceType sets the MasterInstanceType field's value. 12131func (s *JobFlowInstancesConfig) SetMasterInstanceType(v string) *JobFlowInstancesConfig { 12132 s.MasterInstanceType = &v 12133 return s 12134} 12135 12136// SetPlacement sets the Placement field's value. 12137func (s *JobFlowInstancesConfig) SetPlacement(v *PlacementType) *JobFlowInstancesConfig { 12138 s.Placement = v 12139 return s 12140} 12141 12142// SetServiceAccessSecurityGroup sets the ServiceAccessSecurityGroup field's value. 12143func (s *JobFlowInstancesConfig) SetServiceAccessSecurityGroup(v string) *JobFlowInstancesConfig { 12144 s.ServiceAccessSecurityGroup = &v 12145 return s 12146} 12147 12148// SetSlaveInstanceType sets the SlaveInstanceType field's value. 12149func (s *JobFlowInstancesConfig) SetSlaveInstanceType(v string) *JobFlowInstancesConfig { 12150 s.SlaveInstanceType = &v 12151 return s 12152} 12153 12154// SetTerminationProtected sets the TerminationProtected field's value. 12155func (s *JobFlowInstancesConfig) SetTerminationProtected(v bool) *JobFlowInstancesConfig { 12156 s.TerminationProtected = &v 12157 return s 12158} 12159 12160// Specify the type of Amazon EC2 instances that the cluster (job flow) runs 12161// on. 12162type JobFlowInstancesDetail struct { 12163 _ struct{} `type:"structure"` 12164 12165 // The name of an Amazon EC2 key pair that can be used to connect to the master 12166 // node using SSH. 12167 Ec2KeyName *string `type:"string"` 12168 12169 // For clusters launched within Amazon Virtual Private Cloud, this is the identifier 12170 // of the subnet where the cluster was launched. 12171 Ec2SubnetId *string `type:"string"` 12172 12173 // The Hadoop version for the cluster. 12174 HadoopVersion *string `type:"string"` 12175 12176 // The number of Amazon EC2 instances in the cluster. If the value is 1, the 12177 // same instance serves as both the master and core and task node. If the value 12178 // is greater than 1, one instance is the master node and all others are core 12179 // and task nodes. 12180 // 12181 // InstanceCount is a required field 12182 InstanceCount *int64 `type:"integer" required:"true"` 12183 12184 // Details about the instance groups in a cluster. 12185 InstanceGroups []*InstanceGroupDetail `type:"list"` 12186 12187 // Specifies whether the cluster should remain available after completing all 12188 // steps. 12189 KeepJobFlowAliveWhenNoSteps *bool `type:"boolean"` 12190 12191 // The Amazon EC2 instance identifier of the master node. 12192 MasterInstanceId *string `type:"string"` 12193 12194 // The Amazon EC2 master node instance type. 12195 // 12196 // MasterInstanceType is a required field 12197 MasterInstanceType *string `min:"1" type:"string" required:"true"` 12198 12199 // The DNS name of the master node. If the cluster is on a private subnet, this 12200 // is the private DNS name. On a public subnet, this is the public DNS name. 12201 MasterPublicDnsName *string `type:"string"` 12202 12203 // An approximation of the cost of the cluster, represented in m1.small/hours. 12204 // This value is increased one time for every hour that an m1.small instance 12205 // runs. Larger instances are weighted more heavily, so an Amazon EC2 instance 12206 // that is roughly four times more expensive would result in the normalized 12207 // instance hours being increased incrementally four times. This result is only 12208 // an approximation and does not reflect the actual billing rate. 12209 NormalizedInstanceHours *int64 `type:"integer"` 12210 12211 // The Amazon EC2 Availability Zone for the cluster. 12212 Placement *PlacementType `type:"structure"` 12213 12214 // The Amazon EC2 core and task node instance type. 12215 // 12216 // SlaveInstanceType is a required field 12217 SlaveInstanceType *string `min:"1" type:"string" required:"true"` 12218 12219 // Specifies whether the Amazon EC2 instances in the cluster are protected from 12220 // termination by API calls, user intervention, or in the event of a job-flow 12221 // error. 12222 TerminationProtected *bool `type:"boolean"` 12223} 12224 12225// String returns the string representation. 12226// 12227// API parameter values that are decorated as "sensitive" in the API will not 12228// be included in the string output. The member name will be present, but the 12229// value will be replaced with "sensitive". 12230func (s JobFlowInstancesDetail) String() string { 12231 return awsutil.Prettify(s) 12232} 12233 12234// GoString returns the string representation. 12235// 12236// API parameter values that are decorated as "sensitive" in the API will not 12237// be included in the string output. The member name will be present, but the 12238// value will be replaced with "sensitive". 12239func (s JobFlowInstancesDetail) GoString() string { 12240 return s.String() 12241} 12242 12243// SetEc2KeyName sets the Ec2KeyName field's value. 12244func (s *JobFlowInstancesDetail) SetEc2KeyName(v string) *JobFlowInstancesDetail { 12245 s.Ec2KeyName = &v 12246 return s 12247} 12248 12249// SetEc2SubnetId sets the Ec2SubnetId field's value. 12250func (s *JobFlowInstancesDetail) SetEc2SubnetId(v string) *JobFlowInstancesDetail { 12251 s.Ec2SubnetId = &v 12252 return s 12253} 12254 12255// SetHadoopVersion sets the HadoopVersion field's value. 12256func (s *JobFlowInstancesDetail) SetHadoopVersion(v string) *JobFlowInstancesDetail { 12257 s.HadoopVersion = &v 12258 return s 12259} 12260 12261// SetInstanceCount sets the InstanceCount field's value. 12262func (s *JobFlowInstancesDetail) SetInstanceCount(v int64) *JobFlowInstancesDetail { 12263 s.InstanceCount = &v 12264 return s 12265} 12266 12267// SetInstanceGroups sets the InstanceGroups field's value. 12268func (s *JobFlowInstancesDetail) SetInstanceGroups(v []*InstanceGroupDetail) *JobFlowInstancesDetail { 12269 s.InstanceGroups = v 12270 return s 12271} 12272 12273// SetKeepJobFlowAliveWhenNoSteps sets the KeepJobFlowAliveWhenNoSteps field's value. 12274func (s *JobFlowInstancesDetail) SetKeepJobFlowAliveWhenNoSteps(v bool) *JobFlowInstancesDetail { 12275 s.KeepJobFlowAliveWhenNoSteps = &v 12276 return s 12277} 12278 12279// SetMasterInstanceId sets the MasterInstanceId field's value. 12280func (s *JobFlowInstancesDetail) SetMasterInstanceId(v string) *JobFlowInstancesDetail { 12281 s.MasterInstanceId = &v 12282 return s 12283} 12284 12285// SetMasterInstanceType sets the MasterInstanceType field's value. 12286func (s *JobFlowInstancesDetail) SetMasterInstanceType(v string) *JobFlowInstancesDetail { 12287 s.MasterInstanceType = &v 12288 return s 12289} 12290 12291// SetMasterPublicDnsName sets the MasterPublicDnsName field's value. 12292func (s *JobFlowInstancesDetail) SetMasterPublicDnsName(v string) *JobFlowInstancesDetail { 12293 s.MasterPublicDnsName = &v 12294 return s 12295} 12296 12297// SetNormalizedInstanceHours sets the NormalizedInstanceHours field's value. 12298func (s *JobFlowInstancesDetail) SetNormalizedInstanceHours(v int64) *JobFlowInstancesDetail { 12299 s.NormalizedInstanceHours = &v 12300 return s 12301} 12302 12303// SetPlacement sets the Placement field's value. 12304func (s *JobFlowInstancesDetail) SetPlacement(v *PlacementType) *JobFlowInstancesDetail { 12305 s.Placement = v 12306 return s 12307} 12308 12309// SetSlaveInstanceType sets the SlaveInstanceType field's value. 12310func (s *JobFlowInstancesDetail) SetSlaveInstanceType(v string) *JobFlowInstancesDetail { 12311 s.SlaveInstanceType = &v 12312 return s 12313} 12314 12315// SetTerminationProtected sets the TerminationProtected field's value. 12316func (s *JobFlowInstancesDetail) SetTerminationProtected(v bool) *JobFlowInstancesDetail { 12317 s.TerminationProtected = &v 12318 return s 12319} 12320 12321// Attributes for Kerberos configuration when Kerberos authentication is enabled 12322// using a security configuration. For more information see Use Kerberos Authentication 12323// (https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-kerberos.html) 12324// in the Amazon EMR Management Guide. 12325type KerberosAttributes struct { 12326 _ struct{} `type:"structure"` 12327 12328 // The Active Directory password for ADDomainJoinUser. 12329 ADDomainJoinPassword *string `type:"string"` 12330 12331 // Required only when establishing a cross-realm trust with an Active Directory 12332 // domain. A user with sufficient privileges to join resources to the domain. 12333 ADDomainJoinUser *string `type:"string"` 12334 12335 // Required only when establishing a cross-realm trust with a KDC in a different 12336 // realm. The cross-realm principal password, which must be identical across 12337 // realms. 12338 CrossRealmTrustPrincipalPassword *string `type:"string"` 12339 12340 // The password used within the cluster for the kadmin service on the cluster-dedicated 12341 // KDC, which maintains Kerberos principals, password policies, and keytabs 12342 // for the cluster. 12343 // 12344 // KdcAdminPassword is a required field 12345 KdcAdminPassword *string `type:"string" required:"true"` 12346 12347 // The name of the Kerberos realm to which all nodes in a cluster belong. For 12348 // example, EC2.INTERNAL. 12349 // 12350 // Realm is a required field 12351 Realm *string `type:"string" required:"true"` 12352} 12353 12354// String returns the string representation. 12355// 12356// API parameter values that are decorated as "sensitive" in the API will not 12357// be included in the string output. The member name will be present, but the 12358// value will be replaced with "sensitive". 12359func (s KerberosAttributes) String() string { 12360 return awsutil.Prettify(s) 12361} 12362 12363// GoString returns the string representation. 12364// 12365// API parameter values that are decorated as "sensitive" in the API will not 12366// be included in the string output. The member name will be present, but the 12367// value will be replaced with "sensitive". 12368func (s KerberosAttributes) GoString() string { 12369 return s.String() 12370} 12371 12372// Validate inspects the fields of the type to determine if they are valid. 12373func (s *KerberosAttributes) Validate() error { 12374 invalidParams := request.ErrInvalidParams{Context: "KerberosAttributes"} 12375 if s.KdcAdminPassword == nil { 12376 invalidParams.Add(request.NewErrParamRequired("KdcAdminPassword")) 12377 } 12378 if s.Realm == nil { 12379 invalidParams.Add(request.NewErrParamRequired("Realm")) 12380 } 12381 12382 if invalidParams.Len() > 0 { 12383 return invalidParams 12384 } 12385 return nil 12386} 12387 12388// SetADDomainJoinPassword sets the ADDomainJoinPassword field's value. 12389func (s *KerberosAttributes) SetADDomainJoinPassword(v string) *KerberosAttributes { 12390 s.ADDomainJoinPassword = &v 12391 return s 12392} 12393 12394// SetADDomainJoinUser sets the ADDomainJoinUser field's value. 12395func (s *KerberosAttributes) SetADDomainJoinUser(v string) *KerberosAttributes { 12396 s.ADDomainJoinUser = &v 12397 return s 12398} 12399 12400// SetCrossRealmTrustPrincipalPassword sets the CrossRealmTrustPrincipalPassword field's value. 12401func (s *KerberosAttributes) SetCrossRealmTrustPrincipalPassword(v string) *KerberosAttributes { 12402 s.CrossRealmTrustPrincipalPassword = &v 12403 return s 12404} 12405 12406// SetKdcAdminPassword sets the KdcAdminPassword field's value. 12407func (s *KerberosAttributes) SetKdcAdminPassword(v string) *KerberosAttributes { 12408 s.KdcAdminPassword = &v 12409 return s 12410} 12411 12412// SetRealm sets the Realm field's value. 12413func (s *KerberosAttributes) SetRealm(v string) *KerberosAttributes { 12414 s.Realm = &v 12415 return s 12416} 12417 12418// A key-value pair. 12419type KeyValue struct { 12420 _ struct{} `type:"structure"` 12421 12422 // The unique identifier of a key-value pair. 12423 Key *string `type:"string"` 12424 12425 // The value part of the identified key. 12426 Value *string `type:"string"` 12427} 12428 12429// String returns the string representation. 12430// 12431// API parameter values that are decorated as "sensitive" in the API will not 12432// be included in the string output. The member name will be present, but the 12433// value will be replaced with "sensitive". 12434func (s KeyValue) String() string { 12435 return awsutil.Prettify(s) 12436} 12437 12438// GoString returns the string representation. 12439// 12440// API parameter values that are decorated as "sensitive" in the API will not 12441// be included in the string output. The member name will be present, but the 12442// value will be replaced with "sensitive". 12443func (s KeyValue) GoString() string { 12444 return s.String() 12445} 12446 12447// SetKey sets the Key field's value. 12448func (s *KeyValue) SetKey(v string) *KeyValue { 12449 s.Key = &v 12450 return s 12451} 12452 12453// SetValue sets the Value field's value. 12454func (s *KeyValue) SetValue(v string) *KeyValue { 12455 s.Value = &v 12456 return s 12457} 12458 12459// This input determines which bootstrap actions to retrieve. 12460type ListBootstrapActionsInput struct { 12461 _ struct{} `type:"structure"` 12462 12463 // The cluster identifier for the bootstrap actions to list. 12464 // 12465 // ClusterId is a required field 12466 ClusterId *string `type:"string" required:"true"` 12467 12468 // The pagination token that indicates the next set of results to retrieve. 12469 Marker *string `type:"string"` 12470} 12471 12472// String returns the string representation. 12473// 12474// API parameter values that are decorated as "sensitive" in the API will not 12475// be included in the string output. The member name will be present, but the 12476// value will be replaced with "sensitive". 12477func (s ListBootstrapActionsInput) String() string { 12478 return awsutil.Prettify(s) 12479} 12480 12481// GoString returns the string representation. 12482// 12483// API parameter values that are decorated as "sensitive" in the API will not 12484// be included in the string output. The member name will be present, but the 12485// value will be replaced with "sensitive". 12486func (s ListBootstrapActionsInput) GoString() string { 12487 return s.String() 12488} 12489 12490// Validate inspects the fields of the type to determine if they are valid. 12491func (s *ListBootstrapActionsInput) Validate() error { 12492 invalidParams := request.ErrInvalidParams{Context: "ListBootstrapActionsInput"} 12493 if s.ClusterId == nil { 12494 invalidParams.Add(request.NewErrParamRequired("ClusterId")) 12495 } 12496 12497 if invalidParams.Len() > 0 { 12498 return invalidParams 12499 } 12500 return nil 12501} 12502 12503// SetClusterId sets the ClusterId field's value. 12504func (s *ListBootstrapActionsInput) SetClusterId(v string) *ListBootstrapActionsInput { 12505 s.ClusterId = &v 12506 return s 12507} 12508 12509// SetMarker sets the Marker field's value. 12510func (s *ListBootstrapActionsInput) SetMarker(v string) *ListBootstrapActionsInput { 12511 s.Marker = &v 12512 return s 12513} 12514 12515// This output contains the bootstrap actions detail. 12516type ListBootstrapActionsOutput struct { 12517 _ struct{} `type:"structure"` 12518 12519 // The bootstrap actions associated with the cluster. 12520 BootstrapActions []*Command `type:"list"` 12521 12522 // The pagination token that indicates the next set of results to retrieve. 12523 Marker *string `type:"string"` 12524} 12525 12526// String returns the string representation. 12527// 12528// API parameter values that are decorated as "sensitive" in the API will not 12529// be included in the string output. The member name will be present, but the 12530// value will be replaced with "sensitive". 12531func (s ListBootstrapActionsOutput) String() string { 12532 return awsutil.Prettify(s) 12533} 12534 12535// GoString returns the string representation. 12536// 12537// API parameter values that are decorated as "sensitive" in the API will not 12538// be included in the string output. The member name will be present, but the 12539// value will be replaced with "sensitive". 12540func (s ListBootstrapActionsOutput) GoString() string { 12541 return s.String() 12542} 12543 12544// SetBootstrapActions sets the BootstrapActions field's value. 12545func (s *ListBootstrapActionsOutput) SetBootstrapActions(v []*Command) *ListBootstrapActionsOutput { 12546 s.BootstrapActions = v 12547 return s 12548} 12549 12550// SetMarker sets the Marker field's value. 12551func (s *ListBootstrapActionsOutput) SetMarker(v string) *ListBootstrapActionsOutput { 12552 s.Marker = &v 12553 return s 12554} 12555 12556// This input determines how the ListClusters action filters the list of clusters 12557// that it returns. 12558type ListClustersInput struct { 12559 _ struct{} `type:"structure"` 12560 12561 // The cluster state filters to apply when listing clusters. Clusters that change 12562 // state while this action runs may be not be returned as expected in the list 12563 // of clusters. 12564 ClusterStates []*string `type:"list"` 12565 12566 // The creation date and time beginning value filter for listing clusters. 12567 CreatedAfter *time.Time `type:"timestamp"` 12568 12569 // The creation date and time end value filter for listing clusters. 12570 CreatedBefore *time.Time `type:"timestamp"` 12571 12572 // The pagination token that indicates the next set of results to retrieve. 12573 Marker *string `type:"string"` 12574} 12575 12576// String returns the string representation. 12577// 12578// API parameter values that are decorated as "sensitive" in the API will not 12579// be included in the string output. The member name will be present, but the 12580// value will be replaced with "sensitive". 12581func (s ListClustersInput) String() string { 12582 return awsutil.Prettify(s) 12583} 12584 12585// GoString returns the string representation. 12586// 12587// API parameter values that are decorated as "sensitive" in the API will not 12588// be included in the string output. The member name will be present, but the 12589// value will be replaced with "sensitive". 12590func (s ListClustersInput) GoString() string { 12591 return s.String() 12592} 12593 12594// SetClusterStates sets the ClusterStates field's value. 12595func (s *ListClustersInput) SetClusterStates(v []*string) *ListClustersInput { 12596 s.ClusterStates = v 12597 return s 12598} 12599 12600// SetCreatedAfter sets the CreatedAfter field's value. 12601func (s *ListClustersInput) SetCreatedAfter(v time.Time) *ListClustersInput { 12602 s.CreatedAfter = &v 12603 return s 12604} 12605 12606// SetCreatedBefore sets the CreatedBefore field's value. 12607func (s *ListClustersInput) SetCreatedBefore(v time.Time) *ListClustersInput { 12608 s.CreatedBefore = &v 12609 return s 12610} 12611 12612// SetMarker sets the Marker field's value. 12613func (s *ListClustersInput) SetMarker(v string) *ListClustersInput { 12614 s.Marker = &v 12615 return s 12616} 12617 12618// This contains a ClusterSummaryList with the cluster details; for example, 12619// the cluster IDs, names, and status. 12620type ListClustersOutput struct { 12621 _ struct{} `type:"structure"` 12622 12623 // The list of clusters for the account based on the given filters. 12624 Clusters []*ClusterSummary `type:"list"` 12625 12626 // The pagination token that indicates the next set of results to retrieve. 12627 Marker *string `type:"string"` 12628} 12629 12630// String returns the string representation. 12631// 12632// API parameter values that are decorated as "sensitive" in the API will not 12633// be included in the string output. The member name will be present, but the 12634// value will be replaced with "sensitive". 12635func (s ListClustersOutput) String() string { 12636 return awsutil.Prettify(s) 12637} 12638 12639// GoString returns the string representation. 12640// 12641// API parameter values that are decorated as "sensitive" in the API will not 12642// be included in the string output. The member name will be present, but the 12643// value will be replaced with "sensitive". 12644func (s ListClustersOutput) GoString() string { 12645 return s.String() 12646} 12647 12648// SetClusters sets the Clusters field's value. 12649func (s *ListClustersOutput) SetClusters(v []*ClusterSummary) *ListClustersOutput { 12650 s.Clusters = v 12651 return s 12652} 12653 12654// SetMarker sets the Marker field's value. 12655func (s *ListClustersOutput) SetMarker(v string) *ListClustersOutput { 12656 s.Marker = &v 12657 return s 12658} 12659 12660type ListInstanceFleetsInput struct { 12661 _ struct{} `type:"structure"` 12662 12663 // The unique identifier of the cluster. 12664 // 12665 // ClusterId is a required field 12666 ClusterId *string `type:"string" required:"true"` 12667 12668 // The pagination token that indicates the next set of results to retrieve. 12669 Marker *string `type:"string"` 12670} 12671 12672// String returns the string representation. 12673// 12674// API parameter values that are decorated as "sensitive" in the API will not 12675// be included in the string output. The member name will be present, but the 12676// value will be replaced with "sensitive". 12677func (s ListInstanceFleetsInput) String() string { 12678 return awsutil.Prettify(s) 12679} 12680 12681// GoString returns the string representation. 12682// 12683// API parameter values that are decorated as "sensitive" in the API will not 12684// be included in the string output. The member name will be present, but the 12685// value will be replaced with "sensitive". 12686func (s ListInstanceFleetsInput) GoString() string { 12687 return s.String() 12688} 12689 12690// Validate inspects the fields of the type to determine if they are valid. 12691func (s *ListInstanceFleetsInput) Validate() error { 12692 invalidParams := request.ErrInvalidParams{Context: "ListInstanceFleetsInput"} 12693 if s.ClusterId == nil { 12694 invalidParams.Add(request.NewErrParamRequired("ClusterId")) 12695 } 12696 12697 if invalidParams.Len() > 0 { 12698 return invalidParams 12699 } 12700 return nil 12701} 12702 12703// SetClusterId sets the ClusterId field's value. 12704func (s *ListInstanceFleetsInput) SetClusterId(v string) *ListInstanceFleetsInput { 12705 s.ClusterId = &v 12706 return s 12707} 12708 12709// SetMarker sets the Marker field's value. 12710func (s *ListInstanceFleetsInput) SetMarker(v string) *ListInstanceFleetsInput { 12711 s.Marker = &v 12712 return s 12713} 12714 12715type ListInstanceFleetsOutput struct { 12716 _ struct{} `type:"structure"` 12717 12718 // The list of instance fleets for the cluster and given filters. 12719 InstanceFleets []*InstanceFleet `type:"list"` 12720 12721 // The pagination token that indicates the next set of results to retrieve. 12722 Marker *string `type:"string"` 12723} 12724 12725// String returns the string representation. 12726// 12727// API parameter values that are decorated as "sensitive" in the API will not 12728// be included in the string output. The member name will be present, but the 12729// value will be replaced with "sensitive". 12730func (s ListInstanceFleetsOutput) String() string { 12731 return awsutil.Prettify(s) 12732} 12733 12734// GoString returns the string representation. 12735// 12736// API parameter values that are decorated as "sensitive" in the API will not 12737// be included in the string output. The member name will be present, but the 12738// value will be replaced with "sensitive". 12739func (s ListInstanceFleetsOutput) GoString() string { 12740 return s.String() 12741} 12742 12743// SetInstanceFleets sets the InstanceFleets field's value. 12744func (s *ListInstanceFleetsOutput) SetInstanceFleets(v []*InstanceFleet) *ListInstanceFleetsOutput { 12745 s.InstanceFleets = v 12746 return s 12747} 12748 12749// SetMarker sets the Marker field's value. 12750func (s *ListInstanceFleetsOutput) SetMarker(v string) *ListInstanceFleetsOutput { 12751 s.Marker = &v 12752 return s 12753} 12754 12755// This input determines which instance groups to retrieve. 12756type ListInstanceGroupsInput struct { 12757 _ struct{} `type:"structure"` 12758 12759 // The identifier of the cluster for which to list the instance groups. 12760 // 12761 // ClusterId is a required field 12762 ClusterId *string `type:"string" required:"true"` 12763 12764 // The pagination token that indicates the next set of results to retrieve. 12765 Marker *string `type:"string"` 12766} 12767 12768// String returns the string representation. 12769// 12770// API parameter values that are decorated as "sensitive" in the API will not 12771// be included in the string output. The member name will be present, but the 12772// value will be replaced with "sensitive". 12773func (s ListInstanceGroupsInput) String() string { 12774 return awsutil.Prettify(s) 12775} 12776 12777// GoString returns the string representation. 12778// 12779// API parameter values that are decorated as "sensitive" in the API will not 12780// be included in the string output. The member name will be present, but the 12781// value will be replaced with "sensitive". 12782func (s ListInstanceGroupsInput) GoString() string { 12783 return s.String() 12784} 12785 12786// Validate inspects the fields of the type to determine if they are valid. 12787func (s *ListInstanceGroupsInput) Validate() error { 12788 invalidParams := request.ErrInvalidParams{Context: "ListInstanceGroupsInput"} 12789 if s.ClusterId == nil { 12790 invalidParams.Add(request.NewErrParamRequired("ClusterId")) 12791 } 12792 12793 if invalidParams.Len() > 0 { 12794 return invalidParams 12795 } 12796 return nil 12797} 12798 12799// SetClusterId sets the ClusterId field's value. 12800func (s *ListInstanceGroupsInput) SetClusterId(v string) *ListInstanceGroupsInput { 12801 s.ClusterId = &v 12802 return s 12803} 12804 12805// SetMarker sets the Marker field's value. 12806func (s *ListInstanceGroupsInput) SetMarker(v string) *ListInstanceGroupsInput { 12807 s.Marker = &v 12808 return s 12809} 12810 12811// This input determines which instance groups to retrieve. 12812type ListInstanceGroupsOutput struct { 12813 _ struct{} `type:"structure"` 12814 12815 // The list of instance groups for the cluster and given filters. 12816 InstanceGroups []*InstanceGroup `type:"list"` 12817 12818 // The pagination token that indicates the next set of results to retrieve. 12819 Marker *string `type:"string"` 12820} 12821 12822// String returns the string representation. 12823// 12824// API parameter values that are decorated as "sensitive" in the API will not 12825// be included in the string output. The member name will be present, but the 12826// value will be replaced with "sensitive". 12827func (s ListInstanceGroupsOutput) String() string { 12828 return awsutil.Prettify(s) 12829} 12830 12831// GoString returns the string representation. 12832// 12833// API parameter values that are decorated as "sensitive" in the API will not 12834// be included in the string output. The member name will be present, but the 12835// value will be replaced with "sensitive". 12836func (s ListInstanceGroupsOutput) GoString() string { 12837 return s.String() 12838} 12839 12840// SetInstanceGroups sets the InstanceGroups field's value. 12841func (s *ListInstanceGroupsOutput) SetInstanceGroups(v []*InstanceGroup) *ListInstanceGroupsOutput { 12842 s.InstanceGroups = v 12843 return s 12844} 12845 12846// SetMarker sets the Marker field's value. 12847func (s *ListInstanceGroupsOutput) SetMarker(v string) *ListInstanceGroupsOutput { 12848 s.Marker = &v 12849 return s 12850} 12851 12852// This input determines which instances to list. 12853type ListInstancesInput struct { 12854 _ struct{} `type:"structure"` 12855 12856 // The identifier of the cluster for which to list the instances. 12857 // 12858 // ClusterId is a required field 12859 ClusterId *string `type:"string" required:"true"` 12860 12861 // The unique identifier of the instance fleet. 12862 InstanceFleetId *string `type:"string"` 12863 12864 // The node type of the instance fleet. For example MASTER, CORE, or TASK. 12865 InstanceFleetType *string `type:"string" enum:"InstanceFleetType"` 12866 12867 // The identifier of the instance group for which to list the instances. 12868 InstanceGroupId *string `type:"string"` 12869 12870 // The type of instance group for which to list the instances. 12871 InstanceGroupTypes []*string `type:"list"` 12872 12873 // A list of instance states that will filter the instances returned with this 12874 // request. 12875 InstanceStates []*string `type:"list"` 12876 12877 // The pagination token that indicates the next set of results to retrieve. 12878 Marker *string `type:"string"` 12879} 12880 12881// String returns the string representation. 12882// 12883// API parameter values that are decorated as "sensitive" in the API will not 12884// be included in the string output. The member name will be present, but the 12885// value will be replaced with "sensitive". 12886func (s ListInstancesInput) String() string { 12887 return awsutil.Prettify(s) 12888} 12889 12890// GoString returns the string representation. 12891// 12892// API parameter values that are decorated as "sensitive" in the API will not 12893// be included in the string output. The member name will be present, but the 12894// value will be replaced with "sensitive". 12895func (s ListInstancesInput) GoString() string { 12896 return s.String() 12897} 12898 12899// Validate inspects the fields of the type to determine if they are valid. 12900func (s *ListInstancesInput) Validate() error { 12901 invalidParams := request.ErrInvalidParams{Context: "ListInstancesInput"} 12902 if s.ClusterId == nil { 12903 invalidParams.Add(request.NewErrParamRequired("ClusterId")) 12904 } 12905 12906 if invalidParams.Len() > 0 { 12907 return invalidParams 12908 } 12909 return nil 12910} 12911 12912// SetClusterId sets the ClusterId field's value. 12913func (s *ListInstancesInput) SetClusterId(v string) *ListInstancesInput { 12914 s.ClusterId = &v 12915 return s 12916} 12917 12918// SetInstanceFleetId sets the InstanceFleetId field's value. 12919func (s *ListInstancesInput) SetInstanceFleetId(v string) *ListInstancesInput { 12920 s.InstanceFleetId = &v 12921 return s 12922} 12923 12924// SetInstanceFleetType sets the InstanceFleetType field's value. 12925func (s *ListInstancesInput) SetInstanceFleetType(v string) *ListInstancesInput { 12926 s.InstanceFleetType = &v 12927 return s 12928} 12929 12930// SetInstanceGroupId sets the InstanceGroupId field's value. 12931func (s *ListInstancesInput) SetInstanceGroupId(v string) *ListInstancesInput { 12932 s.InstanceGroupId = &v 12933 return s 12934} 12935 12936// SetInstanceGroupTypes sets the InstanceGroupTypes field's value. 12937func (s *ListInstancesInput) SetInstanceGroupTypes(v []*string) *ListInstancesInput { 12938 s.InstanceGroupTypes = v 12939 return s 12940} 12941 12942// SetInstanceStates sets the InstanceStates field's value. 12943func (s *ListInstancesInput) SetInstanceStates(v []*string) *ListInstancesInput { 12944 s.InstanceStates = v 12945 return s 12946} 12947 12948// SetMarker sets the Marker field's value. 12949func (s *ListInstancesInput) SetMarker(v string) *ListInstancesInput { 12950 s.Marker = &v 12951 return s 12952} 12953 12954// This output contains the list of instances. 12955type ListInstancesOutput struct { 12956 _ struct{} `type:"structure"` 12957 12958 // The list of instances for the cluster and given filters. 12959 Instances []*Instance `type:"list"` 12960 12961 // The pagination token that indicates the next set of results to retrieve. 12962 Marker *string `type:"string"` 12963} 12964 12965// String returns the string representation. 12966// 12967// API parameter values that are decorated as "sensitive" in the API will not 12968// be included in the string output. The member name will be present, but the 12969// value will be replaced with "sensitive". 12970func (s ListInstancesOutput) String() string { 12971 return awsutil.Prettify(s) 12972} 12973 12974// GoString returns the string representation. 12975// 12976// API parameter values that are decorated as "sensitive" in the API will not 12977// be included in the string output. The member name will be present, but the 12978// value will be replaced with "sensitive". 12979func (s ListInstancesOutput) GoString() string { 12980 return s.String() 12981} 12982 12983// SetInstances sets the Instances field's value. 12984func (s *ListInstancesOutput) SetInstances(v []*Instance) *ListInstancesOutput { 12985 s.Instances = v 12986 return s 12987} 12988 12989// SetMarker sets the Marker field's value. 12990func (s *ListInstancesOutput) SetMarker(v string) *ListInstancesOutput { 12991 s.Marker = &v 12992 return s 12993} 12994 12995type ListNotebookExecutionsInput struct { 12996 _ struct{} `type:"structure"` 12997 12998 // The unique ID of the editor associated with the notebook execution. 12999 EditorId *string `type:"string"` 13000 13001 // The beginning of time range filter for listing notebook executions. The default 13002 // is the timestamp of 30 days ago. 13003 From *time.Time `type:"timestamp"` 13004 13005 // The pagination token, returned by a previous ListNotebookExecutions call, 13006 // that indicates the start of the list for this ListNotebookExecutions call. 13007 Marker *string `type:"string"` 13008 13009 // The status filter for listing notebook executions. 13010 // 13011 // * START_PENDING indicates that the cluster has received the execution 13012 // request but execution has not begun. 13013 // 13014 // * STARTING indicates that the execution is starting on the cluster. 13015 // 13016 // * RUNNING indicates that the execution is being processed by the cluster. 13017 // 13018 // * FINISHING indicates that execution processing is in the final stages. 13019 // 13020 // * FINISHED indicates that the execution has completed without error. 13021 // 13022 // * FAILING indicates that the execution is failing and will not finish 13023 // successfully. 13024 // 13025 // * FAILED indicates that the execution failed. 13026 // 13027 // * STOP_PENDING indicates that the cluster has received a StopNotebookExecution 13028 // request and the stop is pending. 13029 // 13030 // * STOPPING indicates that the cluster is in the process of stopping the 13031 // execution as a result of a StopNotebookExecution request. 13032 // 13033 // * STOPPED indicates that the execution stopped because of a StopNotebookExecution 13034 // request. 13035 Status *string `type:"string" enum:"NotebookExecutionStatus"` 13036 13037 // The end of time range filter for listing notebook executions. The default 13038 // is the current timestamp. 13039 To *time.Time `type:"timestamp"` 13040} 13041 13042// String returns the string representation. 13043// 13044// API parameter values that are decorated as "sensitive" in the API will not 13045// be included in the string output. The member name will be present, but the 13046// value will be replaced with "sensitive". 13047func (s ListNotebookExecutionsInput) String() string { 13048 return awsutil.Prettify(s) 13049} 13050 13051// GoString returns the string representation. 13052// 13053// API parameter values that are decorated as "sensitive" in the API will not 13054// be included in the string output. The member name will be present, but the 13055// value will be replaced with "sensitive". 13056func (s ListNotebookExecutionsInput) GoString() string { 13057 return s.String() 13058} 13059 13060// SetEditorId sets the EditorId field's value. 13061func (s *ListNotebookExecutionsInput) SetEditorId(v string) *ListNotebookExecutionsInput { 13062 s.EditorId = &v 13063 return s 13064} 13065 13066// SetFrom sets the From field's value. 13067func (s *ListNotebookExecutionsInput) SetFrom(v time.Time) *ListNotebookExecutionsInput { 13068 s.From = &v 13069 return s 13070} 13071 13072// SetMarker sets the Marker field's value. 13073func (s *ListNotebookExecutionsInput) SetMarker(v string) *ListNotebookExecutionsInput { 13074 s.Marker = &v 13075 return s 13076} 13077 13078// SetStatus sets the Status field's value. 13079func (s *ListNotebookExecutionsInput) SetStatus(v string) *ListNotebookExecutionsInput { 13080 s.Status = &v 13081 return s 13082} 13083 13084// SetTo sets the To field's value. 13085func (s *ListNotebookExecutionsInput) SetTo(v time.Time) *ListNotebookExecutionsInput { 13086 s.To = &v 13087 return s 13088} 13089 13090type ListNotebookExecutionsOutput struct { 13091 _ struct{} `type:"structure"` 13092 13093 // A pagination token that a subsequent ListNotebookExecutions can use to determine 13094 // the next set of results to retrieve. 13095 Marker *string `type:"string"` 13096 13097 // A list of notebook executions. 13098 NotebookExecutions []*NotebookExecutionSummary `type:"list"` 13099} 13100 13101// String returns the string representation. 13102// 13103// API parameter values that are decorated as "sensitive" in the API will not 13104// be included in the string output. The member name will be present, but the 13105// value will be replaced with "sensitive". 13106func (s ListNotebookExecutionsOutput) String() string { 13107 return awsutil.Prettify(s) 13108} 13109 13110// GoString returns the string representation. 13111// 13112// API parameter values that are decorated as "sensitive" in the API will not 13113// be included in the string output. The member name will be present, but the 13114// value will be replaced with "sensitive". 13115func (s ListNotebookExecutionsOutput) GoString() string { 13116 return s.String() 13117} 13118 13119// SetMarker sets the Marker field's value. 13120func (s *ListNotebookExecutionsOutput) SetMarker(v string) *ListNotebookExecutionsOutput { 13121 s.Marker = &v 13122 return s 13123} 13124 13125// SetNotebookExecutions sets the NotebookExecutions field's value. 13126func (s *ListNotebookExecutionsOutput) SetNotebookExecutions(v []*NotebookExecutionSummary) *ListNotebookExecutionsOutput { 13127 s.NotebookExecutions = v 13128 return s 13129} 13130 13131type ListReleaseLabelsInput struct { 13132 _ struct{} `type:"structure"` 13133 13134 // Filters the results of the request. Prefix specifies the prefix of release 13135 // labels to return. Application specifies the application (with/without version) 13136 // of release labels to return. 13137 Filters *ReleaseLabelFilter `type:"structure"` 13138 13139 // Defines the maximum number of release labels to return in a single response. 13140 // The default is 100. 13141 MaxResults *int64 `min:"1" type:"integer"` 13142 13143 // Specifies the next page of results. If NextToken is not specified, which 13144 // is usually the case for the first request of ListReleaseLabels, the first 13145 // page of results are determined by other filtering parameters or by the latest 13146 // version. The ListReleaseLabels request fails if the identity (Amazon Web 13147 // Services account ID) and all filtering parameters are different from the 13148 // original request, or if the NextToken is expired or tampered with. 13149 NextToken *string `type:"string"` 13150} 13151 13152// String returns the string representation. 13153// 13154// API parameter values that are decorated as "sensitive" in the API will not 13155// be included in the string output. The member name will be present, but the 13156// value will be replaced with "sensitive". 13157func (s ListReleaseLabelsInput) String() string { 13158 return awsutil.Prettify(s) 13159} 13160 13161// GoString returns the string representation. 13162// 13163// API parameter values that are decorated as "sensitive" in the API will not 13164// be included in the string output. The member name will be present, but the 13165// value will be replaced with "sensitive". 13166func (s ListReleaseLabelsInput) GoString() string { 13167 return s.String() 13168} 13169 13170// Validate inspects the fields of the type to determine if they are valid. 13171func (s *ListReleaseLabelsInput) Validate() error { 13172 invalidParams := request.ErrInvalidParams{Context: "ListReleaseLabelsInput"} 13173 if s.MaxResults != nil && *s.MaxResults < 1 { 13174 invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) 13175 } 13176 13177 if invalidParams.Len() > 0 { 13178 return invalidParams 13179 } 13180 return nil 13181} 13182 13183// SetFilters sets the Filters field's value. 13184func (s *ListReleaseLabelsInput) SetFilters(v *ReleaseLabelFilter) *ListReleaseLabelsInput { 13185 s.Filters = v 13186 return s 13187} 13188 13189// SetMaxResults sets the MaxResults field's value. 13190func (s *ListReleaseLabelsInput) SetMaxResults(v int64) *ListReleaseLabelsInput { 13191 s.MaxResults = &v 13192 return s 13193} 13194 13195// SetNextToken sets the NextToken field's value. 13196func (s *ListReleaseLabelsInput) SetNextToken(v string) *ListReleaseLabelsInput { 13197 s.NextToken = &v 13198 return s 13199} 13200 13201type ListReleaseLabelsOutput struct { 13202 _ struct{} `type:"structure"` 13203 13204 // Used to paginate the next page of results if specified in the next ListReleaseLabels 13205 // request. 13206 NextToken *string `type:"string"` 13207 13208 // The returned release labels. 13209 ReleaseLabels []*string `type:"list"` 13210} 13211 13212// String returns the string representation. 13213// 13214// API parameter values that are decorated as "sensitive" in the API will not 13215// be included in the string output. The member name will be present, but the 13216// value will be replaced with "sensitive". 13217func (s ListReleaseLabelsOutput) String() string { 13218 return awsutil.Prettify(s) 13219} 13220 13221// GoString returns the string representation. 13222// 13223// API parameter values that are decorated as "sensitive" in the API will not 13224// be included in the string output. The member name will be present, but the 13225// value will be replaced with "sensitive". 13226func (s ListReleaseLabelsOutput) GoString() string { 13227 return s.String() 13228} 13229 13230// SetNextToken sets the NextToken field's value. 13231func (s *ListReleaseLabelsOutput) SetNextToken(v string) *ListReleaseLabelsOutput { 13232 s.NextToken = &v 13233 return s 13234} 13235 13236// SetReleaseLabels sets the ReleaseLabels field's value. 13237func (s *ListReleaseLabelsOutput) SetReleaseLabels(v []*string) *ListReleaseLabelsOutput { 13238 s.ReleaseLabels = v 13239 return s 13240} 13241 13242type ListSecurityConfigurationsInput struct { 13243 _ struct{} `type:"structure"` 13244 13245 // The pagination token that indicates the set of results to retrieve. 13246 Marker *string `type:"string"` 13247} 13248 13249// String returns the string representation. 13250// 13251// API parameter values that are decorated as "sensitive" in the API will not 13252// be included in the string output. The member name will be present, but the 13253// value will be replaced with "sensitive". 13254func (s ListSecurityConfigurationsInput) String() string { 13255 return awsutil.Prettify(s) 13256} 13257 13258// GoString returns the string representation. 13259// 13260// API parameter values that are decorated as "sensitive" in the API will not 13261// be included in the string output. The member name will be present, but the 13262// value will be replaced with "sensitive". 13263func (s ListSecurityConfigurationsInput) GoString() string { 13264 return s.String() 13265} 13266 13267// SetMarker sets the Marker field's value. 13268func (s *ListSecurityConfigurationsInput) SetMarker(v string) *ListSecurityConfigurationsInput { 13269 s.Marker = &v 13270 return s 13271} 13272 13273type ListSecurityConfigurationsOutput struct { 13274 _ struct{} `type:"structure"` 13275 13276 // A pagination token that indicates the next set of results to retrieve. Include 13277 // the marker in the next ListSecurityConfiguration call to retrieve the next 13278 // page of results, if required. 13279 Marker *string `type:"string"` 13280 13281 // The creation date and time, and name, of each security configuration. 13282 SecurityConfigurations []*SecurityConfigurationSummary `type:"list"` 13283} 13284 13285// String returns the string representation. 13286// 13287// API parameter values that are decorated as "sensitive" in the API will not 13288// be included in the string output. The member name will be present, but the 13289// value will be replaced with "sensitive". 13290func (s ListSecurityConfigurationsOutput) String() string { 13291 return awsutil.Prettify(s) 13292} 13293 13294// GoString returns the string representation. 13295// 13296// API parameter values that are decorated as "sensitive" in the API will not 13297// be included in the string output. The member name will be present, but the 13298// value will be replaced with "sensitive". 13299func (s ListSecurityConfigurationsOutput) GoString() string { 13300 return s.String() 13301} 13302 13303// SetMarker sets the Marker field's value. 13304func (s *ListSecurityConfigurationsOutput) SetMarker(v string) *ListSecurityConfigurationsOutput { 13305 s.Marker = &v 13306 return s 13307} 13308 13309// SetSecurityConfigurations sets the SecurityConfigurations field's value. 13310func (s *ListSecurityConfigurationsOutput) SetSecurityConfigurations(v []*SecurityConfigurationSummary) *ListSecurityConfigurationsOutput { 13311 s.SecurityConfigurations = v 13312 return s 13313} 13314 13315// This input determines which steps to list. 13316type ListStepsInput struct { 13317 _ struct{} `type:"structure"` 13318 13319 // The identifier of the cluster for which to list the steps. 13320 // 13321 // ClusterId is a required field 13322 ClusterId *string `type:"string" required:"true"` 13323 13324 // The maximum number of steps that a single ListSteps action returns is 50. 13325 // To return a longer list of steps, use multiple ListSteps actions along with 13326 // the Marker parameter, which is a pagination token that indicates the next 13327 // set of results to retrieve. 13328 Marker *string `type:"string"` 13329 13330 // The filter to limit the step list based on the identifier of the steps. You 13331 // can specify a maximum of ten Step IDs. The character constraint applies to 13332 // the overall length of the array. 13333 StepIds []*string `type:"list"` 13334 13335 // The filter to limit the step list based on certain states. 13336 StepStates []*string `type:"list"` 13337} 13338 13339// String returns the string representation. 13340// 13341// API parameter values that are decorated as "sensitive" in the API will not 13342// be included in the string output. The member name will be present, but the 13343// value will be replaced with "sensitive". 13344func (s ListStepsInput) String() string { 13345 return awsutil.Prettify(s) 13346} 13347 13348// GoString returns the string representation. 13349// 13350// API parameter values that are decorated as "sensitive" in the API will not 13351// be included in the string output. The member name will be present, but the 13352// value will be replaced with "sensitive". 13353func (s ListStepsInput) GoString() string { 13354 return s.String() 13355} 13356 13357// Validate inspects the fields of the type to determine if they are valid. 13358func (s *ListStepsInput) Validate() error { 13359 invalidParams := request.ErrInvalidParams{Context: "ListStepsInput"} 13360 if s.ClusterId == nil { 13361 invalidParams.Add(request.NewErrParamRequired("ClusterId")) 13362 } 13363 13364 if invalidParams.Len() > 0 { 13365 return invalidParams 13366 } 13367 return nil 13368} 13369 13370// SetClusterId sets the ClusterId field's value. 13371func (s *ListStepsInput) SetClusterId(v string) *ListStepsInput { 13372 s.ClusterId = &v 13373 return s 13374} 13375 13376// SetMarker sets the Marker field's value. 13377func (s *ListStepsInput) SetMarker(v string) *ListStepsInput { 13378 s.Marker = &v 13379 return s 13380} 13381 13382// SetStepIds sets the StepIds field's value. 13383func (s *ListStepsInput) SetStepIds(v []*string) *ListStepsInput { 13384 s.StepIds = v 13385 return s 13386} 13387 13388// SetStepStates sets the StepStates field's value. 13389func (s *ListStepsInput) SetStepStates(v []*string) *ListStepsInput { 13390 s.StepStates = v 13391 return s 13392} 13393 13394// This output contains the list of steps returned in reverse order. This means 13395// that the last step is the first element in the list. 13396type ListStepsOutput struct { 13397 _ struct{} `type:"structure"` 13398 13399 // The maximum number of steps that a single ListSteps action returns is 50. 13400 // To return a longer list of steps, use multiple ListSteps actions along with 13401 // the Marker parameter, which is a pagination token that indicates the next 13402 // set of results to retrieve. 13403 Marker *string `type:"string"` 13404 13405 // The filtered list of steps for the cluster. 13406 Steps []*StepSummary `type:"list"` 13407} 13408 13409// String returns the string representation. 13410// 13411// API parameter values that are decorated as "sensitive" in the API will not 13412// be included in the string output. The member name will be present, but the 13413// value will be replaced with "sensitive". 13414func (s ListStepsOutput) String() string { 13415 return awsutil.Prettify(s) 13416} 13417 13418// GoString returns the string representation. 13419// 13420// API parameter values that are decorated as "sensitive" in the API will not 13421// be included in the string output. The member name will be present, but the 13422// value will be replaced with "sensitive". 13423func (s ListStepsOutput) GoString() string { 13424 return s.String() 13425} 13426 13427// SetMarker sets the Marker field's value. 13428func (s *ListStepsOutput) SetMarker(v string) *ListStepsOutput { 13429 s.Marker = &v 13430 return s 13431} 13432 13433// SetSteps sets the Steps field's value. 13434func (s *ListStepsOutput) SetSteps(v []*StepSummary) *ListStepsOutput { 13435 s.Steps = v 13436 return s 13437} 13438 13439type ListStudioSessionMappingsInput struct { 13440 _ struct{} `type:"structure"` 13441 13442 // Specifies whether to return session mappings for users or groups. If not 13443 // specified, the results include session mapping details for both users and 13444 // groups. 13445 IdentityType *string `type:"string" enum:"IdentityType"` 13446 13447 // The pagination token that indicates the set of results to retrieve. 13448 Marker *string `type:"string"` 13449 13450 // The ID of the Amazon EMR Studio. 13451 StudioId *string `type:"string"` 13452} 13453 13454// String returns the string representation. 13455// 13456// API parameter values that are decorated as "sensitive" in the API will not 13457// be included in the string output. The member name will be present, but the 13458// value will be replaced with "sensitive". 13459func (s ListStudioSessionMappingsInput) String() string { 13460 return awsutil.Prettify(s) 13461} 13462 13463// GoString returns the string representation. 13464// 13465// API parameter values that are decorated as "sensitive" in the API will not 13466// be included in the string output. The member name will be present, but the 13467// value will be replaced with "sensitive". 13468func (s ListStudioSessionMappingsInput) GoString() string { 13469 return s.String() 13470} 13471 13472// SetIdentityType sets the IdentityType field's value. 13473func (s *ListStudioSessionMappingsInput) SetIdentityType(v string) *ListStudioSessionMappingsInput { 13474 s.IdentityType = &v 13475 return s 13476} 13477 13478// SetMarker sets the Marker field's value. 13479func (s *ListStudioSessionMappingsInput) SetMarker(v string) *ListStudioSessionMappingsInput { 13480 s.Marker = &v 13481 return s 13482} 13483 13484// SetStudioId sets the StudioId field's value. 13485func (s *ListStudioSessionMappingsInput) SetStudioId(v string) *ListStudioSessionMappingsInput { 13486 s.StudioId = &v 13487 return s 13488} 13489 13490type ListStudioSessionMappingsOutput struct { 13491 _ struct{} `type:"structure"` 13492 13493 // The pagination token that indicates the next set of results to retrieve. 13494 Marker *string `type:"string"` 13495 13496 // A list of session mapping summary objects. Each object includes session mapping 13497 // details such as creation time, identity type (user or group), and Amazon 13498 // EMR Studio ID. 13499 SessionMappings []*SessionMappingSummary `type:"list"` 13500} 13501 13502// String returns the string representation. 13503// 13504// API parameter values that are decorated as "sensitive" in the API will not 13505// be included in the string output. The member name will be present, but the 13506// value will be replaced with "sensitive". 13507func (s ListStudioSessionMappingsOutput) String() string { 13508 return awsutil.Prettify(s) 13509} 13510 13511// GoString returns the string representation. 13512// 13513// API parameter values that are decorated as "sensitive" in the API will not 13514// be included in the string output. The member name will be present, but the 13515// value will be replaced with "sensitive". 13516func (s ListStudioSessionMappingsOutput) GoString() string { 13517 return s.String() 13518} 13519 13520// SetMarker sets the Marker field's value. 13521func (s *ListStudioSessionMappingsOutput) SetMarker(v string) *ListStudioSessionMappingsOutput { 13522 s.Marker = &v 13523 return s 13524} 13525 13526// SetSessionMappings sets the SessionMappings field's value. 13527func (s *ListStudioSessionMappingsOutput) SetSessionMappings(v []*SessionMappingSummary) *ListStudioSessionMappingsOutput { 13528 s.SessionMappings = v 13529 return s 13530} 13531 13532type ListStudiosInput struct { 13533 _ struct{} `type:"structure"` 13534 13535 // The pagination token that indicates the set of results to retrieve. 13536 Marker *string `type:"string"` 13537} 13538 13539// String returns the string representation. 13540// 13541// API parameter values that are decorated as "sensitive" in the API will not 13542// be included in the string output. The member name will be present, but the 13543// value will be replaced with "sensitive". 13544func (s ListStudiosInput) String() string { 13545 return awsutil.Prettify(s) 13546} 13547 13548// GoString returns the string representation. 13549// 13550// API parameter values that are decorated as "sensitive" in the API will not 13551// be included in the string output. The member name will be present, but the 13552// value will be replaced with "sensitive". 13553func (s ListStudiosInput) GoString() string { 13554 return s.String() 13555} 13556 13557// SetMarker sets the Marker field's value. 13558func (s *ListStudiosInput) SetMarker(v string) *ListStudiosInput { 13559 s.Marker = &v 13560 return s 13561} 13562 13563type ListStudiosOutput struct { 13564 _ struct{} `type:"structure"` 13565 13566 // The pagination token that indicates the next set of results to retrieve. 13567 Marker *string `type:"string"` 13568 13569 // The list of Studio summary objects. 13570 Studios []*StudioSummary `type:"list"` 13571} 13572 13573// String returns the string representation. 13574// 13575// API parameter values that are decorated as "sensitive" in the API will not 13576// be included in the string output. The member name will be present, but the 13577// value will be replaced with "sensitive". 13578func (s ListStudiosOutput) String() string { 13579 return awsutil.Prettify(s) 13580} 13581 13582// GoString returns the string representation. 13583// 13584// API parameter values that are decorated as "sensitive" in the API will not 13585// be included in the string output. The member name will be present, but the 13586// value will be replaced with "sensitive". 13587func (s ListStudiosOutput) GoString() string { 13588 return s.String() 13589} 13590 13591// SetMarker sets the Marker field's value. 13592func (s *ListStudiosOutput) SetMarker(v string) *ListStudiosOutput { 13593 s.Marker = &v 13594 return s 13595} 13596 13597// SetStudios sets the Studios field's value. 13598func (s *ListStudiosOutput) SetStudios(v []*StudioSummary) *ListStudiosOutput { 13599 s.Studios = v 13600 return s 13601} 13602 13603// Managed scaling policy for an Amazon EMR cluster. The policy specifies the 13604// limits for resources that can be added or terminated from a cluster. The 13605// policy only applies to the core and task nodes. The master node cannot be 13606// scaled after initial configuration. 13607type ManagedScalingPolicy struct { 13608 _ struct{} `type:"structure"` 13609 13610 // The EC2 unit limits for a managed scaling policy. The managed scaling activity 13611 // of a cluster is not allowed to go above or below these limits. The limit 13612 // only applies to the core and task nodes. The master node cannot be scaled 13613 // after initial configuration. 13614 ComputeLimits *ComputeLimits `type:"structure"` 13615} 13616 13617// String returns the string representation. 13618// 13619// API parameter values that are decorated as "sensitive" in the API will not 13620// be included in the string output. The member name will be present, but the 13621// value will be replaced with "sensitive". 13622func (s ManagedScalingPolicy) String() string { 13623 return awsutil.Prettify(s) 13624} 13625 13626// GoString returns the string representation. 13627// 13628// API parameter values that are decorated as "sensitive" in the API will not 13629// be included in the string output. The member name will be present, but the 13630// value will be replaced with "sensitive". 13631func (s ManagedScalingPolicy) GoString() string { 13632 return s.String() 13633} 13634 13635// Validate inspects the fields of the type to determine if they are valid. 13636func (s *ManagedScalingPolicy) Validate() error { 13637 invalidParams := request.ErrInvalidParams{Context: "ManagedScalingPolicy"} 13638 if s.ComputeLimits != nil { 13639 if err := s.ComputeLimits.Validate(); err != nil { 13640 invalidParams.AddNested("ComputeLimits", err.(request.ErrInvalidParams)) 13641 } 13642 } 13643 13644 if invalidParams.Len() > 0 { 13645 return invalidParams 13646 } 13647 return nil 13648} 13649 13650// SetComputeLimits sets the ComputeLimits field's value. 13651func (s *ManagedScalingPolicy) SetComputeLimits(v *ComputeLimits) *ManagedScalingPolicy { 13652 s.ComputeLimits = v 13653 return s 13654} 13655 13656// A CloudWatch dimension, which is specified using a Key (known as a Name in 13657// CloudWatch), Value pair. By default, Amazon EMR uses one dimension whose 13658// Key is JobFlowID and Value is a variable representing the cluster ID, which 13659// is ${emr.clusterId}. This enables the rule to bootstrap when the cluster 13660// ID becomes available. 13661type MetricDimension struct { 13662 _ struct{} `type:"structure"` 13663 13664 // The dimension name. 13665 Key *string `type:"string"` 13666 13667 // The dimension value. 13668 Value *string `type:"string"` 13669} 13670 13671// String returns the string representation. 13672// 13673// API parameter values that are decorated as "sensitive" in the API will not 13674// be included in the string output. The member name will be present, but the 13675// value will be replaced with "sensitive". 13676func (s MetricDimension) String() string { 13677 return awsutil.Prettify(s) 13678} 13679 13680// GoString returns the string representation. 13681// 13682// API parameter values that are decorated as "sensitive" in the API will not 13683// be included in the string output. The member name will be present, but the 13684// value will be replaced with "sensitive". 13685func (s MetricDimension) GoString() string { 13686 return s.String() 13687} 13688 13689// SetKey sets the Key field's value. 13690func (s *MetricDimension) SetKey(v string) *MetricDimension { 13691 s.Key = &v 13692 return s 13693} 13694 13695// SetValue sets the Value field's value. 13696func (s *MetricDimension) SetValue(v string) *MetricDimension { 13697 s.Value = &v 13698 return s 13699} 13700 13701type ModifyClusterInput struct { 13702 _ struct{} `type:"structure"` 13703 13704 // The unique identifier of the cluster. 13705 // 13706 // ClusterId is a required field 13707 ClusterId *string `type:"string" required:"true"` 13708 13709 // The number of steps that can be executed concurrently. You can specify a 13710 // minimum of 1 step and a maximum of 256 steps. We recommend that you do not 13711 // change this parameter while steps are running or the ActionOnFailure setting 13712 // may not behave as expected. For more information see Step$ActionOnFailure. 13713 StepConcurrencyLevel *int64 `type:"integer"` 13714} 13715 13716// String returns the string representation. 13717// 13718// API parameter values that are decorated as "sensitive" in the API will not 13719// be included in the string output. The member name will be present, but the 13720// value will be replaced with "sensitive". 13721func (s ModifyClusterInput) String() string { 13722 return awsutil.Prettify(s) 13723} 13724 13725// GoString returns the string representation. 13726// 13727// API parameter values that are decorated as "sensitive" in the API will not 13728// be included in the string output. The member name will be present, but the 13729// value will be replaced with "sensitive". 13730func (s ModifyClusterInput) GoString() string { 13731 return s.String() 13732} 13733 13734// Validate inspects the fields of the type to determine if they are valid. 13735func (s *ModifyClusterInput) Validate() error { 13736 invalidParams := request.ErrInvalidParams{Context: "ModifyClusterInput"} 13737 if s.ClusterId == nil { 13738 invalidParams.Add(request.NewErrParamRequired("ClusterId")) 13739 } 13740 13741 if invalidParams.Len() > 0 { 13742 return invalidParams 13743 } 13744 return nil 13745} 13746 13747// SetClusterId sets the ClusterId field's value. 13748func (s *ModifyClusterInput) SetClusterId(v string) *ModifyClusterInput { 13749 s.ClusterId = &v 13750 return s 13751} 13752 13753// SetStepConcurrencyLevel sets the StepConcurrencyLevel field's value. 13754func (s *ModifyClusterInput) SetStepConcurrencyLevel(v int64) *ModifyClusterInput { 13755 s.StepConcurrencyLevel = &v 13756 return s 13757} 13758 13759type ModifyClusterOutput struct { 13760 _ struct{} `type:"structure"` 13761 13762 // The number of steps that can be executed concurrently. 13763 StepConcurrencyLevel *int64 `type:"integer"` 13764} 13765 13766// String returns the string representation. 13767// 13768// API parameter values that are decorated as "sensitive" in the API will not 13769// be included in the string output. The member name will be present, but the 13770// value will be replaced with "sensitive". 13771func (s ModifyClusterOutput) String() string { 13772 return awsutil.Prettify(s) 13773} 13774 13775// GoString returns the string representation. 13776// 13777// API parameter values that are decorated as "sensitive" in the API will not 13778// be included in the string output. The member name will be present, but the 13779// value will be replaced with "sensitive". 13780func (s ModifyClusterOutput) GoString() string { 13781 return s.String() 13782} 13783 13784// SetStepConcurrencyLevel sets the StepConcurrencyLevel field's value. 13785func (s *ModifyClusterOutput) SetStepConcurrencyLevel(v int64) *ModifyClusterOutput { 13786 s.StepConcurrencyLevel = &v 13787 return s 13788} 13789 13790type ModifyInstanceFleetInput struct { 13791 _ struct{} `type:"structure"` 13792 13793 // The unique identifier of the cluster. 13794 // 13795 // ClusterId is a required field 13796 ClusterId *string `type:"string" required:"true"` 13797 13798 // The configuration parameters of the instance fleet. 13799 // 13800 // InstanceFleet is a required field 13801 InstanceFleet *InstanceFleetModifyConfig `type:"structure" required:"true"` 13802} 13803 13804// String returns the string representation. 13805// 13806// API parameter values that are decorated as "sensitive" in the API will not 13807// be included in the string output. The member name will be present, but the 13808// value will be replaced with "sensitive". 13809func (s ModifyInstanceFleetInput) String() string { 13810 return awsutil.Prettify(s) 13811} 13812 13813// GoString returns the string representation. 13814// 13815// API parameter values that are decorated as "sensitive" in the API will not 13816// be included in the string output. The member name will be present, but the 13817// value will be replaced with "sensitive". 13818func (s ModifyInstanceFleetInput) GoString() string { 13819 return s.String() 13820} 13821 13822// Validate inspects the fields of the type to determine if they are valid. 13823func (s *ModifyInstanceFleetInput) Validate() error { 13824 invalidParams := request.ErrInvalidParams{Context: "ModifyInstanceFleetInput"} 13825 if s.ClusterId == nil { 13826 invalidParams.Add(request.NewErrParamRequired("ClusterId")) 13827 } 13828 if s.InstanceFleet == nil { 13829 invalidParams.Add(request.NewErrParamRequired("InstanceFleet")) 13830 } 13831 if s.InstanceFleet != nil { 13832 if err := s.InstanceFleet.Validate(); err != nil { 13833 invalidParams.AddNested("InstanceFleet", err.(request.ErrInvalidParams)) 13834 } 13835 } 13836 13837 if invalidParams.Len() > 0 { 13838 return invalidParams 13839 } 13840 return nil 13841} 13842 13843// SetClusterId sets the ClusterId field's value. 13844func (s *ModifyInstanceFleetInput) SetClusterId(v string) *ModifyInstanceFleetInput { 13845 s.ClusterId = &v 13846 return s 13847} 13848 13849// SetInstanceFleet sets the InstanceFleet field's value. 13850func (s *ModifyInstanceFleetInput) SetInstanceFleet(v *InstanceFleetModifyConfig) *ModifyInstanceFleetInput { 13851 s.InstanceFleet = v 13852 return s 13853} 13854 13855type ModifyInstanceFleetOutput struct { 13856 _ struct{} `type:"structure"` 13857} 13858 13859// String returns the string representation. 13860// 13861// API parameter values that are decorated as "sensitive" in the API will not 13862// be included in the string output. The member name will be present, but the 13863// value will be replaced with "sensitive". 13864func (s ModifyInstanceFleetOutput) String() string { 13865 return awsutil.Prettify(s) 13866} 13867 13868// GoString returns the string representation. 13869// 13870// API parameter values that are decorated as "sensitive" in the API will not 13871// be included in the string output. The member name will be present, but the 13872// value will be replaced with "sensitive". 13873func (s ModifyInstanceFleetOutput) GoString() string { 13874 return s.String() 13875} 13876 13877// Change the size of some instance groups. 13878type ModifyInstanceGroupsInput struct { 13879 _ struct{} `type:"structure"` 13880 13881 // The ID of the cluster to which the instance group belongs. 13882 ClusterId *string `type:"string"` 13883 13884 // Instance groups to change. 13885 InstanceGroups []*InstanceGroupModifyConfig `type:"list"` 13886} 13887 13888// String returns the string representation. 13889// 13890// API parameter values that are decorated as "sensitive" in the API will not 13891// be included in the string output. The member name will be present, but the 13892// value will be replaced with "sensitive". 13893func (s ModifyInstanceGroupsInput) String() string { 13894 return awsutil.Prettify(s) 13895} 13896 13897// GoString returns the string representation. 13898// 13899// API parameter values that are decorated as "sensitive" in the API will not 13900// be included in the string output. The member name will be present, but the 13901// value will be replaced with "sensitive". 13902func (s ModifyInstanceGroupsInput) GoString() string { 13903 return s.String() 13904} 13905 13906// Validate inspects the fields of the type to determine if they are valid. 13907func (s *ModifyInstanceGroupsInput) Validate() error { 13908 invalidParams := request.ErrInvalidParams{Context: "ModifyInstanceGroupsInput"} 13909 if s.InstanceGroups != nil { 13910 for i, v := range s.InstanceGroups { 13911 if v == nil { 13912 continue 13913 } 13914 if err := v.Validate(); err != nil { 13915 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "InstanceGroups", i), err.(request.ErrInvalidParams)) 13916 } 13917 } 13918 } 13919 13920 if invalidParams.Len() > 0 { 13921 return invalidParams 13922 } 13923 return nil 13924} 13925 13926// SetClusterId sets the ClusterId field's value. 13927func (s *ModifyInstanceGroupsInput) SetClusterId(v string) *ModifyInstanceGroupsInput { 13928 s.ClusterId = &v 13929 return s 13930} 13931 13932// SetInstanceGroups sets the InstanceGroups field's value. 13933func (s *ModifyInstanceGroupsInput) SetInstanceGroups(v []*InstanceGroupModifyConfig) *ModifyInstanceGroupsInput { 13934 s.InstanceGroups = v 13935 return s 13936} 13937 13938type ModifyInstanceGroupsOutput struct { 13939 _ struct{} `type:"structure"` 13940} 13941 13942// String returns the string representation. 13943// 13944// API parameter values that are decorated as "sensitive" in the API will not 13945// be included in the string output. The member name will be present, but the 13946// value will be replaced with "sensitive". 13947func (s ModifyInstanceGroupsOutput) String() string { 13948 return awsutil.Prettify(s) 13949} 13950 13951// GoString returns the string representation. 13952// 13953// API parameter values that are decorated as "sensitive" in the API will not 13954// be included in the string output. The member name will be present, but the 13955// value will be replaced with "sensitive". 13956func (s ModifyInstanceGroupsOutput) GoString() string { 13957 return s.String() 13958} 13959 13960// A notebook execution. An execution is a specific instance that an EMR Notebook 13961// is run using the StartNotebookExecution action. 13962type NotebookExecution struct { 13963 _ struct{} `type:"structure"` 13964 13965 // The Amazon Resource Name (ARN) of the notebook execution. 13966 Arn *string `type:"string"` 13967 13968 // The unique identifier of the EMR Notebook that is used for the notebook execution. 13969 EditorId *string `type:"string"` 13970 13971 // The timestamp when notebook execution ended. 13972 EndTime *time.Time `type:"timestamp"` 13973 13974 // The execution engine, such as an EMR cluster, used to run the EMR notebook 13975 // and perform the notebook execution. 13976 ExecutionEngine *ExecutionEngineConfig `type:"structure"` 13977 13978 // The reason for the latest status change of the notebook execution. 13979 LastStateChangeReason *string `type:"string"` 13980 13981 // The unique identifier of a notebook execution. 13982 NotebookExecutionId *string `type:"string"` 13983 13984 // A name for the notebook execution. 13985 NotebookExecutionName *string `type:"string"` 13986 13987 // The unique identifier of the EC2 security group associated with the EMR Notebook 13988 // instance. For more information see Specifying EC2 Security Groups for EMR 13989 // Notebooks (https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-managed-notebooks-security-groups.html) 13990 // in the EMR Management Guide. 13991 NotebookInstanceSecurityGroupId *string `type:"string"` 13992 13993 // Input parameters in JSON format passed to the EMR Notebook at runtime for 13994 // execution. 13995 NotebookParams *string `type:"string"` 13996 13997 // The location of the notebook execution's output file in Amazon S3. 13998 OutputNotebookURI *string `type:"string"` 13999 14000 // The timestamp when notebook execution started. 14001 StartTime *time.Time `type:"timestamp"` 14002 14003 // The status of the notebook execution. 14004 // 14005 // * START_PENDING indicates that the cluster has received the execution 14006 // request but execution has not begun. 14007 // 14008 // * STARTING indicates that the execution is starting on the cluster. 14009 // 14010 // * RUNNING indicates that the execution is being processed by the cluster. 14011 // 14012 // * FINISHING indicates that execution processing is in the final stages. 14013 // 14014 // * FINISHED indicates that the execution has completed without error. 14015 // 14016 // * FAILING indicates that the execution is failing and will not finish 14017 // successfully. 14018 // 14019 // * FAILED indicates that the execution failed. 14020 // 14021 // * STOP_PENDING indicates that the cluster has received a StopNotebookExecution 14022 // request and the stop is pending. 14023 // 14024 // * STOPPING indicates that the cluster is in the process of stopping the 14025 // execution as a result of a StopNotebookExecution request. 14026 // 14027 // * STOPPED indicates that the execution stopped because of a StopNotebookExecution 14028 // request. 14029 Status *string `type:"string" enum:"NotebookExecutionStatus"` 14030 14031 // A list of tags associated with a notebook execution. Tags are user-defined 14032 // key-value pairs that consist of a required key string with a maximum of 128 14033 // characters and an optional value string with a maximum of 256 characters. 14034 Tags []*Tag `type:"list"` 14035} 14036 14037// String returns the string representation. 14038// 14039// API parameter values that are decorated as "sensitive" in the API will not 14040// be included in the string output. The member name will be present, but the 14041// value will be replaced with "sensitive". 14042func (s NotebookExecution) String() string { 14043 return awsutil.Prettify(s) 14044} 14045 14046// GoString returns the string representation. 14047// 14048// API parameter values that are decorated as "sensitive" in the API will not 14049// be included in the string output. The member name will be present, but the 14050// value will be replaced with "sensitive". 14051func (s NotebookExecution) GoString() string { 14052 return s.String() 14053} 14054 14055// SetArn sets the Arn field's value. 14056func (s *NotebookExecution) SetArn(v string) *NotebookExecution { 14057 s.Arn = &v 14058 return s 14059} 14060 14061// SetEditorId sets the EditorId field's value. 14062func (s *NotebookExecution) SetEditorId(v string) *NotebookExecution { 14063 s.EditorId = &v 14064 return s 14065} 14066 14067// SetEndTime sets the EndTime field's value. 14068func (s *NotebookExecution) SetEndTime(v time.Time) *NotebookExecution { 14069 s.EndTime = &v 14070 return s 14071} 14072 14073// SetExecutionEngine sets the ExecutionEngine field's value. 14074func (s *NotebookExecution) SetExecutionEngine(v *ExecutionEngineConfig) *NotebookExecution { 14075 s.ExecutionEngine = v 14076 return s 14077} 14078 14079// SetLastStateChangeReason sets the LastStateChangeReason field's value. 14080func (s *NotebookExecution) SetLastStateChangeReason(v string) *NotebookExecution { 14081 s.LastStateChangeReason = &v 14082 return s 14083} 14084 14085// SetNotebookExecutionId sets the NotebookExecutionId field's value. 14086func (s *NotebookExecution) SetNotebookExecutionId(v string) *NotebookExecution { 14087 s.NotebookExecutionId = &v 14088 return s 14089} 14090 14091// SetNotebookExecutionName sets the NotebookExecutionName field's value. 14092func (s *NotebookExecution) SetNotebookExecutionName(v string) *NotebookExecution { 14093 s.NotebookExecutionName = &v 14094 return s 14095} 14096 14097// SetNotebookInstanceSecurityGroupId sets the NotebookInstanceSecurityGroupId field's value. 14098func (s *NotebookExecution) SetNotebookInstanceSecurityGroupId(v string) *NotebookExecution { 14099 s.NotebookInstanceSecurityGroupId = &v 14100 return s 14101} 14102 14103// SetNotebookParams sets the NotebookParams field's value. 14104func (s *NotebookExecution) SetNotebookParams(v string) *NotebookExecution { 14105 s.NotebookParams = &v 14106 return s 14107} 14108 14109// SetOutputNotebookURI sets the OutputNotebookURI field's value. 14110func (s *NotebookExecution) SetOutputNotebookURI(v string) *NotebookExecution { 14111 s.OutputNotebookURI = &v 14112 return s 14113} 14114 14115// SetStartTime sets the StartTime field's value. 14116func (s *NotebookExecution) SetStartTime(v time.Time) *NotebookExecution { 14117 s.StartTime = &v 14118 return s 14119} 14120 14121// SetStatus sets the Status field's value. 14122func (s *NotebookExecution) SetStatus(v string) *NotebookExecution { 14123 s.Status = &v 14124 return s 14125} 14126 14127// SetTags sets the Tags field's value. 14128func (s *NotebookExecution) SetTags(v []*Tag) *NotebookExecution { 14129 s.Tags = v 14130 return s 14131} 14132 14133// Details for a notebook execution. The details include information such as 14134// the unique ID and status of the notebook execution. 14135type NotebookExecutionSummary struct { 14136 _ struct{} `type:"structure"` 14137 14138 // The unique identifier of the editor associated with the notebook execution. 14139 EditorId *string `type:"string"` 14140 14141 // The timestamp when notebook execution started. 14142 EndTime *time.Time `type:"timestamp"` 14143 14144 // The unique identifier of the notebook execution. 14145 NotebookExecutionId *string `type:"string"` 14146 14147 // The name of the notebook execution. 14148 NotebookExecutionName *string `type:"string"` 14149 14150 // The timestamp when notebook execution started. 14151 StartTime *time.Time `type:"timestamp"` 14152 14153 // The status of the notebook execution. 14154 // 14155 // * START_PENDING indicates that the cluster has received the execution 14156 // request but execution has not begun. 14157 // 14158 // * STARTING indicates that the execution is starting on the cluster. 14159 // 14160 // * RUNNING indicates that the execution is being processed by the cluster. 14161 // 14162 // * FINISHING indicates that execution processing is in the final stages. 14163 // 14164 // * FINISHED indicates that the execution has completed without error. 14165 // 14166 // * FAILING indicates that the execution is failing and will not finish 14167 // successfully. 14168 // 14169 // * FAILED indicates that the execution failed. 14170 // 14171 // * STOP_PENDING indicates that the cluster has received a StopNotebookExecution 14172 // request and the stop is pending. 14173 // 14174 // * STOPPING indicates that the cluster is in the process of stopping the 14175 // execution as a result of a StopNotebookExecution request. 14176 // 14177 // * STOPPED indicates that the execution stopped because of a StopNotebookExecution 14178 // request. 14179 Status *string `type:"string" enum:"NotebookExecutionStatus"` 14180} 14181 14182// String returns the string representation. 14183// 14184// API parameter values that are decorated as "sensitive" in the API will not 14185// be included in the string output. The member name will be present, but the 14186// value will be replaced with "sensitive". 14187func (s NotebookExecutionSummary) String() string { 14188 return awsutil.Prettify(s) 14189} 14190 14191// GoString returns the string representation. 14192// 14193// API parameter values that are decorated as "sensitive" in the API will not 14194// be included in the string output. The member name will be present, but the 14195// value will be replaced with "sensitive". 14196func (s NotebookExecutionSummary) GoString() string { 14197 return s.String() 14198} 14199 14200// SetEditorId sets the EditorId field's value. 14201func (s *NotebookExecutionSummary) SetEditorId(v string) *NotebookExecutionSummary { 14202 s.EditorId = &v 14203 return s 14204} 14205 14206// SetEndTime sets the EndTime field's value. 14207func (s *NotebookExecutionSummary) SetEndTime(v time.Time) *NotebookExecutionSummary { 14208 s.EndTime = &v 14209 return s 14210} 14211 14212// SetNotebookExecutionId sets the NotebookExecutionId field's value. 14213func (s *NotebookExecutionSummary) SetNotebookExecutionId(v string) *NotebookExecutionSummary { 14214 s.NotebookExecutionId = &v 14215 return s 14216} 14217 14218// SetNotebookExecutionName sets the NotebookExecutionName field's value. 14219func (s *NotebookExecutionSummary) SetNotebookExecutionName(v string) *NotebookExecutionSummary { 14220 s.NotebookExecutionName = &v 14221 return s 14222} 14223 14224// SetStartTime sets the StartTime field's value. 14225func (s *NotebookExecutionSummary) SetStartTime(v time.Time) *NotebookExecutionSummary { 14226 s.StartTime = &v 14227 return s 14228} 14229 14230// SetStatus sets the Status field's value. 14231func (s *NotebookExecutionSummary) SetStatus(v string) *NotebookExecutionSummary { 14232 s.Status = &v 14233 return s 14234} 14235 14236// Describes the strategy for using unused Capacity Reservations for fulfilling 14237// On-Demand capacity. 14238type OnDemandCapacityReservationOptions struct { 14239 _ struct{} `type:"structure"` 14240 14241 // Indicates the instance's Capacity Reservation preferences. Possible preferences 14242 // include: 14243 // 14244 // * open - The instance can run in any open Capacity Reservation that has 14245 // matching attributes (instance type, platform, Availability Zone). 14246 // 14247 // * none - The instance avoids running in a Capacity Reservation even if 14248 // one is available. The instance runs as an On-Demand Instance. 14249 CapacityReservationPreference *string `type:"string" enum:"OnDemandCapacityReservationPreference"` 14250 14251 // The ARN of the Capacity Reservation resource group in which to run the instance. 14252 CapacityReservationResourceGroupArn *string `type:"string"` 14253 14254 // Indicates whether to use unused Capacity Reservations for fulfilling On-Demand 14255 // capacity. 14256 // 14257 // If you specify use-capacity-reservations-first, the fleet uses unused Capacity 14258 // Reservations to fulfill On-Demand capacity up to the target On-Demand capacity. 14259 // If multiple instance pools have unused Capacity Reservations, the On-Demand 14260 // allocation strategy (lowest-price) is applied. If the number of unused Capacity 14261 // Reservations is less than the On-Demand target capacity, the remaining On-Demand 14262 // target capacity is launched according to the On-Demand allocation strategy 14263 // (lowest-price). 14264 // 14265 // If you do not specify a value, the fleet fulfills the On-Demand capacity 14266 // according to the chosen On-Demand allocation strategy. 14267 UsageStrategy *string `type:"string" enum:"OnDemandCapacityReservationUsageStrategy"` 14268} 14269 14270// String returns the string representation. 14271// 14272// API parameter values that are decorated as "sensitive" in the API will not 14273// be included in the string output. The member name will be present, but the 14274// value will be replaced with "sensitive". 14275func (s OnDemandCapacityReservationOptions) String() string { 14276 return awsutil.Prettify(s) 14277} 14278 14279// GoString returns the string representation. 14280// 14281// API parameter values that are decorated as "sensitive" in the API will not 14282// be included in the string output. The member name will be present, but the 14283// value will be replaced with "sensitive". 14284func (s OnDemandCapacityReservationOptions) GoString() string { 14285 return s.String() 14286} 14287 14288// SetCapacityReservationPreference sets the CapacityReservationPreference field's value. 14289func (s *OnDemandCapacityReservationOptions) SetCapacityReservationPreference(v string) *OnDemandCapacityReservationOptions { 14290 s.CapacityReservationPreference = &v 14291 return s 14292} 14293 14294// SetCapacityReservationResourceGroupArn sets the CapacityReservationResourceGroupArn field's value. 14295func (s *OnDemandCapacityReservationOptions) SetCapacityReservationResourceGroupArn(v string) *OnDemandCapacityReservationOptions { 14296 s.CapacityReservationResourceGroupArn = &v 14297 return s 14298} 14299 14300// SetUsageStrategy sets the UsageStrategy field's value. 14301func (s *OnDemandCapacityReservationOptions) SetUsageStrategy(v string) *OnDemandCapacityReservationOptions { 14302 s.UsageStrategy = &v 14303 return s 14304} 14305 14306// The launch specification for On-Demand Instances in the instance fleet, which 14307// determines the allocation strategy. 14308// 14309// The instance fleet configuration is available only in Amazon EMR versions 14310// 4.8.0 and later, excluding 5.0.x versions. On-Demand Instances allocation 14311// strategy is available in Amazon EMR version 5.12.1 and later. 14312type OnDemandProvisioningSpecification struct { 14313 _ struct{} `type:"structure"` 14314 14315 // Specifies the strategy to use in launching On-Demand instance fleets. Currently, 14316 // the only option is lowest-price (the default), which launches the lowest 14317 // price first. 14318 // 14319 // AllocationStrategy is a required field 14320 AllocationStrategy *string `type:"string" required:"true" enum:"OnDemandProvisioningAllocationStrategy"` 14321 14322 // The launch specification for On-Demand instances in the instance fleet, which 14323 // determines the allocation strategy. 14324 CapacityReservationOptions *OnDemandCapacityReservationOptions `type:"structure"` 14325} 14326 14327// String returns the string representation. 14328// 14329// API parameter values that are decorated as "sensitive" in the API will not 14330// be included in the string output. The member name will be present, but the 14331// value will be replaced with "sensitive". 14332func (s OnDemandProvisioningSpecification) String() string { 14333 return awsutil.Prettify(s) 14334} 14335 14336// GoString returns the string representation. 14337// 14338// API parameter values that are decorated as "sensitive" in the API will not 14339// be included in the string output. The member name will be present, but the 14340// value will be replaced with "sensitive". 14341func (s OnDemandProvisioningSpecification) GoString() string { 14342 return s.String() 14343} 14344 14345// Validate inspects the fields of the type to determine if they are valid. 14346func (s *OnDemandProvisioningSpecification) Validate() error { 14347 invalidParams := request.ErrInvalidParams{Context: "OnDemandProvisioningSpecification"} 14348 if s.AllocationStrategy == nil { 14349 invalidParams.Add(request.NewErrParamRequired("AllocationStrategy")) 14350 } 14351 14352 if invalidParams.Len() > 0 { 14353 return invalidParams 14354 } 14355 return nil 14356} 14357 14358// SetAllocationStrategy sets the AllocationStrategy field's value. 14359func (s *OnDemandProvisioningSpecification) SetAllocationStrategy(v string) *OnDemandProvisioningSpecification { 14360 s.AllocationStrategy = &v 14361 return s 14362} 14363 14364// SetCapacityReservationOptions sets the CapacityReservationOptions field's value. 14365func (s *OnDemandProvisioningSpecification) SetCapacityReservationOptions(v *OnDemandCapacityReservationOptions) *OnDemandProvisioningSpecification { 14366 s.CapacityReservationOptions = v 14367 return s 14368} 14369 14370// Placement group configuration for an Amazon EMR cluster. The configuration 14371// specifies the placement strategy that can be applied to instance roles during 14372// cluster creation. 14373// 14374// To use this configuration, consider attaching managed policy AmazonElasticMapReducePlacementGroupPolicy 14375// to the EMR role. 14376type PlacementGroupConfig struct { 14377 _ struct{} `type:"structure"` 14378 14379 // Role of the instance in the cluster. 14380 // 14381 // Starting with Amazon EMR version 5.23.0, the only supported instance role 14382 // is MASTER. 14383 // 14384 // InstanceRole is a required field 14385 InstanceRole *string `type:"string" required:"true" enum:"InstanceRoleType"` 14386 14387 // EC2 Placement Group strategy associated with instance role. 14388 // 14389 // Starting with Amazon EMR version 5.23.0, the only supported placement strategy 14390 // is SPREAD for the MASTER instance role. 14391 PlacementStrategy *string `type:"string" enum:"PlacementGroupStrategy"` 14392} 14393 14394// String returns the string representation. 14395// 14396// API parameter values that are decorated as "sensitive" in the API will not 14397// be included in the string output. The member name will be present, but the 14398// value will be replaced with "sensitive". 14399func (s PlacementGroupConfig) String() string { 14400 return awsutil.Prettify(s) 14401} 14402 14403// GoString returns the string representation. 14404// 14405// API parameter values that are decorated as "sensitive" in the API will not 14406// be included in the string output. The member name will be present, but the 14407// value will be replaced with "sensitive". 14408func (s PlacementGroupConfig) GoString() string { 14409 return s.String() 14410} 14411 14412// Validate inspects the fields of the type to determine if they are valid. 14413func (s *PlacementGroupConfig) Validate() error { 14414 invalidParams := request.ErrInvalidParams{Context: "PlacementGroupConfig"} 14415 if s.InstanceRole == nil { 14416 invalidParams.Add(request.NewErrParamRequired("InstanceRole")) 14417 } 14418 14419 if invalidParams.Len() > 0 { 14420 return invalidParams 14421 } 14422 return nil 14423} 14424 14425// SetInstanceRole sets the InstanceRole field's value. 14426func (s *PlacementGroupConfig) SetInstanceRole(v string) *PlacementGroupConfig { 14427 s.InstanceRole = &v 14428 return s 14429} 14430 14431// SetPlacementStrategy sets the PlacementStrategy field's value. 14432func (s *PlacementGroupConfig) SetPlacementStrategy(v string) *PlacementGroupConfig { 14433 s.PlacementStrategy = &v 14434 return s 14435} 14436 14437// The Amazon EC2 Availability Zone configuration of the cluster (job flow). 14438type PlacementType struct { 14439 _ struct{} `type:"structure"` 14440 14441 // The Amazon EC2 Availability Zone for the cluster. AvailabilityZone is used 14442 // for uniform instance groups, while AvailabilityZones (plural) is used for 14443 // instance fleets. 14444 AvailabilityZone *string `type:"string"` 14445 14446 // When multiple Availability Zones are specified, Amazon EMR evaluates them 14447 // and launches instances in the optimal Availability Zone. AvailabilityZones 14448 // is used for instance fleets, while AvailabilityZone (singular) is used for 14449 // uniform instance groups. 14450 // 14451 // The instance fleet configuration is available only in Amazon EMR versions 14452 // 4.8.0 and later, excluding 5.0.x versions. 14453 AvailabilityZones []*string `type:"list"` 14454} 14455 14456// String returns the string representation. 14457// 14458// API parameter values that are decorated as "sensitive" in the API will not 14459// be included in the string output. The member name will be present, but the 14460// value will be replaced with "sensitive". 14461func (s PlacementType) String() string { 14462 return awsutil.Prettify(s) 14463} 14464 14465// GoString returns the string representation. 14466// 14467// API parameter values that are decorated as "sensitive" in the API will not 14468// be included in the string output. The member name will be present, but the 14469// value will be replaced with "sensitive". 14470func (s PlacementType) GoString() string { 14471 return s.String() 14472} 14473 14474// SetAvailabilityZone sets the AvailabilityZone field's value. 14475func (s *PlacementType) SetAvailabilityZone(v string) *PlacementType { 14476 s.AvailabilityZone = &v 14477 return s 14478} 14479 14480// SetAvailabilityZones sets the AvailabilityZones field's value. 14481func (s *PlacementType) SetAvailabilityZones(v []*string) *PlacementType { 14482 s.AvailabilityZones = v 14483 return s 14484} 14485 14486// A list of port ranges that are permitted to allow inbound traffic from all 14487// public IP addresses. To specify a single port, use the same value for MinRange 14488// and MaxRange. 14489type PortRange struct { 14490 _ struct{} `type:"structure"` 14491 14492 // The smallest port number in a specified range of port numbers. 14493 MaxRange *int64 `type:"integer"` 14494 14495 // The smallest port number in a specified range of port numbers. 14496 // 14497 // MinRange is a required field 14498 MinRange *int64 `type:"integer" required:"true"` 14499} 14500 14501// String returns the string representation. 14502// 14503// API parameter values that are decorated as "sensitive" in the API will not 14504// be included in the string output. The member name will be present, but the 14505// value will be replaced with "sensitive". 14506func (s PortRange) String() string { 14507 return awsutil.Prettify(s) 14508} 14509 14510// GoString returns the string representation. 14511// 14512// API parameter values that are decorated as "sensitive" in the API will not 14513// be included in the string output. The member name will be present, but the 14514// value will be replaced with "sensitive". 14515func (s PortRange) GoString() string { 14516 return s.String() 14517} 14518 14519// Validate inspects the fields of the type to determine if they are valid. 14520func (s *PortRange) Validate() error { 14521 invalidParams := request.ErrInvalidParams{Context: "PortRange"} 14522 if s.MaxRange != nil && *s.MaxRange < -1 { 14523 invalidParams.Add(request.NewErrParamMinValue("MaxRange", -1)) 14524 } 14525 if s.MinRange == nil { 14526 invalidParams.Add(request.NewErrParamRequired("MinRange")) 14527 } 14528 if s.MinRange != nil && *s.MinRange < -1 { 14529 invalidParams.Add(request.NewErrParamMinValue("MinRange", -1)) 14530 } 14531 14532 if invalidParams.Len() > 0 { 14533 return invalidParams 14534 } 14535 return nil 14536} 14537 14538// SetMaxRange sets the MaxRange field's value. 14539func (s *PortRange) SetMaxRange(v int64) *PortRange { 14540 s.MaxRange = &v 14541 return s 14542} 14543 14544// SetMinRange sets the MinRange field's value. 14545func (s *PortRange) SetMinRange(v int64) *PortRange { 14546 s.MinRange = &v 14547 return s 14548} 14549 14550type PutAutoScalingPolicyInput struct { 14551 _ struct{} `type:"structure"` 14552 14553 // Specifies the definition of the automatic scaling policy. 14554 // 14555 // AutoScalingPolicy is a required field 14556 AutoScalingPolicy *AutoScalingPolicy `type:"structure" required:"true"` 14557 14558 // Specifies the ID of a cluster. The instance group to which the automatic 14559 // scaling policy is applied is within this cluster. 14560 // 14561 // ClusterId is a required field 14562 ClusterId *string `type:"string" required:"true"` 14563 14564 // Specifies the ID of the instance group to which the automatic scaling policy 14565 // is applied. 14566 // 14567 // InstanceGroupId is a required field 14568 InstanceGroupId *string `type:"string" required:"true"` 14569} 14570 14571// String returns the string representation. 14572// 14573// API parameter values that are decorated as "sensitive" in the API will not 14574// be included in the string output. The member name will be present, but the 14575// value will be replaced with "sensitive". 14576func (s PutAutoScalingPolicyInput) String() string { 14577 return awsutil.Prettify(s) 14578} 14579 14580// GoString returns the string representation. 14581// 14582// API parameter values that are decorated as "sensitive" in the API will not 14583// be included in the string output. The member name will be present, but the 14584// value will be replaced with "sensitive". 14585func (s PutAutoScalingPolicyInput) GoString() string { 14586 return s.String() 14587} 14588 14589// Validate inspects the fields of the type to determine if they are valid. 14590func (s *PutAutoScalingPolicyInput) Validate() error { 14591 invalidParams := request.ErrInvalidParams{Context: "PutAutoScalingPolicyInput"} 14592 if s.AutoScalingPolicy == nil { 14593 invalidParams.Add(request.NewErrParamRequired("AutoScalingPolicy")) 14594 } 14595 if s.ClusterId == nil { 14596 invalidParams.Add(request.NewErrParamRequired("ClusterId")) 14597 } 14598 if s.InstanceGroupId == nil { 14599 invalidParams.Add(request.NewErrParamRequired("InstanceGroupId")) 14600 } 14601 if s.AutoScalingPolicy != nil { 14602 if err := s.AutoScalingPolicy.Validate(); err != nil { 14603 invalidParams.AddNested("AutoScalingPolicy", err.(request.ErrInvalidParams)) 14604 } 14605 } 14606 14607 if invalidParams.Len() > 0 { 14608 return invalidParams 14609 } 14610 return nil 14611} 14612 14613// SetAutoScalingPolicy sets the AutoScalingPolicy field's value. 14614func (s *PutAutoScalingPolicyInput) SetAutoScalingPolicy(v *AutoScalingPolicy) *PutAutoScalingPolicyInput { 14615 s.AutoScalingPolicy = v 14616 return s 14617} 14618 14619// SetClusterId sets the ClusterId field's value. 14620func (s *PutAutoScalingPolicyInput) SetClusterId(v string) *PutAutoScalingPolicyInput { 14621 s.ClusterId = &v 14622 return s 14623} 14624 14625// SetInstanceGroupId sets the InstanceGroupId field's value. 14626func (s *PutAutoScalingPolicyInput) SetInstanceGroupId(v string) *PutAutoScalingPolicyInput { 14627 s.InstanceGroupId = &v 14628 return s 14629} 14630 14631type PutAutoScalingPolicyOutput struct { 14632 _ struct{} `type:"structure"` 14633 14634 // The automatic scaling policy definition. 14635 AutoScalingPolicy *AutoScalingPolicyDescription `type:"structure"` 14636 14637 // The Amazon Resource Name (ARN) of the cluster. 14638 ClusterArn *string `min:"20" type:"string"` 14639 14640 // Specifies the ID of a cluster. The instance group to which the automatic 14641 // scaling policy is applied is within this cluster. 14642 ClusterId *string `type:"string"` 14643 14644 // Specifies the ID of the instance group to which the scaling policy is applied. 14645 InstanceGroupId *string `type:"string"` 14646} 14647 14648// String returns the string representation. 14649// 14650// API parameter values that are decorated as "sensitive" in the API will not 14651// be included in the string output. The member name will be present, but the 14652// value will be replaced with "sensitive". 14653func (s PutAutoScalingPolicyOutput) String() string { 14654 return awsutil.Prettify(s) 14655} 14656 14657// GoString returns the string representation. 14658// 14659// API parameter values that are decorated as "sensitive" in the API will not 14660// be included in the string output. The member name will be present, but the 14661// value will be replaced with "sensitive". 14662func (s PutAutoScalingPolicyOutput) GoString() string { 14663 return s.String() 14664} 14665 14666// SetAutoScalingPolicy sets the AutoScalingPolicy field's value. 14667func (s *PutAutoScalingPolicyOutput) SetAutoScalingPolicy(v *AutoScalingPolicyDescription) *PutAutoScalingPolicyOutput { 14668 s.AutoScalingPolicy = v 14669 return s 14670} 14671 14672// SetClusterArn sets the ClusterArn field's value. 14673func (s *PutAutoScalingPolicyOutput) SetClusterArn(v string) *PutAutoScalingPolicyOutput { 14674 s.ClusterArn = &v 14675 return s 14676} 14677 14678// SetClusterId sets the ClusterId field's value. 14679func (s *PutAutoScalingPolicyOutput) SetClusterId(v string) *PutAutoScalingPolicyOutput { 14680 s.ClusterId = &v 14681 return s 14682} 14683 14684// SetInstanceGroupId sets the InstanceGroupId field's value. 14685func (s *PutAutoScalingPolicyOutput) SetInstanceGroupId(v string) *PutAutoScalingPolicyOutput { 14686 s.InstanceGroupId = &v 14687 return s 14688} 14689 14690type PutAutoTerminationPolicyInput struct { 14691 _ struct{} `type:"structure"` 14692 14693 // Specifies the auto-termination policy to attach to the cluster. 14694 AutoTerminationPolicy *AutoTerminationPolicy `type:"structure"` 14695 14696 // Specifies the ID of the Amazon EMR cluster to which the auto-termination 14697 // policy will be attached. 14698 // 14699 // ClusterId is a required field 14700 ClusterId *string `type:"string" required:"true"` 14701} 14702 14703// String returns the string representation. 14704// 14705// API parameter values that are decorated as "sensitive" in the API will not 14706// be included in the string output. The member name will be present, but the 14707// value will be replaced with "sensitive". 14708func (s PutAutoTerminationPolicyInput) String() string { 14709 return awsutil.Prettify(s) 14710} 14711 14712// GoString returns the string representation. 14713// 14714// API parameter values that are decorated as "sensitive" in the API will not 14715// be included in the string output. The member name will be present, but the 14716// value will be replaced with "sensitive". 14717func (s PutAutoTerminationPolicyInput) GoString() string { 14718 return s.String() 14719} 14720 14721// Validate inspects the fields of the type to determine if they are valid. 14722func (s *PutAutoTerminationPolicyInput) Validate() error { 14723 invalidParams := request.ErrInvalidParams{Context: "PutAutoTerminationPolicyInput"} 14724 if s.ClusterId == nil { 14725 invalidParams.Add(request.NewErrParamRequired("ClusterId")) 14726 } 14727 14728 if invalidParams.Len() > 0 { 14729 return invalidParams 14730 } 14731 return nil 14732} 14733 14734// SetAutoTerminationPolicy sets the AutoTerminationPolicy field's value. 14735func (s *PutAutoTerminationPolicyInput) SetAutoTerminationPolicy(v *AutoTerminationPolicy) *PutAutoTerminationPolicyInput { 14736 s.AutoTerminationPolicy = v 14737 return s 14738} 14739 14740// SetClusterId sets the ClusterId field's value. 14741func (s *PutAutoTerminationPolicyInput) SetClusterId(v string) *PutAutoTerminationPolicyInput { 14742 s.ClusterId = &v 14743 return s 14744} 14745 14746type PutAutoTerminationPolicyOutput struct { 14747 _ struct{} `type:"structure"` 14748} 14749 14750// String returns the string representation. 14751// 14752// API parameter values that are decorated as "sensitive" in the API will not 14753// be included in the string output. The member name will be present, but the 14754// value will be replaced with "sensitive". 14755func (s PutAutoTerminationPolicyOutput) String() string { 14756 return awsutil.Prettify(s) 14757} 14758 14759// GoString returns the string representation. 14760// 14761// API parameter values that are decorated as "sensitive" in the API will not 14762// be included in the string output. The member name will be present, but the 14763// value will be replaced with "sensitive". 14764func (s PutAutoTerminationPolicyOutput) GoString() string { 14765 return s.String() 14766} 14767 14768type PutBlockPublicAccessConfigurationInput struct { 14769 _ struct{} `type:"structure"` 14770 14771 // A configuration for Amazon EMR block public access. The configuration applies 14772 // to all clusters created in your account for the current Region. The configuration 14773 // specifies whether block public access is enabled. If block public access 14774 // is enabled, security groups associated with the cluster cannot have rules 14775 // that allow inbound traffic from 0.0.0.0/0 or ::/0 on a port, unless the port 14776 // is specified as an exception using PermittedPublicSecurityGroupRuleRanges 14777 // in the BlockPublicAccessConfiguration. By default, Port 22 (SSH) is an exception, 14778 // and public access is allowed on this port. You can change this by updating 14779 // BlockPublicSecurityGroupRules to remove the exception. 14780 // 14781 // For accounts that created clusters in a Region before November 25, 2019, 14782 // block public access is disabled by default in that Region. To use this feature, 14783 // you must manually enable and configure it. For accounts that did not create 14784 // an EMR cluster in a Region before this date, block public access is enabled 14785 // by default in that Region. 14786 // 14787 // BlockPublicAccessConfiguration is a required field 14788 BlockPublicAccessConfiguration *BlockPublicAccessConfiguration `type:"structure" required:"true"` 14789} 14790 14791// String returns the string representation. 14792// 14793// API parameter values that are decorated as "sensitive" in the API will not 14794// be included in the string output. The member name will be present, but the 14795// value will be replaced with "sensitive". 14796func (s PutBlockPublicAccessConfigurationInput) String() string { 14797 return awsutil.Prettify(s) 14798} 14799 14800// GoString returns the string representation. 14801// 14802// API parameter values that are decorated as "sensitive" in the API will not 14803// be included in the string output. The member name will be present, but the 14804// value will be replaced with "sensitive". 14805func (s PutBlockPublicAccessConfigurationInput) GoString() string { 14806 return s.String() 14807} 14808 14809// Validate inspects the fields of the type to determine if they are valid. 14810func (s *PutBlockPublicAccessConfigurationInput) Validate() error { 14811 invalidParams := request.ErrInvalidParams{Context: "PutBlockPublicAccessConfigurationInput"} 14812 if s.BlockPublicAccessConfiguration == nil { 14813 invalidParams.Add(request.NewErrParamRequired("BlockPublicAccessConfiguration")) 14814 } 14815 if s.BlockPublicAccessConfiguration != nil { 14816 if err := s.BlockPublicAccessConfiguration.Validate(); err != nil { 14817 invalidParams.AddNested("BlockPublicAccessConfiguration", err.(request.ErrInvalidParams)) 14818 } 14819 } 14820 14821 if invalidParams.Len() > 0 { 14822 return invalidParams 14823 } 14824 return nil 14825} 14826 14827// SetBlockPublicAccessConfiguration sets the BlockPublicAccessConfiguration field's value. 14828func (s *PutBlockPublicAccessConfigurationInput) SetBlockPublicAccessConfiguration(v *BlockPublicAccessConfiguration) *PutBlockPublicAccessConfigurationInput { 14829 s.BlockPublicAccessConfiguration = v 14830 return s 14831} 14832 14833type PutBlockPublicAccessConfigurationOutput struct { 14834 _ struct{} `type:"structure"` 14835} 14836 14837// String returns the string representation. 14838// 14839// API parameter values that are decorated as "sensitive" in the API will not 14840// be included in the string output. The member name will be present, but the 14841// value will be replaced with "sensitive". 14842func (s PutBlockPublicAccessConfigurationOutput) String() string { 14843 return awsutil.Prettify(s) 14844} 14845 14846// GoString returns the string representation. 14847// 14848// API parameter values that are decorated as "sensitive" in the API will not 14849// be included in the string output. The member name will be present, but the 14850// value will be replaced with "sensitive". 14851func (s PutBlockPublicAccessConfigurationOutput) GoString() string { 14852 return s.String() 14853} 14854 14855type PutManagedScalingPolicyInput struct { 14856 _ struct{} `type:"structure"` 14857 14858 // Specifies the ID of an EMR cluster where the managed scaling policy is attached. 14859 // 14860 // ClusterId is a required field 14861 ClusterId *string `type:"string" required:"true"` 14862 14863 // Specifies the constraints for the managed scaling policy. 14864 // 14865 // ManagedScalingPolicy is a required field 14866 ManagedScalingPolicy *ManagedScalingPolicy `type:"structure" required:"true"` 14867} 14868 14869// String returns the string representation. 14870// 14871// API parameter values that are decorated as "sensitive" in the API will not 14872// be included in the string output. The member name will be present, but the 14873// value will be replaced with "sensitive". 14874func (s PutManagedScalingPolicyInput) String() string { 14875 return awsutil.Prettify(s) 14876} 14877 14878// GoString returns the string representation. 14879// 14880// API parameter values that are decorated as "sensitive" in the API will not 14881// be included in the string output. The member name will be present, but the 14882// value will be replaced with "sensitive". 14883func (s PutManagedScalingPolicyInput) GoString() string { 14884 return s.String() 14885} 14886 14887// Validate inspects the fields of the type to determine if they are valid. 14888func (s *PutManagedScalingPolicyInput) Validate() error { 14889 invalidParams := request.ErrInvalidParams{Context: "PutManagedScalingPolicyInput"} 14890 if s.ClusterId == nil { 14891 invalidParams.Add(request.NewErrParamRequired("ClusterId")) 14892 } 14893 if s.ManagedScalingPolicy == nil { 14894 invalidParams.Add(request.NewErrParamRequired("ManagedScalingPolicy")) 14895 } 14896 if s.ManagedScalingPolicy != nil { 14897 if err := s.ManagedScalingPolicy.Validate(); err != nil { 14898 invalidParams.AddNested("ManagedScalingPolicy", err.(request.ErrInvalidParams)) 14899 } 14900 } 14901 14902 if invalidParams.Len() > 0 { 14903 return invalidParams 14904 } 14905 return nil 14906} 14907 14908// SetClusterId sets the ClusterId field's value. 14909func (s *PutManagedScalingPolicyInput) SetClusterId(v string) *PutManagedScalingPolicyInput { 14910 s.ClusterId = &v 14911 return s 14912} 14913 14914// SetManagedScalingPolicy sets the ManagedScalingPolicy field's value. 14915func (s *PutManagedScalingPolicyInput) SetManagedScalingPolicy(v *ManagedScalingPolicy) *PutManagedScalingPolicyInput { 14916 s.ManagedScalingPolicy = v 14917 return s 14918} 14919 14920type PutManagedScalingPolicyOutput struct { 14921 _ struct{} `type:"structure"` 14922} 14923 14924// String returns the string representation. 14925// 14926// API parameter values that are decorated as "sensitive" in the API will not 14927// be included in the string output. The member name will be present, but the 14928// value will be replaced with "sensitive". 14929func (s PutManagedScalingPolicyOutput) String() string { 14930 return awsutil.Prettify(s) 14931} 14932 14933// GoString returns the string representation. 14934// 14935// API parameter values that are decorated as "sensitive" in the API will not 14936// be included in the string output. The member name will be present, but the 14937// value will be replaced with "sensitive". 14938func (s PutManagedScalingPolicyOutput) GoString() string { 14939 return s.String() 14940} 14941 14942// The release label filters by application or version prefix. 14943type ReleaseLabelFilter struct { 14944 _ struct{} `type:"structure"` 14945 14946 // Optional release label application filter. For example, spark@2.1.0. 14947 Application *string `type:"string"` 14948 14949 // Optional release label version prefix filter. For example, emr-5. 14950 Prefix *string `type:"string"` 14951} 14952 14953// String returns the string representation. 14954// 14955// API parameter values that are decorated as "sensitive" in the API will not 14956// be included in the string output. The member name will be present, but the 14957// value will be replaced with "sensitive". 14958func (s ReleaseLabelFilter) String() string { 14959 return awsutil.Prettify(s) 14960} 14961 14962// GoString returns the string representation. 14963// 14964// API parameter values that are decorated as "sensitive" in the API will not 14965// be included in the string output. The member name will be present, but the 14966// value will be replaced with "sensitive". 14967func (s ReleaseLabelFilter) GoString() string { 14968 return s.String() 14969} 14970 14971// SetApplication sets the Application field's value. 14972func (s *ReleaseLabelFilter) SetApplication(v string) *ReleaseLabelFilter { 14973 s.Application = &v 14974 return s 14975} 14976 14977// SetPrefix sets the Prefix field's value. 14978func (s *ReleaseLabelFilter) SetPrefix(v string) *ReleaseLabelFilter { 14979 s.Prefix = &v 14980 return s 14981} 14982 14983type RemoveAutoScalingPolicyInput struct { 14984 _ struct{} `type:"structure"` 14985 14986 // Specifies the ID of a cluster. The instance group to which the automatic 14987 // scaling policy is applied is within this cluster. 14988 // 14989 // ClusterId is a required field 14990 ClusterId *string `type:"string" required:"true"` 14991 14992 // Specifies the ID of the instance group to which the scaling policy is applied. 14993 // 14994 // InstanceGroupId is a required field 14995 InstanceGroupId *string `type:"string" required:"true"` 14996} 14997 14998// String returns the string representation. 14999// 15000// API parameter values that are decorated as "sensitive" in the API will not 15001// be included in the string output. The member name will be present, but the 15002// value will be replaced with "sensitive". 15003func (s RemoveAutoScalingPolicyInput) String() string { 15004 return awsutil.Prettify(s) 15005} 15006 15007// GoString returns the string representation. 15008// 15009// API parameter values that are decorated as "sensitive" in the API will not 15010// be included in the string output. The member name will be present, but the 15011// value will be replaced with "sensitive". 15012func (s RemoveAutoScalingPolicyInput) GoString() string { 15013 return s.String() 15014} 15015 15016// Validate inspects the fields of the type to determine if they are valid. 15017func (s *RemoveAutoScalingPolicyInput) Validate() error { 15018 invalidParams := request.ErrInvalidParams{Context: "RemoveAutoScalingPolicyInput"} 15019 if s.ClusterId == nil { 15020 invalidParams.Add(request.NewErrParamRequired("ClusterId")) 15021 } 15022 if s.InstanceGroupId == nil { 15023 invalidParams.Add(request.NewErrParamRequired("InstanceGroupId")) 15024 } 15025 15026 if invalidParams.Len() > 0 { 15027 return invalidParams 15028 } 15029 return nil 15030} 15031 15032// SetClusterId sets the ClusterId field's value. 15033func (s *RemoveAutoScalingPolicyInput) SetClusterId(v string) *RemoveAutoScalingPolicyInput { 15034 s.ClusterId = &v 15035 return s 15036} 15037 15038// SetInstanceGroupId sets the InstanceGroupId field's value. 15039func (s *RemoveAutoScalingPolicyInput) SetInstanceGroupId(v string) *RemoveAutoScalingPolicyInput { 15040 s.InstanceGroupId = &v 15041 return s 15042} 15043 15044type RemoveAutoScalingPolicyOutput struct { 15045 _ struct{} `type:"structure"` 15046} 15047 15048// String returns the string representation. 15049// 15050// API parameter values that are decorated as "sensitive" in the API will not 15051// be included in the string output. The member name will be present, but the 15052// value will be replaced with "sensitive". 15053func (s RemoveAutoScalingPolicyOutput) String() string { 15054 return awsutil.Prettify(s) 15055} 15056 15057// GoString returns the string representation. 15058// 15059// API parameter values that are decorated as "sensitive" in the API will not 15060// be included in the string output. The member name will be present, but the 15061// value will be replaced with "sensitive". 15062func (s RemoveAutoScalingPolicyOutput) GoString() string { 15063 return s.String() 15064} 15065 15066type RemoveAutoTerminationPolicyInput struct { 15067 _ struct{} `type:"structure"` 15068 15069 // Specifies the ID of the Amazon EMR cluster from which the auto-termination 15070 // policy will be removed. 15071 // 15072 // ClusterId is a required field 15073 ClusterId *string `type:"string" required:"true"` 15074} 15075 15076// String returns the string representation. 15077// 15078// API parameter values that are decorated as "sensitive" in the API will not 15079// be included in the string output. The member name will be present, but the 15080// value will be replaced with "sensitive". 15081func (s RemoveAutoTerminationPolicyInput) String() string { 15082 return awsutil.Prettify(s) 15083} 15084 15085// GoString returns the string representation. 15086// 15087// API parameter values that are decorated as "sensitive" in the API will not 15088// be included in the string output. The member name will be present, but the 15089// value will be replaced with "sensitive". 15090func (s RemoveAutoTerminationPolicyInput) GoString() string { 15091 return s.String() 15092} 15093 15094// Validate inspects the fields of the type to determine if they are valid. 15095func (s *RemoveAutoTerminationPolicyInput) Validate() error { 15096 invalidParams := request.ErrInvalidParams{Context: "RemoveAutoTerminationPolicyInput"} 15097 if s.ClusterId == nil { 15098 invalidParams.Add(request.NewErrParamRequired("ClusterId")) 15099 } 15100 15101 if invalidParams.Len() > 0 { 15102 return invalidParams 15103 } 15104 return nil 15105} 15106 15107// SetClusterId sets the ClusterId field's value. 15108func (s *RemoveAutoTerminationPolicyInput) SetClusterId(v string) *RemoveAutoTerminationPolicyInput { 15109 s.ClusterId = &v 15110 return s 15111} 15112 15113type RemoveAutoTerminationPolicyOutput struct { 15114 _ struct{} `type:"structure"` 15115} 15116 15117// String returns the string representation. 15118// 15119// API parameter values that are decorated as "sensitive" in the API will not 15120// be included in the string output. The member name will be present, but the 15121// value will be replaced with "sensitive". 15122func (s RemoveAutoTerminationPolicyOutput) String() string { 15123 return awsutil.Prettify(s) 15124} 15125 15126// GoString returns the string representation. 15127// 15128// API parameter values that are decorated as "sensitive" in the API will not 15129// be included in the string output. The member name will be present, but the 15130// value will be replaced with "sensitive". 15131func (s RemoveAutoTerminationPolicyOutput) GoString() string { 15132 return s.String() 15133} 15134 15135type RemoveManagedScalingPolicyInput struct { 15136 _ struct{} `type:"structure"` 15137 15138 // Specifies the ID of the cluster from which the managed scaling policy will 15139 // be removed. 15140 // 15141 // ClusterId is a required field 15142 ClusterId *string `type:"string" required:"true"` 15143} 15144 15145// String returns the string representation. 15146// 15147// API parameter values that are decorated as "sensitive" in the API will not 15148// be included in the string output. The member name will be present, but the 15149// value will be replaced with "sensitive". 15150func (s RemoveManagedScalingPolicyInput) String() string { 15151 return awsutil.Prettify(s) 15152} 15153 15154// GoString returns the string representation. 15155// 15156// API parameter values that are decorated as "sensitive" in the API will not 15157// be included in the string output. The member name will be present, but the 15158// value will be replaced with "sensitive". 15159func (s RemoveManagedScalingPolicyInput) GoString() string { 15160 return s.String() 15161} 15162 15163// Validate inspects the fields of the type to determine if they are valid. 15164func (s *RemoveManagedScalingPolicyInput) Validate() error { 15165 invalidParams := request.ErrInvalidParams{Context: "RemoveManagedScalingPolicyInput"} 15166 if s.ClusterId == nil { 15167 invalidParams.Add(request.NewErrParamRequired("ClusterId")) 15168 } 15169 15170 if invalidParams.Len() > 0 { 15171 return invalidParams 15172 } 15173 return nil 15174} 15175 15176// SetClusterId sets the ClusterId field's value. 15177func (s *RemoveManagedScalingPolicyInput) SetClusterId(v string) *RemoveManagedScalingPolicyInput { 15178 s.ClusterId = &v 15179 return s 15180} 15181 15182type RemoveManagedScalingPolicyOutput struct { 15183 _ struct{} `type:"structure"` 15184} 15185 15186// String returns the string representation. 15187// 15188// API parameter values that are decorated as "sensitive" in the API will not 15189// be included in the string output. The member name will be present, but the 15190// value will be replaced with "sensitive". 15191func (s RemoveManagedScalingPolicyOutput) String() string { 15192 return awsutil.Prettify(s) 15193} 15194 15195// GoString returns the string representation. 15196// 15197// API parameter values that are decorated as "sensitive" in the API will not 15198// be included in the string output. The member name will be present, but the 15199// value will be replaced with "sensitive". 15200func (s RemoveManagedScalingPolicyOutput) GoString() string { 15201 return s.String() 15202} 15203 15204// This input identifies an Amazon EMR resource and a list of tags to remove. 15205type RemoveTagsInput struct { 15206 _ struct{} `type:"structure"` 15207 15208 // The Amazon EMR resource identifier from which tags will be removed. For example, 15209 // a cluster identifier or an Amazon EMR Studio ID. 15210 // 15211 // ResourceId is a required field 15212 ResourceId *string `type:"string" required:"true"` 15213 15214 // A list of tag keys to remove from the resource. 15215 // 15216 // TagKeys is a required field 15217 TagKeys []*string `type:"list" required:"true"` 15218} 15219 15220// String returns the string representation. 15221// 15222// API parameter values that are decorated as "sensitive" in the API will not 15223// be included in the string output. The member name will be present, but the 15224// value will be replaced with "sensitive". 15225func (s RemoveTagsInput) String() string { 15226 return awsutil.Prettify(s) 15227} 15228 15229// GoString returns the string representation. 15230// 15231// API parameter values that are decorated as "sensitive" in the API will not 15232// be included in the string output. The member name will be present, but the 15233// value will be replaced with "sensitive". 15234func (s RemoveTagsInput) GoString() string { 15235 return s.String() 15236} 15237 15238// Validate inspects the fields of the type to determine if they are valid. 15239func (s *RemoveTagsInput) Validate() error { 15240 invalidParams := request.ErrInvalidParams{Context: "RemoveTagsInput"} 15241 if s.ResourceId == nil { 15242 invalidParams.Add(request.NewErrParamRequired("ResourceId")) 15243 } 15244 if s.TagKeys == nil { 15245 invalidParams.Add(request.NewErrParamRequired("TagKeys")) 15246 } 15247 15248 if invalidParams.Len() > 0 { 15249 return invalidParams 15250 } 15251 return nil 15252} 15253 15254// SetResourceId sets the ResourceId field's value. 15255func (s *RemoveTagsInput) SetResourceId(v string) *RemoveTagsInput { 15256 s.ResourceId = &v 15257 return s 15258} 15259 15260// SetTagKeys sets the TagKeys field's value. 15261func (s *RemoveTagsInput) SetTagKeys(v []*string) *RemoveTagsInput { 15262 s.TagKeys = v 15263 return s 15264} 15265 15266// This output indicates the result of removing tags from the resource. 15267type RemoveTagsOutput struct { 15268 _ struct{} `type:"structure"` 15269} 15270 15271// String returns the string representation. 15272// 15273// API parameter values that are decorated as "sensitive" in the API will not 15274// be included in the string output. The member name will be present, but the 15275// value will be replaced with "sensitive". 15276func (s RemoveTagsOutput) String() string { 15277 return awsutil.Prettify(s) 15278} 15279 15280// GoString returns the string representation. 15281// 15282// API parameter values that are decorated as "sensitive" in the API will not 15283// be included in the string output. The member name will be present, but the 15284// value will be replaced with "sensitive". 15285func (s RemoveTagsOutput) GoString() string { 15286 return s.String() 15287} 15288 15289// Input to the RunJobFlow operation. 15290type RunJobFlowInput struct { 15291 _ struct{} `type:"structure"` 15292 15293 // A JSON string for selecting additional features. 15294 AdditionalInfo *string `type:"string"` 15295 15296 // Applies only to Amazon EMR AMI versions 3.x and 2.x. For Amazon EMR releases 15297 // 4.0 and later, ReleaseLabel is used. To specify a custom AMI, use CustomAmiID. 15298 AmiVersion *string `type:"string"` 15299 15300 // Applies to Amazon EMR releases 4.0 and later. A case-insensitive list of 15301 // applications for Amazon EMR to install and configure when launching the cluster. 15302 // For a list of applications available for each Amazon EMR release version, 15303 // see the Amazon EMR Release Guide (https://docs.aws.amazon.com/emr/latest/ReleaseGuide/). 15304 Applications []*Application `type:"list"` 15305 15306 // An IAM role for automatic scaling policies. The default role is EMR_AutoScaling_DefaultRole. 15307 // The IAM role provides permissions that the automatic scaling feature requires 15308 // to launch and terminate EC2 instances in an instance group. 15309 AutoScalingRole *string `type:"string"` 15310 15311 // An auto-termination policy for an Amazon EMR cluster. An auto-termination 15312 // policy defines the amount of idle time in seconds after which a cluster automatically 15313 // terminates. For alternative cluster termination options, see Control cluster 15314 // termination (https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-plan-termination.html). 15315 AutoTerminationPolicy *AutoTerminationPolicy `type:"structure"` 15316 15317 // A list of bootstrap actions to run before Hadoop starts on the cluster nodes. 15318 BootstrapActions []*BootstrapActionConfig `type:"list"` 15319 15320 // For Amazon EMR releases 4.0 and later. The list of configurations supplied 15321 // for the EMR cluster you are creating. 15322 Configurations []*Configuration `type:"list"` 15323 15324 // Available only in Amazon EMR version 5.7.0 and later. The ID of a custom 15325 // Amazon EBS-backed Linux AMI. If specified, Amazon EMR uses this AMI when 15326 // it launches cluster EC2 instances. For more information about custom AMIs 15327 // in Amazon EMR, see Using a Custom AMI (https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-custom-ami.html) 15328 // in the Amazon EMR Management Guide. If omitted, the cluster uses the base 15329 // Linux AMI for the ReleaseLabel specified. For Amazon EMR versions 2.x and 15330 // 3.x, use AmiVersion instead. 15331 // 15332 // For information about creating a custom AMI, see Creating an Amazon EBS-Backed 15333 // Linux AMI (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/creating-an-ami-ebs.html) 15334 // in the Amazon Elastic Compute Cloud User Guide for Linux Instances. For information 15335 // about finding an AMI ID, see Finding a Linux AMI (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/finding-an-ami.html). 15336 CustomAmiId *string `type:"string"` 15337 15338 // The size, in GiB, of the Amazon EBS root device volume of the Linux AMI that 15339 // is used for each EC2 instance. Available in Amazon EMR version 4.x and later. 15340 EbsRootVolumeSize *int64 `type:"integer"` 15341 15342 // A specification of the number and type of Amazon EC2 instances. 15343 // 15344 // Instances is a required field 15345 Instances *JobFlowInstancesConfig `type:"structure" required:"true"` 15346 15347 // Also called instance profile and EC2 role. An IAM role for an EMR cluster. 15348 // The EC2 instances of the cluster assume this role. The default role is EMR_EC2_DefaultRole. 15349 // In order to use the default role, you must have already created it using 15350 // the CLI or console. 15351 JobFlowRole *string `type:"string"` 15352 15353 // Attributes for Kerberos configuration when Kerberos authentication is enabled 15354 // using a security configuration. For more information see Use Kerberos Authentication 15355 // (https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-kerberos.html) 15356 // in the Amazon EMR Management Guide. 15357 KerberosAttributes *KerberosAttributes `type:"structure"` 15358 15359 // The KMS key used for encrypting log files. If a value is not provided, the 15360 // logs remain encrypted by AES-256. This attribute is only available with Amazon 15361 // EMR version 5.30.0 and later, excluding Amazon EMR 6.0.0. 15362 LogEncryptionKmsKeyId *string `type:"string"` 15363 15364 // The location in Amazon S3 to write the log files of the job flow. If a value 15365 // is not provided, logs are not created. 15366 LogUri *string `type:"string"` 15367 15368 // The specified managed scaling policy for an Amazon EMR cluster. 15369 ManagedScalingPolicy *ManagedScalingPolicy `type:"structure"` 15370 15371 // The name of the job flow. 15372 // 15373 // Name is a required field 15374 Name *string `type:"string" required:"true"` 15375 15376 // 15377 // For Amazon EMR releases 3.x and 2.x. For Amazon EMR releases 4.x and later, 15378 // use Applications. 15379 // 15380 // A list of strings that indicates third-party software to use with the job 15381 // flow that accepts a user argument list. EMR accepts and forwards the argument 15382 // list to the corresponding installation script as bootstrap action arguments. 15383 // For more information, see "Launch a Job Flow on the MapR Distribution for 15384 // Hadoop" in the Amazon EMR Developer Guide (https://docs.aws.amazon.com/emr/latest/DeveloperGuide/emr-dg.pdf). 15385 // Supported values are: 15386 // 15387 // * "mapr-m3" - launch the cluster using MapR M3 Edition. 15388 // 15389 // * "mapr-m5" - launch the cluster using MapR M5 Edition. 15390 // 15391 // * "mapr" with the user arguments specifying "--edition,m3" or "--edition,m5" 15392 // - launch the job flow using MapR M3 or M5 Edition respectively. 15393 // 15394 // * "mapr-m7" - launch the cluster using MapR M7 Edition. 15395 // 15396 // * "hunk" - launch the cluster with the Hunk Big Data Analytics Platform. 15397 // 15398 // * "hue"- launch the cluster with Hue installed. 15399 // 15400 // * "spark" - launch the cluster with Apache Spark installed. 15401 // 15402 // * "ganglia" - launch the cluster with the Ganglia Monitoring System installed. 15403 NewSupportedProducts []*SupportedProductConfig `type:"list"` 15404 15405 // The specified placement group configuration for an Amazon EMR cluster. 15406 PlacementGroupConfigs []*PlacementGroupConfig `type:"list"` 15407 15408 // The Amazon EMR release label, which determines the version of open-source 15409 // application packages installed on the cluster. Release labels are in the 15410 // form emr-x.x.x, where x.x.x is an Amazon EMR release version such as emr-5.14.0. 15411 // For more information about Amazon EMR release versions and included application 15412 // versions and features, see https://docs.aws.amazon.com/emr/latest/ReleaseGuide/ 15413 // (https://docs.aws.amazon.com/emr/latest/ReleaseGuide/). The release label 15414 // applies only to Amazon EMR releases version 4.0 and later. Earlier versions 15415 // use AmiVersion. 15416 ReleaseLabel *string `type:"string"` 15417 15418 // Applies only when CustomAmiID is used. Specifies which updates from the Amazon 15419 // Linux AMI package repositories to apply automatically when the instance boots 15420 // using the AMI. If omitted, the default is SECURITY, which indicates that 15421 // only security updates are applied. If NONE is specified, no updates are applied, 15422 // and all updates must be applied manually. 15423 RepoUpgradeOnBoot *string `type:"string" enum:"RepoUpgradeOnBoot"` 15424 15425 // Specifies the way that individual Amazon EC2 instances terminate when an 15426 // automatic scale-in activity occurs or an instance group is resized. TERMINATE_AT_INSTANCE_HOUR 15427 // indicates that Amazon EMR terminates nodes at the instance-hour boundary, 15428 // regardless of when the request to terminate the instance was submitted. This 15429 // option is only available with Amazon EMR 5.1.0 and later and is the default 15430 // for clusters created using that version. TERMINATE_AT_TASK_COMPLETION indicates 15431 // that Amazon EMR adds nodes to a deny list and drains tasks from nodes before 15432 // terminating the Amazon EC2 instances, regardless of the instance-hour boundary. 15433 // With either behavior, Amazon EMR removes the least active nodes first and 15434 // blocks instance termination if it could lead to HDFS corruption. TERMINATE_AT_TASK_COMPLETION 15435 // available only in Amazon EMR version 4.1.0 and later, and is the default 15436 // for versions of Amazon EMR earlier than 5.1.0. 15437 ScaleDownBehavior *string `type:"string" enum:"ScaleDownBehavior"` 15438 15439 // The name of a security configuration to apply to the cluster. 15440 SecurityConfiguration *string `type:"string"` 15441 15442 // The IAM role that Amazon EMR assumes in order to access Amazon Web Services 15443 // resources on your behalf. 15444 ServiceRole *string `type:"string"` 15445 15446 // Specifies the number of steps that can be executed concurrently. The default 15447 // value is 1. The maximum value is 256. 15448 StepConcurrencyLevel *int64 `type:"integer"` 15449 15450 // A list of steps to run. 15451 Steps []*StepConfig `type:"list"` 15452 15453 // 15454 // For Amazon EMR releases 3.x and 2.x. For Amazon EMR releases 4.x and later, 15455 // use Applications. 15456 // 15457 // A list of strings that indicates third-party software to use. For more information, 15458 // see the Amazon EMR Developer Guide (https://docs.aws.amazon.com/emr/latest/DeveloperGuide/emr-dg.pdf). 15459 // Currently supported values are: 15460 // 15461 // * "mapr-m3" - launch the job flow using MapR M3 Edition. 15462 // 15463 // * "mapr-m5" - launch the job flow using MapR M5 Edition. 15464 SupportedProducts []*string `type:"list"` 15465 15466 // A list of tags to associate with a cluster and propagate to Amazon EC2 instances. 15467 Tags []*Tag `type:"list"` 15468 15469 // Set this value to true so that IAM principals in the Amazon Web Services 15470 // account associated with the cluster can perform EMR actions on the cluster 15471 // that their IAM policies allow. This value defaults to true for clusters created 15472 // using the EMR API or the CLI create-cluster (https://docs.aws.amazon.com/cli/latest/reference/emr/create-cluster.html) 15473 // command. 15474 // 15475 // When set to false, only the IAM principal that created the cluster and the 15476 // Amazon Web Services account root user can perform EMR actions for the cluster, 15477 // regardless of the IAM permissions policies attached to other IAM principals. 15478 // For more information, see Understanding the EMR Cluster VisibleToAllUsers 15479 // Setting (https://docs.aws.amazon.com/emr/latest/ManagementGuide/security_iam_emr-with-iam.html#security_set_visible_to_all_users) 15480 // in the Amazon EMRManagement Guide. 15481 VisibleToAllUsers *bool `type:"boolean"` 15482} 15483 15484// String returns the string representation. 15485// 15486// API parameter values that are decorated as "sensitive" in the API will not 15487// be included in the string output. The member name will be present, but the 15488// value will be replaced with "sensitive". 15489func (s RunJobFlowInput) String() string { 15490 return awsutil.Prettify(s) 15491} 15492 15493// GoString returns the string representation. 15494// 15495// API parameter values that are decorated as "sensitive" in the API will not 15496// be included in the string output. The member name will be present, but the 15497// value will be replaced with "sensitive". 15498func (s RunJobFlowInput) GoString() string { 15499 return s.String() 15500} 15501 15502// Validate inspects the fields of the type to determine if they are valid. 15503func (s *RunJobFlowInput) Validate() error { 15504 invalidParams := request.ErrInvalidParams{Context: "RunJobFlowInput"} 15505 if s.Instances == nil { 15506 invalidParams.Add(request.NewErrParamRequired("Instances")) 15507 } 15508 if s.Name == nil { 15509 invalidParams.Add(request.NewErrParamRequired("Name")) 15510 } 15511 if s.BootstrapActions != nil { 15512 for i, v := range s.BootstrapActions { 15513 if v == nil { 15514 continue 15515 } 15516 if err := v.Validate(); err != nil { 15517 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "BootstrapActions", i), err.(request.ErrInvalidParams)) 15518 } 15519 } 15520 } 15521 if s.Instances != nil { 15522 if err := s.Instances.Validate(); err != nil { 15523 invalidParams.AddNested("Instances", err.(request.ErrInvalidParams)) 15524 } 15525 } 15526 if s.KerberosAttributes != nil { 15527 if err := s.KerberosAttributes.Validate(); err != nil { 15528 invalidParams.AddNested("KerberosAttributes", err.(request.ErrInvalidParams)) 15529 } 15530 } 15531 if s.ManagedScalingPolicy != nil { 15532 if err := s.ManagedScalingPolicy.Validate(); err != nil { 15533 invalidParams.AddNested("ManagedScalingPolicy", err.(request.ErrInvalidParams)) 15534 } 15535 } 15536 if s.PlacementGroupConfigs != nil { 15537 for i, v := range s.PlacementGroupConfigs { 15538 if v == nil { 15539 continue 15540 } 15541 if err := v.Validate(); err != nil { 15542 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "PlacementGroupConfigs", i), err.(request.ErrInvalidParams)) 15543 } 15544 } 15545 } 15546 if s.Steps != nil { 15547 for i, v := range s.Steps { 15548 if v == nil { 15549 continue 15550 } 15551 if err := v.Validate(); err != nil { 15552 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Steps", i), err.(request.ErrInvalidParams)) 15553 } 15554 } 15555 } 15556 15557 if invalidParams.Len() > 0 { 15558 return invalidParams 15559 } 15560 return nil 15561} 15562 15563// SetAdditionalInfo sets the AdditionalInfo field's value. 15564func (s *RunJobFlowInput) SetAdditionalInfo(v string) *RunJobFlowInput { 15565 s.AdditionalInfo = &v 15566 return s 15567} 15568 15569// SetAmiVersion sets the AmiVersion field's value. 15570func (s *RunJobFlowInput) SetAmiVersion(v string) *RunJobFlowInput { 15571 s.AmiVersion = &v 15572 return s 15573} 15574 15575// SetApplications sets the Applications field's value. 15576func (s *RunJobFlowInput) SetApplications(v []*Application) *RunJobFlowInput { 15577 s.Applications = v 15578 return s 15579} 15580 15581// SetAutoScalingRole sets the AutoScalingRole field's value. 15582func (s *RunJobFlowInput) SetAutoScalingRole(v string) *RunJobFlowInput { 15583 s.AutoScalingRole = &v 15584 return s 15585} 15586 15587// SetAutoTerminationPolicy sets the AutoTerminationPolicy field's value. 15588func (s *RunJobFlowInput) SetAutoTerminationPolicy(v *AutoTerminationPolicy) *RunJobFlowInput { 15589 s.AutoTerminationPolicy = v 15590 return s 15591} 15592 15593// SetBootstrapActions sets the BootstrapActions field's value. 15594func (s *RunJobFlowInput) SetBootstrapActions(v []*BootstrapActionConfig) *RunJobFlowInput { 15595 s.BootstrapActions = v 15596 return s 15597} 15598 15599// SetConfigurations sets the Configurations field's value. 15600func (s *RunJobFlowInput) SetConfigurations(v []*Configuration) *RunJobFlowInput { 15601 s.Configurations = v 15602 return s 15603} 15604 15605// SetCustomAmiId sets the CustomAmiId field's value. 15606func (s *RunJobFlowInput) SetCustomAmiId(v string) *RunJobFlowInput { 15607 s.CustomAmiId = &v 15608 return s 15609} 15610 15611// SetEbsRootVolumeSize sets the EbsRootVolumeSize field's value. 15612func (s *RunJobFlowInput) SetEbsRootVolumeSize(v int64) *RunJobFlowInput { 15613 s.EbsRootVolumeSize = &v 15614 return s 15615} 15616 15617// SetInstances sets the Instances field's value. 15618func (s *RunJobFlowInput) SetInstances(v *JobFlowInstancesConfig) *RunJobFlowInput { 15619 s.Instances = v 15620 return s 15621} 15622 15623// SetJobFlowRole sets the JobFlowRole field's value. 15624func (s *RunJobFlowInput) SetJobFlowRole(v string) *RunJobFlowInput { 15625 s.JobFlowRole = &v 15626 return s 15627} 15628 15629// SetKerberosAttributes sets the KerberosAttributes field's value. 15630func (s *RunJobFlowInput) SetKerberosAttributes(v *KerberosAttributes) *RunJobFlowInput { 15631 s.KerberosAttributes = v 15632 return s 15633} 15634 15635// SetLogEncryptionKmsKeyId sets the LogEncryptionKmsKeyId field's value. 15636func (s *RunJobFlowInput) SetLogEncryptionKmsKeyId(v string) *RunJobFlowInput { 15637 s.LogEncryptionKmsKeyId = &v 15638 return s 15639} 15640 15641// SetLogUri sets the LogUri field's value. 15642func (s *RunJobFlowInput) SetLogUri(v string) *RunJobFlowInput { 15643 s.LogUri = &v 15644 return s 15645} 15646 15647// SetManagedScalingPolicy sets the ManagedScalingPolicy field's value. 15648func (s *RunJobFlowInput) SetManagedScalingPolicy(v *ManagedScalingPolicy) *RunJobFlowInput { 15649 s.ManagedScalingPolicy = v 15650 return s 15651} 15652 15653// SetName sets the Name field's value. 15654func (s *RunJobFlowInput) SetName(v string) *RunJobFlowInput { 15655 s.Name = &v 15656 return s 15657} 15658 15659// SetNewSupportedProducts sets the NewSupportedProducts field's value. 15660func (s *RunJobFlowInput) SetNewSupportedProducts(v []*SupportedProductConfig) *RunJobFlowInput { 15661 s.NewSupportedProducts = v 15662 return s 15663} 15664 15665// SetPlacementGroupConfigs sets the PlacementGroupConfigs field's value. 15666func (s *RunJobFlowInput) SetPlacementGroupConfigs(v []*PlacementGroupConfig) *RunJobFlowInput { 15667 s.PlacementGroupConfigs = v 15668 return s 15669} 15670 15671// SetReleaseLabel sets the ReleaseLabel field's value. 15672func (s *RunJobFlowInput) SetReleaseLabel(v string) *RunJobFlowInput { 15673 s.ReleaseLabel = &v 15674 return s 15675} 15676 15677// SetRepoUpgradeOnBoot sets the RepoUpgradeOnBoot field's value. 15678func (s *RunJobFlowInput) SetRepoUpgradeOnBoot(v string) *RunJobFlowInput { 15679 s.RepoUpgradeOnBoot = &v 15680 return s 15681} 15682 15683// SetScaleDownBehavior sets the ScaleDownBehavior field's value. 15684func (s *RunJobFlowInput) SetScaleDownBehavior(v string) *RunJobFlowInput { 15685 s.ScaleDownBehavior = &v 15686 return s 15687} 15688 15689// SetSecurityConfiguration sets the SecurityConfiguration field's value. 15690func (s *RunJobFlowInput) SetSecurityConfiguration(v string) *RunJobFlowInput { 15691 s.SecurityConfiguration = &v 15692 return s 15693} 15694 15695// SetServiceRole sets the ServiceRole field's value. 15696func (s *RunJobFlowInput) SetServiceRole(v string) *RunJobFlowInput { 15697 s.ServiceRole = &v 15698 return s 15699} 15700 15701// SetStepConcurrencyLevel sets the StepConcurrencyLevel field's value. 15702func (s *RunJobFlowInput) SetStepConcurrencyLevel(v int64) *RunJobFlowInput { 15703 s.StepConcurrencyLevel = &v 15704 return s 15705} 15706 15707// SetSteps sets the Steps field's value. 15708func (s *RunJobFlowInput) SetSteps(v []*StepConfig) *RunJobFlowInput { 15709 s.Steps = v 15710 return s 15711} 15712 15713// SetSupportedProducts sets the SupportedProducts field's value. 15714func (s *RunJobFlowInput) SetSupportedProducts(v []*string) *RunJobFlowInput { 15715 s.SupportedProducts = v 15716 return s 15717} 15718 15719// SetTags sets the Tags field's value. 15720func (s *RunJobFlowInput) SetTags(v []*Tag) *RunJobFlowInput { 15721 s.Tags = v 15722 return s 15723} 15724 15725// SetVisibleToAllUsers sets the VisibleToAllUsers field's value. 15726func (s *RunJobFlowInput) SetVisibleToAllUsers(v bool) *RunJobFlowInput { 15727 s.VisibleToAllUsers = &v 15728 return s 15729} 15730 15731// The result of the RunJobFlow operation. 15732type RunJobFlowOutput struct { 15733 _ struct{} `type:"structure"` 15734 15735 // The Amazon Resource Name (ARN) of the cluster. 15736 ClusterArn *string `min:"20" type:"string"` 15737 15738 // A unique identifier for the job flow. 15739 JobFlowId *string `type:"string"` 15740} 15741 15742// String returns the string representation. 15743// 15744// API parameter values that are decorated as "sensitive" in the API will not 15745// be included in the string output. The member name will be present, but the 15746// value will be replaced with "sensitive". 15747func (s RunJobFlowOutput) String() string { 15748 return awsutil.Prettify(s) 15749} 15750 15751// GoString returns the string representation. 15752// 15753// API parameter values that are decorated as "sensitive" in the API will not 15754// be included in the string output. The member name will be present, but the 15755// value will be replaced with "sensitive". 15756func (s RunJobFlowOutput) GoString() string { 15757 return s.String() 15758} 15759 15760// SetClusterArn sets the ClusterArn field's value. 15761func (s *RunJobFlowOutput) SetClusterArn(v string) *RunJobFlowOutput { 15762 s.ClusterArn = &v 15763 return s 15764} 15765 15766// SetJobFlowId sets the JobFlowId field's value. 15767func (s *RunJobFlowOutput) SetJobFlowId(v string) *RunJobFlowOutput { 15768 s.JobFlowId = &v 15769 return s 15770} 15771 15772// The type of adjustment the automatic scaling activity makes when triggered, 15773// and the periodicity of the adjustment. 15774type ScalingAction struct { 15775 _ struct{} `type:"structure"` 15776 15777 // Not available for instance groups. Instance groups use the market type specified 15778 // for the group. 15779 Market *string `type:"string" enum:"MarketType"` 15780 15781 // The type of adjustment the automatic scaling activity makes when triggered, 15782 // and the periodicity of the adjustment. 15783 // 15784 // SimpleScalingPolicyConfiguration is a required field 15785 SimpleScalingPolicyConfiguration *SimpleScalingPolicyConfiguration `type:"structure" required:"true"` 15786} 15787 15788// String returns the string representation. 15789// 15790// API parameter values that are decorated as "sensitive" in the API will not 15791// be included in the string output. The member name will be present, but the 15792// value will be replaced with "sensitive". 15793func (s ScalingAction) String() string { 15794 return awsutil.Prettify(s) 15795} 15796 15797// GoString returns the string representation. 15798// 15799// API parameter values that are decorated as "sensitive" in the API will not 15800// be included in the string output. The member name will be present, but the 15801// value will be replaced with "sensitive". 15802func (s ScalingAction) GoString() string { 15803 return s.String() 15804} 15805 15806// Validate inspects the fields of the type to determine if they are valid. 15807func (s *ScalingAction) Validate() error { 15808 invalidParams := request.ErrInvalidParams{Context: "ScalingAction"} 15809 if s.SimpleScalingPolicyConfiguration == nil { 15810 invalidParams.Add(request.NewErrParamRequired("SimpleScalingPolicyConfiguration")) 15811 } 15812 if s.SimpleScalingPolicyConfiguration != nil { 15813 if err := s.SimpleScalingPolicyConfiguration.Validate(); err != nil { 15814 invalidParams.AddNested("SimpleScalingPolicyConfiguration", err.(request.ErrInvalidParams)) 15815 } 15816 } 15817 15818 if invalidParams.Len() > 0 { 15819 return invalidParams 15820 } 15821 return nil 15822} 15823 15824// SetMarket sets the Market field's value. 15825func (s *ScalingAction) SetMarket(v string) *ScalingAction { 15826 s.Market = &v 15827 return s 15828} 15829 15830// SetSimpleScalingPolicyConfiguration sets the SimpleScalingPolicyConfiguration field's value. 15831func (s *ScalingAction) SetSimpleScalingPolicyConfiguration(v *SimpleScalingPolicyConfiguration) *ScalingAction { 15832 s.SimpleScalingPolicyConfiguration = v 15833 return s 15834} 15835 15836// The upper and lower EC2 instance limits for an automatic scaling policy. 15837// Automatic scaling activities triggered by automatic scaling rules will not 15838// cause an instance group to grow above or below these limits. 15839type ScalingConstraints struct { 15840 _ struct{} `type:"structure"` 15841 15842 // The upper boundary of EC2 instances in an instance group beyond which scaling 15843 // activities are not allowed to grow. Scale-out activities will not add instances 15844 // beyond this boundary. 15845 // 15846 // MaxCapacity is a required field 15847 MaxCapacity *int64 `type:"integer" required:"true"` 15848 15849 // The lower boundary of EC2 instances in an instance group below which scaling 15850 // activities are not allowed to shrink. Scale-in activities will not terminate 15851 // instances below this boundary. 15852 // 15853 // MinCapacity is a required field 15854 MinCapacity *int64 `type:"integer" required:"true"` 15855} 15856 15857// String returns the string representation. 15858// 15859// API parameter values that are decorated as "sensitive" in the API will not 15860// be included in the string output. The member name will be present, but the 15861// value will be replaced with "sensitive". 15862func (s ScalingConstraints) String() string { 15863 return awsutil.Prettify(s) 15864} 15865 15866// GoString returns the string representation. 15867// 15868// API parameter values that are decorated as "sensitive" in the API will not 15869// be included in the string output. The member name will be present, but the 15870// value will be replaced with "sensitive". 15871func (s ScalingConstraints) GoString() string { 15872 return s.String() 15873} 15874 15875// Validate inspects the fields of the type to determine if they are valid. 15876func (s *ScalingConstraints) Validate() error { 15877 invalidParams := request.ErrInvalidParams{Context: "ScalingConstraints"} 15878 if s.MaxCapacity == nil { 15879 invalidParams.Add(request.NewErrParamRequired("MaxCapacity")) 15880 } 15881 if s.MinCapacity == nil { 15882 invalidParams.Add(request.NewErrParamRequired("MinCapacity")) 15883 } 15884 15885 if invalidParams.Len() > 0 { 15886 return invalidParams 15887 } 15888 return nil 15889} 15890 15891// SetMaxCapacity sets the MaxCapacity field's value. 15892func (s *ScalingConstraints) SetMaxCapacity(v int64) *ScalingConstraints { 15893 s.MaxCapacity = &v 15894 return s 15895} 15896 15897// SetMinCapacity sets the MinCapacity field's value. 15898func (s *ScalingConstraints) SetMinCapacity(v int64) *ScalingConstraints { 15899 s.MinCapacity = &v 15900 return s 15901} 15902 15903// A scale-in or scale-out rule that defines scaling activity, including the 15904// CloudWatch metric alarm that triggers activity, how EC2 instances are added 15905// or removed, and the periodicity of adjustments. The automatic scaling policy 15906// for an instance group can comprise one or more automatic scaling rules. 15907type ScalingRule struct { 15908 _ struct{} `type:"structure"` 15909 15910 // The conditions that trigger an automatic scaling activity. 15911 // 15912 // Action is a required field 15913 Action *ScalingAction `type:"structure" required:"true"` 15914 15915 // A friendly, more verbose description of the automatic scaling rule. 15916 Description *string `type:"string"` 15917 15918 // The name used to identify an automatic scaling rule. Rule names must be unique 15919 // within a scaling policy. 15920 // 15921 // Name is a required field 15922 Name *string `type:"string" required:"true"` 15923 15924 // The CloudWatch alarm definition that determines when automatic scaling activity 15925 // is triggered. 15926 // 15927 // Trigger is a required field 15928 Trigger *ScalingTrigger `type:"structure" required:"true"` 15929} 15930 15931// String returns the string representation. 15932// 15933// API parameter values that are decorated as "sensitive" in the API will not 15934// be included in the string output. The member name will be present, but the 15935// value will be replaced with "sensitive". 15936func (s ScalingRule) String() string { 15937 return awsutil.Prettify(s) 15938} 15939 15940// GoString returns the string representation. 15941// 15942// API parameter values that are decorated as "sensitive" in the API will not 15943// be included in the string output. The member name will be present, but the 15944// value will be replaced with "sensitive". 15945func (s ScalingRule) GoString() string { 15946 return s.String() 15947} 15948 15949// Validate inspects the fields of the type to determine if they are valid. 15950func (s *ScalingRule) Validate() error { 15951 invalidParams := request.ErrInvalidParams{Context: "ScalingRule"} 15952 if s.Action == nil { 15953 invalidParams.Add(request.NewErrParamRequired("Action")) 15954 } 15955 if s.Name == nil { 15956 invalidParams.Add(request.NewErrParamRequired("Name")) 15957 } 15958 if s.Trigger == nil { 15959 invalidParams.Add(request.NewErrParamRequired("Trigger")) 15960 } 15961 if s.Action != nil { 15962 if err := s.Action.Validate(); err != nil { 15963 invalidParams.AddNested("Action", err.(request.ErrInvalidParams)) 15964 } 15965 } 15966 if s.Trigger != nil { 15967 if err := s.Trigger.Validate(); err != nil { 15968 invalidParams.AddNested("Trigger", err.(request.ErrInvalidParams)) 15969 } 15970 } 15971 15972 if invalidParams.Len() > 0 { 15973 return invalidParams 15974 } 15975 return nil 15976} 15977 15978// SetAction sets the Action field's value. 15979func (s *ScalingRule) SetAction(v *ScalingAction) *ScalingRule { 15980 s.Action = v 15981 return s 15982} 15983 15984// SetDescription sets the Description field's value. 15985func (s *ScalingRule) SetDescription(v string) *ScalingRule { 15986 s.Description = &v 15987 return s 15988} 15989 15990// SetName sets the Name field's value. 15991func (s *ScalingRule) SetName(v string) *ScalingRule { 15992 s.Name = &v 15993 return s 15994} 15995 15996// SetTrigger sets the Trigger field's value. 15997func (s *ScalingRule) SetTrigger(v *ScalingTrigger) *ScalingRule { 15998 s.Trigger = v 15999 return s 16000} 16001 16002// The conditions that trigger an automatic scaling activity. 16003type ScalingTrigger struct { 16004 _ struct{} `type:"structure"` 16005 16006 // The definition of a CloudWatch metric alarm. When the defined alarm conditions 16007 // are met along with other trigger parameters, scaling activity begins. 16008 // 16009 // CloudWatchAlarmDefinition is a required field 16010 CloudWatchAlarmDefinition *CloudWatchAlarmDefinition `type:"structure" required:"true"` 16011} 16012 16013// String returns the string representation. 16014// 16015// API parameter values that are decorated as "sensitive" in the API will not 16016// be included in the string output. The member name will be present, but the 16017// value will be replaced with "sensitive". 16018func (s ScalingTrigger) String() string { 16019 return awsutil.Prettify(s) 16020} 16021 16022// GoString returns the string representation. 16023// 16024// API parameter values that are decorated as "sensitive" in the API will not 16025// be included in the string output. The member name will be present, but the 16026// value will be replaced with "sensitive". 16027func (s ScalingTrigger) GoString() string { 16028 return s.String() 16029} 16030 16031// Validate inspects the fields of the type to determine if they are valid. 16032func (s *ScalingTrigger) Validate() error { 16033 invalidParams := request.ErrInvalidParams{Context: "ScalingTrigger"} 16034 if s.CloudWatchAlarmDefinition == nil { 16035 invalidParams.Add(request.NewErrParamRequired("CloudWatchAlarmDefinition")) 16036 } 16037 if s.CloudWatchAlarmDefinition != nil { 16038 if err := s.CloudWatchAlarmDefinition.Validate(); err != nil { 16039 invalidParams.AddNested("CloudWatchAlarmDefinition", err.(request.ErrInvalidParams)) 16040 } 16041 } 16042 16043 if invalidParams.Len() > 0 { 16044 return invalidParams 16045 } 16046 return nil 16047} 16048 16049// SetCloudWatchAlarmDefinition sets the CloudWatchAlarmDefinition field's value. 16050func (s *ScalingTrigger) SetCloudWatchAlarmDefinition(v *CloudWatchAlarmDefinition) *ScalingTrigger { 16051 s.CloudWatchAlarmDefinition = v 16052 return s 16053} 16054 16055// Configuration of the script to run during a bootstrap action. 16056type ScriptBootstrapActionConfig struct { 16057 _ struct{} `type:"structure"` 16058 16059 // A list of command line arguments to pass to the bootstrap action script. 16060 Args []*string `type:"list"` 16061 16062 // Location in Amazon S3 of the script to run during a bootstrap action. 16063 // 16064 // Path is a required field 16065 Path *string `type:"string" required:"true"` 16066} 16067 16068// String returns the string representation. 16069// 16070// API parameter values that are decorated as "sensitive" in the API will not 16071// be included in the string output. The member name will be present, but the 16072// value will be replaced with "sensitive". 16073func (s ScriptBootstrapActionConfig) String() string { 16074 return awsutil.Prettify(s) 16075} 16076 16077// GoString returns the string representation. 16078// 16079// API parameter values that are decorated as "sensitive" in the API will not 16080// be included in the string output. The member name will be present, but the 16081// value will be replaced with "sensitive". 16082func (s ScriptBootstrapActionConfig) GoString() string { 16083 return s.String() 16084} 16085 16086// Validate inspects the fields of the type to determine if they are valid. 16087func (s *ScriptBootstrapActionConfig) Validate() error { 16088 invalidParams := request.ErrInvalidParams{Context: "ScriptBootstrapActionConfig"} 16089 if s.Path == nil { 16090 invalidParams.Add(request.NewErrParamRequired("Path")) 16091 } 16092 16093 if invalidParams.Len() > 0 { 16094 return invalidParams 16095 } 16096 return nil 16097} 16098 16099// SetArgs sets the Args field's value. 16100func (s *ScriptBootstrapActionConfig) SetArgs(v []*string) *ScriptBootstrapActionConfig { 16101 s.Args = v 16102 return s 16103} 16104 16105// SetPath sets the Path field's value. 16106func (s *ScriptBootstrapActionConfig) SetPath(v string) *ScriptBootstrapActionConfig { 16107 s.Path = &v 16108 return s 16109} 16110 16111// The creation date and time, and name, of a security configuration. 16112type SecurityConfigurationSummary struct { 16113 _ struct{} `type:"structure"` 16114 16115 // The date and time the security configuration was created. 16116 CreationDateTime *time.Time `type:"timestamp"` 16117 16118 // The name of the security configuration. 16119 Name *string `type:"string"` 16120} 16121 16122// String returns the string representation. 16123// 16124// API parameter values that are decorated as "sensitive" in the API will not 16125// be included in the string output. The member name will be present, but the 16126// value will be replaced with "sensitive". 16127func (s SecurityConfigurationSummary) String() string { 16128 return awsutil.Prettify(s) 16129} 16130 16131// GoString returns the string representation. 16132// 16133// API parameter values that are decorated as "sensitive" in the API will not 16134// be included in the string output. The member name will be present, but the 16135// value will be replaced with "sensitive". 16136func (s SecurityConfigurationSummary) GoString() string { 16137 return s.String() 16138} 16139 16140// SetCreationDateTime sets the CreationDateTime field's value. 16141func (s *SecurityConfigurationSummary) SetCreationDateTime(v time.Time) *SecurityConfigurationSummary { 16142 s.CreationDateTime = &v 16143 return s 16144} 16145 16146// SetName sets the Name field's value. 16147func (s *SecurityConfigurationSummary) SetName(v string) *SecurityConfigurationSummary { 16148 s.Name = &v 16149 return s 16150} 16151 16152// Details for an Amazon EMR Studio session mapping including creation time, 16153// user or group ID, Studio ID, and so on. 16154type SessionMappingDetail struct { 16155 _ struct{} `type:"structure"` 16156 16157 // The time the session mapping was created. 16158 CreationTime *time.Time `type:"timestamp"` 16159 16160 // The globally unique identifier (GUID) of the user or group. 16161 IdentityId *string `type:"string"` 16162 16163 // The name of the user or group. For more information, see UserName (https://docs.aws.amazon.com/singlesignon/latest/IdentityStoreAPIReference/API_User.html#singlesignon-Type-User-UserName) 16164 // and DisplayName (https://docs.aws.amazon.com/singlesignon/latest/IdentityStoreAPIReference/API_Group.html#singlesignon-Type-Group-DisplayName) 16165 // in the Amazon Web Services SSO Identity Store API Reference. 16166 IdentityName *string `type:"string"` 16167 16168 // Specifies whether the identity mapped to the Amazon EMR Studio is a user 16169 // or a group. 16170 IdentityType *string `type:"string" enum:"IdentityType"` 16171 16172 // The time the session mapping was last modified. 16173 LastModifiedTime *time.Time `type:"timestamp"` 16174 16175 // The Amazon Resource Name (ARN) of the session policy associated with the 16176 // user or group. 16177 SessionPolicyArn *string `type:"string"` 16178 16179 // The ID of the Amazon EMR Studio. 16180 StudioId *string `type:"string"` 16181} 16182 16183// String returns the string representation. 16184// 16185// API parameter values that are decorated as "sensitive" in the API will not 16186// be included in the string output. The member name will be present, but the 16187// value will be replaced with "sensitive". 16188func (s SessionMappingDetail) String() string { 16189 return awsutil.Prettify(s) 16190} 16191 16192// GoString returns the string representation. 16193// 16194// API parameter values that are decorated as "sensitive" in the API will not 16195// be included in the string output. The member name will be present, but the 16196// value will be replaced with "sensitive". 16197func (s SessionMappingDetail) GoString() string { 16198 return s.String() 16199} 16200 16201// SetCreationTime sets the CreationTime field's value. 16202func (s *SessionMappingDetail) SetCreationTime(v time.Time) *SessionMappingDetail { 16203 s.CreationTime = &v 16204 return s 16205} 16206 16207// SetIdentityId sets the IdentityId field's value. 16208func (s *SessionMappingDetail) SetIdentityId(v string) *SessionMappingDetail { 16209 s.IdentityId = &v 16210 return s 16211} 16212 16213// SetIdentityName sets the IdentityName field's value. 16214func (s *SessionMappingDetail) SetIdentityName(v string) *SessionMappingDetail { 16215 s.IdentityName = &v 16216 return s 16217} 16218 16219// SetIdentityType sets the IdentityType field's value. 16220func (s *SessionMappingDetail) SetIdentityType(v string) *SessionMappingDetail { 16221 s.IdentityType = &v 16222 return s 16223} 16224 16225// SetLastModifiedTime sets the LastModifiedTime field's value. 16226func (s *SessionMappingDetail) SetLastModifiedTime(v time.Time) *SessionMappingDetail { 16227 s.LastModifiedTime = &v 16228 return s 16229} 16230 16231// SetSessionPolicyArn sets the SessionPolicyArn field's value. 16232func (s *SessionMappingDetail) SetSessionPolicyArn(v string) *SessionMappingDetail { 16233 s.SessionPolicyArn = &v 16234 return s 16235} 16236 16237// SetStudioId sets the StudioId field's value. 16238func (s *SessionMappingDetail) SetStudioId(v string) *SessionMappingDetail { 16239 s.StudioId = &v 16240 return s 16241} 16242 16243// Details for an Amazon EMR Studio session mapping. The details do not include 16244// the time the session mapping was last modified. 16245type SessionMappingSummary struct { 16246 _ struct{} `type:"structure"` 16247 16248 // The time the session mapping was created. 16249 CreationTime *time.Time `type:"timestamp"` 16250 16251 // The globally unique identifier (GUID) of the user or group from the Amazon 16252 // Web Services SSO Identity Store. 16253 IdentityId *string `type:"string"` 16254 16255 // The name of the user or group. For more information, see UserName (https://docs.aws.amazon.com/singlesignon/latest/IdentityStoreAPIReference/API_User.html#singlesignon-Type-User-UserName) 16256 // and DisplayName (https://docs.aws.amazon.com/singlesignon/latest/IdentityStoreAPIReference/API_Group.html#singlesignon-Type-Group-DisplayName) 16257 // in the Amazon Web Services SSO Identity Store API Reference. 16258 IdentityName *string `type:"string"` 16259 16260 // Specifies whether the identity mapped to the Amazon EMR Studio is a user 16261 // or a group. 16262 IdentityType *string `type:"string" enum:"IdentityType"` 16263 16264 // The Amazon Resource Name (ARN) of the session policy associated with the 16265 // user or group. 16266 SessionPolicyArn *string `type:"string"` 16267 16268 // The ID of the Amazon EMR Studio. 16269 StudioId *string `type:"string"` 16270} 16271 16272// String returns the string representation. 16273// 16274// API parameter values that are decorated as "sensitive" in the API will not 16275// be included in the string output. The member name will be present, but the 16276// value will be replaced with "sensitive". 16277func (s SessionMappingSummary) String() string { 16278 return awsutil.Prettify(s) 16279} 16280 16281// GoString returns the string representation. 16282// 16283// API parameter values that are decorated as "sensitive" in the API will not 16284// be included in the string output. The member name will be present, but the 16285// value will be replaced with "sensitive". 16286func (s SessionMappingSummary) GoString() string { 16287 return s.String() 16288} 16289 16290// SetCreationTime sets the CreationTime field's value. 16291func (s *SessionMappingSummary) SetCreationTime(v time.Time) *SessionMappingSummary { 16292 s.CreationTime = &v 16293 return s 16294} 16295 16296// SetIdentityId sets the IdentityId field's value. 16297func (s *SessionMappingSummary) SetIdentityId(v string) *SessionMappingSummary { 16298 s.IdentityId = &v 16299 return s 16300} 16301 16302// SetIdentityName sets the IdentityName field's value. 16303func (s *SessionMappingSummary) SetIdentityName(v string) *SessionMappingSummary { 16304 s.IdentityName = &v 16305 return s 16306} 16307 16308// SetIdentityType sets the IdentityType field's value. 16309func (s *SessionMappingSummary) SetIdentityType(v string) *SessionMappingSummary { 16310 s.IdentityType = &v 16311 return s 16312} 16313 16314// SetSessionPolicyArn sets the SessionPolicyArn field's value. 16315func (s *SessionMappingSummary) SetSessionPolicyArn(v string) *SessionMappingSummary { 16316 s.SessionPolicyArn = &v 16317 return s 16318} 16319 16320// SetStudioId sets the StudioId field's value. 16321func (s *SessionMappingSummary) SetStudioId(v string) *SessionMappingSummary { 16322 s.StudioId = &v 16323 return s 16324} 16325 16326// The input argument to the TerminationProtection operation. 16327type SetTerminationProtectionInput struct { 16328 _ struct{} `type:"structure"` 16329 16330 // A list of strings that uniquely identify the clusters to protect. This identifier 16331 // is returned by RunJobFlow and can also be obtained from DescribeJobFlows . 16332 // 16333 // JobFlowIds is a required field 16334 JobFlowIds []*string `type:"list" required:"true"` 16335 16336 // A Boolean that indicates whether to protect the cluster and prevent the Amazon 16337 // EC2 instances in the cluster from shutting down due to API calls, user intervention, 16338 // or job-flow error. 16339 // 16340 // TerminationProtected is a required field 16341 TerminationProtected *bool `type:"boolean" required:"true"` 16342} 16343 16344// String returns the string representation. 16345// 16346// API parameter values that are decorated as "sensitive" in the API will not 16347// be included in the string output. The member name will be present, but the 16348// value will be replaced with "sensitive". 16349func (s SetTerminationProtectionInput) String() string { 16350 return awsutil.Prettify(s) 16351} 16352 16353// GoString returns the string representation. 16354// 16355// API parameter values that are decorated as "sensitive" in the API will not 16356// be included in the string output. The member name will be present, but the 16357// value will be replaced with "sensitive". 16358func (s SetTerminationProtectionInput) GoString() string { 16359 return s.String() 16360} 16361 16362// Validate inspects the fields of the type to determine if they are valid. 16363func (s *SetTerminationProtectionInput) Validate() error { 16364 invalidParams := request.ErrInvalidParams{Context: "SetTerminationProtectionInput"} 16365 if s.JobFlowIds == nil { 16366 invalidParams.Add(request.NewErrParamRequired("JobFlowIds")) 16367 } 16368 if s.TerminationProtected == nil { 16369 invalidParams.Add(request.NewErrParamRequired("TerminationProtected")) 16370 } 16371 16372 if invalidParams.Len() > 0 { 16373 return invalidParams 16374 } 16375 return nil 16376} 16377 16378// SetJobFlowIds sets the JobFlowIds field's value. 16379func (s *SetTerminationProtectionInput) SetJobFlowIds(v []*string) *SetTerminationProtectionInput { 16380 s.JobFlowIds = v 16381 return s 16382} 16383 16384// SetTerminationProtected sets the TerminationProtected field's value. 16385func (s *SetTerminationProtectionInput) SetTerminationProtected(v bool) *SetTerminationProtectionInput { 16386 s.TerminationProtected = &v 16387 return s 16388} 16389 16390type SetTerminationProtectionOutput struct { 16391 _ struct{} `type:"structure"` 16392} 16393 16394// String returns the string representation. 16395// 16396// API parameter values that are decorated as "sensitive" in the API will not 16397// be included in the string output. The member name will be present, but the 16398// value will be replaced with "sensitive". 16399func (s SetTerminationProtectionOutput) String() string { 16400 return awsutil.Prettify(s) 16401} 16402 16403// GoString returns the string representation. 16404// 16405// API parameter values that are decorated as "sensitive" in the API will not 16406// be included in the string output. The member name will be present, but the 16407// value will be replaced with "sensitive". 16408func (s SetTerminationProtectionOutput) GoString() string { 16409 return s.String() 16410} 16411 16412// The input to the SetVisibleToAllUsers action. 16413type SetVisibleToAllUsersInput struct { 16414 _ struct{} `type:"structure"` 16415 16416 // The unique identifier of the job flow (cluster). 16417 // 16418 // JobFlowIds is a required field 16419 JobFlowIds []*string `type:"list" required:"true"` 16420 16421 // A value of true indicates that an IAM principal in the Amazon Web Services 16422 // account can perform EMR actions on the cluster that the IAM policies attached 16423 // to the principal allow. A value of false indicates that only the IAM principal 16424 // that created the cluster and the Amazon Web Services root user can perform 16425 // EMR actions on the cluster. 16426 // 16427 // VisibleToAllUsers is a required field 16428 VisibleToAllUsers *bool `type:"boolean" required:"true"` 16429} 16430 16431// String returns the string representation. 16432// 16433// API parameter values that are decorated as "sensitive" in the API will not 16434// be included in the string output. The member name will be present, but the 16435// value will be replaced with "sensitive". 16436func (s SetVisibleToAllUsersInput) String() string { 16437 return awsutil.Prettify(s) 16438} 16439 16440// GoString returns the string representation. 16441// 16442// API parameter values that are decorated as "sensitive" in the API will not 16443// be included in the string output. The member name will be present, but the 16444// value will be replaced with "sensitive". 16445func (s SetVisibleToAllUsersInput) GoString() string { 16446 return s.String() 16447} 16448 16449// Validate inspects the fields of the type to determine if they are valid. 16450func (s *SetVisibleToAllUsersInput) Validate() error { 16451 invalidParams := request.ErrInvalidParams{Context: "SetVisibleToAllUsersInput"} 16452 if s.JobFlowIds == nil { 16453 invalidParams.Add(request.NewErrParamRequired("JobFlowIds")) 16454 } 16455 if s.VisibleToAllUsers == nil { 16456 invalidParams.Add(request.NewErrParamRequired("VisibleToAllUsers")) 16457 } 16458 16459 if invalidParams.Len() > 0 { 16460 return invalidParams 16461 } 16462 return nil 16463} 16464 16465// SetJobFlowIds sets the JobFlowIds field's value. 16466func (s *SetVisibleToAllUsersInput) SetJobFlowIds(v []*string) *SetVisibleToAllUsersInput { 16467 s.JobFlowIds = v 16468 return s 16469} 16470 16471// SetVisibleToAllUsers sets the VisibleToAllUsers field's value. 16472func (s *SetVisibleToAllUsersInput) SetVisibleToAllUsers(v bool) *SetVisibleToAllUsersInput { 16473 s.VisibleToAllUsers = &v 16474 return s 16475} 16476 16477type SetVisibleToAllUsersOutput struct { 16478 _ struct{} `type:"structure"` 16479} 16480 16481// String returns the string representation. 16482// 16483// API parameter values that are decorated as "sensitive" in the API will not 16484// be included in the string output. The member name will be present, but the 16485// value will be replaced with "sensitive". 16486func (s SetVisibleToAllUsersOutput) String() string { 16487 return awsutil.Prettify(s) 16488} 16489 16490// GoString returns the string representation. 16491// 16492// API parameter values that are decorated as "sensitive" in the API will not 16493// be included in the string output. The member name will be present, but the 16494// value will be replaced with "sensitive". 16495func (s SetVisibleToAllUsersOutput) GoString() string { 16496 return s.String() 16497} 16498 16499// Policy for customizing shrink operations. Allows configuration of decommissioning 16500// timeout and targeted instance shrinking. 16501type ShrinkPolicy struct { 16502 _ struct{} `type:"structure"` 16503 16504 // The desired timeout for decommissioning an instance. Overrides the default 16505 // YARN decommissioning timeout. 16506 DecommissionTimeout *int64 `type:"integer"` 16507 16508 // Custom policy for requesting termination protection or termination of specific 16509 // instances when shrinking an instance group. 16510 InstanceResizePolicy *InstanceResizePolicy `type:"structure"` 16511} 16512 16513// String returns the string representation. 16514// 16515// API parameter values that are decorated as "sensitive" in the API will not 16516// be included in the string output. The member name will be present, but the 16517// value will be replaced with "sensitive". 16518func (s ShrinkPolicy) String() string { 16519 return awsutil.Prettify(s) 16520} 16521 16522// GoString returns the string representation. 16523// 16524// API parameter values that are decorated as "sensitive" in the API will not 16525// be included in the string output. The member name will be present, but the 16526// value will be replaced with "sensitive". 16527func (s ShrinkPolicy) GoString() string { 16528 return s.String() 16529} 16530 16531// SetDecommissionTimeout sets the DecommissionTimeout field's value. 16532func (s *ShrinkPolicy) SetDecommissionTimeout(v int64) *ShrinkPolicy { 16533 s.DecommissionTimeout = &v 16534 return s 16535} 16536 16537// SetInstanceResizePolicy sets the InstanceResizePolicy field's value. 16538func (s *ShrinkPolicy) SetInstanceResizePolicy(v *InstanceResizePolicy) *ShrinkPolicy { 16539 s.InstanceResizePolicy = v 16540 return s 16541} 16542 16543// An automatic scaling configuration, which describes how the policy adds or 16544// removes instances, the cooldown period, and the number of EC2 instances that 16545// will be added each time the CloudWatch metric alarm condition is satisfied. 16546type SimpleScalingPolicyConfiguration struct { 16547 _ struct{} `type:"structure"` 16548 16549 // The way in which EC2 instances are added (if ScalingAdjustment is a positive 16550 // number) or terminated (if ScalingAdjustment is a negative number) each time 16551 // the scaling activity is triggered. CHANGE_IN_CAPACITY is the default. CHANGE_IN_CAPACITY 16552 // indicates that the EC2 instance count increments or decrements by ScalingAdjustment, 16553 // which should be expressed as an integer. PERCENT_CHANGE_IN_CAPACITY indicates 16554 // the instance count increments or decrements by the percentage specified by 16555 // ScalingAdjustment, which should be expressed as an integer. For example, 16556 // 20 indicates an increase in 20% increments of cluster capacity. EXACT_CAPACITY 16557 // indicates the scaling activity results in an instance group with the number 16558 // of EC2 instances specified by ScalingAdjustment, which should be expressed 16559 // as a positive integer. 16560 AdjustmentType *string `type:"string" enum:"AdjustmentType"` 16561 16562 // The amount of time, in seconds, after a scaling activity completes before 16563 // any further trigger-related scaling activities can start. The default value 16564 // is 0. 16565 CoolDown *int64 `type:"integer"` 16566 16567 // The amount by which to scale in or scale out, based on the specified AdjustmentType. 16568 // A positive value adds to the instance group's EC2 instance count while a 16569 // negative number removes instances. If AdjustmentType is set to EXACT_CAPACITY, 16570 // the number should only be a positive integer. If AdjustmentType is set to 16571 // PERCENT_CHANGE_IN_CAPACITY, the value should express the percentage as an 16572 // integer. For example, -20 indicates a decrease in 20% increments of cluster 16573 // capacity. 16574 // 16575 // ScalingAdjustment is a required field 16576 ScalingAdjustment *int64 `type:"integer" required:"true"` 16577} 16578 16579// String returns the string representation. 16580// 16581// API parameter values that are decorated as "sensitive" in the API will not 16582// be included in the string output. The member name will be present, but the 16583// value will be replaced with "sensitive". 16584func (s SimpleScalingPolicyConfiguration) String() string { 16585 return awsutil.Prettify(s) 16586} 16587 16588// GoString returns the string representation. 16589// 16590// API parameter values that are decorated as "sensitive" in the API will not 16591// be included in the string output. The member name will be present, but the 16592// value will be replaced with "sensitive". 16593func (s SimpleScalingPolicyConfiguration) GoString() string { 16594 return s.String() 16595} 16596 16597// Validate inspects the fields of the type to determine if they are valid. 16598func (s *SimpleScalingPolicyConfiguration) Validate() error { 16599 invalidParams := request.ErrInvalidParams{Context: "SimpleScalingPolicyConfiguration"} 16600 if s.ScalingAdjustment == nil { 16601 invalidParams.Add(request.NewErrParamRequired("ScalingAdjustment")) 16602 } 16603 16604 if invalidParams.Len() > 0 { 16605 return invalidParams 16606 } 16607 return nil 16608} 16609 16610// SetAdjustmentType sets the AdjustmentType field's value. 16611func (s *SimpleScalingPolicyConfiguration) SetAdjustmentType(v string) *SimpleScalingPolicyConfiguration { 16612 s.AdjustmentType = &v 16613 return s 16614} 16615 16616// SetCoolDown sets the CoolDown field's value. 16617func (s *SimpleScalingPolicyConfiguration) SetCoolDown(v int64) *SimpleScalingPolicyConfiguration { 16618 s.CoolDown = &v 16619 return s 16620} 16621 16622// SetScalingAdjustment sets the ScalingAdjustment field's value. 16623func (s *SimpleScalingPolicyConfiguration) SetScalingAdjustment(v int64) *SimpleScalingPolicyConfiguration { 16624 s.ScalingAdjustment = &v 16625 return s 16626} 16627 16628// The returned release label application names or versions. 16629type SimplifiedApplication struct { 16630 _ struct{} `type:"structure"` 16631 16632 // The returned release label application name. For example, hadoop. 16633 Name *string `type:"string"` 16634 16635 // The returned release label application version. For example, 3.2.1. 16636 Version *string `type:"string"` 16637} 16638 16639// String returns the string representation. 16640// 16641// API parameter values that are decorated as "sensitive" in the API will not 16642// be included in the string output. The member name will be present, but the 16643// value will be replaced with "sensitive". 16644func (s SimplifiedApplication) String() string { 16645 return awsutil.Prettify(s) 16646} 16647 16648// GoString returns the string representation. 16649// 16650// API parameter values that are decorated as "sensitive" in the API will not 16651// be included in the string output. The member name will be present, but the 16652// value will be replaced with "sensitive". 16653func (s SimplifiedApplication) GoString() string { 16654 return s.String() 16655} 16656 16657// SetName sets the Name field's value. 16658func (s *SimplifiedApplication) SetName(v string) *SimplifiedApplication { 16659 s.Name = &v 16660 return s 16661} 16662 16663// SetVersion sets the Version field's value. 16664func (s *SimplifiedApplication) SetVersion(v string) *SimplifiedApplication { 16665 s.Version = &v 16666 return s 16667} 16668 16669// The launch specification for Spot Instances in the instance fleet, which 16670// determines the defined duration, provisioning timeout behavior, and allocation 16671// strategy. 16672// 16673// The instance fleet configuration is available only in Amazon EMR versions 16674// 4.8.0 and later, excluding 5.0.x versions. Spot Instance allocation strategy 16675// is available in Amazon EMR version 5.12.1 and later. 16676type SpotProvisioningSpecification struct { 16677 _ struct{} `type:"structure"` 16678 16679 // Specifies the strategy to use in launching Spot Instance fleets. Currently, 16680 // the only option is capacity-optimized (the default), which launches instances 16681 // from Spot Instance pools with optimal capacity for the number of instances 16682 // that are launching. 16683 AllocationStrategy *string `type:"string" enum:"SpotProvisioningAllocationStrategy"` 16684 16685 // The defined duration for Spot Instances (also known as Spot blocks) in minutes. 16686 // When specified, the Spot Instance does not terminate before the defined duration 16687 // expires, and defined duration pricing for Spot Instances applies. Valid values 16688 // are 60, 120, 180, 240, 300, or 360. The duration period starts as soon as 16689 // a Spot Instance receives its instance ID. At the end of the duration, Amazon 16690 // EC2 marks the Spot Instance for termination and provides a Spot Instance 16691 // termination notice, which gives the instance a two-minute warning before 16692 // it terminates. 16693 BlockDurationMinutes *int64 `type:"integer"` 16694 16695 // The action to take when TargetSpotCapacity has not been fulfilled when the 16696 // TimeoutDurationMinutes has expired; that is, when all Spot Instances could 16697 // not be provisioned within the Spot provisioning timeout. Valid values are 16698 // TERMINATE_CLUSTER and SWITCH_TO_ON_DEMAND. SWITCH_TO_ON_DEMAND specifies 16699 // that if no Spot Instances are available, On-Demand Instances should be provisioned 16700 // to fulfill any remaining Spot capacity. 16701 // 16702 // TimeoutAction is a required field 16703 TimeoutAction *string `type:"string" required:"true" enum:"SpotProvisioningTimeoutAction"` 16704 16705 // The spot provisioning timeout period in minutes. If Spot Instances are not 16706 // provisioned within this time period, the TimeOutAction is taken. Minimum 16707 // value is 5 and maximum value is 1440. The timeout applies only during initial 16708 // provisioning, when the cluster is first created. 16709 // 16710 // TimeoutDurationMinutes is a required field 16711 TimeoutDurationMinutes *int64 `type:"integer" required:"true"` 16712} 16713 16714// String returns the string representation. 16715// 16716// API parameter values that are decorated as "sensitive" in the API will not 16717// be included in the string output. The member name will be present, but the 16718// value will be replaced with "sensitive". 16719func (s SpotProvisioningSpecification) String() string { 16720 return awsutil.Prettify(s) 16721} 16722 16723// GoString returns the string representation. 16724// 16725// API parameter values that are decorated as "sensitive" in the API will not 16726// be included in the string output. The member name will be present, but the 16727// value will be replaced with "sensitive". 16728func (s SpotProvisioningSpecification) GoString() string { 16729 return s.String() 16730} 16731 16732// Validate inspects the fields of the type to determine if they are valid. 16733func (s *SpotProvisioningSpecification) Validate() error { 16734 invalidParams := request.ErrInvalidParams{Context: "SpotProvisioningSpecification"} 16735 if s.TimeoutAction == nil { 16736 invalidParams.Add(request.NewErrParamRequired("TimeoutAction")) 16737 } 16738 if s.TimeoutDurationMinutes == nil { 16739 invalidParams.Add(request.NewErrParamRequired("TimeoutDurationMinutes")) 16740 } 16741 16742 if invalidParams.Len() > 0 { 16743 return invalidParams 16744 } 16745 return nil 16746} 16747 16748// SetAllocationStrategy sets the AllocationStrategy field's value. 16749func (s *SpotProvisioningSpecification) SetAllocationStrategy(v string) *SpotProvisioningSpecification { 16750 s.AllocationStrategy = &v 16751 return s 16752} 16753 16754// SetBlockDurationMinutes sets the BlockDurationMinutes field's value. 16755func (s *SpotProvisioningSpecification) SetBlockDurationMinutes(v int64) *SpotProvisioningSpecification { 16756 s.BlockDurationMinutes = &v 16757 return s 16758} 16759 16760// SetTimeoutAction sets the TimeoutAction field's value. 16761func (s *SpotProvisioningSpecification) SetTimeoutAction(v string) *SpotProvisioningSpecification { 16762 s.TimeoutAction = &v 16763 return s 16764} 16765 16766// SetTimeoutDurationMinutes sets the TimeoutDurationMinutes field's value. 16767func (s *SpotProvisioningSpecification) SetTimeoutDurationMinutes(v int64) *SpotProvisioningSpecification { 16768 s.TimeoutDurationMinutes = &v 16769 return s 16770} 16771 16772type StartNotebookExecutionInput struct { 16773 _ struct{} `type:"structure"` 16774 16775 // The unique identifier of the EMR Notebook to use for notebook execution. 16776 // 16777 // EditorId is a required field 16778 EditorId *string `type:"string" required:"true"` 16779 16780 // Specifies the execution engine (cluster) that runs the notebook execution. 16781 // 16782 // ExecutionEngine is a required field 16783 ExecutionEngine *ExecutionEngineConfig `type:"structure" required:"true"` 16784 16785 // An optional name for the notebook execution. 16786 NotebookExecutionName *string `type:"string"` 16787 16788 // The unique identifier of the Amazon EC2 security group to associate with 16789 // the EMR Notebook for this notebook execution. 16790 NotebookInstanceSecurityGroupId *string `type:"string"` 16791 16792 // Input parameters in JSON format passed to the EMR Notebook at runtime for 16793 // execution. 16794 NotebookParams *string `type:"string"` 16795 16796 // The path and file name of the notebook file for this execution, relative 16797 // to the path specified for the EMR Notebook. For example, if you specify a 16798 // path of s3://MyBucket/MyNotebooks when you create an EMR Notebook for a notebook 16799 // with an ID of e-ABCDEFGHIJK1234567890ABCD (the EditorID of this request), 16800 // and you specify a RelativePath of my_notebook_executions/notebook_execution.ipynb, 16801 // the location of the file for the notebook execution is s3://MyBucket/MyNotebooks/e-ABCDEFGHIJK1234567890ABCD/my_notebook_executions/notebook_execution.ipynb. 16802 // 16803 // RelativePath is a required field 16804 RelativePath *string `type:"string" required:"true"` 16805 16806 // The name or ARN of the IAM role that is used as the service role for Amazon 16807 // EMR (the EMR role) for the notebook execution. 16808 // 16809 // ServiceRole is a required field 16810 ServiceRole *string `type:"string" required:"true"` 16811 16812 // A list of tags associated with a notebook execution. Tags are user-defined 16813 // key-value pairs that consist of a required key string with a maximum of 128 16814 // characters and an optional value string with a maximum of 256 characters. 16815 Tags []*Tag `type:"list"` 16816} 16817 16818// String returns the string representation. 16819// 16820// API parameter values that are decorated as "sensitive" in the API will not 16821// be included in the string output. The member name will be present, but the 16822// value will be replaced with "sensitive". 16823func (s StartNotebookExecutionInput) String() string { 16824 return awsutil.Prettify(s) 16825} 16826 16827// GoString returns the string representation. 16828// 16829// API parameter values that are decorated as "sensitive" in the API will not 16830// be included in the string output. The member name will be present, but the 16831// value will be replaced with "sensitive". 16832func (s StartNotebookExecutionInput) GoString() string { 16833 return s.String() 16834} 16835 16836// Validate inspects the fields of the type to determine if they are valid. 16837func (s *StartNotebookExecutionInput) Validate() error { 16838 invalidParams := request.ErrInvalidParams{Context: "StartNotebookExecutionInput"} 16839 if s.EditorId == nil { 16840 invalidParams.Add(request.NewErrParamRequired("EditorId")) 16841 } 16842 if s.ExecutionEngine == nil { 16843 invalidParams.Add(request.NewErrParamRequired("ExecutionEngine")) 16844 } 16845 if s.RelativePath == nil { 16846 invalidParams.Add(request.NewErrParamRequired("RelativePath")) 16847 } 16848 if s.ServiceRole == nil { 16849 invalidParams.Add(request.NewErrParamRequired("ServiceRole")) 16850 } 16851 if s.ExecutionEngine != nil { 16852 if err := s.ExecutionEngine.Validate(); err != nil { 16853 invalidParams.AddNested("ExecutionEngine", err.(request.ErrInvalidParams)) 16854 } 16855 } 16856 16857 if invalidParams.Len() > 0 { 16858 return invalidParams 16859 } 16860 return nil 16861} 16862 16863// SetEditorId sets the EditorId field's value. 16864func (s *StartNotebookExecutionInput) SetEditorId(v string) *StartNotebookExecutionInput { 16865 s.EditorId = &v 16866 return s 16867} 16868 16869// SetExecutionEngine sets the ExecutionEngine field's value. 16870func (s *StartNotebookExecutionInput) SetExecutionEngine(v *ExecutionEngineConfig) *StartNotebookExecutionInput { 16871 s.ExecutionEngine = v 16872 return s 16873} 16874 16875// SetNotebookExecutionName sets the NotebookExecutionName field's value. 16876func (s *StartNotebookExecutionInput) SetNotebookExecutionName(v string) *StartNotebookExecutionInput { 16877 s.NotebookExecutionName = &v 16878 return s 16879} 16880 16881// SetNotebookInstanceSecurityGroupId sets the NotebookInstanceSecurityGroupId field's value. 16882func (s *StartNotebookExecutionInput) SetNotebookInstanceSecurityGroupId(v string) *StartNotebookExecutionInput { 16883 s.NotebookInstanceSecurityGroupId = &v 16884 return s 16885} 16886 16887// SetNotebookParams sets the NotebookParams field's value. 16888func (s *StartNotebookExecutionInput) SetNotebookParams(v string) *StartNotebookExecutionInput { 16889 s.NotebookParams = &v 16890 return s 16891} 16892 16893// SetRelativePath sets the RelativePath field's value. 16894func (s *StartNotebookExecutionInput) SetRelativePath(v string) *StartNotebookExecutionInput { 16895 s.RelativePath = &v 16896 return s 16897} 16898 16899// SetServiceRole sets the ServiceRole field's value. 16900func (s *StartNotebookExecutionInput) SetServiceRole(v string) *StartNotebookExecutionInput { 16901 s.ServiceRole = &v 16902 return s 16903} 16904 16905// SetTags sets the Tags field's value. 16906func (s *StartNotebookExecutionInput) SetTags(v []*Tag) *StartNotebookExecutionInput { 16907 s.Tags = v 16908 return s 16909} 16910 16911type StartNotebookExecutionOutput struct { 16912 _ struct{} `type:"structure"` 16913 16914 // The unique identifier of the notebook execution. 16915 NotebookExecutionId *string `type:"string"` 16916} 16917 16918// String returns the string representation. 16919// 16920// API parameter values that are decorated as "sensitive" in the API will not 16921// be included in the string output. The member name will be present, but the 16922// value will be replaced with "sensitive". 16923func (s StartNotebookExecutionOutput) String() string { 16924 return awsutil.Prettify(s) 16925} 16926 16927// GoString returns the string representation. 16928// 16929// API parameter values that are decorated as "sensitive" in the API will not 16930// be included in the string output. The member name will be present, but the 16931// value will be replaced with "sensitive". 16932func (s StartNotebookExecutionOutput) GoString() string { 16933 return s.String() 16934} 16935 16936// SetNotebookExecutionId sets the NotebookExecutionId field's value. 16937func (s *StartNotebookExecutionOutput) SetNotebookExecutionId(v string) *StartNotebookExecutionOutput { 16938 s.NotebookExecutionId = &v 16939 return s 16940} 16941 16942// This represents a step in a cluster. 16943type Step struct { 16944 _ struct{} `type:"structure"` 16945 16946 // The action to take when the cluster step fails. Possible values are TERMINATE_CLUSTER, 16947 // CANCEL_AND_WAIT, and CONTINUE. TERMINATE_JOB_FLOW is provided for backward 16948 // compatibility. We recommend using TERMINATE_CLUSTER instead. 16949 // 16950 // If a cluster's StepConcurrencyLevel is greater than 1, do not use AddJobFlowSteps 16951 // to submit a step with this parameter set to CANCEL_AND_WAIT or TERMINATE_CLUSTER. 16952 // The step is not submitted and the action fails with a message that the ActionOnFailure 16953 // setting is not valid. 16954 // 16955 // If you change a cluster's StepConcurrencyLevel to be greater than 1 while 16956 // a step is running, the ActionOnFailure parameter may not behave as you expect. 16957 // In this case, for a step that fails with this parameter set to CANCEL_AND_WAIT, 16958 // pending steps and the running step are not canceled; for a step that fails 16959 // with this parameter set to TERMINATE_CLUSTER, the cluster does not terminate. 16960 ActionOnFailure *string `type:"string" enum:"ActionOnFailure"` 16961 16962 // The Hadoop job configuration of the cluster step. 16963 Config *HadoopStepConfig `type:"structure"` 16964 16965 // The identifier of the cluster step. 16966 Id *string `type:"string"` 16967 16968 // The name of the cluster step. 16969 Name *string `type:"string"` 16970 16971 // The current execution status details of the cluster step. 16972 Status *StepStatus `type:"structure"` 16973} 16974 16975// String returns the string representation. 16976// 16977// API parameter values that are decorated as "sensitive" in the API will not 16978// be included in the string output. The member name will be present, but the 16979// value will be replaced with "sensitive". 16980func (s Step) String() string { 16981 return awsutil.Prettify(s) 16982} 16983 16984// GoString returns the string representation. 16985// 16986// API parameter values that are decorated as "sensitive" in the API will not 16987// be included in the string output. The member name will be present, but the 16988// value will be replaced with "sensitive". 16989func (s Step) GoString() string { 16990 return s.String() 16991} 16992 16993// SetActionOnFailure sets the ActionOnFailure field's value. 16994func (s *Step) SetActionOnFailure(v string) *Step { 16995 s.ActionOnFailure = &v 16996 return s 16997} 16998 16999// SetConfig sets the Config field's value. 17000func (s *Step) SetConfig(v *HadoopStepConfig) *Step { 17001 s.Config = v 17002 return s 17003} 17004 17005// SetId sets the Id field's value. 17006func (s *Step) SetId(v string) *Step { 17007 s.Id = &v 17008 return s 17009} 17010 17011// SetName sets the Name field's value. 17012func (s *Step) SetName(v string) *Step { 17013 s.Name = &v 17014 return s 17015} 17016 17017// SetStatus sets the Status field's value. 17018func (s *Step) SetStatus(v *StepStatus) *Step { 17019 s.Status = v 17020 return s 17021} 17022 17023// Specification for a cluster (job flow) step. 17024type StepConfig struct { 17025 _ struct{} `type:"structure"` 17026 17027 // The action to take when the step fails. Use one of the following values: 17028 // 17029 // * TERMINATE_CLUSTER - Shuts down the cluster. 17030 // 17031 // * CANCEL_AND_WAIT - Cancels any pending steps and returns the cluster 17032 // to the WAITING state. 17033 // 17034 // * CONTINUE - Continues to the next step in the queue. 17035 // 17036 // * TERMINATE_JOB_FLOW - Shuts down the cluster. TERMINATE_JOB_FLOW is provided 17037 // for backward compatibility. We recommend using TERMINATE_CLUSTER instead. 17038 // 17039 // If a cluster's StepConcurrencyLevel is greater than 1, do not use AddJobFlowSteps 17040 // to submit a step with this parameter set to CANCEL_AND_WAIT or TERMINATE_CLUSTER. 17041 // The step is not submitted and the action fails with a message that the ActionOnFailure 17042 // setting is not valid. 17043 // 17044 // If you change a cluster's StepConcurrencyLevel to be greater than 1 while 17045 // a step is running, the ActionOnFailure parameter may not behave as you expect. 17046 // In this case, for a step that fails with this parameter set to CANCEL_AND_WAIT, 17047 // pending steps and the running step are not canceled; for a step that fails 17048 // with this parameter set to TERMINATE_CLUSTER, the cluster does not terminate. 17049 ActionOnFailure *string `type:"string" enum:"ActionOnFailure"` 17050 17051 // The JAR file used for the step. 17052 // 17053 // HadoopJarStep is a required field 17054 HadoopJarStep *HadoopJarStepConfig `type:"structure" required:"true"` 17055 17056 // The name of the step. 17057 // 17058 // Name is a required field 17059 Name *string `type:"string" required:"true"` 17060} 17061 17062// String returns the string representation. 17063// 17064// API parameter values that are decorated as "sensitive" in the API will not 17065// be included in the string output. The member name will be present, but the 17066// value will be replaced with "sensitive". 17067func (s StepConfig) String() string { 17068 return awsutil.Prettify(s) 17069} 17070 17071// GoString returns the string representation. 17072// 17073// API parameter values that are decorated as "sensitive" in the API will not 17074// be included in the string output. The member name will be present, but the 17075// value will be replaced with "sensitive". 17076func (s StepConfig) GoString() string { 17077 return s.String() 17078} 17079 17080// Validate inspects the fields of the type to determine if they are valid. 17081func (s *StepConfig) Validate() error { 17082 invalidParams := request.ErrInvalidParams{Context: "StepConfig"} 17083 if s.HadoopJarStep == nil { 17084 invalidParams.Add(request.NewErrParamRequired("HadoopJarStep")) 17085 } 17086 if s.Name == nil { 17087 invalidParams.Add(request.NewErrParamRequired("Name")) 17088 } 17089 if s.HadoopJarStep != nil { 17090 if err := s.HadoopJarStep.Validate(); err != nil { 17091 invalidParams.AddNested("HadoopJarStep", err.(request.ErrInvalidParams)) 17092 } 17093 } 17094 17095 if invalidParams.Len() > 0 { 17096 return invalidParams 17097 } 17098 return nil 17099} 17100 17101// SetActionOnFailure sets the ActionOnFailure field's value. 17102func (s *StepConfig) SetActionOnFailure(v string) *StepConfig { 17103 s.ActionOnFailure = &v 17104 return s 17105} 17106 17107// SetHadoopJarStep sets the HadoopJarStep field's value. 17108func (s *StepConfig) SetHadoopJarStep(v *HadoopJarStepConfig) *StepConfig { 17109 s.HadoopJarStep = v 17110 return s 17111} 17112 17113// SetName sets the Name field's value. 17114func (s *StepConfig) SetName(v string) *StepConfig { 17115 s.Name = &v 17116 return s 17117} 17118 17119// Combines the execution state and configuration of a step. 17120type StepDetail struct { 17121 _ struct{} `type:"structure"` 17122 17123 // The description of the step status. 17124 // 17125 // ExecutionStatusDetail is a required field 17126 ExecutionStatusDetail *StepExecutionStatusDetail `type:"structure" required:"true"` 17127 17128 // The step configuration. 17129 // 17130 // StepConfig is a required field 17131 StepConfig *StepConfig `type:"structure" required:"true"` 17132} 17133 17134// String returns the string representation. 17135// 17136// API parameter values that are decorated as "sensitive" in the API will not 17137// be included in the string output. The member name will be present, but the 17138// value will be replaced with "sensitive". 17139func (s StepDetail) String() string { 17140 return awsutil.Prettify(s) 17141} 17142 17143// GoString returns the string representation. 17144// 17145// API parameter values that are decorated as "sensitive" in the API will not 17146// be included in the string output. The member name will be present, but the 17147// value will be replaced with "sensitive". 17148func (s StepDetail) GoString() string { 17149 return s.String() 17150} 17151 17152// SetExecutionStatusDetail sets the ExecutionStatusDetail field's value. 17153func (s *StepDetail) SetExecutionStatusDetail(v *StepExecutionStatusDetail) *StepDetail { 17154 s.ExecutionStatusDetail = v 17155 return s 17156} 17157 17158// SetStepConfig sets the StepConfig field's value. 17159func (s *StepDetail) SetStepConfig(v *StepConfig) *StepDetail { 17160 s.StepConfig = v 17161 return s 17162} 17163 17164// The execution state of a step. 17165type StepExecutionStatusDetail struct { 17166 _ struct{} `type:"structure"` 17167 17168 // The creation date and time of the step. 17169 // 17170 // CreationDateTime is a required field 17171 CreationDateTime *time.Time `type:"timestamp" required:"true"` 17172 17173 // The completion date and time of the step. 17174 EndDateTime *time.Time `type:"timestamp"` 17175 17176 // A description of the step's current state. 17177 LastStateChangeReason *string `type:"string"` 17178 17179 // The start date and time of the step. 17180 StartDateTime *time.Time `type:"timestamp"` 17181 17182 // The state of the step. 17183 // 17184 // State is a required field 17185 State *string `type:"string" required:"true" enum:"StepExecutionState"` 17186} 17187 17188// String returns the string representation. 17189// 17190// API parameter values that are decorated as "sensitive" in the API will not 17191// be included in the string output. The member name will be present, but the 17192// value will be replaced with "sensitive". 17193func (s StepExecutionStatusDetail) String() string { 17194 return awsutil.Prettify(s) 17195} 17196 17197// GoString returns the string representation. 17198// 17199// API parameter values that are decorated as "sensitive" in the API will not 17200// be included in the string output. The member name will be present, but the 17201// value will be replaced with "sensitive". 17202func (s StepExecutionStatusDetail) GoString() string { 17203 return s.String() 17204} 17205 17206// SetCreationDateTime sets the CreationDateTime field's value. 17207func (s *StepExecutionStatusDetail) SetCreationDateTime(v time.Time) *StepExecutionStatusDetail { 17208 s.CreationDateTime = &v 17209 return s 17210} 17211 17212// SetEndDateTime sets the EndDateTime field's value. 17213func (s *StepExecutionStatusDetail) SetEndDateTime(v time.Time) *StepExecutionStatusDetail { 17214 s.EndDateTime = &v 17215 return s 17216} 17217 17218// SetLastStateChangeReason sets the LastStateChangeReason field's value. 17219func (s *StepExecutionStatusDetail) SetLastStateChangeReason(v string) *StepExecutionStatusDetail { 17220 s.LastStateChangeReason = &v 17221 return s 17222} 17223 17224// SetStartDateTime sets the StartDateTime field's value. 17225func (s *StepExecutionStatusDetail) SetStartDateTime(v time.Time) *StepExecutionStatusDetail { 17226 s.StartDateTime = &v 17227 return s 17228} 17229 17230// SetState sets the State field's value. 17231func (s *StepExecutionStatusDetail) SetState(v string) *StepExecutionStatusDetail { 17232 s.State = &v 17233 return s 17234} 17235 17236// The details of the step state change reason. 17237type StepStateChangeReason struct { 17238 _ struct{} `type:"structure"` 17239 17240 // The programmable code for the state change reason. Note: Currently, the service 17241 // provides no code for the state change. 17242 Code *string `type:"string" enum:"StepStateChangeReasonCode"` 17243 17244 // The descriptive message for the state change reason. 17245 Message *string `type:"string"` 17246} 17247 17248// String returns the string representation. 17249// 17250// API parameter values that are decorated as "sensitive" in the API will not 17251// be included in the string output. The member name will be present, but the 17252// value will be replaced with "sensitive". 17253func (s StepStateChangeReason) String() string { 17254 return awsutil.Prettify(s) 17255} 17256 17257// GoString returns the string representation. 17258// 17259// API parameter values that are decorated as "sensitive" in the API will not 17260// be included in the string output. The member name will be present, but the 17261// value will be replaced with "sensitive". 17262func (s StepStateChangeReason) GoString() string { 17263 return s.String() 17264} 17265 17266// SetCode sets the Code field's value. 17267func (s *StepStateChangeReason) SetCode(v string) *StepStateChangeReason { 17268 s.Code = &v 17269 return s 17270} 17271 17272// SetMessage sets the Message field's value. 17273func (s *StepStateChangeReason) SetMessage(v string) *StepStateChangeReason { 17274 s.Message = &v 17275 return s 17276} 17277 17278// The execution status details of the cluster step. 17279type StepStatus struct { 17280 _ struct{} `type:"structure"` 17281 17282 // The details for the step failure including reason, message, and log file 17283 // path where the root cause was identified. 17284 FailureDetails *FailureDetails `type:"structure"` 17285 17286 // The execution state of the cluster step. 17287 State *string `type:"string" enum:"StepState"` 17288 17289 // The reason for the step execution status change. 17290 StateChangeReason *StepStateChangeReason `type:"structure"` 17291 17292 // The timeline of the cluster step status over time. 17293 Timeline *StepTimeline `type:"structure"` 17294} 17295 17296// String returns the string representation. 17297// 17298// API parameter values that are decorated as "sensitive" in the API will not 17299// be included in the string output. The member name will be present, but the 17300// value will be replaced with "sensitive". 17301func (s StepStatus) String() string { 17302 return awsutil.Prettify(s) 17303} 17304 17305// GoString returns the string representation. 17306// 17307// API parameter values that are decorated as "sensitive" in the API will not 17308// be included in the string output. The member name will be present, but the 17309// value will be replaced with "sensitive". 17310func (s StepStatus) GoString() string { 17311 return s.String() 17312} 17313 17314// SetFailureDetails sets the FailureDetails field's value. 17315func (s *StepStatus) SetFailureDetails(v *FailureDetails) *StepStatus { 17316 s.FailureDetails = v 17317 return s 17318} 17319 17320// SetState sets the State field's value. 17321func (s *StepStatus) SetState(v string) *StepStatus { 17322 s.State = &v 17323 return s 17324} 17325 17326// SetStateChangeReason sets the StateChangeReason field's value. 17327func (s *StepStatus) SetStateChangeReason(v *StepStateChangeReason) *StepStatus { 17328 s.StateChangeReason = v 17329 return s 17330} 17331 17332// SetTimeline sets the Timeline field's value. 17333func (s *StepStatus) SetTimeline(v *StepTimeline) *StepStatus { 17334 s.Timeline = v 17335 return s 17336} 17337 17338// The summary of the cluster step. 17339type StepSummary struct { 17340 _ struct{} `type:"structure"` 17341 17342 // The action to take when the cluster step fails. Possible values are TERMINATE_CLUSTER, 17343 // CANCEL_AND_WAIT, and CONTINUE. TERMINATE_JOB_FLOW is available for backward 17344 // compatibility. 17345 ActionOnFailure *string `type:"string" enum:"ActionOnFailure"` 17346 17347 // The Hadoop job configuration of the cluster step. 17348 Config *HadoopStepConfig `type:"structure"` 17349 17350 // The identifier of the cluster step. 17351 Id *string `type:"string"` 17352 17353 // The name of the cluster step. 17354 Name *string `type:"string"` 17355 17356 // The current execution status details of the cluster step. 17357 Status *StepStatus `type:"structure"` 17358} 17359 17360// String returns the string representation. 17361// 17362// API parameter values that are decorated as "sensitive" in the API will not 17363// be included in the string output. The member name will be present, but the 17364// value will be replaced with "sensitive". 17365func (s StepSummary) String() string { 17366 return awsutil.Prettify(s) 17367} 17368 17369// GoString returns the string representation. 17370// 17371// API parameter values that are decorated as "sensitive" in the API will not 17372// be included in the string output. The member name will be present, but the 17373// value will be replaced with "sensitive". 17374func (s StepSummary) GoString() string { 17375 return s.String() 17376} 17377 17378// SetActionOnFailure sets the ActionOnFailure field's value. 17379func (s *StepSummary) SetActionOnFailure(v string) *StepSummary { 17380 s.ActionOnFailure = &v 17381 return s 17382} 17383 17384// SetConfig sets the Config field's value. 17385func (s *StepSummary) SetConfig(v *HadoopStepConfig) *StepSummary { 17386 s.Config = v 17387 return s 17388} 17389 17390// SetId sets the Id field's value. 17391func (s *StepSummary) SetId(v string) *StepSummary { 17392 s.Id = &v 17393 return s 17394} 17395 17396// SetName sets the Name field's value. 17397func (s *StepSummary) SetName(v string) *StepSummary { 17398 s.Name = &v 17399 return s 17400} 17401 17402// SetStatus sets the Status field's value. 17403func (s *StepSummary) SetStatus(v *StepStatus) *StepSummary { 17404 s.Status = v 17405 return s 17406} 17407 17408// The timeline of the cluster step lifecycle. 17409type StepTimeline struct { 17410 _ struct{} `type:"structure"` 17411 17412 // The date and time when the cluster step was created. 17413 CreationDateTime *time.Time `type:"timestamp"` 17414 17415 // The date and time when the cluster step execution completed or failed. 17416 EndDateTime *time.Time `type:"timestamp"` 17417 17418 // The date and time when the cluster step execution started. 17419 StartDateTime *time.Time `type:"timestamp"` 17420} 17421 17422// String returns the string representation. 17423// 17424// API parameter values that are decorated as "sensitive" in the API will not 17425// be included in the string output. The member name will be present, but the 17426// value will be replaced with "sensitive". 17427func (s StepTimeline) String() string { 17428 return awsutil.Prettify(s) 17429} 17430 17431// GoString returns the string representation. 17432// 17433// API parameter values that are decorated as "sensitive" in the API will not 17434// be included in the string output. The member name will be present, but the 17435// value will be replaced with "sensitive". 17436func (s StepTimeline) GoString() string { 17437 return s.String() 17438} 17439 17440// SetCreationDateTime sets the CreationDateTime field's value. 17441func (s *StepTimeline) SetCreationDateTime(v time.Time) *StepTimeline { 17442 s.CreationDateTime = &v 17443 return s 17444} 17445 17446// SetEndDateTime sets the EndDateTime field's value. 17447func (s *StepTimeline) SetEndDateTime(v time.Time) *StepTimeline { 17448 s.EndDateTime = &v 17449 return s 17450} 17451 17452// SetStartDateTime sets the StartDateTime field's value. 17453func (s *StepTimeline) SetStartDateTime(v time.Time) *StepTimeline { 17454 s.StartDateTime = &v 17455 return s 17456} 17457 17458type StopNotebookExecutionInput struct { 17459 _ struct{} `type:"structure"` 17460 17461 // The unique identifier of the notebook execution. 17462 // 17463 // NotebookExecutionId is a required field 17464 NotebookExecutionId *string `type:"string" required:"true"` 17465} 17466 17467// String returns the string representation. 17468// 17469// API parameter values that are decorated as "sensitive" in the API will not 17470// be included in the string output. The member name will be present, but the 17471// value will be replaced with "sensitive". 17472func (s StopNotebookExecutionInput) String() string { 17473 return awsutil.Prettify(s) 17474} 17475 17476// GoString returns the string representation. 17477// 17478// API parameter values that are decorated as "sensitive" in the API will not 17479// be included in the string output. The member name will be present, but the 17480// value will be replaced with "sensitive". 17481func (s StopNotebookExecutionInput) GoString() string { 17482 return s.String() 17483} 17484 17485// Validate inspects the fields of the type to determine if they are valid. 17486func (s *StopNotebookExecutionInput) Validate() error { 17487 invalidParams := request.ErrInvalidParams{Context: "StopNotebookExecutionInput"} 17488 if s.NotebookExecutionId == nil { 17489 invalidParams.Add(request.NewErrParamRequired("NotebookExecutionId")) 17490 } 17491 17492 if invalidParams.Len() > 0 { 17493 return invalidParams 17494 } 17495 return nil 17496} 17497 17498// SetNotebookExecutionId sets the NotebookExecutionId field's value. 17499func (s *StopNotebookExecutionInput) SetNotebookExecutionId(v string) *StopNotebookExecutionInput { 17500 s.NotebookExecutionId = &v 17501 return s 17502} 17503 17504type StopNotebookExecutionOutput struct { 17505 _ struct{} `type:"structure"` 17506} 17507 17508// String returns the string representation. 17509// 17510// API parameter values that are decorated as "sensitive" in the API will not 17511// be included in the string output. The member name will be present, but the 17512// value will be replaced with "sensitive". 17513func (s StopNotebookExecutionOutput) String() string { 17514 return awsutil.Prettify(s) 17515} 17516 17517// GoString returns the string representation. 17518// 17519// API parameter values that are decorated as "sensitive" in the API will not 17520// be included in the string output. The member name will be present, but the 17521// value will be replaced with "sensitive". 17522func (s StopNotebookExecutionOutput) GoString() string { 17523 return s.String() 17524} 17525 17526// Details for an Amazon EMR Studio including ID, creation time, name, and so 17527// on. 17528type Studio struct { 17529 _ struct{} `type:"structure"` 17530 17531 // Specifies whether the Amazon EMR Studio authenticates users using IAM or 17532 // Amazon Web Services SSO. 17533 AuthMode *string `type:"string" enum:"AuthMode"` 17534 17535 // The time the Amazon EMR Studio was created. 17536 CreationTime *time.Time `type:"timestamp"` 17537 17538 // The Amazon S3 location to back up Amazon EMR Studio Workspaces and notebook 17539 // files. 17540 DefaultS3Location *string `type:"string"` 17541 17542 // The detailed description of the Amazon EMR Studio. 17543 Description *string `type:"string"` 17544 17545 // The ID of the Engine security group associated with the Amazon EMR Studio. 17546 // The Engine security group allows inbound network traffic from resources in 17547 // the Workspace security group. 17548 EngineSecurityGroupId *string `type:"string"` 17549 17550 // Your identity provider's authentication endpoint. Amazon EMR Studio redirects 17551 // federated users to this endpoint for authentication when logging in to a 17552 // Studio with the Studio URL. 17553 IdpAuthUrl *string `type:"string"` 17554 17555 // The name of your identity provider's RelayState parameter. 17556 IdpRelayStateParameterName *string `type:"string"` 17557 17558 // The name of the Amazon EMR Studio. 17559 Name *string `type:"string"` 17560 17561 // The name of the IAM role assumed by the Amazon EMR Studio. 17562 ServiceRole *string `type:"string"` 17563 17564 // The Amazon Resource Name (ARN) of the Amazon EMR Studio. 17565 StudioArn *string `type:"string"` 17566 17567 // The ID of the Amazon EMR Studio. 17568 StudioId *string `type:"string"` 17569 17570 // The list of IDs of the subnets associated with the Amazon EMR Studio. 17571 SubnetIds []*string `type:"list"` 17572 17573 // A list of tags associated with the Amazon EMR Studio. 17574 Tags []*Tag `type:"list"` 17575 17576 // The unique access URL of the Amazon EMR Studio. 17577 Url *string `type:"string"` 17578 17579 // The name of the IAM role assumed by users logged in to the Amazon EMR Studio. 17580 // A Studio only requires a UserRole when you use IAM authentication. 17581 UserRole *string `type:"string"` 17582 17583 // The ID of the VPC associated with the Amazon EMR Studio. 17584 VpcId *string `type:"string"` 17585 17586 // The ID of the Workspace security group associated with the Amazon EMR Studio. 17587 // The Workspace security group allows outbound network traffic to resources 17588 // in the Engine security group and to the internet. 17589 WorkspaceSecurityGroupId *string `type:"string"` 17590} 17591 17592// String returns the string representation. 17593// 17594// API parameter values that are decorated as "sensitive" in the API will not 17595// be included in the string output. The member name will be present, but the 17596// value will be replaced with "sensitive". 17597func (s Studio) String() string { 17598 return awsutil.Prettify(s) 17599} 17600 17601// GoString returns the string representation. 17602// 17603// API parameter values that are decorated as "sensitive" in the API will not 17604// be included in the string output. The member name will be present, but the 17605// value will be replaced with "sensitive". 17606func (s Studio) GoString() string { 17607 return s.String() 17608} 17609 17610// SetAuthMode sets the AuthMode field's value. 17611func (s *Studio) SetAuthMode(v string) *Studio { 17612 s.AuthMode = &v 17613 return s 17614} 17615 17616// SetCreationTime sets the CreationTime field's value. 17617func (s *Studio) SetCreationTime(v time.Time) *Studio { 17618 s.CreationTime = &v 17619 return s 17620} 17621 17622// SetDefaultS3Location sets the DefaultS3Location field's value. 17623func (s *Studio) SetDefaultS3Location(v string) *Studio { 17624 s.DefaultS3Location = &v 17625 return s 17626} 17627 17628// SetDescription sets the Description field's value. 17629func (s *Studio) SetDescription(v string) *Studio { 17630 s.Description = &v 17631 return s 17632} 17633 17634// SetEngineSecurityGroupId sets the EngineSecurityGroupId field's value. 17635func (s *Studio) SetEngineSecurityGroupId(v string) *Studio { 17636 s.EngineSecurityGroupId = &v 17637 return s 17638} 17639 17640// SetIdpAuthUrl sets the IdpAuthUrl field's value. 17641func (s *Studio) SetIdpAuthUrl(v string) *Studio { 17642 s.IdpAuthUrl = &v 17643 return s 17644} 17645 17646// SetIdpRelayStateParameterName sets the IdpRelayStateParameterName field's value. 17647func (s *Studio) SetIdpRelayStateParameterName(v string) *Studio { 17648 s.IdpRelayStateParameterName = &v 17649 return s 17650} 17651 17652// SetName sets the Name field's value. 17653func (s *Studio) SetName(v string) *Studio { 17654 s.Name = &v 17655 return s 17656} 17657 17658// SetServiceRole sets the ServiceRole field's value. 17659func (s *Studio) SetServiceRole(v string) *Studio { 17660 s.ServiceRole = &v 17661 return s 17662} 17663 17664// SetStudioArn sets the StudioArn field's value. 17665func (s *Studio) SetStudioArn(v string) *Studio { 17666 s.StudioArn = &v 17667 return s 17668} 17669 17670// SetStudioId sets the StudioId field's value. 17671func (s *Studio) SetStudioId(v string) *Studio { 17672 s.StudioId = &v 17673 return s 17674} 17675 17676// SetSubnetIds sets the SubnetIds field's value. 17677func (s *Studio) SetSubnetIds(v []*string) *Studio { 17678 s.SubnetIds = v 17679 return s 17680} 17681 17682// SetTags sets the Tags field's value. 17683func (s *Studio) SetTags(v []*Tag) *Studio { 17684 s.Tags = v 17685 return s 17686} 17687 17688// SetUrl sets the Url field's value. 17689func (s *Studio) SetUrl(v string) *Studio { 17690 s.Url = &v 17691 return s 17692} 17693 17694// SetUserRole sets the UserRole field's value. 17695func (s *Studio) SetUserRole(v string) *Studio { 17696 s.UserRole = &v 17697 return s 17698} 17699 17700// SetVpcId sets the VpcId field's value. 17701func (s *Studio) SetVpcId(v string) *Studio { 17702 s.VpcId = &v 17703 return s 17704} 17705 17706// SetWorkspaceSecurityGroupId sets the WorkspaceSecurityGroupId field's value. 17707func (s *Studio) SetWorkspaceSecurityGroupId(v string) *Studio { 17708 s.WorkspaceSecurityGroupId = &v 17709 return s 17710} 17711 17712// Details for an Amazon EMR Studio, including ID, Name, VPC, and Description. 17713// The details do not include subnets, IAM roles, security groups, or tags associated 17714// with the Studio. 17715type StudioSummary struct { 17716 _ struct{} `type:"structure"` 17717 17718 // Specifies whether the Studio authenticates users using IAM or Amazon Web 17719 // Services SSO. 17720 AuthMode *string `type:"string" enum:"AuthMode"` 17721 17722 // The time when the Amazon EMR Studio was created. 17723 CreationTime *time.Time `type:"timestamp"` 17724 17725 // The detailed description of the Amazon EMR Studio. 17726 Description *string `type:"string"` 17727 17728 // The name of the Amazon EMR Studio. 17729 Name *string `type:"string"` 17730 17731 // The ID of the Amazon EMR Studio. 17732 StudioId *string `type:"string"` 17733 17734 // The unique access URL of the Amazon EMR Studio. 17735 Url *string `type:"string"` 17736 17737 // The ID of the Virtual Private Cloud (Amazon VPC) associated with the Amazon 17738 // EMR Studio. 17739 VpcId *string `type:"string"` 17740} 17741 17742// String returns the string representation. 17743// 17744// API parameter values that are decorated as "sensitive" in the API will not 17745// be included in the string output. The member name will be present, but the 17746// value will be replaced with "sensitive". 17747func (s StudioSummary) String() string { 17748 return awsutil.Prettify(s) 17749} 17750 17751// GoString returns the string representation. 17752// 17753// API parameter values that are decorated as "sensitive" in the API will not 17754// be included in the string output. The member name will be present, but the 17755// value will be replaced with "sensitive". 17756func (s StudioSummary) GoString() string { 17757 return s.String() 17758} 17759 17760// SetAuthMode sets the AuthMode field's value. 17761func (s *StudioSummary) SetAuthMode(v string) *StudioSummary { 17762 s.AuthMode = &v 17763 return s 17764} 17765 17766// SetCreationTime sets the CreationTime field's value. 17767func (s *StudioSummary) SetCreationTime(v time.Time) *StudioSummary { 17768 s.CreationTime = &v 17769 return s 17770} 17771 17772// SetDescription sets the Description field's value. 17773func (s *StudioSummary) SetDescription(v string) *StudioSummary { 17774 s.Description = &v 17775 return s 17776} 17777 17778// SetName sets the Name field's value. 17779func (s *StudioSummary) SetName(v string) *StudioSummary { 17780 s.Name = &v 17781 return s 17782} 17783 17784// SetStudioId sets the StudioId field's value. 17785func (s *StudioSummary) SetStudioId(v string) *StudioSummary { 17786 s.StudioId = &v 17787 return s 17788} 17789 17790// SetUrl sets the Url field's value. 17791func (s *StudioSummary) SetUrl(v string) *StudioSummary { 17792 s.Url = &v 17793 return s 17794} 17795 17796// SetVpcId sets the VpcId field's value. 17797func (s *StudioSummary) SetVpcId(v string) *StudioSummary { 17798 s.VpcId = &v 17799 return s 17800} 17801 17802// The list of supported product configurations that allow user-supplied arguments. 17803// EMR accepts these arguments and forwards them to the corresponding installation 17804// script as bootstrap action arguments. 17805type SupportedProductConfig struct { 17806 _ struct{} `type:"structure"` 17807 17808 // The list of user-supplied arguments. 17809 Args []*string `type:"list"` 17810 17811 // The name of the product configuration. 17812 Name *string `type:"string"` 17813} 17814 17815// String returns the string representation. 17816// 17817// API parameter values that are decorated as "sensitive" in the API will not 17818// be included in the string output. The member name will be present, but the 17819// value will be replaced with "sensitive". 17820func (s SupportedProductConfig) String() string { 17821 return awsutil.Prettify(s) 17822} 17823 17824// GoString returns the string representation. 17825// 17826// API parameter values that are decorated as "sensitive" in the API will not 17827// be included in the string output. The member name will be present, but the 17828// value will be replaced with "sensitive". 17829func (s SupportedProductConfig) GoString() string { 17830 return s.String() 17831} 17832 17833// SetArgs sets the Args field's value. 17834func (s *SupportedProductConfig) SetArgs(v []*string) *SupportedProductConfig { 17835 s.Args = v 17836 return s 17837} 17838 17839// SetName sets the Name field's value. 17840func (s *SupportedProductConfig) SetName(v string) *SupportedProductConfig { 17841 s.Name = &v 17842 return s 17843} 17844 17845// A key-value pair containing user-defined metadata that you can associate 17846// with an Amazon EMR resource. Tags make it easier to associate clusters in 17847// various ways, such as grouping clusters to track your Amazon EMR resource 17848// allocation costs. For more information, see Tag Clusters (https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-plan-tags.html). 17849type Tag struct { 17850 _ struct{} `type:"structure"` 17851 17852 // A user-defined key, which is the minimum required information for a valid 17853 // tag. For more information, see Tag (https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-plan-tags.html). 17854 Key *string `type:"string"` 17855 17856 // A user-defined value, which is optional in a tag. For more information, see 17857 // Tag Clusters (https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-plan-tags.html). 17858 Value *string `type:"string"` 17859} 17860 17861// String returns the string representation. 17862// 17863// API parameter values that are decorated as "sensitive" in the API will not 17864// be included in the string output. The member name will be present, but the 17865// value will be replaced with "sensitive". 17866func (s Tag) String() string { 17867 return awsutil.Prettify(s) 17868} 17869 17870// GoString returns the string representation. 17871// 17872// API parameter values that are decorated as "sensitive" in the API will not 17873// be included in the string output. The member name will be present, but the 17874// value will be replaced with "sensitive". 17875func (s Tag) GoString() string { 17876 return s.String() 17877} 17878 17879// SetKey sets the Key field's value. 17880func (s *Tag) SetKey(v string) *Tag { 17881 s.Key = &v 17882 return s 17883} 17884 17885// SetValue sets the Value field's value. 17886func (s *Tag) SetValue(v string) *Tag { 17887 s.Value = &v 17888 return s 17889} 17890 17891// Input to the TerminateJobFlows operation. 17892type TerminateJobFlowsInput struct { 17893 _ struct{} `type:"structure"` 17894 17895 // A list of job flows to be shut down. 17896 // 17897 // JobFlowIds is a required field 17898 JobFlowIds []*string `type:"list" required:"true"` 17899} 17900 17901// String returns the string representation. 17902// 17903// API parameter values that are decorated as "sensitive" in the API will not 17904// be included in the string output. The member name will be present, but the 17905// value will be replaced with "sensitive". 17906func (s TerminateJobFlowsInput) String() string { 17907 return awsutil.Prettify(s) 17908} 17909 17910// GoString returns the string representation. 17911// 17912// API parameter values that are decorated as "sensitive" in the API will not 17913// be included in the string output. The member name will be present, but the 17914// value will be replaced with "sensitive". 17915func (s TerminateJobFlowsInput) GoString() string { 17916 return s.String() 17917} 17918 17919// Validate inspects the fields of the type to determine if they are valid. 17920func (s *TerminateJobFlowsInput) Validate() error { 17921 invalidParams := request.ErrInvalidParams{Context: "TerminateJobFlowsInput"} 17922 if s.JobFlowIds == nil { 17923 invalidParams.Add(request.NewErrParamRequired("JobFlowIds")) 17924 } 17925 17926 if invalidParams.Len() > 0 { 17927 return invalidParams 17928 } 17929 return nil 17930} 17931 17932// SetJobFlowIds sets the JobFlowIds field's value. 17933func (s *TerminateJobFlowsInput) SetJobFlowIds(v []*string) *TerminateJobFlowsInput { 17934 s.JobFlowIds = v 17935 return s 17936} 17937 17938type TerminateJobFlowsOutput struct { 17939 _ struct{} `type:"structure"` 17940} 17941 17942// String returns the string representation. 17943// 17944// API parameter values that are decorated as "sensitive" in the API will not 17945// be included in the string output. The member name will be present, but the 17946// value will be replaced with "sensitive". 17947func (s TerminateJobFlowsOutput) String() string { 17948 return awsutil.Prettify(s) 17949} 17950 17951// GoString returns the string representation. 17952// 17953// API parameter values that are decorated as "sensitive" in the API will not 17954// be included in the string output. The member name will be present, but the 17955// value will be replaced with "sensitive". 17956func (s TerminateJobFlowsOutput) GoString() string { 17957 return s.String() 17958} 17959 17960type UpdateStudioInput struct { 17961 _ struct{} `type:"structure"` 17962 17963 // The Amazon S3 location to back up Workspaces and notebook files for the Amazon 17964 // EMR Studio. 17965 DefaultS3Location *string `type:"string"` 17966 17967 // A detailed description to assign to the Amazon EMR Studio. 17968 Description *string `type:"string"` 17969 17970 // A descriptive name for the Amazon EMR Studio. 17971 Name *string `type:"string"` 17972 17973 // The ID of the Amazon EMR Studio to update. 17974 // 17975 // StudioId is a required field 17976 StudioId *string `type:"string" required:"true"` 17977 17978 // A list of subnet IDs to associate with the Amazon EMR Studio. The list can 17979 // include new subnet IDs, but must also include all of the subnet IDs previously 17980 // associated with the Studio. The list order does not matter. A Studio can 17981 // have a maximum of 5 subnets. The subnets must belong to the same VPC as the 17982 // Studio. 17983 SubnetIds []*string `type:"list"` 17984} 17985 17986// String returns the string representation. 17987// 17988// API parameter values that are decorated as "sensitive" in the API will not 17989// be included in the string output. The member name will be present, but the 17990// value will be replaced with "sensitive". 17991func (s UpdateStudioInput) String() string { 17992 return awsutil.Prettify(s) 17993} 17994 17995// GoString returns the string representation. 17996// 17997// API parameter values that are decorated as "sensitive" in the API will not 17998// be included in the string output. The member name will be present, but the 17999// value will be replaced with "sensitive". 18000func (s UpdateStudioInput) GoString() string { 18001 return s.String() 18002} 18003 18004// Validate inspects the fields of the type to determine if they are valid. 18005func (s *UpdateStudioInput) Validate() error { 18006 invalidParams := request.ErrInvalidParams{Context: "UpdateStudioInput"} 18007 if s.StudioId == nil { 18008 invalidParams.Add(request.NewErrParamRequired("StudioId")) 18009 } 18010 18011 if invalidParams.Len() > 0 { 18012 return invalidParams 18013 } 18014 return nil 18015} 18016 18017// SetDefaultS3Location sets the DefaultS3Location field's value. 18018func (s *UpdateStudioInput) SetDefaultS3Location(v string) *UpdateStudioInput { 18019 s.DefaultS3Location = &v 18020 return s 18021} 18022 18023// SetDescription sets the Description field's value. 18024func (s *UpdateStudioInput) SetDescription(v string) *UpdateStudioInput { 18025 s.Description = &v 18026 return s 18027} 18028 18029// SetName sets the Name field's value. 18030func (s *UpdateStudioInput) SetName(v string) *UpdateStudioInput { 18031 s.Name = &v 18032 return s 18033} 18034 18035// SetStudioId sets the StudioId field's value. 18036func (s *UpdateStudioInput) SetStudioId(v string) *UpdateStudioInput { 18037 s.StudioId = &v 18038 return s 18039} 18040 18041// SetSubnetIds sets the SubnetIds field's value. 18042func (s *UpdateStudioInput) SetSubnetIds(v []*string) *UpdateStudioInput { 18043 s.SubnetIds = v 18044 return s 18045} 18046 18047type UpdateStudioOutput struct { 18048 _ struct{} `type:"structure"` 18049} 18050 18051// String returns the string representation. 18052// 18053// API parameter values that are decorated as "sensitive" in the API will not 18054// be included in the string output. The member name will be present, but the 18055// value will be replaced with "sensitive". 18056func (s UpdateStudioOutput) String() string { 18057 return awsutil.Prettify(s) 18058} 18059 18060// GoString returns the string representation. 18061// 18062// API parameter values that are decorated as "sensitive" in the API will not 18063// be included in the string output. The member name will be present, but the 18064// value will be replaced with "sensitive". 18065func (s UpdateStudioOutput) GoString() string { 18066 return s.String() 18067} 18068 18069type UpdateStudioSessionMappingInput struct { 18070 _ struct{} `type:"structure"` 18071 18072 // The globally unique identifier (GUID) of the user or group. For more information, 18073 // see UserId (https://docs.aws.amazon.com/singlesignon/latest/IdentityStoreAPIReference/API_User.html#singlesignon-Type-User-UserId) 18074 // and GroupId (https://docs.aws.amazon.com/singlesignon/latest/IdentityStoreAPIReference/API_Group.html#singlesignon-Type-Group-GroupId) 18075 // in the Amazon Web Services SSO Identity Store API Reference. Either IdentityName 18076 // or IdentityId must be specified. 18077 IdentityId *string `type:"string"` 18078 18079 // The name of the user or group to update. For more information, see UserName 18080 // (https://docs.aws.amazon.com/singlesignon/latest/IdentityStoreAPIReference/API_User.html#singlesignon-Type-User-UserName) 18081 // and DisplayName (https://docs.aws.amazon.com/singlesignon/latest/IdentityStoreAPIReference/API_Group.html#singlesignon-Type-Group-DisplayName) 18082 // in the Amazon Web Services SSO Identity Store API Reference. Either IdentityName 18083 // or IdentityId must be specified. 18084 IdentityName *string `type:"string"` 18085 18086 // Specifies whether the identity to update is a user or a group. 18087 // 18088 // IdentityType is a required field 18089 IdentityType *string `type:"string" required:"true" enum:"IdentityType"` 18090 18091 // The Amazon Resource Name (ARN) of the session policy to associate with the 18092 // specified user or group. 18093 // 18094 // SessionPolicyArn is a required field 18095 SessionPolicyArn *string `type:"string" required:"true"` 18096 18097 // The ID of the Amazon EMR Studio. 18098 // 18099 // StudioId is a required field 18100 StudioId *string `type:"string" required:"true"` 18101} 18102 18103// String returns the string representation. 18104// 18105// API parameter values that are decorated as "sensitive" in the API will not 18106// be included in the string output. The member name will be present, but the 18107// value will be replaced with "sensitive". 18108func (s UpdateStudioSessionMappingInput) String() string { 18109 return awsutil.Prettify(s) 18110} 18111 18112// GoString returns the string representation. 18113// 18114// API parameter values that are decorated as "sensitive" in the API will not 18115// be included in the string output. The member name will be present, but the 18116// value will be replaced with "sensitive". 18117func (s UpdateStudioSessionMappingInput) GoString() string { 18118 return s.String() 18119} 18120 18121// Validate inspects the fields of the type to determine if they are valid. 18122func (s *UpdateStudioSessionMappingInput) Validate() error { 18123 invalidParams := request.ErrInvalidParams{Context: "UpdateStudioSessionMappingInput"} 18124 if s.IdentityType == nil { 18125 invalidParams.Add(request.NewErrParamRequired("IdentityType")) 18126 } 18127 if s.SessionPolicyArn == nil { 18128 invalidParams.Add(request.NewErrParamRequired("SessionPolicyArn")) 18129 } 18130 if s.StudioId == nil { 18131 invalidParams.Add(request.NewErrParamRequired("StudioId")) 18132 } 18133 18134 if invalidParams.Len() > 0 { 18135 return invalidParams 18136 } 18137 return nil 18138} 18139 18140// SetIdentityId sets the IdentityId field's value. 18141func (s *UpdateStudioSessionMappingInput) SetIdentityId(v string) *UpdateStudioSessionMappingInput { 18142 s.IdentityId = &v 18143 return s 18144} 18145 18146// SetIdentityName sets the IdentityName field's value. 18147func (s *UpdateStudioSessionMappingInput) SetIdentityName(v string) *UpdateStudioSessionMappingInput { 18148 s.IdentityName = &v 18149 return s 18150} 18151 18152// SetIdentityType sets the IdentityType field's value. 18153func (s *UpdateStudioSessionMappingInput) SetIdentityType(v string) *UpdateStudioSessionMappingInput { 18154 s.IdentityType = &v 18155 return s 18156} 18157 18158// SetSessionPolicyArn sets the SessionPolicyArn field's value. 18159func (s *UpdateStudioSessionMappingInput) SetSessionPolicyArn(v string) *UpdateStudioSessionMappingInput { 18160 s.SessionPolicyArn = &v 18161 return s 18162} 18163 18164// SetStudioId sets the StudioId field's value. 18165func (s *UpdateStudioSessionMappingInput) SetStudioId(v string) *UpdateStudioSessionMappingInput { 18166 s.StudioId = &v 18167 return s 18168} 18169 18170type UpdateStudioSessionMappingOutput struct { 18171 _ struct{} `type:"structure"` 18172} 18173 18174// String returns the string representation. 18175// 18176// API parameter values that are decorated as "sensitive" in the API will not 18177// be included in the string output. The member name will be present, but the 18178// value will be replaced with "sensitive". 18179func (s UpdateStudioSessionMappingOutput) String() string { 18180 return awsutil.Prettify(s) 18181} 18182 18183// GoString returns the string representation. 18184// 18185// API parameter values that are decorated as "sensitive" in the API will not 18186// be included in the string output. The member name will be present, but the 18187// value will be replaced with "sensitive". 18188func (s UpdateStudioSessionMappingOutput) GoString() string { 18189 return s.String() 18190} 18191 18192// EBS volume specifications such as volume type, IOPS, and size (GiB) that 18193// will be requested for the EBS volume attached to an EC2 instance in the cluster. 18194type VolumeSpecification struct { 18195 _ struct{} `type:"structure"` 18196 18197 // The number of I/O operations per second (IOPS) that the volume supports. 18198 Iops *int64 `type:"integer"` 18199 18200 // The volume size, in gibibytes (GiB). This can be a number from 1 - 1024. 18201 // If the volume type is EBS-optimized, the minimum value is 10. 18202 // 18203 // SizeInGB is a required field 18204 SizeInGB *int64 `type:"integer" required:"true"` 18205 18206 // The volume type. Volume types supported are gp2, io1, standard. 18207 // 18208 // VolumeType is a required field 18209 VolumeType *string `type:"string" required:"true"` 18210} 18211 18212// String returns the string representation. 18213// 18214// API parameter values that are decorated as "sensitive" in the API will not 18215// be included in the string output. The member name will be present, but the 18216// value will be replaced with "sensitive". 18217func (s VolumeSpecification) String() string { 18218 return awsutil.Prettify(s) 18219} 18220 18221// GoString returns the string representation. 18222// 18223// API parameter values that are decorated as "sensitive" in the API will not 18224// be included in the string output. The member name will be present, but the 18225// value will be replaced with "sensitive". 18226func (s VolumeSpecification) GoString() string { 18227 return s.String() 18228} 18229 18230// Validate inspects the fields of the type to determine if they are valid. 18231func (s *VolumeSpecification) Validate() error { 18232 invalidParams := request.ErrInvalidParams{Context: "VolumeSpecification"} 18233 if s.SizeInGB == nil { 18234 invalidParams.Add(request.NewErrParamRequired("SizeInGB")) 18235 } 18236 if s.VolumeType == nil { 18237 invalidParams.Add(request.NewErrParamRequired("VolumeType")) 18238 } 18239 18240 if invalidParams.Len() > 0 { 18241 return invalidParams 18242 } 18243 return nil 18244} 18245 18246// SetIops sets the Iops field's value. 18247func (s *VolumeSpecification) SetIops(v int64) *VolumeSpecification { 18248 s.Iops = &v 18249 return s 18250} 18251 18252// SetSizeInGB sets the SizeInGB field's value. 18253func (s *VolumeSpecification) SetSizeInGB(v int64) *VolumeSpecification { 18254 s.SizeInGB = &v 18255 return s 18256} 18257 18258// SetVolumeType sets the VolumeType field's value. 18259func (s *VolumeSpecification) SetVolumeType(v string) *VolumeSpecification { 18260 s.VolumeType = &v 18261 return s 18262} 18263 18264const ( 18265 // ActionOnFailureTerminateJobFlow is a ActionOnFailure enum value 18266 ActionOnFailureTerminateJobFlow = "TERMINATE_JOB_FLOW" 18267 18268 // ActionOnFailureTerminateCluster is a ActionOnFailure enum value 18269 ActionOnFailureTerminateCluster = "TERMINATE_CLUSTER" 18270 18271 // ActionOnFailureCancelAndWait is a ActionOnFailure enum value 18272 ActionOnFailureCancelAndWait = "CANCEL_AND_WAIT" 18273 18274 // ActionOnFailureContinue is a ActionOnFailure enum value 18275 ActionOnFailureContinue = "CONTINUE" 18276) 18277 18278// ActionOnFailure_Values returns all elements of the ActionOnFailure enum 18279func ActionOnFailure_Values() []string { 18280 return []string{ 18281 ActionOnFailureTerminateJobFlow, 18282 ActionOnFailureTerminateCluster, 18283 ActionOnFailureCancelAndWait, 18284 ActionOnFailureContinue, 18285 } 18286} 18287 18288const ( 18289 // AdjustmentTypeChangeInCapacity is a AdjustmentType enum value 18290 AdjustmentTypeChangeInCapacity = "CHANGE_IN_CAPACITY" 18291 18292 // AdjustmentTypePercentChangeInCapacity is a AdjustmentType enum value 18293 AdjustmentTypePercentChangeInCapacity = "PERCENT_CHANGE_IN_CAPACITY" 18294 18295 // AdjustmentTypeExactCapacity is a AdjustmentType enum value 18296 AdjustmentTypeExactCapacity = "EXACT_CAPACITY" 18297) 18298 18299// AdjustmentType_Values returns all elements of the AdjustmentType enum 18300func AdjustmentType_Values() []string { 18301 return []string{ 18302 AdjustmentTypeChangeInCapacity, 18303 AdjustmentTypePercentChangeInCapacity, 18304 AdjustmentTypeExactCapacity, 18305 } 18306} 18307 18308const ( 18309 // AuthModeSso is a AuthMode enum value 18310 AuthModeSso = "SSO" 18311 18312 // AuthModeIam is a AuthMode enum value 18313 AuthModeIam = "IAM" 18314) 18315 18316// AuthMode_Values returns all elements of the AuthMode enum 18317func AuthMode_Values() []string { 18318 return []string{ 18319 AuthModeSso, 18320 AuthModeIam, 18321 } 18322} 18323 18324const ( 18325 // AutoScalingPolicyStatePending is a AutoScalingPolicyState enum value 18326 AutoScalingPolicyStatePending = "PENDING" 18327 18328 // AutoScalingPolicyStateAttaching is a AutoScalingPolicyState enum value 18329 AutoScalingPolicyStateAttaching = "ATTACHING" 18330 18331 // AutoScalingPolicyStateAttached is a AutoScalingPolicyState enum value 18332 AutoScalingPolicyStateAttached = "ATTACHED" 18333 18334 // AutoScalingPolicyStateDetaching is a AutoScalingPolicyState enum value 18335 AutoScalingPolicyStateDetaching = "DETACHING" 18336 18337 // AutoScalingPolicyStateDetached is a AutoScalingPolicyState enum value 18338 AutoScalingPolicyStateDetached = "DETACHED" 18339 18340 // AutoScalingPolicyStateFailed is a AutoScalingPolicyState enum value 18341 AutoScalingPolicyStateFailed = "FAILED" 18342) 18343 18344// AutoScalingPolicyState_Values returns all elements of the AutoScalingPolicyState enum 18345func AutoScalingPolicyState_Values() []string { 18346 return []string{ 18347 AutoScalingPolicyStatePending, 18348 AutoScalingPolicyStateAttaching, 18349 AutoScalingPolicyStateAttached, 18350 AutoScalingPolicyStateDetaching, 18351 AutoScalingPolicyStateDetached, 18352 AutoScalingPolicyStateFailed, 18353 } 18354} 18355 18356const ( 18357 // AutoScalingPolicyStateChangeReasonCodeUserRequest is a AutoScalingPolicyStateChangeReasonCode enum value 18358 AutoScalingPolicyStateChangeReasonCodeUserRequest = "USER_REQUEST" 18359 18360 // AutoScalingPolicyStateChangeReasonCodeProvisionFailure is a AutoScalingPolicyStateChangeReasonCode enum value 18361 AutoScalingPolicyStateChangeReasonCodeProvisionFailure = "PROVISION_FAILURE" 18362 18363 // AutoScalingPolicyStateChangeReasonCodeCleanupFailure is a AutoScalingPolicyStateChangeReasonCode enum value 18364 AutoScalingPolicyStateChangeReasonCodeCleanupFailure = "CLEANUP_FAILURE" 18365) 18366 18367// AutoScalingPolicyStateChangeReasonCode_Values returns all elements of the AutoScalingPolicyStateChangeReasonCode enum 18368func AutoScalingPolicyStateChangeReasonCode_Values() []string { 18369 return []string{ 18370 AutoScalingPolicyStateChangeReasonCodeUserRequest, 18371 AutoScalingPolicyStateChangeReasonCodeProvisionFailure, 18372 AutoScalingPolicyStateChangeReasonCodeCleanupFailure, 18373 } 18374} 18375 18376const ( 18377 // CancelStepsRequestStatusSubmitted is a CancelStepsRequestStatus enum value 18378 CancelStepsRequestStatusSubmitted = "SUBMITTED" 18379 18380 // CancelStepsRequestStatusFailed is a CancelStepsRequestStatus enum value 18381 CancelStepsRequestStatusFailed = "FAILED" 18382) 18383 18384// CancelStepsRequestStatus_Values returns all elements of the CancelStepsRequestStatus enum 18385func CancelStepsRequestStatus_Values() []string { 18386 return []string{ 18387 CancelStepsRequestStatusSubmitted, 18388 CancelStepsRequestStatusFailed, 18389 } 18390} 18391 18392const ( 18393 // ClusterStateStarting is a ClusterState enum value 18394 ClusterStateStarting = "STARTING" 18395 18396 // ClusterStateBootstrapping is a ClusterState enum value 18397 ClusterStateBootstrapping = "BOOTSTRAPPING" 18398 18399 // ClusterStateRunning is a ClusterState enum value 18400 ClusterStateRunning = "RUNNING" 18401 18402 // ClusterStateWaiting is a ClusterState enum value 18403 ClusterStateWaiting = "WAITING" 18404 18405 // ClusterStateTerminating is a ClusterState enum value 18406 ClusterStateTerminating = "TERMINATING" 18407 18408 // ClusterStateTerminated is a ClusterState enum value 18409 ClusterStateTerminated = "TERMINATED" 18410 18411 // ClusterStateTerminatedWithErrors is a ClusterState enum value 18412 ClusterStateTerminatedWithErrors = "TERMINATED_WITH_ERRORS" 18413) 18414 18415// ClusterState_Values returns all elements of the ClusterState enum 18416func ClusterState_Values() []string { 18417 return []string{ 18418 ClusterStateStarting, 18419 ClusterStateBootstrapping, 18420 ClusterStateRunning, 18421 ClusterStateWaiting, 18422 ClusterStateTerminating, 18423 ClusterStateTerminated, 18424 ClusterStateTerminatedWithErrors, 18425 } 18426} 18427 18428const ( 18429 // ClusterStateChangeReasonCodeInternalError is a ClusterStateChangeReasonCode enum value 18430 ClusterStateChangeReasonCodeInternalError = "INTERNAL_ERROR" 18431 18432 // ClusterStateChangeReasonCodeValidationError is a ClusterStateChangeReasonCode enum value 18433 ClusterStateChangeReasonCodeValidationError = "VALIDATION_ERROR" 18434 18435 // ClusterStateChangeReasonCodeInstanceFailure is a ClusterStateChangeReasonCode enum value 18436 ClusterStateChangeReasonCodeInstanceFailure = "INSTANCE_FAILURE" 18437 18438 // ClusterStateChangeReasonCodeInstanceFleetTimeout is a ClusterStateChangeReasonCode enum value 18439 ClusterStateChangeReasonCodeInstanceFleetTimeout = "INSTANCE_FLEET_TIMEOUT" 18440 18441 // ClusterStateChangeReasonCodeBootstrapFailure is a ClusterStateChangeReasonCode enum value 18442 ClusterStateChangeReasonCodeBootstrapFailure = "BOOTSTRAP_FAILURE" 18443 18444 // ClusterStateChangeReasonCodeUserRequest is a ClusterStateChangeReasonCode enum value 18445 ClusterStateChangeReasonCodeUserRequest = "USER_REQUEST" 18446 18447 // ClusterStateChangeReasonCodeStepFailure is a ClusterStateChangeReasonCode enum value 18448 ClusterStateChangeReasonCodeStepFailure = "STEP_FAILURE" 18449 18450 // ClusterStateChangeReasonCodeAllStepsCompleted is a ClusterStateChangeReasonCode enum value 18451 ClusterStateChangeReasonCodeAllStepsCompleted = "ALL_STEPS_COMPLETED" 18452) 18453 18454// ClusterStateChangeReasonCode_Values returns all elements of the ClusterStateChangeReasonCode enum 18455func ClusterStateChangeReasonCode_Values() []string { 18456 return []string{ 18457 ClusterStateChangeReasonCodeInternalError, 18458 ClusterStateChangeReasonCodeValidationError, 18459 ClusterStateChangeReasonCodeInstanceFailure, 18460 ClusterStateChangeReasonCodeInstanceFleetTimeout, 18461 ClusterStateChangeReasonCodeBootstrapFailure, 18462 ClusterStateChangeReasonCodeUserRequest, 18463 ClusterStateChangeReasonCodeStepFailure, 18464 ClusterStateChangeReasonCodeAllStepsCompleted, 18465 } 18466} 18467 18468const ( 18469 // ComparisonOperatorGreaterThanOrEqual is a ComparisonOperator enum value 18470 ComparisonOperatorGreaterThanOrEqual = "GREATER_THAN_OR_EQUAL" 18471 18472 // ComparisonOperatorGreaterThan is a ComparisonOperator enum value 18473 ComparisonOperatorGreaterThan = "GREATER_THAN" 18474 18475 // ComparisonOperatorLessThan is a ComparisonOperator enum value 18476 ComparisonOperatorLessThan = "LESS_THAN" 18477 18478 // ComparisonOperatorLessThanOrEqual is a ComparisonOperator enum value 18479 ComparisonOperatorLessThanOrEqual = "LESS_THAN_OR_EQUAL" 18480) 18481 18482// ComparisonOperator_Values returns all elements of the ComparisonOperator enum 18483func ComparisonOperator_Values() []string { 18484 return []string{ 18485 ComparisonOperatorGreaterThanOrEqual, 18486 ComparisonOperatorGreaterThan, 18487 ComparisonOperatorLessThan, 18488 ComparisonOperatorLessThanOrEqual, 18489 } 18490} 18491 18492const ( 18493 // ComputeLimitsUnitTypeInstanceFleetUnits is a ComputeLimitsUnitType enum value 18494 ComputeLimitsUnitTypeInstanceFleetUnits = "InstanceFleetUnits" 18495 18496 // ComputeLimitsUnitTypeInstances is a ComputeLimitsUnitType enum value 18497 ComputeLimitsUnitTypeInstances = "Instances" 18498 18499 // ComputeLimitsUnitTypeVcpu is a ComputeLimitsUnitType enum value 18500 ComputeLimitsUnitTypeVcpu = "VCPU" 18501) 18502 18503// ComputeLimitsUnitType_Values returns all elements of the ComputeLimitsUnitType enum 18504func ComputeLimitsUnitType_Values() []string { 18505 return []string{ 18506 ComputeLimitsUnitTypeInstanceFleetUnits, 18507 ComputeLimitsUnitTypeInstances, 18508 ComputeLimitsUnitTypeVcpu, 18509 } 18510} 18511 18512const ( 18513 // ExecutionEngineTypeEmr is a ExecutionEngineType enum value 18514 ExecutionEngineTypeEmr = "EMR" 18515) 18516 18517// ExecutionEngineType_Values returns all elements of the ExecutionEngineType enum 18518func ExecutionEngineType_Values() []string { 18519 return []string{ 18520 ExecutionEngineTypeEmr, 18521 } 18522} 18523 18524const ( 18525 // IdentityTypeUser is a IdentityType enum value 18526 IdentityTypeUser = "USER" 18527 18528 // IdentityTypeGroup is a IdentityType enum value 18529 IdentityTypeGroup = "GROUP" 18530) 18531 18532// IdentityType_Values returns all elements of the IdentityType enum 18533func IdentityType_Values() []string { 18534 return []string{ 18535 IdentityTypeUser, 18536 IdentityTypeGroup, 18537 } 18538} 18539 18540const ( 18541 // InstanceCollectionTypeInstanceFleet is a InstanceCollectionType enum value 18542 InstanceCollectionTypeInstanceFleet = "INSTANCE_FLEET" 18543 18544 // InstanceCollectionTypeInstanceGroup is a InstanceCollectionType enum value 18545 InstanceCollectionTypeInstanceGroup = "INSTANCE_GROUP" 18546) 18547 18548// InstanceCollectionType_Values returns all elements of the InstanceCollectionType enum 18549func InstanceCollectionType_Values() []string { 18550 return []string{ 18551 InstanceCollectionTypeInstanceFleet, 18552 InstanceCollectionTypeInstanceGroup, 18553 } 18554} 18555 18556const ( 18557 // InstanceFleetStateProvisioning is a InstanceFleetState enum value 18558 InstanceFleetStateProvisioning = "PROVISIONING" 18559 18560 // InstanceFleetStateBootstrapping is a InstanceFleetState enum value 18561 InstanceFleetStateBootstrapping = "BOOTSTRAPPING" 18562 18563 // InstanceFleetStateRunning is a InstanceFleetState enum value 18564 InstanceFleetStateRunning = "RUNNING" 18565 18566 // InstanceFleetStateResizing is a InstanceFleetState enum value 18567 InstanceFleetStateResizing = "RESIZING" 18568 18569 // InstanceFleetStateSuspended is a InstanceFleetState enum value 18570 InstanceFleetStateSuspended = "SUSPENDED" 18571 18572 // InstanceFleetStateTerminating is a InstanceFleetState enum value 18573 InstanceFleetStateTerminating = "TERMINATING" 18574 18575 // InstanceFleetStateTerminated is a InstanceFleetState enum value 18576 InstanceFleetStateTerminated = "TERMINATED" 18577) 18578 18579// InstanceFleetState_Values returns all elements of the InstanceFleetState enum 18580func InstanceFleetState_Values() []string { 18581 return []string{ 18582 InstanceFleetStateProvisioning, 18583 InstanceFleetStateBootstrapping, 18584 InstanceFleetStateRunning, 18585 InstanceFleetStateResizing, 18586 InstanceFleetStateSuspended, 18587 InstanceFleetStateTerminating, 18588 InstanceFleetStateTerminated, 18589 } 18590} 18591 18592const ( 18593 // InstanceFleetStateChangeReasonCodeInternalError is a InstanceFleetStateChangeReasonCode enum value 18594 InstanceFleetStateChangeReasonCodeInternalError = "INTERNAL_ERROR" 18595 18596 // InstanceFleetStateChangeReasonCodeValidationError is a InstanceFleetStateChangeReasonCode enum value 18597 InstanceFleetStateChangeReasonCodeValidationError = "VALIDATION_ERROR" 18598 18599 // InstanceFleetStateChangeReasonCodeInstanceFailure is a InstanceFleetStateChangeReasonCode enum value 18600 InstanceFleetStateChangeReasonCodeInstanceFailure = "INSTANCE_FAILURE" 18601 18602 // InstanceFleetStateChangeReasonCodeClusterTerminated is a InstanceFleetStateChangeReasonCode enum value 18603 InstanceFleetStateChangeReasonCodeClusterTerminated = "CLUSTER_TERMINATED" 18604) 18605 18606// InstanceFleetStateChangeReasonCode_Values returns all elements of the InstanceFleetStateChangeReasonCode enum 18607func InstanceFleetStateChangeReasonCode_Values() []string { 18608 return []string{ 18609 InstanceFleetStateChangeReasonCodeInternalError, 18610 InstanceFleetStateChangeReasonCodeValidationError, 18611 InstanceFleetStateChangeReasonCodeInstanceFailure, 18612 InstanceFleetStateChangeReasonCodeClusterTerminated, 18613 } 18614} 18615 18616const ( 18617 // InstanceFleetTypeMaster is a InstanceFleetType enum value 18618 InstanceFleetTypeMaster = "MASTER" 18619 18620 // InstanceFleetTypeCore is a InstanceFleetType enum value 18621 InstanceFleetTypeCore = "CORE" 18622 18623 // InstanceFleetTypeTask is a InstanceFleetType enum value 18624 InstanceFleetTypeTask = "TASK" 18625) 18626 18627// InstanceFleetType_Values returns all elements of the InstanceFleetType enum 18628func InstanceFleetType_Values() []string { 18629 return []string{ 18630 InstanceFleetTypeMaster, 18631 InstanceFleetTypeCore, 18632 InstanceFleetTypeTask, 18633 } 18634} 18635 18636const ( 18637 // InstanceGroupStateProvisioning is a InstanceGroupState enum value 18638 InstanceGroupStateProvisioning = "PROVISIONING" 18639 18640 // InstanceGroupStateBootstrapping is a InstanceGroupState enum value 18641 InstanceGroupStateBootstrapping = "BOOTSTRAPPING" 18642 18643 // InstanceGroupStateRunning is a InstanceGroupState enum value 18644 InstanceGroupStateRunning = "RUNNING" 18645 18646 // InstanceGroupStateReconfiguring is a InstanceGroupState enum value 18647 InstanceGroupStateReconfiguring = "RECONFIGURING" 18648 18649 // InstanceGroupStateResizing is a InstanceGroupState enum value 18650 InstanceGroupStateResizing = "RESIZING" 18651 18652 // InstanceGroupStateSuspended is a InstanceGroupState enum value 18653 InstanceGroupStateSuspended = "SUSPENDED" 18654 18655 // InstanceGroupStateTerminating is a InstanceGroupState enum value 18656 InstanceGroupStateTerminating = "TERMINATING" 18657 18658 // InstanceGroupStateTerminated is a InstanceGroupState enum value 18659 InstanceGroupStateTerminated = "TERMINATED" 18660 18661 // InstanceGroupStateArrested is a InstanceGroupState enum value 18662 InstanceGroupStateArrested = "ARRESTED" 18663 18664 // InstanceGroupStateShuttingDown is a InstanceGroupState enum value 18665 InstanceGroupStateShuttingDown = "SHUTTING_DOWN" 18666 18667 // InstanceGroupStateEnded is a InstanceGroupState enum value 18668 InstanceGroupStateEnded = "ENDED" 18669) 18670 18671// InstanceGroupState_Values returns all elements of the InstanceGroupState enum 18672func InstanceGroupState_Values() []string { 18673 return []string{ 18674 InstanceGroupStateProvisioning, 18675 InstanceGroupStateBootstrapping, 18676 InstanceGroupStateRunning, 18677 InstanceGroupStateReconfiguring, 18678 InstanceGroupStateResizing, 18679 InstanceGroupStateSuspended, 18680 InstanceGroupStateTerminating, 18681 InstanceGroupStateTerminated, 18682 InstanceGroupStateArrested, 18683 InstanceGroupStateShuttingDown, 18684 InstanceGroupStateEnded, 18685 } 18686} 18687 18688const ( 18689 // InstanceGroupStateChangeReasonCodeInternalError is a InstanceGroupStateChangeReasonCode enum value 18690 InstanceGroupStateChangeReasonCodeInternalError = "INTERNAL_ERROR" 18691 18692 // InstanceGroupStateChangeReasonCodeValidationError is a InstanceGroupStateChangeReasonCode enum value 18693 InstanceGroupStateChangeReasonCodeValidationError = "VALIDATION_ERROR" 18694 18695 // InstanceGroupStateChangeReasonCodeInstanceFailure is a InstanceGroupStateChangeReasonCode enum value 18696 InstanceGroupStateChangeReasonCodeInstanceFailure = "INSTANCE_FAILURE" 18697 18698 // InstanceGroupStateChangeReasonCodeClusterTerminated is a InstanceGroupStateChangeReasonCode enum value 18699 InstanceGroupStateChangeReasonCodeClusterTerminated = "CLUSTER_TERMINATED" 18700) 18701 18702// InstanceGroupStateChangeReasonCode_Values returns all elements of the InstanceGroupStateChangeReasonCode enum 18703func InstanceGroupStateChangeReasonCode_Values() []string { 18704 return []string{ 18705 InstanceGroupStateChangeReasonCodeInternalError, 18706 InstanceGroupStateChangeReasonCodeValidationError, 18707 InstanceGroupStateChangeReasonCodeInstanceFailure, 18708 InstanceGroupStateChangeReasonCodeClusterTerminated, 18709 } 18710} 18711 18712const ( 18713 // InstanceGroupTypeMaster is a InstanceGroupType enum value 18714 InstanceGroupTypeMaster = "MASTER" 18715 18716 // InstanceGroupTypeCore is a InstanceGroupType enum value 18717 InstanceGroupTypeCore = "CORE" 18718 18719 // InstanceGroupTypeTask is a InstanceGroupType enum value 18720 InstanceGroupTypeTask = "TASK" 18721) 18722 18723// InstanceGroupType_Values returns all elements of the InstanceGroupType enum 18724func InstanceGroupType_Values() []string { 18725 return []string{ 18726 InstanceGroupTypeMaster, 18727 InstanceGroupTypeCore, 18728 InstanceGroupTypeTask, 18729 } 18730} 18731 18732const ( 18733 // InstanceRoleTypeMaster is a InstanceRoleType enum value 18734 InstanceRoleTypeMaster = "MASTER" 18735 18736 // InstanceRoleTypeCore is a InstanceRoleType enum value 18737 InstanceRoleTypeCore = "CORE" 18738 18739 // InstanceRoleTypeTask is a InstanceRoleType enum value 18740 InstanceRoleTypeTask = "TASK" 18741) 18742 18743// InstanceRoleType_Values returns all elements of the InstanceRoleType enum 18744func InstanceRoleType_Values() []string { 18745 return []string{ 18746 InstanceRoleTypeMaster, 18747 InstanceRoleTypeCore, 18748 InstanceRoleTypeTask, 18749 } 18750} 18751 18752const ( 18753 // InstanceStateAwaitingFulfillment is a InstanceState enum value 18754 InstanceStateAwaitingFulfillment = "AWAITING_FULFILLMENT" 18755 18756 // InstanceStateProvisioning is a InstanceState enum value 18757 InstanceStateProvisioning = "PROVISIONING" 18758 18759 // InstanceStateBootstrapping is a InstanceState enum value 18760 InstanceStateBootstrapping = "BOOTSTRAPPING" 18761 18762 // InstanceStateRunning is a InstanceState enum value 18763 InstanceStateRunning = "RUNNING" 18764 18765 // InstanceStateTerminated is a InstanceState enum value 18766 InstanceStateTerminated = "TERMINATED" 18767) 18768 18769// InstanceState_Values returns all elements of the InstanceState enum 18770func InstanceState_Values() []string { 18771 return []string{ 18772 InstanceStateAwaitingFulfillment, 18773 InstanceStateProvisioning, 18774 InstanceStateBootstrapping, 18775 InstanceStateRunning, 18776 InstanceStateTerminated, 18777 } 18778} 18779 18780const ( 18781 // InstanceStateChangeReasonCodeInternalError is a InstanceStateChangeReasonCode enum value 18782 InstanceStateChangeReasonCodeInternalError = "INTERNAL_ERROR" 18783 18784 // InstanceStateChangeReasonCodeValidationError is a InstanceStateChangeReasonCode enum value 18785 InstanceStateChangeReasonCodeValidationError = "VALIDATION_ERROR" 18786 18787 // InstanceStateChangeReasonCodeInstanceFailure is a InstanceStateChangeReasonCode enum value 18788 InstanceStateChangeReasonCodeInstanceFailure = "INSTANCE_FAILURE" 18789 18790 // InstanceStateChangeReasonCodeBootstrapFailure is a InstanceStateChangeReasonCode enum value 18791 InstanceStateChangeReasonCodeBootstrapFailure = "BOOTSTRAP_FAILURE" 18792 18793 // InstanceStateChangeReasonCodeClusterTerminated is a InstanceStateChangeReasonCode enum value 18794 InstanceStateChangeReasonCodeClusterTerminated = "CLUSTER_TERMINATED" 18795) 18796 18797// InstanceStateChangeReasonCode_Values returns all elements of the InstanceStateChangeReasonCode enum 18798func InstanceStateChangeReasonCode_Values() []string { 18799 return []string{ 18800 InstanceStateChangeReasonCodeInternalError, 18801 InstanceStateChangeReasonCodeValidationError, 18802 InstanceStateChangeReasonCodeInstanceFailure, 18803 InstanceStateChangeReasonCodeBootstrapFailure, 18804 InstanceStateChangeReasonCodeClusterTerminated, 18805 } 18806} 18807 18808// The type of instance. 18809const ( 18810 // JobFlowExecutionStateStarting is a JobFlowExecutionState enum value 18811 JobFlowExecutionStateStarting = "STARTING" 18812 18813 // JobFlowExecutionStateBootstrapping is a JobFlowExecutionState enum value 18814 JobFlowExecutionStateBootstrapping = "BOOTSTRAPPING" 18815 18816 // JobFlowExecutionStateRunning is a JobFlowExecutionState enum value 18817 JobFlowExecutionStateRunning = "RUNNING" 18818 18819 // JobFlowExecutionStateWaiting is a JobFlowExecutionState enum value 18820 JobFlowExecutionStateWaiting = "WAITING" 18821 18822 // JobFlowExecutionStateShuttingDown is a JobFlowExecutionState enum value 18823 JobFlowExecutionStateShuttingDown = "SHUTTING_DOWN" 18824 18825 // JobFlowExecutionStateTerminated is a JobFlowExecutionState enum value 18826 JobFlowExecutionStateTerminated = "TERMINATED" 18827 18828 // JobFlowExecutionStateCompleted is a JobFlowExecutionState enum value 18829 JobFlowExecutionStateCompleted = "COMPLETED" 18830 18831 // JobFlowExecutionStateFailed is a JobFlowExecutionState enum value 18832 JobFlowExecutionStateFailed = "FAILED" 18833) 18834 18835// JobFlowExecutionState_Values returns all elements of the JobFlowExecutionState enum 18836func JobFlowExecutionState_Values() []string { 18837 return []string{ 18838 JobFlowExecutionStateStarting, 18839 JobFlowExecutionStateBootstrapping, 18840 JobFlowExecutionStateRunning, 18841 JobFlowExecutionStateWaiting, 18842 JobFlowExecutionStateShuttingDown, 18843 JobFlowExecutionStateTerminated, 18844 JobFlowExecutionStateCompleted, 18845 JobFlowExecutionStateFailed, 18846 } 18847} 18848 18849const ( 18850 // MarketTypeOnDemand is a MarketType enum value 18851 MarketTypeOnDemand = "ON_DEMAND" 18852 18853 // MarketTypeSpot is a MarketType enum value 18854 MarketTypeSpot = "SPOT" 18855) 18856 18857// MarketType_Values returns all elements of the MarketType enum 18858func MarketType_Values() []string { 18859 return []string{ 18860 MarketTypeOnDemand, 18861 MarketTypeSpot, 18862 } 18863} 18864 18865const ( 18866 // NotebookExecutionStatusStartPending is a NotebookExecutionStatus enum value 18867 NotebookExecutionStatusStartPending = "START_PENDING" 18868 18869 // NotebookExecutionStatusStarting is a NotebookExecutionStatus enum value 18870 NotebookExecutionStatusStarting = "STARTING" 18871 18872 // NotebookExecutionStatusRunning is a NotebookExecutionStatus enum value 18873 NotebookExecutionStatusRunning = "RUNNING" 18874 18875 // NotebookExecutionStatusFinishing is a NotebookExecutionStatus enum value 18876 NotebookExecutionStatusFinishing = "FINISHING" 18877 18878 // NotebookExecutionStatusFinished is a NotebookExecutionStatus enum value 18879 NotebookExecutionStatusFinished = "FINISHED" 18880 18881 // NotebookExecutionStatusFailing is a NotebookExecutionStatus enum value 18882 NotebookExecutionStatusFailing = "FAILING" 18883 18884 // NotebookExecutionStatusFailed is a NotebookExecutionStatus enum value 18885 NotebookExecutionStatusFailed = "FAILED" 18886 18887 // NotebookExecutionStatusStopPending is a NotebookExecutionStatus enum value 18888 NotebookExecutionStatusStopPending = "STOP_PENDING" 18889 18890 // NotebookExecutionStatusStopping is a NotebookExecutionStatus enum value 18891 NotebookExecutionStatusStopping = "STOPPING" 18892 18893 // NotebookExecutionStatusStopped is a NotebookExecutionStatus enum value 18894 NotebookExecutionStatusStopped = "STOPPED" 18895) 18896 18897// NotebookExecutionStatus_Values returns all elements of the NotebookExecutionStatus enum 18898func NotebookExecutionStatus_Values() []string { 18899 return []string{ 18900 NotebookExecutionStatusStartPending, 18901 NotebookExecutionStatusStarting, 18902 NotebookExecutionStatusRunning, 18903 NotebookExecutionStatusFinishing, 18904 NotebookExecutionStatusFinished, 18905 NotebookExecutionStatusFailing, 18906 NotebookExecutionStatusFailed, 18907 NotebookExecutionStatusStopPending, 18908 NotebookExecutionStatusStopping, 18909 NotebookExecutionStatusStopped, 18910 } 18911} 18912 18913const ( 18914 // OnDemandCapacityReservationPreferenceOpen is a OnDemandCapacityReservationPreference enum value 18915 OnDemandCapacityReservationPreferenceOpen = "open" 18916 18917 // OnDemandCapacityReservationPreferenceNone is a OnDemandCapacityReservationPreference enum value 18918 OnDemandCapacityReservationPreferenceNone = "none" 18919) 18920 18921// OnDemandCapacityReservationPreference_Values returns all elements of the OnDemandCapacityReservationPreference enum 18922func OnDemandCapacityReservationPreference_Values() []string { 18923 return []string{ 18924 OnDemandCapacityReservationPreferenceOpen, 18925 OnDemandCapacityReservationPreferenceNone, 18926 } 18927} 18928 18929const ( 18930 // OnDemandCapacityReservationUsageStrategyUseCapacityReservationsFirst is a OnDemandCapacityReservationUsageStrategy enum value 18931 OnDemandCapacityReservationUsageStrategyUseCapacityReservationsFirst = "use-capacity-reservations-first" 18932) 18933 18934// OnDemandCapacityReservationUsageStrategy_Values returns all elements of the OnDemandCapacityReservationUsageStrategy enum 18935func OnDemandCapacityReservationUsageStrategy_Values() []string { 18936 return []string{ 18937 OnDemandCapacityReservationUsageStrategyUseCapacityReservationsFirst, 18938 } 18939} 18940 18941const ( 18942 // OnDemandProvisioningAllocationStrategyLowestPrice is a OnDemandProvisioningAllocationStrategy enum value 18943 OnDemandProvisioningAllocationStrategyLowestPrice = "lowest-price" 18944) 18945 18946// OnDemandProvisioningAllocationStrategy_Values returns all elements of the OnDemandProvisioningAllocationStrategy enum 18947func OnDemandProvisioningAllocationStrategy_Values() []string { 18948 return []string{ 18949 OnDemandProvisioningAllocationStrategyLowestPrice, 18950 } 18951} 18952 18953const ( 18954 // PlacementGroupStrategySpread is a PlacementGroupStrategy enum value 18955 PlacementGroupStrategySpread = "SPREAD" 18956 18957 // PlacementGroupStrategyPartition is a PlacementGroupStrategy enum value 18958 PlacementGroupStrategyPartition = "PARTITION" 18959 18960 // PlacementGroupStrategyCluster is a PlacementGroupStrategy enum value 18961 PlacementGroupStrategyCluster = "CLUSTER" 18962 18963 // PlacementGroupStrategyNone is a PlacementGroupStrategy enum value 18964 PlacementGroupStrategyNone = "NONE" 18965) 18966 18967// PlacementGroupStrategy_Values returns all elements of the PlacementGroupStrategy enum 18968func PlacementGroupStrategy_Values() []string { 18969 return []string{ 18970 PlacementGroupStrategySpread, 18971 PlacementGroupStrategyPartition, 18972 PlacementGroupStrategyCluster, 18973 PlacementGroupStrategyNone, 18974 } 18975} 18976 18977const ( 18978 // RepoUpgradeOnBootSecurity is a RepoUpgradeOnBoot enum value 18979 RepoUpgradeOnBootSecurity = "SECURITY" 18980 18981 // RepoUpgradeOnBootNone is a RepoUpgradeOnBoot enum value 18982 RepoUpgradeOnBootNone = "NONE" 18983) 18984 18985// RepoUpgradeOnBoot_Values returns all elements of the RepoUpgradeOnBoot enum 18986func RepoUpgradeOnBoot_Values() []string { 18987 return []string{ 18988 RepoUpgradeOnBootSecurity, 18989 RepoUpgradeOnBootNone, 18990 } 18991} 18992 18993const ( 18994 // ScaleDownBehaviorTerminateAtInstanceHour is a ScaleDownBehavior enum value 18995 ScaleDownBehaviorTerminateAtInstanceHour = "TERMINATE_AT_INSTANCE_HOUR" 18996 18997 // ScaleDownBehaviorTerminateAtTaskCompletion is a ScaleDownBehavior enum value 18998 ScaleDownBehaviorTerminateAtTaskCompletion = "TERMINATE_AT_TASK_COMPLETION" 18999) 19000 19001// ScaleDownBehavior_Values returns all elements of the ScaleDownBehavior enum 19002func ScaleDownBehavior_Values() []string { 19003 return []string{ 19004 ScaleDownBehaviorTerminateAtInstanceHour, 19005 ScaleDownBehaviorTerminateAtTaskCompletion, 19006 } 19007} 19008 19009const ( 19010 // SpotProvisioningAllocationStrategyCapacityOptimized is a SpotProvisioningAllocationStrategy enum value 19011 SpotProvisioningAllocationStrategyCapacityOptimized = "capacity-optimized" 19012) 19013 19014// SpotProvisioningAllocationStrategy_Values returns all elements of the SpotProvisioningAllocationStrategy enum 19015func SpotProvisioningAllocationStrategy_Values() []string { 19016 return []string{ 19017 SpotProvisioningAllocationStrategyCapacityOptimized, 19018 } 19019} 19020 19021const ( 19022 // SpotProvisioningTimeoutActionSwitchToOnDemand is a SpotProvisioningTimeoutAction enum value 19023 SpotProvisioningTimeoutActionSwitchToOnDemand = "SWITCH_TO_ON_DEMAND" 19024 19025 // SpotProvisioningTimeoutActionTerminateCluster is a SpotProvisioningTimeoutAction enum value 19026 SpotProvisioningTimeoutActionTerminateCluster = "TERMINATE_CLUSTER" 19027) 19028 19029// SpotProvisioningTimeoutAction_Values returns all elements of the SpotProvisioningTimeoutAction enum 19030func SpotProvisioningTimeoutAction_Values() []string { 19031 return []string{ 19032 SpotProvisioningTimeoutActionSwitchToOnDemand, 19033 SpotProvisioningTimeoutActionTerminateCluster, 19034 } 19035} 19036 19037const ( 19038 // StatisticSampleCount is a Statistic enum value 19039 StatisticSampleCount = "SAMPLE_COUNT" 19040 19041 // StatisticAverage is a Statistic enum value 19042 StatisticAverage = "AVERAGE" 19043 19044 // StatisticSum is a Statistic enum value 19045 StatisticSum = "SUM" 19046 19047 // StatisticMinimum is a Statistic enum value 19048 StatisticMinimum = "MINIMUM" 19049 19050 // StatisticMaximum is a Statistic enum value 19051 StatisticMaximum = "MAXIMUM" 19052) 19053 19054// Statistic_Values returns all elements of the Statistic enum 19055func Statistic_Values() []string { 19056 return []string{ 19057 StatisticSampleCount, 19058 StatisticAverage, 19059 StatisticSum, 19060 StatisticMinimum, 19061 StatisticMaximum, 19062 } 19063} 19064 19065const ( 19066 // StepCancellationOptionSendInterrupt is a StepCancellationOption enum value 19067 StepCancellationOptionSendInterrupt = "SEND_INTERRUPT" 19068 19069 // StepCancellationOptionTerminateProcess is a StepCancellationOption enum value 19070 StepCancellationOptionTerminateProcess = "TERMINATE_PROCESS" 19071) 19072 19073// StepCancellationOption_Values returns all elements of the StepCancellationOption enum 19074func StepCancellationOption_Values() []string { 19075 return []string{ 19076 StepCancellationOptionSendInterrupt, 19077 StepCancellationOptionTerminateProcess, 19078 } 19079} 19080 19081const ( 19082 // StepExecutionStatePending is a StepExecutionState enum value 19083 StepExecutionStatePending = "PENDING" 19084 19085 // StepExecutionStateRunning is a StepExecutionState enum value 19086 StepExecutionStateRunning = "RUNNING" 19087 19088 // StepExecutionStateContinue is a StepExecutionState enum value 19089 StepExecutionStateContinue = "CONTINUE" 19090 19091 // StepExecutionStateCompleted is a StepExecutionState enum value 19092 StepExecutionStateCompleted = "COMPLETED" 19093 19094 // StepExecutionStateCancelled is a StepExecutionState enum value 19095 StepExecutionStateCancelled = "CANCELLED" 19096 19097 // StepExecutionStateFailed is a StepExecutionState enum value 19098 StepExecutionStateFailed = "FAILED" 19099 19100 // StepExecutionStateInterrupted is a StepExecutionState enum value 19101 StepExecutionStateInterrupted = "INTERRUPTED" 19102) 19103 19104// StepExecutionState_Values returns all elements of the StepExecutionState enum 19105func StepExecutionState_Values() []string { 19106 return []string{ 19107 StepExecutionStatePending, 19108 StepExecutionStateRunning, 19109 StepExecutionStateContinue, 19110 StepExecutionStateCompleted, 19111 StepExecutionStateCancelled, 19112 StepExecutionStateFailed, 19113 StepExecutionStateInterrupted, 19114 } 19115} 19116 19117const ( 19118 // StepStatePending is a StepState enum value 19119 StepStatePending = "PENDING" 19120 19121 // StepStateCancelPending is a StepState enum value 19122 StepStateCancelPending = "CANCEL_PENDING" 19123 19124 // StepStateRunning is a StepState enum value 19125 StepStateRunning = "RUNNING" 19126 19127 // StepStateCompleted is a StepState enum value 19128 StepStateCompleted = "COMPLETED" 19129 19130 // StepStateCancelled is a StepState enum value 19131 StepStateCancelled = "CANCELLED" 19132 19133 // StepStateFailed is a StepState enum value 19134 StepStateFailed = "FAILED" 19135 19136 // StepStateInterrupted is a StepState enum value 19137 StepStateInterrupted = "INTERRUPTED" 19138) 19139 19140// StepState_Values returns all elements of the StepState enum 19141func StepState_Values() []string { 19142 return []string{ 19143 StepStatePending, 19144 StepStateCancelPending, 19145 StepStateRunning, 19146 StepStateCompleted, 19147 StepStateCancelled, 19148 StepStateFailed, 19149 StepStateInterrupted, 19150 } 19151} 19152 19153const ( 19154 // StepStateChangeReasonCodeNone is a StepStateChangeReasonCode enum value 19155 StepStateChangeReasonCodeNone = "NONE" 19156) 19157 19158// StepStateChangeReasonCode_Values returns all elements of the StepStateChangeReasonCode enum 19159func StepStateChangeReasonCode_Values() []string { 19160 return []string{ 19161 StepStateChangeReasonCodeNone, 19162 } 19163} 19164 19165const ( 19166 // UnitNone is a Unit enum value 19167 UnitNone = "NONE" 19168 19169 // UnitSeconds is a Unit enum value 19170 UnitSeconds = "SECONDS" 19171 19172 // UnitMicroSeconds is a Unit enum value 19173 UnitMicroSeconds = "MICRO_SECONDS" 19174 19175 // UnitMilliSeconds is a Unit enum value 19176 UnitMilliSeconds = "MILLI_SECONDS" 19177 19178 // UnitBytes is a Unit enum value 19179 UnitBytes = "BYTES" 19180 19181 // UnitKiloBytes is a Unit enum value 19182 UnitKiloBytes = "KILO_BYTES" 19183 19184 // UnitMegaBytes is a Unit enum value 19185 UnitMegaBytes = "MEGA_BYTES" 19186 19187 // UnitGigaBytes is a Unit enum value 19188 UnitGigaBytes = "GIGA_BYTES" 19189 19190 // UnitTeraBytes is a Unit enum value 19191 UnitTeraBytes = "TERA_BYTES" 19192 19193 // UnitBits is a Unit enum value 19194 UnitBits = "BITS" 19195 19196 // UnitKiloBits is a Unit enum value 19197 UnitKiloBits = "KILO_BITS" 19198 19199 // UnitMegaBits is a Unit enum value 19200 UnitMegaBits = "MEGA_BITS" 19201 19202 // UnitGigaBits is a Unit enum value 19203 UnitGigaBits = "GIGA_BITS" 19204 19205 // UnitTeraBits is a Unit enum value 19206 UnitTeraBits = "TERA_BITS" 19207 19208 // UnitPercent is a Unit enum value 19209 UnitPercent = "PERCENT" 19210 19211 // UnitCount is a Unit enum value 19212 UnitCount = "COUNT" 19213 19214 // UnitBytesPerSecond is a Unit enum value 19215 UnitBytesPerSecond = "BYTES_PER_SECOND" 19216 19217 // UnitKiloBytesPerSecond is a Unit enum value 19218 UnitKiloBytesPerSecond = "KILO_BYTES_PER_SECOND" 19219 19220 // UnitMegaBytesPerSecond is a Unit enum value 19221 UnitMegaBytesPerSecond = "MEGA_BYTES_PER_SECOND" 19222 19223 // UnitGigaBytesPerSecond is a Unit enum value 19224 UnitGigaBytesPerSecond = "GIGA_BYTES_PER_SECOND" 19225 19226 // UnitTeraBytesPerSecond is a Unit enum value 19227 UnitTeraBytesPerSecond = "TERA_BYTES_PER_SECOND" 19228 19229 // UnitBitsPerSecond is a Unit enum value 19230 UnitBitsPerSecond = "BITS_PER_SECOND" 19231 19232 // UnitKiloBitsPerSecond is a Unit enum value 19233 UnitKiloBitsPerSecond = "KILO_BITS_PER_SECOND" 19234 19235 // UnitMegaBitsPerSecond is a Unit enum value 19236 UnitMegaBitsPerSecond = "MEGA_BITS_PER_SECOND" 19237 19238 // UnitGigaBitsPerSecond is a Unit enum value 19239 UnitGigaBitsPerSecond = "GIGA_BITS_PER_SECOND" 19240 19241 // UnitTeraBitsPerSecond is a Unit enum value 19242 UnitTeraBitsPerSecond = "TERA_BITS_PER_SECOND" 19243 19244 // UnitCountPerSecond is a Unit enum value 19245 UnitCountPerSecond = "COUNT_PER_SECOND" 19246) 19247 19248// Unit_Values returns all elements of the Unit enum 19249func Unit_Values() []string { 19250 return []string{ 19251 UnitNone, 19252 UnitSeconds, 19253 UnitMicroSeconds, 19254 UnitMilliSeconds, 19255 UnitBytes, 19256 UnitKiloBytes, 19257 UnitMegaBytes, 19258 UnitGigaBytes, 19259 UnitTeraBytes, 19260 UnitBits, 19261 UnitKiloBits, 19262 UnitMegaBits, 19263 UnitGigaBits, 19264 UnitTeraBits, 19265 UnitPercent, 19266 UnitCount, 19267 UnitBytesPerSecond, 19268 UnitKiloBytesPerSecond, 19269 UnitMegaBytesPerSecond, 19270 UnitGigaBytesPerSecond, 19271 UnitTeraBytesPerSecond, 19272 UnitBitsPerSecond, 19273 UnitKiloBitsPerSecond, 19274 UnitMegaBitsPerSecond, 19275 UnitGigaBitsPerSecond, 19276 UnitTeraBitsPerSecond, 19277 UnitCountPerSecond, 19278 } 19279} 19280