Skip to content

Commit bbb2fe9

Browse files
author
awstools
committed
feat(client-savingsplans): Add dual-stack endpoint support for Savings Plans
1 parent efb1c6f commit bbb2fe9

File tree

2 files changed

+3058
-2830
lines changed

2 files changed

+3058
-2830
lines changed

clients/client-savingsplans/src/endpoint/ruleset.ts

Lines changed: 37 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -6,32 +6,44 @@ import { RuleSetObject } from "@smithy/types";
66
or see "smithy.rules#endpointRuleSet"
77
in codegen/sdk-codegen/aws-models/savingsplans.json */
88

9-
const x="required",
10-
y="fn",
11-
z="argv",
12-
A="ref";
9+
const D="required",
10+
E="type",
11+
F="fn",
12+
G="argv",
13+
H="ref",
14+
I="properties",
15+
J="authSchemes",
16+
K="signingName",
17+
L="signingRegion",
18+
M="headers";
1319
const a=false,
1420
b=true,
15-
c="isSet",
21+
c="not",
1622
d="booleanEquals",
17-
e="error",
18-
f="endpoint",
19-
g="tree",
20-
h="PartitionResult",
21-
i="getAttr",
22-
j={[x]:false,"type":"string"},
23-
k={[x]:true,"default":false,"type":"boolean"},
24-
l={[A]:"Endpoint"},
25-
m={[y]:d,[z]:[{[A]:"UseFIPS"},true]},
26-
n={[A]:"UseFIPS"},
27-
o={[y]:d,[z]:[{[A]:"UseDualStack"},true]},
28-
p={[A]:"UseDualStack"},
29-
q={},
30-
r={[A]:h},
31-
s={[y]:i,[z]:[r,"supportsFIPS"]},
32-
t={[y]:d,[z]:[true,{[y]:i,[z]:[r,"supportsDualStack"]}]},
33-
u=[m],
34-
v=[o],
35-
w=[{[A]:"Region"}];
36-
const _data={version:"1.0",parameters:{Region:j,UseDualStack:k,UseFIPS:k,Endpoint:j},rules:[{conditions:[{[y]:c,[z]:[l]}],rules:[{conditions:u,error:"Invalid Configuration: FIPS and custom endpoint are not supported",type:e},{conditions:v,error:"Invalid Configuration: Dualstack and custom endpoint are not supported",type:e},{endpoint:{url:l,properties:q,headers:q},type:f}],type:g},{conditions:[{[y]:c,[z]:w}],rules:[{conditions:[{[y]:"aws.partition",[z]:w,assign:h}],rules:[{conditions:[{[y]:"stringEquals",[z]:[{[y]:i,[z]:[r,"name"]},"aws"]},{[y]:d,[z]:[n,a]},{[y]:d,[z]:[p,a]}],endpoint:{url:"https://savingsplans.amazonaws.com",properties:{authSchemes:[{name:"sigv4",signingName:"savingsplans",signingRegion:"us-east-1"}]},headers:q},type:f},{conditions:[m,o],rules:[{conditions:[{[y]:d,[z]:[b,s]},t],rules:[{endpoint:{url:"https://savingsplans-fips.{Region}.{PartitionResult#dualStackDnsSuffix}",properties:q,headers:q},type:f}],type:g},{error:"FIPS and DualStack are enabled, but this partition does not support one or both",type:e}],type:g},{conditions:u,rules:[{conditions:[{[y]:d,[z]:[s,b]}],rules:[{endpoint:{url:"https://savingsplans-fips.{Region}.{PartitionResult#dnsSuffix}",properties:q,headers:q},type:f}],type:g},{error:"FIPS is enabled but this partition does not support FIPS",type:e}],type:g},{conditions:v,rules:[{conditions:[t],rules:[{endpoint:{url:"https://savingsplans.{Region}.{PartitionResult#dualStackDnsSuffix}",properties:q,headers:q},type:f}],type:g},{error:"DualStack is enabled but this partition does not support DualStack",type:e}],type:g},{endpoint:{url:"https://savingsplans.{Region}.{PartitionResult#dnsSuffix}",properties:q,headers:q},type:f}],type:g}],type:g},{error:"Invalid Configuration: Missing Region",type:e}]};
23+
e="endpoint",
24+
f="tree",
25+
g="error",
26+
h={[D]:false,[E]:"string"},
27+
i={[D]:true,"default":false,[E]:"boolean"},
28+
j={[H]:"Endpoint"},
29+
k={[F]:d,[G]:[{[H]:"UseFIPS"},false]},
30+
l={[F]:d,[G]:[{[H]:"UseDualStack"},true]},
31+
m={[H]:"UseDualStack"},
32+
n={[F]:"isSet",[G]:[{[H]:"Region"}]},
33+
o={[F]:"aws.partition",[G]:[{[H]:"Region"}],"assign":"PartitionResult"},
34+
p={[F]:"stringEquals",[G]:[{[F]:"getAttr",[G]:[{[H]:"PartitionResult"},"name"]},"aws"]},
35+
q={"url":"https://savingsplans.global.api.aws",[I]:{[J]:[{"name":"sigv4",[K]:"savingsplans",[L]:"us-east-1"}]},[M]:{}},
36+
r={[J]:[{"name":"sigv4",[K]:"savingsplans",[L]:"us-east-1"}]},
37+
s={},
38+
t={[F]:"getAttr",[G]:[{[H]:"PartitionResult"},"supportsDualStack"]},
39+
u={[g]:"DualStack is enabled but this partition does not support DualStack",[E]:g},
40+
v={[F]:d,[G]:[{[H]:"UseFIPS"},true]},
41+
w={[F]:"getAttr",[G]:[{[H]:"PartitionResult"},"supportsFIPS"]},
42+
x={[F]:d,[G]:[true,t]},
43+
y=[{[F]:"isSet",[G]:[j]}],
44+
z=[{[e]:{"url":"https://savingsplans.{Region}.{PartitionResult#dualStackDnsSuffix}",[I]:{},[M]:{}},[E]:e}],
45+
A=[n],
46+
B=[v],
47+
C=[l];
48+
const _data={version:"1.0",parameters:{Region:h,UseDualStack:i,UseFIPS:i,Endpoint:h},rules:[{conditions:[{[F]:c,[G]:y},k,l],rules:[{conditions:[n,o],rules:[{conditions:[p],endpoint:q,[E]:e},{conditions:[{[F]:d,[G]:[t,b]}],rules:z,[E]:f},u],[E]:f},{conditions:[{[F]:c,[G]:A}],endpoint:q,[E]:e}],[E]:f},{conditions:y,rules:[{conditions:B,error:"Invalid Configuration: FIPS and custom endpoint are not supported",[E]:g},{conditions:C,error:"Invalid Configuration: Dualstack and custom endpoint are not supported",[E]:g},{endpoint:{url:j,[I]:s,[M]:s},[E]:e}],[E]:f},{conditions:A,rules:[{conditions:[o],rules:[{conditions:[p,k,{[F]:d,[G]:[m,a]}],endpoint:{url:"https://savingsplans.amazonaws.com",[I]:r,[M]:s},[E]:e},{conditions:[v,l],rules:[{conditions:[{[F]:d,[G]:[b,w]},x],rules:[{endpoint:{url:"https://savingsplans-fips.{Region}.{PartitionResult#dualStackDnsSuffix}",[I]:s,[M]:s},[E]:e}],[E]:f},{error:"FIPS and DualStack are enabled, but this partition does not support one or both",[E]:g}],[E]:f},{conditions:B,rules:[{conditions:[{[F]:d,[G]:[w,b]}],rules:[{endpoint:{url:"https://savingsplans-fips.{Region}.{PartitionResult#dnsSuffix}",[I]:s,[M]:s},[E]:e}],[E]:f},{error:"FIPS is enabled but this partition does not support FIPS",[E]:g}],[E]:f},{conditions:C,rules:[{conditions:[x],rules:z,[E]:f},u],[E]:f},{endpoint:{url:"https://savingsplans.{Region}.{PartitionResult#dnsSuffix}",[I]:s,[M]:s},[E]:e}],[E]:f}],[E]:f},{error:"Invalid Configuration: Missing Region",[E]:g}]};
3749
export const ruleSet: RuleSetObject = _data;

0 commit comments

Comments
 (0)