Merge pull request #267 from lachlancooper/update-aws-sdk-go
Update aws sdk to v1.37.32
Kazuyoshi Kato authored 3 years ago
GitHub committed 3 years ago
0 | 0 | module github.com/awslabs/amazon-ecr-credential-helper/ecr-login |
1 | 1 | |
2 | 2 | require ( |
3 | github.com/aws/aws-sdk-go v1.36.0 | |
3 | github.com/aws/aws-sdk-go v1.37.32 | |
4 | 4 | github.com/docker/docker-credential-helpers v0.6.3 |
5 | 5 | github.com/konsorten/go-windows-terminal-sequences v1.0.2 // indirect |
6 | 6 | github.com/mitchellh/go-homedir v1.1.0 |
0 | github.com/aws/aws-sdk-go v1.36.0 h1:CscTrS+szX5iu34zk2bZrChnGO/GMtUYgMK1Xzs2hYo= | |
1 | github.com/aws/aws-sdk-go v1.36.0/go.mod h1:hcU610XS61/+aQV88ixoOzUoG7v3b31pl2zKMmprdro= | |
0 | github.com/aws/aws-sdk-go v1.37.32 h1:gLEASuX1phzqb00APUZU/xVIqf13IoA250RlgQ9rz28= | |
1 | github.com/aws/aws-sdk-go v1.37.32/go.mod h1:hcU610XS61/+aQV88ixoOzUoG7v3b31pl2zKMmprdro= | |
2 | 2 | github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= |
3 | 3 | github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c= |
4 | 4 | github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= |
34 | 34 | golang.org/x/sys v0.0.0-20190422165155-953cdadca894/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= |
35 | 35 | golang.org/x/sys v0.0.0-20200930185726-fdedc70b468f h1:+Nyd8tzPX9R7BWHguqsrbFdRx3WQ/1ib8I44HXV5yTA= |
36 | 36 | golang.org/x/sys v0.0.0-20200930185726-fdedc70b468f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= |
37 | golang.org/x/text v0.3.0 h1:g61tztE5qeGQ89tm6NTjjM9VPIm088od1l6aSorWRWg= | |
38 | 37 | golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= |
39 | 38 | golang.org/x/text v0.3.3 h1:cokOdA+Jmi5PJGXLlLllQSgYigAEfHXJAERHVMaCc2k= |
40 | 39 | golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= |
87 | 87 | // AddDebugHandlers injects debug logging handlers into the service to log request |
88 | 88 | // debug information. |
89 | 89 | func (c *Client) AddDebugHandlers() { |
90 | if !c.Config.LogLevel.AtLeast(aws.LogDebug) { | |
91 | return | |
92 | } | |
93 | ||
94 | 90 | c.Handlers.Send.PushFrontNamed(LogHTTPRequestHandler) |
95 | 91 | c.Handlers.Send.PushBackNamed(LogHTTPResponseHandler) |
96 | 92 | } |
52 | 52 | } |
53 | 53 | |
54 | 54 | func logRequest(r *request.Request) { |
55 | if !r.Config.LogLevel.AtLeast(aws.LogDebug) { | |
56 | return | |
57 | } | |
58 | ||
55 | 59 | logBody := r.Config.LogLevel.Matches(aws.LogDebugWithHTTPBody) |
56 | 60 | bodySeekable := aws.IsReaderSeekable(r.Body) |
57 | 61 | |
119 | 123 | } |
120 | 124 | |
121 | 125 | func logResponse(r *request.Request) { |
126 | if !r.Config.LogLevel.AtLeast(aws.LogDebug) { | |
127 | return | |
128 | } | |
129 | ||
122 | 130 | lw := &logWriter{r.Config.Logger, bytes.NewBuffer(nil)} |
123 | 131 | |
124 | 132 | if r.HTTPResponse == nil { |
437 | 437 | return c |
438 | 438 | } |
439 | 439 | |
440 | // WithSTSRegionalEndpoint will set whether or not to use regional endpoint flag | |
441 | // when resolving the endpoint for a service | |
442 | func (c *Config) WithSTSRegionalEndpoint(sre endpoints.STSRegionalEndpoint) *Config { | |
443 | c.STSRegionalEndpoint = sre | |
444 | return c | |
445 | } | |
446 | ||
447 | // WithS3UsEast1RegionalEndpoint will set whether or not to use regional endpoint flag | |
448 | // when resolving the endpoint for a service | |
449 | func (c *Config) WithS3UsEast1RegionalEndpoint(sre endpoints.S3UsEast1RegionalEndpoint) *Config { | |
450 | c.S3UsEast1RegionalEndpoint = sre | |
451 | return c | |
452 | } | |
453 | ||
454 | // WithLowerCaseHeaderMaps sets a config LowerCaseHeaderMaps value | |
455 | // returning a Config pointer for chaining. | |
456 | func (c *Config) WithLowerCaseHeaderMaps(t bool) *Config { | |
457 | c.LowerCaseHeaderMaps = &t | |
458 | return c | |
459 | } | |
460 | ||
461 | // WithDisableRestProtocolURICleaning sets a config DisableRestProtocolURICleaning value | |
462 | // returning a Config pointer for chaining. | |
463 | func (c *Config) WithDisableRestProtocolURICleaning(t bool) *Config { | |
464 | c.DisableRestProtocolURICleaning = &t | |
465 | return c | |
466 | } | |
467 | ||
440 | 468 | // MergeIn merges the passed in configs into the existing config object. |
441 | 469 | func (c *Config) MergeIn(cfgs ...*Config) { |
442 | 470 | for _, other := range cfgs { |
444 | 472 | } |
445 | 473 | } |
446 | 474 | |
447 | // WithSTSRegionalEndpoint will set whether or not to use regional endpoint flag | |
448 | // when resolving the endpoint for a service | |
449 | func (c *Config) WithSTSRegionalEndpoint(sre endpoints.STSRegionalEndpoint) *Config { | |
450 | c.STSRegionalEndpoint = sre | |
451 | return c | |
452 | } | |
453 | ||
454 | // WithS3UsEast1RegionalEndpoint will set whether or not to use regional endpoint flag | |
455 | // when resolving the endpoint for a service | |
456 | func (c *Config) WithS3UsEast1RegionalEndpoint(sre endpoints.S3UsEast1RegionalEndpoint) *Config { | |
457 | c.S3UsEast1RegionalEndpoint = sre | |
458 | return c | |
459 | } | |
460 | ||
461 | 475 | func mergeInConfig(dst *Config, other *Config) { |
462 | 476 | if other == nil { |
463 | 477 | return |
569 | 583 | |
570 | 584 | if other.S3UsEast1RegionalEndpoint != endpoints.UnsetS3UsEast1Endpoint { |
571 | 585 | dst.S3UsEast1RegionalEndpoint = other.S3UsEast1RegionalEndpoint |
586 | } | |
587 | ||
588 | if other.LowerCaseHeaderMaps != nil { | |
589 | dst.LowerCaseHeaderMaps = other.LowerCaseHeaderMaps | |
572 | 590 | } |
573 | 591 | } |
574 | 592 |
0 | // Package ssocreds provides a credential provider for retrieving temporary AWS credentials using an SSO access token. | |
1 | // | |
2 | // IMPORTANT: The provider in this package does not initiate or perform the AWS SSO login flow. The SDK provider | |
3 | // expects that you have already performed the SSO login flow using AWS CLI using the "aws sso login" command, or by | |
4 | // some other mechanism. The provider must find a valid non-expired access token for the AWS SSO user portal URL in | |
5 | // ~/.aws/sso/cache. If a cached token is not found, it is expired, or the file is malformed an error will be returned. | |
6 | // | |
7 | // Loading AWS SSO credentials with the AWS shared configuration file | |
8 | // | |
9 | // You can use configure AWS SSO credentials from the AWS shared configuration file by | |
10 | // providing the specifying the required keys in the profile: | |
11 | // | |
12 | // sso_account_id | |
13 | // sso_region | |
14 | // sso_role_name | |
15 | // sso_start_url | |
16 | // | |
17 | // For example, the following defines a profile "devsso" and specifies the AWS SSO parameters that defines the target | |
18 | // account, role, sign-on portal, and the region where the user portal is located. Note: all SSO arguments must be | |
19 | // provided, or an error will be returned. | |
20 | // | |
21 | // [profile devsso] | |
22 | // sso_start_url = https://my-sso-portal.awsapps.com/start | |
23 | // sso_role_name = SSOReadOnlyRole | |
24 | // sso_region = us-east-1 | |
25 | // sso_account_id = 123456789012 | |
26 | // | |
27 | // Using the config module, you can load the AWS SDK shared configuration, and specify that this profile be used to | |
28 | // retrieve credentials. For example: | |
29 | // | |
30 | // sess, err := session.NewSessionWithOptions(session.Options{ | |
31 | // SharedConfigState: session.SharedConfigEnable, | |
32 | // Profile: "devsso", | |
33 | // }) | |
34 | // if err != nil { | |
35 | // return err | |
36 | // } | |
37 | // | |
38 | // Programmatically loading AWS SSO credentials directly | |
39 | // | |
40 | // You can programmatically construct the AWS SSO Provider in your application, and provide the necessary information | |
41 | // to load and retrieve temporary credentials using an access token from ~/.aws/sso/cache. | |
42 | // | |
43 | // svc := sso.New(sess, &aws.Config{ | |
44 | // Region: aws.String("us-west-2"), // Client Region must correspond to the AWS SSO user portal region | |
45 | // }) | |
46 | // | |
47 | // provider := ssocreds.NewCredentialsWithClient(svc, "123456789012", "SSOReadOnlyRole", "https://my-sso-portal.awsapps.com/start") | |
48 | // | |
49 | // credentials, err := provider.Get() | |
50 | // if err != nil { | |
51 | // return err | |
52 | // } | |
53 | // | |
54 | // Additional Resources | |
55 | // | |
56 | // Configuring the AWS CLI to use AWS Single Sign-On: https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-sso.html | |
57 | // | |
58 | // AWS Single Sign-On User Guide: https://docs.aws.amazon.com/singlesignon/latest/userguide/what-is.html | |
59 | package ssocreds |
0 | // +build !windows | |
1 | ||
2 | package ssocreds | |
3 | ||
4 | import "os" | |
5 | ||
6 | func getHomeDirectory() string { | |
7 | return os.Getenv("HOME") | |
8 | } |
0 | package ssocreds | |
1 | ||
2 | import "os" | |
3 | ||
4 | func getHomeDirectory() string { | |
5 | return os.Getenv("USERPROFILE") | |
6 | } |
0 | package ssocreds | |
1 | ||
2 | import ( | |
3 | "crypto/sha1" | |
4 | "encoding/hex" | |
5 | "encoding/json" | |
6 | "fmt" | |
7 | "io/ioutil" | |
8 | "path/filepath" | |
9 | "strings" | |
10 | "time" | |
11 | ||
12 | "github.com/aws/aws-sdk-go/aws" | |
13 | "github.com/aws/aws-sdk-go/aws/awserr" | |
14 | "github.com/aws/aws-sdk-go/aws/client" | |
15 | "github.com/aws/aws-sdk-go/aws/credentials" | |
16 | "github.com/aws/aws-sdk-go/service/sso" | |
17 | "github.com/aws/aws-sdk-go/service/sso/ssoiface" | |
18 | ) | |
19 | ||
20 | // ErrCodeSSOProviderInvalidToken is the code type that is returned if loaded token has expired or is otherwise invalid. | |
21 | // To refresh the SSO session run aws sso login with the corresponding profile. | |
22 | const ErrCodeSSOProviderInvalidToken = "SSOProviderInvalidToken" | |
23 | ||
24 | const invalidTokenMessage = "the SSO session has expired or is invalid" | |
25 | ||
26 | func init() { | |
27 | nowTime = time.Now | |
28 | defaultCacheLocation = defaultCacheLocationImpl | |
29 | } | |
30 | ||
31 | var nowTime func() time.Time | |
32 | ||
33 | // ProviderName is the name of the provider used to specify the source of credentials. | |
34 | const ProviderName = "SSOProvider" | |
35 | ||
36 | var defaultCacheLocation func() string | |
37 | ||
38 | func defaultCacheLocationImpl() string { | |
39 | return filepath.Join(getHomeDirectory(), ".aws", "sso", "cache") | |
40 | } | |
41 | ||
42 | // Provider is an AWS credential provider that retrieves temporary AWS credentials by exchanging an SSO login token. | |
43 | type Provider struct { | |
44 | credentials.Expiry | |
45 | ||
46 | // The Client which is configured for the AWS Region where the AWS SSO user portal is located. | |
47 | Client ssoiface.SSOAPI | |
48 | ||
49 | // The AWS account that is assigned to the user. | |
50 | AccountID string | |
51 | ||
52 | // The role name that is assigned to the user. | |
53 | RoleName string | |
54 | ||
55 | // The URL that points to the organization's AWS Single Sign-On (AWS SSO) user portal. | |
56 | StartURL string | |
57 | } | |
58 | ||
59 | // NewCredentials returns a new AWS Single Sign-On (AWS SSO) credential provider. The ConfigProvider is expected to be configured | |
60 | // for the AWS Region where the AWS SSO user portal is located. | |
61 | func NewCredentials(configProvider client.ConfigProvider, accountID, roleName, startURL string, optFns ...func(provider *Provider)) *credentials.Credentials { | |
62 | return NewCredentialsWithClient(sso.New(configProvider), accountID, roleName, startURL, optFns...) | |
63 | } | |
64 | ||
65 | // NewCredentialsWithClient returns a new AWS Single Sign-On (AWS SSO) credential provider. The provided client is expected to be configured | |
66 | // for the AWS Region where the AWS SSO user portal is located. | |
67 | func NewCredentialsWithClient(client ssoiface.SSOAPI, accountID, roleName, startURL string, optFns ...func(provider *Provider)) *credentials.Credentials { | |
68 | p := &Provider{ | |
69 | Client: client, | |
70 | AccountID: accountID, | |
71 | RoleName: roleName, | |
72 | StartURL: startURL, | |
73 | } | |
74 | ||
75 | for _, fn := range optFns { | |
76 | fn(p) | |
77 | } | |
78 | ||
79 | return credentials.NewCredentials(p) | |
80 | } | |
81 | ||
82 | // Retrieve retrieves temporary AWS credentials from the configured Amazon Single Sign-On (AWS SSO) user portal | |
83 | // by exchanging the accessToken present in ~/.aws/sso/cache. | |
84 | func (p *Provider) Retrieve() (credentials.Value, error) { | |
85 | return p.RetrieveWithContext(aws.BackgroundContext()) | |
86 | } | |
87 | ||
88 | // RetrieveWithContext retrieves temporary AWS credentials from the configured Amazon Single Sign-On (AWS SSO) user portal | |
89 | // by exchanging the accessToken present in ~/.aws/sso/cache. | |
90 | func (p *Provider) RetrieveWithContext(ctx credentials.Context) (credentials.Value, error) { | |
91 | tokenFile, err := loadTokenFile(p.StartURL) | |
92 | if err != nil { | |
93 | return credentials.Value{}, err | |
94 | } | |
95 | ||
96 | output, err := p.Client.GetRoleCredentialsWithContext(ctx, &sso.GetRoleCredentialsInput{ | |
97 | AccessToken: &tokenFile.AccessToken, | |
98 | AccountId: &p.AccountID, | |
99 | RoleName: &p.RoleName, | |
100 | }) | |
101 | if err != nil { | |
102 | return credentials.Value{}, err | |
103 | } | |
104 | ||
105 | expireTime := time.Unix(0, aws.Int64Value(output.RoleCredentials.Expiration)*int64(time.Millisecond)).UTC() | |
106 | p.SetExpiration(expireTime, 0) | |
107 | ||
108 | return credentials.Value{ | |
109 | AccessKeyID: aws.StringValue(output.RoleCredentials.AccessKeyId), | |
110 | SecretAccessKey: aws.StringValue(output.RoleCredentials.SecretAccessKey), | |
111 | SessionToken: aws.StringValue(output.RoleCredentials.SessionToken), | |
112 | ProviderName: ProviderName, | |
113 | }, nil | |
114 | } | |
115 | ||
116 | func getCacheFileName(url string) (string, error) { | |
117 | hash := sha1.New() | |
118 | _, err := hash.Write([]byte(url)) | |
119 | if err != nil { | |
120 | return "", err | |
121 | } | |
122 | return strings.ToLower(hex.EncodeToString(hash.Sum(nil))) + ".json", nil | |
123 | } | |
124 | ||
125 | type rfc3339 time.Time | |
126 | ||
127 | func (r *rfc3339) UnmarshalJSON(bytes []byte) error { | |
128 | var value string | |
129 | ||
130 | if err := json.Unmarshal(bytes, &value); err != nil { | |
131 | return err | |
132 | } | |
133 | ||
134 | parse, err := time.Parse(time.RFC3339, value) | |
135 | if err != nil { | |
136 | return fmt.Errorf("expected RFC3339 timestamp: %v", err) | |
137 | } | |
138 | ||
139 | *r = rfc3339(parse) | |
140 | ||
141 | return nil | |
142 | } | |
143 | ||
144 | type token struct { | |
145 | AccessToken string `json:"accessToken"` | |
146 | ExpiresAt rfc3339 `json:"expiresAt"` | |
147 | Region string `json:"region,omitempty"` | |
148 | StartURL string `json:"startUrl,omitempty"` | |
149 | } | |
150 | ||
151 | func (t token) Expired() bool { | |
152 | return nowTime().Round(0).After(time.Time(t.ExpiresAt)) | |
153 | } | |
154 | ||
155 | func loadTokenFile(startURL string) (t token, err error) { | |
156 | key, err := getCacheFileName(startURL) | |
157 | if err != nil { | |
158 | return token{}, awserr.New(ErrCodeSSOProviderInvalidToken, invalidTokenMessage, err) | |
159 | } | |
160 | ||
161 | fileBytes, err := ioutil.ReadFile(filepath.Join(defaultCacheLocation(), key)) | |
162 | if err != nil { | |
163 | return token{}, awserr.New(ErrCodeSSOProviderInvalidToken, invalidTokenMessage, err) | |
164 | } | |
165 | ||
166 | if err := json.Unmarshal(fileBytes, &t); err != nil { | |
167 | return token{}, awserr.New(ErrCodeSSOProviderInvalidToken, invalidTokenMessage, err) | |
168 | } | |
169 | ||
170 | if len(t.AccessToken) == 0 { | |
171 | return token{}, awserr.New(ErrCodeSSOProviderInvalidToken, invalidTokenMessage, nil) | |
172 | } | |
173 | ||
174 | if t.Expired() { | |
175 | return token{}, awserr.New(ErrCodeSSOProviderInvalidToken, invalidTokenMessage, nil) | |
176 | } | |
177 | ||
178 | return t, nil | |
179 | } |
+9
-5
94 | 94 | // StdinTokenProvider will prompt on stderr and read from stdin for a string value. |
95 | 95 | // An error is returned if reading from stdin fails. |
96 | 96 | // |
97 | // Use this function go read MFA tokens from stdin. The function makes no attempt | |
97 | // Use this function to read MFA tokens from stdin. The function makes no attempt | |
98 | 98 | // to make atomic prompts from stdin across multiple gorouties. |
99 | 99 | // |
100 | 100 | // Using StdinTokenProvider with multiple AssumeRoleProviders, or Credentials will |
243 | 243 | MaxJitterFrac float64 |
244 | 244 | } |
245 | 245 | |
246 | // NewCredentials returns a pointer to a new Credentials object wrapping the | |
246 | // NewCredentials returns a pointer to a new Credentials value wrapping the | |
247 | 247 | // AssumeRoleProvider. The credentials will expire every 15 minutes and the |
248 | // role will be named after a nanosecond timestamp of this operation. | |
248 | // role will be named after a nanosecond timestamp of this operation. The | |
249 | // Credentials value will attempt to refresh the credentials using the provider | |
250 | // when Credentials.Get is called, if the cached credentials are expiring. | |
249 | 251 | // |
250 | 252 | // Takes a Config provider to create the STS client. The ConfigProvider is |
251 | 253 | // satisfied by the session.Session type. |
267 | 269 | return credentials.NewCredentials(p) |
268 | 270 | } |
269 | 271 | |
270 | // NewCredentialsWithClient returns a pointer to a new Credentials object wrapping the | |
272 | // NewCredentialsWithClient returns a pointer to a new Credentials value wrapping the | |
271 | 273 | // AssumeRoleProvider. The credentials will expire every 15 minutes and the |
272 | // role will be named after a nanosecond timestamp of this operation. | |
274 | // role will be named after a nanosecond timestamp of this operation. The | |
275 | // Credentials value will attempt to refresh the credentials using the provider | |
276 | // when Credentials.Get is called, if the cached credentials are expiring. | |
273 | 277 | // |
274 | 278 | // Takes an AssumeRoler which can be satisfied by the STS client. |
275 | 279 | // |
20 | 20 | ApEast1RegionID = "ap-east-1" // Asia Pacific (Hong Kong). |
21 | 21 | ApNortheast1RegionID = "ap-northeast-1" // Asia Pacific (Tokyo). |
22 | 22 | ApNortheast2RegionID = "ap-northeast-2" // Asia Pacific (Seoul). |
23 | ApNortheast3RegionID = "ap-northeast-3" // Asia Pacific (Osaka). | |
23 | 24 | ApSouth1RegionID = "ap-south-1" // Asia Pacific (Mumbai). |
24 | 25 | ApSoutheast1RegionID = "ap-southeast-1" // Asia Pacific (Singapore). |
25 | 26 | ApSoutheast2RegionID = "ap-southeast-2" // Asia Pacific (Sydney). |
120 | 121 | "ap-northeast-2": region{ |
121 | 122 | Description: "Asia Pacific (Seoul)", |
122 | 123 | }, |
124 | "ap-northeast-3": region{ | |
125 | Description: "Asia Pacific (Osaka)", | |
126 | }, | |
123 | 127 | "ap-south-1": region{ |
124 | 128 | Description: "Asia Pacific (Mumbai)", |
125 | 129 | }, |
183 | 187 | "ap-east-1": endpoint{}, |
184 | 188 | "ap-northeast-1": endpoint{}, |
185 | 189 | "ap-northeast-2": endpoint{}, |
190 | "ap-northeast-3": endpoint{}, | |
186 | 191 | "ap-south-1": endpoint{}, |
187 | 192 | "ap-southeast-1": endpoint{}, |
188 | 193 | "ap-southeast-2": endpoint{}, |
238 | 243 | "ap-east-1": endpoint{}, |
239 | 244 | "ap-northeast-1": endpoint{}, |
240 | 245 | "ap-northeast-2": endpoint{}, |
246 | "ap-northeast-3": endpoint{}, | |
241 | 247 | "ap-south-1": endpoint{}, |
242 | 248 | "ap-southeast-1": endpoint{}, |
243 | 249 | "ap-southeast-2": endpoint{}, |
357 | 363 | "us-west-2": endpoint{}, |
358 | 364 | }, |
359 | 365 | }, |
366 | "amplifybackend": service{ | |
367 | ||
368 | Endpoints: endpoints{ | |
369 | "ap-northeast-1": endpoint{}, | |
370 | "ap-northeast-2": endpoint{}, | |
371 | "ap-south-1": endpoint{}, | |
372 | "ap-southeast-1": endpoint{}, | |
373 | "ap-southeast-2": endpoint{}, | |
374 | "ca-central-1": endpoint{}, | |
375 | "eu-central-1": endpoint{}, | |
376 | "eu-west-1": endpoint{}, | |
377 | "eu-west-2": endpoint{}, | |
378 | "us-east-1": endpoint{}, | |
379 | "us-east-2": endpoint{}, | |
380 | "us-west-2": endpoint{}, | |
381 | }, | |
382 | }, | |
360 | 383 | "api.detective": service{ |
361 | 384 | Defaults: endpoint{ |
362 | 385 | Protocols: []string{"https"}, |
366 | 389 | "ap-east-1": endpoint{}, |
367 | 390 | "ap-northeast-1": endpoint{}, |
368 | 391 | "ap-northeast-2": endpoint{}, |
392 | "ap-south-1": endpoint{}, | |
393 | "ap-southeast-1": endpoint{}, | |
394 | "ap-southeast-2": endpoint{}, | |
395 | "ca-central-1": endpoint{}, | |
396 | "eu-central-1": endpoint{}, | |
397 | "eu-north-1": endpoint{}, | |
398 | "eu-south-1": endpoint{}, | |
399 | "eu-west-1": endpoint{}, | |
400 | "eu-west-2": endpoint{}, | |
401 | "eu-west-3": endpoint{}, | |
402 | "me-south-1": endpoint{}, | |
403 | "sa-east-1": endpoint{}, | |
404 | "us-east-1": endpoint{}, | |
405 | "us-east-1-fips": endpoint{ | |
406 | Hostname: "api.detective-fips.us-east-1.amazonaws.com", | |
407 | CredentialScope: credentialScope{ | |
408 | Region: "us-east-1", | |
409 | }, | |
410 | }, | |
411 | "us-east-2": endpoint{}, | |
412 | "us-east-2-fips": endpoint{ | |
413 | Hostname: "api.detective-fips.us-east-2.amazonaws.com", | |
414 | CredentialScope: credentialScope{ | |
415 | Region: "us-east-2", | |
416 | }, | |
417 | }, | |
418 | "us-west-1": endpoint{}, | |
419 | "us-west-1-fips": endpoint{ | |
420 | Hostname: "api.detective-fips.us-west-1.amazonaws.com", | |
421 | CredentialScope: credentialScope{ | |
422 | Region: "us-west-1", | |
423 | }, | |
424 | }, | |
425 | "us-west-2": endpoint{}, | |
426 | "us-west-2-fips": endpoint{ | |
427 | Hostname: "api.detective-fips.us-west-2.amazonaws.com", | |
428 | CredentialScope: credentialScope{ | |
429 | Region: "us-west-2", | |
430 | }, | |
431 | }, | |
432 | }, | |
433 | }, | |
434 | "api.ecr": service{ | |
435 | ||
436 | Endpoints: endpoints{ | |
437 | "af-south-1": endpoint{ | |
438 | Hostname: "api.ecr.af-south-1.amazonaws.com", | |
439 | CredentialScope: credentialScope{ | |
440 | Region: "af-south-1", | |
441 | }, | |
442 | }, | |
443 | "ap-east-1": endpoint{ | |
444 | Hostname: "api.ecr.ap-east-1.amazonaws.com", | |
445 | CredentialScope: credentialScope{ | |
446 | Region: "ap-east-1", | |
447 | }, | |
448 | }, | |
449 | "ap-northeast-1": endpoint{ | |
450 | Hostname: "api.ecr.ap-northeast-1.amazonaws.com", | |
451 | CredentialScope: credentialScope{ | |
452 | Region: "ap-northeast-1", | |
453 | }, | |
454 | }, | |
455 | "ap-northeast-2": endpoint{ | |
456 | Hostname: "api.ecr.ap-northeast-2.amazonaws.com", | |
457 | CredentialScope: credentialScope{ | |
458 | Region: "ap-northeast-2", | |
459 | }, | |
460 | }, | |
461 | "ap-northeast-3": endpoint{ | |
462 | Hostname: "api.ecr.ap-northeast-3.amazonaws.com", | |
463 | CredentialScope: credentialScope{ | |
464 | Region: "ap-northeast-3", | |
465 | }, | |
466 | }, | |
467 | "ap-south-1": endpoint{ | |
468 | Hostname: "api.ecr.ap-south-1.amazonaws.com", | |
469 | CredentialScope: credentialScope{ | |
470 | Region: "ap-south-1", | |
471 | }, | |
472 | }, | |
473 | "ap-southeast-1": endpoint{ | |
474 | Hostname: "api.ecr.ap-southeast-1.amazonaws.com", | |
475 | CredentialScope: credentialScope{ | |
476 | Region: "ap-southeast-1", | |
477 | }, | |
478 | }, | |
479 | "ap-southeast-2": endpoint{ | |
480 | Hostname: "api.ecr.ap-southeast-2.amazonaws.com", | |
481 | CredentialScope: credentialScope{ | |
482 | Region: "ap-southeast-2", | |
483 | }, | |
484 | }, | |
485 | "ca-central-1": endpoint{ | |
486 | Hostname: "api.ecr.ca-central-1.amazonaws.com", | |
487 | CredentialScope: credentialScope{ | |
488 | Region: "ca-central-1", | |
489 | }, | |
490 | }, | |
491 | "eu-central-1": endpoint{ | |
492 | Hostname: "api.ecr.eu-central-1.amazonaws.com", | |
493 | CredentialScope: credentialScope{ | |
494 | Region: "eu-central-1", | |
495 | }, | |
496 | }, | |
497 | "eu-north-1": endpoint{ | |
498 | Hostname: "api.ecr.eu-north-1.amazonaws.com", | |
499 | CredentialScope: credentialScope{ | |
500 | Region: "eu-north-1", | |
501 | }, | |
502 | }, | |
503 | "eu-south-1": endpoint{ | |
504 | Hostname: "api.ecr.eu-south-1.amazonaws.com", | |
505 | CredentialScope: credentialScope{ | |
506 | Region: "eu-south-1", | |
507 | }, | |
508 | }, | |
509 | "eu-west-1": endpoint{ | |
510 | Hostname: "api.ecr.eu-west-1.amazonaws.com", | |
511 | CredentialScope: credentialScope{ | |
512 | Region: "eu-west-1", | |
513 | }, | |
514 | }, | |
515 | "eu-west-2": endpoint{ | |
516 | Hostname: "api.ecr.eu-west-2.amazonaws.com", | |
517 | CredentialScope: credentialScope{ | |
518 | Region: "eu-west-2", | |
519 | }, | |
520 | }, | |
521 | "eu-west-3": endpoint{ | |
522 | Hostname: "api.ecr.eu-west-3.amazonaws.com", | |
523 | CredentialScope: credentialScope{ | |
524 | Region: "eu-west-3", | |
525 | }, | |
526 | }, | |
527 | "fips-dkr-us-east-1": endpoint{ | |
528 | Hostname: "ecr-fips.us-east-1.amazonaws.com", | |
529 | CredentialScope: credentialScope{ | |
530 | Region: "us-east-1", | |
531 | }, | |
532 | }, | |
533 | "fips-dkr-us-east-2": endpoint{ | |
534 | Hostname: "ecr-fips.us-east-2.amazonaws.com", | |
535 | CredentialScope: credentialScope{ | |
536 | Region: "us-east-2", | |
537 | }, | |
538 | }, | |
539 | "fips-dkr-us-west-1": endpoint{ | |
540 | Hostname: "ecr-fips.us-west-1.amazonaws.com", | |
541 | CredentialScope: credentialScope{ | |
542 | Region: "us-west-1", | |
543 | }, | |
544 | }, | |
545 | "fips-dkr-us-west-2": endpoint{ | |
546 | Hostname: "ecr-fips.us-west-2.amazonaws.com", | |
547 | CredentialScope: credentialScope{ | |
548 | Region: "us-west-2", | |
549 | }, | |
550 | }, | |
551 | "fips-us-east-1": endpoint{ | |
552 | Hostname: "ecr-fips.us-east-1.amazonaws.com", | |
553 | CredentialScope: credentialScope{ | |
554 | Region: "us-east-1", | |
555 | }, | |
556 | }, | |
557 | "fips-us-east-2": endpoint{ | |
558 | Hostname: "ecr-fips.us-east-2.amazonaws.com", | |
559 | CredentialScope: credentialScope{ | |
560 | Region: "us-east-2", | |
561 | }, | |
562 | }, | |
563 | "fips-us-west-1": endpoint{ | |
564 | Hostname: "ecr-fips.us-west-1.amazonaws.com", | |
565 | CredentialScope: credentialScope{ | |
566 | Region: "us-west-1", | |
567 | }, | |
568 | }, | |
569 | "fips-us-west-2": endpoint{ | |
570 | Hostname: "ecr-fips.us-west-2.amazonaws.com", | |
571 | CredentialScope: credentialScope{ | |
572 | Region: "us-west-2", | |
573 | }, | |
574 | }, | |
575 | "me-south-1": endpoint{ | |
576 | Hostname: "api.ecr.me-south-1.amazonaws.com", | |
577 | CredentialScope: credentialScope{ | |
578 | Region: "me-south-1", | |
579 | }, | |
580 | }, | |
581 | "sa-east-1": endpoint{ | |
582 | Hostname: "api.ecr.sa-east-1.amazonaws.com", | |
583 | CredentialScope: credentialScope{ | |
584 | Region: "sa-east-1", | |
585 | }, | |
586 | }, | |
587 | "us-east-1": endpoint{ | |
588 | Hostname: "api.ecr.us-east-1.amazonaws.com", | |
589 | CredentialScope: credentialScope{ | |
590 | Region: "us-east-1", | |
591 | }, | |
592 | }, | |
593 | "us-east-2": endpoint{ | |
594 | Hostname: "api.ecr.us-east-2.amazonaws.com", | |
595 | CredentialScope: credentialScope{ | |
596 | Region: "us-east-2", | |
597 | }, | |
598 | }, | |
599 | "us-west-1": endpoint{ | |
600 | Hostname: "api.ecr.us-west-1.amazonaws.com", | |
601 | CredentialScope: credentialScope{ | |
602 | Region: "us-west-1", | |
603 | }, | |
604 | }, | |
605 | "us-west-2": endpoint{ | |
606 | Hostname: "api.ecr.us-west-2.amazonaws.com", | |
607 | CredentialScope: credentialScope{ | |
608 | Region: "us-west-2", | |
609 | }, | |
610 | }, | |
611 | }, | |
612 | }, | |
613 | "api.elastic-inference": service{ | |
614 | ||
615 | Endpoints: endpoints{ | |
616 | "ap-northeast-1": endpoint{ | |
617 | Hostname: "api.elastic-inference.ap-northeast-1.amazonaws.com", | |
618 | }, | |
619 | "ap-northeast-2": endpoint{ | |
620 | Hostname: "api.elastic-inference.ap-northeast-2.amazonaws.com", | |
621 | }, | |
622 | "eu-west-1": endpoint{ | |
623 | Hostname: "api.elastic-inference.eu-west-1.amazonaws.com", | |
624 | }, | |
625 | "us-east-1": endpoint{ | |
626 | Hostname: "api.elastic-inference.us-east-1.amazonaws.com", | |
627 | }, | |
628 | "us-east-2": endpoint{ | |
629 | Hostname: "api.elastic-inference.us-east-2.amazonaws.com", | |
630 | }, | |
631 | "us-west-2": endpoint{ | |
632 | Hostname: "api.elastic-inference.us-west-2.amazonaws.com", | |
633 | }, | |
634 | }, | |
635 | }, | |
636 | "api.fleethub.iot": service{ | |
637 | ||
638 | Endpoints: endpoints{ | |
639 | "us-east-1": endpoint{}, | |
640 | }, | |
641 | }, | |
642 | "api.mediatailor": service{ | |
643 | ||
644 | Endpoints: endpoints{ | |
645 | "ap-northeast-1": endpoint{}, | |
646 | "ap-southeast-1": endpoint{}, | |
647 | "ap-southeast-2": endpoint{}, | |
648 | "eu-central-1": endpoint{}, | |
649 | "eu-west-1": endpoint{}, | |
650 | "us-east-1": endpoint{}, | |
651 | "us-west-2": endpoint{}, | |
652 | }, | |
653 | }, | |
654 | "api.pricing": service{ | |
655 | Defaults: endpoint{ | |
656 | CredentialScope: credentialScope{ | |
657 | Service: "pricing", | |
658 | }, | |
659 | }, | |
660 | Endpoints: endpoints{ | |
661 | "ap-south-1": endpoint{}, | |
662 | "us-east-1": endpoint{}, | |
663 | }, | |
664 | }, | |
665 | "api.sagemaker": service{ | |
666 | ||
667 | Endpoints: endpoints{ | |
668 | "af-south-1": endpoint{}, | |
669 | "ap-east-1": endpoint{}, | |
670 | "ap-northeast-1": endpoint{}, | |
671 | "ap-northeast-2": endpoint{}, | |
672 | "ap-south-1": endpoint{}, | |
673 | "ap-southeast-1": endpoint{}, | |
674 | "ap-southeast-2": endpoint{}, | |
675 | "ca-central-1": endpoint{}, | |
676 | "eu-central-1": endpoint{}, | |
677 | "eu-north-1": endpoint{}, | |
678 | "eu-south-1": endpoint{}, | |
679 | "eu-west-1": endpoint{}, | |
680 | "eu-west-2": endpoint{}, | |
681 | "eu-west-3": endpoint{}, | |
682 | "me-south-1": endpoint{}, | |
683 | "sa-east-1": endpoint{}, | |
684 | "us-east-1": endpoint{}, | |
685 | "us-east-1-fips": endpoint{ | |
686 | Hostname: "api-fips.sagemaker.us-east-1.amazonaws.com", | |
687 | CredentialScope: credentialScope{ | |
688 | Region: "us-east-1", | |
689 | }, | |
690 | }, | |
691 | "us-east-2": endpoint{}, | |
692 | "us-east-2-fips": endpoint{ | |
693 | Hostname: "api-fips.sagemaker.us-east-2.amazonaws.com", | |
694 | CredentialScope: credentialScope{ | |
695 | Region: "us-east-2", | |
696 | }, | |
697 | }, | |
698 | "us-west-1": endpoint{}, | |
699 | "us-west-1-fips": endpoint{ | |
700 | Hostname: "api-fips.sagemaker.us-west-1.amazonaws.com", | |
701 | CredentialScope: credentialScope{ | |
702 | Region: "us-west-1", | |
703 | }, | |
704 | }, | |
705 | "us-west-2": endpoint{}, | |
706 | "us-west-2-fips": endpoint{ | |
707 | Hostname: "api-fips.sagemaker.us-west-2.amazonaws.com", | |
708 | CredentialScope: credentialScope{ | |
709 | Region: "us-west-2", | |
710 | }, | |
711 | }, | |
712 | }, | |
713 | }, | |
714 | "apigateway": service{ | |
715 | ||
716 | Endpoints: endpoints{ | |
717 | "af-south-1": endpoint{}, | |
718 | "ap-east-1": endpoint{}, | |
719 | "ap-northeast-1": endpoint{}, | |
720 | "ap-northeast-2": endpoint{}, | |
721 | "ap-northeast-3": endpoint{}, | |
369 | 722 | "ap-south-1": endpoint{}, |
370 | 723 | "ap-southeast-1": endpoint{}, |
371 | 724 | "ap-southeast-2": endpoint{}, |
384 | 737 | "us-west-2": endpoint{}, |
385 | 738 | }, |
386 | 739 | }, |
387 | "api.ecr": service{ | |
388 | ||
389 | Endpoints: endpoints{ | |
390 | "af-south-1": endpoint{ | |
391 | Hostname: "api.ecr.af-south-1.amazonaws.com", | |
392 | CredentialScope: credentialScope{ | |
393 | Region: "af-south-1", | |
394 | }, | |
395 | }, | |
396 | "ap-east-1": endpoint{ | |
397 | Hostname: "api.ecr.ap-east-1.amazonaws.com", | |
398 | CredentialScope: credentialScope{ | |
399 | Region: "ap-east-1", | |
400 | }, | |
401 | }, | |
402 | "ap-northeast-1": endpoint{ | |
403 | Hostname: "api.ecr.ap-northeast-1.amazonaws.com", | |
404 | CredentialScope: credentialScope{ | |
405 | Region: "ap-northeast-1", | |
406 | }, | |
407 | }, | |
408 | "ap-northeast-2": endpoint{ | |
409 | Hostname: "api.ecr.ap-northeast-2.amazonaws.com", | |
410 | CredentialScope: credentialScope{ | |
411 | Region: "ap-northeast-2", | |
412 | }, | |
413 | }, | |
414 | "ap-south-1": endpoint{ | |
415 | Hostname: "api.ecr.ap-south-1.amazonaws.com", | |
416 | CredentialScope: credentialScope{ | |
417 | Region: "ap-south-1", | |
418 | }, | |
419 | }, | |
420 | "ap-southeast-1": endpoint{ | |
421 | Hostname: "api.ecr.ap-southeast-1.amazonaws.com", | |
422 | CredentialScope: credentialScope{ | |
423 | Region: "ap-southeast-1", | |
424 | }, | |
425 | }, | |
426 | "ap-southeast-2": endpoint{ | |
427 | Hostname: "api.ecr.ap-southeast-2.amazonaws.com", | |
428 | CredentialScope: credentialScope{ | |
429 | Region: "ap-southeast-2", | |
430 | }, | |
431 | }, | |
432 | "ca-central-1": endpoint{ | |
433 | Hostname: "api.ecr.ca-central-1.amazonaws.com", | |
434 | CredentialScope: credentialScope{ | |
435 | Region: "ca-central-1", | |
436 | }, | |
437 | }, | |
438 | "eu-central-1": endpoint{ | |
439 | Hostname: "api.ecr.eu-central-1.amazonaws.com", | |
440 | CredentialScope: credentialScope{ | |
441 | Region: "eu-central-1", | |
442 | }, | |
443 | }, | |
444 | "eu-north-1": endpoint{ | |
445 | Hostname: "api.ecr.eu-north-1.amazonaws.com", | |
446 | CredentialScope: credentialScope{ | |
447 | Region: "eu-north-1", | |
448 | }, | |
449 | }, | |
450 | "eu-south-1": endpoint{ | |
451 | Hostname: "api.ecr.eu-south-1.amazonaws.com", | |
452 | CredentialScope: credentialScope{ | |
453 | Region: "eu-south-1", | |
454 | }, | |
455 | }, | |
456 | "eu-west-1": endpoint{ | |
457 | Hostname: "api.ecr.eu-west-1.amazonaws.com", | |
458 | CredentialScope: credentialScope{ | |
459 | Region: "eu-west-1", | |
460 | }, | |
461 | }, | |
462 | "eu-west-2": endpoint{ | |
463 | Hostname: "api.ecr.eu-west-2.amazonaws.com", | |
464 | CredentialScope: credentialScope{ | |
465 | Region: "eu-west-2", | |
466 | }, | |
467 | }, | |
468 | "eu-west-3": endpoint{ | |
469 | Hostname: "api.ecr.eu-west-3.amazonaws.com", | |
470 | CredentialScope: credentialScope{ | |
471 | Region: "eu-west-3", | |
472 | }, | |
473 | }, | |
474 | "fips-dkr-us-east-1": endpoint{ | |
475 | Hostname: "ecr-fips.us-east-1.amazonaws.com", | |
476 | CredentialScope: credentialScope{ | |
477 | Region: "us-east-1", | |
478 | }, | |
479 | }, | |
480 | "fips-dkr-us-east-2": endpoint{ | |
481 | Hostname: "ecr-fips.us-east-2.amazonaws.com", | |
482 | CredentialScope: credentialScope{ | |
483 | Region: "us-east-2", | |
484 | }, | |
485 | }, | |
486 | "fips-dkr-us-west-1": endpoint{ | |
487 | Hostname: "ecr-fips.us-west-1.amazonaws.com", | |
488 | CredentialScope: credentialScope{ | |
489 | Region: "us-west-1", | |
490 | }, | |
491 | }, | |
492 | "fips-dkr-us-west-2": endpoint{ | |
493 | Hostname: "ecr-fips.us-west-2.amazonaws.com", | |
494 | CredentialScope: credentialScope{ | |
495 | Region: "us-west-2", | |
496 | }, | |
497 | }, | |
498 | "fips-us-east-1": endpoint{ | |
499 | Hostname: "ecr-fips.us-east-1.amazonaws.com", | |
500 | CredentialScope: credentialScope{ | |
501 | Region: "us-east-1", | |
502 | }, | |
503 | }, | |
504 | "fips-us-east-2": endpoint{ | |
505 | Hostname: "ecr-fips.us-east-2.amazonaws.com", | |
506 | CredentialScope: credentialScope{ | |
507 | Region: "us-east-2", | |
508 | }, | |
509 | }, | |
510 | "fips-us-west-1": endpoint{ | |
511 | Hostname: "ecr-fips.us-west-1.amazonaws.com", | |
512 | CredentialScope: credentialScope{ | |
513 | Region: "us-west-1", | |
514 | }, | |
515 | }, | |
516 | "fips-us-west-2": endpoint{ | |
517 | Hostname: "ecr-fips.us-west-2.amazonaws.com", | |
518 | CredentialScope: credentialScope{ | |
519 | Region: "us-west-2", | |
520 | }, | |
521 | }, | |
522 | "me-south-1": endpoint{ | |
523 | Hostname: "api.ecr.me-south-1.amazonaws.com", | |
524 | CredentialScope: credentialScope{ | |
525 | Region: "me-south-1", | |
526 | }, | |
527 | }, | |
528 | "sa-east-1": endpoint{ | |
529 | Hostname: "api.ecr.sa-east-1.amazonaws.com", | |
530 | CredentialScope: credentialScope{ | |
531 | Region: "sa-east-1", | |
532 | }, | |
533 | }, | |
534 | "us-east-1": endpoint{ | |
535 | Hostname: "api.ecr.us-east-1.amazonaws.com", | |
536 | CredentialScope: credentialScope{ | |
537 | Region: "us-east-1", | |
538 | }, | |
539 | }, | |
540 | "us-east-2": endpoint{ | |
541 | Hostname: "api.ecr.us-east-2.amazonaws.com", | |
542 | CredentialScope: credentialScope{ | |
543 | Region: "us-east-2", | |
544 | }, | |
545 | }, | |
546 | "us-west-1": endpoint{ | |
547 | Hostname: "api.ecr.us-west-1.amazonaws.com", | |
548 | CredentialScope: credentialScope{ | |
549 | Region: "us-west-1", | |
550 | }, | |
551 | }, | |
552 | "us-west-2": endpoint{ | |
553 | Hostname: "api.ecr.us-west-2.amazonaws.com", | |
554 | CredentialScope: credentialScope{ | |
555 | Region: "us-west-2", | |
556 | }, | |
557 | }, | |
558 | }, | |
559 | }, | |
560 | "api.elastic-inference": service{ | |
561 | ||
562 | Endpoints: endpoints{ | |
563 | "ap-northeast-1": endpoint{ | |
564 | Hostname: "api.elastic-inference.ap-northeast-1.amazonaws.com", | |
565 | }, | |
566 | "ap-northeast-2": endpoint{ | |
567 | Hostname: "api.elastic-inference.ap-northeast-2.amazonaws.com", | |
568 | }, | |
569 | "eu-west-1": endpoint{ | |
570 | Hostname: "api.elastic-inference.eu-west-1.amazonaws.com", | |
571 | }, | |
572 | "us-east-1": endpoint{ | |
573 | Hostname: "api.elastic-inference.us-east-1.amazonaws.com", | |
574 | }, | |
575 | "us-east-2": endpoint{ | |
576 | Hostname: "api.elastic-inference.us-east-2.amazonaws.com", | |
577 | }, | |
578 | "us-west-2": endpoint{ | |
579 | Hostname: "api.elastic-inference.us-west-2.amazonaws.com", | |
580 | }, | |
581 | }, | |
582 | }, | |
583 | "api.mediatailor": service{ | |
584 | ||
585 | Endpoints: endpoints{ | |
586 | "ap-northeast-1": endpoint{}, | |
587 | "ap-southeast-1": endpoint{}, | |
588 | "ap-southeast-2": endpoint{}, | |
589 | "eu-central-1": endpoint{}, | |
590 | "eu-west-1": endpoint{}, | |
740 | "app-integrations": service{ | |
741 | ||
742 | Endpoints: endpoints{ | |
743 | "ap-northeast-1": endpoint{}, | |
744 | "ap-southeast-1": endpoint{}, | |
745 | "ap-southeast-2": endpoint{}, | |
746 | "eu-central-1": endpoint{}, | |
747 | "eu-west-2": endpoint{}, | |
591 | 748 | "us-east-1": endpoint{}, |
592 | 749 | "us-west-2": endpoint{}, |
593 | 750 | }, |
594 | 751 | }, |
595 | "api.pricing": service{ | |
752 | "appflow": service{ | |
753 | ||
754 | Endpoints: endpoints{ | |
755 | "ap-northeast-1": endpoint{}, | |
756 | "ap-northeast-2": endpoint{}, | |
757 | "ap-south-1": endpoint{}, | |
758 | "ap-southeast-1": endpoint{}, | |
759 | "ap-southeast-2": endpoint{}, | |
760 | "ca-central-1": endpoint{}, | |
761 | "eu-central-1": endpoint{}, | |
762 | "eu-west-1": endpoint{}, | |
763 | "eu-west-2": endpoint{}, | |
764 | "eu-west-3": endpoint{}, | |
765 | "sa-east-1": endpoint{}, | |
766 | "us-east-1": endpoint{}, | |
767 | "us-east-2": endpoint{}, | |
768 | "us-west-1": endpoint{}, | |
769 | "us-west-2": endpoint{}, | |
770 | }, | |
771 | }, | |
772 | "application-autoscaling": service{ | |
596 | 773 | Defaults: endpoint{ |
597 | CredentialScope: credentialScope{ | |
598 | Service: "pricing", | |
599 | }, | |
600 | }, | |
601 | Endpoints: endpoints{ | |
602 | "ap-south-1": endpoint{}, | |
603 | "us-east-1": endpoint{}, | |
604 | }, | |
605 | }, | |
606 | "api.sagemaker": service{ | |
607 | ||
774 | Protocols: []string{"http", "https"}, | |
775 | }, | |
608 | 776 | Endpoints: endpoints{ |
609 | 777 | "af-south-1": endpoint{}, |
610 | 778 | "ap-east-1": endpoint{}, |
611 | 779 | "ap-northeast-1": endpoint{}, |
612 | 780 | "ap-northeast-2": endpoint{}, |
613 | "ap-south-1": endpoint{}, | |
614 | "ap-southeast-1": endpoint{}, | |
615 | "ap-southeast-2": endpoint{}, | |
616 | "ca-central-1": endpoint{}, | |
617 | "eu-central-1": endpoint{}, | |
618 | "eu-north-1": endpoint{}, | |
619 | "eu-south-1": endpoint{}, | |
620 | "eu-west-1": endpoint{}, | |
621 | "eu-west-2": endpoint{}, | |
622 | "eu-west-3": endpoint{}, | |
623 | "me-south-1": endpoint{}, | |
624 | "sa-east-1": endpoint{}, | |
625 | "us-east-1": endpoint{}, | |
626 | "us-east-1-fips": endpoint{ | |
627 | Hostname: "api-fips.sagemaker.us-east-1.amazonaws.com", | |
628 | CredentialScope: credentialScope{ | |
629 | Region: "us-east-1", | |
630 | }, | |
631 | }, | |
632 | "us-east-2": endpoint{}, | |
633 | "us-east-2-fips": endpoint{ | |
634 | Hostname: "api-fips.sagemaker.us-east-2.amazonaws.com", | |
635 | CredentialScope: credentialScope{ | |
636 | Region: "us-east-2", | |
637 | }, | |
638 | }, | |
639 | "us-west-1": endpoint{}, | |
640 | "us-west-1-fips": endpoint{ | |
641 | Hostname: "api-fips.sagemaker.us-west-1.amazonaws.com", | |
642 | CredentialScope: credentialScope{ | |
643 | Region: "us-west-1", | |
644 | }, | |
645 | }, | |
646 | "us-west-2": endpoint{}, | |
647 | "us-west-2-fips": endpoint{ | |
648 | Hostname: "api-fips.sagemaker.us-west-2.amazonaws.com", | |
649 | CredentialScope: credentialScope{ | |
650 | Region: "us-west-2", | |
651 | }, | |
652 | }, | |
653 | }, | |
654 | }, | |
655 | "apigateway": service{ | |
656 | ||
657 | Endpoints: endpoints{ | |
658 | "af-south-1": endpoint{}, | |
659 | "ap-east-1": endpoint{}, | |
660 | "ap-northeast-1": endpoint{}, | |
661 | "ap-northeast-2": endpoint{}, | |
781 | "ap-northeast-3": endpoint{}, | |
662 | 782 | "ap-south-1": endpoint{}, |
663 | 783 | "ap-southeast-1": endpoint{}, |
664 | 784 | "ap-southeast-2": endpoint{}, |
677 | 797 | "us-west-2": endpoint{}, |
678 | 798 | }, |
679 | 799 | }, |
680 | "app-integrations": service{ | |
681 | ||
682 | Endpoints: endpoints{ | |
683 | "ap-northeast-1": endpoint{}, | |
684 | "ap-southeast-1": endpoint{}, | |
685 | "ap-southeast-2": endpoint{}, | |
686 | "eu-central-1": endpoint{}, | |
687 | "eu-west-2": endpoint{}, | |
688 | "us-east-1": endpoint{}, | |
689 | "us-west-2": endpoint{}, | |
690 | }, | |
691 | }, | |
692 | "appflow": service{ | |
693 | ||
694 | Endpoints: endpoints{ | |
695 | "ap-northeast-1": endpoint{}, | |
696 | "ap-northeast-2": endpoint{}, | |
697 | "ap-south-1": endpoint{}, | |
698 | "ap-southeast-1": endpoint{}, | |
699 | "ap-southeast-2": endpoint{}, | |
700 | "ca-central-1": endpoint{}, | |
701 | "eu-central-1": endpoint{}, | |
702 | "eu-west-1": endpoint{}, | |
703 | "eu-west-2": endpoint{}, | |
704 | "eu-west-3": endpoint{}, | |
705 | "sa-east-1": endpoint{}, | |
706 | "us-east-1": endpoint{}, | |
707 | "us-east-2": endpoint{}, | |
708 | "us-west-1": endpoint{}, | |
709 | "us-west-2": endpoint{}, | |
710 | }, | |
711 | }, | |
712 | "application-autoscaling": service{ | |
713 | Defaults: endpoint{ | |
714 | Protocols: []string{"http", "https"}, | |
715 | }, | |
800 | "appmesh": service{ | |
801 | ||
716 | 802 | Endpoints: endpoints{ |
717 | 803 | "af-south-1": endpoint{}, |
718 | 804 | "ap-east-1": endpoint{}, |
736 | 822 | "us-west-2": endpoint{}, |
737 | 823 | }, |
738 | 824 | }, |
739 | "appmesh": service{ | |
825 | "appstream2": service{ | |
826 | Defaults: endpoint{ | |
827 | Protocols: []string{"https"}, | |
828 | CredentialScope: credentialScope{ | |
829 | Service: "appstream", | |
830 | }, | |
831 | }, | |
832 | Endpoints: endpoints{ | |
833 | "ap-northeast-1": endpoint{}, | |
834 | "ap-northeast-2": endpoint{}, | |
835 | "ap-south-1": endpoint{}, | |
836 | "ap-southeast-1": endpoint{}, | |
837 | "ap-southeast-2": endpoint{}, | |
838 | "eu-central-1": endpoint{}, | |
839 | "eu-west-1": endpoint{}, | |
840 | "fips": endpoint{ | |
841 | Hostname: "appstream2-fips.us-west-2.amazonaws.com", | |
842 | CredentialScope: credentialScope{ | |
843 | Region: "us-west-2", | |
844 | }, | |
845 | }, | |
846 | "us-east-1": endpoint{}, | |
847 | "us-west-2": endpoint{}, | |
848 | }, | |
849 | }, | |
850 | "appsync": service{ | |
740 | 851 | |
741 | 852 | Endpoints: endpoints{ |
742 | 853 | "ap-east-1": endpoint{}, |
760 | 871 | "us-west-2": endpoint{}, |
761 | 872 | }, |
762 | 873 | }, |
763 | "appstream2": service{ | |
874 | "athena": service{ | |
875 | ||
876 | Endpoints: endpoints{ | |
877 | "af-south-1": endpoint{}, | |
878 | "ap-east-1": endpoint{}, | |
879 | "ap-northeast-1": endpoint{}, | |
880 | "ap-northeast-2": endpoint{}, | |
881 | "ap-south-1": endpoint{}, | |
882 | "ap-southeast-1": endpoint{}, | |
883 | "ap-southeast-2": endpoint{}, | |
884 | "ca-central-1": endpoint{}, | |
885 | "eu-central-1": endpoint{}, | |
886 | "eu-north-1": endpoint{}, | |
887 | "eu-south-1": endpoint{}, | |
888 | "eu-west-1": endpoint{}, | |
889 | "eu-west-2": endpoint{}, | |
890 | "eu-west-3": endpoint{}, | |
891 | "fips-us-east-1": endpoint{ | |
892 | Hostname: "athena-fips.us-east-1.amazonaws.com", | |
893 | CredentialScope: credentialScope{ | |
894 | Region: "us-east-1", | |
895 | }, | |
896 | }, | |
897 | "fips-us-east-2": endpoint{ | |
898 | Hostname: "athena-fips.us-east-2.amazonaws.com", | |
899 | CredentialScope: credentialScope{ | |
900 | Region: "us-east-2", | |
901 | }, | |
902 | }, | |
903 | "fips-us-west-1": endpoint{ | |
904 | Hostname: "athena-fips.us-west-1.amazonaws.com", | |
905 | CredentialScope: credentialScope{ | |
906 | Region: "us-west-1", | |
907 | }, | |
908 | }, | |
909 | "fips-us-west-2": endpoint{ | |
910 | Hostname: "athena-fips.us-west-2.amazonaws.com", | |
911 | CredentialScope: credentialScope{ | |
912 | Region: "us-west-2", | |
913 | }, | |
914 | }, | |
915 | "me-south-1": endpoint{}, | |
916 | "sa-east-1": endpoint{}, | |
917 | "us-east-1": endpoint{}, | |
918 | "us-east-2": endpoint{}, | |
919 | "us-west-1": endpoint{}, | |
920 | "us-west-2": endpoint{}, | |
921 | }, | |
922 | }, | |
923 | "autoscaling": service{ | |
764 | 924 | Defaults: endpoint{ |
765 | Protocols: []string{"https"}, | |
766 | CredentialScope: credentialScope{ | |
767 | Service: "appstream", | |
768 | }, | |
769 | }, | |
770 | Endpoints: endpoints{ | |
771 | "ap-northeast-1": endpoint{}, | |
772 | "ap-northeast-2": endpoint{}, | |
773 | "ap-south-1": endpoint{}, | |
774 | "ap-southeast-1": endpoint{}, | |
775 | "ap-southeast-2": endpoint{}, | |
776 | "eu-central-1": endpoint{}, | |
777 | "eu-west-1": endpoint{}, | |
778 | "fips": endpoint{ | |
779 | Hostname: "appstream2-fips.us-west-2.amazonaws.com", | |
780 | CredentialScope: credentialScope{ | |
781 | Region: "us-west-2", | |
782 | }, | |
783 | }, | |
784 | "us-east-1": endpoint{}, | |
785 | "us-west-2": endpoint{}, | |
786 | }, | |
787 | }, | |
788 | "appsync": service{ | |
789 | ||
790 | Endpoints: endpoints{ | |
925 | Protocols: []string{"http", "https"}, | |
926 | }, | |
927 | Endpoints: endpoints{ | |
928 | "af-south-1": endpoint{}, | |
791 | 929 | "ap-east-1": endpoint{}, |
792 | 930 | "ap-northeast-1": endpoint{}, |
793 | 931 | "ap-northeast-2": endpoint{}, |
932 | "ap-northeast-3": endpoint{}, | |
794 | 933 | "ap-south-1": endpoint{}, |
795 | 934 | "ap-southeast-1": endpoint{}, |
796 | 935 | "ap-southeast-2": endpoint{}, |
809 | 948 | "us-west-2": endpoint{}, |
810 | 949 | }, |
811 | 950 | }, |
812 | "athena": service{ | |
813 | ||
951 | "autoscaling-plans": service{ | |
952 | Defaults: endpoint{ | |
953 | Protocols: []string{"http", "https"}, | |
954 | }, | |
814 | 955 | Endpoints: endpoints{ |
815 | 956 | "af-south-1": endpoint{}, |
816 | 957 | "ap-east-1": endpoint{}, |
834 | 975 | "us-west-2": endpoint{}, |
835 | 976 | }, |
836 | 977 | }, |
837 | "autoscaling": service{ | |
838 | Defaults: endpoint{ | |
839 | Protocols: []string{"http", "https"}, | |
840 | }, | |
978 | "backup": service{ | |
979 | ||
841 | 980 | Endpoints: endpoints{ |
842 | 981 | "af-south-1": endpoint{}, |
843 | 982 | "ap-east-1": endpoint{}, |
861 | 1000 | "us-west-2": endpoint{}, |
862 | 1001 | }, |
863 | 1002 | }, |
864 | "autoscaling-plans": service{ | |
1003 | "batch": service{ | |
1004 | ||
1005 | Endpoints: endpoints{ | |
1006 | "ap-east-1": endpoint{}, | |
1007 | "ap-northeast-1": endpoint{}, | |
1008 | "ap-northeast-2": endpoint{}, | |
1009 | "ap-south-1": endpoint{}, | |
1010 | "ap-southeast-1": endpoint{}, | |
1011 | "ap-southeast-2": endpoint{}, | |
1012 | "ca-central-1": endpoint{}, | |
1013 | "eu-central-1": endpoint{}, | |
1014 | "eu-north-1": endpoint{}, | |
1015 | "eu-south-1": endpoint{}, | |
1016 | "eu-west-1": endpoint{}, | |
1017 | "eu-west-2": endpoint{}, | |
1018 | "eu-west-3": endpoint{}, | |
1019 | "fips-us-east-1": endpoint{ | |
1020 | Hostname: "fips.batch.us-east-1.amazonaws.com", | |
1021 | CredentialScope: credentialScope{ | |
1022 | Region: "us-east-1", | |
1023 | }, | |
1024 | }, | |
1025 | "fips-us-east-2": endpoint{ | |
1026 | Hostname: "fips.batch.us-east-2.amazonaws.com", | |
1027 | CredentialScope: credentialScope{ | |
1028 | Region: "us-east-2", | |
1029 | }, | |
1030 | }, | |
1031 | "fips-us-west-1": endpoint{ | |
1032 | Hostname: "fips.batch.us-west-1.amazonaws.com", | |
1033 | CredentialScope: credentialScope{ | |
1034 | Region: "us-west-1", | |
1035 | }, | |
1036 | }, | |
1037 | "fips-us-west-2": endpoint{ | |
1038 | Hostname: "fips.batch.us-west-2.amazonaws.com", | |
1039 | CredentialScope: credentialScope{ | |
1040 | Region: "us-west-2", | |
1041 | }, | |
1042 | }, | |
1043 | "me-south-1": endpoint{}, | |
1044 | "sa-east-1": endpoint{}, | |
1045 | "us-east-1": endpoint{}, | |
1046 | "us-east-2": endpoint{}, | |
1047 | "us-west-1": endpoint{}, | |
1048 | "us-west-2": endpoint{}, | |
1049 | }, | |
1050 | }, | |
1051 | "budgets": service{ | |
1052 | PartitionEndpoint: "aws-global", | |
1053 | IsRegionalized: boxedFalse, | |
1054 | ||
1055 | Endpoints: endpoints{ | |
1056 | "aws-global": endpoint{ | |
1057 | Hostname: "budgets.amazonaws.com", | |
1058 | CredentialScope: credentialScope{ | |
1059 | Region: "us-east-1", | |
1060 | }, | |
1061 | }, | |
1062 | }, | |
1063 | }, | |
1064 | "ce": service{ | |
1065 | PartitionEndpoint: "aws-global", | |
1066 | IsRegionalized: boxedFalse, | |
1067 | ||
1068 | Endpoints: endpoints{ | |
1069 | "aws-global": endpoint{ | |
1070 | Hostname: "ce.us-east-1.amazonaws.com", | |
1071 | CredentialScope: credentialScope{ | |
1072 | Region: "us-east-1", | |
1073 | }, | |
1074 | }, | |
1075 | }, | |
1076 | }, | |
1077 | "chime": service{ | |
1078 | PartitionEndpoint: "aws-global", | |
1079 | IsRegionalized: boxedFalse, | |
865 | 1080 | Defaults: endpoint{ |
866 | Protocols: []string{"http", "https"}, | |
867 | }, | |
868 | Endpoints: endpoints{ | |
869 | "af-south-1": endpoint{}, | |
1081 | Protocols: []string{"https"}, | |
1082 | }, | |
1083 | Endpoints: endpoints{ | |
1084 | "aws-global": endpoint{ | |
1085 | Hostname: "chime.us-east-1.amazonaws.com", | |
1086 | Protocols: []string{"https"}, | |
1087 | CredentialScope: credentialScope{ | |
1088 | Region: "us-east-1", | |
1089 | }, | |
1090 | }, | |
1091 | }, | |
1092 | }, | |
1093 | "cloud9": service{ | |
1094 | ||
1095 | Endpoints: endpoints{ | |
870 | 1096 | "ap-east-1": endpoint{}, |
871 | 1097 | "ap-northeast-1": endpoint{}, |
872 | 1098 | "ap-northeast-2": endpoint{}, |
888 | 1114 | "us-west-2": endpoint{}, |
889 | 1115 | }, |
890 | 1116 | }, |
891 | "backup": service{ | |
892 | ||
1117 | "clouddirectory": service{ | |
1118 | ||
1119 | Endpoints: endpoints{ | |
1120 | "ap-southeast-1": endpoint{}, | |
1121 | "ap-southeast-2": endpoint{}, | |
1122 | "ca-central-1": endpoint{}, | |
1123 | "eu-central-1": endpoint{}, | |
1124 | "eu-west-1": endpoint{}, | |
1125 | "eu-west-2": endpoint{}, | |
1126 | "us-east-1": endpoint{}, | |
1127 | "us-east-2": endpoint{}, | |
1128 | "us-west-2": endpoint{}, | |
1129 | }, | |
1130 | }, | |
1131 | "cloudformation": service{ | |
1132 | ||
1133 | Endpoints: endpoints{ | |
1134 | "af-south-1": endpoint{}, | |
1135 | "ap-east-1": endpoint{}, | |
1136 | "ap-northeast-1": endpoint{}, | |
1137 | "ap-northeast-2": endpoint{}, | |
1138 | "ap-northeast-3": endpoint{}, | |
1139 | "ap-south-1": endpoint{}, | |
1140 | "ap-southeast-1": endpoint{}, | |
1141 | "ap-southeast-2": endpoint{}, | |
1142 | "ca-central-1": endpoint{}, | |
1143 | "eu-central-1": endpoint{}, | |
1144 | "eu-north-1": endpoint{}, | |
1145 | "eu-south-1": endpoint{}, | |
1146 | "eu-west-1": endpoint{}, | |
1147 | "eu-west-2": endpoint{}, | |
1148 | "eu-west-3": endpoint{}, | |
1149 | "me-south-1": endpoint{}, | |
1150 | "sa-east-1": endpoint{}, | |
1151 | "us-east-1": endpoint{}, | |
1152 | "us-east-1-fips": endpoint{ | |
1153 | Hostname: "cloudformation-fips.us-east-1.amazonaws.com", | |
1154 | CredentialScope: credentialScope{ | |
1155 | Region: "us-east-1", | |
1156 | }, | |
1157 | }, | |
1158 | "us-east-2": endpoint{}, | |
1159 | "us-east-2-fips": endpoint{ | |
1160 | Hostname: "cloudformation-fips.us-east-2.amazonaws.com", | |
1161 | CredentialScope: credentialScope{ | |
1162 | Region: "us-east-2", | |
1163 | }, | |
1164 | }, | |
1165 | "us-west-1": endpoint{}, | |
1166 | "us-west-1-fips": endpoint{ | |
1167 | Hostname: "cloudformation-fips.us-west-1.amazonaws.com", | |
1168 | CredentialScope: credentialScope{ | |
1169 | Region: "us-west-1", | |
1170 | }, | |
1171 | }, | |
1172 | "us-west-2": endpoint{}, | |
1173 | "us-west-2-fips": endpoint{ | |
1174 | Hostname: "cloudformation-fips.us-west-2.amazonaws.com", | |
1175 | CredentialScope: credentialScope{ | |
1176 | Region: "us-west-2", | |
1177 | }, | |
1178 | }, | |
1179 | }, | |
1180 | }, | |
1181 | "cloudfront": service{ | |
1182 | PartitionEndpoint: "aws-global", | |
1183 | IsRegionalized: boxedFalse, | |
1184 | ||
1185 | Endpoints: endpoints{ | |
1186 | "aws-global": endpoint{ | |
1187 | Hostname: "cloudfront.amazonaws.com", | |
1188 | Protocols: []string{"http", "https"}, | |
1189 | CredentialScope: credentialScope{ | |
1190 | Region: "us-east-1", | |
1191 | }, | |
1192 | }, | |
1193 | }, | |
1194 | }, | |
1195 | "cloudhsm": service{ | |
1196 | ||
1197 | Endpoints: endpoints{ | |
1198 | "ap-northeast-1": endpoint{}, | |
1199 | "ap-southeast-1": endpoint{}, | |
1200 | "ap-southeast-2": endpoint{}, | |
1201 | "ca-central-1": endpoint{}, | |
1202 | "eu-central-1": endpoint{}, | |
1203 | "eu-west-1": endpoint{}, | |
1204 | "us-east-1": endpoint{}, | |
1205 | "us-east-2": endpoint{}, | |
1206 | "us-west-1": endpoint{}, | |
1207 | "us-west-2": endpoint{}, | |
1208 | }, | |
1209 | }, | |
1210 | "cloudhsmv2": service{ | |
1211 | Defaults: endpoint{ | |
1212 | CredentialScope: credentialScope{ | |
1213 | Service: "cloudhsm", | |
1214 | }, | |
1215 | }, | |
893 | 1216 | Endpoints: endpoints{ |
894 | 1217 | "af-south-1": endpoint{}, |
895 | 1218 | "ap-east-1": endpoint{}, |
913 | 1236 | "us-west-2": endpoint{}, |
914 | 1237 | }, |
915 | 1238 | }, |
916 | "batch": service{ | |
917 | ||
918 | Endpoints: endpoints{ | |
1239 | "cloudsearch": service{ | |
1240 | ||
1241 | Endpoints: endpoints{ | |
1242 | "ap-northeast-1": endpoint{}, | |
1243 | "ap-northeast-2": endpoint{}, | |
1244 | "ap-southeast-1": endpoint{}, | |
1245 | "ap-southeast-2": endpoint{}, | |
1246 | "eu-central-1": endpoint{}, | |
1247 | "eu-west-1": endpoint{}, | |
1248 | "sa-east-1": endpoint{}, | |
1249 | "us-east-1": endpoint{}, | |
1250 | "us-west-1": endpoint{}, | |
1251 | "us-west-2": endpoint{}, | |
1252 | }, | |
1253 | }, | |
1254 | "cloudtrail": service{ | |
1255 | ||
1256 | Endpoints: endpoints{ | |
1257 | "af-south-1": endpoint{}, | |
919 | 1258 | "ap-east-1": endpoint{}, |
920 | 1259 | "ap-northeast-1": endpoint{}, |
921 | 1260 | "ap-northeast-2": endpoint{}, |
930 | 1269 | "eu-west-2": endpoint{}, |
931 | 1270 | "eu-west-3": endpoint{}, |
932 | 1271 | "fips-us-east-1": endpoint{ |
933 | Hostname: "fips.batch.us-east-1.amazonaws.com", | |
1272 | Hostname: "cloudtrail-fips.us-east-1.amazonaws.com", | |
934 | 1273 | CredentialScope: credentialScope{ |
935 | 1274 | Region: "us-east-1", |
936 | 1275 | }, |
937 | 1276 | }, |
938 | 1277 | "fips-us-east-2": endpoint{ |
939 | Hostname: "fips.batch.us-east-2.amazonaws.com", | |
1278 | Hostname: "cloudtrail-fips.us-east-2.amazonaws.com", | |
940 | 1279 | CredentialScope: credentialScope{ |
941 | 1280 | Region: "us-east-2", |
942 | 1281 | }, |
943 | 1282 | }, |
944 | 1283 | "fips-us-west-1": endpoint{ |
945 | Hostname: "fips.batch.us-west-1.amazonaws.com", | |
1284 | Hostname: "cloudtrail-fips.us-west-1.amazonaws.com", | |
946 | 1285 | CredentialScope: credentialScope{ |
947 | 1286 | Region: "us-west-1", |
948 | 1287 | }, |
949 | 1288 | }, |
950 | 1289 | "fips-us-west-2": endpoint{ |
951 | Hostname: "fips.batch.us-west-2.amazonaws.com", | |
1290 | Hostname: "cloudtrail-fips.us-west-2.amazonaws.com", | |
952 | 1291 | CredentialScope: credentialScope{ |
953 | 1292 | Region: "us-west-2", |
954 | 1293 | }, |
961 | 1300 | "us-west-2": endpoint{}, |
962 | 1301 | }, |
963 | 1302 | }, |
964 | "budgets": service{ | |
965 | PartitionEndpoint: "aws-global", | |
966 | IsRegionalized: boxedFalse, | |
967 | ||
968 | Endpoints: endpoints{ | |
969 | "aws-global": endpoint{ | |
970 | Hostname: "budgets.amazonaws.com", | |
971 | CredentialScope: credentialScope{ | |
972 | Region: "us-east-1", | |
973 | }, | |
974 | }, | |
975 | }, | |
976 | }, | |
977 | "ce": service{ | |
978 | PartitionEndpoint: "aws-global", | |
979 | IsRegionalized: boxedFalse, | |
980 | ||
981 | Endpoints: endpoints{ | |
982 | "aws-global": endpoint{ | |
983 | Hostname: "ce.us-east-1.amazonaws.com", | |
984 | CredentialScope: credentialScope{ | |
985 | Region: "us-east-1", | |
986 | }, | |
987 | }, | |
988 | }, | |
989 | }, | |
990 | "chime": service{ | |
991 | PartitionEndpoint: "aws-global", | |
992 | IsRegionalized: boxedFalse, | |
993 | Defaults: endpoint{ | |
994 | Protocols: []string{"https"}, | |
995 | }, | |
996 | Endpoints: endpoints{ | |
997 | "aws-global": endpoint{ | |
998 | Hostname: "chime.us-east-1.amazonaws.com", | |
999 | Protocols: []string{"https"}, | |
1000 | CredentialScope: credentialScope{ | |
1001 | Region: "us-east-1", | |
1002 | }, | |
1003 | }, | |
1004 | }, | |
1005 | }, | |
1006 | "cloud9": service{ | |
1007 | ||
1008 | Endpoints: endpoints{ | |
1009 | "ap-east-1": endpoint{}, | |
1010 | "ap-northeast-1": endpoint{}, | |
1011 | "ap-northeast-2": endpoint{}, | |
1012 | "ap-south-1": endpoint{}, | |
1013 | "ap-southeast-1": endpoint{}, | |
1014 | "ap-southeast-2": endpoint{}, | |
1015 | "ca-central-1": endpoint{}, | |
1303 | "codeartifact": service{ | |
1304 | ||
1305 | Endpoints: endpoints{ | |
1306 | "ap-northeast-1": endpoint{}, | |
1307 | "ap-south-1": endpoint{}, | |
1308 | "ap-southeast-1": endpoint{}, | |
1309 | "ap-southeast-2": endpoint{}, | |
1016 | 1310 | "eu-central-1": endpoint{}, |
1017 | 1311 | "eu-north-1": endpoint{}, |
1018 | "eu-south-1": endpoint{}, | |
1019 | "eu-west-1": endpoint{}, | |
1020 | "eu-west-2": endpoint{}, | |
1021 | "eu-west-3": endpoint{}, | |
1022 | "me-south-1": endpoint{}, | |
1023 | "sa-east-1": endpoint{}, | |
1024 | "us-east-1": endpoint{}, | |
1025 | "us-east-2": endpoint{}, | |
1026 | "us-west-1": endpoint{}, | |
1027 | "us-west-2": endpoint{}, | |
1028 | }, | |
1029 | }, | |
1030 | "clouddirectory": service{ | |
1031 | ||
1032 | Endpoints: endpoints{ | |
1033 | "ap-southeast-1": endpoint{}, | |
1034 | "ap-southeast-2": endpoint{}, | |
1035 | "ca-central-1": endpoint{}, | |
1036 | "eu-central-1": endpoint{}, | |
1037 | "eu-west-1": endpoint{}, | |
1038 | "eu-west-2": endpoint{}, | |
1312 | "eu-west-1": endpoint{}, | |
1039 | 1313 | "us-east-1": endpoint{}, |
1040 | 1314 | "us-east-2": endpoint{}, |
1041 | 1315 | "us-west-2": endpoint{}, |
1042 | 1316 | }, |
1043 | 1317 | }, |
1044 | "cloudformation": service{ | |
1318 | "codebuild": service{ | |
1045 | 1319 | |
1046 | 1320 | Endpoints: endpoints{ |
1047 | 1321 | "af-south-1": endpoint{}, |
1062 | 1336 | "sa-east-1": endpoint{}, |
1063 | 1337 | "us-east-1": endpoint{}, |
1064 | 1338 | "us-east-1-fips": endpoint{ |
1065 | Hostname: "cloudformation-fips.us-east-1.amazonaws.com", | |
1339 | Hostname: "codebuild-fips.us-east-1.amazonaws.com", | |
1066 | 1340 | CredentialScope: credentialScope{ |
1067 | 1341 | Region: "us-east-1", |
1068 | 1342 | }, |
1069 | 1343 | }, |
1070 | 1344 | "us-east-2": endpoint{}, |
1071 | 1345 | "us-east-2-fips": endpoint{ |
1072 | Hostname: "cloudformation-fips.us-east-2.amazonaws.com", | |
1346 | Hostname: "codebuild-fips.us-east-2.amazonaws.com", | |
1073 | 1347 | CredentialScope: credentialScope{ |
1074 | 1348 | Region: "us-east-2", |
1075 | 1349 | }, |
1076 | 1350 | }, |
1077 | 1351 | "us-west-1": endpoint{}, |
1078 | 1352 | "us-west-1-fips": endpoint{ |
1079 | Hostname: "cloudformation-fips.us-west-1.amazonaws.com", | |
1353 | Hostname: "codebuild-fips.us-west-1.amazonaws.com", | |
1080 | 1354 | CredentialScope: credentialScope{ |
1081 | 1355 | Region: "us-west-1", |
1082 | 1356 | }, |
1083 | 1357 | }, |
1084 | 1358 | "us-west-2": endpoint{}, |
1085 | 1359 | "us-west-2-fips": endpoint{ |
1086 | Hostname: "cloudformation-fips.us-west-2.amazonaws.com", | |
1360 | Hostname: "codebuild-fips.us-west-2.amazonaws.com", | |
1087 | 1361 | CredentialScope: credentialScope{ |
1088 | 1362 | Region: "us-west-2", |
1089 | 1363 | }, |
1090 | 1364 | }, |
1091 | 1365 | }, |
1092 | 1366 | }, |
1093 | "cloudfront": service{ | |
1094 | PartitionEndpoint: "aws-global", | |
1095 | IsRegionalized: boxedFalse, | |
1096 | ||
1097 | Endpoints: endpoints{ | |
1098 | "aws-global": endpoint{ | |
1099 | Hostname: "cloudfront.amazonaws.com", | |
1100 | Protocols: []string{"http", "https"}, | |
1101 | CredentialScope: credentialScope{ | |
1102 | Region: "us-east-1", | |
1103 | }, | |
1104 | }, | |
1105 | }, | |
1106 | }, | |
1107 | "cloudhsm": service{ | |
1108 | ||
1109 | Endpoints: endpoints{ | |
1110 | "ap-northeast-1": endpoint{}, | |
1111 | "ap-southeast-1": endpoint{}, | |
1112 | "ap-southeast-2": endpoint{}, | |
1113 | "ca-central-1": endpoint{}, | |
1114 | "eu-central-1": endpoint{}, | |
1115 | "eu-west-1": endpoint{}, | |
1116 | "us-east-1": endpoint{}, | |
1117 | "us-east-2": endpoint{}, | |
1118 | "us-west-1": endpoint{}, | |
1119 | "us-west-2": endpoint{}, | |
1120 | }, | |
1121 | }, | |
1122 | "cloudhsmv2": service{ | |
1123 | Defaults: endpoint{ | |
1124 | CredentialScope: credentialScope{ | |
1125 | Service: "cloudhsm", | |
1126 | }, | |
1127 | }, | |
1128 | Endpoints: endpoints{ | |
1129 | "af-south-1": endpoint{}, | |
1367 | "codecommit": service{ | |
1368 | ||
1369 | Endpoints: endpoints{ | |
1130 | 1370 | "ap-east-1": endpoint{}, |
1131 | 1371 | "ap-northeast-1": endpoint{}, |
1132 | 1372 | "ap-northeast-2": endpoint{}, |
1140 | 1380 | "eu-west-1": endpoint{}, |
1141 | 1381 | "eu-west-2": endpoint{}, |
1142 | 1382 | "eu-west-3": endpoint{}, |
1143 | "me-south-1": endpoint{}, | |
1144 | "sa-east-1": endpoint{}, | |
1145 | "us-east-1": endpoint{}, | |
1146 | "us-east-2": endpoint{}, | |
1147 | "us-west-1": endpoint{}, | |
1148 | "us-west-2": endpoint{}, | |
1149 | }, | |
1150 | }, | |
1151 | "cloudsearch": service{ | |
1152 | ||
1153 | Endpoints: endpoints{ | |
1154 | "ap-northeast-1": endpoint{}, | |
1155 | "ap-northeast-2": endpoint{}, | |
1156 | "ap-southeast-1": endpoint{}, | |
1157 | "ap-southeast-2": endpoint{}, | |
1158 | "eu-central-1": endpoint{}, | |
1159 | "eu-west-1": endpoint{}, | |
1160 | "sa-east-1": endpoint{}, | |
1161 | "us-east-1": endpoint{}, | |
1162 | "us-west-1": endpoint{}, | |
1163 | "us-west-2": endpoint{}, | |
1164 | }, | |
1165 | }, | |
1166 | "cloudtrail": service{ | |
1167 | ||
1168 | Endpoints: endpoints{ | |
1169 | "af-south-1": endpoint{}, | |
1170 | "ap-east-1": endpoint{}, | |
1171 | "ap-northeast-1": endpoint{}, | |
1172 | "ap-northeast-2": endpoint{}, | |
1173 | "ap-south-1": endpoint{}, | |
1174 | "ap-southeast-1": endpoint{}, | |
1175 | "ap-southeast-2": endpoint{}, | |
1176 | "ca-central-1": endpoint{}, | |
1177 | "eu-central-1": endpoint{}, | |
1178 | "eu-north-1": endpoint{}, | |
1179 | "eu-south-1": endpoint{}, | |
1180 | "eu-west-1": endpoint{}, | |
1181 | "eu-west-2": endpoint{}, | |
1182 | "eu-west-3": endpoint{}, | |
1183 | "fips-us-east-1": endpoint{ | |
1184 | Hostname: "cloudtrail-fips.us-east-1.amazonaws.com", | |
1185 | CredentialScope: credentialScope{ | |
1186 | Region: "us-east-1", | |
1187 | }, | |
1188 | }, | |
1189 | "fips-us-east-2": endpoint{ | |
1190 | Hostname: "cloudtrail-fips.us-east-2.amazonaws.com", | |
1191 | CredentialScope: credentialScope{ | |
1192 | Region: "us-east-2", | |
1193 | }, | |
1194 | }, | |
1195 | "fips-us-west-1": endpoint{ | |
1196 | Hostname: "cloudtrail-fips.us-west-1.amazonaws.com", | |
1197 | CredentialScope: credentialScope{ | |
1198 | Region: "us-west-1", | |
1199 | }, | |
1200 | }, | |
1201 | "fips-us-west-2": endpoint{ | |
1202 | Hostname: "cloudtrail-fips.us-west-2.amazonaws.com", | |
1203 | CredentialScope: credentialScope{ | |
1204 | Region: "us-west-2", | |
1383 | "fips": endpoint{ | |
1384 | Hostname: "codecommit-fips.ca-central-1.amazonaws.com", | |
1385 | CredentialScope: credentialScope{ | |
1386 | Region: "ca-central-1", | |
1205 | 1387 | }, |
1206 | 1388 | }, |
1207 | 1389 | "me-south-1": endpoint{}, |
1212 | 1394 | "us-west-2": endpoint{}, |
1213 | 1395 | }, |
1214 | 1396 | }, |
1215 | "codeartifact": service{ | |
1216 | ||
1217 | Endpoints: endpoints{ | |
1218 | "ap-northeast-1": endpoint{}, | |
1219 | "ap-south-1": endpoint{}, | |
1220 | "ap-southeast-1": endpoint{}, | |
1221 | "ap-southeast-2": endpoint{}, | |
1222 | "eu-central-1": endpoint{}, | |
1223 | "eu-north-1": endpoint{}, | |
1224 | "eu-west-1": endpoint{}, | |
1225 | "us-east-1": endpoint{}, | |
1226 | "us-east-2": endpoint{}, | |
1227 | "us-west-2": endpoint{}, | |
1228 | }, | |
1229 | }, | |
1230 | "codebuild": service{ | |
1231 | ||
1232 | Endpoints: endpoints{ | |
1397 | "codedeploy": service{ | |
1398 | ||
1399 | Endpoints: endpoints{ | |
1400 | "af-south-1": endpoint{}, | |
1233 | 1401 | "ap-east-1": endpoint{}, |
1234 | 1402 | "ap-northeast-1": endpoint{}, |
1235 | 1403 | "ap-northeast-2": endpoint{}, |
1404 | "ap-northeast-3": endpoint{}, | |
1236 | 1405 | "ap-south-1": endpoint{}, |
1237 | 1406 | "ap-southeast-1": endpoint{}, |
1238 | 1407 | "ap-southeast-2": endpoint{}, |
1247 | 1416 | "sa-east-1": endpoint{}, |
1248 | 1417 | "us-east-1": endpoint{}, |
1249 | 1418 | "us-east-1-fips": endpoint{ |
1250 | Hostname: "codebuild-fips.us-east-1.amazonaws.com", | |
1419 | Hostname: "codedeploy-fips.us-east-1.amazonaws.com", | |
1251 | 1420 | CredentialScope: credentialScope{ |
1252 | 1421 | Region: "us-east-1", |
1253 | 1422 | }, |
1254 | 1423 | }, |
1255 | 1424 | "us-east-2": endpoint{}, |
1256 | 1425 | "us-east-2-fips": endpoint{ |
1257 | Hostname: "codebuild-fips.us-east-2.amazonaws.com", | |
1426 | Hostname: "codedeploy-fips.us-east-2.amazonaws.com", | |
1258 | 1427 | CredentialScope: credentialScope{ |
1259 | 1428 | Region: "us-east-2", |
1260 | 1429 | }, |
1261 | 1430 | }, |
1262 | 1431 | "us-west-1": endpoint{}, |
1263 | 1432 | "us-west-1-fips": endpoint{ |
1264 | Hostname: "codebuild-fips.us-west-1.amazonaws.com", | |
1433 | Hostname: "codedeploy-fips.us-west-1.amazonaws.com", | |
1265 | 1434 | CredentialScope: credentialScope{ |
1266 | 1435 | Region: "us-west-1", |
1267 | 1436 | }, |
1268 | 1437 | }, |
1269 | 1438 | "us-west-2": endpoint{}, |
1270 | 1439 | "us-west-2-fips": endpoint{ |
1271 | Hostname: "codebuild-fips.us-west-2.amazonaws.com", | |
1440 | Hostname: "codedeploy-fips.us-west-2.amazonaws.com", | |
1272 | 1441 | CredentialScope: credentialScope{ |
1273 | 1442 | Region: "us-west-2", |
1274 | 1443 | }, |
1275 | 1444 | }, |
1276 | 1445 | }, |
1277 | 1446 | }, |
1278 | "codecommit": service{ | |
1447 | "codeguru-reviewer": service{ | |
1448 | ||
1449 | Endpoints: endpoints{ | |
1450 | "ap-northeast-1": endpoint{}, | |
1451 | "ap-southeast-1": endpoint{}, | |
1452 | "ap-southeast-2": endpoint{}, | |
1453 | "eu-central-1": endpoint{}, | |
1454 | "eu-north-1": endpoint{}, | |
1455 | "eu-west-1": endpoint{}, | |
1456 | "eu-west-2": endpoint{}, | |
1457 | "us-east-1": endpoint{}, | |
1458 | "us-east-2": endpoint{}, | |
1459 | "us-west-2": endpoint{}, | |
1460 | }, | |
1461 | }, | |
1462 | "codepipeline": service{ | |
1279 | 1463 | |
1280 | 1464 | Endpoints: endpoints{ |
1281 | 1465 | "ap-east-1": endpoint{}, |
1291 | 1475 | "eu-west-1": endpoint{}, |
1292 | 1476 | "eu-west-2": endpoint{}, |
1293 | 1477 | "eu-west-3": endpoint{}, |
1294 | "fips": endpoint{ | |
1295 | Hostname: "codecommit-fips.ca-central-1.amazonaws.com", | |
1478 | "fips-ca-central-1": endpoint{ | |
1479 | Hostname: "codepipeline-fips.ca-central-1.amazonaws.com", | |
1296 | 1480 | CredentialScope: credentialScope{ |
1297 | 1481 | Region: "ca-central-1", |
1482 | }, | |
1483 | }, | |
1484 | "fips-us-east-1": endpoint{ | |
1485 | Hostname: "codepipeline-fips.us-east-1.amazonaws.com", | |
1486 | CredentialScope: credentialScope{ | |
1487 | Region: "us-east-1", | |
1488 | }, | |
1489 | }, | |
1490 | "fips-us-east-2": endpoint{ | |
1491 | Hostname: "codepipeline-fips.us-east-2.amazonaws.com", | |
1492 | CredentialScope: credentialScope{ | |
1493 | Region: "us-east-2", | |
1494 | }, | |
1495 | }, | |
1496 | "fips-us-west-1": endpoint{ | |
1497 | Hostname: "codepipeline-fips.us-west-1.amazonaws.com", | |
1498 | CredentialScope: credentialScope{ | |
1499 | Region: "us-west-1", | |
1500 | }, | |
1501 | }, | |
1502 | "fips-us-west-2": endpoint{ | |
1503 | Hostname: "codepipeline-fips.us-west-2.amazonaws.com", | |
1504 | CredentialScope: credentialScope{ | |
1505 | Region: "us-west-2", | |
1506 | }, | |
1507 | }, | |
1508 | "sa-east-1": endpoint{}, | |
1509 | "us-east-1": endpoint{}, | |
1510 | "us-east-2": endpoint{}, | |
1511 | "us-west-1": endpoint{}, | |
1512 | "us-west-2": endpoint{}, | |
1513 | }, | |
1514 | }, | |
1515 | "codestar": service{ | |
1516 | ||
1517 | Endpoints: endpoints{ | |
1518 | "ap-northeast-1": endpoint{}, | |
1519 | "ap-northeast-2": endpoint{}, | |
1520 | "ap-southeast-1": endpoint{}, | |
1521 | "ap-southeast-2": endpoint{}, | |
1522 | "ca-central-1": endpoint{}, | |
1523 | "eu-central-1": endpoint{}, | |
1524 | "eu-north-1": endpoint{}, | |
1525 | "eu-west-1": endpoint{}, | |
1526 | "eu-west-2": endpoint{}, | |
1527 | "us-east-1": endpoint{}, | |
1528 | "us-east-2": endpoint{}, | |
1529 | "us-west-1": endpoint{}, | |
1530 | "us-west-2": endpoint{}, | |
1531 | }, | |
1532 | }, | |
1533 | "codestar-connections": service{ | |
1534 | ||
1535 | Endpoints: endpoints{ | |
1536 | "ap-northeast-1": endpoint{}, | |
1537 | "ap-northeast-2": endpoint{}, | |
1538 | "ap-south-1": endpoint{}, | |
1539 | "ap-southeast-1": endpoint{}, | |
1540 | "ap-southeast-2": endpoint{}, | |
1541 | "ca-central-1": endpoint{}, | |
1542 | "eu-central-1": endpoint{}, | |
1543 | "eu-north-1": endpoint{}, | |
1544 | "eu-west-1": endpoint{}, | |
1545 | "eu-west-2": endpoint{}, | |
1546 | "eu-west-3": endpoint{}, | |
1547 | "sa-east-1": endpoint{}, | |
1548 | "us-east-1": endpoint{}, | |
1549 | "us-east-2": endpoint{}, | |
1550 | "us-west-1": endpoint{}, | |
1551 | "us-west-2": endpoint{}, | |
1552 | }, | |
1553 | }, | |
1554 | "cognito-identity": service{ | |
1555 | ||
1556 | Endpoints: endpoints{ | |
1557 | "ap-northeast-1": endpoint{}, | |
1558 | "ap-northeast-2": endpoint{}, | |
1559 | "ap-south-1": endpoint{}, | |
1560 | "ap-southeast-1": endpoint{}, | |
1561 | "ap-southeast-2": endpoint{}, | |
1562 | "ca-central-1": endpoint{}, | |
1563 | "eu-central-1": endpoint{}, | |
1564 | "eu-north-1": endpoint{}, | |
1565 | "eu-west-1": endpoint{}, | |
1566 | "eu-west-2": endpoint{}, | |
1567 | "eu-west-3": endpoint{}, | |
1568 | "fips-us-east-1": endpoint{ | |
1569 | Hostname: "cognito-identity-fips.us-east-1.amazonaws.com", | |
1570 | CredentialScope: credentialScope{ | |
1571 | Region: "us-east-1", | |
1572 | }, | |
1573 | }, | |
1574 | "fips-us-east-2": endpoint{ | |
1575 | Hostname: "cognito-identity-fips.us-east-2.amazonaws.com", | |
1576 | CredentialScope: credentialScope{ | |
1577 | Region: "us-east-2", | |
1578 | }, | |
1579 | }, | |
1580 | "fips-us-west-2": endpoint{ | |
1581 | Hostname: "cognito-identity-fips.us-west-2.amazonaws.com", | |
1582 | CredentialScope: credentialScope{ | |
1583 | Region: "us-west-2", | |
1584 | }, | |
1585 | }, | |
1586 | "sa-east-1": endpoint{}, | |
1587 | "us-east-1": endpoint{}, | |
1588 | "us-east-2": endpoint{}, | |
1589 | "us-west-1": endpoint{}, | |
1590 | "us-west-2": endpoint{}, | |
1591 | }, | |
1592 | }, | |
1593 | "cognito-idp": service{ | |
1594 | ||
1595 | Endpoints: endpoints{ | |
1596 | "ap-northeast-1": endpoint{}, | |
1597 | "ap-northeast-2": endpoint{}, | |
1598 | "ap-south-1": endpoint{}, | |
1599 | "ap-southeast-1": endpoint{}, | |
1600 | "ap-southeast-2": endpoint{}, | |
1601 | "ca-central-1": endpoint{}, | |
1602 | "eu-central-1": endpoint{}, | |
1603 | "eu-north-1": endpoint{}, | |
1604 | "eu-west-1": endpoint{}, | |
1605 | "eu-west-2": endpoint{}, | |
1606 | "eu-west-3": endpoint{}, | |
1607 | "fips-us-east-1": endpoint{ | |
1608 | Hostname: "cognito-idp-fips.us-east-1.amazonaws.com", | |
1609 | CredentialScope: credentialScope{ | |
1610 | Region: "us-east-1", | |
1611 | }, | |
1612 | }, | |
1613 | "fips-us-east-2": endpoint{ | |
1614 | Hostname: "cognito-idp-fips.us-east-2.amazonaws.com", | |
1615 | CredentialScope: credentialScope{ | |
1616 | Region: "us-east-2", | |
1617 | }, | |
1618 | }, | |
1619 | "fips-us-west-1": endpoint{ | |
1620 | Hostname: "cognito-idp-fips.us-west-1.amazonaws.com", | |
1621 | CredentialScope: credentialScope{ | |
1622 | Region: "us-west-1", | |
1623 | }, | |
1624 | }, | |
1625 | "fips-us-west-2": endpoint{ | |
1626 | Hostname: "cognito-idp-fips.us-west-2.amazonaws.com", | |
1627 | CredentialScope: credentialScope{ | |
1628 | Region: "us-west-2", | |
1629 | }, | |
1630 | }, | |
1631 | "sa-east-1": endpoint{}, | |
1632 | "us-east-1": endpoint{}, | |
1633 | "us-east-2": endpoint{}, | |
1634 | "us-west-1": endpoint{}, | |
1635 | "us-west-2": endpoint{}, | |
1636 | }, | |
1637 | }, | |
1638 | "cognito-sync": service{ | |
1639 | ||
1640 | Endpoints: endpoints{ | |
1641 | "ap-northeast-1": endpoint{}, | |
1642 | "ap-northeast-2": endpoint{}, | |
1643 | "ap-south-1": endpoint{}, | |
1644 | "ap-southeast-1": endpoint{}, | |
1645 | "ap-southeast-2": endpoint{}, | |
1646 | "eu-central-1": endpoint{}, | |
1647 | "eu-west-1": endpoint{}, | |
1648 | "eu-west-2": endpoint{}, | |
1649 | "us-east-1": endpoint{}, | |
1650 | "us-east-2": endpoint{}, | |
1651 | "us-west-2": endpoint{}, | |
1652 | }, | |
1653 | }, | |
1654 | "comprehend": service{ | |
1655 | Defaults: endpoint{ | |
1656 | Protocols: []string{"https"}, | |
1657 | }, | |
1658 | Endpoints: endpoints{ | |
1659 | "ap-northeast-1": endpoint{}, | |
1660 | "ap-northeast-2": endpoint{}, | |
1661 | "ap-south-1": endpoint{}, | |
1662 | "ap-southeast-1": endpoint{}, | |
1663 | "ap-southeast-2": endpoint{}, | |
1664 | "ca-central-1": endpoint{}, | |
1665 | "eu-central-1": endpoint{}, | |
1666 | "eu-west-1": endpoint{}, | |
1667 | "eu-west-2": endpoint{}, | |
1668 | "fips-us-east-1": endpoint{ | |
1669 | Hostname: "comprehend-fips.us-east-1.amazonaws.com", | |
1670 | CredentialScope: credentialScope{ | |
1671 | Region: "us-east-1", | |
1672 | }, | |
1673 | }, | |
1674 | "fips-us-east-2": endpoint{ | |
1675 | Hostname: "comprehend-fips.us-east-2.amazonaws.com", | |
1676 | CredentialScope: credentialScope{ | |
1677 | Region: "us-east-2", | |
1678 | }, | |
1679 | }, | |
1680 | "fips-us-west-2": endpoint{ | |
1681 | Hostname: "comprehend-fips.us-west-2.amazonaws.com", | |
1682 | CredentialScope: credentialScope{ | |
1683 | Region: "us-west-2", | |
1684 | }, | |
1685 | }, | |
1686 | "us-east-1": endpoint{}, | |
1687 | "us-east-2": endpoint{}, | |
1688 | "us-west-2": endpoint{}, | |
1689 | }, | |
1690 | }, | |
1691 | "comprehendmedical": service{ | |
1692 | ||
1693 | Endpoints: endpoints{ | |
1694 | "ap-southeast-2": endpoint{}, | |
1695 | "ca-central-1": endpoint{}, | |
1696 | "eu-west-1": endpoint{}, | |
1697 | "eu-west-2": endpoint{}, | |
1698 | "fips-us-east-1": endpoint{ | |
1699 | Hostname: "comprehendmedical-fips.us-east-1.amazonaws.com", | |
1700 | CredentialScope: credentialScope{ | |
1701 | Region: "us-east-1", | |
1702 | }, | |
1703 | }, | |
1704 | "fips-us-east-2": endpoint{ | |
1705 | Hostname: "comprehendmedical-fips.us-east-2.amazonaws.com", | |
1706 | CredentialScope: credentialScope{ | |
1707 | Region: "us-east-2", | |
1708 | }, | |
1709 | }, | |
1710 | "fips-us-west-2": endpoint{ | |
1711 | Hostname: "comprehendmedical-fips.us-west-2.amazonaws.com", | |
1712 | CredentialScope: credentialScope{ | |
1713 | Region: "us-west-2", | |
1714 | }, | |
1715 | }, | |
1716 | "us-east-1": endpoint{}, | |
1717 | "us-east-2": endpoint{}, | |
1718 | "us-west-2": endpoint{}, | |
1719 | }, | |
1720 | }, | |
1721 | "config": service{ | |
1722 | ||
1723 | Endpoints: endpoints{ | |
1724 | "af-south-1": endpoint{}, | |
1725 | "ap-east-1": endpoint{}, | |
1726 | "ap-northeast-1": endpoint{}, | |
1727 | "ap-northeast-2": endpoint{}, | |
1728 | "ap-northeast-3": endpoint{}, | |
1729 | "ap-south-1": endpoint{}, | |
1730 | "ap-southeast-1": endpoint{}, | |
1731 | "ap-southeast-2": endpoint{}, | |
1732 | "ca-central-1": endpoint{}, | |
1733 | "eu-central-1": endpoint{}, | |
1734 | "eu-north-1": endpoint{}, | |
1735 | "eu-south-1": endpoint{}, | |
1736 | "eu-west-1": endpoint{}, | |
1737 | "eu-west-2": endpoint{}, | |
1738 | "eu-west-3": endpoint{}, | |
1739 | "fips-us-east-1": endpoint{ | |
1740 | Hostname: "config-fips.us-east-1.amazonaws.com", | |
1741 | CredentialScope: credentialScope{ | |
1742 | Region: "us-east-1", | |
1743 | }, | |
1744 | }, | |
1745 | "fips-us-east-2": endpoint{ | |
1746 | Hostname: "config-fips.us-east-2.amazonaws.com", | |
1747 | CredentialScope: credentialScope{ | |
1748 | Region: "us-east-2", | |
1749 | }, | |
1750 | }, | |
1751 | "fips-us-west-1": endpoint{ | |
1752 | Hostname: "config-fips.us-west-1.amazonaws.com", | |
1753 | CredentialScope: credentialScope{ | |
1754 | Region: "us-west-1", | |
1755 | }, | |
1756 | }, | |
1757 | "fips-us-west-2": endpoint{ | |
1758 | Hostname: "config-fips.us-west-2.amazonaws.com", | |
1759 | CredentialScope: credentialScope{ | |
1760 | Region: "us-west-2", | |
1298 | 1761 | }, |
1299 | 1762 | }, |
1300 | 1763 | "me-south-1": endpoint{}, |
1305 | 1768 | "us-west-2": endpoint{}, |
1306 | 1769 | }, |
1307 | 1770 | }, |
1308 | "codedeploy": service{ | |
1309 | ||
1310 | Endpoints: endpoints{ | |
1311 | "af-south-1": endpoint{}, | |
1312 | "ap-east-1": endpoint{}, | |
1313 | "ap-northeast-1": endpoint{}, | |
1314 | "ap-northeast-2": endpoint{}, | |
1315 | "ap-south-1": endpoint{}, | |
1316 | "ap-southeast-1": endpoint{}, | |
1317 | "ap-southeast-2": endpoint{}, | |
1318 | "ca-central-1": endpoint{}, | |
1771 | "connect": service{ | |
1772 | ||
1773 | Endpoints: endpoints{ | |
1774 | "ap-northeast-1": endpoint{}, | |
1775 | "ap-southeast-1": endpoint{}, | |
1776 | "ap-southeast-2": endpoint{}, | |
1777 | "eu-central-1": endpoint{}, | |
1778 | "eu-west-2": endpoint{}, | |
1779 | "us-east-1": endpoint{}, | |
1780 | "us-west-2": endpoint{}, | |
1781 | }, | |
1782 | }, | |
1783 | "contact-lens": service{ | |
1784 | ||
1785 | Endpoints: endpoints{ | |
1786 | "ap-northeast-1": endpoint{}, | |
1787 | "ap-southeast-2": endpoint{}, | |
1788 | "eu-central-1": endpoint{}, | |
1789 | "eu-west-2": endpoint{}, | |
1790 | "us-east-1": endpoint{}, | |
1791 | "us-west-2": endpoint{}, | |
1792 | }, | |
1793 | }, | |
1794 | "cur": service{ | |
1795 | ||
1796 | Endpoints: endpoints{ | |
1797 | "us-east-1": endpoint{}, | |
1798 | }, | |
1799 | }, | |
1800 | "data.mediastore": service{ | |
1801 | ||
1802 | Endpoints: endpoints{ | |
1803 | "ap-northeast-1": endpoint{}, | |
1804 | "ap-northeast-2": endpoint{}, | |
1805 | "ap-southeast-2": endpoint{}, | |
1319 | 1806 | "eu-central-1": endpoint{}, |
1320 | 1807 | "eu-north-1": endpoint{}, |
1321 | "eu-south-1": endpoint{}, | |
1322 | "eu-west-1": endpoint{}, | |
1323 | "eu-west-2": endpoint{}, | |
1324 | "eu-west-3": endpoint{}, | |
1325 | "me-south-1": endpoint{}, | |
1326 | "sa-east-1": endpoint{}, | |
1808 | "eu-west-1": endpoint{}, | |
1809 | "eu-west-2": endpoint{}, | |
1327 | 1810 | "us-east-1": endpoint{}, |
1328 | "us-east-1-fips": endpoint{ | |
1329 | Hostname: "codedeploy-fips.us-east-1.amazonaws.com", | |
1330 | CredentialScope: credentialScope{ | |
1331 | Region: "us-east-1", | |
1332 | }, | |
1333 | }, | |
1334 | "us-east-2": endpoint{}, | |
1335 | "us-east-2-fips": endpoint{ | |
1336 | Hostname: "codedeploy-fips.us-east-2.amazonaws.com", | |
1337 | CredentialScope: credentialScope{ | |
1338 | Region: "us-east-2", | |
1339 | }, | |
1340 | }, | |
1341 | "us-west-1": endpoint{}, | |
1342 | "us-west-1-fips": endpoint{ | |
1343 | Hostname: "codedeploy-fips.us-west-1.amazonaws.com", | |
1344 | CredentialScope: credentialScope{ | |
1345 | Region: "us-west-1", | |
1346 | }, | |
1347 | }, | |
1348 | "us-west-2": endpoint{}, | |
1349 | "us-west-2-fips": endpoint{ | |
1350 | Hostname: "codedeploy-fips.us-west-2.amazonaws.com", | |
1351 | CredentialScope: credentialScope{ | |
1352 | Region: "us-west-2", | |
1353 | }, | |
1354 | }, | |
1355 | }, | |
1356 | }, | |
1357 | "codepipeline": service{ | |
1358 | ||
1359 | Endpoints: endpoints{ | |
1360 | "ap-northeast-1": endpoint{}, | |
1361 | "ap-northeast-2": endpoint{}, | |
1362 | "ap-south-1": endpoint{}, | |
1363 | "ap-southeast-1": endpoint{}, | |
1364 | "ap-southeast-2": endpoint{}, | |
1365 | "ca-central-1": endpoint{}, | |
1366 | "eu-central-1": endpoint{}, | |
1367 | "eu-north-1": endpoint{}, | |
1368 | "eu-west-1": endpoint{}, | |
1369 | "eu-west-2": endpoint{}, | |
1370 | "eu-west-3": endpoint{}, | |
1371 | "fips-ca-central-1": endpoint{ | |
1372 | Hostname: "codepipeline-fips.ca-central-1.amazonaws.com", | |
1373 | CredentialScope: credentialScope{ | |
1374 | Region: "ca-central-1", | |
1375 | }, | |
1376 | }, | |
1377 | "fips-us-east-1": endpoint{ | |
1378 | Hostname: "codepipeline-fips.us-east-1.amazonaws.com", | |
1379 | CredentialScope: credentialScope{ | |
1380 | Region: "us-east-1", | |
1381 | }, | |
1382 | }, | |
1383 | "fips-us-east-2": endpoint{ | |
1384 | Hostname: "codepipeline-fips.us-east-2.amazonaws.com", | |
1385 | CredentialScope: credentialScope{ | |
1386 | Region: "us-east-2", | |
1387 | }, | |
1388 | }, | |
1389 | "fips-us-west-1": endpoint{ | |
1390 | Hostname: "codepipeline-fips.us-west-1.amazonaws.com", | |
1391 | CredentialScope: credentialScope{ | |
1392 | Region: "us-west-1", | |
1393 | }, | |
1394 | }, | |
1395 | "fips-us-west-2": endpoint{ | |
1396 | Hostname: "codepipeline-fips.us-west-2.amazonaws.com", | |
1397 | CredentialScope: credentialScope{ | |
1398 | Region: "us-west-2", | |
1399 | }, | |
1400 | }, | |
1401 | "sa-east-1": endpoint{}, | |
1402 | "us-east-1": endpoint{}, | |
1403 | "us-east-2": endpoint{}, | |
1404 | "us-west-1": endpoint{}, | |
1405 | "us-west-2": endpoint{}, | |
1406 | }, | |
1407 | }, | |
1408 | "codestar": service{ | |
1409 | ||
1410 | Endpoints: endpoints{ | |
1411 | "ap-northeast-1": endpoint{}, | |
1412 | "ap-northeast-2": endpoint{}, | |
1413 | "ap-southeast-1": endpoint{}, | |
1414 | "ap-southeast-2": endpoint{}, | |
1415 | "ca-central-1": endpoint{}, | |
1416 | "eu-central-1": endpoint{}, | |
1417 | "eu-north-1": endpoint{}, | |
1811 | "us-west-2": endpoint{}, | |
1812 | }, | |
1813 | }, | |
1814 | "dataexchange": service{ | |
1815 | ||
1816 | Endpoints: endpoints{ | |
1817 | "ap-northeast-1": endpoint{}, | |
1818 | "ap-northeast-2": endpoint{}, | |
1819 | "ap-southeast-1": endpoint{}, | |
1820 | "ap-southeast-2": endpoint{}, | |
1821 | "eu-central-1": endpoint{}, | |
1418 | 1822 | "eu-west-1": endpoint{}, |
1419 | 1823 | "eu-west-2": endpoint{}, |
1420 | 1824 | "us-east-1": endpoint{}, |
1423 | 1827 | "us-west-2": endpoint{}, |
1424 | 1828 | }, |
1425 | 1829 | }, |
1426 | "codestar-connections": service{ | |
1427 | ||
1428 | Endpoints: endpoints{ | |
1830 | "datapipeline": service{ | |
1831 | ||
1832 | Endpoints: endpoints{ | |
1833 | "ap-northeast-1": endpoint{}, | |
1834 | "ap-southeast-2": endpoint{}, | |
1835 | "eu-west-1": endpoint{}, | |
1836 | "us-east-1": endpoint{}, | |
1837 | "us-west-2": endpoint{}, | |
1838 | }, | |
1839 | }, | |
1840 | "datasync": service{ | |
1841 | ||
1842 | Endpoints: endpoints{ | |
1843 | "af-south-1": endpoint{}, | |
1844 | "ap-east-1": endpoint{}, | |
1429 | 1845 | "ap-northeast-1": endpoint{}, |
1430 | 1846 | "ap-northeast-2": endpoint{}, |
1431 | 1847 | "ap-south-1": endpoint{}, |
1434 | 1850 | "ca-central-1": endpoint{}, |
1435 | 1851 | "eu-central-1": endpoint{}, |
1436 | 1852 | "eu-north-1": endpoint{}, |
1853 | "eu-south-1": endpoint{}, | |
1854 | "eu-west-1": endpoint{}, | |
1855 | "eu-west-2": endpoint{}, | |
1856 | "eu-west-3": endpoint{}, | |
1857 | "fips-ca-central-1": endpoint{ | |
1858 | Hostname: "datasync-fips.ca-central-1.amazonaws.com", | |
1859 | CredentialScope: credentialScope{ | |
1860 | Region: "ca-central-1", | |
1861 | }, | |
1862 | }, | |
1863 | "fips-us-east-1": endpoint{ | |
1864 | Hostname: "datasync-fips.us-east-1.amazonaws.com", | |
1865 | CredentialScope: credentialScope{ | |
1866 | Region: "us-east-1", | |
1867 | }, | |
1868 | }, | |
1869 | "fips-us-east-2": endpoint{ | |
1870 | Hostname: "datasync-fips.us-east-2.amazonaws.com", | |
1871 | CredentialScope: credentialScope{ | |
1872 | Region: "us-east-2", | |
1873 | }, | |
1874 | }, | |
1875 | "fips-us-west-1": endpoint{ | |
1876 | Hostname: "datasync-fips.us-west-1.amazonaws.com", | |
1877 | CredentialScope: credentialScope{ | |
1878 | Region: "us-west-1", | |
1879 | }, | |
1880 | }, | |
1881 | "fips-us-west-2": endpoint{ | |
1882 | Hostname: "datasync-fips.us-west-2.amazonaws.com", | |
1883 | CredentialScope: credentialScope{ | |
1884 | Region: "us-west-2", | |
1885 | }, | |
1886 | }, | |
1887 | "me-south-1": endpoint{}, | |
1888 | "sa-east-1": endpoint{}, | |
1889 | "us-east-1": endpoint{}, | |
1890 | "us-east-2": endpoint{}, | |
1891 | "us-west-1": endpoint{}, | |
1892 | "us-west-2": endpoint{}, | |
1893 | }, | |
1894 | }, | |
1895 | "dax": service{ | |
1896 | ||
1897 | Endpoints: endpoints{ | |
1898 | "ap-northeast-1": endpoint{}, | |
1899 | "ap-south-1": endpoint{}, | |
1900 | "ap-southeast-1": endpoint{}, | |
1901 | "ap-southeast-2": endpoint{}, | |
1902 | "eu-central-1": endpoint{}, | |
1437 | 1903 | "eu-west-1": endpoint{}, |
1438 | 1904 | "eu-west-2": endpoint{}, |
1439 | 1905 | "eu-west-3": endpoint{}, |
1444 | 1910 | "us-west-2": endpoint{}, |
1445 | 1911 | }, |
1446 | 1912 | }, |
1447 | "cognito-identity": service{ | |
1448 | ||
1449 | Endpoints: endpoints{ | |
1450 | "ap-northeast-1": endpoint{}, | |
1451 | "ap-northeast-2": endpoint{}, | |
1913 | "devicefarm": service{ | |
1914 | ||
1915 | Endpoints: endpoints{ | |
1916 | "us-west-2": endpoint{}, | |
1917 | }, | |
1918 | }, | |
1919 | "directconnect": service{ | |
1920 | ||
1921 | Endpoints: endpoints{ | |
1922 | "af-south-1": endpoint{}, | |
1923 | "ap-east-1": endpoint{}, | |
1924 | "ap-northeast-1": endpoint{}, | |
1925 | "ap-northeast-2": endpoint{}, | |
1926 | "ap-northeast-3": endpoint{}, | |
1452 | 1927 | "ap-south-1": endpoint{}, |
1453 | 1928 | "ap-southeast-1": endpoint{}, |
1454 | 1929 | "ap-southeast-2": endpoint{}, |
1455 | 1930 | "ca-central-1": endpoint{}, |
1456 | 1931 | "eu-central-1": endpoint{}, |
1457 | 1932 | "eu-north-1": endpoint{}, |
1933 | "eu-south-1": endpoint{}, | |
1458 | 1934 | "eu-west-1": endpoint{}, |
1459 | 1935 | "eu-west-2": endpoint{}, |
1460 | 1936 | "eu-west-3": endpoint{}, |
1461 | 1937 | "fips-us-east-1": endpoint{ |
1462 | Hostname: "cognito-identity-fips.us-east-1.amazonaws.com", | |
1938 | Hostname: "directconnect-fips.us-east-1.amazonaws.com", | |
1463 | 1939 | CredentialScope: credentialScope{ |
1464 | 1940 | Region: "us-east-1", |
1465 | 1941 | }, |
1466 | 1942 | }, |
1467 | 1943 | "fips-us-east-2": endpoint{ |
1468 | Hostname: "cognito-identity-fips.us-east-2.amazonaws.com", | |
1944 | Hostname: "directconnect-fips.us-east-2.amazonaws.com", | |
1469 | 1945 | CredentialScope: credentialScope{ |
1470 | 1946 | Region: "us-east-2", |
1471 | 1947 | }, |
1472 | 1948 | }, |
1949 | "fips-us-west-1": endpoint{ | |
1950 | Hostname: "directconnect-fips.us-west-1.amazonaws.com", | |
1951 | CredentialScope: credentialScope{ | |
1952 | Region: "us-west-1", | |
1953 | }, | |
1954 | }, | |
1473 | 1955 | "fips-us-west-2": endpoint{ |
1474 | Hostname: "cognito-identity-fips.us-west-2.amazonaws.com", | |
1475 | CredentialScope: credentialScope{ | |
1476 | Region: "us-west-2", | |
1477 | }, | |
1478 | }, | |
1479 | "sa-east-1": endpoint{}, | |
1480 | "us-east-1": endpoint{}, | |
1481 | "us-east-2": endpoint{}, | |
1482 | "us-west-1": endpoint{}, | |
1483 | "us-west-2": endpoint{}, | |
1484 | }, | |
1485 | }, | |
1486 | "cognito-idp": service{ | |
1487 | ||
1488 | Endpoints: endpoints{ | |
1489 | "ap-northeast-1": endpoint{}, | |
1490 | "ap-northeast-2": endpoint{}, | |
1491 | "ap-south-1": endpoint{}, | |
1492 | "ap-southeast-1": endpoint{}, | |
1493 | "ap-southeast-2": endpoint{}, | |
1494 | "ca-central-1": endpoint{}, | |
1495 | "eu-central-1": endpoint{}, | |
1496 | "eu-north-1": endpoint{}, | |
1497 | "eu-west-1": endpoint{}, | |
1498 | "eu-west-2": endpoint{}, | |
1499 | "eu-west-3": endpoint{}, | |
1500 | "fips-us-east-1": endpoint{ | |
1501 | Hostname: "cognito-idp-fips.us-east-1.amazonaws.com", | |
1502 | CredentialScope: credentialScope{ | |
1503 | Region: "us-east-1", | |
1504 | }, | |
1505 | }, | |
1506 | "fips-us-east-2": endpoint{ | |
1507 | Hostname: "cognito-idp-fips.us-east-2.amazonaws.com", | |
1508 | CredentialScope: credentialScope{ | |
1509 | Region: "us-east-2", | |
1510 | }, | |
1511 | }, | |
1512 | "fips-us-west-2": endpoint{ | |
1513 | Hostname: "cognito-idp-fips.us-west-2.amazonaws.com", | |
1514 | CredentialScope: credentialScope{ | |
1515 | Region: "us-west-2", | |
1516 | }, | |
1517 | }, | |
1518 | "sa-east-1": endpoint{}, | |
1519 | "us-east-1": endpoint{}, | |
1520 | "us-east-2": endpoint{}, | |
1521 | "us-west-1": endpoint{}, | |
1522 | "us-west-2": endpoint{}, | |
1523 | }, | |
1524 | }, | |
1525 | "cognito-sync": service{ | |
1526 | ||
1527 | Endpoints: endpoints{ | |
1528 | "ap-northeast-1": endpoint{}, | |
1529 | "ap-northeast-2": endpoint{}, | |
1530 | "ap-south-1": endpoint{}, | |
1531 | "ap-southeast-1": endpoint{}, | |
1532 | "ap-southeast-2": endpoint{}, | |
1533 | "eu-central-1": endpoint{}, | |
1534 | "eu-west-1": endpoint{}, | |
1535 | "eu-west-2": endpoint{}, | |
1536 | "us-east-1": endpoint{}, | |
1537 | "us-east-2": endpoint{}, | |
1538 | "us-west-2": endpoint{}, | |
1539 | }, | |
1540 | }, | |
1541 | "comprehend": service{ | |
1542 | Defaults: endpoint{ | |
1543 | Protocols: []string{"https"}, | |
1544 | }, | |
1545 | Endpoints: endpoints{ | |
1546 | "ap-northeast-1": endpoint{}, | |
1547 | "ap-northeast-2": endpoint{}, | |
1548 | "ap-south-1": endpoint{}, | |
1549 | "ap-southeast-1": endpoint{}, | |
1550 | "ap-southeast-2": endpoint{}, | |
1551 | "ca-central-1": endpoint{}, | |
1552 | "eu-central-1": endpoint{}, | |
1553 | "eu-west-1": endpoint{}, | |
1554 | "eu-west-2": endpoint{}, | |
1555 | "fips-us-east-1": endpoint{ | |
1556 | Hostname: "comprehend-fips.us-east-1.amazonaws.com", | |
1557 | CredentialScope: credentialScope{ | |
1558 | Region: "us-east-1", | |
1559 | }, | |
1560 | }, | |
1561 | "fips-us-east-2": endpoint{ | |
1562 | Hostname: "comprehend-fips.us-east-2.amazonaws.com", | |
1563 | CredentialScope: credentialScope{ | |
1564 | Region: "us-east-2", | |
1565 | }, | |
1566 | }, | |
1567 | "fips-us-west-2": endpoint{ | |
1568 | Hostname: "comprehend-fips.us-west-2.amazonaws.com", | |
1569 | CredentialScope: credentialScope{ | |
1570 | Region: "us-west-2", | |
1571 | }, | |
1572 | }, | |
1573 | "us-east-1": endpoint{}, | |
1574 | "us-east-2": endpoint{}, | |
1575 | "us-west-2": endpoint{}, | |
1576 | }, | |
1577 | }, | |
1578 | "comprehendmedical": service{ | |
1579 | ||
1580 | Endpoints: endpoints{ | |
1581 | "ap-southeast-2": endpoint{}, | |
1582 | "ca-central-1": endpoint{}, | |
1583 | "eu-west-1": endpoint{}, | |
1584 | "eu-west-2": endpoint{}, | |
1585 | "fips-us-east-1": endpoint{ | |
1586 | Hostname: "comprehendmedical-fips.us-east-1.amazonaws.com", | |
1587 | CredentialScope: credentialScope{ | |
1588 | Region: "us-east-1", | |
1589 | }, | |
1590 | }, | |
1591 | "fips-us-east-2": endpoint{ | |
1592 | Hostname: "comprehendmedical-fips.us-east-2.amazonaws.com", | |
1593 | CredentialScope: credentialScope{ | |
1594 | Region: "us-east-2", | |
1595 | }, | |
1596 | }, | |
1597 | "fips-us-west-2": endpoint{ | |
1598 | Hostname: "comprehendmedical-fips.us-west-2.amazonaws.com", | |
1599 | CredentialScope: credentialScope{ | |
1600 | Region: "us-west-2", | |
1601 | }, | |
1602 | }, | |
1603 | "us-east-1": endpoint{}, | |
1604 | "us-east-2": endpoint{}, | |
1605 | "us-west-2": endpoint{}, | |
1606 | }, | |
1607 | }, | |
1608 | "config": service{ | |
1609 | ||
1610 | Endpoints: endpoints{ | |
1611 | "af-south-1": endpoint{}, | |
1612 | "ap-east-1": endpoint{}, | |
1613 | "ap-northeast-1": endpoint{}, | |
1614 | "ap-northeast-2": endpoint{}, | |
1615 | "ap-south-1": endpoint{}, | |
1616 | "ap-southeast-1": endpoint{}, | |
1617 | "ap-southeast-2": endpoint{}, | |
1618 | "ca-central-1": endpoint{}, | |
1619 | "eu-central-1": endpoint{}, | |
1620 | "eu-north-1": endpoint{}, | |
1621 | "eu-south-1": endpoint{}, | |
1622 | "eu-west-1": endpoint{}, | |
1623 | "eu-west-2": endpoint{}, | |
1624 | "eu-west-3": endpoint{}, | |
1625 | "fips-us-east-1": endpoint{ | |
1626 | Hostname: "config-fips.us-east-1.amazonaws.com", | |
1627 | CredentialScope: credentialScope{ | |
1628 | Region: "us-east-1", | |
1629 | }, | |
1630 | }, | |
1631 | "fips-us-east-2": endpoint{ | |
1632 | Hostname: "config-fips.us-east-2.amazonaws.com", | |
1633 | CredentialScope: credentialScope{ | |
1634 | Region: "us-east-2", | |
1635 | }, | |
1636 | }, | |
1637 | "fips-us-west-1": endpoint{ | |
1638 | Hostname: "config-fips.us-west-1.amazonaws.com", | |
1639 | CredentialScope: credentialScope{ | |
1640 | Region: "us-west-1", | |
1641 | }, | |
1642 | }, | |
1643 | "fips-us-west-2": endpoint{ | |
1644 | Hostname: "config-fips.us-west-2.amazonaws.com", | |
1956 | Hostname: "directconnect-fips.us-west-2.amazonaws.com", | |
1645 | 1957 | CredentialScope: credentialScope{ |
1646 | 1958 | Region: "us-west-2", |
1647 | 1959 | }, |
1654 | 1966 | "us-west-2": endpoint{}, |
1655 | 1967 | }, |
1656 | 1968 | }, |
1657 | "connect": service{ | |
1658 | ||
1659 | Endpoints: endpoints{ | |
1660 | "ap-northeast-1": endpoint{}, | |
1661 | "ap-southeast-1": endpoint{}, | |
1662 | "ap-southeast-2": endpoint{}, | |
1663 | "eu-central-1": endpoint{}, | |
1969 | "discovery": service{ | |
1970 | ||
1971 | Endpoints: endpoints{ | |
1972 | "ap-northeast-1": endpoint{}, | |
1973 | "ap-southeast-2": endpoint{}, | |
1974 | "eu-central-1": endpoint{}, | |
1975 | "eu-west-1": endpoint{}, | |
1664 | 1976 | "eu-west-2": endpoint{}, |
1665 | 1977 | "us-east-1": endpoint{}, |
1666 | 1978 | "us-west-2": endpoint{}, |
1667 | 1979 | }, |
1668 | 1980 | }, |
1669 | "contact-lens": service{ | |
1670 | ||
1671 | Endpoints: endpoints{ | |
1672 | "ap-southeast-2": endpoint{}, | |
1673 | "us-east-1": endpoint{}, | |
1674 | "us-west-2": endpoint{}, | |
1675 | }, | |
1676 | }, | |
1677 | "cur": service{ | |
1678 | ||
1679 | Endpoints: endpoints{ | |
1680 | "us-east-1": endpoint{}, | |
1681 | }, | |
1682 | }, | |
1683 | "data.mediastore": service{ | |
1684 | ||
1685 | Endpoints: endpoints{ | |
1686 | "ap-northeast-1": endpoint{}, | |
1687 | "ap-northeast-2": endpoint{}, | |
1688 | "ap-southeast-2": endpoint{}, | |
1689 | "eu-central-1": endpoint{}, | |
1690 | "eu-north-1": endpoint{}, | |
1691 | "eu-west-1": endpoint{}, | |
1692 | "eu-west-2": endpoint{}, | |
1693 | "us-east-1": endpoint{}, | |
1694 | "us-west-2": endpoint{}, | |
1695 | }, | |
1696 | }, | |
1697 | "dataexchange": service{ | |
1698 | ||
1699 | Endpoints: endpoints{ | |
1700 | "ap-northeast-1": endpoint{}, | |
1701 | "ap-northeast-2": endpoint{}, | |
1702 | "ap-southeast-1": endpoint{}, | |
1703 | "ap-southeast-2": endpoint{}, | |
1704 | "eu-central-1": endpoint{}, | |
1705 | "eu-west-1": endpoint{}, | |
1706 | "eu-west-2": endpoint{}, | |
1707 | "us-east-1": endpoint{}, | |
1708 | "us-east-2": endpoint{}, | |
1709 | "us-west-1": endpoint{}, | |
1710 | "us-west-2": endpoint{}, | |
1711 | }, | |
1712 | }, | |
1713 | "datapipeline": service{ | |
1714 | ||
1715 | Endpoints: endpoints{ | |
1716 | "ap-northeast-1": endpoint{}, | |
1717 | "ap-southeast-2": endpoint{}, | |
1718 | "eu-west-1": endpoint{}, | |
1719 | "us-east-1": endpoint{}, | |
1720 | "us-west-2": endpoint{}, | |
1721 | }, | |
1722 | }, | |
1723 | "datasync": service{ | |
1981 | "dms": service{ | |
1724 | 1982 | |
1725 | 1983 | Endpoints: endpoints{ |
1726 | 1984 | "af-south-1": endpoint{}, |
1727 | 1985 | "ap-east-1": endpoint{}, |
1728 | 1986 | "ap-northeast-1": endpoint{}, |
1729 | 1987 | "ap-northeast-2": endpoint{}, |
1730 | "ap-south-1": endpoint{}, | |
1731 | "ap-southeast-1": endpoint{}, | |
1732 | "ap-southeast-2": endpoint{}, | |
1733 | "ca-central-1": endpoint{}, | |
1734 | "eu-central-1": endpoint{}, | |
1735 | "eu-north-1": endpoint{}, | |
1736 | "eu-south-1": endpoint{}, | |
1737 | "eu-west-1": endpoint{}, | |
1738 | "eu-west-2": endpoint{}, | |
1739 | "eu-west-3": endpoint{}, | |
1740 | "fips-ca-central-1": endpoint{ | |
1741 | Hostname: "datasync-fips.ca-central-1.amazonaws.com", | |
1742 | CredentialScope: credentialScope{ | |
1743 | Region: "ca-central-1", | |
1744 | }, | |
1745 | }, | |
1746 | "fips-us-east-1": endpoint{ | |
1747 | Hostname: "datasync-fips.us-east-1.amazonaws.com", | |
1748 | CredentialScope: credentialScope{ | |
1749 | Region: "us-east-1", | |
1750 | }, | |
1751 | }, | |
1752 | "fips-us-east-2": endpoint{ | |
1753 | Hostname: "datasync-fips.us-east-2.amazonaws.com", | |
1754 | CredentialScope: credentialScope{ | |
1755 | Region: "us-east-2", | |
1756 | }, | |
1757 | }, | |
1758 | "fips-us-west-1": endpoint{ | |
1759 | Hostname: "datasync-fips.us-west-1.amazonaws.com", | |
1760 | CredentialScope: credentialScope{ | |
1761 | Region: "us-west-1", | |
1762 | }, | |
1763 | }, | |
1764 | "fips-us-west-2": endpoint{ | |
1765 | Hostname: "datasync-fips.us-west-2.amazonaws.com", | |
1766 | CredentialScope: credentialScope{ | |
1767 | Region: "us-west-2", | |
1768 | }, | |
1769 | }, | |
1770 | "me-south-1": endpoint{}, | |
1771 | "sa-east-1": endpoint{}, | |
1772 | "us-east-1": endpoint{}, | |
1773 | "us-east-2": endpoint{}, | |
1774 | "us-west-1": endpoint{}, | |
1775 | "us-west-2": endpoint{}, | |
1776 | }, | |
1777 | }, | |
1778 | "dax": service{ | |
1779 | ||
1780 | Endpoints: endpoints{ | |
1781 | "ap-northeast-1": endpoint{}, | |
1782 | "ap-south-1": endpoint{}, | |
1783 | "ap-southeast-1": endpoint{}, | |
1784 | "ap-southeast-2": endpoint{}, | |
1785 | "eu-central-1": endpoint{}, | |
1786 | "eu-west-1": endpoint{}, | |
1787 | "eu-west-2": endpoint{}, | |
1788 | "eu-west-3": endpoint{}, | |
1789 | "sa-east-1": endpoint{}, | |
1790 | "us-east-1": endpoint{}, | |
1791 | "us-east-2": endpoint{}, | |
1792 | "us-west-1": endpoint{}, | |
1793 | "us-west-2": endpoint{}, | |
1794 | }, | |
1795 | }, | |
1796 | "devicefarm": service{ | |
1797 | ||
1798 | Endpoints: endpoints{ | |
1799 | "us-west-2": endpoint{}, | |
1800 | }, | |
1801 | }, | |
1802 | "directconnect": service{ | |
1803 | ||
1804 | Endpoints: endpoints{ | |
1805 | "af-south-1": endpoint{}, | |
1806 | "ap-east-1": endpoint{}, | |
1807 | "ap-northeast-1": endpoint{}, | |
1808 | "ap-northeast-2": endpoint{}, | |
1809 | "ap-south-1": endpoint{}, | |
1810 | "ap-southeast-1": endpoint{}, | |
1811 | "ap-southeast-2": endpoint{}, | |
1812 | "ca-central-1": endpoint{}, | |
1813 | "eu-central-1": endpoint{}, | |
1814 | "eu-north-1": endpoint{}, | |
1815 | "eu-south-1": endpoint{}, | |
1816 | "eu-west-1": endpoint{}, | |
1817 | "eu-west-2": endpoint{}, | |
1818 | "eu-west-3": endpoint{}, | |
1819 | "fips-us-east-1": endpoint{ | |
1820 | Hostname: "directconnect-fips.us-east-1.amazonaws.com", | |
1821 | CredentialScope: credentialScope{ | |
1822 | Region: "us-east-1", | |
1823 | }, | |
1824 | }, | |
1825 | "fips-us-east-2": endpoint{ | |
1826 | Hostname: "directconnect-fips.us-east-2.amazonaws.com", | |
1827 | CredentialScope: credentialScope{ | |
1828 | Region: "us-east-2", | |
1829 | }, | |
1830 | }, | |
1831 | "fips-us-west-1": endpoint{ | |
1832 | Hostname: "directconnect-fips.us-west-1.amazonaws.com", | |
1833 | CredentialScope: credentialScope{ | |
1834 | Region: "us-west-1", | |
1835 | }, | |
1836 | }, | |
1837 | "fips-us-west-2": endpoint{ | |
1838 | Hostname: "directconnect-fips.us-west-2.amazonaws.com", | |
1839 | CredentialScope: credentialScope{ | |
1840 | Region: "us-west-2", | |
1841 | }, | |
1842 | }, | |
1843 | "me-south-1": endpoint{}, | |
1844 | "sa-east-1": endpoint{}, | |
1845 | "us-east-1": endpoint{}, | |
1846 | "us-east-2": endpoint{}, | |
1847 | "us-west-1": endpoint{}, | |
1848 | "us-west-2": endpoint{}, | |
1849 | }, | |
1850 | }, | |
1851 | "discovery": service{ | |
1852 | ||
1853 | Endpoints: endpoints{ | |
1854 | "ap-northeast-1": endpoint{}, | |
1855 | "ap-southeast-2": endpoint{}, | |
1856 | "eu-central-1": endpoint{}, | |
1857 | "eu-west-1": endpoint{}, | |
1858 | "eu-west-2": endpoint{}, | |
1859 | "us-east-1": endpoint{}, | |
1860 | "us-west-2": endpoint{}, | |
1861 | }, | |
1862 | }, | |
1863 | "dms": service{ | |
1864 | ||
1865 | Endpoints: endpoints{ | |
1866 | "af-south-1": endpoint{}, | |
1867 | "ap-east-1": endpoint{}, | |
1868 | "ap-northeast-1": endpoint{}, | |
1869 | "ap-northeast-2": endpoint{}, | |
1988 | "ap-northeast-3": endpoint{}, | |
1870 | 1989 | "ap-south-1": endpoint{}, |
1871 | 1990 | "ap-southeast-1": endpoint{}, |
1872 | 1991 | "ap-southeast-2": endpoint{}, |
2044 | 2163 | "ap-east-1": endpoint{}, |
2045 | 2164 | "ap-northeast-1": endpoint{}, |
2046 | 2165 | "ap-northeast-2": endpoint{}, |
2166 | "ap-northeast-3": endpoint{}, | |
2047 | 2167 | "ap-south-1": endpoint{}, |
2048 | 2168 | "ap-southeast-1": endpoint{}, |
2049 | 2169 | "ap-southeast-2": endpoint{}, |
2106 | 2226 | "ap-east-1": endpoint{}, |
2107 | 2227 | "ap-northeast-1": endpoint{}, |
2108 | 2228 | "ap-northeast-2": endpoint{}, |
2229 | "ap-northeast-3": endpoint{}, | |
2109 | 2230 | "ap-south-1": endpoint{}, |
2110 | 2231 | "ap-southeast-1": endpoint{}, |
2111 | 2232 | "ap-southeast-2": endpoint{}, |
2163 | 2284 | "ap-east-1": endpoint{}, |
2164 | 2285 | "ap-northeast-1": endpoint{}, |
2165 | 2286 | "ap-northeast-2": endpoint{}, |
2287 | "ap-northeast-3": endpoint{}, | |
2166 | 2288 | "ap-south-1": endpoint{}, |
2167 | 2289 | "ap-southeast-1": endpoint{}, |
2168 | 2290 | "ap-southeast-2": endpoint{}, |
2229 | 2351 | "ap-east-1": endpoint{}, |
2230 | 2352 | "ap-northeast-1": endpoint{}, |
2231 | 2353 | "ap-northeast-2": endpoint{}, |
2354 | "ap-northeast-3": endpoint{}, | |
2232 | 2355 | "ap-south-1": endpoint{}, |
2233 | 2356 | "ap-southeast-1": endpoint{}, |
2234 | 2357 | "ap-southeast-2": endpoint{}, |
2280 | 2403 | "ap-east-1": endpoint{}, |
2281 | 2404 | "ap-northeast-1": endpoint{}, |
2282 | 2405 | "ap-northeast-2": endpoint{}, |
2406 | "ap-northeast-3": endpoint{}, | |
2283 | 2407 | "ap-south-1": endpoint{}, |
2284 | 2408 | "ap-southeast-1": endpoint{}, |
2285 | 2409 | "ap-southeast-2": endpoint{}, |
2329 | 2453 | "ap-east-1": endpoint{}, |
2330 | 2454 | "ap-northeast-1": endpoint{}, |
2331 | 2455 | "ap-northeast-2": endpoint{}, |
2456 | "ap-northeast-3": endpoint{}, | |
2332 | 2457 | "ap-south-1": endpoint{}, |
2333 | 2458 | "ap-southeast-1": endpoint{}, |
2334 | 2459 | "ap-southeast-2": endpoint{}, |
2360 | 2485 | "ap-east-1": endpoint{}, |
2361 | 2486 | "ap-northeast-1": endpoint{}, |
2362 | 2487 | "ap-northeast-2": endpoint{}, |
2488 | "ap-northeast-3": endpoint{}, | |
2363 | 2489 | "ap-south-1": endpoint{}, |
2364 | 2490 | "ap-southeast-1": endpoint{}, |
2365 | 2491 | "ap-southeast-2": endpoint{}, |
2409 | 2535 | "ap-east-1": endpoint{}, |
2410 | 2536 | "ap-northeast-1": endpoint{}, |
2411 | 2537 | "ap-northeast-2": endpoint{}, |
2538 | "ap-northeast-3": endpoint{}, | |
2412 | 2539 | "ap-south-1": endpoint{}, |
2413 | 2540 | "ap-southeast-1": endpoint{}, |
2414 | 2541 | "ap-southeast-2": endpoint{}, |
2441 | 2568 | Hostname: "elasticfilesystem-fips.ap-northeast-2.amazonaws.com", |
2442 | 2569 | CredentialScope: credentialScope{ |
2443 | 2570 | Region: "ap-northeast-2", |
2571 | }, | |
2572 | }, | |
2573 | "fips-ap-northeast-3": endpoint{ | |
2574 | Hostname: "elasticfilesystem-fips.ap-northeast-3.amazonaws.com", | |
2575 | CredentialScope: credentialScope{ | |
2576 | Region: "ap-northeast-3", | |
2444 | 2577 | }, |
2445 | 2578 | }, |
2446 | 2579 | "fips-ap-south-1": endpoint{ |
2556 | 2689 | "ap-east-1": endpoint{}, |
2557 | 2690 | "ap-northeast-1": endpoint{}, |
2558 | 2691 | "ap-northeast-2": endpoint{}, |
2692 | "ap-northeast-3": endpoint{}, | |
2559 | 2693 | "ap-south-1": endpoint{}, |
2560 | 2694 | "ap-southeast-1": endpoint{}, |
2561 | 2695 | "ap-southeast-2": endpoint{}, |
2608 | 2742 | "ap-east-1": endpoint{}, |
2609 | 2743 | "ap-northeast-1": endpoint{}, |
2610 | 2744 | "ap-northeast-2": endpoint{}, |
2745 | "ap-northeast-3": endpoint{}, | |
2611 | 2746 | "ap-south-1": endpoint{}, |
2612 | 2747 | "ap-southeast-1": endpoint{}, |
2613 | 2748 | "ap-southeast-2": endpoint{}, |
2684 | 2819 | "us-west-2": endpoint{}, |
2685 | 2820 | }, |
2686 | 2821 | }, |
2822 | "emr-containers": service{ | |
2823 | ||
2824 | Endpoints: endpoints{ | |
2825 | "ap-northeast-1": endpoint{}, | |
2826 | "ap-northeast-2": endpoint{}, | |
2827 | "ap-south-1": endpoint{}, | |
2828 | "ap-southeast-1": endpoint{}, | |
2829 | "ap-southeast-2": endpoint{}, | |
2830 | "ca-central-1": endpoint{}, | |
2831 | "eu-central-1": endpoint{}, | |
2832 | "eu-west-1": endpoint{}, | |
2833 | "eu-west-2": endpoint{}, | |
2834 | "us-east-1": endpoint{}, | |
2835 | "us-east-2": endpoint{}, | |
2836 | "us-west-1": endpoint{}, | |
2837 | "us-west-2": endpoint{}, | |
2838 | }, | |
2839 | }, | |
2687 | 2840 | "entitlement.marketplace": service{ |
2688 | 2841 | Defaults: endpoint{ |
2689 | 2842 | CredentialScope: credentialScope{ |
2701 | 2854 | "ap-east-1": endpoint{}, |
2702 | 2855 | "ap-northeast-1": endpoint{}, |
2703 | 2856 | "ap-northeast-2": endpoint{}, |
2857 | "ap-northeast-3": endpoint{}, | |
2704 | 2858 | "ap-south-1": endpoint{}, |
2705 | 2859 | "ap-southeast-1": endpoint{}, |
2706 | 2860 | "ap-southeast-2": endpoint{}, |
2732 | 2886 | "ap-east-1": endpoint{}, |
2733 | 2887 | "ap-northeast-1": endpoint{}, |
2734 | 2888 | "ap-northeast-2": endpoint{}, |
2889 | "ap-northeast-3": endpoint{}, | |
2735 | 2890 | "ap-south-1": endpoint{}, |
2736 | 2891 | "ap-southeast-1": endpoint{}, |
2737 | 2892 | "ap-southeast-2": endpoint{}, |
2781 | 2936 | "ap-east-1": endpoint{}, |
2782 | 2937 | "ap-northeast-1": endpoint{}, |
2783 | 2938 | "ap-northeast-2": endpoint{}, |
2939 | "ap-northeast-3": endpoint{}, | |
2784 | 2940 | "ap-south-1": endpoint{}, |
2785 | 2941 | "ap-southeast-1": endpoint{}, |
2786 | 2942 | "ap-southeast-2": endpoint{}, |
2842 | 2998 | "eu-west-1": endpoint{}, |
2843 | 2999 | "eu-west-2": endpoint{}, |
2844 | 3000 | "eu-west-3": endpoint{}, |
3001 | "fips-af-south-1": endpoint{ | |
3002 | Hostname: "fms-fips.af-south-1.amazonaws.com", | |
3003 | CredentialScope: credentialScope{ | |
3004 | Region: "af-south-1", | |
3005 | }, | |
3006 | }, | |
3007 | "fips-ap-east-1": endpoint{ | |
3008 | Hostname: "fms-fips.ap-east-1.amazonaws.com", | |
3009 | CredentialScope: credentialScope{ | |
3010 | Region: "ap-east-1", | |
3011 | }, | |
3012 | }, | |
2845 | 3013 | "fips-ap-northeast-1": endpoint{ |
2846 | 3014 | Hostname: "fms-fips.ap-northeast-1.amazonaws.com", |
2847 | 3015 | CredentialScope: credentialScope{ |
2884 | 3052 | Region: "eu-central-1", |
2885 | 3053 | }, |
2886 | 3054 | }, |
3055 | "fips-eu-south-1": endpoint{ | |
3056 | Hostname: "fms-fips.eu-south-1.amazonaws.com", | |
3057 | CredentialScope: credentialScope{ | |
3058 | Region: "eu-south-1", | |
3059 | }, | |
3060 | }, | |
2887 | 3061 | "fips-eu-west-1": endpoint{ |
2888 | 3062 | Hostname: "fms-fips.eu-west-1.amazonaws.com", |
2889 | 3063 | CredentialScope: credentialScope{ |
2900 | 3074 | Hostname: "fms-fips.eu-west-3.amazonaws.com", |
2901 | 3075 | CredentialScope: credentialScope{ |
2902 | 3076 | Region: "eu-west-3", |
3077 | }, | |
3078 | }, | |
3079 | "fips-me-south-1": endpoint{ | |
3080 | Hostname: "fms-fips.me-south-1.amazonaws.com", | |
3081 | CredentialScope: credentialScope{ | |
3082 | Region: "me-south-1", | |
2903 | 3083 | }, |
2904 | 3084 | }, |
2905 | 3085 | "fips-sa-east-1": endpoint{ |
2973 | 3153 | "fsx": service{ |
2974 | 3154 | |
2975 | 3155 | Endpoints: endpoints{ |
2976 | "ap-east-1": endpoint{}, | |
2977 | "ap-northeast-1": endpoint{}, | |
2978 | "ap-northeast-2": endpoint{}, | |
2979 | "ap-south-1": endpoint{}, | |
2980 | "ap-southeast-1": endpoint{}, | |
2981 | "ap-southeast-2": endpoint{}, | |
2982 | "ca-central-1": endpoint{}, | |
2983 | "eu-central-1": endpoint{}, | |
2984 | "eu-north-1": endpoint{}, | |
2985 | "eu-west-1": endpoint{}, | |
2986 | "eu-west-2": endpoint{}, | |
2987 | "eu-west-3": endpoint{}, | |
2988 | "sa-east-1": endpoint{}, | |
2989 | "us-east-1": endpoint{}, | |
2990 | "us-east-2": endpoint{}, | |
2991 | "us-west-1": endpoint{}, | |
2992 | "us-west-2": endpoint{}, | |
2993 | }, | |
2994 | }, | |
2995 | "gamelift": service{ | |
2996 | ||
2997 | Endpoints: endpoints{ | |
2998 | "ap-northeast-1": endpoint{}, | |
2999 | "ap-northeast-2": endpoint{}, | |
3000 | "ap-south-1": endpoint{}, | |
3001 | "ap-southeast-1": endpoint{}, | |
3002 | "ap-southeast-2": endpoint{}, | |
3003 | "ca-central-1": endpoint{}, | |
3004 | "eu-central-1": endpoint{}, | |
3005 | "eu-west-1": endpoint{}, | |
3006 | "eu-west-2": endpoint{}, | |
3007 | "sa-east-1": endpoint{}, | |
3008 | "us-east-1": endpoint{}, | |
3009 | "us-east-2": endpoint{}, | |
3010 | "us-west-1": endpoint{}, | |
3011 | "us-west-2": endpoint{}, | |
3012 | }, | |
3013 | }, | |
3014 | "glacier": service{ | |
3015 | Defaults: endpoint{ | |
3016 | Protocols: []string{"http", "https"}, | |
3017 | }, | |
3018 | Endpoints: endpoints{ | |
3019 | 3156 | "af-south-1": endpoint{}, |
3020 | 3157 | "ap-east-1": endpoint{}, |
3021 | 3158 | "ap-northeast-1": endpoint{}, |
3030 | 3167 | "eu-west-1": endpoint{}, |
3031 | 3168 | "eu-west-2": endpoint{}, |
3032 | 3169 | "eu-west-3": endpoint{}, |
3033 | "fips-ca-central-1": endpoint{ | |
3034 | Hostname: "glacier-fips.ca-central-1.amazonaws.com", | |
3170 | "fips-prod-ca-central-1": endpoint{ | |
3171 | Hostname: "fsx-fips.ca-central-1.amazonaws.com", | |
3035 | 3172 | CredentialScope: credentialScope{ |
3036 | 3173 | Region: "ca-central-1", |
3037 | 3174 | }, |
3038 | 3175 | }, |
3039 | "fips-us-east-1": endpoint{ | |
3040 | Hostname: "glacier-fips.us-east-1.amazonaws.com", | |
3041 | CredentialScope: credentialScope{ | |
3042 | Region: "us-east-1", | |
3043 | }, | |
3044 | }, | |
3045 | "fips-us-east-2": endpoint{ | |
3046 | Hostname: "glacier-fips.us-east-2.amazonaws.com", | |
3176 | "fips-prod-us-east-1": endpoint{ | |
3177 | Hostname: "fsx-fips.us-east-1.amazonaws.com", | |
3178 | CredentialScope: credentialScope{ | |
3179 | Region: "us-east-1", | |
3180 | }, | |
3181 | }, | |
3182 | "fips-prod-us-east-2": endpoint{ | |
3183 | Hostname: "fsx-fips.us-east-2.amazonaws.com", | |
3047 | 3184 | CredentialScope: credentialScope{ |
3048 | 3185 | Region: "us-east-2", |
3049 | 3186 | }, |
3050 | 3187 | }, |
3051 | "fips-us-west-1": endpoint{ | |
3052 | Hostname: "glacier-fips.us-west-1.amazonaws.com", | |
3188 | "fips-prod-us-west-1": endpoint{ | |
3189 | Hostname: "fsx-fips.us-west-1.amazonaws.com", | |
3053 | 3190 | CredentialScope: credentialScope{ |
3054 | 3191 | Region: "us-west-1", |
3055 | 3192 | }, |
3056 | 3193 | }, |
3057 | "fips-us-west-2": endpoint{ | |
3058 | Hostname: "glacier-fips.us-west-2.amazonaws.com", | |
3194 | "fips-prod-us-west-2": endpoint{ | |
3195 | Hostname: "fsx-fips.us-west-2.amazonaws.com", | |
3059 | 3196 | CredentialScope: credentialScope{ |
3060 | 3197 | Region: "us-west-2", |
3061 | 3198 | }, |
3068 | 3205 | "us-west-2": endpoint{}, |
3069 | 3206 | }, |
3070 | 3207 | }, |
3071 | "glue": service{ | |
3072 | ||
3208 | "gamelift": service{ | |
3209 | ||
3210 | Endpoints: endpoints{ | |
3211 | "ap-northeast-1": endpoint{}, | |
3212 | "ap-northeast-2": endpoint{}, | |
3213 | "ap-south-1": endpoint{}, | |
3214 | "ap-southeast-1": endpoint{}, | |
3215 | "ap-southeast-2": endpoint{}, | |
3216 | "ca-central-1": endpoint{}, | |
3217 | "eu-central-1": endpoint{}, | |
3218 | "eu-west-1": endpoint{}, | |
3219 | "eu-west-2": endpoint{}, | |
3220 | "sa-east-1": endpoint{}, | |
3221 | "us-east-1": endpoint{}, | |
3222 | "us-east-2": endpoint{}, | |
3223 | "us-west-1": endpoint{}, | |
3224 | "us-west-2": endpoint{}, | |
3225 | }, | |
3226 | }, | |
3227 | "glacier": service{ | |
3228 | Defaults: endpoint{ | |
3229 | Protocols: []string{"http", "https"}, | |
3230 | }, | |
3073 | 3231 | Endpoints: endpoints{ |
3074 | 3232 | "af-south-1": endpoint{}, |
3075 | 3233 | "ap-east-1": endpoint{}, |
3076 | 3234 | "ap-northeast-1": endpoint{}, |
3077 | 3235 | "ap-northeast-2": endpoint{}, |
3236 | "ap-northeast-3": endpoint{}, | |
3078 | 3237 | "ap-south-1": endpoint{}, |
3079 | 3238 | "ap-southeast-1": endpoint{}, |
3080 | 3239 | "ap-southeast-2": endpoint{}, |
3085 | 3244 | "eu-west-1": endpoint{}, |
3086 | 3245 | "eu-west-2": endpoint{}, |
3087 | 3246 | "eu-west-3": endpoint{}, |
3247 | "fips-ca-central-1": endpoint{ | |
3248 | Hostname: "glacier-fips.ca-central-1.amazonaws.com", | |
3249 | CredentialScope: credentialScope{ | |
3250 | Region: "ca-central-1", | |
3251 | }, | |
3252 | }, | |
3088 | 3253 | "fips-us-east-1": endpoint{ |
3089 | Hostname: "glue-fips.us-east-1.amazonaws.com", | |
3254 | Hostname: "glacier-fips.us-east-1.amazonaws.com", | |
3090 | 3255 | CredentialScope: credentialScope{ |
3091 | 3256 | Region: "us-east-1", |
3092 | 3257 | }, |
3093 | 3258 | }, |
3094 | 3259 | "fips-us-east-2": endpoint{ |
3095 | Hostname: "glue-fips.us-east-2.amazonaws.com", | |
3260 | Hostname: "glacier-fips.us-east-2.amazonaws.com", | |
3096 | 3261 | CredentialScope: credentialScope{ |
3097 | 3262 | Region: "us-east-2", |
3098 | 3263 | }, |
3099 | 3264 | }, |
3100 | 3265 | "fips-us-west-1": endpoint{ |
3101 | Hostname: "glue-fips.us-west-1.amazonaws.com", | |
3266 | Hostname: "glacier-fips.us-west-1.amazonaws.com", | |
3102 | 3267 | CredentialScope: credentialScope{ |
3103 | 3268 | Region: "us-west-1", |
3104 | 3269 | }, |
3105 | 3270 | }, |
3106 | 3271 | "fips-us-west-2": endpoint{ |
3107 | Hostname: "glue-fips.us-west-2.amazonaws.com", | |
3272 | Hostname: "glacier-fips.us-west-2.amazonaws.com", | |
3108 | 3273 | CredentialScope: credentialScope{ |
3109 | 3274 | Region: "us-west-2", |
3110 | 3275 | }, |
3117 | 3282 | "us-west-2": endpoint{}, |
3118 | 3283 | }, |
3119 | 3284 | }, |
3285 | "glue": service{ | |
3286 | ||
3287 | Endpoints: endpoints{ | |
3288 | "af-south-1": endpoint{}, | |
3289 | "ap-east-1": endpoint{}, | |
3290 | "ap-northeast-1": endpoint{}, | |
3291 | "ap-northeast-2": endpoint{}, | |
3292 | "ap-northeast-3": endpoint{}, | |
3293 | "ap-south-1": endpoint{}, | |
3294 | "ap-southeast-1": endpoint{}, | |
3295 | "ap-southeast-2": endpoint{}, | |
3296 | "ca-central-1": endpoint{}, | |
3297 | "eu-central-1": endpoint{}, | |
3298 | "eu-north-1": endpoint{}, | |
3299 | "eu-south-1": endpoint{}, | |
3300 | "eu-west-1": endpoint{}, | |
3301 | "eu-west-2": endpoint{}, | |
3302 | "eu-west-3": endpoint{}, | |
3303 | "fips-us-east-1": endpoint{ | |
3304 | Hostname: "glue-fips.us-east-1.amazonaws.com", | |
3305 | CredentialScope: credentialScope{ | |
3306 | Region: "us-east-1", | |
3307 | }, | |
3308 | }, | |
3309 | "fips-us-east-2": endpoint{ | |
3310 | Hostname: "glue-fips.us-east-2.amazonaws.com", | |
3311 | CredentialScope: credentialScope{ | |
3312 | Region: "us-east-2", | |
3313 | }, | |
3314 | }, | |
3315 | "fips-us-west-1": endpoint{ | |
3316 | Hostname: "glue-fips.us-west-1.amazonaws.com", | |
3317 | CredentialScope: credentialScope{ | |
3318 | Region: "us-west-1", | |
3319 | }, | |
3320 | }, | |
3321 | "fips-us-west-2": endpoint{ | |
3322 | Hostname: "glue-fips.us-west-2.amazonaws.com", | |
3323 | CredentialScope: credentialScope{ | |
3324 | Region: "us-west-2", | |
3325 | }, | |
3326 | }, | |
3327 | "me-south-1": endpoint{}, | |
3328 | "sa-east-1": endpoint{}, | |
3329 | "us-east-1": endpoint{}, | |
3330 | "us-east-2": endpoint{}, | |
3331 | "us-west-1": endpoint{}, | |
3332 | "us-west-2": endpoint{}, | |
3333 | }, | |
3334 | }, | |
3120 | 3335 | "greengrass": service{ |
3121 | 3336 | IsRegionalized: boxedTrue, |
3122 | 3337 | Defaults: endpoint{ |
3221 | 3436 | Region: "us-east-2", |
3222 | 3437 | }, |
3223 | 3438 | }, |
3439 | }, | |
3440 | }, | |
3441 | "healthlake": service{ | |
3442 | Defaults: endpoint{ | |
3443 | Protocols: []string{"https"}, | |
3444 | }, | |
3445 | Endpoints: endpoints{ | |
3446 | "us-east-1": endpoint{}, | |
3224 | 3447 | }, |
3225 | 3448 | }, |
3226 | 3449 | "honeycode": service{ |
3479 | 3702 | "us-west-2": endpoint{}, |
3480 | 3703 | }, |
3481 | 3704 | }, |
3705 | "iotwireless": service{ | |
3706 | ||
3707 | Endpoints: endpoints{ | |
3708 | "eu-west-1": endpoint{ | |
3709 | Hostname: "api.iotwireless.eu-west-1.amazonaws.com", | |
3710 | CredentialScope: credentialScope{ | |
3711 | Region: "eu-west-1", | |
3712 | }, | |
3713 | }, | |
3714 | "us-east-1": endpoint{ | |
3715 | Hostname: "api.iotwireless.us-east-1.amazonaws.com", | |
3716 | CredentialScope: credentialScope{ | |
3717 | Region: "us-east-1", | |
3718 | }, | |
3719 | }, | |
3720 | }, | |
3721 | }, | |
3482 | 3722 | "kafka": service{ |
3483 | 3723 | |
3484 | 3724 | Endpoints: endpoints{ |
3510 | 3750 | "ap-east-1": endpoint{}, |
3511 | 3751 | "ap-northeast-1": endpoint{}, |
3512 | 3752 | "ap-northeast-2": endpoint{}, |
3753 | "ap-northeast-3": endpoint{}, | |
3513 | 3754 | "ap-south-1": endpoint{}, |
3514 | 3755 | "ap-southeast-1": endpoint{}, |
3515 | 3756 | "ap-southeast-2": endpoint{}, |
3603 | 3844 | "ap-east-1": endpoint{}, |
3604 | 3845 | "ap-northeast-1": endpoint{}, |
3605 | 3846 | "ap-northeast-2": endpoint{}, |
3847 | "ap-northeast-3": endpoint{}, | |
3606 | 3848 | "ap-south-1": endpoint{}, |
3607 | 3849 | "ap-southeast-1": endpoint{}, |
3608 | 3850 | "ap-southeast-2": endpoint{}, |
3624 | 3866 | "lakeformation": service{ |
3625 | 3867 | |
3626 | 3868 | Endpoints: endpoints{ |
3869 | "ap-east-1": endpoint{}, | |
3627 | 3870 | "ap-northeast-1": endpoint{}, |
3628 | 3871 | "ap-northeast-2": endpoint{}, |
3629 | 3872 | "ap-south-1": endpoint{}, |
3656 | 3899 | }, |
3657 | 3900 | "fips-us-west-2": endpoint{ |
3658 | 3901 | Hostname: "lakeformation-fips.us-west-2.amazonaws.com", |
3659 | CredentialScope: credentialScope{ | |
3660 | Region: "us-west-2", | |
3661 | }, | |
3662 | }, | |
3663 | "sa-east-1": endpoint{}, | |
3664 | "us-east-1": endpoint{}, | |
3665 | "us-east-2": endpoint{}, | |
3666 | "us-west-1": endpoint{}, | |
3667 | "us-west-2": endpoint{}, | |
3668 | }, | |
3669 | }, | |
3670 | "lambda": service{ | |
3671 | ||
3672 | Endpoints: endpoints{ | |
3673 | "af-south-1": endpoint{}, | |
3674 | "ap-east-1": endpoint{}, | |
3675 | "ap-northeast-1": endpoint{}, | |
3676 | "ap-northeast-2": endpoint{}, | |
3677 | "ap-south-1": endpoint{}, | |
3678 | "ap-southeast-1": endpoint{}, | |
3679 | "ap-southeast-2": endpoint{}, | |
3680 | "ca-central-1": endpoint{}, | |
3681 | "eu-central-1": endpoint{}, | |
3682 | "eu-north-1": endpoint{}, | |
3683 | "eu-south-1": endpoint{}, | |
3684 | "eu-west-1": endpoint{}, | |
3685 | "eu-west-2": endpoint{}, | |
3686 | "eu-west-3": endpoint{}, | |
3687 | "fips-us-east-1": endpoint{ | |
3688 | Hostname: "lambda-fips.us-east-1.amazonaws.com", | |
3689 | CredentialScope: credentialScope{ | |
3690 | Region: "us-east-1", | |
3691 | }, | |
3692 | }, | |
3693 | "fips-us-east-2": endpoint{ | |
3694 | Hostname: "lambda-fips.us-east-2.amazonaws.com", | |
3695 | CredentialScope: credentialScope{ | |
3696 | Region: "us-east-2", | |
3697 | }, | |
3698 | }, | |
3699 | "fips-us-west-1": endpoint{ | |
3700 | Hostname: "lambda-fips.us-west-1.amazonaws.com", | |
3701 | CredentialScope: credentialScope{ | |
3702 | Region: "us-west-1", | |
3703 | }, | |
3704 | }, | |
3705 | "fips-us-west-2": endpoint{ | |
3706 | Hostname: "lambda-fips.us-west-2.amazonaws.com", | |
3707 | 3902 | CredentialScope: credentialScope{ |
3708 | 3903 | Region: "us-west-2", |
3709 | 3904 | }, |
3716 | 3911 | "us-west-2": endpoint{}, |
3717 | 3912 | }, |
3718 | 3913 | }, |
3719 | "license-manager": service{ | |
3914 | "lambda": service{ | |
3720 | 3915 | |
3721 | 3916 | Endpoints: endpoints{ |
3722 | 3917 | "af-south-1": endpoint{}, |
3723 | 3918 | "ap-east-1": endpoint{}, |
3724 | 3919 | "ap-northeast-1": endpoint{}, |
3725 | 3920 | "ap-northeast-2": endpoint{}, |
3921 | "ap-northeast-3": endpoint{}, | |
3726 | 3922 | "ap-south-1": endpoint{}, |
3727 | 3923 | "ap-southeast-1": endpoint{}, |
3728 | 3924 | "ap-southeast-2": endpoint{}, |
3734 | 3930 | "eu-west-2": endpoint{}, |
3735 | 3931 | "eu-west-3": endpoint{}, |
3736 | 3932 | "fips-us-east-1": endpoint{ |
3737 | Hostname: "license-manager-fips.us-east-1.amazonaws.com", | |
3933 | Hostname: "lambda-fips.us-east-1.amazonaws.com", | |
3738 | 3934 | CredentialScope: credentialScope{ |
3739 | 3935 | Region: "us-east-1", |
3740 | 3936 | }, |
3741 | 3937 | }, |
3742 | 3938 | "fips-us-east-2": endpoint{ |
3743 | Hostname: "license-manager-fips.us-east-2.amazonaws.com", | |
3939 | Hostname: "lambda-fips.us-east-2.amazonaws.com", | |
3744 | 3940 | CredentialScope: credentialScope{ |
3745 | 3941 | Region: "us-east-2", |
3746 | 3942 | }, |
3747 | 3943 | }, |
3748 | 3944 | "fips-us-west-1": endpoint{ |
3749 | Hostname: "license-manager-fips.us-west-1.amazonaws.com", | |
3945 | Hostname: "lambda-fips.us-west-1.amazonaws.com", | |
3750 | 3946 | CredentialScope: credentialScope{ |
3751 | 3947 | Region: "us-west-1", |
3752 | 3948 | }, |
3753 | 3949 | }, |
3754 | 3950 | "fips-us-west-2": endpoint{ |
3755 | Hostname: "license-manager-fips.us-west-2.amazonaws.com", | |
3951 | Hostname: "lambda-fips.us-west-2.amazonaws.com", | |
3756 | 3952 | CredentialScope: credentialScope{ |
3757 | 3953 | Region: "us-west-2", |
3758 | 3954 | }, |
3765 | 3961 | "us-west-2": endpoint{}, |
3766 | 3962 | }, |
3767 | 3963 | }, |
3768 | "lightsail": service{ | |
3769 | ||
3770 | Endpoints: endpoints{ | |
3771 | "ap-northeast-1": endpoint{}, | |
3772 | "ap-northeast-2": endpoint{}, | |
3773 | "ap-south-1": endpoint{}, | |
3774 | "ap-southeast-1": endpoint{}, | |
3775 | "ap-southeast-2": endpoint{}, | |
3776 | "ca-central-1": endpoint{}, | |
3777 | "eu-central-1": endpoint{}, | |
3778 | "eu-west-1": endpoint{}, | |
3779 | "eu-west-2": endpoint{}, | |
3780 | "eu-west-3": endpoint{}, | |
3781 | "us-east-1": endpoint{}, | |
3782 | "us-east-2": endpoint{}, | |
3783 | "us-west-2": endpoint{}, | |
3784 | }, | |
3785 | }, | |
3786 | "logs": service{ | |
3964 | "license-manager": service{ | |
3787 | 3965 | |
3788 | 3966 | Endpoints: endpoints{ |
3789 | 3967 | "af-south-1": endpoint{}, |
3801 | 3979 | "eu-west-2": endpoint{}, |
3802 | 3980 | "eu-west-3": endpoint{}, |
3803 | 3981 | "fips-us-east-1": endpoint{ |
3804 | Hostname: "logs-fips.us-east-1.amazonaws.com", | |
3982 | Hostname: "license-manager-fips.us-east-1.amazonaws.com", | |
3805 | 3983 | CredentialScope: credentialScope{ |
3806 | 3984 | Region: "us-east-1", |
3807 | 3985 | }, |
3808 | 3986 | }, |
3809 | 3987 | "fips-us-east-2": endpoint{ |
3810 | Hostname: "logs-fips.us-east-2.amazonaws.com", | |
3988 | Hostname: "license-manager-fips.us-east-2.amazonaws.com", | |
3811 | 3989 | CredentialScope: credentialScope{ |
3812 | 3990 | Region: "us-east-2", |
3813 | 3991 | }, |
3814 | 3992 | }, |
3815 | 3993 | "fips-us-west-1": endpoint{ |
3816 | Hostname: "logs-fips.us-west-1.amazonaws.com", | |
3994 | Hostname: "license-manager-fips.us-west-1.amazonaws.com", | |
3817 | 3995 | CredentialScope: credentialScope{ |
3818 | 3996 | Region: "us-west-1", |
3819 | 3997 | }, |
3820 | 3998 | }, |
3821 | 3999 | "fips-us-west-2": endpoint{ |
3822 | Hostname: "logs-fips.us-west-2.amazonaws.com", | |
4000 | Hostname: "license-manager-fips.us-west-2.amazonaws.com", | |
3823 | 4001 | CredentialScope: credentialScope{ |
3824 | 4002 | Region: "us-west-2", |
3825 | 4003 | }, |
3832 | 4010 | "us-west-2": endpoint{}, |
3833 | 4011 | }, |
3834 | 4012 | }, |
3835 | "lookoutvision": service{ | |
3836 | ||
3837 | Endpoints: endpoints{ | |
3838 | "ap-northeast-1": endpoint{}, | |
3839 | "ap-northeast-2": endpoint{}, | |
3840 | "eu-central-1": endpoint{}, | |
3841 | "eu-west-1": endpoint{}, | |
4013 | "lightsail": service{ | |
4014 | ||
4015 | Endpoints: endpoints{ | |
4016 | "ap-northeast-1": endpoint{}, | |
4017 | "ap-northeast-2": endpoint{}, | |
4018 | "ap-south-1": endpoint{}, | |
4019 | "ap-southeast-1": endpoint{}, | |
4020 | "ap-southeast-2": endpoint{}, | |
4021 | "ca-central-1": endpoint{}, | |
4022 | "eu-central-1": endpoint{}, | |
4023 | "eu-west-1": endpoint{}, | |
4024 | "eu-west-2": endpoint{}, | |
4025 | "eu-west-3": endpoint{}, | |
3842 | 4026 | "us-east-1": endpoint{}, |
3843 | 4027 | "us-east-2": endpoint{}, |
3844 | 4028 | "us-west-2": endpoint{}, |
3845 | 4029 | }, |
3846 | 4030 | }, |
4031 | "logs": service{ | |
4032 | ||
4033 | Endpoints: endpoints{ | |
4034 | "af-south-1": endpoint{}, | |
4035 | "ap-east-1": endpoint{}, | |
4036 | "ap-northeast-1": endpoint{}, | |
4037 | "ap-northeast-2": endpoint{}, | |
4038 | "ap-northeast-3": endpoint{}, | |
4039 | "ap-south-1": endpoint{}, | |
4040 | "ap-southeast-1": endpoint{}, | |
4041 | "ap-southeast-2": endpoint{}, | |
4042 | "ca-central-1": endpoint{}, | |
4043 | "eu-central-1": endpoint{}, | |
4044 | "eu-north-1": endpoint{}, | |
4045 | "eu-south-1": endpoint{}, | |
4046 | "eu-west-1": endpoint{}, | |
4047 | "eu-west-2": endpoint{}, | |
4048 | "eu-west-3": endpoint{}, | |
4049 | "fips-us-east-1": endpoint{ | |
4050 | Hostname: "logs-fips.us-east-1.amazonaws.com", | |
4051 | CredentialScope: credentialScope{ | |
4052 | Region: "us-east-1", | |
4053 | }, | |
4054 | }, | |
4055 | "fips-us-east-2": endpoint{ | |
4056 | Hostname: "logs-fips.us-east-2.amazonaws.com", | |
4057 | CredentialScope: credentialScope{ | |
4058 | Region: "us-east-2", | |
4059 | }, | |
4060 | }, | |
4061 | "fips-us-west-1": endpoint{ | |
4062 | Hostname: "logs-fips.us-west-1.amazonaws.com", | |
4063 | CredentialScope: credentialScope{ | |
4064 | Region: "us-west-1", | |
4065 | }, | |
4066 | }, | |
4067 | "fips-us-west-2": endpoint{ | |
4068 | Hostname: "logs-fips.us-west-2.amazonaws.com", | |
4069 | CredentialScope: credentialScope{ | |
4070 | Region: "us-west-2", | |
4071 | }, | |
4072 | }, | |
4073 | "me-south-1": endpoint{}, | |
4074 | "sa-east-1": endpoint{}, | |
4075 | "us-east-1": endpoint{}, | |
4076 | "us-east-2": endpoint{}, | |
4077 | "us-west-1": endpoint{}, | |
4078 | "us-west-2": endpoint{}, | |
4079 | }, | |
4080 | }, | |
4081 | "lookoutvision": service{ | |
4082 | ||
4083 | Endpoints: endpoints{ | |
4084 | "ap-northeast-1": endpoint{}, | |
4085 | "ap-northeast-2": endpoint{}, | |
4086 | "eu-central-1": endpoint{}, | |
4087 | "eu-west-1": endpoint{}, | |
4088 | "us-east-1": endpoint{}, | |
4089 | "us-east-2": endpoint{}, | |
4090 | "us-west-2": endpoint{}, | |
4091 | }, | |
4092 | }, | |
3847 | 4093 | "machinelearning": service{ |
3848 | 4094 | |
3849 | 4095 | Endpoints: endpoints{ |
3873 | 4119 | "macie2": service{ |
3874 | 4120 | |
3875 | 4121 | Endpoints: endpoints{ |
4122 | "af-south-1": endpoint{}, | |
3876 | 4123 | "ap-east-1": endpoint{}, |
3877 | 4124 | "ap-northeast-1": endpoint{}, |
3878 | 4125 | "ap-northeast-2": endpoint{}, |
3882 | 4129 | "ca-central-1": endpoint{}, |
3883 | 4130 | "eu-central-1": endpoint{}, |
3884 | 4131 | "eu-north-1": endpoint{}, |
4132 | "eu-south-1": endpoint{}, | |
3885 | 4133 | "eu-west-1": endpoint{}, |
3886 | 4134 | "eu-west-2": endpoint{}, |
3887 | 4135 | "eu-west-3": endpoint{}, |
3909 | 4157 | Region: "us-west-2", |
3910 | 4158 | }, |
3911 | 4159 | }, |
3912 | "sa-east-1": endpoint{}, | |
3913 | "us-east-1": endpoint{}, | |
3914 | "us-east-2": endpoint{}, | |
3915 | "us-west-1": endpoint{}, | |
3916 | "us-west-2": endpoint{}, | |
4160 | "me-south-1": endpoint{}, | |
4161 | "sa-east-1": endpoint{}, | |
4162 | "us-east-1": endpoint{}, | |
4163 | "us-east-2": endpoint{}, | |
4164 | "us-west-1": endpoint{}, | |
4165 | "us-west-2": endpoint{}, | |
3917 | 4166 | }, |
3918 | 4167 | }, |
3919 | 4168 | "managedblockchain": service{ |
4086 | 4335 | "ap-east-1": endpoint{}, |
4087 | 4336 | "ap-northeast-1": endpoint{}, |
4088 | 4337 | "ap-northeast-2": endpoint{}, |
4338 | "ap-northeast-3": endpoint{}, | |
4089 | 4339 | "ap-south-1": endpoint{}, |
4090 | 4340 | "ap-southeast-1": endpoint{}, |
4091 | 4341 | "ap-southeast-2": endpoint{}, |
4136 | 4386 | "eu-west-1": endpoint{}, |
4137 | 4387 | "eu-west-2": endpoint{}, |
4138 | 4388 | "us-east-1": endpoint{}, |
4139 | "us-west-2": endpoint{}, | |
4389 | "us-east-1-fips": endpoint{ | |
4390 | Hostname: "models-fips.lex.us-east-1.amazonaws.com", | |
4391 | CredentialScope: credentialScope{ | |
4392 | Region: "us-east-1", | |
4393 | }, | |
4394 | }, | |
4395 | "us-west-2": endpoint{}, | |
4396 | "us-west-2-fips": endpoint{ | |
4397 | Hostname: "models-fips.lex.us-west-2.amazonaws.com", | |
4398 | CredentialScope: credentialScope{ | |
4399 | Region: "us-west-2", | |
4400 | }, | |
4401 | }, | |
4140 | 4402 | }, |
4141 | 4403 | }, |
4142 | 4404 | "monitoring": service{ |
4148 | 4410 | "ap-east-1": endpoint{}, |
4149 | 4411 | "ap-northeast-1": endpoint{}, |
4150 | 4412 | "ap-northeast-2": endpoint{}, |
4413 | "ap-northeast-3": endpoint{}, | |
4151 | 4414 | "ap-south-1": endpoint{}, |
4152 | 4415 | "ap-southeast-1": endpoint{}, |
4153 | 4416 | "ap-southeast-2": endpoint{}, |
4698 | 4961 | Region: "us-west-2", |
4699 | 4962 | }, |
4700 | 4963 | }, |
4964 | }, | |
4965 | }, | |
4966 | "profile": service{ | |
4967 | ||
4968 | Endpoints: endpoints{ | |
4969 | "ap-northeast-1": endpoint{}, | |
4970 | "ap-southeast-1": endpoint{}, | |
4971 | "ap-southeast-2": endpoint{}, | |
4972 | "eu-central-1": endpoint{}, | |
4973 | "eu-west-2": endpoint{}, | |
4974 | "us-east-1": endpoint{}, | |
4975 | "us-west-2": endpoint{}, | |
4701 | 4976 | }, |
4702 | 4977 | }, |
4703 | 4978 | "projects.iot1click": service{ |
4758 | 5033 | "ap-east-1": endpoint{}, |
4759 | 5034 | "ap-northeast-1": endpoint{}, |
4760 | 5035 | "ap-northeast-2": endpoint{}, |
5036 | "ap-northeast-3": endpoint{}, | |
4761 | 5037 | "ap-south-1": endpoint{}, |
4762 | 5038 | "ap-southeast-1": endpoint{}, |
4763 | 5039 | "ap-southeast-2": endpoint{}, |
4815 | 5091 | "ap-east-1": endpoint{}, |
4816 | 5092 | "ap-northeast-1": endpoint{}, |
4817 | 5093 | "ap-northeast-2": endpoint{}, |
5094 | "ap-northeast-3": endpoint{}, | |
4818 | 5095 | "ap-south-1": endpoint{}, |
4819 | 5096 | "ap-southeast-1": endpoint{}, |
4820 | 5097 | "ap-southeast-2": endpoint{}, |
4918 | 5195 | "ap-east-1": endpoint{}, |
4919 | 5196 | "ap-northeast-1": endpoint{}, |
4920 | 5197 | "ap-northeast-2": endpoint{}, |
5198 | "ap-northeast-3": endpoint{}, | |
4921 | 5199 | "ap-south-1": endpoint{}, |
4922 | 5200 | "ap-southeast-1": endpoint{}, |
4923 | 5201 | "ap-southeast-2": endpoint{}, |
5038 | 5316 | "eu-west-1": endpoint{}, |
5039 | 5317 | "eu-west-2": endpoint{}, |
5040 | 5318 | "us-east-1": endpoint{}, |
5041 | "us-west-2": endpoint{}, | |
5319 | "us-east-1-fips": endpoint{ | |
5320 | Hostname: "runtime-fips.lex.us-east-1.amazonaws.com", | |
5321 | CredentialScope: credentialScope{ | |
5322 | Region: "us-east-1", | |
5323 | }, | |
5324 | }, | |
5325 | "us-west-2": endpoint{}, | |
5326 | "us-west-2-fips": endpoint{ | |
5327 | Hostname: "runtime-fips.lex.us-west-2.amazonaws.com", | |
5328 | CredentialScope: credentialScope{ | |
5329 | Region: "us-west-2", | |
5330 | }, | |
5331 | }, | |
5042 | 5332 | }, |
5043 | 5333 | }, |
5044 | 5334 | "runtime.sagemaker": service{ |
5108 | 5398 | SignatureVersions: []string{"s3", "s3v4"}, |
5109 | 5399 | }, |
5110 | 5400 | "ap-northeast-2": endpoint{}, |
5401 | "ap-northeast-3": endpoint{}, | |
5111 | 5402 | "ap-south-1": endpoint{}, |
5112 | 5403 | "ap-southeast-1": endpoint{ |
5113 | 5404 | Hostname: "s3.ap-southeast-1.amazonaws.com", |
5184 | 5475 | Region: "ap-northeast-2", |
5185 | 5476 | }, |
5186 | 5477 | }, |
5478 | "ap-northeast-3": endpoint{ | |
5479 | Hostname: "s3-control.ap-northeast-3.amazonaws.com", | |
5480 | SignatureVersions: []string{"s3v4"}, | |
5481 | CredentialScope: credentialScope{ | |
5482 | Region: "ap-northeast-3", | |
5483 | }, | |
5484 | }, | |
5187 | 5485 | "ap-south-1": endpoint{ |
5188 | 5486 | Hostname: "s3-control.ap-south-1.amazonaws.com", |
5189 | 5487 | SignatureVersions: []string{"s3v4"}, |
5379 | 5677 | "ap-east-1": endpoint{}, |
5380 | 5678 | "ap-northeast-1": endpoint{}, |
5381 | 5679 | "ap-northeast-2": endpoint{}, |
5680 | "ap-northeast-3": endpoint{}, | |
5382 | 5681 | "ap-south-1": endpoint{}, |
5383 | 5682 | "ap-southeast-1": endpoint{}, |
5384 | 5683 | "ap-southeast-2": endpoint{}, |
5583 | 5882 | "servicediscovery": service{ |
5584 | 5883 | |
5585 | 5884 | Endpoints: endpoints{ |
5885 | "af-south-1": endpoint{}, | |
5586 | 5886 | "ap-east-1": endpoint{}, |
5587 | 5887 | "ap-northeast-1": endpoint{}, |
5588 | 5888 | "ap-northeast-2": endpoint{}, |
5592 | 5892 | "ca-central-1": endpoint{}, |
5593 | 5893 | "eu-central-1": endpoint{}, |
5594 | 5894 | "eu-north-1": endpoint{}, |
5895 | "eu-south-1": endpoint{}, | |
5595 | 5896 | "eu-west-1": endpoint{}, |
5596 | 5897 | "eu-west-2": endpoint{}, |
5597 | 5898 | "eu-west-3": endpoint{}, |
5618 | 5919 | "ap-east-1": endpoint{}, |
5619 | 5920 | "ap-northeast-1": endpoint{}, |
5620 | 5921 | "ap-northeast-2": endpoint{}, |
5922 | "ap-northeast-3": endpoint{}, | |
5621 | 5923 | "ap-south-1": endpoint{}, |
5622 | 5924 | "ap-southeast-1": endpoint{}, |
5623 | 5925 | "ap-southeast-2": endpoint{}, |
5728 | 6030 | "ap-east-1": endpoint{}, |
5729 | 6031 | "ap-northeast-1": endpoint{}, |
5730 | 6032 | "ap-northeast-2": endpoint{}, |
6033 | "ap-northeast-3": endpoint{}, | |
5731 | 6034 | "ap-south-1": endpoint{}, |
5732 | 6035 | "ap-southeast-1": endpoint{}, |
5733 | 6036 | "ap-southeast-2": endpoint{}, |
5850 | 6153 | "ap-east-1": endpoint{}, |
5851 | 6154 | "ap-northeast-1": endpoint{}, |
5852 | 6155 | "ap-northeast-2": endpoint{}, |
6156 | "ap-northeast-3": endpoint{}, | |
5853 | 6157 | "ap-south-1": endpoint{}, |
5854 | 6158 | "ap-southeast-1": endpoint{}, |
5855 | 6159 | "ap-southeast-2": endpoint{}, |
5902 | 6206 | "ap-east-1": endpoint{}, |
5903 | 6207 | "ap-northeast-1": endpoint{}, |
5904 | 6208 | "ap-northeast-2": endpoint{}, |
6209 | "ap-northeast-3": endpoint{}, | |
5905 | 6210 | "ap-south-1": endpoint{}, |
5906 | 6211 | "ap-southeast-1": endpoint{}, |
5907 | 6212 | "ap-southeast-2": endpoint{}, |
5953 | 6258 | "ap-east-1": endpoint{}, |
5954 | 6259 | "ap-northeast-1": endpoint{}, |
5955 | 6260 | "ap-northeast-2": endpoint{}, |
6261 | "ap-northeast-3": endpoint{}, | |
5956 | 6262 | "ap-south-1": endpoint{}, |
5957 | 6263 | "ap-southeast-1": endpoint{}, |
5958 | 6264 | "ap-southeast-2": endpoint{}, |
6008 | 6314 | "ap-east-1": endpoint{}, |
6009 | 6315 | "ap-northeast-1": endpoint{}, |
6010 | 6316 | "ap-northeast-2": endpoint{}, |
6317 | "ap-northeast-3": endpoint{}, | |
6011 | 6318 | "ap-south-1": endpoint{}, |
6012 | 6319 | "ap-southeast-1": endpoint{}, |
6013 | 6320 | "ap-southeast-2": endpoint{}, |
6153 | 6460 | "ap-east-1": endpoint{}, |
6154 | 6461 | "ap-northeast-1": endpoint{}, |
6155 | 6462 | "ap-northeast-2": endpoint{}, |
6463 | "ap-northeast-3": endpoint{}, | |
6156 | 6464 | "ap-south-1": endpoint{}, |
6157 | 6465 | "ap-southeast-1": endpoint{}, |
6158 | 6466 | "ap-southeast-2": endpoint{}, |
6220 | 6528 | "ap-east-1": endpoint{}, |
6221 | 6529 | "ap-northeast-1": endpoint{}, |
6222 | 6530 | "ap-northeast-2": endpoint{}, |
6531 | "ap-northeast-3": endpoint{}, | |
6223 | 6532 | "ap-south-1": endpoint{}, |
6224 | 6533 | "ap-southeast-1": endpoint{}, |
6225 | 6534 | "ap-southeast-2": endpoint{}, |
6269 | 6578 | "ap-east-1": endpoint{}, |
6270 | 6579 | "ap-northeast-1": endpoint{}, |
6271 | 6580 | "ap-northeast-2": endpoint{}, |
6581 | "ap-northeast-3": endpoint{}, | |
6272 | 6582 | "ap-south-1": endpoint{}, |
6273 | 6583 | "ap-southeast-1": endpoint{}, |
6274 | 6584 | "ap-southeast-2": endpoint{}, |
6354 | 6664 | "transfer": service{ |
6355 | 6665 | |
6356 | 6666 | Endpoints: endpoints{ |
6667 | "af-south-1": endpoint{}, | |
6668 | "ap-east-1": endpoint{}, | |
6357 | 6669 | "ap-northeast-1": endpoint{}, |
6358 | 6670 | "ap-northeast-2": endpoint{}, |
6359 | 6671 | "ap-south-1": endpoint{}, |
6395 | 6707 | Region: "us-west-2", |
6396 | 6708 | }, |
6397 | 6709 | }, |
6398 | "sa-east-1": endpoint{}, | |
6399 | "us-east-1": endpoint{}, | |
6400 | "us-east-2": endpoint{}, | |
6401 | "us-west-1": endpoint{}, | |
6402 | "us-west-2": endpoint{}, | |
6710 | "me-south-1": endpoint{}, | |
6711 | "sa-east-1": endpoint{}, | |
6712 | "us-east-1": endpoint{}, | |
6713 | "us-east-2": endpoint{}, | |
6714 | "us-west-1": endpoint{}, | |
6715 | "us-west-2": endpoint{}, | |
6403 | 6716 | }, |
6404 | 6717 | }, |
6405 | 6718 | "translate": service{ |
6745 | 7058 | Endpoints: endpoints{ |
6746 | 7059 | "ap-northeast-1": endpoint{}, |
6747 | 7060 | "ap-northeast-2": endpoint{}, |
7061 | "ap-south-1": endpoint{}, | |
6748 | 7062 | "ap-southeast-1": endpoint{}, |
6749 | 7063 | "ap-southeast-2": endpoint{}, |
6750 | 7064 | "ca-central-1": endpoint{}, |
6775 | 7089 | "ap-east-1": endpoint{}, |
6776 | 7090 | "ap-northeast-1": endpoint{}, |
6777 | 7091 | "ap-northeast-2": endpoint{}, |
7092 | "ap-northeast-3": endpoint{}, | |
6778 | 7093 | "ap-south-1": endpoint{}, |
6779 | 7094 | "ap-southeast-1": endpoint{}, |
6780 | 7095 | "ap-southeast-2": endpoint{}, |
6785 | 7100 | "eu-west-1": endpoint{}, |
6786 | 7101 | "eu-west-2": endpoint{}, |
6787 | 7102 | "eu-west-3": endpoint{}, |
6788 | "me-south-1": endpoint{}, | |
6789 | "sa-east-1": endpoint{}, | |
6790 | "us-east-1": endpoint{}, | |
6791 | "us-east-2": endpoint{}, | |
6792 | "us-west-1": endpoint{}, | |
6793 | "us-west-2": endpoint{}, | |
7103 | "fips-us-east-1": endpoint{ | |
7104 | Hostname: "xray-fips.us-east-1.amazonaws.com", | |
7105 | CredentialScope: credentialScope{ | |
7106 | Region: "us-east-1", | |
7107 | }, | |
7108 | }, | |
7109 | "fips-us-east-2": endpoint{ | |
7110 | Hostname: "xray-fips.us-east-2.amazonaws.com", | |
7111 | CredentialScope: credentialScope{ | |
7112 | Region: "us-east-2", | |
7113 | }, | |
7114 | }, | |
7115 | "fips-us-west-1": endpoint{ | |
7116 | Hostname: "xray-fips.us-west-1.amazonaws.com", | |
7117 | CredentialScope: credentialScope{ | |
7118 | Region: "us-west-1", | |
7119 | }, | |
7120 | }, | |
7121 | "fips-us-west-2": endpoint{ | |
7122 | Hostname: "xray-fips.us-west-2.amazonaws.com", | |
7123 | CredentialScope: credentialScope{ | |
7124 | Region: "us-west-2", | |
7125 | }, | |
7126 | }, | |
7127 | "me-south-1": endpoint{}, | |
7128 | "sa-east-1": endpoint{}, | |
7129 | "us-east-1": endpoint{}, | |
7130 | "us-east-2": endpoint{}, | |
7131 | "us-west-1": endpoint{}, | |
7132 | "us-west-2": endpoint{}, | |
6794 | 7133 | }, |
6795 | 7134 | }, |
6796 | 7135 | }, |
7219 | 7558 | "cn-north-1": endpoint{}, |
7220 | 7559 | }, |
7221 | 7560 | }, |
7561 | "guardduty": service{ | |
7562 | IsRegionalized: boxedTrue, | |
7563 | Defaults: endpoint{ | |
7564 | Protocols: []string{"https"}, | |
7565 | }, | |
7566 | Endpoints: endpoints{ | |
7567 | "cn-north-1": endpoint{}, | |
7568 | "cn-northwest-1": endpoint{}, | |
7569 | }, | |
7570 | }, | |
7222 | 7571 | "health": service{ |
7223 | 7572 | |
7224 | 7573 | Endpoints: endpoints{ |
8093 | 8442 | "us-gov-west-1": endpoint{}, |
8094 | 8443 | }, |
8095 | 8444 | }, |
8445 | "connect": service{ | |
8446 | ||
8447 | Endpoints: endpoints{ | |
8448 | "us-gov-west-1": endpoint{}, | |
8449 | }, | |
8450 | }, | |
8096 | 8451 | "datasync": service{ |
8097 | 8452 | |
8098 | 8453 | Endpoints: endpoints{ |
8410 | 8765 | }, |
8411 | 8766 | "fips-us-gov-west-1": endpoint{ |
8412 | 8767 | Hostname: "firehose-fips.us-gov-west-1.amazonaws.com", |
8768 | CredentialScope: credentialScope{ | |
8769 | Region: "us-gov-west-1", | |
8770 | }, | |
8771 | }, | |
8772 | "us-gov-east-1": endpoint{}, | |
8773 | "us-gov-west-1": endpoint{}, | |
8774 | }, | |
8775 | }, | |
8776 | "fsx": service{ | |
8777 | ||
8778 | Endpoints: endpoints{ | |
8779 | "fips-prod-us-gov-east-1": endpoint{ | |
8780 | Hostname: "fsx-fips.us-gov-east-1.amazonaws.com", | |
8781 | CredentialScope: credentialScope{ | |
8782 | Region: "us-gov-east-1", | |
8783 | }, | |
8784 | }, | |
8785 | "fips-prod-us-gov-west-1": endpoint{ | |
8786 | Hostname: "fsx-fips.us-gov-west-1.amazonaws.com", | |
8413 | 8787 | CredentialScope: credentialScope{ |
8414 | 8788 | Region: "us-gov-west-1", |
8415 | 8789 | }, |
8479 | 8853 | Region: "us-gov-east-1", |
8480 | 8854 | }, |
8481 | 8855 | }, |
8482 | "us-gov-east-1": endpoint{}, | |
8856 | "us-gov-east-1": endpoint{ | |
8857 | Hostname: "greengrass.us-gov-east-1.amazonaws.com", | |
8858 | CredentialScope: credentialScope{ | |
8859 | Region: "us-gov-east-1", | |
8860 | }, | |
8861 | }, | |
8483 | 8862 | "us-gov-west-1": endpoint{ |
8484 | 8863 | Hostname: "greengrass.us-gov-west-1.amazonaws.com", |
8485 | 8864 | CredentialScope: credentialScope{ |
8710 | 9089 | "us-gov-west-1": endpoint{}, |
8711 | 9090 | }, |
8712 | 9091 | }, |
9092 | "models.lex": service{ | |
9093 | Defaults: endpoint{ | |
9094 | CredentialScope: credentialScope{ | |
9095 | Service: "lex", | |
9096 | }, | |
9097 | }, | |
9098 | Endpoints: endpoints{ | |
9099 | "us-gov-west-1": endpoint{}, | |
9100 | "us-gov-west-1-fips": endpoint{ | |
9101 | Hostname: "models-fips.lex.us-gov-west-1.amazonaws.com", | |
9102 | CredentialScope: credentialScope{ | |
9103 | Region: "us-gov-west-1", | |
9104 | }, | |
9105 | }, | |
9106 | }, | |
9107 | }, | |
8713 | 9108 | "monitoring": service{ |
8714 | 9109 | |
8715 | 9110 | Endpoints: endpoints{ |
8915 | 9310 | "us-gov-west-1": endpoint{}, |
8916 | 9311 | }, |
8917 | 9312 | }, |
9313 | "runtime.lex": service{ | |
9314 | Defaults: endpoint{ | |
9315 | CredentialScope: credentialScope{ | |
9316 | Service: "lex", | |
9317 | }, | |
9318 | }, | |
9319 | Endpoints: endpoints{ | |
9320 | "us-gov-west-1": endpoint{}, | |
9321 | "us-gov-west-1-fips": endpoint{ | |
9322 | Hostname: "runtime-fips.lex.us-gov-west-1.amazonaws.com", | |
9323 | CredentialScope: credentialScope{ | |
9324 | Region: "us-gov-west-1", | |
9325 | }, | |
9326 | }, | |
9327 | }, | |
9328 | }, | |
8918 | 9329 | "runtime.sagemaker": service{ |
8919 | 9330 | |
8920 | 9331 | Endpoints: endpoints{ |
8921 | 9332 | "us-gov-west-1": endpoint{}, |
9333 | "us-gov-west-1-fips": endpoint{ | |
9334 | Hostname: "runtime.sagemaker.us-gov-west-1.amazonaws.com", | |
9335 | CredentialScope: credentialScope{ | |
9336 | Region: "us-gov-west-1", | |
9337 | }, | |
9338 | }, | |
8922 | 9339 | }, |
8923 | 9340 | }, |
8924 | 9341 | "s3": service{ |
9329 | 9746 | "waf-regional": service{ |
9330 | 9747 | |
9331 | 9748 | Endpoints: endpoints{ |
9749 | "fips-us-gov-east-1": endpoint{ | |
9750 | Hostname: "waf-regional-fips.us-gov-east-1.amazonaws.com", | |
9751 | CredentialScope: credentialScope{ | |
9752 | Region: "us-gov-east-1", | |
9753 | }, | |
9754 | }, | |
9332 | 9755 | "fips-us-gov-west-1": endpoint{ |
9333 | 9756 | Hostname: "waf-regional-fips.us-gov-west-1.amazonaws.com", |
9334 | 9757 | CredentialScope: credentialScope{ |
9335 | 9758 | Region: "us-gov-west-1", |
9336 | 9759 | }, |
9337 | 9760 | }, |
9761 | "us-gov-east-1": endpoint{ | |
9762 | Hostname: "waf-regional.us-gov-east-1.amazonaws.com", | |
9763 | CredentialScope: credentialScope{ | |
9764 | Region: "us-gov-east-1", | |
9765 | }, | |
9766 | }, | |
9338 | 9767 | "us-gov-west-1": endpoint{ |
9339 | 9768 | Hostname: "waf-regional.us-gov-west-1.amazonaws.com", |
9340 | 9769 | CredentialScope: credentialScope{ |
9358 | 9787 | "xray": service{ |
9359 | 9788 | |
9360 | 9789 | Endpoints: endpoints{ |
9790 | "fips-us-gov-east-1": endpoint{ | |
9791 | Hostname: "xray-fips.us-gov-east-1.amazonaws.com", | |
9792 | CredentialScope: credentialScope{ | |
9793 | Region: "us-gov-east-1", | |
9794 | }, | |
9795 | }, | |
9796 | "fips-us-gov-west-1": endpoint{ | |
9797 | Hostname: "xray-fips.us-gov-west-1.amazonaws.com", | |
9798 | CredentialScope: credentialScope{ | |
9799 | Region: "us-gov-west-1", | |
9800 | }, | |
9801 | }, | |
9361 | 9802 | "us-gov-east-1": endpoint{}, |
9362 | 9803 | "us-gov-west-1": endpoint{}, |
9363 | 9804 | }, |
9614 | 10055 | "us-iso-east-1": endpoint{}, |
9615 | 10056 | }, |
9616 | 10057 | }, |
10058 | "medialive": service{ | |
10059 | ||
10060 | Endpoints: endpoints{ | |
10061 | "us-iso-east-1": endpoint{}, | |
10062 | }, | |
10063 | }, | |
10064 | "mediapackage": service{ | |
10065 | ||
10066 | Endpoints: endpoints{ | |
10067 | "us-iso-east-1": endpoint{}, | |
10068 | }, | |
10069 | }, | |
9617 | 10070 | "monitoring": service{ |
10071 | ||
10072 | Endpoints: endpoints{ | |
10073 | "us-iso-east-1": endpoint{}, | |
10074 | }, | |
10075 | }, | |
10076 | "outposts": service{ | |
9618 | 10077 | |
9619 | 10078 | Endpoints: endpoints{ |
9620 | 10079 | "us-iso-east-1": endpoint{}, |
9662 | 10121 | }, |
9663 | 10122 | }, |
9664 | 10123 | }, |
10124 | "secretsmanager": service{ | |
10125 | ||
10126 | Endpoints: endpoints{ | |
10127 | "us-iso-east-1": endpoint{}, | |
10128 | }, | |
10129 | }, | |
9665 | 10130 | "snowball": service{ |
9666 | 10131 | |
9667 | 10132 | Endpoints: endpoints{ |
9682 | 10147 | "us-iso-east-1": endpoint{ |
9683 | 10148 | Protocols: []string{"http", "https"}, |
9684 | 10149 | }, |
10150 | }, | |
10151 | }, | |
10152 | "ssm": service{ | |
10153 | ||
10154 | Endpoints: endpoints{ | |
10155 | "us-iso-east-1": endpoint{}, | |
9685 | 10156 | }, |
9686 | 10157 | }, |
9687 | 10158 | "states": service{ |
9997 | 10468 | "us-isob-east-1": endpoint{}, |
9998 | 10469 | }, |
9999 | 10470 | }, |
10471 | "route53": service{ | |
10472 | PartitionEndpoint: "aws-iso-b-global", | |
10473 | IsRegionalized: boxedFalse, | |
10474 | ||
10475 | Endpoints: endpoints{ | |
10476 | "aws-iso-b-global": endpoint{ | |
10477 | Hostname: "route53.sc2s.sgov.gov", | |
10478 | CredentialScope: credentialScope{ | |
10479 | Region: "us-isob-east-1", | |
10480 | }, | |
10481 | }, | |
10482 | }, | |
10483 | }, | |
10000 | 10484 | "s3": service{ |
10001 | 10485 | Defaults: endpoint{ |
10002 | 10486 | Protocols: []string{"http", "https"}, |
0 | // +build go1.7 | |
1 | ||
2 | package session | |
3 | ||
4 | import ( | |
5 | "net" | |
6 | "net/http" | |
7 | "time" | |
8 | ) | |
9 | ||
10 | // Transport that should be used when a custom CA bundle is specified with the | |
11 | // SDK. | |
12 | func getCABundleTransport() *http.Transport { | |
13 | return &http.Transport{ | |
14 | Proxy: http.ProxyFromEnvironment, | |
15 | DialContext: (&net.Dialer{ | |
16 | Timeout: 30 * time.Second, | |
17 | KeepAlive: 30 * time.Second, | |
18 | DualStack: true, | |
19 | }).DialContext, | |
20 | MaxIdleConns: 100, | |
21 | IdleConnTimeout: 90 * time.Second, | |
22 | TLSHandshakeTimeout: 10 * time.Second, | |
23 | ExpectContinueTimeout: 1 * time.Second, | |
24 | } | |
25 | } |
0 | // +build !go1.6,go1.5 | |
1 | ||
2 | package session | |
3 | ||
4 | import ( | |
5 | "net" | |
6 | "net/http" | |
7 | "time" | |
8 | ) | |
9 | ||
10 | // Transport that should be used when a custom CA bundle is specified with the | |
11 | // SDK. | |
12 | func getCABundleTransport() *http.Transport { | |
13 | return &http.Transport{ | |
14 | Proxy: http.ProxyFromEnvironment, | |
15 | Dial: (&net.Dialer{ | |
16 | Timeout: 30 * time.Second, | |
17 | KeepAlive: 30 * time.Second, | |
18 | }).Dial, | |
19 | TLSHandshakeTimeout: 10 * time.Second, | |
20 | } | |
21 | } |
0 | // +build !go1.7,go1.6 | |
1 | ||
2 | package session | |
3 | ||
4 | import ( | |
5 | "net" | |
6 | "net/http" | |
7 | "time" | |
8 | ) | |
9 | ||
10 | // Transport that should be used when a custom CA bundle is specified with the | |
11 | // SDK. | |
12 | func getCABundleTransport() *http.Transport { | |
13 | return &http.Transport{ | |
14 | Proxy: http.ProxyFromEnvironment, | |
15 | Dial: (&net.Dialer{ | |
16 | Timeout: 30 * time.Second, | |
17 | KeepAlive: 30 * time.Second, | |
18 | }).Dial, | |
19 | TLSHandshakeTimeout: 10 * time.Second, | |
20 | ExpectContinueTimeout: 1 * time.Second, | |
21 | } | |
22 | } |
8 | 8 | "github.com/aws/aws-sdk-go/aws/awserr" |
9 | 9 | "github.com/aws/aws-sdk-go/aws/credentials" |
10 | 10 | "github.com/aws/aws-sdk-go/aws/credentials/processcreds" |
11 | "github.com/aws/aws-sdk-go/aws/credentials/ssocreds" | |
11 | 12 | "github.com/aws/aws-sdk-go/aws/credentials/stscreds" |
12 | 13 | "github.com/aws/aws-sdk-go/aws/defaults" |
13 | 14 | "github.com/aws/aws-sdk-go/aws/request" |
98 | 99 | creds = credentials.NewStaticCredentialsFromCreds( |
99 | 100 | sharedCfg.Creds, |
100 | 101 | ) |
102 | ||
103 | case sharedCfg.hasSSOConfiguration(): | |
104 | creds, err = resolveSSOCredentials(cfg, sharedCfg, handlers) | |
101 | 105 | |
102 | 106 | case len(sharedCfg.CredentialProcess) != 0: |
103 | 107 | // Get credentials from CredentialProcess |
150 | 154 | return creds, nil |
151 | 155 | } |
152 | 156 | |
157 | func resolveSSOCredentials(cfg *aws.Config, sharedCfg sharedConfig, handlers request.Handlers) (*credentials.Credentials, error) { | |
158 | if err := sharedCfg.validateSSOConfiguration(); err != nil { | |
159 | return nil, err | |
160 | } | |
161 | ||
162 | cfgCopy := cfg.Copy() | |
163 | cfgCopy.Region = &sharedCfg.SSORegion | |
164 | ||
165 | return ssocreds.NewCredentials( | |
166 | &Session{ | |
167 | Config: cfgCopy, | |
168 | Handlers: handlers.Copy(), | |
169 | }, | |
170 | sharedCfg.SSOAccountID, | |
171 | sharedCfg.SSORoleName, | |
172 | sharedCfg.SSOStartURL, | |
173 | ), nil | |
174 | } | |
175 | ||
153 | 176 | // valid credential source values |
154 | 177 | const ( |
155 | 178 | credSourceEc2Metadata = "Ec2InstanceMetadata" |
0 | // +build go1.13 | |
1 | ||
2 | package session | |
3 | ||
4 | import ( | |
5 | "net" | |
6 | "net/http" | |
7 | "time" | |
8 | ) | |
9 | ||
10 | // Transport that should be used when a custom CA bundle is specified with the | |
11 | // SDK. | |
12 | func getCustomTransport() *http.Transport { | |
13 | return &http.Transport{ | |
14 | Proxy: http.ProxyFromEnvironment, | |
15 | DialContext: (&net.Dialer{ | |
16 | Timeout: 30 * time.Second, | |
17 | KeepAlive: 30 * time.Second, | |
18 | DualStack: true, | |
19 | }).DialContext, | |
20 | ForceAttemptHTTP2: true, | |
21 | MaxIdleConns: 100, | |
22 | IdleConnTimeout: 90 * time.Second, | |
23 | TLSHandshakeTimeout: 10 * time.Second, | |
24 | ExpectContinueTimeout: 1 * time.Second, | |
25 | } | |
26 | } |
0 | // +build !go1.13,go1.7 | |
1 | ||
2 | package session | |
3 | ||
4 | import ( | |
5 | "net" | |
6 | "net/http" | |
7 | "time" | |
8 | ) | |
9 | ||
10 | // Transport that should be used when a custom CA bundle is specified with the | |
11 | // SDK. | |
12 | func getCustomTransport() *http.Transport { | |
13 | return &http.Transport{ | |
14 | Proxy: http.ProxyFromEnvironment, | |
15 | DialContext: (&net.Dialer{ | |
16 | Timeout: 30 * time.Second, | |
17 | KeepAlive: 30 * time.Second, | |
18 | DualStack: true, | |
19 | }).DialContext, | |
20 | MaxIdleConns: 100, | |
21 | IdleConnTimeout: 90 * time.Second, | |
22 | TLSHandshakeTimeout: 10 * time.Second, | |
23 | ExpectContinueTimeout: 1 * time.Second, | |
24 | } | |
25 | } |
0 | // +build !go1.6,go1.5 | |
1 | ||
2 | package session | |
3 | ||
4 | import ( | |
5 | "net" | |
6 | "net/http" | |
7 | "time" | |
8 | ) | |
9 | ||
10 | // Transport that should be used when a custom CA bundle is specified with the | |
11 | // SDK. | |
12 | func getCustomTransport() *http.Transport { | |
13 | return &http.Transport{ | |
14 | Proxy: http.ProxyFromEnvironment, | |
15 | Dial: (&net.Dialer{ | |
16 | Timeout: 30 * time.Second, | |
17 | KeepAlive: 30 * time.Second, | |
18 | }).Dial, | |
19 | TLSHandshakeTimeout: 10 * time.Second, | |
20 | } | |
21 | } |
0 | // +build !go1.7,go1.6 | |
1 | ||
2 | package session | |
3 | ||
4 | import ( | |
5 | "net" | |
6 | "net/http" | |
7 | "time" | |
8 | ) | |
9 | ||
10 | // Transport that should be used when a custom CA bundle is specified with the | |
11 | // SDK. | |
12 | func getCustomTransport() *http.Transport { | |
13 | return &http.Transport{ | |
14 | Proxy: http.ProxyFromEnvironment, | |
15 | Dial: (&net.Dialer{ | |
16 | Timeout: 30 * time.Second, | |
17 | KeepAlive: 30 * time.Second, | |
18 | }).Dial, | |
19 | TLSHandshakeTimeout: 10 * time.Second, | |
20 | ExpectContinueTimeout: 1 * time.Second, | |
21 | } | |
22 | } |
207 | 207 | |
208 | 208 | AWS_SDK_LOAD_CONFIG=1 |
209 | 209 | |
210 | Custom Shared Config and Credential Files | |
211 | ||
210 | 212 | Shared credentials file path can be set to instruct the SDK to use an alternative |
211 | 213 | file for the shared credentials. If not set the file will be loaded from |
212 | 214 | $HOME/.aws/credentials on Linux/Unix based systems, and |
220 | 222 | %USERPROFILE%\.aws\config on Windows. |
221 | 223 | |
222 | 224 | AWS_CONFIG_FILE=$HOME/my_shared_config |
225 | ||
226 | Custom CA Bundle | |
223 | 227 | |
224 | 228 | Path to a custom Credentials Authority (CA) bundle PEM file that the SDK |
225 | 229 | will use instead of the default system's root CA bundle. Use this only |
241 | 245 | To use this option and custom HTTP client, the HTTP client needs to be provided |
242 | 246 | when creating the session. Not the service client. |
243 | 247 | |
248 | Custom Client TLS Certificate | |
249 | ||
250 | The SDK supports the environment and session option being configured with | |
251 | Client TLS certificates that are sent as a part of the client's TLS handshake | |
252 | for client authentication. If used, both Cert and Key values are required. If | |
253 | one is missing, or either fail to load the contents of the file an error will | |
254 | be returned. | |
255 | ||
256 | HTTP Client's Transport concrete implementation must be a http.Transport | |
257 | or creating the session will fail. | |
258 | ||
259 | AWS_SDK_GO_CLIENT_TLS_KEY=$HOME/my_client_key | |
260 | AWS_SDK_GO_CLIENT_TLS_CERT=$HOME/my_client_cert | |
261 | ||
262 | This can also be configured via the session.Options ClientTLSCert and ClientTLSKey. | |
263 | ||
264 | sess, err := session.NewSessionWithOptions(session.Options{ | |
265 | ClientTLSCert: myCertFile, | |
266 | ClientTLSKey: myKeyFile, | |
267 | }) | |
268 | ||
269 | Custom EC2 IMDS Endpoint | |
270 | ||
244 | 271 | The endpoint of the EC2 IMDS client can be configured via the environment |
245 | 272 | variable, AWS_EC2_METADATA_SERVICE_ENDPOINT when creating the client with a |
246 | 273 | Session. See Options.EC2IMDSEndpoint for more details. |
100 | 100 | // AWS_CA_BUNDLE=$HOME/my_custom_ca_bundle |
101 | 101 | CustomCABundle string |
102 | 102 | |
103 | // Sets the TLC client certificate that should be used by the SDK's HTTP transport | |
104 | // when making requests. The certificate must be paired with a TLS client key file. | |
105 | // | |
106 | // AWS_SDK_GO_CLIENT_TLS_CERT=$HOME/my_client_cert | |
107 | ClientTLSCert string | |
108 | ||
109 | // Sets the TLC client key that should be used by the SDK's HTTP transport | |
110 | // when making requests. The key must be paired with a TLS client certificate file. | |
111 | // | |
112 | // AWS_SDK_GO_CLIENT_TLS_KEY=$HOME/my_client_key | |
113 | ClientTLSKey string | |
114 | ||
103 | 115 | csmEnabled string |
104 | 116 | CSMEnabled *bool |
105 | 117 | CSMPort string |
217 | 229 | } |
218 | 230 | ec2IMDSEndpointEnvKey = []string{ |
219 | 231 | "AWS_EC2_METADATA_SERVICE_ENDPOINT", |
232 | } | |
233 | useCABundleKey = []string{ | |
234 | "AWS_CA_BUNDLE", | |
235 | } | |
236 | useClientTLSCert = []string{ | |
237 | "AWS_SDK_GO_CLIENT_TLS_CERT", | |
238 | } | |
239 | useClientTLSKey = []string{ | |
240 | "AWS_SDK_GO_CLIENT_TLS_KEY", | |
220 | 241 | } |
221 | 242 | ) |
222 | 243 | |
301 | 322 | cfg.SharedConfigFile = defaults.SharedConfigFilename() |
302 | 323 | } |
303 | 324 | |
304 | cfg.CustomCABundle = os.Getenv("AWS_CA_BUNDLE") | |
325 | setFromEnvVal(&cfg.CustomCABundle, useCABundleKey) | |
326 | setFromEnvVal(&cfg.ClientTLSCert, useClientTLSCert) | |
327 | setFromEnvVal(&cfg.ClientTLSKey, useClientTLSKey) | |
305 | 328 | |
306 | 329 | var err error |
307 | 330 | // STS Regional Endpoint variable |
24 | 24 | // ErrCodeSharedConfig represents an error that occurs in the shared |
25 | 25 | // configuration logic |
26 | 26 | ErrCodeSharedConfig = "SharedConfigErr" |
27 | ||
28 | // ErrCodeLoadCustomCABundle error code for unable to load custom CA bundle. | |
29 | ErrCodeLoadCustomCABundle = "LoadCustomCABundleError" | |
30 | ||
31 | // ErrCodeLoadClientTLSCert error code for unable to load client TLS | |
32 | // certificate or key | |
33 | ErrCodeLoadClientTLSCert = "LoadClientTLSCertError" | |
27 | 34 | ) |
28 | 35 | |
29 | 36 | // ErrSharedConfigSourceCollision will be returned if a section contains both |
30 | 37 | // source_profile and credential_source |
31 | var ErrSharedConfigSourceCollision = awserr.New(ErrCodeSharedConfig, "only source profile or credential source can be specified, not both", nil) | |
38 | var ErrSharedConfigSourceCollision = awserr.New(ErrCodeSharedConfig, "only one credential type may be specified per profile: source profile, credential source, credential process, web identity token, or sso", nil) | |
32 | 39 | |
33 | 40 | // ErrSharedConfigECSContainerEnvVarEmpty will be returned if the environment |
34 | 41 | // variables are empty and Environment was set as the credential source |
228 | 235 | // the SDK will use instead of the default system's root CA bundle. Use this |
229 | 236 | // only if you want to replace the CA bundle the SDK uses for TLS requests. |
230 | 237 | // |
231 | // Enabling this option will attempt to merge the Transport into the SDK's HTTP | |
232 | // client. If the client's Transport is not a http.Transport an error will be | |
233 | // returned. If the Transport's TLS config is set this option will cause the SDK | |
238 | // HTTP Client's Transport concrete implementation must be a http.Transport | |
239 | // or creating the session will fail. | |
240 | // | |
241 | // If the Transport's TLS config is set this option will cause the SDK | |
234 | 242 | // to overwrite the Transport's TLS config's RootCAs value. If the CA |
235 | 243 | // bundle reader contains multiple certificates all of them will be loaded. |
236 | 244 | // |
237 | // The Session option CustomCABundle is also available when creating sessions | |
238 | // to also enable this feature. CustomCABundle session option field has priority | |
239 | // over the AWS_CA_BUNDLE environment variable, and will be used if both are set. | |
245 | // Can also be specified via the environment variable: | |
246 | // | |
247 | // AWS_CA_BUNDLE=$HOME/ca_bundle | |
248 | // | |
249 | // Can also be specified via the shared config field: | |
250 | // | |
251 | // ca_bundle = $HOME/ca_bundle | |
240 | 252 | CustomCABundle io.Reader |
253 | ||
254 | // Reader for the TLC client certificate that should be used by the SDK's | |
255 | // HTTP transport when making requests. The certificate must be paired with | |
256 | // a TLS client key file. Will be ignored if both are not provided. | |
257 | // | |
258 | // HTTP Client's Transport concrete implementation must be a http.Transport | |
259 | // or creating the session will fail. | |
260 | // | |
261 | // Can also be specified via the environment variable: | |
262 | // | |
263 | // AWS_SDK_GO_CLIENT_TLS_CERT=$HOME/my_client_cert | |
264 | ClientTLSCert io.Reader | |
265 | ||
266 | // Reader for the TLC client key that should be used by the SDK's HTTP | |
267 | // transport when making requests. The key must be paired with a TLS client | |
268 | // certificate file. Will be ignored if both are not provided. | |
269 | // | |
270 | // HTTP Client's Transport concrete implementation must be a http.Transport | |
271 | // or creating the session will fail. | |
272 | // | |
273 | // Can also be specified via the environment variable: | |
274 | // | |
275 | // AWS_SDK_GO_CLIENT_TLS_KEY=$HOME/my_client_key | |
276 | ClientTLSKey io.Reader | |
241 | 277 | |
242 | 278 | // The handlers that the session and all API clients will be created with. |
243 | 279 | // This must be a complete set of handlers. Use the defaults.Handlers() |
316 | 352 | envCfg.EnableSharedConfig = false |
317 | 353 | case SharedConfigEnable: |
318 | 354 | envCfg.EnableSharedConfig = true |
319 | } | |
320 | ||
321 | // Only use AWS_CA_BUNDLE if session option is not provided. | |
322 | if len(envCfg.CustomCABundle) != 0 && opts.CustomCABundle == nil { | |
323 | f, err := os.Open(envCfg.CustomCABundle) | |
324 | if err != nil { | |
325 | return nil, awserr.New("LoadCustomCABundleError", | |
326 | "failed to open custom CA bundle PEM file", err) | |
327 | } | |
328 | defer f.Close() | |
329 | opts.CustomCABundle = f | |
330 | 355 | } |
331 | 356 | |
332 | 357 | return newSession(opts, envCfg, &opts.Config) |
459 | 484 | return nil, err |
460 | 485 | } |
461 | 486 | |
487 | if err := setTLSOptions(&opts, cfg, envCfg, sharedCfg); err != nil { | |
488 | return nil, err | |
489 | } | |
490 | ||
462 | 491 | s := &Session{ |
463 | 492 | Config: cfg, |
464 | 493 | Handlers: handlers, |
474 | 503 | } else if csmCfg.Enabled { |
475 | 504 | err = enableCSM(&s.Handlers, csmCfg, s.Config.Logger) |
476 | 505 | if err != nil { |
477 | return nil, err | |
478 | } | |
479 | } | |
480 | ||
481 | // Setup HTTP client with custom cert bundle if enabled | |
482 | if opts.CustomCABundle != nil { | |
483 | if err := loadCustomCABundle(s, opts.CustomCABundle); err != nil { | |
484 | 506 | return nil, err |
485 | 507 | } |
486 | 508 | } |
528 | 550 | return csmConfig{}, nil |
529 | 551 | } |
530 | 552 | |
531 | func loadCustomCABundle(s *Session, bundle io.Reader) error { | |
553 | func setTLSOptions(opts *Options, cfg *aws.Config, envCfg envConfig, sharedCfg sharedConfig) error { | |
554 | // CA Bundle can be specified in both environment variable shared config file. | |
555 | var caBundleFilename = envCfg.CustomCABundle | |
556 | if len(caBundleFilename) == 0 { | |
557 | caBundleFilename = sharedCfg.CustomCABundle | |
558 | } | |
559 | ||
560 | // Only use environment value if session option is not provided. | |
561 | customTLSOptions := map[string]struct { | |
562 | filename string | |
563 | field *io.Reader | |
564 | errCode string | |
565 | }{ | |
566 | "custom CA bundle PEM": {filename: caBundleFilename, field: &opts.CustomCABundle, errCode: ErrCodeLoadCustomCABundle}, | |
567 | "custom client TLS cert": {filename: envCfg.ClientTLSCert, field: &opts.ClientTLSCert, errCode: ErrCodeLoadClientTLSCert}, | |
568 | "custom client TLS key": {filename: envCfg.ClientTLSKey, field: &opts.ClientTLSKey, errCode: ErrCodeLoadClientTLSCert}, | |
569 | } | |
570 | for name, v := range customTLSOptions { | |
571 | if len(v.filename) != 0 && *v.field == nil { | |
572 | f, err := os.Open(v.filename) | |
573 | if err != nil { | |
574 | return awserr.New(v.errCode, fmt.Sprintf("failed to open %s file", name), err) | |
575 | } | |
576 | defer f.Close() | |
577 | *v.field = f | |
578 | } | |
579 | } | |
580 | ||
581 | // Setup HTTP client with custom cert bundle if enabled | |
582 | if opts.CustomCABundle != nil { | |
583 | if err := loadCustomCABundle(cfg.HTTPClient, opts.CustomCABundle); err != nil { | |
584 | return err | |
585 | } | |
586 | } | |
587 | ||
588 | // Setup HTTP client TLS certificate and key for client TLS authentication. | |
589 | if opts.ClientTLSCert != nil && opts.ClientTLSKey != nil { | |
590 | if err := loadClientTLSCert(cfg.HTTPClient, opts.ClientTLSCert, opts.ClientTLSKey); err != nil { | |
591 | return err | |
592 | } | |
593 | } else if opts.ClientTLSCert == nil && opts.ClientTLSKey == nil { | |
594 | // Do nothing if neither values are available. | |
595 | ||
596 | } else { | |
597 | return awserr.New(ErrCodeLoadClientTLSCert, | |
598 | fmt.Sprintf("client TLS cert(%t) and key(%t) must both be provided", | |
599 | opts.ClientTLSCert != nil, opts.ClientTLSKey != nil), nil) | |
600 | } | |
601 | ||
602 | return nil | |
603 | } | |
604 | ||
605 | func getHTTPTransport(client *http.Client) (*http.Transport, error) { | |
532 | 606 | var t *http.Transport |
533 | switch v := s.Config.HTTPClient.Transport.(type) { | |
607 | switch v := client.Transport.(type) { | |
534 | 608 | case *http.Transport: |
535 | 609 | t = v |
536 | 610 | default: |
537 | if s.Config.HTTPClient.Transport != nil { | |
538 | return awserr.New("LoadCustomCABundleError", | |
539 | "unable to load custom CA bundle, HTTPClient's transport unsupported type", nil) | |
611 | if client.Transport != nil { | |
612 | return nil, fmt.Errorf("unsupported transport, %T", client.Transport) | |
540 | 613 | } |
541 | 614 | } |
542 | 615 | if t == nil { |
543 | 616 | // Nil transport implies `http.DefaultTransport` should be used. Since |
544 | 617 | // the SDK cannot modify, nor copy the `DefaultTransport` specifying |
545 | 618 | // the values the next closest behavior. |
546 | t = getCABundleTransport() | |
619 | t = getCustomTransport() | |
620 | } | |
621 | ||
622 | return t, nil | |
623 | } | |
624 | ||
625 | func loadCustomCABundle(client *http.Client, bundle io.Reader) error { | |
626 | t, err := getHTTPTransport(client) | |
627 | if err != nil { | |
628 | return awserr.New(ErrCodeLoadCustomCABundle, | |
629 | "unable to load custom CA bundle, HTTPClient's transport unsupported type", err) | |
547 | 630 | } |
548 | 631 | |
549 | 632 | p, err := loadCertPool(bundle) |
555 | 638 | } |
556 | 639 | t.TLSClientConfig.RootCAs = p |
557 | 640 | |
558 | s.Config.HTTPClient.Transport = t | |
641 | client.Transport = t | |
559 | 642 | |
560 | 643 | return nil |
561 | 644 | } |
563 | 646 | func loadCertPool(r io.Reader) (*x509.CertPool, error) { |
564 | 647 | b, err := ioutil.ReadAll(r) |
565 | 648 | if err != nil { |
566 | return nil, awserr.New("LoadCustomCABundleError", | |
649 | return nil, awserr.New(ErrCodeLoadCustomCABundle, | |
567 | 650 | "failed to read custom CA bundle PEM file", err) |
568 | 651 | } |
569 | 652 | |
570 | 653 | p := x509.NewCertPool() |
571 | 654 | if !p.AppendCertsFromPEM(b) { |
572 | return nil, awserr.New("LoadCustomCABundleError", | |
655 | return nil, awserr.New(ErrCodeLoadCustomCABundle, | |
573 | 656 | "failed to load custom CA bundle PEM file", err) |
574 | 657 | } |
575 | 658 | |
576 | 659 | return p, nil |
660 | } | |
661 | ||
662 | func loadClientTLSCert(client *http.Client, certFile, keyFile io.Reader) error { | |
663 | t, err := getHTTPTransport(client) | |
664 | if err != nil { | |
665 | return awserr.New(ErrCodeLoadClientTLSCert, | |
666 | "unable to get usable HTTP transport from client", err) | |
667 | } | |
668 | ||
669 | cert, err := ioutil.ReadAll(certFile) | |
670 | if err != nil { | |
671 | return awserr.New(ErrCodeLoadClientTLSCert, | |
672 | "unable to get read client TLS cert file", err) | |
673 | } | |
674 | ||
675 | key, err := ioutil.ReadAll(keyFile) | |
676 | if err != nil { | |
677 | return awserr.New(ErrCodeLoadClientTLSCert, | |
678 | "unable to get read client TLS key file", err) | |
679 | } | |
680 | ||
681 | clientCert, err := tls.X509KeyPair(cert, key) | |
682 | if err != nil { | |
683 | return awserr.New(ErrCodeLoadClientTLSCert, | |
684 | "unable to load x509 key pair from client cert", err) | |
685 | } | |
686 | ||
687 | tlsCfg := t.TLSClientConfig | |
688 | if tlsCfg == nil { | |
689 | tlsCfg = &tls.Config{} | |
690 | } | |
691 | ||
692 | tlsCfg.Certificates = append(tlsCfg.Certificates, clientCert) | |
693 | ||
694 | t.TLSClientConfig = tlsCfg | |
695 | client.Transport = t | |
696 | ||
697 | return nil | |
577 | 698 | } |
578 | 699 | |
579 | 700 | func mergeConfigSrcs(cfg, userCfg *aws.Config, |
1 | 1 | |
2 | 2 | import ( |
3 | 3 | "fmt" |
4 | "strings" | |
4 | 5 | "time" |
5 | 6 | |
6 | 7 | "github.com/aws/aws-sdk-go/aws/awserr" |
24 | 25 | roleSessionNameKey = `role_session_name` // optional |
25 | 26 | roleDurationSecondsKey = "duration_seconds" // optional |
26 | 27 | |
28 | // AWS Single Sign-On (AWS SSO) group | |
29 | ssoAccountIDKey = "sso_account_id" | |
30 | ssoRegionKey = "sso_region" | |
31 | ssoRoleNameKey = "sso_role_name" | |
32 | ssoStartURL = "sso_start_url" | |
33 | ||
27 | 34 | // CSM options |
28 | 35 | csmEnabledKey = `csm_enabled` |
29 | 36 | csmHostKey = `csm_host` |
33 | 40 | // Additional Config fields |
34 | 41 | regionKey = `region` |
35 | 42 | |
43 | // custom CA Bundle filename | |
44 | customCABundleKey = `ca_bundle` | |
45 | ||
36 | 46 | // endpoint discovery group |
37 | 47 | enableEndpointDiscoveryKey = `endpoint_discovery_enabled` // optional |
38 | 48 | |
59 | 69 | |
60 | 70 | // sharedConfig represents the configuration fields of the SDK config files. |
61 | 71 | type sharedConfig struct { |
72 | Profile string | |
73 | ||
62 | 74 | // Credentials values from the config file. Both aws_access_key_id and |
63 | 75 | // aws_secret_access_key must be provided together in the same file to be |
64 | 76 | // considered valid. The values will be ignored if not a complete group. |
74 | 86 | CredentialProcess string |
75 | 87 | WebIdentityTokenFile string |
76 | 88 | |
89 | SSOAccountID string | |
90 | SSORegion string | |
91 | SSORoleName string | |
92 | SSOStartURL string | |
93 | ||
77 | 94 | RoleARN string |
78 | 95 | RoleSessionName string |
79 | 96 | ExternalID string |
88 | 105 | // |
89 | 106 | // region |
90 | 107 | Region string |
108 | ||
109 | // CustomCABundle is the file path to a PEM file the SDK will read and | |
110 | // use to configure the HTTP transport with additional CA certs that are | |
111 | // not present in the platforms default CA store. | |
112 | // | |
113 | // This value will be ignored if the file does not exist. | |
114 | // | |
115 | // ca_bundle | |
116 | CustomCABundle string | |
91 | 117 | |
92 | 118 | // EnableEndpointDiscovery can be enabled in the shared config by setting |
93 | 119 | // endpoint_discovery_enabled to true |
176 | 202 | } |
177 | 203 | |
178 | 204 | func (cfg *sharedConfig) setFromIniFiles(profiles map[string]struct{}, profile string, files []sharedConfigFile, exOpts bool) error { |
205 | cfg.Profile = profile | |
206 | ||
179 | 207 | // Trim files from the list that don't exist. |
180 | 208 | var skippedFiles int |
181 | 209 | var profileNotFoundErr error |
204 | 232 | cfg.clearAssumeRoleOptions() |
205 | 233 | } else { |
206 | 234 | // First time a profile has been seen, It must either be a assume role |
207 | // or credentials. Assert if the credential type requires a role ARN, | |
208 | // the ARN is also set. | |
209 | if err := cfg.validateCredentialsRequireARN(profile); err != nil { | |
235 | // credentials, or SSO. Assert if the credential type requires a role ARN, | |
236 | // the ARN is also set, or validate that the SSO configuration is complete. | |
237 | if err := cfg.validateCredentialsConfig(profile); err != nil { | |
210 | 238 | return err |
211 | 239 | } |
212 | 240 | } |
275 | 303 | updateString(&cfg.SourceProfileName, section, sourceProfileKey) |
276 | 304 | updateString(&cfg.CredentialSource, section, credentialSourceKey) |
277 | 305 | updateString(&cfg.Region, section, regionKey) |
306 | updateString(&cfg.CustomCABundle, section, customCABundleKey) | |
278 | 307 | |
279 | 308 | if section.Has(roleDurationSecondsKey) { |
280 | 309 | d := time.Duration(section.Int(roleDurationSecondsKey)) * time.Second |
298 | 327 | } |
299 | 328 | cfg.S3UsEast1RegionalEndpoint = sre |
300 | 329 | } |
330 | ||
331 | // AWS Single Sign-On (AWS SSO) | |
332 | updateString(&cfg.SSOAccountID, section, ssoAccountIDKey) | |
333 | updateString(&cfg.SSORegion, section, ssoRegionKey) | |
334 | updateString(&cfg.SSORoleName, section, ssoRoleNameKey) | |
335 | updateString(&cfg.SSOStartURL, section, ssoStartURL) | |
301 | 336 | } |
302 | 337 | |
303 | 338 | updateString(&cfg.CredentialProcess, section, credentialProcessKey) |
324 | 359 | updateString(&cfg.CSMClientID, section, csmClientIDKey) |
325 | 360 | |
326 | 361 | updateBool(&cfg.S3UseARNRegion, section, s3UseARNRegionKey) |
362 | ||
363 | return nil | |
364 | } | |
365 | ||
366 | func (cfg *sharedConfig) validateCredentialsConfig(profile string) error { | |
367 | if err := cfg.validateCredentialsRequireARN(profile); err != nil { | |
368 | return err | |
369 | } | |
327 | 370 | |
328 | 371 | return nil |
329 | 372 | } |
357 | 400 | len(cfg.CredentialSource) != 0, |
358 | 401 | len(cfg.CredentialProcess) != 0, |
359 | 402 | len(cfg.WebIdentityTokenFile) != 0, |
403 | cfg.hasSSOConfiguration(), | |
360 | 404 | ) { |
361 | 405 | return ErrSharedConfigSourceCollision |
406 | } | |
407 | ||
408 | return nil | |
409 | } | |
410 | ||
411 | func (cfg *sharedConfig) validateSSOConfiguration() error { | |
412 | if !cfg.hasSSOConfiguration() { | |
413 | return nil | |
414 | } | |
415 | ||
416 | var missing []string | |
417 | if len(cfg.SSOAccountID) == 0 { | |
418 | missing = append(missing, ssoAccountIDKey) | |
419 | } | |
420 | ||
421 | if len(cfg.SSORegion) == 0 { | |
422 | missing = append(missing, ssoRegionKey) | |
423 | } | |
424 | ||
425 | if len(cfg.SSORoleName) == 0 { | |
426 | missing = append(missing, ssoRoleNameKey) | |
427 | } | |
428 | ||
429 | if len(cfg.SSOStartURL) == 0 { | |
430 | missing = append(missing, ssoStartURL) | |
431 | } | |
432 | ||
433 | if len(missing) > 0 { | |
434 | return fmt.Errorf("profile %q is configured to use SSO but is missing required configuration: %s", | |
435 | cfg.Profile, strings.Join(missing, ", ")) | |
362 | 436 | } |
363 | 437 | |
364 | 438 | return nil |
370 | 444 | case len(cfg.CredentialSource) != 0: |
371 | 445 | case len(cfg.CredentialProcess) != 0: |
372 | 446 | case len(cfg.WebIdentityTokenFile) != 0: |
447 | case cfg.hasSSOConfiguration(): | |
373 | 448 | case cfg.Creds.HasKeys(): |
374 | 449 | default: |
375 | 450 | return false |
393 | 468 | cfg.SourceProfileName = "" |
394 | 469 | } |
395 | 470 | |
471 | func (cfg *sharedConfig) hasSSOConfiguration() bool { | |
472 | switch { | |
473 | case len(cfg.SSOAccountID) != 0: | |
474 | case len(cfg.SSORegion) != 0: | |
475 | case len(cfg.SSORoleName) != 0: | |
476 | case len(cfg.SSOStartURL) != 0: | |
477 | default: | |
478 | return false | |
479 | } | |
480 | return true | |
481 | } | |
482 | ||
396 | 483 | func oneOrNone(bs ...bool) bool { |
397 | 484 | var count int |
398 | 485 |
4 | 4 | const SDKName = "aws-sdk-go" |
5 | 5 | |
6 | 6 | // SDKVersion is the version of this SDK |
7 | const SDKVersion = "1.36.0" | |
7 | const SDKVersion = "1.37.32" |
0 | 0 | package protocol |
1 | 1 | |
2 | 2 | import ( |
3 | "github.com/aws/aws-sdk-go/aws/request" | |
4 | "net" | |
5 | "strconv" | |
3 | 6 | "strings" |
4 | ||
5 | "github.com/aws/aws-sdk-go/aws/request" | |
6 | 7 | ) |
7 | 8 | |
8 | 9 | // ValidateEndpointHostHandler is a request handler that will validate the |
21 | 22 | // 3986 host. Returns error if the host is not valid. |
22 | 23 | func ValidateEndpointHost(opName, host string) error { |
23 | 24 | paramErrs := request.ErrInvalidParams{Context: opName} |
24 | labels := strings.Split(host, ".") | |
25 | 25 | |
26 | var hostname string | |
27 | var port string | |
28 | var err error | |
29 | ||
30 | if strings.Contains(host, ":") { | |
31 | hostname, port, err = net.SplitHostPort(host) | |
32 | ||
33 | if err != nil { | |
34 | paramErrs.Add(request.NewErrParamFormat("endpoint", err.Error(), host)) | |
35 | } | |
36 | ||
37 | if !ValidPortNumber(port) { | |
38 | paramErrs.Add(request.NewErrParamFormat("endpoint port number", "[0-65535]", port)) | |
39 | } | |
40 | } else { | |
41 | hostname = host | |
42 | } | |
43 | ||
44 | labels := strings.Split(hostname, ".") | |
26 | 45 | for i, label := range labels { |
27 | 46 | if i == len(labels)-1 && len(label) == 0 { |
28 | 47 | // Allow trailing dot for FQDN hosts. |
35 | 54 | } |
36 | 55 | } |
37 | 56 | |
38 | if len(host) > 255 { | |
57 | if len(hostname) == 0 { | |
58 | paramErrs.Add(request.NewErrParamMinLen("endpoint host", 1)) | |
59 | } | |
60 | ||
61 | if len(hostname) > 255 { | |
39 | 62 | paramErrs.Add(request.NewErrParamMaxLen( |
40 | 63 | "endpoint host", 255, host, |
41 | 64 | )) |
65 | 88 | |
66 | 89 | return true |
67 | 90 | } |
91 | ||
92 | // ValidPortNumber return if the port is valid RFC 3986 port | |
93 | func ValidPortNumber(port string) bool { | |
94 | i, err := strconv.Atoi(port) | |
95 | if err != nil { | |
96 | return false | |
97 | } | |
98 | ||
99 | if i < 0 || i > 65535 { | |
100 | return false | |
101 | } | |
102 | return true | |
103 | } |
0 | // Package restjson provides RESTful JSON serialization of AWS | |
1 | // requests and responses. | |
2 | package restjson | |
3 | ||
4 | //go:generate go run -tags codegen ../../../private/model/cli/gen-protocol-tests ../../../models/protocol_tests/input/rest-json.json build_test.go | |
5 | //go:generate go run -tags codegen ../../../private/model/cli/gen-protocol-tests ../../../models/protocol_tests/output/rest-json.json unmarshal_test.go | |
6 | ||
7 | import ( | |
8 | "github.com/aws/aws-sdk-go/aws/request" | |
9 | "github.com/aws/aws-sdk-go/private/protocol/jsonrpc" | |
10 | "github.com/aws/aws-sdk-go/private/protocol/rest" | |
11 | ) | |
12 | ||
13 | // BuildHandler is a named request handler for building restjson protocol | |
14 | // requests | |
15 | var BuildHandler = request.NamedHandler{ | |
16 | Name: "awssdk.restjson.Build", | |
17 | Fn: Build, | |
18 | } | |
19 | ||
20 | // UnmarshalHandler is a named request handler for unmarshaling restjson | |
21 | // protocol requests | |
22 | var UnmarshalHandler = request.NamedHandler{ | |
23 | Name: "awssdk.restjson.Unmarshal", | |
24 | Fn: Unmarshal, | |
25 | } | |
26 | ||
27 | // UnmarshalMetaHandler is a named request handler for unmarshaling restjson | |
28 | // protocol request metadata | |
29 | var UnmarshalMetaHandler = request.NamedHandler{ | |
30 | Name: "awssdk.restjson.UnmarshalMeta", | |
31 | Fn: UnmarshalMeta, | |
32 | } | |
33 | ||
34 | // Build builds a request for the REST JSON protocol. | |
35 | func Build(r *request.Request) { | |
36 | rest.Build(r) | |
37 | ||
38 | if t := rest.PayloadType(r.Params); t == "structure" || t == "" { | |
39 | if v := r.HTTPRequest.Header.Get("Content-Type"); len(v) == 0 { | |
40 | r.HTTPRequest.Header.Set("Content-Type", "application/json") | |
41 | } | |
42 | jsonrpc.Build(r) | |
43 | } | |
44 | } | |
45 | ||
46 | // Unmarshal unmarshals a response body for the REST JSON protocol. | |
47 | func Unmarshal(r *request.Request) { | |
48 | if t := rest.PayloadType(r.Data); t == "structure" || t == "" { | |
49 | jsonrpc.Unmarshal(r) | |
50 | } else { | |
51 | rest.Unmarshal(r) | |
52 | } | |
53 | } | |
54 | ||
55 | // UnmarshalMeta unmarshals response headers for the REST JSON protocol. | |
56 | func UnmarshalMeta(r *request.Request) { | |
57 | rest.UnmarshalMeta(r) | |
58 | } |
+134
-0
0 | package restjson | |
1 | ||
2 | import ( | |
3 | "bytes" | |
4 | "io" | |
5 | "io/ioutil" | |
6 | "net/http" | |
7 | "strings" | |
8 | ||
9 | "github.com/aws/aws-sdk-go/aws/awserr" | |
10 | "github.com/aws/aws-sdk-go/aws/request" | |
11 | "github.com/aws/aws-sdk-go/private/protocol" | |
12 | "github.com/aws/aws-sdk-go/private/protocol/json/jsonutil" | |
13 | "github.com/aws/aws-sdk-go/private/protocol/rest" | |
14 | ) | |
15 | ||
16 | const ( | |
17 | errorTypeHeader = "X-Amzn-Errortype" | |
18 | errorMessageHeader = "X-Amzn-Errormessage" | |
19 | ) | |
20 | ||
21 | // UnmarshalTypedError provides unmarshaling errors API response errors | |
22 | // for both typed and untyped errors. | |
23 | type UnmarshalTypedError struct { | |
24 | exceptions map[string]func(protocol.ResponseMetadata) error | |
25 | } | |
26 | ||
27 | // NewUnmarshalTypedError returns an UnmarshalTypedError initialized for the | |
28 | // set of exception names to the error unmarshalers | |
29 | func NewUnmarshalTypedError(exceptions map[string]func(protocol.ResponseMetadata) error) *UnmarshalTypedError { | |
30 | return &UnmarshalTypedError{ | |
31 | exceptions: exceptions, | |
32 | } | |
33 | } | |
34 | ||
35 | // UnmarshalError attempts to unmarshal the HTTP response error as a known | |
36 | // error type. If unable to unmarshal the error type, the generic SDK error | |
37 | // type will be used. | |
38 | func (u *UnmarshalTypedError) UnmarshalError( | |
39 | resp *http.Response, | |
40 | respMeta protocol.ResponseMetadata, | |
41 | ) (error, error) { | |
42 | ||
43 | code := resp.Header.Get(errorTypeHeader) | |
44 | msg := resp.Header.Get(errorMessageHeader) | |
45 | ||
46 | body := resp.Body | |
47 | if len(code) == 0 { | |
48 | // If unable to get code from HTTP headers have to parse JSON message | |
49 | // to determine what kind of exception this will be. | |
50 | var buf bytes.Buffer | |
51 | var jsonErr jsonErrorResponse | |
52 | teeReader := io.TeeReader(resp.Body, &buf) | |
53 | err := jsonutil.UnmarshalJSONError(&jsonErr, teeReader) | |
54 | if err != nil { | |
55 | return nil, err | |
56 | } | |
57 | ||
58 | body = ioutil.NopCloser(&buf) | |
59 | code = jsonErr.Code | |
60 | msg = jsonErr.Message | |
61 | } | |
62 | ||
63 | // If code has colon separators remove them so can compare against modeled | |
64 | // exception names. | |
65 | code = strings.SplitN(code, ":", 2)[0] | |
66 | ||
67 | if fn, ok := u.exceptions[code]; ok { | |
68 | // If exception code is know, use associated constructor to get a value | |
69 | // for the exception that the JSON body can be unmarshaled into. | |
70 | v := fn(respMeta) | |
71 | if err := jsonutil.UnmarshalJSONCaseInsensitive(v, body); err != nil { | |
72 | return nil, err | |
73 | } | |
74 | ||
75 | if err := rest.UnmarshalResponse(resp, v, true); err != nil { | |
76 | return nil, err | |
77 | } | |
78 | ||
79 | return v, nil | |
80 | } | |
81 | ||
82 | // fallback to unmodeled generic exceptions | |
83 | return awserr.NewRequestFailure( | |
84 | awserr.New(code, msg, nil), | |
85 | respMeta.StatusCode, | |
86 | respMeta.RequestID, | |
87 | ), nil | |
88 | } | |
89 | ||
90 | // UnmarshalErrorHandler is a named request handler for unmarshaling restjson | |
91 | // protocol request errors | |
92 | var UnmarshalErrorHandler = request.NamedHandler{ | |
93 | Name: "awssdk.restjson.UnmarshalError", | |
94 | Fn: UnmarshalError, | |
95 | } | |
96 | ||
97 | // UnmarshalError unmarshals a response error for the REST JSON protocol. | |
98 | func UnmarshalError(r *request.Request) { | |
99 | defer r.HTTPResponse.Body.Close() | |
100 | ||
101 | var jsonErr jsonErrorResponse | |
102 | err := jsonutil.UnmarshalJSONError(&jsonErr, r.HTTPResponse.Body) | |
103 | if err != nil { | |
104 | r.Error = awserr.NewRequestFailure( | |
105 | awserr.New(request.ErrCodeSerialization, | |
106 | "failed to unmarshal response error", err), | |
107 | r.HTTPResponse.StatusCode, | |
108 | r.RequestID, | |
109 | ) | |
110 | return | |
111 | } | |
112 | ||
113 | code := r.HTTPResponse.Header.Get(errorTypeHeader) | |
114 | if code == "" { | |
115 | code = jsonErr.Code | |
116 | } | |
117 | msg := r.HTTPResponse.Header.Get(errorMessageHeader) | |
118 | if msg == "" { | |
119 | msg = jsonErr.Message | |
120 | } | |
121 | ||
122 | code = strings.SplitN(code, ":", 2)[0] | |
123 | r.Error = awserr.NewRequestFailure( | |
124 | awserr.New(code, jsonErr.Message, nil), | |
125 | r.HTTPResponse.StatusCode, | |
126 | r.RequestID, | |
127 | ) | |
128 | } | |
129 | ||
130 | type jsonErrorResponse struct { | |
131 | Code string `json:"code"` | |
132 | Message string `json:"message"` | |
133 | } |
598 | 598 | // for more information on using Contexts. |
599 | 599 | func (c *ECR) DeleteLifecyclePolicyWithContext(ctx aws.Context, input *DeleteLifecyclePolicyInput, opts ...request.Option) (*DeleteLifecyclePolicyOutput, error) { |
600 | 600 | req, out := c.DeleteLifecyclePolicyRequest(input) |
601 | req.SetContext(ctx) | |
602 | req.ApplyOptions(opts...) | |
603 | return out, req.Send() | |
604 | } | |
605 | ||
606 | const opDeleteRegistryPolicy = "DeleteRegistryPolicy" | |
607 | ||
608 | // DeleteRegistryPolicyRequest generates a "aws/request.Request" representing the | |
609 | // client's request for the DeleteRegistryPolicy operation. The "output" return | |
610 | // value will be populated with the request's response once the request completes | |
611 | // successfully. | |
612 | // | |
613 | // Use "Send" method on the returned Request to send the API call to the service. | |
614 | // the "output" return value is not valid until after Send returns without error. | |
615 | // | |
616 | // See DeleteRegistryPolicy for more information on using the DeleteRegistryPolicy | |
617 | // API call, and error handling. | |
618 | // | |
619 | // This method is useful when you want to inject custom logic or configuration | |
620 | // into the SDK's request lifecycle. Such as custom headers, or retry logic. | |
621 | // | |
622 | // | |
623 | // // Example sending a request using the DeleteRegistryPolicyRequest method. | |
624 | // req, resp := client.DeleteRegistryPolicyRequest(params) | |
625 | // | |
626 | // err := req.Send() | |
627 | // if err == nil { // resp is now filled | |
628 | // fmt.Println(resp) | |
629 | // } | |
630 | // | |
631 | // See also, https://docs.aws.amazon.com/goto/WebAPI/ecr-2015-09-21/DeleteRegistryPolicy | |
632 | func (c *ECR) DeleteRegistryPolicyRequest(input *DeleteRegistryPolicyInput) (req *request.Request, output *DeleteRegistryPolicyOutput) { | |
633 | op := &request.Operation{ | |
634 | Name: opDeleteRegistryPolicy, | |
635 | HTTPMethod: "POST", | |
636 | HTTPPath: "/", | |
637 | } | |
638 | ||
639 | if input == nil { | |
640 | input = &DeleteRegistryPolicyInput{} | |
641 | } | |
642 | ||
643 | output = &DeleteRegistryPolicyOutput{} | |
644 | req = c.newRequest(op, input, output) | |
645 | return | |
646 | } | |
647 | ||
648 | // DeleteRegistryPolicy API operation for Amazon EC2 Container Registry. | |
649 | // | |
650 | // Deletes the registry permissions policy. | |
651 | // | |
652 | // Returns awserr.Error for service API and SDK errors. Use runtime type assertions | |
653 | // with awserr.Error's Code and Message methods to get detailed information about | |
654 | // the error. | |
655 | // | |
656 | // See the AWS API reference guide for Amazon EC2 Container Registry's | |
657 | // API operation DeleteRegistryPolicy for usage and error information. | |
658 | // | |
659 | // Returned Error Types: | |
660 | // * ServerException | |
661 | // These errors are usually caused by a server-side issue. | |
662 | // | |
663 | // * InvalidParameterException | |
664 | // The specified parameter is invalid. Review the available parameters for the | |
665 | // API request. | |
666 | // | |
667 | // * RegistryPolicyNotFoundException | |
668 | // The registry doesn't have an associated registry policy. | |
669 | // | |
670 | // See also, https://docs.aws.amazon.com/goto/WebAPI/ecr-2015-09-21/DeleteRegistryPolicy | |
671 | func (c *ECR) DeleteRegistryPolicy(input *DeleteRegistryPolicyInput) (*DeleteRegistryPolicyOutput, error) { | |
672 | req, out := c.DeleteRegistryPolicyRequest(input) | |
673 | return out, req.Send() | |
674 | } | |
675 | ||
676 | // DeleteRegistryPolicyWithContext is the same as DeleteRegistryPolicy with the addition of | |
677 | // the ability to pass a context and additional request options. | |
678 | // | |
679 | // See DeleteRegistryPolicy for details on how to use this API operation. | |
680 | // | |
681 | // The context must be non-nil and will be used for request cancellation. If | |
682 | // the context is nil a panic will occur. In the future the SDK may create | |
683 | // sub-contexts for http.Requests. See https://golang.org/pkg/context/ | |
684 | // for more information on using Contexts. | |
685 | func (c *ECR) DeleteRegistryPolicyWithContext(ctx aws.Context, input *DeleteRegistryPolicyInput, opts ...request.Option) (*DeleteRegistryPolicyOutput, error) { | |
686 | req, out := c.DeleteRegistryPolicyRequest(input) | |
601 | 687 | req.SetContext(ctx) |
602 | 688 | req.ApplyOptions(opts...) |
603 | 689 | return out, req.Send() |
1095 | 1181 | return p.Err() |
1096 | 1182 | } |
1097 | 1183 | |
1184 | const opDescribeRegistry = "DescribeRegistry" | |
1185 | ||
1186 | // DescribeRegistryRequest generates a "aws/request.Request" representing the | |
1187 | // client's request for the DescribeRegistry operation. The "output" return | |
1188 | // value will be populated with the request's response once the request completes | |
1189 | // successfully. | |
1190 | // | |
1191 | // Use "Send" method on the returned Request to send the API call to the service. | |
1192 | // the "output" return value is not valid until after Send returns without error. | |
1193 | // | |
1194 | // See DescribeRegistry for more information on using the DescribeRegistry | |
1195 | // API call, and error handling. | |
1196 | // | |
1197 | // This method is useful when you want to inject custom logic or configuration | |
1198 | // into the SDK's request lifecycle. Such as custom headers, or retry logic. | |
1199 | // | |
1200 | // | |
1201 | // // Example sending a request using the DescribeRegistryRequest method. | |
1202 | // req, resp := client.DescribeRegistryRequest(params) | |
1203 | // | |
1204 | // err := req.Send() | |
1205 | // if err == nil { // resp is now filled | |
1206 | // fmt.Println(resp) | |
1207 | // } | |
1208 | // | |
1209 | // See also, https://docs.aws.amazon.com/goto/WebAPI/ecr-2015-09-21/DescribeRegistry | |
1210 | func (c *ECR) DescribeRegistryRequest(input *DescribeRegistryInput) (req *request.Request, output *DescribeRegistryOutput) { | |
1211 | op := &request.Operation{ | |
1212 | Name: opDescribeRegistry, | |
1213 | HTTPMethod: "POST", | |
1214 | HTTPPath: "/", | |
1215 | } | |
1216 | ||
1217 | if input == nil { | |
1218 | input = &DescribeRegistryInput{} | |
1219 | } | |
1220 | ||
1221 | output = &DescribeRegistryOutput{} | |
1222 | req = c.newRequest(op, input, output) | |
1223 | return | |
1224 | } | |
1225 | ||
1226 | // DescribeRegistry API operation for Amazon EC2 Container Registry. | |
1227 | // | |
1228 | // Describes the settings for a registry. The replication configuration for | |
1229 | // a repository can be created or updated with the PutReplicationConfiguration | |
1230 | // API action. | |
1231 | // | |
1232 | // Returns awserr.Error for service API and SDK errors. Use runtime type assertions | |
1233 | // with awserr.Error's Code and Message methods to get detailed information about | |
1234 | // the error. | |
1235 | // | |
1236 | // See the AWS API reference guide for Amazon EC2 Container Registry's | |
1237 | // API operation DescribeRegistry for usage and error information. | |
1238 | // | |
1239 | // Returned Error Types: | |
1240 | // * ServerException | |
1241 | // These errors are usually caused by a server-side issue. | |
1242 | // | |
1243 | // * InvalidParameterException | |
1244 | // The specified parameter is invalid. Review the available parameters for the | |
1245 | // API request. | |
1246 | // | |
1247 | // * ValidationException | |
1248 | // There was an exception validating this request. | |
1249 | // | |
1250 | // See also, https://docs.aws.amazon.com/goto/WebAPI/ecr-2015-09-21/DescribeRegistry | |
1251 | func (c *ECR) DescribeRegistry(input *DescribeRegistryInput) (*DescribeRegistryOutput, error) { | |
1252 | req, out := c.DescribeRegistryRequest(input) | |
1253 | return out, req.Send() | |
1254 | } | |
1255 | ||
1256 | // DescribeRegistryWithContext is the same as DescribeRegistry with the addition of | |
1257 | // the ability to pass a context and additional request options. | |
1258 | // | |
1259 | // See DescribeRegistry for details on how to use this API operation. | |
1260 | // | |
1261 | // The context must be non-nil and will be used for request cancellation. If | |
1262 | // the context is nil a panic will occur. In the future the SDK may create | |
1263 | // sub-contexts for http.Requests. See https://golang.org/pkg/context/ | |
1264 | // for more information on using Contexts. | |
1265 | func (c *ECR) DescribeRegistryWithContext(ctx aws.Context, input *DescribeRegistryInput, opts ...request.Option) (*DescribeRegistryOutput, error) { | |
1266 | req, out := c.DescribeRegistryRequest(input) | |
1267 | req.SetContext(ctx) | |
1268 | req.ApplyOptions(opts...) | |
1269 | return out, req.Send() | |
1270 | } | |
1271 | ||
1098 | 1272 | const opDescribeRepositories = "DescribeRepositories" |
1099 | 1273 | |
1100 | 1274 | // DescribeRepositoriesRequest generates a "aws/request.Request" representing the |
1674 | 1848 | return p.Err() |
1675 | 1849 | } |
1676 | 1850 | |
1851 | const opGetRegistryPolicy = "GetRegistryPolicy" | |
1852 | ||
1853 | // GetRegistryPolicyRequest generates a "aws/request.Request" representing the | |
1854 | // client's request for the GetRegistryPolicy operation. The "output" return | |
1855 | // value will be populated with the request's response once the request completes | |
1856 | // successfully. | |
1857 | // | |
1858 | // Use "Send" method on the returned Request to send the API call to the service. | |
1859 | // the "output" return value is not valid until after Send returns without error. | |
1860 | // | |
1861 | // See GetRegistryPolicy for more information on using the GetRegistryPolicy | |
1862 | // API call, and error handling. | |
1863 | // | |
1864 | // This method is useful when you want to inject custom logic or configuration | |
1865 | // into the SDK's request lifecycle. Such as custom headers, or retry logic. | |
1866 | // | |
1867 | // | |
1868 | // // Example sending a request using the GetRegistryPolicyRequest method. | |
1869 | // req, resp := client.GetRegistryPolicyRequest(params) | |
1870 | // | |
1871 | // err := req.Send() | |
1872 | // if err == nil { // resp is now filled | |
1873 | // fmt.Println(resp) | |
1874 | // } | |
1875 | // | |
1876 | // See also, https://docs.aws.amazon.com/goto/WebAPI/ecr-2015-09-21/GetRegistryPolicy | |
1877 | func (c *ECR) GetRegistryPolicyRequest(input *GetRegistryPolicyInput) (req *request.Request, output *GetRegistryPolicyOutput) { | |
1878 | op := &request.Operation{ | |
1879 | Name: opGetRegistryPolicy, | |
1880 | HTTPMethod: "POST", | |
1881 | HTTPPath: "/", | |
1882 | } | |
1883 | ||
1884 | if input == nil { | |
1885 | input = &GetRegistryPolicyInput{} | |
1886 | } | |
1887 | ||
1888 | output = &GetRegistryPolicyOutput{} | |
1889 | req = c.newRequest(op, input, output) | |
1890 | return | |
1891 | } | |
1892 | ||
1893 | // GetRegistryPolicy API operation for Amazon EC2 Container Registry. | |
1894 | // | |
1895 | // Retrieves the permissions policy for a registry. | |
1896 | // | |
1897 | // Returns awserr.Error for service API and SDK errors. Use runtime type assertions | |
1898 | // with awserr.Error's Code and Message methods to get detailed information about | |
1899 | // the error. | |
1900 | // | |
1901 | // See the AWS API reference guide for Amazon EC2 Container Registry's | |
1902 | // API operation GetRegistryPolicy for usage and error information. | |
1903 | // | |
1904 | // Returned Error Types: | |
1905 | // * ServerException | |
1906 | // These errors are usually caused by a server-side issue. | |
1907 | // | |
1908 | // * InvalidParameterException | |
1909 | // The specified parameter is invalid. Review the available parameters for the | |
1910 | // API request. | |
1911 | // | |
1912 | // * RegistryPolicyNotFoundException | |
1913 | // The registry doesn't have an associated registry policy. | |
1914 | // | |
1915 | // See also, https://docs.aws.amazon.com/goto/WebAPI/ecr-2015-09-21/GetRegistryPolicy | |
1916 | func (c *ECR) GetRegistryPolicy(input *GetRegistryPolicyInput) (*GetRegistryPolicyOutput, error) { | |
1917 | req, out := c.GetRegistryPolicyRequest(input) | |
1918 | return out, req.Send() | |
1919 | } | |
1920 | ||
1921 | // GetRegistryPolicyWithContext is the same as GetRegistryPolicy with the addition of | |
1922 | // the ability to pass a context and additional request options. | |
1923 | // | |
1924 | // See GetRegistryPolicy for details on how to use this API operation. | |
1925 | // | |
1926 | // The context must be non-nil and will be used for request cancellation. If | |
1927 | // the context is nil a panic will occur. In the future the SDK may create | |
1928 | // sub-contexts for http.Requests. See https://golang.org/pkg/context/ | |
1929 | // for more information on using Contexts. | |
1930 | func (c *ECR) GetRegistryPolicyWithContext(ctx aws.Context, input *GetRegistryPolicyInput, opts ...request.Option) (*GetRegistryPolicyOutput, error) { | |
1931 | req, out := c.GetRegistryPolicyRequest(input) | |
1932 | req.SetContext(ctx) | |
1933 | req.ApplyOptions(opts...) | |
1934 | return out, req.Send() | |
1935 | } | |
1936 | ||
1677 | 1937 | const opGetRepositoryPolicy = "GetRepositoryPolicy" |
1678 | 1938 | |
1679 | 1939 | // GetRepositoryPolicyRequest generates a "aws/request.Request" representing the |
2488 | 2748 | return out, req.Send() |
2489 | 2749 | } |
2490 | 2750 | |
2751 | const opPutRegistryPolicy = "PutRegistryPolicy" | |
2752 | ||
2753 | // PutRegistryPolicyRequest generates a "aws/request.Request" representing the | |
2754 | // client's request for the PutRegistryPolicy operation. The "output" return | |
2755 | // value will be populated with the request's response once the request completes | |
2756 | // successfully. | |
2757 | // | |
2758 | // Use "Send" method on the returned Request to send the API call to the service. | |
2759 | // the "output" return value is not valid until after Send returns without error. | |
2760 | // | |
2761 | // See PutRegistryPolicy for more information on using the PutRegistryPolicy | |
2762 | // API call, and error handling. | |
2763 | // | |
2764 | // This method is useful when you want to inject custom logic or configuration | |
2765 | // into the SDK's request lifecycle. Such as custom headers, or retry logic. | |
2766 | // | |
2767 | // | |
2768 | // // Example sending a request using the PutRegistryPolicyRequest method. | |
2769 | // req, resp := client.PutRegistryPolicyRequest(params) | |
2770 | // | |
2771 | // err := req.Send() | |
2772 | // if err == nil { // resp is now filled | |
2773 | // fmt.Println(resp) | |
2774 | // } | |
2775 | // | |
2776 | // See also, https://docs.aws.amazon.com/goto/WebAPI/ecr-2015-09-21/PutRegistryPolicy | |
2777 | func (c *ECR) PutRegistryPolicyRequest(input *PutRegistryPolicyInput) (req *request.Request, output *PutRegistryPolicyOutput) { | |
2778 | op := &request.Operation{ | |
2779 | Name: opPutRegistryPolicy, | |
2780 | HTTPMethod: "POST", | |
2781 | HTTPPath: "/", | |
2782 | } | |
2783 | ||
2784 | if input == nil { | |
2785 | input = &PutRegistryPolicyInput{} | |
2786 | } | |
2787 | ||
2788 | output = &PutRegistryPolicyOutput{} | |
2789 | req = c.newRequest(op, input, output) | |
2790 | return | |
2791 | } | |
2792 | ||
2793 | // PutRegistryPolicy API operation for Amazon EC2 Container Registry. | |
2794 | // | |
2795 | // Creates or updates the permissions policy for your registry. | |
2796 | // | |
2797 | // A registry policy is used to specify permissions for another AWS account | |
2798 | // and is used when configuring cross-account replication. For more information, | |
2799 | // see Registry permissions (https://docs.aws.amazon.com/AmazonECR/latest/userguide/registry-permissions.html) | |
2800 | // in the Amazon Elastic Container Registry User Guide. | |
2801 | // | |
2802 | // Returns awserr.Error for service API and SDK errors. Use runtime type assertions | |
2803 | // with awserr.Error's Code and Message methods to get detailed information about | |
2804 | // the error. | |
2805 | // | |
2806 | // See the AWS API reference guide for Amazon EC2 Container Registry's | |
2807 | // API operation PutRegistryPolicy for usage and error information. | |
2808 | // | |
2809 | // Returned Error Types: | |
2810 | // * ServerException | |
2811 | // These errors are usually caused by a server-side issue. | |
2812 | // | |
2813 | // * InvalidParameterException | |
2814 | // The specified parameter is invalid. Review the available parameters for the | |
2815 | // API request. | |
2816 | // | |
2817 | // See also, https://docs.aws.amazon.com/goto/WebAPI/ecr-2015-09-21/PutRegistryPolicy | |
2818 | func (c *ECR) PutRegistryPolicy(input *PutRegistryPolicyInput) (*PutRegistryPolicyOutput, error) { | |
2819 | req, out := c.PutRegistryPolicyRequest(input) | |
2820 | return out, req.Send() | |
2821 | } | |
2822 | ||
2823 | // PutRegistryPolicyWithContext is the same as PutRegistryPolicy with the addition of | |
2824 | // the ability to pass a context and additional request options. | |
2825 | // | |
2826 | // See PutRegistryPolicy for details on how to use this API operation. | |
2827 | // | |
2828 | // The context must be non-nil and will be used for request cancellation. If | |
2829 | // the context is nil a panic will occur. In the future the SDK may create | |
2830 | // sub-contexts for http.Requests. See https://golang.org/pkg/context/ | |
2831 | // for more information on using Contexts. | |
2832 | func (c *ECR) PutRegistryPolicyWithContext(ctx aws.Context, input *PutRegistryPolicyInput, opts ...request.Option) (*PutRegistryPolicyOutput, error) { | |
2833 | req, out := c.PutRegistryPolicyRequest(input) | |
2834 | req.SetContext(ctx) | |
2835 | req.ApplyOptions(opts...) | |
2836 | return out, req.Send() | |
2837 | } | |
2838 | ||
2839 | const opPutReplicationConfiguration = "PutReplicationConfiguration" | |
2840 | ||
2841 | // PutReplicationConfigurationRequest generates a "aws/request.Request" representing the | |
2842 | // client's request for the PutReplicationConfiguration operation. The "output" return | |
2843 | // value will be populated with the request's response once the request completes | |
2844 | // successfully. | |
2845 | // | |
2846 | // Use "Send" method on the returned Request to send the API call to the service. | |
2847 | // the "output" return value is not valid until after Send returns without error. | |
2848 | // | |
2849 | // See PutReplicationConfiguration for more information on using the PutReplicationConfiguration | |
2850 | // API call, and error handling. | |
2851 | // | |
2852 | // This method is useful when you want to inject custom logic or configuration | |
2853 | // into the SDK's request lifecycle. Such as custom headers, or retry logic. | |
2854 | // | |
2855 | // | |
2856 | // // Example sending a request using the PutReplicationConfigurationRequest method. | |
2857 | // req, resp := client.PutReplicationConfigurationRequest(params) | |
2858 | // | |
2859 | // err := req.Send() | |
2860 | // if err == nil { // resp is now filled | |
2861 | // fmt.Println(resp) | |
2862 | // } | |
2863 | // | |
2864 | // See also, https://docs.aws.amazon.com/goto/WebAPI/ecr-2015-09-21/PutReplicationConfiguration | |
2865 | func (c *ECR) PutReplicationConfigurationRequest(input *PutReplicationConfigurationInput) (req *request.Request, output *PutReplicationConfigurationOutput) { | |
2866 | op := &request.Operation{ | |
2867 | Name: opPutReplicationConfiguration, | |
2868 | HTTPMethod: "POST", | |
2869 | HTTPPath: "/", | |
2870 | } | |
2871 | ||
2872 | if input == nil { | |
2873 | input = &PutReplicationConfigurationInput{} | |
2874 | } | |
2875 | ||
2876 | output = &PutReplicationConfigurationOutput{} | |
2877 | req = c.newRequest(op, input, output) | |
2878 | return | |
2879 | } | |
2880 | ||
2881 | // PutReplicationConfiguration API operation for Amazon EC2 Container Registry. | |
2882 | // | |
2883 | // Creates or updates the replication configuration for a registry. The existing | |
2884 | // replication configuration for a repository can be retrieved with the DescribeRegistry | |
2885 | // API action. The first time the PutReplicationConfiguration API is called, | |
2886 | // a service-linked IAM role is created in your account for the replication | |
2887 | // process. For more information, see Using Service-Linked Roles for Amazon | |
2888 | // ECR (https://docs.aws.amazon.com/AmazonECR/latest/userguide/using-service-linked-roles.html) | |
2889 | // in the Amazon Elastic Container Registry User Guide. | |
2890 | // | |
2891 | // When configuring cross-account replication, the destination account must | |
2892 | // grant the source account permission to replicate. This permission is controlled | |
2893 | // using a registry permissions policy. For more information, see PutRegistryPolicy. | |
2894 | // | |
2895 | // Returns awserr.Error for service API and SDK errors. Use runtime type assertions | |
2896 | // with awserr.Error's Code and Message methods to get detailed information about | |
2897 | // the error. | |
2898 | // | |
2899 | // See the AWS API reference guide for Amazon EC2 Container Registry's | |
2900 | // API operation PutReplicationConfiguration for usage and error information. | |
2901 | // | |
2902 | // Returned Error Types: | |
2903 | // * ServerException | |
2904 | // These errors are usually caused by a server-side issue. | |
2905 | // | |
2906 | // * InvalidParameterException | |
2907 | // The specified parameter is invalid. Review the available parameters for the | |
2908 | // API request. | |
2909 | // | |
2910 | // * ValidationException | |
2911 | // There was an exception validating this request. | |
2912 | // | |
2913 | // See also, https://docs.aws.amazon.com/goto/WebAPI/ecr-2015-09-21/PutReplicationConfiguration | |
2914 | func (c *ECR) PutReplicationConfiguration(input *PutReplicationConfigurationInput) (*PutReplicationConfigurationOutput, error) { | |
2915 | req, out := c.PutReplicationConfigurationRequest(input) | |
2916 | return out, req.Send() | |
2917 | } | |
2918 | ||
2919 | // PutReplicationConfigurationWithContext is the same as PutReplicationConfiguration with the addition of | |
2920 | // the ability to pass a context and additional request options. | |
2921 | // | |
2922 | // See PutReplicationConfiguration for details on how to use this API operation. | |
2923 | // | |
2924 | // The context must be non-nil and will be used for request cancellation. If | |
2925 | // the context is nil a panic will occur. In the future the SDK may create | |
2926 | // sub-contexts for http.Requests. See https://golang.org/pkg/context/ | |
2927 | // for more information on using Contexts. | |
2928 | func (c *ECR) PutReplicationConfigurationWithContext(ctx aws.Context, input *PutReplicationConfigurationInput, opts ...request.Option) (*PutReplicationConfigurationOutput, error) { | |
2929 | req, out := c.PutReplicationConfigurationRequest(input) | |
2930 | req.SetContext(ctx) | |
2931 | req.ApplyOptions(opts...) | |
2932 | return out, req.Send() | |
2933 | } | |
2934 | ||
2491 | 2935 | const opSetRepositoryPolicy = "SetRepositoryPolicy" |
2492 | 2936 | |
2493 | 2937 | // SetRepositoryPolicyRequest generates a "aws/request.Request" representing the |
3851 | 4295 | return s |
3852 | 4296 | } |
3853 | 4297 | |
4298 | type DeleteRegistryPolicyInput struct { | |
4299 | _ struct{} `type:"structure"` | |
4300 | } | |
4301 | ||
4302 | // String returns the string representation | |
4303 | func (s DeleteRegistryPolicyInput) String() string { | |
4304 | return awsutil.Prettify(s) | |
4305 | } | |
4306 | ||
4307 | // GoString returns the string representation | |
4308 | func (s DeleteRegistryPolicyInput) GoString() string { | |
4309 | return s.String() | |
4310 | } | |
4311 | ||
4312 | type DeleteRegistryPolicyOutput struct { | |
4313 | _ struct{} `type:"structure"` | |
4314 | ||
4315 | // The contents of the registry permissions policy that was deleted. | |
4316 | PolicyText *string `locationName:"policyText" type:"string"` | |
4317 | ||
4318 | // The registry ID associated with the request. | |
4319 | RegistryId *string `locationName:"registryId" type:"string"` | |
4320 | } | |
4321 | ||
4322 | // String returns the string representation | |
4323 | func (s DeleteRegistryPolicyOutput) String() string { | |
4324 | return awsutil.Prettify(s) | |
4325 | } | |
4326 | ||
4327 | // GoString returns the string representation | |
4328 | func (s DeleteRegistryPolicyOutput) GoString() string { | |
4329 | return s.String() | |
4330 | } | |
4331 | ||
4332 | // SetPolicyText sets the PolicyText field's value. | |
4333 | func (s *DeleteRegistryPolicyOutput) SetPolicyText(v string) *DeleteRegistryPolicyOutput { | |
4334 | s.PolicyText = &v | |
4335 | return s | |
4336 | } | |
4337 | ||
4338 | // SetRegistryId sets the RegistryId field's value. | |
4339 | func (s *DeleteRegistryPolicyOutput) SetRegistryId(v string) *DeleteRegistryPolicyOutput { | |
4340 | s.RegistryId = &v | |
4341 | return s | |
4342 | } | |
4343 | ||
3854 | 4344 | type DeleteRepositoryInput struct { |
3855 | 4345 | _ struct{} `type:"structure"` |
3856 | 4346 | |
4374 | 4864 | // SetNextToken sets the NextToken field's value. |
4375 | 4865 | func (s *DescribeImagesOutput) SetNextToken(v string) *DescribeImagesOutput { |
4376 | 4866 | s.NextToken = &v |
4867 | return s | |
4868 | } | |
4869 | ||
4870 | type DescribeRegistryInput struct { | |
4871 | _ struct{} `type:"structure"` | |
4872 | } | |
4873 | ||
4874 | // String returns the string representation | |
4875 | func (s DescribeRegistryInput) String() string { | |
4876 | return awsutil.Prettify(s) | |
4877 | } | |
4878 | ||
4879 | // GoString returns the string representation | |
4880 | func (s DescribeRegistryInput) GoString() string { | |
4881 | return s.String() | |
4882 | } | |
4883 | ||
4884 | type DescribeRegistryOutput struct { | |
4885 | _ struct{} `type:"structure"` | |
4886 | ||
4887 | // The ID of the registry. | |
4888 | RegistryId *string `locationName:"registryId" type:"string"` | |
4889 | ||
4890 | // The replication configuration for the registry. | |
4891 | ReplicationConfiguration *ReplicationConfiguration `locationName:"replicationConfiguration" type:"structure"` | |
4892 | } | |
4893 | ||
4894 | // String returns the string representation | |
4895 | func (s DescribeRegistryOutput) String() string { | |
4896 | return awsutil.Prettify(s) | |
4897 | } | |
4898 | ||
4899 | // GoString returns the string representation | |
4900 | func (s DescribeRegistryOutput) GoString() string { | |
4901 | return s.String() | |
4902 | } | |
4903 | ||
4904 | // SetRegistryId sets the RegistryId field's value. | |
4905 | func (s *DescribeRegistryOutput) SetRegistryId(v string) *DescribeRegistryOutput { | |
4906 | s.RegistryId = &v | |
4907 | return s | |
4908 | } | |
4909 | ||
4910 | // SetReplicationConfiguration sets the ReplicationConfiguration field's value. | |
4911 | func (s *DescribeRegistryOutput) SetReplicationConfiguration(v *ReplicationConfiguration) *DescribeRegistryOutput { | |
4912 | s.ReplicationConfiguration = v | |
4377 | 4913 | return s |
4378 | 4914 | } |
4379 | 4915 | |
4640 | 5176 | // A list of AWS account IDs that are associated with the registries for which |
4641 | 5177 | // to get AuthorizationData objects. If you do not specify a registry, the default |
4642 | 5178 | // registry is assumed. |
4643 | RegistryIds []*string `locationName:"registryIds" min:"1" type:"list"` | |
5179 | // | |
5180 | // Deprecated: This field is deprecated. The returned authorization token can be used to access any Amazon ECR registry that the IAM principal has access to, specifying a registry ID doesn't change the permissions scope of the authorization token. | |
5181 | RegistryIds []*string `locationName:"registryIds" min:"1" deprecated:"true" type:"list"` | |
4644 | 5182 | } |
4645 | 5183 | |
4646 | 5184 | // String returns the string representation |
5090 | 5628 | return s |
5091 | 5629 | } |
5092 | 5630 | |
5631 | type GetRegistryPolicyInput struct { | |
5632 | _ struct{} `type:"structure"` | |
5633 | } | |
5634 | ||
5635 | // String returns the string representation | |
5636 | func (s GetRegistryPolicyInput) String() string { | |
5637 | return awsutil.Prettify(s) | |
5638 | } | |
5639 | ||
5640 | // GoString returns the string representation | |
5641 | func (s GetRegistryPolicyInput) GoString() string { | |
5642 | return s.String() | |
5643 | } | |
5644 | ||
5645 | type GetRegistryPolicyOutput struct { | |
5646 | _ struct{} `type:"structure"` | |
5647 | ||
5648 | // The JSON text of the permissions policy for a registry. | |
5649 | PolicyText *string `locationName:"policyText" type:"string"` | |
5650 | ||
5651 | // The ID of the registry. | |
5652 | RegistryId *string `locationName:"registryId" type:"string"` | |
5653 | } | |
5654 | ||
5655 | // String returns the string representation | |
5656 | func (s GetRegistryPolicyOutput) String() string { | |
5657 | return awsutil.Prettify(s) | |
5658 | } | |
5659 | ||
5660 | // GoString returns the string representation | |
5661 | func (s GetRegistryPolicyOutput) GoString() string { | |
5662 | return s.String() | |
5663 | } | |
5664 | ||
5665 | // SetPolicyText sets the PolicyText field's value. | |
5666 | func (s *GetRegistryPolicyOutput) SetPolicyText(v string) *GetRegistryPolicyOutput { | |
5667 | s.PolicyText = &v | |
5668 | return s | |
5669 | } | |
5670 | ||
5671 | // SetRegistryId sets the RegistryId field's value. | |
5672 | func (s *GetRegistryPolicyOutput) SetRegistryId(v string) *GetRegistryPolicyOutput { | |
5673 | s.RegistryId = &v | |
5674 | return s | |
5675 | } | |
5676 | ||
5093 | 5677 | type GetRepositoryPolicyInput struct { |
5094 | 5678 | _ struct{} `type:"structure"` |
5095 | 5679 | |
7630 | 8214 | return s |
7631 | 8215 | } |
7632 | 8216 | |
8217 | type PutRegistryPolicyInput struct { | |
8218 | _ struct{} `type:"structure"` | |
8219 | ||
8220 | // The JSON policy text to apply to your registry. The policy text follows the | |
8221 | // same format as IAM policy text. For more information, see Registry permissions | |
8222 | // (https://docs.aws.amazon.com/AmazonECR/latest/userguide/registry-permissions.html) | |
8223 | // in the Amazon Elastic Container Registry User Guide. | |
8224 | // | |
8225 | // PolicyText is a required field | |
8226 | PolicyText *string `locationName:"policyText" type:"string" required:"true"` | |
8227 | } | |
8228 | ||
8229 | // String returns the string representation | |
8230 | func (s PutRegistryPolicyInput) String() string { | |
8231 | return awsutil.Prettify(s) | |
8232 | } | |
8233 | ||
8234 | // GoString returns the string representation | |
8235 | func (s PutRegistryPolicyInput) GoString() string { | |
8236 | return s.String() | |
8237 | } | |
8238 | ||
8239 | // Validate inspects the fields of the type to determine if they are valid. | |
8240 | func (s *PutRegistryPolicyInput) Validate() error { | |
8241 | invalidParams := request.ErrInvalidParams{Context: "PutRegistryPolicyInput"} | |
8242 | if s.PolicyText == nil { | |
8243 | invalidParams.Add(request.NewErrParamRequired("PolicyText")) | |
8244 | } | |
8245 | ||
8246 | if invalidParams.Len() > 0 { | |
8247 | return invalidParams | |
8248 | } | |
8249 | return nil | |
8250 | } | |
8251 | ||
8252 | // SetPolicyText sets the PolicyText field's value. | |
8253 | func (s *PutRegistryPolicyInput) SetPolicyText(v string) *PutRegistryPolicyInput { | |
8254 | s.PolicyText = &v | |
8255 | return s | |
8256 | } | |
8257 | ||
8258 | type PutRegistryPolicyOutput struct { | |
8259 | _ struct{} `type:"structure"` | |
8260 | ||
8261 | // The JSON policy text for your registry. | |
8262 | PolicyText *string `locationName:"policyText" type:"string"` | |
8263 | ||
8264 | // The registry ID. | |
8265 | RegistryId *string `locationName:"registryId" type:"string"` | |
8266 | } | |
8267 | ||
8268 | // String returns the string representation | |
8269 | func (s PutRegistryPolicyOutput) String() string { | |
8270 | return awsutil.Prettify(s) | |
8271 | } | |
8272 | ||
8273 | // GoString returns the string representation | |
8274 | func (s PutRegistryPolicyOutput) GoString() string { | |
8275 | return s.String() | |
8276 | } | |
8277 | ||
8278 | // SetPolicyText sets the PolicyText field's value. | |
8279 | func (s *PutRegistryPolicyOutput) SetPolicyText(v string) *PutRegistryPolicyOutput { | |
8280 | s.PolicyText = &v | |
8281 | return s | |
8282 | } | |
8283 | ||
8284 | // SetRegistryId sets the RegistryId field's value. | |
8285 | func (s *PutRegistryPolicyOutput) SetRegistryId(v string) *PutRegistryPolicyOutput { | |
8286 | s.RegistryId = &v | |
8287 | return s | |
8288 | } | |
8289 | ||
8290 | type PutReplicationConfigurationInput struct { | |
8291 | _ struct{} `type:"structure"` | |
8292 | ||
8293 | // An object representing the replication configuration for a registry. | |
8294 | // | |
8295 | // ReplicationConfiguration is a required field | |
8296 | ReplicationConfiguration *ReplicationConfiguration `locationName:"replicationConfiguration" type:"structure" required:"true"` | |
8297 | } | |
8298 | ||
8299 | // String returns the string representation | |
8300 | func (s PutReplicationConfigurationInput) String() string { | |
8301 | return awsutil.Prettify(s) | |
8302 | } | |
8303 | ||
8304 | // GoString returns the string representation | |
8305 | func (s PutReplicationConfigurationInput) GoString() string { | |
8306 | return s.String() | |
8307 | } | |
8308 | ||
8309 | // Validate inspects the fields of the type to determine if they are valid. | |
8310 | func (s *PutReplicationConfigurationInput) Validate() error { | |
8311 | invalidParams := request.ErrInvalidParams{Context: "PutReplicationConfigurationInput"} | |
8312 | if s.ReplicationConfiguration == nil { | |
8313 | invalidParams.Add(request.NewErrParamRequired("ReplicationConfiguration")) | |
8314 | } | |
8315 | if s.ReplicationConfiguration != nil { | |
8316 | if err := s.ReplicationConfiguration.Validate(); err != nil { | |
8317 | invalidParams.AddNested("ReplicationConfiguration", err.(request.ErrInvalidParams)) | |
8318 | } | |
8319 | } | |
8320 | ||
8321 | if invalidParams.Len() > 0 { | |
8322 | return invalidParams | |
8323 | } | |
8324 | return nil | |
8325 | } | |
8326 | ||
8327 | // SetReplicationConfiguration sets the ReplicationConfiguration field's value. | |
8328 | func (s *PutReplicationConfigurationInput) SetReplicationConfiguration(v *ReplicationConfiguration) *PutReplicationConfigurationInput { | |
8329 | s.ReplicationConfiguration = v | |
8330 | return s | |
8331 | } | |
8332 | ||
8333 | type PutReplicationConfigurationOutput struct { | |
8334 | _ struct{} `type:"structure"` | |
8335 | ||
8336 | // The contents of the replication configuration for the registry. | |
8337 | ReplicationConfiguration *ReplicationConfiguration `locationName:"replicationConfiguration" type:"structure"` | |
8338 | } | |
8339 | ||
8340 | // String returns the string representation | |
8341 | func (s PutReplicationConfigurationOutput) String() string { | |
8342 | return awsutil.Prettify(s) | |
8343 | } | |
8344 | ||
8345 | // GoString returns the string representation | |
8346 | func (s PutReplicationConfigurationOutput) GoString() string { | |
8347 | return s.String() | |
8348 | } | |
8349 | ||
8350 | // SetReplicationConfiguration sets the ReplicationConfiguration field's value. | |
8351 | func (s *PutReplicationConfigurationOutput) SetReplicationConfiguration(v *ReplicationConfiguration) *PutReplicationConfigurationOutput { | |
8352 | s.ReplicationConfiguration = v | |
8353 | return s | |
8354 | } | |
8355 | ||
7633 | 8356 | // The manifest list is referencing an image that does not exist. |
7634 | 8357 | type ReferencedImagesNotFoundException struct { |
7635 | 8358 | _ struct{} `type:"structure"` |
7684 | 8407 | // RequestID returns the service's response RequestID for request. |
7685 | 8408 | func (s *ReferencedImagesNotFoundException) RequestID() string { |
7686 | 8409 | return s.RespMetadata.RequestID |
8410 | } | |
8411 | ||
8412 | // The registry doesn't have an associated registry policy. | |
8413 | type RegistryPolicyNotFoundException struct { | |
8414 | _ struct{} `type:"structure"` | |
8415 | RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` | |
8416 | ||
8417 | Message_ *string `locationName:"message" type:"string"` | |
8418 | } | |
8419 | ||
8420 | // String returns the string representation | |
8421 | func (s RegistryPolicyNotFoundException) String() string { | |
8422 | return awsutil.Prettify(s) | |
8423 | } | |
8424 | ||
8425 | // GoString returns the string representation | |
8426 | func (s RegistryPolicyNotFoundException) GoString() string { | |
8427 | return s.String() | |
8428 | } | |
8429 | ||
8430 | func newErrorRegistryPolicyNotFoundException(v protocol.ResponseMetadata) error { | |
8431 | return &RegistryPolicyNotFoundException{ | |
8432 | RespMetadata: v, | |
8433 | } | |
8434 | } | |
8435 | ||
8436 | // Code returns the exception type name. | |
8437 | func (s *RegistryPolicyNotFoundException) Code() string { | |
8438 | return "RegistryPolicyNotFoundException" | |
8439 | } | |
8440 | ||
8441 | // Message returns the exception's message. | |
8442 | func (s *RegistryPolicyNotFoundException) Message() string { | |
8443 | if s.Message_ != nil { | |
8444 | return *s.Message_ | |
8445 | } | |
8446 | return "" | |
8447 | } | |
8448 | ||
8449 | // OrigErr always returns nil, satisfies awserr.Error interface. | |
8450 | func (s *RegistryPolicyNotFoundException) OrigErr() error { | |
8451 | return nil | |
8452 | } | |
8453 | ||
8454 | func (s *RegistryPolicyNotFoundException) Error() string { | |
8455 | return fmt.Sprintf("%s: %s", s.Code(), s.Message()) | |
8456 | } | |
8457 | ||
8458 | // Status code returns the HTTP status code for the request's response error. | |
8459 | func (s *RegistryPolicyNotFoundException) StatusCode() int { | |
8460 | return s.RespMetadata.StatusCode | |
8461 | } | |
8462 | ||
8463 | // RequestID returns the service's response RequestID for request. | |
8464 | func (s *RegistryPolicyNotFoundException) RequestID() string { | |
8465 | return s.RespMetadata.RequestID | |
8466 | } | |
8467 | ||
8468 | // The replication configuration for a registry. | |
8469 | type ReplicationConfiguration struct { | |
8470 | _ struct{} `type:"structure"` | |
8471 | ||
8472 | // An array of objects representing the replication rules for a replication | |
8473 | // configuration. A replication configuration may contain only one replication | |
8474 | // rule but the rule may contain one or more replication destinations. | |
8475 | // | |
8476 | // Rules is a required field | |
8477 | Rules []*ReplicationRule `locationName:"rules" type:"list" required:"true"` | |
8478 | } | |
8479 | ||
8480 | // String returns the string representation | |
8481 | func (s ReplicationConfiguration) String() string { | |
8482 | return awsutil.Prettify(s) | |
8483 | } | |
8484 | ||
8485 | // GoString returns the string representation | |
8486 | func (s ReplicationConfiguration) GoString() string { | |
8487 | return s.String() | |
8488 | } | |
8489 | ||
8490 | // Validate inspects the fields of the type to determine if they are valid. | |
8491 | func (s *ReplicationConfiguration) Validate() error { | |
8492 | invalidParams := request.ErrInvalidParams{Context: "ReplicationConfiguration"} | |
8493 | if s.Rules == nil { | |
8494 | invalidParams.Add(request.NewErrParamRequired("Rules")) | |
8495 | } | |
8496 | if s.Rules != nil { | |
8497 | for i, v := range s.Rules { | |
8498 | if v == nil { | |
8499 | continue | |
8500 | } | |
8501 | if err := v.Validate(); err != nil { | |
8502 | invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Rules", i), err.(request.ErrInvalidParams)) | |
8503 | } | |
8504 | } | |
8505 | } | |
8506 | ||
8507 | if invalidParams.Len() > 0 { | |
8508 | return invalidParams | |
8509 | } | |
8510 | return nil | |
8511 | } | |
8512 | ||
8513 | // SetRules sets the Rules field's value. | |
8514 | func (s *ReplicationConfiguration) SetRules(v []*ReplicationRule) *ReplicationConfiguration { | |
8515 | s.Rules = v | |
8516 | return s | |
8517 | } | |
8518 | ||
8519 | // An array of objects representing the details of a replication destination. | |
8520 | type ReplicationDestination struct { | |
8521 | _ struct{} `type:"structure"` | |
8522 | ||
8523 | // A Region to replicate to. | |
8524 | // | |
8525 | // Region is a required field | |
8526 | Region *string `locationName:"region" min:"2" type:"string" required:"true"` | |
8527 | ||
8528 | // The account ID of the destination registry to replicate to. | |
8529 | // | |
8530 | // RegistryId is a required field | |
8531 | RegistryId *string `locationName:"registryId" type:"string" required:"true"` | |
8532 | } | |
8533 | ||
8534 | // String returns the string representation | |
8535 | func (s ReplicationDestination) String() string { | |
8536 | return awsutil.Prettify(s) | |
8537 | } | |
8538 | ||
8539 | // GoString returns the string representation | |
8540 | func (s ReplicationDestination) GoString() string { | |
8541 | return s.String() | |
8542 | } | |
8543 | ||
8544 | // Validate inspects the fields of the type to determine if they are valid. | |
8545 | func (s *ReplicationDestination) Validate() error { | |
8546 | invalidParams := request.ErrInvalidParams{Context: "ReplicationDestination"} | |
8547 | if s.Region == nil { | |
8548 | invalidParams.Add(request.NewErrParamRequired("Region")) | |
8549 | } | |
8550 | if s.Region != nil && len(*s.Region) < 2 { | |
8551 | invalidParams.Add(request.NewErrParamMinLen("Region", 2)) | |
8552 | } | |
8553 | if s.RegistryId == nil { | |
8554 | invalidParams.Add(request.NewErrParamRequired("RegistryId")) | |
8555 | } | |
8556 | ||
8557 | if invalidParams.Len() > 0 { | |
8558 | return invalidParams | |
8559 | } | |
8560 | return nil | |
8561 | } | |
8562 | ||
8563 | // SetRegion sets the Region field's value. | |
8564 | func (s *ReplicationDestination) SetRegion(v string) *ReplicationDestination { | |
8565 | s.Region = &v | |
8566 | return s | |
8567 | } | |
8568 | ||
8569 | // SetRegistryId sets the RegistryId field's value. | |
8570 | func (s *ReplicationDestination) SetRegistryId(v string) *ReplicationDestination { | |
8571 | s.RegistryId = &v | |
8572 | return s | |
8573 | } | |
8574 | ||
8575 | // An array of objects representing the replication destinations for a replication | |
8576 | // configuration. A replication configuration may contain only one replication | |
8577 | // rule but the rule may contain one or more replication destinations. | |
8578 | type ReplicationRule struct { | |
8579 | _ struct{} `type:"structure"` | |
8580 | ||
8581 | // An array of objects representing the details of a replication destination. | |
8582 | // | |
8583 | // Destinations is a required field | |
8584 | Destinations []*ReplicationDestination `locationName:"destinations" type:"list" required:"true"` | |
8585 | } | |
8586 | ||
8587 | // String returns the string representation | |
8588 | func (s ReplicationRule) String() string { | |
8589 | return awsutil.Prettify(s) | |
8590 | } | |
8591 | ||
8592 | // GoString returns the string representation | |
8593 | func (s ReplicationRule) GoString() string { | |
8594 | return s.String() | |
8595 | } | |
8596 | ||
8597 | // Validate inspects the fields of the type to determine if they are valid. | |
8598 | func (s *ReplicationRule) Validate() error { | |
8599 | invalidParams := request.ErrInvalidParams{Context: "ReplicationRule"} | |
8600 | if s.Destinations == nil { | |
8601 | invalidParams.Add(request.NewErrParamRequired("Destinations")) | |
8602 | } | |
8603 | if s.Destinations != nil { | |
8604 | for i, v := range s.Destinations { | |
8605 | if v == nil { | |
8606 | continue | |
8607 | } | |
8608 | if err := v.Validate(); err != nil { | |
8609 | invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Destinations", i), err.(request.ErrInvalidParams)) | |
8610 | } | |
8611 | } | |
8612 | } | |
8613 | ||
8614 | if invalidParams.Len() > 0 { | |
8615 | return invalidParams | |
8616 | } | |
8617 | return nil | |
8618 | } | |
8619 | ||
8620 | // SetDestinations sets the Destinations field's value. | |
8621 | func (s *ReplicationRule) SetDestinations(v []*ReplicationDestination) *ReplicationRule { | |
8622 | s.Destinations = v | |
8623 | return s | |
7687 | 8624 | } |
7688 | 8625 | |
7689 | 8626 | // An object representing a repository. |
8981 | 9918 | |
8982 | 9919 | // RequestID returns the service's response RequestID for request. |
8983 | 9920 | func (s *UploadNotFoundException) RequestID() string { |
9921 | return s.RespMetadata.RequestID | |
9922 | } | |
9923 | ||
9924 | // There was an exception validating this request. | |
9925 | type ValidationException struct { | |
9926 | _ struct{} `type:"structure"` | |
9927 | RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` | |
9928 | ||
9929 | Message_ *string `locationName:"message" type:"string"` | |
9930 | } | |
9931 | ||
9932 | // String returns the string representation | |
9933 | func (s ValidationException) String() string { | |
9934 | return awsutil.Prettify(s) | |
9935 | } | |
9936 | ||
9937 | // GoString returns the string representation | |
9938 | func (s ValidationException) GoString() string { | |
9939 | return s.String() | |
9940 | } | |
9941 | ||
9942 | func newErrorValidationException(v protocol.ResponseMetadata) error { | |
9943 | return &ValidationException{ | |
9944 | RespMetadata: v, | |
9945 | } | |
9946 | } | |
9947 | ||
9948 | // Code returns the exception type name. | |
9949 | func (s *ValidationException) Code() string { | |
9950 | return "ValidationException" | |
9951 | } | |
9952 | ||
9953 | // Message returns the exception's message. | |
9954 | func (s *ValidationException) Message() string { | |
9955 | if s.Message_ != nil { | |
9956 | return *s.Message_ | |
9957 | } | |
9958 | return "" | |
9959 | } | |
9960 | ||
9961 | // OrigErr always returns nil, satisfies awserr.Error interface. | |
9962 | func (s *ValidationException) OrigErr() error { | |
9963 | return nil | |
9964 | } | |
9965 | ||
9966 | func (s *ValidationException) Error() string { | |
9967 | return fmt.Sprintf("%s: %s", s.Code(), s.Message()) | |
9968 | } | |
9969 | ||
9970 | // Status code returns the HTTP status code for the request's response error. | |
9971 | func (s *ValidationException) StatusCode() int { | |
9972 | return s.RespMetadata.StatusCode | |
9973 | } | |
9974 | ||
9975 | // RequestID returns the service's response RequestID for request. | |
9976 | func (s *ValidationException) RequestID() string { | |
8984 | 9977 | return s.RespMetadata.RequestID |
8985 | 9978 | } |
8986 | 9979 |
134 | 134 | // The manifest list is referencing an image that does not exist. |
135 | 135 | ErrCodeReferencedImagesNotFoundException = "ReferencedImagesNotFoundException" |
136 | 136 | |
137 | // ErrCodeRegistryPolicyNotFoundException for service response error code | |
138 | // "RegistryPolicyNotFoundException". | |
139 | // | |
140 | // The registry doesn't have an associated registry policy. | |
141 | ErrCodeRegistryPolicyNotFoundException = "RegistryPolicyNotFoundException" | |
142 | ||
137 | 143 | // ErrCodeRepositoryAlreadyExistsException for service response error code |
138 | 144 | // "RepositoryAlreadyExistsException". |
139 | 145 | // |
193 | 199 | // The upload could not be found, or the specified upload ID is not valid for |
194 | 200 | // this repository. |
195 | 201 | ErrCodeUploadNotFoundException = "UploadNotFoundException" |
202 | ||
203 | // ErrCodeValidationException for service response error code | |
204 | // "ValidationException". | |
205 | // | |
206 | // There was an exception validating this request. | |
207 | ErrCodeValidationException = "ValidationException" | |
196 | 208 | ) |
197 | 209 | |
198 | 210 | var exceptionFromCode = map[string]func(protocol.ResponseMetadata) error{ |
215 | 227 | "LifecyclePolicyPreviewNotFoundException": newErrorLifecyclePolicyPreviewNotFoundException, |
216 | 228 | "LimitExceededException": newErrorLimitExceededException, |
217 | 229 | "ReferencedImagesNotFoundException": newErrorReferencedImagesNotFoundException, |
230 | "RegistryPolicyNotFoundException": newErrorRegistryPolicyNotFoundException, | |
218 | 231 | "RepositoryAlreadyExistsException": newErrorRepositoryAlreadyExistsException, |
219 | 232 | "RepositoryNotEmptyException": newErrorRepositoryNotEmptyException, |
220 | 233 | "RepositoryNotFoundException": newErrorRepositoryNotFoundException, |
224 | 237 | "TooManyTagsException": newErrorTooManyTagsException, |
225 | 238 | "UnsupportedImageTypeException": newErrorUnsupportedImageTypeException, |
226 | 239 | "UploadNotFoundException": newErrorUploadNotFoundException, |
240 | "ValidationException": newErrorValidationException, | |
227 | 241 | } |
9 | 9 | "github.com/aws/aws-sdk-go/aws/awsutil" |
10 | 10 | "github.com/aws/aws-sdk-go/aws/request" |
11 | 11 | "github.com/aws/aws-sdk-go/private/protocol" |
12 | "github.com/aws/aws-sdk-go/private/protocol/jsonrpc" | |
12 | 13 | ) |
13 | 14 | |
14 | 15 | const opBatchCheckLayerAvailability = "BatchCheckLayerAvailability" |
384 | 385 | // * InvalidParameterException |
385 | 386 | // The specified parameter is invalid. Review the available parameters for the |
386 | 387 | // API request. |
388 | // | |
389 | // * InvalidTagParameterException | |
390 | // An invalid parameter has been specified. Tag keys can have a maximum character | |
391 | // length of 128 characters, and tag values can have a maximum length of 256 | |
392 | // characters. | |
393 | // | |
394 | // * TooManyTagsException | |
395 | // The list of tags on the repository is over the limit. The maximum number | |
396 | // of tags that can be applied to a repository is 50. | |
387 | 397 | // |
388 | 398 | // * RepositoryAlreadyExistsException |
389 | 399 | // The specified repository already exists in the specified registry. |
1635 | 1645 | return out, req.Send() |
1636 | 1646 | } |
1637 | 1647 | |
1648 | const opListTagsForResource = "ListTagsForResource" | |
1649 | ||
1650 | // ListTagsForResourceRequest generates a "aws/request.Request" representing the | |
1651 | // client's request for the ListTagsForResource operation. The "output" return | |
1652 | // value will be populated with the request's response once the request completes | |
1653 | // successfully. | |
1654 | // | |
1655 | // Use "Send" method on the returned Request to send the API call to the service. | |
1656 | // the "output" return value is not valid until after Send returns without error. | |
1657 | // | |
1658 | // See ListTagsForResource for more information on using the ListTagsForResource | |
1659 | // API call, and error handling. | |
1660 | // | |
1661 | // This method is useful when you want to inject custom logic or configuration | |
1662 | // into the SDK's request lifecycle. Such as custom headers, or retry logic. | |
1663 | // | |
1664 | // | |
1665 | // // Example sending a request using the ListTagsForResourceRequest method. | |
1666 | // req, resp := client.ListTagsForResourceRequest(params) | |
1667 | // | |
1668 | // err := req.Send() | |
1669 | // if err == nil { // resp is now filled | |
1670 | // fmt.Println(resp) | |
1671 | // } | |
1672 | // | |
1673 | // See also, https://docs.aws.amazon.com/goto/WebAPI/ecr-public-2020-10-30/ListTagsForResource | |
1674 | func (c *ECRPublic) ListTagsForResourceRequest(input *ListTagsForResourceInput) (req *request.Request, output *ListTagsForResourceOutput) { | |
1675 | op := &request.Operation{ | |
1676 | Name: opListTagsForResource, | |
1677 | HTTPMethod: "POST", | |
1678 | HTTPPath: "/", | |
1679 | } | |
1680 | ||
1681 | if input == nil { | |
1682 | input = &ListTagsForResourceInput{} | |
1683 | } | |
1684 | ||
1685 | output = &ListTagsForResourceOutput{} | |
1686 | req = c.newRequest(op, input, output) | |
1687 | return | |
1688 | } | |
1689 | ||
1690 | // ListTagsForResource API operation for Amazon Elastic Container Registry Public. | |
1691 | // | |
1692 | // List the tags for an Amazon ECR Public resource. | |
1693 | // | |
1694 | // Returns awserr.Error for service API and SDK errors. Use runtime type assertions | |
1695 | // with awserr.Error's Code and Message methods to get detailed information about | |
1696 | // the error. | |
1697 | // | |
1698 | // See the AWS API reference guide for Amazon Elastic Container Registry Public's | |
1699 | // API operation ListTagsForResource for usage and error information. | |
1700 | // | |
1701 | // Returned Error Types: | |
1702 | // * InvalidParameterException | |
1703 | // The specified parameter is invalid. Review the available parameters for the | |
1704 | // API request. | |
1705 | // | |
1706 | // * RepositoryNotFoundException | |
1707 | // The specified repository could not be found. Check the spelling of the specified | |
1708 | // repository and ensure that you are performing operations on the correct registry. | |
1709 | // | |
1710 | // * ServerException | |
1711 | // These errors are usually caused by a server-side issue. | |
1712 | // | |
1713 | // See also, https://docs.aws.amazon.com/goto/WebAPI/ecr-public-2020-10-30/ListTagsForResource | |
1714 | func (c *ECRPublic) ListTagsForResource(input *ListTagsForResourceInput) (*ListTagsForResourceOutput, error) { | |
1715 | req, out := c.ListTagsForResourceRequest(input) | |
1716 | return out, req.Send() | |
1717 | } | |
1718 | ||
1719 | // ListTagsForResourceWithContext is the same as ListTagsForResource with the addition of | |
1720 | // the ability to pass a context and additional request options. | |
1721 | // | |
1722 | // See ListTagsForResource for details on how to use this API operation. | |
1723 | // | |
1724 | // The context must be non-nil and will be used for request cancellation. If | |
1725 | // the context is nil a panic will occur. In the future the SDK may create | |
1726 | // sub-contexts for http.Requests. See https://golang.org/pkg/context/ | |
1727 | // for more information on using Contexts. | |
1728 | func (c *ECRPublic) ListTagsForResourceWithContext(ctx aws.Context, input *ListTagsForResourceInput, opts ...request.Option) (*ListTagsForResourceOutput, error) { | |
1729 | req, out := c.ListTagsForResourceRequest(input) | |
1730 | req.SetContext(ctx) | |
1731 | req.ApplyOptions(opts...) | |
1732 | return out, req.Send() | |
1733 | } | |
1734 | ||
1638 | 1735 | const opPutImage = "PutImage" |
1639 | 1736 | |
1640 | 1737 | // PutImageRequest generates a "aws/request.Request" representing the |
2023 | 2120 | return out, req.Send() |
2024 | 2121 | } |
2025 | 2122 | |
2123 | const opTagResource = "TagResource" | |
2124 | ||
2125 | // TagResourceRequest generates a "aws/request.Request" representing the | |
2126 | // client's request for the TagResource operation. The "output" return | |
2127 | // value will be populated with the request's response once the request completes | |
2128 | // successfully. | |
2129 | // | |
2130 | // Use "Send" method on the returned Request to send the API call to the service. | |
2131 | // the "output" return value is not valid until after Send returns without error. | |
2132 | // | |
2133 | // See TagResource for more information on using the TagResource | |
2134 | // API call, and error handling. | |
2135 | // | |
2136 | // This method is useful when you want to inject custom logic or configuration | |
2137 | // into the SDK's request lifecycle. Such as custom headers, or retry logic. | |
2138 | // | |
2139 | // | |
2140 | // // Example sending a request using the TagResourceRequest method. | |
2141 | // req, resp := client.TagResourceRequest(params) | |
2142 | // | |
2143 | // err := req.Send() | |
2144 | // if err == nil { // resp is now filled | |
2145 | // fmt.Println(resp) | |
2146 | // } | |
2147 | // | |
2148 | // See also, https://docs.aws.amazon.com/goto/WebAPI/ecr-public-2020-10-30/TagResource | |
2149 | func (c *ECRPublic) TagResourceRequest(input *TagResourceInput) (req *request.Request, output *TagResourceOutput) { | |
2150 | op := &request.Operation{ | |
2151 | Name: opTagResource, | |
2152 | HTTPMethod: "POST", | |
2153 | HTTPPath: "/", | |
2154 | } | |
2155 | ||
2156 | if input == nil { | |
2157 | input = &TagResourceInput{} | |
2158 | } | |
2159 | ||
2160 | output = &TagResourceOutput{} | |
2161 | req = c.newRequest(op, input, output) | |
2162 | req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) | |
2163 | return | |
2164 | } | |
2165 | ||
2166 | // TagResource API operation for Amazon Elastic Container Registry Public. | |
2167 | // | |
2168 | // Associates the specified tags to a resource with the specified resourceArn. | |
2169 | // If existing tags on a resource are not specified in the request parameters, | |
2170 | // they are not changed. When a resource is deleted, the tags associated with | |
2171 | // that resource are deleted as well. | |
2172 | // | |
2173 | // Returns awserr.Error for service API and SDK errors. Use runtime type assertions | |
2174 | // with awserr.Error's Code and Message methods to get detailed information about | |
2175 | // the error. | |
2176 | // | |
2177 | // See the AWS API reference guide for Amazon Elastic Container Registry Public's | |
2178 | // API operation TagResource for usage and error information. | |
2179 | // | |
2180 | // Returned Error Types: | |
2181 | // * InvalidParameterException | |
2182 | // The specified parameter is invalid. Review the available parameters for the | |
2183 | // API request. | |
2184 | // | |
2185 | // * InvalidTagParameterException | |
2186 | // An invalid parameter has been specified. Tag keys can have a maximum character | |
2187 | // length of 128 characters, and tag values can have a maximum length of 256 | |
2188 | // characters. | |
2189 | // | |
2190 | // * TooManyTagsException | |
2191 | // The list of tags on the repository is over the limit. The maximum number | |
2192 | // of tags that can be applied to a repository is 50. | |
2193 | // | |
2194 | // * RepositoryNotFoundException | |
2195 | // The specified repository could not be found. Check the spelling of the specified | |
2196 | // repository and ensure that you are performing operations on the correct registry. | |
2197 | // | |
2198 | // * ServerException | |
2199 | // These errors are usually caused by a server-side issue. | |
2200 | // | |
2201 | // See also, https://docs.aws.amazon.com/goto/WebAPI/ecr-public-2020-10-30/TagResource | |
2202 | func (c *ECRPublic) TagResource(input *TagResourceInput) (*TagResourceOutput, error) { | |
2203 | req, out := c.TagResourceRequest(input) | |
2204 | return out, req.Send() | |
2205 | } | |
2206 | ||
2207 | // TagResourceWithContext is the same as TagResource with the addition of | |
2208 | // the ability to pass a context and additional request options. | |
2209 | // | |
2210 | // See TagResource for details on how to use this API operation. | |
2211 | // | |
2212 | // The context must be non-nil and will be used for request cancellation. If | |
2213 | // the context is nil a panic will occur. In the future the SDK may create | |
2214 | // sub-contexts for http.Requests. See https://golang.org/pkg/context/ | |
2215 | // for more information on using Contexts. | |
2216 | func (c *ECRPublic) TagResourceWithContext(ctx aws.Context, input *TagResourceInput, opts ...request.Option) (*TagResourceOutput, error) { | |
2217 | req, out := c.TagResourceRequest(input) | |
2218 | req.SetContext(ctx) | |
2219 | req.ApplyOptions(opts...) | |
2220 | return out, req.Send() | |
2221 | } | |
2222 | ||
2223 | const opUntagResource = "UntagResource" | |
2224 | ||
2225 | // UntagResourceRequest generates a "aws/request.Request" representing the | |
2226 | // client's request for the UntagResource operation. The "output" return | |
2227 | // value will be populated with the request's response once the request completes | |
2228 | // successfully. | |
2229 | // | |
2230 | // Use "Send" method on the returned Request to send the API call to the service. | |
2231 | // the "output" return value is not valid until after Send returns without error. | |
2232 | // | |
2233 | // See UntagResource for more information on using the UntagResource | |
2234 | // API call, and error handling. | |
2235 | // | |
2236 | // This method is useful when you want to inject custom logic or configuration | |
2237 | // into the SDK's request lifecycle. Such as custom headers, or retry logic. | |
2238 | // | |
2239 | // | |
2240 | // // Example sending a request using the UntagResourceRequest method. | |
2241 | // req, resp := client.UntagResourceRequest(params) | |
2242 | // | |
2243 | // err := req.Send() | |
2244 | // if err == nil { // resp is now filled | |
2245 | // fmt.Println(resp) | |
2246 | // } | |
2247 | // | |
2248 | // See also, https://docs.aws.amazon.com/goto/WebAPI/ecr-public-2020-10-30/UntagResource | |
2249 | func (c *ECRPublic) UntagResourceRequest(input *UntagResourceInput) (req *request.Request, output *UntagResourceOutput) { | |
2250 | op := &request.Operation{ | |
2251 | Name: opUntagResource, | |
2252 | HTTPMethod: "POST", | |
2253 | HTTPPath: "/", | |
2254 | } | |
2255 | ||
2256 | if input == nil { | |
2257 | input = &UntagResourceInput{} | |
2258 | } | |
2259 | ||
2260 | output = &UntagResourceOutput{} | |
2261 | req = c.newRequest(op, input, output) | |
2262 | req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) | |
2263 | return | |
2264 | } | |
2265 | ||
2266 | // UntagResource API operation for Amazon Elastic Container Registry Public. | |
2267 | // | |
2268 | // Deletes specified tags from a resource. | |
2269 | // | |
2270 | // Returns awserr.Error for service API and SDK errors. Use runtime type assertions | |
2271 | // with awserr.Error's Code and Message methods to get detailed information about | |
2272 | // the error. | |
2273 | // | |
2274 | // See the AWS API reference guide for Amazon Elastic Container Registry Public's | |
2275 | // API operation UntagResource for usage and error information. | |
2276 | // | |
2277 | // Returned Error Types: | |
2278 | // * InvalidParameterException | |
2279 | // The specified parameter is invalid. Review the available parameters for the | |
2280 | // API request. | |
2281 | // | |
2282 | // * InvalidTagParameterException | |
2283 | // An invalid parameter has been specified. Tag keys can have a maximum character | |
2284 | // length of 128 characters, and tag values can have a maximum length of 256 | |
2285 | // characters. | |
2286 | // | |
2287 | // * TooManyTagsException | |
2288 | // The list of tags on the repository is over the limit. The maximum number | |
2289 | // of tags that can be applied to a repository is 50. | |
2290 | // | |
2291 | // * RepositoryNotFoundException | |
2292 | // The specified repository could not be found. Check the spelling of the specified | |
2293 | // repository and ensure that you are performing operations on the correct registry. | |
2294 | // | |
2295 | // * ServerException | |
2296 | // These errors are usually caused by a server-side issue. | |
2297 | // | |
2298 | // See also, https://docs.aws.amazon.com/goto/WebAPI/ecr-public-2020-10-30/UntagResource | |
2299 | func (c *ECRPublic) UntagResource(input *UntagResourceInput) (*UntagResourceOutput, error) { | |
2300 | req, out := c.UntagResourceRequest(input) | |
2301 | return out, req.Send() | |
2302 | } | |
2303 | ||
2304 | // UntagResourceWithContext is the same as UntagResource with the addition of | |
2305 | // the ability to pass a context and additional request options. | |
2306 | // | |
2307 | // See UntagResource for details on how to use this API operation. | |
2308 | // | |
2309 | // The context must be non-nil and will be used for request cancellation. If | |
2310 | // the context is nil a panic will occur. In the future the SDK may create | |
2311 | // sub-contexts for http.Requests. See https://golang.org/pkg/context/ | |
2312 | // for more information on using Contexts. | |
2313 | func (c *ECRPublic) UntagResourceWithContext(ctx aws.Context, input *UntagResourceInput, opts ...request.Option) (*UntagResourceOutput, error) { | |
2314 | req, out := c.UntagResourceRequest(input) | |
2315 | req.SetContext(ctx) | |
2316 | req.ApplyOptions(opts...) | |
2317 | return out, req.Send() | |
2318 | } | |
2319 | ||
2026 | 2320 | const opUploadLayerPart = "UploadLayerPart" |
2027 | 2321 | |
2028 | 2322 | // UploadLayerPartRequest generates a "aws/request.Request" representing the |
2541 | 2835 | // |
2542 | 2836 | // RepositoryName is a required field |
2543 | 2837 | RepositoryName *string `locationName:"repositoryName" min:"2" type:"string" required:"true"` |
2838 | ||
2839 | // The metadata that you apply to the repository to help you categorize and | |
2840 | // organize them. Each tag consists of a key and an optional value, both of | |
2841 | // which you define. Tag keys can have a maximum character length of 128 characters, | |
2842 | // and tag values can have a maximum length of 256 characters. | |
2843 | Tags []*Tag `locationName:"tags" type:"list"` | |
2544 | 2844 | } |
2545 | 2845 | |
2546 | 2846 | // String returns the string representation |
2562 | 2862 | if s.RepositoryName != nil && len(*s.RepositoryName) < 2 { |
2563 | 2863 | invalidParams.Add(request.NewErrParamMinLen("RepositoryName", 2)) |
2564 | 2864 | } |
2865 | if s.Tags != nil { | |
2866 | for i, v := range s.Tags { | |
2867 | if v == nil { | |
2868 | continue | |
2869 | } | |
2870 | if err := v.Validate(); err != nil { | |
2871 | invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) | |
2872 | } | |
2873 | } | |
2874 | } | |
2565 | 2875 | |
2566 | 2876 | if invalidParams.Len() > 0 { |
2567 | 2877 | return invalidParams |
2578 | 2888 | // SetRepositoryName sets the RepositoryName field's value. |
2579 | 2889 | func (s *CreateRepositoryInput) SetRepositoryName(v string) *CreateRepositoryInput { |
2580 | 2890 | s.RepositoryName = &v |
2891 | return s | |
2892 | } | |
2893 | ||
2894 | // SetTags sets the Tags field's value. | |
2895 | func (s *CreateRepositoryInput) SetTags(v []*Tag) *CreateRepositoryInput { | |
2896 | s.Tags = v | |
2581 | 2897 | return s |
2582 | 2898 | } |
2583 | 2899 | |
4353 | 4669 | return s.RespMetadata.RequestID |
4354 | 4670 | } |
4355 | 4671 | |
4672 | // An invalid parameter has been specified. Tag keys can have a maximum character | |
4673 | // length of 128 characters, and tag values can have a maximum length of 256 | |
4674 | // characters. | |
4675 | type InvalidTagParameterException struct { | |
4676 | _ struct{} `type:"structure"` | |
4677 | RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` | |
4678 | ||
4679 | Message_ *string `locationName:"message" type:"string"` | |
4680 | } | |
4681 | ||
4682 | // String returns the string representation | |
4683 | func (s InvalidTagParameterException) String() string { | |
4684 | return awsutil.Prettify(s) | |
4685 | } | |
4686 | ||
4687 | // GoString returns the string representation | |
4688 | func (s InvalidTagParameterException) GoString() string { | |
4689 | return s.String() | |
4690 | } | |
4691 | ||
4692 | func newErrorInvalidTagParameterException(v protocol.ResponseMetadata) error { | |
4693 | return &InvalidTagParameterException{ | |
4694 | RespMetadata: v, | |
4695 | } | |
4696 | } | |
4697 | ||
4698 | // Code returns the exception type name. | |
4699 | func (s *InvalidTagParameterException) Code() string { | |
4700 | return "InvalidTagParameterException" | |
4701 | } | |
4702 | ||
4703 | // Message returns the exception's message. | |
4704 | func (s *InvalidTagParameterException) Message() string { | |
4705 | if s.Message_ != nil { | |
4706 | return *s.Message_ | |
4707 | } | |
4708 | return "" | |
4709 | } | |
4710 | ||
4711 | // OrigErr always returns nil, satisfies awserr.Error interface. | |
4712 | func (s *InvalidTagParameterException) OrigErr() error { | |
4713 | return nil | |
4714 | } | |
4715 | ||
4716 | func (s *InvalidTagParameterException) Error() string { | |
4717 | return fmt.Sprintf("%s: %s", s.Code(), s.Message()) | |
4718 | } | |
4719 | ||
4720 | // Status code returns the HTTP status code for the request's response error. | |
4721 | func (s *InvalidTagParameterException) StatusCode() int { | |
4722 | return s.RespMetadata.StatusCode | |
4723 | } | |
4724 | ||
4725 | // RequestID returns the service's response RequestID for request. | |
4726 | func (s *InvalidTagParameterException) RequestID() string { | |
4727 | return s.RespMetadata.RequestID | |
4728 | } | |
4729 | ||
4356 | 4730 | // An object representing an Amazon ECR image layer. |
4357 | 4731 | type Layer struct { |
4358 | 4732 | _ struct{} `type:"structure"` |
4672 | 5046 | // RequestID returns the service's response RequestID for request. |
4673 | 5047 | func (s *LimitExceededException) RequestID() string { |
4674 | 5048 | return s.RespMetadata.RequestID |
5049 | } | |
5050 | ||
5051 | type ListTagsForResourceInput struct { | |
5052 | _ struct{} `type:"structure"` | |
5053 | ||
5054 | // The Amazon Resource Name (ARN) that identifies the resource for which to | |
5055 | // list the tags. Currently, the supported resource is an Amazon ECR Public | |
5056 | // repository. | |
5057 | // | |
5058 | // ResourceArn is a required field | |
5059 | ResourceArn *string `locationName:"resourceArn" type:"string" required:"true"` | |
5060 | } | |
5061 | ||
5062 | // String returns the string representation | |
5063 | func (s ListTagsForResourceInput) String() string { | |
5064 | return awsutil.Prettify(s) | |
5065 | } | |
5066 | ||
5067 | // GoString returns the string representation | |
5068 | func (s ListTagsForResourceInput) GoString() string { | |
5069 | return s.String() | |
5070 | } | |
5071 | ||
5072 | // Validate inspects the fields of the type to determine if they are valid. | |
5073 | func (s *ListTagsForResourceInput) Validate() error { | |
5074 | invalidParams := request.ErrInvalidParams{Context: "ListTagsForResourceInput"} | |
5075 | if s.ResourceArn == nil { | |
5076 | invalidParams.Add(request.NewErrParamRequired("ResourceArn")) | |
5077 | } | |
5078 | ||
5079 | if invalidParams.Len() > 0 { | |
5080 | return invalidParams | |
5081 | } | |
5082 | return nil | |
5083 | } | |
5084 | ||
5085 | // SetResourceArn sets the ResourceArn field's value. | |
5086 | func (s *ListTagsForResourceInput) SetResourceArn(v string) *ListTagsForResourceInput { | |
5087 | s.ResourceArn = &v | |
5088 | return s | |
5089 | } | |
5090 | ||
5091 | type ListTagsForResourceOutput struct { | |
5092 | _ struct{} `type:"structure"` | |
5093 | ||
5094 | // The tags for the resource. | |
5095 | Tags []*Tag `locationName:"tags" type:"list"` | |
5096 | } | |
5097 | ||
5098 | // String returns the string representation | |
5099 | func (s ListTagsForResourceOutput) String() string { | |
5100 | return awsutil.Prettify(s) | |
5101 | } | |
5102 | ||
5103 | // GoString returns the string representation | |
5104 | func (s ListTagsForResourceOutput) GoString() string { | |
5105 | return s.String() | |
5106 | } | |
5107 | ||
5108 | // SetTags sets the Tags field's value. | |
5109 | func (s *ListTagsForResourceOutput) SetTags(v []*Tag) *ListTagsForResourceOutput { | |
5110 | s.Tags = v | |
5111 | return s | |
4675 | 5112 | } |
4676 | 5113 | |
4677 | 5114 | type PutImageInput struct { |
5957 | 6394 | return s |
5958 | 6395 | } |
5959 | 6396 | |
6397 | // The metadata that you apply to a resource to help you categorize and organize | |
6398 | // them. Each tag consists of a key and an optional value, both of which you | |
6399 | // define. Tag keys can have a maximum character length of 128 characters, and | |
6400 | // tag values can have a maximum length of 256 characters. | |
6401 | type Tag struct { | |
6402 | _ struct{} `type:"structure"` | |
6403 | ||
6404 | // One part of a key-value pair that make up a tag. A key is a general label | |
6405 | // that acts like a category for more specific tag values. | |
6406 | Key *string `min:"1" type:"string"` | |
6407 | ||
6408 | // The optional part of a key-value pair that make up a tag. A value acts as | |
6409 | // a descriptor within a tag category (key). | |
6410 | Value *string `type:"string"` | |
6411 | } | |
6412 | ||
6413 | // String returns the string representation | |
6414 | func (s Tag) String() string { | |
6415 | return awsutil.Prettify(s) | |
6416 | } | |
6417 | ||
6418 | // GoString returns the string representation | |
6419 | func (s Tag) GoString() string { | |
6420 | return s.String() | |
6421 | } | |
6422 | ||
6423 | // Validate inspects the fields of the type to determine if they are valid. | |
6424 | func (s *Tag) Validate() error { | |
6425 | invalidParams := request.ErrInvalidParams{Context: "Tag"} | |
6426 | if s.Key != nil && len(*s.Key) < 1 { | |
6427 | invalidParams.Add(request.NewErrParamMinLen("Key", 1)) | |
6428 | } | |
6429 | ||
6430 | if invalidParams.Len() > 0 { | |
6431 | return invalidParams | |
6432 | } | |
6433 | return nil | |
6434 | } | |
6435 | ||
6436 | // SetKey sets the Key field's value. | |
6437 | func (s *Tag) SetKey(v string) *Tag { | |
6438 | s.Key = &v | |
6439 | return s | |
6440 | } | |
6441 | ||
6442 | // SetValue sets the Value field's value. | |
6443 | func (s *Tag) SetValue(v string) *Tag { | |
6444 | s.Value = &v | |
6445 | return s | |
6446 | } | |
6447 | ||
6448 | type TagResourceInput struct { | |
6449 | _ struct{} `type:"structure"` | |
6450 | ||
6451 | // The Amazon Resource Name (ARN) of the resource to which to add tags. Currently, | |
6452 | // the supported resource is an Amazon ECR Public repository. | |
6453 | // | |
6454 | // ResourceArn is a required field | |
6455 | ResourceArn *string `locationName:"resourceArn" type:"string" required:"true"` | |
6456 | ||
6457 | // The tags to add to the resource. A tag is an array of key-value pairs. Tag | |
6458 | // keys can have a maximum character length of 128 characters, and tag values | |
6459 | // can have a maximum length of 256 characters. | |
6460 | // | |
6461 | // Tags is a required field | |
6462 | Tags []*Tag `locationName:"tags" type:"list" required:"true"` | |
6463 | } | |
6464 | ||
6465 | // String returns the string representation | |
6466 | func (s TagResourceInput) String() string { | |
6467 | return awsutil.Prettify(s) | |
6468 | } | |
6469 | ||
6470 | // GoString returns the string representation | |
6471 | func (s TagResourceInput) GoString() string { | |
6472 | return s.String() | |
6473 | } | |
6474 | ||
6475 | // Validate inspects the fields of the type to determine if they are valid. | |
6476 | func (s *TagResourceInput) Validate() error { | |
6477 | invalidParams := request.ErrInvalidParams{Context: "TagResourceInput"} | |
6478 | if s.ResourceArn == nil { | |
6479 | invalidParams.Add(request.NewErrParamRequired("ResourceArn")) | |
6480 | } | |
6481 | if s.Tags == nil { | |
6482 | invalidParams.Add(request.NewErrParamRequired("Tags")) | |
6483 | } | |
6484 | if s.Tags != nil { | |
6485 | for i, v := range s.Tags { | |
6486 | if v == nil { | |
6487 | continue | |
6488 | } | |
6489 | if err := v.Validate(); err != nil { | |
6490 | invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) | |
6491 | } | |
6492 | } | |
6493 | } | |
6494 | ||
6495 | if invalidParams.Len() > 0 { | |
6496 | return invalidParams | |
6497 | } | |
6498 | return nil | |
6499 | } | |
6500 | ||
6501 | // SetResourceArn sets the ResourceArn field's value. | |
6502 | func (s *TagResourceInput) SetResourceArn(v string) *TagResourceInput { | |
6503 | s.ResourceArn = &v | |
6504 | return s | |
6505 | } | |
6506 | ||
6507 | // SetTags sets the Tags field's value. | |
6508 | func (s *TagResourceInput) SetTags(v []*Tag) *TagResourceInput { | |
6509 | s.Tags = v | |
6510 | return s | |
6511 | } | |
6512 | ||
6513 | type TagResourceOutput struct { | |
6514 | _ struct{} `type:"structure"` | |
6515 | } | |
6516 | ||
6517 | // String returns the string representation | |
6518 | func (s TagResourceOutput) String() string { | |
6519 | return awsutil.Prettify(s) | |
6520 | } | |
6521 | ||
6522 | // GoString returns the string representation | |
6523 | func (s TagResourceOutput) GoString() string { | |
6524 | return s.String() | |
6525 | } | |
6526 | ||
6527 | // The list of tags on the repository is over the limit. The maximum number | |
6528 | // of tags that can be applied to a repository is 50. | |
6529 | type TooManyTagsException struct { | |
6530 | _ struct{} `type:"structure"` | |
6531 | RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` | |
6532 | ||
6533 | Message_ *string `locationName:"message" type:"string"` | |
6534 | } | |
6535 | ||
6536 | // String returns the string representation | |
6537 | func (s TooManyTagsException) String() string { | |
6538 | return awsutil.Prettify(s) | |
6539 | } | |
6540 | ||
6541 | // GoString returns the string representation | |
6542 | func (s TooManyTagsException) GoString() string { | |
6543 | return s.String() | |
6544 | } | |
6545 | ||
6546 | func newErrorTooManyTagsException(v protocol.ResponseMetadata) error { | |
6547 | return &TooManyTagsException{ | |
6548 | RespMetadata: v, | |
6549 | } | |
6550 | } | |
6551 | ||
6552 | // Code returns the exception type name. | |
6553 | func (s *TooManyTagsException) Code() string { | |
6554 | return "TooManyTagsException" | |
6555 | } | |
6556 | ||
6557 | // Message returns the exception's message. | |
6558 | func (s *TooManyTagsException) Message() string { | |
6559 | if s.Message_ != nil { | |
6560 | return *s.Message_ | |
6561 | } | |
6562 | return "" | |
6563 | } | |
6564 | ||
6565 | // OrigErr always returns nil, satisfies awserr.Error interface. | |
6566 | func (s *TooManyTagsException) OrigErr() error { | |
6567 | return nil | |
6568 | } | |
6569 | ||
6570 | func (s *TooManyTagsException) Error() string { | |
6571 | return fmt.Sprintf("%s: %s", s.Code(), s.Message()) | |
6572 | } | |
6573 | ||
6574 | // Status code returns the HTTP status code for the request's response error. | |
6575 | func (s *TooManyTagsException) StatusCode() int { | |
6576 | return s.RespMetadata.StatusCode | |
6577 | } | |
6578 | ||
6579 | // RequestID returns the service's response RequestID for request. | |
6580 | func (s *TooManyTagsException) RequestID() string { | |
6581 | return s.RespMetadata.RequestID | |
6582 | } | |
6583 | ||
5960 | 6584 | // The action is not supported in this Region. |
5961 | 6585 | type UnsupportedCommandException struct { |
5962 | 6586 | _ struct{} `type:"structure"` |
6011 | 6635 | // RequestID returns the service's response RequestID for request. |
6012 | 6636 | func (s *UnsupportedCommandException) RequestID() string { |
6013 | 6637 | return s.RespMetadata.RequestID |
6638 | } | |
6639 | ||
6640 | type UntagResourceInput struct { | |
6641 | _ struct{} `type:"structure"` | |
6642 | ||
6643 | // The Amazon Resource Name (ARN) of the resource from which to delete tags. | |
6644 | // Currently, the supported resource is an Amazon ECR Public repository. | |
6645 | // | |
6646 | // ResourceArn is a required field | |
6647 | ResourceArn *string `locationName:"resourceArn" type:"string" required:"true"` | |
6648 | ||
6649 | // The keys of the tags to be removed. | |
6650 | // | |
6651 | // TagKeys is a required field | |
6652 | TagKeys []*string `locationName:"tagKeys" type:"list" required:"true"` | |
6653 | } | |
6654 | ||
6655 | // String returns the string representation | |
6656 | func (s UntagResourceInput) String() string { | |
6657 | return awsutil.Prettify(s) | |
6658 | } | |
6659 | ||
6660 | // GoString returns the string representation | |
6661 | func (s UntagResourceInput) GoString() string { | |
6662 | return s.String() | |
6663 | } | |
6664 | ||
6665 | // Validate inspects the fields of the type to determine if they are valid. | |
6666 | func (s *UntagResourceInput) Validate() error { | |
6667 | invalidParams := request.ErrInvalidParams{Context: "UntagResourceInput"} | |
6668 | if s.ResourceArn == nil { | |
6669 | invalidParams.Add(request.NewErrParamRequired("ResourceArn")) | |
6670 | } | |
6671 | if s.TagKeys == nil { | |
6672 | invalidParams.Add(request.NewErrParamRequired("TagKeys")) | |
6673 | } | |
6674 | ||
6675 | if invalidParams.Len() > 0 { | |
6676 | return invalidParams | |
6677 | } | |
6678 | return nil | |
6679 | } | |
6680 | ||
6681 | // SetResourceArn sets the ResourceArn field's value. | |
6682 | func (s *UntagResourceInput) SetResourceArn(v string) *UntagResourceInput { | |
6683 | s.ResourceArn = &v | |
6684 | return s | |
6685 | } | |
6686 | ||
6687 | // SetTagKeys sets the TagKeys field's value. | |
6688 | func (s *UntagResourceInput) SetTagKeys(v []*string) *UntagResourceInput { | |
6689 | s.TagKeys = v | |
6690 | return s | |
6691 | } | |
6692 | ||
6693 | type UntagResourceOutput struct { | |
6694 | _ struct{} `type:"structure"` | |
6695 | } | |
6696 | ||
6697 | // String returns the string representation | |
6698 | func (s UntagResourceOutput) String() string { | |
6699 | return awsutil.Prettify(s) | |
6700 | } | |
6701 | ||
6702 | // GoString returns the string representation | |
6703 | func (s UntagResourceOutput) GoString() string { | |
6704 | return s.String() | |
6014 | 6705 | } |
6015 | 6706 | |
6016 | 6707 | type UploadLayerPartInput struct { |
60 | 60 | // The specified parameter is invalid. Review the available parameters for the |
61 | 61 | // API request. |
62 | 62 | ErrCodeInvalidParameterException = "InvalidParameterException" |
63 | ||
64 | // ErrCodeInvalidTagParameterException for service response error code | |
65 | // "InvalidTagParameterException". | |
66 | // | |
67 | // An invalid parameter has been specified. Tag keys can have a maximum character | |
68 | // length of 128 characters, and tag values can have a maximum length of 256 | |
69 | // characters. | |
70 | ErrCodeInvalidTagParameterException = "InvalidTagParameterException" | |
63 | 71 | |
64 | 72 | // ErrCodeLayerAlreadyExistsException for service response error code |
65 | 73 | // "LayerAlreadyExistsException". |
133 | 141 | // These errors are usually caused by a server-side issue. |
134 | 142 | ErrCodeServerException = "ServerException" |
135 | 143 | |
144 | // ErrCodeTooManyTagsException for service response error code | |
145 | // "TooManyTagsException". | |
146 | // | |
147 | // The list of tags on the repository is over the limit. The maximum number | |
148 | // of tags that can be applied to a repository is 50. | |
149 | ErrCodeTooManyTagsException = "TooManyTagsException" | |
150 | ||
136 | 151 | // ErrCodeUnsupportedCommandException for service response error code |
137 | 152 | // "UnsupportedCommandException". |
138 | 153 | // |
156 | 171 | "InvalidLayerException": newErrorInvalidLayerException, |
157 | 172 | "InvalidLayerPartException": newErrorInvalidLayerPartException, |
158 | 173 | "InvalidParameterException": newErrorInvalidParameterException, |
174 | "InvalidTagParameterException": newErrorInvalidTagParameterException, | |
159 | 175 | "LayerAlreadyExistsException": newErrorLayerAlreadyExistsException, |
160 | 176 | "LayerPartTooSmallException": newErrorLayerPartTooSmallException, |
161 | 177 | "LayersNotFoundException": newErrorLayersNotFoundException, |
167 | 183 | "RepositoryNotFoundException": newErrorRepositoryNotFoundException, |
168 | 184 | "RepositoryPolicyNotFoundException": newErrorRepositoryPolicyNotFoundException, |
169 | 185 | "ServerException": newErrorServerException, |
186 | "TooManyTagsException": newErrorTooManyTagsException, | |
170 | 187 | "UnsupportedCommandException": newErrorUnsupportedCommandException, |
171 | 188 | "UploadNotFoundException": newErrorUploadNotFoundException, |
172 | 189 | } |
0 | // Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. | |
1 | ||
2 | package sso | |
3 | ||
4 | import ( | |
5 | "fmt" | |
6 | ||
7 | "github.com/aws/aws-sdk-go/aws" | |
8 | "github.com/aws/aws-sdk-go/aws/awsutil" | |
9 | "github.com/aws/aws-sdk-go/aws/credentials" | |
10 | "github.com/aws/aws-sdk-go/aws/request" | |
11 | "github.com/aws/aws-sdk-go/private/protocol" | |
12 | "github.com/aws/aws-sdk-go/private/protocol/restjson" | |
13 | ) | |
14 | ||
15 | const opGetRoleCredentials = "GetRoleCredentials" | |
16 | ||
17 | // GetRoleCredentialsRequest generates a "aws/request.Request" representing the | |
18 | // client's request for the GetRoleCredentials operation. The "output" return | |
19 | // value will be populated with the request's response once the request completes | |
20 | // successfully. | |
21 | // | |
22 | // Use "Send" method on the returned Request to send the API call to the service. | |
23 | // the "output" return value is not valid until after Send returns without error. | |
24 | // | |
25 | // See GetRoleCredentials for more information on using the GetRoleCredentials | |
26 | // API call, and error handling. | |
27 | // | |
28 | // This method is useful when you want to inject custom logic or configuration | |
29 | // into the SDK's request lifecycle. Such as custom headers, or retry logic. | |
30 | // | |
31 | // | |
32 | // // Example sending a request using the GetRoleCredentialsRequest method. | |
33 | // req, resp := client.GetRoleCredentialsRequest(params) | |
34 | // | |
35 | // err := req.Send() | |
36 | // if err == nil { // resp is now filled | |
37 | // fmt.Println(resp) | |
38 | // } | |
39 | // | |
40 | // See also, https://docs.aws.amazon.com/goto/WebAPI/sso-2019-06-10/GetRoleCredentials | |
41 | func (c *SSO) GetRoleCredentialsRequest(input *GetRoleCredentialsInput) (req *request.Request, output *GetRoleCredentialsOutput) { | |
42 | op := &request.Operation{ | |
43 | Name: opGetRoleCredentials, | |
44 | HTTPMethod: "GET", | |
45 | HTTPPath: "/federation/credentials", | |
46 | } | |
47 | ||
48 | if input == nil { | |
49 | input = &GetRoleCredentialsInput{} | |
50 | } | |
51 | ||
52 | output = &GetRoleCredentialsOutput{} | |
53 | req = c.newRequest(op, input, output) | |
54 | req.Config.Credentials = credentials.AnonymousCredentials | |
55 | return | |
56 | } | |
57 | ||
58 | // GetRoleCredentials API operation for AWS Single Sign-On. | |
59 | // | |
60 | // Returns the STS short-term credentials for a given role name that is assigned | |
61 | // to the user. | |
62 | // | |
63 | // Returns awserr.Error for service API and SDK errors. Use runtime type assertions | |
64 | // with awserr.Error's Code and Message methods to get detailed information about | |
65 | // the error. | |
66 | // | |
67 | // See the AWS API reference guide for AWS Single Sign-On's | |
68 | // API operation GetRoleCredentials for usage and error information. | |
69 | // | |
70 | // Returned Error Types: | |
71 | // * InvalidRequestException | |
72 | // Indicates that a problem occurred with the input to the request. For example, | |
73 | // a required parameter might be missing or out of range. | |
74 | // | |
75 | // * UnauthorizedException | |
76 | // Indicates that the request is not authorized. This can happen due to an invalid | |
77 | // access token in the request. | |
78 | // | |
79 | // * TooManyRequestsException | |
80 | // Indicates that the request is being made too frequently and is more than | |
81 | // what the server can handle. | |
82 | // | |
83 | // * ResourceNotFoundException | |
84 | // The specified resource doesn't exist. | |
85 | // | |
86 | // See also, https://docs.aws.amazon.com/goto/WebAPI/sso-2019-06-10/GetRoleCredentials | |
87 | func (c *SSO) GetRoleCredentials(input *GetRoleCredentialsInput) (*GetRoleCredentialsOutput, error) { | |
88 | req, out := c.GetRoleCredentialsRequest(input) | |
89 | return out, req.Send() | |
90 | } | |
91 | ||
92 | // GetRoleCredentialsWithContext is the same as GetRoleCredentials with the addition of | |
93 | // the ability to pass a context and additional request options. | |
94 | // | |
95 | // See GetRoleCredentials for details on how to use this API operation. | |
96 | // | |
97 | // The context must be non-nil and will be used for request cancellation. If | |
98 | // the context is nil a panic will occur. In the future the SDK may create | |
99 | // sub-contexts for http.Requests. See https://golang.org/pkg/context/ | |
100 | // for more information on using Contexts. | |
101 | func (c *SSO) GetRoleCredentialsWithContext(ctx aws.Context, input *GetRoleCredentialsInput, opts ...request.Option) (*GetRoleCredentialsOutput, error) { | |
102 | req, out := c.GetRoleCredentialsRequest(input) | |
103 | req.SetContext(ctx) | |
104 | req.ApplyOptions(opts...) | |
105 | return out, req.Send() | |
106 | } | |
107 | ||
108 | const opListAccountRoles = "ListAccountRoles" | |
109 | ||
110 | // ListAccountRolesRequest generates a "aws/request.Request" representing the | |
111 | // client's request for the ListAccountRoles operation. The "output" return | |
112 | // value will be populated with the request's response once the request completes | |
113 | // successfully. | |
114 | // | |
115 | // Use "Send" method on the returned Request to send the API call to the service. | |
116 | // the "output" return value is not valid until after Send returns without error. | |
117 | // | |
118 | // See ListAccountRoles for more information on using the ListAccountRoles | |
119 | // API call, and error handling. | |
120 | // | |
121 | // This method is useful when you want to inject custom logic or configuration | |
122 | // into the SDK's request lifecycle. Such as custom headers, or retry logic. | |
123 | // | |
124 | // | |
125 | // // Example sending a request using the ListAccountRolesRequest method. | |
126 | // req, resp := client.ListAccountRolesRequest(params) | |
127 | // | |
128 | // err := req.Send() | |
129 | // if err == nil { // resp is now filled | |
130 | // fmt.Println(resp) | |
131 | // } | |
132 | // | |
133 | // See also, https://docs.aws.amazon.com/goto/WebAPI/sso-2019-06-10/ListAccountRoles | |
134 | func (c *SSO) ListAccountRolesRequest(input *ListAccountRolesInput) (req *request.Request, output *ListAccountRolesOutput) { | |
135 | op := &request.Operation{ | |
136 | Name: opListAccountRoles, | |
137 | HTTPMethod: "GET", | |
138 | HTTPPath: "/assignment/roles", | |
139 | Paginator: &request.Paginator{ | |
140 | InputTokens: []string{"nextToken"}, | |
141 | OutputTokens: []string{"nextToken"}, | |
142 | LimitToken: "maxResults", | |
143 | TruncationToken: "", | |
144 | }, | |
145 | } | |
146 | ||
147 | if input == nil { | |
148 | input = &ListAccountRolesInput{} | |
149 | } | |
150 | ||
151 | output = &ListAccountRolesOutput{} | |
152 | req = c.newRequest(op, input, output) | |
153 | req.Config.Credentials = credentials.AnonymousCredentials | |
154 | return | |
155 | } | |
156 | ||
157 | // ListAccountRoles API operation for AWS Single Sign-On. | |
158 | // | |
159 | // Lists all roles that are assigned to the user for a given AWS account. | |
160 | // | |
161 | // Returns awserr.Error for service API and SDK errors. Use runtime type assertions | |
162 | // with awserr.Error's Code and Message methods to get detailed information about | |
163 | // the error. | |
164 | // | |
165 | // See the AWS API reference guide for AWS Single Sign-On's | |
166 | // API operation ListAccountRoles for usage and error information. | |
167 | // | |
168 | // Returned Error Types: | |
169 | // * InvalidRequestException | |
170 | // Indicates that a problem occurred with the input to the request. For example, | |
171 | // a required parameter might be missing or out of range. | |
172 | // | |
173 | // * UnauthorizedException | |
174 | // Indicates that the request is not authorized. This can happen due to an invalid | |
175 | // access token in the request. | |
176 | // | |
177 | // * TooManyRequestsException | |
178 | // Indicates that the request is being made too frequently and is more than | |
179 | // what the server can handle. | |
180 | // | |
181 | // * ResourceNotFoundException | |
182 | // The specified resource doesn't exist. | |
183 | // | |
184 | // See also, https://docs.aws.amazon.com/goto/WebAPI/sso-2019-06-10/ListAccountRoles | |
185 | func (c *SSO) ListAccountRoles(input *ListAccountRolesInput) (*ListAccountRolesOutput, error) { | |
186 | req, out := c.ListAccountRolesRequest(input) | |
187 | return out, req.Send() | |
188 | } | |
189 | ||
190 | // ListAccountRolesWithContext is the same as ListAccountRoles with the addition of | |
191 | // the ability to pass a context and additional request options. | |
192 | // | |
193 | // See ListAccountRoles for details on how to use this API operation. | |
194 | // | |
195 | // The context must be non-nil and will be used for request cancellation. If | |
196 | // the context is nil a panic will occur. In the future the SDK may create | |
197 | // sub-contexts for http.Requests. See https://golang.org/pkg/context/ | |
198 | // for more information on using Contexts. | |
199 | func (c *SSO) ListAccountRolesWithContext(ctx aws.Context, input *ListAccountRolesInput, opts ...request.Option) (*ListAccountRolesOutput, error) { | |
200 | req, out := c.ListAccountRolesRequest(input) | |
201 | req.SetContext(ctx) | |
202 | req.ApplyOptions(opts...) | |
203 | return out, req.Send() | |
204 | } | |
205 | ||
206 | // ListAccountRolesPages iterates over the pages of a ListAccountRoles operation, | |
207 | // calling the "fn" function with the response data for each page. To stop | |
208 | // iterating, return false from the fn function. | |
209 | // | |
210 | // See ListAccountRoles method for more information on how to use this operation. | |
211 | // | |
212 | // Note: This operation can generate multiple requests to a service. | |
213 | // | |
214 | // // Example iterating over at most 3 pages of a ListAccountRoles operation. | |
215 | // pageNum := 0 | |
216 | // err := client.ListAccountRolesPages(params, | |
217 | // func(page *sso.ListAccountRolesOutput, lastPage bool) bool { | |
218 | // pageNum++ | |
219 | // fmt.Println(page) | |
220 | // return pageNum <= 3 | |
221 | // }) | |
222 | // | |
223 | func (c *SSO) ListAccountRolesPages(input *ListAccountRolesInput, fn func(*ListAccountRolesOutput, bool) bool) error { | |
224 | return c.ListAccountRolesPagesWithContext(aws.BackgroundContext(), input, fn) | |
225 | } | |
226 | ||
227 | // ListAccountRolesPagesWithContext same as ListAccountRolesPages except | |
228 | // it takes a Context and allows setting request options on the pages. | |
229 | // | |
230 | // The context must be non-nil and will be used for request cancellation. If | |
231 | // the context is nil a panic will occur. In the future the SDK may create | |
232 | // sub-contexts for http.Requests. See https://golang.org/pkg/context/ | |
233 | // for more information on using Contexts. | |
234 | func (c *SSO) ListAccountRolesPagesWithContext(ctx aws.Context, input *ListAccountRolesInput, fn func(*ListAccountRolesOutput, bool) bool, opts ...request.Option) error { | |
235 | p := request.Pagination{ | |
236 | NewRequest: func() (*request.Request, error) { | |
237 | var inCpy *ListAccountRolesInput | |
238 | if input != nil { | |
239 | tmp := *input | |
240 | inCpy = &tmp | |
241 | } | |
242 | req, _ := c.ListAccountRolesRequest(inCpy) | |
243 | req.SetContext(ctx) | |
244 | req.ApplyOptions(opts...) | |
245 | return req, nil | |
246 | }, | |
247 | } | |
248 | ||
249 | for p.Next() { | |
250 | if !fn(p.Page().(*ListAccountRolesOutput), !p.HasNextPage()) { | |
251 | break | |
252 | } | |
253 | } | |
254 | ||
255 | return p.Err() | |
256 | } | |
257 | ||
258 | const opListAccounts = "ListAccounts" | |
259 | ||
260 | // ListAccountsRequest generates a "aws/request.Request" representing the | |
261 | // client's request for the ListAccounts operation. The "output" return | |
262 | // value will be populated with the request's response once the request completes | |
263 | // successfully. | |
264 | // | |
265 | // Use "Send" method on the returned Request to send the API call to the service. | |
266 | // the "output" return value is not valid until after Send returns without error. | |
267 | // | |
268 | // See ListAccounts for more information on using the ListAccounts | |
269 | // API call, and error handling. | |
270 | // | |
271 | // This method is useful when you want to inject custom logic or configuration | |
272 | // into the SDK's request lifecycle. Such as custom headers, or retry logic. | |
273 | // | |
274 | // | |
275 | // // Example sending a request using the ListAccountsRequest method. | |
276 | // req, resp := client.ListAccountsRequest(params) | |
277 | // | |
278 | // err := req.Send() | |
279 | // if err == nil { // resp is now filled | |
280 | // fmt.Println(resp) | |
281 | // } | |
282 | // | |
283 | // See also, https://docs.aws.amazon.com/goto/WebAPI/sso-2019-06-10/ListAccounts | |
284 | func (c *SSO) ListAccountsRequest(input *ListAccountsInput) (req *request.Request, output *ListAccountsOutput) { | |
285 | op := &request.Operation{ | |
286 | Name: opListAccounts, | |
287 | HTTPMethod: "GET", | |
288 | HTTPPath: "/assignment/accounts", | |
289 | Paginator: &request.Paginator{ | |
290 | InputTokens: []string{"nextToken"}, | |
291 | OutputTokens: []string{"nextToken"}, | |
292 | LimitToken: "maxResults", | |
293 | TruncationToken: "", | |
294 | }, | |
295 | } | |
296 | ||
297 | if input == nil { | |
298 | input = &ListAccountsInput{} | |
299 | } | |
300 | ||
301 | output = &ListAccountsOutput{} | |
302 | req = c.newRequest(op, input, output) | |
303 | req.Config.Credentials = credentials.AnonymousCredentials | |
304 | return | |
305 | } | |
306 | ||
307 | // ListAccounts API operation for AWS Single Sign-On. | |
308 | // | |
309 | // Lists all AWS accounts assigned to the user. These AWS accounts are assigned | |
310 | // by the administrator of the account. For more information, see Assign User | |
311 | // Access (https://docs.aws.amazon.com/singlesignon/latest/userguide/useraccess.html#assignusers) | |
312 | // in the AWS SSO User Guide. This operation returns a paginated response. | |
313 | // | |
314 | // Returns awserr.Error for service API and SDK errors. Use runtime type assertions | |
315 | // with awserr.Error's Code and Message methods to get detailed information about | |
316 | // the error. | |
317 | // | |
318 | // See the AWS API reference guide for AWS Single Sign-On's | |
319 | // API operation ListAccounts for usage and error information. | |
320 | // | |
321 | // Returned Error Types: | |
322 | // * InvalidRequestException | |
323 | // Indicates that a problem occurred with the input to the request. For example, | |
324 | // a required parameter might be missing or out of range. | |
325 | // | |
326 | // * UnauthorizedException | |
327 | // Indicates that the request is not authorized. This can happen due to an invalid | |
328 | // access token in the request. | |
329 | // | |
330 | // * TooManyRequestsException | |
331 | // Indicates that the request is being made too frequently and is more than | |
332 | // what the server can handle. | |
333 | // | |
334 | // * ResourceNotFoundException | |
335 | // The specified resource doesn't exist. | |
336 | // | |
337 | // See also, https://docs.aws.amazon.com/goto/WebAPI/sso-2019-06-10/ListAccounts | |
338 | func (c *SSO) ListAccounts(input *ListAccountsInput) (*ListAccountsOutput, error) { | |
339 | req, out := c.ListAccountsRequest(input) | |
340 | return out, req.Send() | |
341 | } | |
342 | ||
343 | // ListAccountsWithContext is the same as ListAccounts with the addition of | |
344 | // the ability to pass a context and additional request options. | |
345 | // | |
346 | // See ListAccounts for details on how to use this API operation. | |
347 | // | |
348 | // The context must be non-nil and will be used for request cancellation. If | |
349 | // the context is nil a panic will occur. In the future the SDK may create | |
350 | // sub-contexts for http.Requests. See https://golang.org/pkg/context/ | |
351 | // for more information on using Contexts. | |
352 | func (c *SSO) ListAccountsWithContext(ctx aws.Context, input *ListAccountsInput, opts ...request.Option) (*ListAccountsOutput, error) { | |
353 | req, out := c.ListAccountsRequest(input) | |
354 | req.SetContext(ctx) | |
355 | req.ApplyOptions(opts...) | |
356 | return out, req.Send() | |
357 | } | |
358 | ||
359 | // ListAccountsPages iterates over the pages of a ListAccounts operation, | |
360 | // calling the "fn" function with the response data for each page. To stop | |
361 | // iterating, return false from the fn function. | |
362 | // | |
363 | // See ListAccounts method for more information on how to use this operation. | |
364 | // | |
365 | // Note: This operation can generate multiple requests to a service. | |
366 | // | |
367 | // // Example iterating over at most 3 pages of a ListAccounts operation. | |
368 | // pageNum := 0 | |
369 | // err := client.ListAccountsPages(params, | |
370 | // func(page *sso.ListAccountsOutput, lastPage bool) bool { | |
371 | // pageNum++ | |
372 | // fmt.Println(page) | |
373 | // return pageNum <= 3 | |
374 | // }) | |
375 | // | |
376 | func (c *SSO) ListAccountsPages(input *ListAccountsInput, fn func(*ListAccountsOutput, bool) bool) error { | |
377 | return c.ListAccountsPagesWithContext(aws.BackgroundContext(), input, fn) | |
378 | } | |
379 | ||
380 | // ListAccountsPagesWithContext same as ListAccountsPages except | |
381 | // it takes a Context and allows setting request options on the pages. | |
382 | // | |
383 | // The context must be non-nil and will be used for request cancellation. If | |
384 | // the context is nil a panic will occur. In the future the SDK may create | |
385 | // sub-contexts for http.Requests. See https://golang.org/pkg/context/ | |
386 | // for more information on using Contexts. | |
387 | func (c *SSO) ListAccountsPagesWithContext(ctx aws.Context, input *ListAccountsInput, fn func(*ListAccountsOutput, bool) bool, opts ...request.Option) error { | |
388 | p := request.Pagination{ | |
389 | NewRequest: func() (*request.Request, error) { | |
390 | var inCpy *ListAccountsInput | |
391 | if input != nil { | |
392 | tmp := *input | |
393 | inCpy = &tmp | |
394 | } | |
395 | req, _ := c.ListAccountsRequest(inCpy) | |
396 | req.SetContext(ctx) | |
397 | req.ApplyOptions(opts...) | |
398 | return req, nil | |
399 | }, | |
400 | } | |
401 | ||
402 | for p.Next() { | |
403 | if !fn(p.Page().(*ListAccountsOutput), !p.HasNextPage()) { | |
404 | break | |
405 | } | |
406 | } | |
407 | ||
408 | return p.Err() | |
409 | } | |
410 | ||
411 | const opLogout = "Logout" | |
412 | ||
413 | // LogoutRequest generates a "aws/request.Request" representing the | |
414 | // client's request for the Logout operation. The "output" return | |
415 | // value will be populated with the request's response once the request completes | |
416 | // successfully. | |
417 | // | |
418 | // Use "Send" method on the returned Request to send the API call to the service. | |
419 | // the "output" return value is not valid until after Send returns without error. | |
420 | // | |
421 | // See Logout for more information on using the Logout | |
422 | // API call, and error handling. | |
423 | // | |
424 | // This method is useful when you want to inject custom logic or configuration | |
425 | // into the SDK's request lifecycle. Such as custom headers, or retry logic. | |
426 | // | |
427 | // | |
428 | // // Example sending a request using the LogoutRequest method. | |
429 | // req, resp := client.LogoutRequest(params) | |
430 | // | |
431 | // err := req.Send() | |
432 | // if err == nil { // resp is now filled | |
433 | // fmt.Println(resp) | |
434 | // } | |
435 | // | |
436 | // See also, https://docs.aws.amazon.com/goto/WebAPI/sso-2019-06-10/Logout | |
437 | func (c *SSO) LogoutRequest(input *LogoutInput) (req *request.Request, output *LogoutOutput) { | |
438 | op := &request.Operation{ | |
439 | Name: opLogout, | |
440 | HTTPMethod: "POST", | |
441 | HTTPPath: "/logout", | |
442 | } | |
443 | ||
444 | if input == nil { | |
445 | input = &LogoutInput{} | |
446 | } | |
447 | ||
448 | output = &LogoutOutput{} | |
449 | req = c.newRequest(op, input, output) | |
450 | req.Config.Credentials = credentials.AnonymousCredentials | |
451 | req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) | |
452 | return | |
453 | } | |
454 | ||
455 | // Logout API operation for AWS Single Sign-On. | |
456 | // | |
457 | // Removes the client- and server-side session that is associated with the user. | |
458 | // | |
459 | // Returns awserr.Error for service API and SDK errors. Use runtime type assertions | |
460 | // with awserr.Error's Code and Message methods to get detailed information about | |
461 | // the error. | |
462 | // | |
463 | // See the AWS API reference guide for AWS Single Sign-On's | |
464 | // API operation Logout for usage and error information. | |
465 | // | |
466 | // Returned Error Types: | |
467 | // * InvalidRequestException | |
468 | // Indicates that a problem occurred with the input to the request. For example, | |
469 | // a required parameter might be missing or out of range. | |
470 | // | |
471 | // * UnauthorizedException | |
472 | // Indicates that the request is not authorized. This can happen due to an invalid | |
473 | // access token in the request. | |
474 | // | |
475 | // * TooManyRequestsException | |
476 | // Indicates that the request is being made too frequently and is more than | |
477 | // what the server can handle. | |
478 | // | |
479 | // See also, https://docs.aws.amazon.com/goto/WebAPI/sso-2019-06-10/Logout | |
480 | func (c *SSO) Logout(input *LogoutInput) (*LogoutOutput, error) { | |
481 | req, out := c.LogoutRequest(input) | |
482 | return out, req.Send() | |
483 | } | |
484 | ||
485 | // LogoutWithContext is the same as Logout with the addition of | |
486 | // the ability to pass a context and additional request options. | |
487 | // | |
488 | // See Logout for details on how to use this API operation. | |
489 | // | |
490 | // The context must be non-nil and will be used for request cancellation. If | |
491 | // the context is nil a panic will occur. In the future the SDK may create | |
492 | // sub-contexts for http.Requests. See https://golang.org/pkg/context/ | |
493 | // for more information on using Contexts. | |
494 | func (c *SSO) LogoutWithContext(ctx aws.Context, input *LogoutInput, opts ...request.Option) (*LogoutOutput, error) { | |
495 | req, out := c.LogoutRequest(input) | |
496 | req.SetContext(ctx) | |
497 | req.ApplyOptions(opts...) | |
498 | return out, req.Send() | |
499 | } | |
500 | ||
501 | // Provides information about your AWS account. | |
502 | type AccountInfo struct { | |
503 | _ struct{} `type:"structure"` | |
504 | ||
505 | // The identifier of the AWS account that is assigned to the user. | |
506 | AccountId *string `locationName:"accountId" type:"string"` | |
507 | ||
508 | // The display name of the AWS account that is assigned to the user. | |
509 | AccountName *string `locationName:"accountName" type:"string"` | |
510 | ||
511 | // The email address of the AWS account that is assigned to the user. | |
512 | EmailAddress *string `locationName:"emailAddress" min:"1" type:"string"` | |
513 | } | |
514 | ||
515 | // String returns the string representation | |
516 | func (s AccountInfo) String() string { | |
517 | return awsutil.Prettify(s) | |
518 | } | |
519 | ||
520 | // GoString returns the string representation | |
521 | func (s AccountInfo) GoString() string { | |
522 | return s.String() | |
523 | } | |
524 | ||
525 | // SetAccountId sets the AccountId field's value. | |
526 | func (s *AccountInfo) SetAccountId(v string) *AccountInfo { | |
527 | s.AccountId = &v | |
528 | return s | |
529 | } | |
530 | ||
531 | // SetAccountName sets the AccountName field's value. | |
532 | func (s *AccountInfo) SetAccountName(v string) *AccountInfo { | |
533 | s.AccountName = &v | |
534 | return s | |
535 | } | |
536 | ||
537 | // SetEmailAddress sets the EmailAddress field's value. | |
538 | func (s *AccountInfo) SetEmailAddress(v string) *AccountInfo { | |
539 | s.EmailAddress = &v | |
540 | return s | |
541 | } | |
542 | ||
543 | type GetRoleCredentialsInput struct { | |
544 | _ struct{} `type:"structure"` | |
545 | ||
546 | // The token issued by the CreateToken API call. For more information, see CreateToken | |
547 | // (https://docs.aws.amazon.com/singlesignon/latest/OIDCAPIReference/API_CreateToken.html) | |
548 | // in the AWS SSO OIDC API Reference Guide. | |
549 | // | |
550 | // AccessToken is a required field | |
551 | AccessToken *string `location:"header" locationName:"x-amz-sso_bearer_token" type:"string" required:"true" sensitive:"true"` | |
552 | ||
553 | // The identifier for the AWS account that is assigned to the user. | |
554 | // | |
555 | // AccountId is a required field | |
556 | AccountId *string `location:"querystring" locationName:"account_id" type:"string" required:"true"` | |
557 | ||
558 | // The friendly name of the role that is assigned to the user. | |
559 | // | |
560 | // RoleName is a required field | |
561 | RoleName *string `location:"querystring" locationName:"role_name" type:"string" required:"true"` | |
562 | } | |
563 | ||
564 | // String returns the string representation | |
565 | func (s GetRoleCredentialsInput) String() string { | |
566 | return awsutil.Prettify(s) | |
567 | } | |
568 | ||
569 | // GoString returns the string representation | |
570 | func (s GetRoleCredentialsInput) GoString() string { | |
571 | return s.String() | |
572 | } | |
573 | ||
574 | // Validate inspects the fields of the type to determine if they are valid. | |
575 | func (s *GetRoleCredentialsInput) Validate() error { | |
576 | invalidParams := request.ErrInvalidParams{Context: "GetRoleCredentialsInput"} | |
577 | if s.AccessToken == nil { | |
578 | invalidParams.Add(request.NewErrParamRequired("AccessToken")) | |
579 | } | |
580 | if s.AccountId == nil { | |
581 | invalidParams.Add(request.NewErrParamRequired("AccountId")) | |
582 | } | |
583 | if s.RoleName == nil { | |
584 | invalidParams.Add(request.NewErrParamRequired("RoleName")) | |
585 | } | |
586 | ||
587 | if invalidParams.Len() > 0 { | |
588 | return invalidParams | |
589 | } | |
590 | return nil | |
591 | } | |
592 | ||
593 | // SetAccessToken sets the AccessToken field's value. | |
594 | func (s *GetRoleCredentialsInput) SetAccessToken(v string) *GetRoleCredentialsInput { | |
595 | s.AccessToken = &v | |
596 | return s | |
597 | } | |
598 | ||
599 | // SetAccountId sets the AccountId field's value. | |
600 | func (s *GetRoleCredentialsInput) SetAccountId(v string) *GetRoleCredentialsInput { | |
601 | s.AccountId = &v | |
602 | return s | |
603 | } | |
604 | ||
605 | // SetRoleName sets the RoleName field's value. | |
606 | func (s *GetRoleCredentialsInput) SetRoleName(v string) *GetRoleCredentialsInput { | |
607 | s.RoleName = &v | |
608 | return s | |
609 | } | |
610 | ||
611 | type GetRoleCredentialsOutput struct { | |
612 | _ struct{} `type:"structure"` | |
613 | ||
614 | // The credentials for the role that is assigned to the user. | |
615 | RoleCredentials *RoleCredentials `locationName:"roleCredentials" type:"structure"` | |
616 | } | |
617 | ||
618 | // String returns the string representation | |
619 | func (s GetRoleCredentialsOutput) String() string { | |
620 | return awsutil.Prettify(s) | |
621 | } | |
622 | ||
623 | // GoString returns the string representation | |
624 | func (s GetRoleCredentialsOutput) GoString() string { | |
625 | return s.String() | |
626 | } | |
627 | ||
628 | // SetRoleCredentials sets the RoleCredentials field's value. | |
629 | func (s *GetRoleCredentialsOutput) SetRoleCredentials(v *RoleCredentials) *GetRoleCredentialsOutput { | |
630 | s.RoleCredentials = v | |
631 | return s | |
632 | } | |
633 | ||
634 | // Indicates that a problem occurred with the input to the request. For example, | |
635 | // a required parameter might be missing or out of range. | |
636 | type InvalidRequestException struct { | |
637 | _ struct{} `type:"structure"` | |
638 | RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` | |
639 | ||
640 | Message_ *string `locationName:"message" type:"string"` | |
641 | } | |
642 | ||
643 | // String returns the string representation | |
644 | func (s InvalidRequestException) String() string { | |
645 | return awsutil.Prettify(s) | |
646 | } | |
647 | ||
648 | // GoString returns the string representation | |
649 | func (s InvalidRequestException) GoString() string { | |
650 | return s.String() | |
651 | } | |
652 | ||
653 | func newErrorInvalidRequestException(v protocol.ResponseMetadata) error { | |
654 | return &InvalidRequestException{ | |
655 | RespMetadata: v, | |
656 | } | |
657 | } | |
658 | ||
659 | // Code returns the exception type name. | |
660 | func (s *InvalidRequestException) Code() string { | |
661 | return "InvalidRequestException" | |
662 | } | |
663 | ||
664 | // Message returns the exception's message. | |
665 | func (s *InvalidRequestException) Message() string { | |
666 | if s.Message_ != nil { | |
667 | return *s.Message_ | |
668 | } | |
669 | return "" | |
670 | } | |
671 | ||
672 | // OrigErr always returns nil, satisfies awserr.Error interface. | |
673 | func (s *InvalidRequestException) OrigErr() error { | |
674 | return nil | |
675 | } | |
676 | ||
677 | func (s *InvalidRequestException) Error() string { | |
678 | return fmt.Sprintf("%s: %s", s.Code(), s.Message()) | |
679 | } | |
680 | ||
681 | // Status code returns the HTTP status code for the request's response error. | |
682 | func (s *InvalidRequestException) StatusCode() int { | |
683 | return s.RespMetadata.StatusCode | |
684 | } | |
685 | ||
686 | // RequestID returns the service's response RequestID for request. | |
687 | func (s *InvalidRequestException) RequestID() string { | |
688 | return s.RespMetadata.RequestID | |
689 | } | |
690 | ||
691 | type ListAccountRolesInput struct { | |
692 | _ struct{} `type:"structure"` | |
693 | ||
694 | // The token issued by the CreateToken API call. For more information, see CreateToken | |
695 | // (https://docs.aws.amazon.com/singlesignon/latest/OIDCAPIReference/API_CreateToken.html) | |
696 | // in the AWS SSO OIDC API Reference Guide. | |
697 | // | |
698 | // AccessToken is a required field | |
699 | AccessToken *string `location:"header" locationName:"x-amz-sso_bearer_token" type:"string" required:"true" sensitive:"true"` | |
700 | ||
701 | // The identifier for the AWS account that is assigned to the user. | |
702 | // | |
703 | // AccountId is a required field | |
704 | AccountId *string `location:"querystring" locationName:"account_id" type:"string" required:"true"` | |
705 | ||
706 | // The number of items that clients can request per page. | |
707 | MaxResults *int64 `location:"querystring" locationName:"max_result" min:"1" type:"integer"` | |
708 | ||
709 | // The page token from the previous response output when you request subsequent | |
710 | // pages. | |
711 | NextToken *string `location:"querystring" locationName:"next_token" type:"string"` | |
712 | } | |
713 | ||
714 | // String returns the string representation | |
715 | func (s ListAccountRolesInput) String() string { | |
716 | return awsutil.Prettify(s) | |
717 | } | |
718 | ||
719 | // GoString returns the string representation | |
720 | func (s ListAccountRolesInput) GoString() string { | |
721 | return s.String() | |
722 | } | |
723 | ||
724 | // Validate inspects the fields of the type to determine if they are valid. | |
725 | func (s *ListAccountRolesInput) Validate() error { | |
726 | invalidParams := request.ErrInvalidParams{Context: "ListAccountRolesInput"} | |
727 | if s.AccessToken == nil { | |
728 | invalidParams.Add(request.NewErrParamRequired("AccessToken")) | |
729 | } | |
730 | if s.AccountId == nil { | |
731 | invalidParams.Add(request.NewErrParamRequired("AccountId")) | |
732 | } | |
733 | if s.MaxResults != nil && *s.MaxResults < 1 { | |
734 | invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) | |
735 | } | |
736 | ||
737 | if invalidParams.Len() > 0 { | |
738 | return invalidParams | |
739 | } | |
740 | return nil | |
741 | } | |
742 | ||
743 | // SetAccessToken sets the AccessToken field's value. | |
744 | func (s *ListAccountRolesInput) SetAccessToken(v string) *ListAccountRolesInput { | |
745 | s.AccessToken = &v | |
746 | return s | |
747 | } | |
748 | ||
749 | // SetAccountId sets the AccountId field's value. | |
750 | func (s *ListAccountRolesInput) SetAccountId(v string) *ListAccountRolesInput { | |
751 | s.AccountId = &v | |
752 | return s | |
753 | } | |
754 | ||
755 | // SetMaxResults sets the MaxResults field's value. | |
756 | func (s *ListAccountRolesInput) SetMaxResults(v int64) *ListAccountRolesInput { | |
757 | s.MaxResults = &v | |
758 | return s | |
759 | } | |
760 | ||
761 | // SetNextToken sets the NextToken field's value. | |
762 | func (s *ListAccountRolesInput) SetNextToken(v string) *ListAccountRolesInput { | |
763 | s.NextToken = &v | |
764 | return s | |
765 | } | |
766 | ||
767 | type ListAccountRolesOutput struct { | |
768 | _ struct{} `type:"structure"` | |
769 | ||
770 | // The page token client that is used to retrieve the list of accounts. | |
771 | NextToken *string `locationName:"nextToken" type:"string"` | |
772 | ||
773 | // A paginated response with the list of roles and the next token if more results | |
774 | // are available. | |
775 | RoleList []*RoleInfo `locationName:"roleList" type:"list"` | |
776 | } | |
777 | ||
778 | // String returns the string representation | |
779 | func (s ListAccountRolesOutput) String() string { | |
780 | return awsutil.Prettify(s) | |
781 | } | |
782 | ||
783 | // GoString returns the string representation | |
784 | func (s ListAccountRolesOutput) GoString() string { | |
785 | return s.String() | |
786 | } | |
787 | ||
788 | // SetNextToken sets the NextToken field's value. | |
789 | func (s *ListAccountRolesOutput) SetNextToken(v string) *ListAccountRolesOutput { | |
790 | s.NextToken = &v | |
791 | return s | |
792 | } | |
793 | ||
794 | // SetRoleList sets the RoleList field's value. | |
795 | func (s *ListAccountRolesOutput) SetRoleList(v []*RoleInfo) *ListAccountRolesOutput { | |
796 | s.RoleList = v | |
797 | return s | |
798 | } | |
799 | ||
800 | type ListAccountsInput struct { | |
801 | _ struct{} `type:"structure"` | |
802 | ||
803 | // The token issued by the CreateToken API call. For more information, see CreateToken | |
804 | // (https://docs.aws.amazon.com/singlesignon/latest/OIDCAPIReference/API_CreateToken.html) | |
805 | // in the AWS SSO OIDC API Reference Guide. | |
806 | // | |
807 | // AccessToken is a required field | |
808 | AccessToken *string `location:"header" locationName:"x-amz-sso_bearer_token" type:"string" required:"true" sensitive:"true"` | |
809 | ||
810 | // This is the number of items clients can request per page. | |
811 | MaxResults *int64 `location:"querystring" locationName:"max_result" min:"1" type:"integer"` | |
812 | ||
813 | // (Optional) When requesting subsequent pages, this is the page token from | |
814 | // the previous response output. | |
815 | NextToken *string `location:"querystring" locationName:"next_token" type:"string"` | |
816 | } | |
817 | ||
818 | // String returns the string representation | |
819 | func (s ListAccountsInput) String() string { | |
820 | return awsutil.Prettify(s) | |
821 | } | |
822 | ||
823 | // GoString returns the string representation | |
824 | func (s ListAccountsInput) GoString() string { | |
825 | return s.String() | |
826 | } | |
827 | ||
828 | // Validate inspects the fields of the type to determine if they are valid. | |
829 | func (s *ListAccountsInput) Validate() error { | |
830 | invalidParams := request.ErrInvalidParams{Context: "ListAccountsInput"} | |
831 | if s.AccessToken == nil { | |
832 | invalidParams.Add(request.NewErrParamRequired("AccessToken")) | |
833 | } | |
834 | if s.MaxResults != nil && *s.MaxResults < 1 { | |
835 | invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) | |
836 | } | |
837 | ||
838 | if invalidParams.Len() > 0 { | |
839 | return invalidParams | |
840 | } | |
841 | return nil | |
842 | } | |
843 | ||
844 | // SetAccessToken sets the AccessToken field's value. | |
845 | func (s *ListAccountsInput) SetAccessToken(v string) *ListAccountsInput { | |
846 | s.AccessToken = &v | |
847 | return s | |
848 | } | |
849 | ||
850 | // SetMaxResults sets the MaxResults field's value. | |
851 | func (s *ListAccountsInput) SetMaxResults(v int64) *ListAccountsInput { | |
852 | s.MaxResults = &v | |
853 | return s | |
854 | } | |
855 | ||
856 | // SetNextToken sets the NextToken field's value. | |
857 | func (s *ListAccountsInput) SetNextToken(v string) *ListAccountsInput { | |
858 | s.NextToken = &v | |
859 | return s | |
860 | } | |
861 | ||
862 | type ListAccountsOutput struct { | |
863 | _ struct{} `type:"structure"` | |
864 | ||
865 | // A paginated response with the list of account information and the next token | |
866 | // if more results are available. | |
867 | AccountList []*AccountInfo `locationName:"accountList" type:"list"` | |
868 | ||
869 | // The page token client that is used to retrieve the list of accounts. | |
870 | NextToken *string `locationName:"nextToken" type:"string"` | |
871 | } | |
872 | ||
873 | // String returns the string representation | |
874 | func (s ListAccountsOutput) String() string { | |
875 | return awsutil.Prettify(s) | |
876 | } | |
877 | ||
878 | // GoString returns the string representation | |
879 | func (s ListAccountsOutput) GoString() string { | |
880 | return s.String() | |
881 | } | |
882 | ||
883 | // SetAccountList sets the AccountList field's value. | |
884 | func (s *ListAccountsOutput) SetAccountList(v []*AccountInfo) *ListAccountsOutput { | |
885 | s.AccountList = v | |
886 | return s | |
887 | } | |
888 | ||
889 | // SetNextToken sets the NextToken field's value. | |
890 | func (s *ListAccountsOutput) SetNextToken(v string) *ListAccountsOutput { | |
891 | s.NextToken = &v | |
892 | return s | |
893 | } | |
894 | ||
895 | type LogoutInput struct { | |
896 | _ struct{} `type:"structure"` | |
897 | ||
898 | // The token issued by the CreateToken API call. For more information, see CreateToken | |
899 | // (https://docs.aws.amazon.com/singlesignon/latest/OIDCAPIReference/API_CreateToken.html) | |
900 | // in the AWS SSO OIDC API Reference Guide. | |
901 | // | |
902 | // AccessToken is a required field | |
903 | AccessToken *string `location:"header" locationName:"x-amz-sso_bearer_token" type:"string" required:"true" sensitive:"true"` | |
904 | } | |
905 | ||
906 | // String returns the string representation | |
907 | func (s LogoutInput) String() string { | |
908 | return awsutil.Prettify(s) | |
909 | } | |
910 | ||
911 | // GoString returns the string representation | |
912 | func (s LogoutInput) GoString() string { | |
913 | return s.String() | |
914 | } | |
915 | ||
916 | // Validate inspects the fields of the type to determine if they are valid. | |
917 | func (s *LogoutInput) Validate() error { | |
918 | invalidParams := request.ErrInvalidParams{Context: "LogoutInput"} | |
919 | if s.AccessToken == nil { | |
920 | invalidParams.Add(request.NewErrParamRequired("AccessToken")) | |
921 | } | |
922 | ||
923 | if invalidParams.Len() > 0 { | |
924 | return invalidParams | |
925 | } | |
926 | return nil | |
927 | } | |
928 | ||
929 | // SetAccessToken sets the AccessToken field's value. | |
930 | func (s *LogoutInput) SetAccessToken(v string) *LogoutInput { | |
931 | s.AccessToken = &v | |
932 | return s | |
933 | } | |
934 | ||
935 | type LogoutOutput struct { | |
936 | _ struct{} `type:"structure"` | |
937 | } | |
938 | ||
939 | // String returns the string representation | |
940 | func (s LogoutOutput) String() string { | |
941 | return awsutil.Prettify(s) | |
942 | } | |
943 | ||
944 | // GoString returns the string representation | |
945 | func (s LogoutOutput) GoString() string { | |
946 | return s.String() | |
947 | } | |
948 | ||
949 | // The specified resource doesn't exist. | |
950 | type ResourceNotFoundException struct { | |
951 | _ struct{} `type:"structure"` | |
952 | RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` | |
953 | ||
954 | Message_ *string `locationName:"message" type:"string"` | |
955 | } | |
956 | ||
957 | // String returns the string representation | |
958 | func (s ResourceNotFoundException) String() string { | |
959 | return awsutil.Prettify(s) | |
960 | } | |
961 | ||
962 | // GoString returns the string representation | |
963 | func (s ResourceNotFoundException) GoString() string { | |
964 | return s.String() | |
965 | } | |
966 | ||
967 | func newErrorResourceNotFoundException(v protocol.ResponseMetadata) error { | |
968 | return &ResourceNotFoundException{ | |
969 | RespMetadata: v, | |
970 | } | |
971 | } | |
972 | ||
973 | // Code returns the exception type name. | |
974 | func (s *ResourceNotFoundException) Code() string { | |
975 | return "ResourceNotFoundException" | |
976 | } | |
977 | ||
978 | // Message returns the exception's message. | |
979 | func (s *ResourceNotFoundException) Message() string { | |
980 | if s.Message_ != nil { | |
981 | return *s.Message_ | |
982 | } | |
983 | return "" | |
984 | } | |
985 | ||
986 | // OrigErr always returns nil, satisfies awserr.Error interface. | |
987 | func (s *ResourceNotFoundException) OrigErr() error { | |
988 | return nil | |
989 | } | |
990 | ||
991 | func (s *ResourceNotFoundException) Error() string { | |
992 | return fmt.Sprintf("%s: %s", s.Code(), s.Message()) | |
993 | } | |
994 | ||
995 | // Status code returns the HTTP status code for the request's response error. | |
996 | func (s *ResourceNotFoundException) StatusCode() int { | |
997 | return s.RespMetadata.StatusCode | |
998 | } | |
999 | ||
1000 | // RequestID returns the service's response RequestID for request. | |
1001 | func (s *ResourceNotFoundException) RequestID() string { | |
1002 | return s.RespMetadata.RequestID | |
1003 | } | |
1004 | ||
1005 | // Provides information about the role credentials that are assigned to the | |
1006 | // user. | |
1007 | type RoleCredentials struct { | |
1008 | _ struct{} `type:"structure"` | |
1009 | ||
1010 | // The identifier used for the temporary security credentials. For more information, | |
1011 | // see Using Temporary Security Credentials to Request Access to AWS Resources | |
1012 | // (https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html) | |
1013 | // in the AWS IAM User Guide. | |
1014 | AccessKeyId *string `locationName:"accessKeyId" type:"string"` | |
1015 | ||
1016 | // The date on which temporary security credentials expire. | |
1017 | Expiration *int64 `locationName:"expiration" type:"long"` | |
1018 | ||
1019 | // The key that is used to sign the request. For more information, see Using | |
1020 | // Temporary Security Credentials to Request Access to AWS Resources (https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html) | |
1021 | // in the AWS IAM User Guide. | |
1022 | SecretAccessKey *string `locationName:"secretAccessKey" type:"string" sensitive:"true"` | |
1023 | ||
1024 | // The token used for temporary credentials. For more information, see Using | |
1025 | // Temporary Security Credentials to Request Access to AWS Resources (https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html) | |
1026 | // in the AWS IAM User Guide. | |
1027 | SessionToken *string `locationName:"sessionToken" type:"string" sensitive:"true"` | |
1028 | } | |
1029 | ||
1030 | // String returns the string representation | |
1031 | func (s RoleCredentials) String() string { | |
1032 | return awsutil.Prettify(s) | |
1033 | } | |
1034 | ||
1035 | // GoString returns the string representation | |
1036 | func (s RoleCredentials) GoString() string { | |
1037 | return s.String() | |
1038 | } | |
1039 | ||
1040 | // SetAccessKeyId sets the AccessKeyId field's value. | |
1041 | func (s *RoleCredentials) SetAccessKeyId(v string) *RoleCredentials { | |
1042 | s.AccessKeyId = &v | |
1043 | return s | |
1044 | } | |
1045 | ||
1046 | // SetExpiration sets the Expiration field's value. | |
1047 | func (s *RoleCredentials) SetExpiration(v int64) *RoleCredentials { | |
1048 | s.Expiration = &v | |
1049 | return s | |
1050 | } | |
1051 | ||
1052 | // SetSecretAccessKey sets the SecretAccessKey field's value. | |
1053 | func (s *RoleCredentials) SetSecretAccessKey(v string) *RoleCredentials { | |
1054 | s.SecretAccessKey = &v | |
1055 | return s | |
1056 | } | |
1057 | ||
1058 | // SetSessionToken sets the SessionToken field's value. | |
1059 | func (s *RoleCredentials) SetSessionToken(v string) *RoleCredentials { | |
1060 | s.SessionToken = &v | |
1061 | return s | |
1062 | } | |
1063 | ||
1064 | // Provides information about the role that is assigned to the user. | |
1065 | type RoleInfo struct { | |
1066 | _ struct{} `type:"structure"` | |
1067 | ||
1068 | // The identifier of the AWS account assigned to the user. | |
1069 | AccountId *string `locationName:"accountId" type:"string"` | |
1070 | ||
1071 | // The friendly name of the role that is assigned to the user. | |
1072 | RoleName *string `locationName:"roleName" type:"string"` | |
1073 | } | |
1074 | ||
1075 | // String returns the string representation | |
1076 | func (s RoleInfo) String() string { | |
1077 | return awsutil.Prettify(s) | |
1078 | } | |
1079 | ||
1080 | // GoString returns the string representation | |
1081 | func (s RoleInfo) GoString() string { | |
1082 | return s.String() | |
1083 | } | |
1084 | ||
1085 | // SetAccountId sets the AccountId field's value. | |
1086 | func (s *RoleInfo) SetAccountId(v string) *RoleInfo { | |
1087 | s.AccountId = &v | |
1088 | return s | |
1089 | } | |
1090 | ||
1091 | // SetRoleName sets the RoleName field's value. | |
1092 | func (s *RoleInfo) SetRoleName(v string) *RoleInfo { | |
1093 | s.RoleName = &v | |
1094 | return s | |
1095 | } | |
1096 | ||
1097 | // Indicates that the request is being made too frequently and is more than | |
1098 | // what the server can handle. | |
1099 | type TooManyRequestsException struct { | |
1100 | _ struct{} `type:"structure"` | |
1101 | RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` | |
1102 | ||
1103 | Message_ *string `locationName:"message" type:"string"` | |
1104 | } | |
1105 | ||
1106 | // String returns the string representation | |
1107 | func (s TooManyRequestsException) String() string { | |
1108 | return awsutil.Prettify(s) | |
1109 | } | |
1110 | ||
1111 | // GoString returns the string representation | |
1112 | func (s TooManyRequestsException) GoString() string { | |
1113 | return s.String() | |
1114 | } | |
1115 | ||
1116 | func newErrorTooManyRequestsException(v protocol.ResponseMetadata) error { | |
1117 | return &TooManyRequestsException{ | |
1118 | RespMetadata: v, | |
1119 | } | |
1120 | } | |
1121 | ||
1122 | // Code returns the exception type name. | |
1123 | func (s *TooManyRequestsException) Code() string { | |
1124 | return "TooManyRequestsException" | |
1125 | } | |
1126 | ||
1127 | // Message returns the exception's message. | |
1128 | func (s *TooManyRequestsException) Message() string { | |
1129 | if s.Message_ != nil { | |
1130 | return *s.Message_ | |
1131 | } | |
1132 | return "" | |
1133 | } | |
1134 | ||
1135 | // OrigErr always returns nil, satisfies awserr.Error interface. | |
1136 | func (s *TooManyRequestsException) OrigErr() error { | |
1137 | return nil | |
1138 | } | |
1139 | ||
1140 | func (s *TooManyRequestsException) Error() string { | |
1141 | return fmt.Sprintf("%s: %s", s.Code(), s.Message()) | |
1142 | } | |
1143 | ||
1144 | // Status code returns the HTTP status code for the request's response error. | |
1145 | func (s *TooManyRequestsException) StatusCode() int { | |
1146 | return s.RespMetadata.StatusCode | |
1147 | } | |
1148 | ||
1149 | // RequestID returns the service's response RequestID for request. | |
1150 | func (s *TooManyRequestsException) RequestID() string { | |
1151 | return s.RespMetadata.RequestID | |
1152 | } | |
1153 | ||
1154 | // Indicates that the request is not authorized. This can happen due to an invalid | |
1155 | // access token in the request. | |
1156 | type UnauthorizedException struct { | |
1157 | _ struct{} `type:"structure"` | |
1158 | RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` | |
1159 | ||
1160 | Message_ *string `locationName:"message" type:"string"` | |
1161 | } | |
1162 | ||
1163 | // String returns the string representation | |
1164 | func (s UnauthorizedException) String() string { | |
1165 | return awsutil.Prettify(s) | |
1166 | } | |
1167 | ||
1168 | // GoString returns the string representation | |
1169 | func (s UnauthorizedException) GoString() string { | |
1170 | return s.String() | |
1171 | } | |
1172 | ||
1173 | func newErrorUnauthorizedException(v protocol.ResponseMetadata) error { | |
1174 | return &UnauthorizedException{ | |
1175 | RespMetadata: v, | |
1176 | } | |
1177 | } | |
1178 | ||
1179 | // Code returns the exception type name. | |
1180 | func (s *UnauthorizedException) Code() string { | |
1181 | return "UnauthorizedException" | |
1182 | } | |
1183 | ||
1184 | // Message returns the exception's message. | |
1185 | func (s *UnauthorizedException) Message() string { | |
1186 | if s.Message_ != nil { | |
1187 | return *s.Message_ | |
1188 | } | |
1189 | return "" | |
1190 | } | |
1191 | ||
1192 | // OrigErr always returns nil, satisfies awserr.Error interface. | |
1193 | func (s *UnauthorizedException) OrigErr() error { | |
1194 | return nil | |
1195 | } | |
1196 | ||
1197 | func (s *UnauthorizedException) Error() string { | |
1198 | return fmt.Sprintf("%s: %s", s.Code(), s.Message()) | |
1199 | } | |
1200 | ||
1201 | // Status code returns the HTTP status code for the request's response error. | |
1202 | func (s *UnauthorizedException) StatusCode() int { | |
1203 | return s.RespMetadata.StatusCode | |
1204 | } | |
1205 | ||
1206 | // RequestID returns the service's response RequestID for request. | |
1207 | func (s *UnauthorizedException) RequestID() string { | |
1208 | return s.RespMetadata.RequestID | |
1209 | } |
0 | // Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. | |
1 | ||
2 | // Package sso provides the client and types for making API | |
3 | // requests to AWS Single Sign-On. | |
4 | // | |
5 | // AWS Single Sign-On Portal is a web service that makes it easy for you to | |
6 | // assign user access to AWS SSO resources such as the user portal. Users can | |
7 | // get AWS account applications and roles assigned to them and get federated | |
8 | // into the application. | |
9 | // | |
10 | // For general information about AWS SSO, see What is AWS Single Sign-On? (https://docs.aws.amazon.com/singlesignon/latest/userguide/what-is.html) | |
11 | // in the AWS SSO User Guide. | |
12 | // | |
13 | // This API reference guide describes the AWS SSO Portal operations that you | |
14 | // can call programatically and includes detailed information on data types | |
15 | // and errors. | |
16 | // | |
17 | // AWS provides SDKs that consist of libraries and sample code for various programming | |
18 | // languages and platforms, such as Java, Ruby, .Net, iOS, or Android. The SDKs | |
19 | // provide a convenient way to create programmatic access to AWS SSO and other | |
20 | // AWS services. For more information about the AWS SDKs, including how to download | |
21 | // and install them, see Tools for Amazon Web Services (http://aws.amazon.com/tools/). | |
22 | // | |
23 | // See https://docs.aws.amazon.com/goto/WebAPI/sso-2019-06-10 for more information on this service. | |
24 | // | |
25 | // See sso package documentation for more information. | |
26 | // https://docs.aws.amazon.com/sdk-for-go/api/service/sso/ | |
27 | // | |
28 | // Using the Client | |
29 | // | |
30 | // To contact AWS Single Sign-On with the SDK use the New function to create | |
31 | // a new service client. With that client you can make API requests to the service. | |
32 | // These clients are safe to use concurrently. | |
33 | // | |
34 | // See the SDK's documentation for more information on how to use the SDK. | |
35 | // https://docs.aws.amazon.com/sdk-for-go/api/ | |
36 | // | |
37 | // See aws.Config documentation for more information on configuring SDK clients. | |
38 | // https://docs.aws.amazon.com/sdk-for-go/api/aws/#Config | |
39 | // | |
40 | // See the AWS Single Sign-On client SSO for more | |
41 | // information on creating client for this service. | |
42 | // https://docs.aws.amazon.com/sdk-for-go/api/service/sso/#New | |
43 | package sso |
0 | // Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. | |
1 | ||
2 | package sso | |
3 | ||
4 | import ( | |
5 | "github.com/aws/aws-sdk-go/private/protocol" | |
6 | ) | |
7 | ||
8 | const ( | |
9 | ||
10 | // ErrCodeInvalidRequestException for service response error code | |
11 | // "InvalidRequestException". | |
12 | // | |
13 | // Indicates that a problem occurred with the input to the request. For example, | |
14 | // a required parameter might be missing or out of range. | |
15 | ErrCodeInvalidRequestException = "InvalidRequestException" | |
16 | ||
17 | // ErrCodeResourceNotFoundException for service response error code | |
18 | // "ResourceNotFoundException". | |
19 | // | |
20 | // The specified resource doesn't exist. | |
21 | ErrCodeResourceNotFoundException = "ResourceNotFoundException" | |
22 | ||
23 | // ErrCodeTooManyRequestsException for service response error code | |
24 | // "TooManyRequestsException". | |
25 | // | |
26 | // Indicates that the request is being made too frequently and is more than | |
27 | // what the server can handle. | |
28 | ErrCodeTooManyRequestsException = "TooManyRequestsException" | |
29 | ||
30 | // ErrCodeUnauthorizedException for service response error code | |
31 | // "UnauthorizedException". | |
32 | // | |
33 | // Indicates that the request is not authorized. This can happen due to an invalid | |
34 | // access token in the request. | |
35 | ErrCodeUnauthorizedException = "UnauthorizedException" | |
36 | ) | |
37 | ||
38 | var exceptionFromCode = map[string]func(protocol.ResponseMetadata) error{ | |
39 | "InvalidRequestException": newErrorInvalidRequestException, | |
40 | "ResourceNotFoundException": newErrorResourceNotFoundException, | |
41 | "TooManyRequestsException": newErrorTooManyRequestsException, | |
42 | "UnauthorizedException": newErrorUnauthorizedException, | |
43 | } |
0 | // Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. | |
1 | ||
2 | package sso | |
3 | ||
4 | import ( | |
5 | "github.com/aws/aws-sdk-go/aws" | |
6 | "github.com/aws/aws-sdk-go/aws/client" | |
7 | "github.com/aws/aws-sdk-go/aws/client/metadata" | |
8 | "github.com/aws/aws-sdk-go/aws/request" | |
9 | "github.com/aws/aws-sdk-go/aws/signer/v4" | |
10 | "github.com/aws/aws-sdk-go/private/protocol" | |
11 | "github.com/aws/aws-sdk-go/private/protocol/restjson" | |
12 | ) | |
13 | ||
14 | // SSO provides the API operation methods for making requests to | |
15 | // AWS Single Sign-On. See this package's package overview docs | |
16 | // for details on the service. | |
17 | // | |
18 | // SSO methods are safe to use concurrently. It is not safe to | |
19 | // modify mutate any of the struct's properties though. | |
20 | type SSO struct { | |
21 | *client.Client | |
22 | } | |
23 | ||
24 | // Used for custom client initialization logic | |
25 | var initClient func(*client.Client) | |
26 | ||
27 | // Used for custom request initialization logic | |
28 | var initRequest func(*request.Request) | |
29 | ||
30 | // Service information constants | |
31 | const ( | |
32 | ServiceName = "SSO" // Name of service. | |
33 | EndpointsID = "portal.sso" // ID to lookup a service endpoint with. | |
34 | ServiceID = "SSO" // ServiceID is a unique identifier of a specific service. | |
35 | ) | |
36 | ||
37 | // New creates a new instance of the SSO client with a session. | |
38 | // If additional configuration is needed for the client instance use the optional | |
39 | // aws.Config parameter to add your extra config. | |
40 | // | |
41 | // Example: | |
42 | // mySession := session.Must(session.NewSession()) | |
43 | // | |
44 | // // Create a SSO client from just a session. | |
45 | // svc := sso.New(mySession) | |
46 | // | |
47 | // // Create a SSO client with additional configuration | |
48 | // svc := sso.New(mySession, aws.NewConfig().WithRegion("us-west-2")) | |
49 | func New(p client.ConfigProvider, cfgs ...*aws.Config) *SSO { | |
50 | c := p.ClientConfig(EndpointsID, cfgs...) | |
51 | if c.SigningNameDerived || len(c.SigningName) == 0 { | |
52 | c.SigningName = "awsssoportal" | |
53 | } | |
54 | return newClient(*c.Config, c.Handlers, c.PartitionID, c.Endpoint, c.SigningRegion, c.SigningName) | |
55 | } | |
56 | ||
57 | // newClient creates, initializes and returns a new service client instance. | |
58 | func newClient(cfg aws.Config, handlers request.Handlers, partitionID, endpoint, signingRegion, signingName string) *SSO { | |
59 | svc := &SSO{ | |
60 | Client: client.New( | |
61 | cfg, | |
62 | metadata.ClientInfo{ | |
63 | ServiceName: ServiceName, | |
64 | ServiceID: ServiceID, | |
65 | SigningName: signingName, | |
66 | SigningRegion: signingRegion, | |
67 | PartitionID: partitionID, | |
68 | Endpoint: endpoint, | |
69 | APIVersion: "2019-06-10", | |
70 | }, | |
71 | handlers, | |
72 | ), | |
73 | } | |
74 | ||
75 | // Handlers | |
76 | svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) | |
77 | svc.Handlers.Build.PushBackNamed(restjson.BuildHandler) | |
78 | svc.Handlers.Unmarshal.PushBackNamed(restjson.UnmarshalHandler) | |
79 | svc.Handlers.UnmarshalMeta.PushBackNamed(restjson.UnmarshalMetaHandler) | |
80 | svc.Handlers.UnmarshalError.PushBackNamed( | |
81 | protocol.NewUnmarshalErrorHandler(restjson.NewUnmarshalTypedError(exceptionFromCode)).NamedHandler(), | |
82 | ) | |
83 | ||
84 | // Run custom client initialization if present | |
85 | if initClient != nil { | |
86 | initClient(svc.Client) | |
87 | } | |
88 | ||
89 | return svc | |
90 | } | |
91 | ||
92 | // newRequest creates a new request for a SSO operation and runs any | |
93 | // custom request initialization. | |
94 | func (c *SSO) newRequest(op *request.Operation, params, data interface{}) *request.Request { | |
95 | req := c.NewRequest(op, params, data) | |
96 | ||
97 | // Run custom request initialization if present | |
98 | if initRequest != nil { | |
99 | initRequest(req) | |
100 | } | |
101 | ||
102 | return req | |
103 | } |
0 | // Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. | |
1 | ||
2 | // Package ssoiface provides an interface to enable mocking the AWS Single Sign-On service client | |
3 | // for testing your code. | |
4 | // | |
5 | // It is important to note that this interface will have breaking changes | |
6 | // when the service model is updated and adds new API operations, paginators, | |
7 | // and waiters. | |
8 | package ssoiface | |
9 | ||
10 | import ( | |
11 | "github.com/aws/aws-sdk-go/aws" | |
12 | "github.com/aws/aws-sdk-go/aws/request" | |
13 | "github.com/aws/aws-sdk-go/service/sso" | |
14 | ) | |
15 | ||
16 | // SSOAPI provides an interface to enable mocking the | |
17 | // sso.SSO service client's API operation, | |
18 | // paginators, and waiters. This make unit testing your code that calls out | |
19 | // to the SDK's service client's calls easier. | |
20 | // | |
21 | // The best way to use this interface is so the SDK's service client's calls | |
22 | // can be stubbed out for unit testing your code with the SDK without needing | |
23 | // to inject custom request handlers into the SDK's request pipeline. | |
24 | // | |
25 | // // myFunc uses an SDK service client to make a request to | |
26 | // // AWS Single Sign-On. | |
27 | // func myFunc(svc ssoiface.SSOAPI) bool { | |
28 | // // Make svc.GetRoleCredentials request | |
29 | // } | |
30 | // | |
31 | // func main() { | |
32 | // sess := session.New() | |
33 | // svc := sso.New(sess) | |
34 | // | |
35 | // myFunc(svc) | |
36 | // } | |
37 | // | |
38 | // In your _test.go file: | |
39 | // | |
40 | // // Define a mock struct to be used in your unit tests of myFunc. | |
41 | // type mockSSOClient struct { | |
42 | // ssoiface.SSOAPI | |
43 | // } | |
44 | // func (m *mockSSOClient) GetRoleCredentials(input *sso.GetRoleCredentialsInput) (*sso.GetRoleCredentialsOutput, error) { | |
45 | // // mock response/functionality | |
46 | // } | |
47 | // | |
48 | // func TestMyFunc(t *testing.T) { | |
49 | // // Setup Test | |
50 | // mockSvc := &mockSSOClient{} | |
51 | // | |
52 | // myfunc(mockSvc) | |
53 | // | |
54 | // // Verify myFunc's functionality | |
55 | // } | |
56 | // | |
57 | // It is important to note that this interface will have breaking changes | |
58 | // when the service model is updated and adds new API operations, paginators, | |
59 | // and waiters. Its suggested to use the pattern above for testing, or using | |
60 | // tooling to generate mocks to satisfy the interfaces. | |
61 | type SSOAPI interface { | |
62 | GetRoleCredentials(*sso.GetRoleCredentialsInput) (*sso.GetRoleCredentialsOutput, error) | |
63 | GetRoleCredentialsWithContext(aws.Context, *sso.GetRoleCredentialsInput, ...request.Option) (*sso.GetRoleCredentialsOutput, error) | |
64 | GetRoleCredentialsRequest(*sso.GetRoleCredentialsInput) (*request.Request, *sso.GetRoleCredentialsOutput) | |
65 | ||
66 | ListAccountRoles(*sso.ListAccountRolesInput) (*sso.ListAccountRolesOutput, error) | |
67 | ListAccountRolesWithContext(aws.Context, *sso.ListAccountRolesInput, ...request.Option) (*sso.ListAccountRolesOutput, error) | |
68 | ListAccountRolesRequest(*sso.ListAccountRolesInput) (*request.Request, *sso.ListAccountRolesOutput) | |
69 | ||
70 | ListAccountRolesPages(*sso.ListAccountRolesInput, func(*sso.ListAccountRolesOutput, bool) bool) error | |
71 | ListAccountRolesPagesWithContext(aws.Context, *sso.ListAccountRolesInput, func(*sso.ListAccountRolesOutput, bool) bool, ...request.Option) error | |
72 | ||
73 | ListAccounts(*sso.ListAccountsInput) (*sso.ListAccountsOutput, error) | |
74 | ListAccountsWithContext(aws.Context, *sso.ListAccountsInput, ...request.Option) (*sso.ListAccountsOutput, error) | |
75 | ListAccountsRequest(*sso.ListAccountsInput) (*request.Request, *sso.ListAccountsOutput) | |
76 | ||
77 | ListAccountsPages(*sso.ListAccountsInput, func(*sso.ListAccountsOutput, bool) bool) error | |
78 | ListAccountsPagesWithContext(aws.Context, *sso.ListAccountsInput, func(*sso.ListAccountsOutput, bool) bool, ...request.Option) error | |
79 | ||
80 | Logout(*sso.LogoutInput) (*sso.LogoutOutput, error) | |
81 | LogoutWithContext(aws.Context, *sso.LogoutInput, ...request.Option) (*sso.LogoutOutput, error) | |
82 | LogoutRequest(*sso.LogoutInput) (*request.Request, *sso.LogoutOutput) | |
83 | } | |
84 | ||
85 | var _ SSOAPI = (*sso.SSO)(nil) |
0 | # github.com/aws/aws-sdk-go v1.36.0 | |
0 | # github.com/aws/aws-sdk-go v1.37.32 | |
1 | 1 | github.com/aws/aws-sdk-go/aws |
2 | 2 | github.com/aws/aws-sdk-go/aws/awserr |
3 | 3 | github.com/aws/aws-sdk-go/aws/awsutil |
8 | 8 | github.com/aws/aws-sdk-go/aws/credentials/ec2rolecreds |
9 | 9 | github.com/aws/aws-sdk-go/aws/credentials/endpointcreds |
10 | 10 | github.com/aws/aws-sdk-go/aws/credentials/processcreds |
11 | github.com/aws/aws-sdk-go/aws/credentials/ssocreds | |
11 | 12 | github.com/aws/aws-sdk-go/aws/credentials/stscreds |
12 | 13 | github.com/aws/aws-sdk-go/aws/csm |
13 | 14 | github.com/aws/aws-sdk-go/aws/defaults |
31 | 32 | github.com/aws/aws-sdk-go/private/protocol/query |
32 | 33 | github.com/aws/aws-sdk-go/private/protocol/query/queryutil |
33 | 34 | github.com/aws/aws-sdk-go/private/protocol/rest |
35 | github.com/aws/aws-sdk-go/private/protocol/restjson | |
34 | 36 | github.com/aws/aws-sdk-go/private/protocol/xml/xmlutil |
35 | 37 | github.com/aws/aws-sdk-go/service/ecr |
36 | 38 | github.com/aws/aws-sdk-go/service/ecrpublic |
39 | github.com/aws/aws-sdk-go/service/sso | |
40 | github.com/aws/aws-sdk-go/service/sso/ssoiface | |
37 | 41 | github.com/aws/aws-sdk-go/service/sts |
38 | 42 | github.com/aws/aws-sdk-go/service/sts/stsiface |
39 | 43 | # github.com/davecgh/go-spew v1.1.1 |