-
Notifications
You must be signed in to change notification settings - Fork 597
/
api_op_UpdateComputeEnvironment.go
170 lines (151 loc) · 6.35 KB
/
api_op_UpdateComputeEnvironment.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
// Code generated by smithy-go-codegen DO NOT EDIT.
package batch
import (
"context"
awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware"
"github.com/aws/aws-sdk-go-v2/aws/signer/v4"
"github.com/aws/aws-sdk-go-v2/service/batch/types"
"github.com/aws/smithy-go/middleware"
smithyhttp "github.com/aws/smithy-go/transport/http"
)
// Updates an Batch compute environment.
func (c *Client) UpdateComputeEnvironment(ctx context.Context, params *UpdateComputeEnvironmentInput, optFns ...func(*Options)) (*UpdateComputeEnvironmentOutput, error) {
if params == nil {
params = &UpdateComputeEnvironmentInput{}
}
result, metadata, err := c.invokeOperation(ctx, "UpdateComputeEnvironment", params, optFns, c.addOperationUpdateComputeEnvironmentMiddlewares)
if err != nil {
return nil, err
}
out := result.(*UpdateComputeEnvironmentOutput)
out.ResultMetadata = metadata
return out, nil
}
// Contains the parameters for UpdateComputeEnvironment.
type UpdateComputeEnvironmentInput struct {
// The name or full Amazon Resource Name (ARN) of the compute environment to
// update.
//
// This member is required.
ComputeEnvironment *string
// Details of the compute resources managed by the compute environment. Required
// for a managed compute environment. For more information, see Compute
// Environments
// (https://docs.aws.amazon.com/batch/latest/userguide/compute_environments.html)
// in the Batch User Guide.
ComputeResources *types.ComputeResourceUpdate
// The full Amazon Resource Name (ARN) of the IAM role that allows Batch to make
// calls to other Amazon Web Services services on your behalf. For more
// information, see Batch service IAM role
// (https://docs.aws.amazon.com/batch/latest/userguide/service_IAM_role.html) in
// the Batch User Guide. If the compute environment has a service-linked role, it
// can't be changed to use a regular IAM role. Likewise, if the compute environment
// has a regular IAM role, it can't be changed to use a service-linked role. If
// your specified role has a path other than /, then you must either specify the
// full role ARN (this is recommended) or prefix the role name with the path.
// Depending on how you created your Batch service role, its ARN might contain the
// service-role path prefix. When you only specify the name of the service role,
// Batch assumes that your ARN doesn't use the service-role path prefix. Because of
// this, we recommend that you specify the full ARN of your service role when you
// create compute environments.
ServiceRole *string
// The state of the compute environment. Compute environments in the ENABLED state
// can accept jobs from a queue and scale in or out automatically based on the
// workload demand of its associated queues. If the state is ENABLED, then the
// Batch scheduler can attempt to place jobs from an associated job queue on the
// compute resources within the environment. If the compute environment is managed,
// then it can scale its instances out or in automatically, based on the job queue
// demand. If the state is DISABLED, then the Batch scheduler doesn't attempt to
// place jobs within the environment. Jobs in a STARTING or RUNNING state continue
// to progress normally. Managed compute environments in the DISABLED state don't
// scale out. However, they scale in to minvCpus value after instances become idle.
State types.CEState
// The maximum number of vCPUs expected to be used for an unmanaged compute
// environment. This parameter should not be specified for a managed compute
// environment. This parameter is only used for fair share scheduling to reserve
// vCPU capacity for new share identifiers. If this parameter is not provided for a
// fair share job queue, no vCPU capacity will be reserved.
UnmanagedvCpus int32
noSmithyDocumentSerde
}
type UpdateComputeEnvironmentOutput struct {
// The Amazon Resource Name (ARN) of the compute environment.
ComputeEnvironmentArn *string
// The name of the compute environment. It can be up to 128 letters long. It can
// contain uppercase and lowercase letters, numbers, hyphens (-), and underscores
// (_).
ComputeEnvironmentName *string
// Metadata pertaining to the operation's result.
ResultMetadata middleware.Metadata
noSmithyDocumentSerde
}
func (c *Client) addOperationUpdateComputeEnvironmentMiddlewares(stack *middleware.Stack, options Options) (err error) {
err = stack.Serialize.Add(&awsRestjson1_serializeOpUpdateComputeEnvironment{}, middleware.After)
if err != nil {
return err
}
err = stack.Deserialize.Add(&awsRestjson1_deserializeOpUpdateComputeEnvironment{}, middleware.After)
if err != nil {
return err
}
if err = addSetLoggerMiddleware(stack, options); err != nil {
return err
}
if err = awsmiddleware.AddClientRequestIDMiddleware(stack); err != nil {
return err
}
if err = smithyhttp.AddComputeContentLengthMiddleware(stack); err != nil {
return err
}
if err = addResolveEndpointMiddleware(stack, options); err != nil {
return err
}
if err = v4.AddComputePayloadSHA256Middleware(stack); err != nil {
return err
}
if err = addRetryMiddlewares(stack, options); err != nil {
return err
}
if err = addHTTPSignerV4Middleware(stack, options); err != nil {
return err
}
if err = awsmiddleware.AddRawResponseToMetadata(stack); err != nil {
return err
}
if err = awsmiddleware.AddRecordResponseTiming(stack); err != nil {
return err
}
if err = addClientUserAgent(stack); err != nil {
return err
}
if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil {
return err
}
if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil {
return err
}
if err = addOpUpdateComputeEnvironmentValidationMiddleware(stack); err != nil {
return err
}
if err = stack.Initialize.Add(newServiceMetadataMiddleware_opUpdateComputeEnvironment(options.Region), middleware.Before); err != nil {
return err
}
if err = addRequestIDRetrieverMiddleware(stack); err != nil {
return err
}
if err = addResponseErrorMiddleware(stack); err != nil {
return err
}
if err = addRequestResponseLogging(stack, options); err != nil {
return err
}
return nil
}
func newServiceMetadataMiddleware_opUpdateComputeEnvironment(region string) *awsmiddleware.RegisterServiceMetadata {
return &awsmiddleware.RegisterServiceMetadata{
Region: region,
ServiceID: ServiceID,
SigningName: "batch",
OperationName: "UpdateComputeEnvironment",
}
}