@@ -2,11 +2,12 @@ package service
22
33import (
44 "context"
5- ec2types "github.com/aws/aws-sdk-go-v2/service/ec2/types"
6- elbv2types "github.com/aws/aws-sdk-go-v2/service/elasticloadbalancingv2/types"
75 "testing"
86 "time"
97
8+ ec2types "github.com/aws/aws-sdk-go-v2/service/ec2/types"
9+ elbv2types "github.com/aws/aws-sdk-go-v2/service/elasticloadbalancingv2/types"
10+
1011 awssdk "github.com/aws/aws-sdk-go-v2/aws"
1112 "github.com/go-logr/logr"
1213 "github.com/golang/mock/gomock"
@@ -2289,6 +2290,46 @@ func Test_defaultModelBuilderTask_Build(t *testing.T) {
22892290{
22902291 "id":"app/tcpudp-protocol",
22912292 "resources":{
2293+ "AWS::EC2::SecurityGroup":{
2294+ "ManagedLBSecurityGroup":{
2295+ "spec":{
2296+ "description":"[k8s] Managed SecurityGroup for LoadBalancer",
2297+ "groupName":"k8s-app-tcpudppr-06a9156bf8",
2298+ "ingress":[
2299+ {
2300+ "fromPort":80,
2301+ "ipProtocol":"tcp",
2302+ "ipRanges":[
2303+ {
2304+ "cidrIP":"0.0.0.0/0"
2305+ }
2306+ ],
2307+ "toPort":80
2308+ },
2309+ {
2310+ "fromPort":80,
2311+ "ipProtocol":"udp",
2312+ "ipRanges":[
2313+ {
2314+ "cidrIP":"0.0.0.0/0"
2315+ }
2316+ ],
2317+ "toPort":80
2318+ },
2319+ {
2320+ "fromPort":83,
2321+ "ipProtocol":"tcp",
2322+ "ipRanges":[
2323+ {
2324+ "cidrIP":"0.0.0.0/0"
2325+ }
2326+ ],
2327+ "toPort":83
2328+ }
2329+ ]
2330+ }
2331+ }
2332+ },
22922333 "AWS::ElasticLoadBalancingV2::Listener":{
22932334 "80":{
22942335 "spec":{
@@ -2343,6 +2384,11 @@ func Test_defaultModelBuilderTask_Build(t *testing.T) {
23432384 "name":"k8s-app-tcpudppr-2af705447d",
23442385 "type":"network",
23452386 "scheme":"internet-facing",
2387+ "securityGroups":[
2388+ {
2389+ "$ref":"#/resources/AWS::EC2::SecurityGroup/ManagedLBSecurityGroup/status/groupID"
2390+ }
2391+ ],
23462392 "ipAddressType":"ipv4",
23472393 "subnetMapping":[
23482394 {
@@ -2369,6 +2415,7 @@ func Test_defaultModelBuilderTask_Build(t *testing.T) {
23692415 "healthCheckConfig":{
23702416 "port":"traffic-port",
23712417 "protocol":"TCP",
2418+ "timeoutSeconds":10,
23722419 "unhealthyThresholdCount":3,
23732420 "healthyThresholdCount":3,
23742421 "intervalSeconds":10
@@ -2391,6 +2438,7 @@ func Test_defaultModelBuilderTask_Build(t *testing.T) {
23912438 "healthCheckConfig":{
23922439 "port":"traffic-port",
23932440 "protocol":"TCP",
2441+ "timeoutSeconds":10,
23942442 "unhealthyThresholdCount":3,
23952443 "healthyThresholdCount":3,
23962444 "intervalSeconds":10
@@ -2418,6 +2466,7 @@ func Test_defaultModelBuilderTask_Build(t *testing.T) {
24182466 "$ref":"#/resources/AWS::ElasticLoadBalancingV2::TargetGroup/app/tcpudp-protocol:80/status/targetGroupARN"
24192467 },
24202468 "targetType":"instance",
2469+ "vpcID":"vpc-xxx",
24212470 "serviceRef":{
24222471 "name":"tcpudp-protocol",
24232472 "port":80
@@ -2428,18 +2477,20 @@ func Test_defaultModelBuilderTask_Build(t *testing.T) {
24282477 {
24292478 "from":[
24302479 {
2431- "ipBlock":{
2432- "cidr":"0.0.0.0/0"
2480+ "securityGroup": {
2481+ "groupID": {
2482+ "$ref": "#/resources/AWS::EC2::SecurityGroup/ManagedLBSecurityGroup/status/groupID"
2483+ }
24332484 }
24342485 }
24352486 ],
24362487 "ports":[
24372488 {
2438- "protocol":"TCP ",
2489+ "protocol":"UDP ",
24392490 "port":31223
24402491 },
24412492 {
2442- "protocol":"UDP ",
2493+ "protocol":"TCP ",
24432494 "port":31223
24442495 }
24452496 ]
@@ -2463,6 +2514,7 @@ func Test_defaultModelBuilderTask_Build(t *testing.T) {
24632514 "$ref":"#/resources/AWS::ElasticLoadBalancingV2::TargetGroup/app/tcpudp-protocol:83/status/targetGroupARN"
24642515 },
24652516 "targetType":"instance",
2517+ "vpcID":"vpc-xxx",
24662518 "serviceRef":{
24672519 "name":"tcpudp-protocol",
24682520 "port":83
@@ -2473,8 +2525,10 @@ func Test_defaultModelBuilderTask_Build(t *testing.T) {
24732525 {
24742526 "from":[
24752527 {
2476- "ipBlock":{
2477- "cidr":"0.0.0.0/0"
2528+ "securityGroup": {
2529+ "groupID": {
2530+ "$ref": "#/resources/AWS::EC2::SecurityGroup/ManagedLBSecurityGroup/status/groupID"
2531+ }
24782532 }
24792533 }
24802534 ],
@@ -2495,7 +2549,7 @@ func Test_defaultModelBuilderTask_Build(t *testing.T) {
24952549 }
24962550}
24972551` ,
2498- wantNumResources : 7 ,
2552+ wantNumResources : 8 ,
24992553 },
25002554 {
25012555 testName : "list load balancers error" ,
@@ -3628,7 +3682,7 @@ func Test_defaultModelBuilderTask_Build(t *testing.T) {
36283682 ],
36293683 "ports":[
36303684 {
3631- "port": 80,
3685+ "port": 80,
36323686 "protocol":"TCP"
36333687 }
36343688 ]
@@ -3881,12 +3935,12 @@ func Test_defaultModelBuilderTask_Build(t *testing.T) {
38813935 }
38823936 ],
38833937 "ports":[
3884- {
3885- "port": 80,
3938+ {
3939+ "port": 80,
38863940 "protocol":"TCP"
38873941 },
3888- {
3889- "port": 8888,
3942+ {
3943+ "port": 8888,
38903944 "protocol":"TCP"
38913945 }
38923946 ]
@@ -4520,9 +4574,9 @@ func Test_defaultModelBuilderTask_Build(t *testing.T) {
45204574 "from":[
45214575 {
45224576 "securityGroup":{
4523- "groupID": {
4524- "$ref": "#/resources/AWS::EC2::SecurityGroup/ManagedLBSecurityGroup/status/groupID"
4525- }
4577+ "groupID": {
4578+ "$ref": "#/resources/AWS::EC2::SecurityGroup/ManagedLBSecurityGroup/status/groupID"
4579+ }
45264580 }
45274581 }
45284582 ],
@@ -4564,8 +4618,8 @@ func Test_defaultModelBuilderTask_Build(t *testing.T) {
45644618 {
45654619 "securityGroup":{
45664620 "groupID": {
4567- "$ref": "#/resources/AWS::EC2::SecurityGroup/ManagedLBSecurityGroup/status/groupID"
4568- }
4621+ "$ref": "#/resources/AWS::EC2::SecurityGroup/ManagedLBSecurityGroup/status/groupID"
4622+ }
45694623 }
45704624 }
45714625 ],
0 commit comments