github.com/cilium/cilium@v1.16.2/pkg/alibabacloud/eni/instances_test.go (about)

     1  // SPDX-License-Identifier: Apache-2.0
     2  // Copyright Authors of Cilium
     3  
     4  package eni
     5  
     6  import (
     7  	"net"
     8  
     9  	apimock "github.com/cilium/cilium/pkg/alibabacloud/api/mock"
    10  	eniTypes "github.com/cilium/cilium/pkg/alibabacloud/eni/types"
    11  	"github.com/cilium/cilium/pkg/alibabacloud/types"
    12  	"github.com/cilium/cilium/pkg/cidr"
    13  	ipamTypes "github.com/cilium/cilium/pkg/ipam/types"
    14  )
    15  
    16  var (
    17  	_, subnet0, _ = net.ParseCIDR("1.1.0.0/24")
    18  	_, subnet1, _ = net.ParseCIDR("1.1.1.0/24")
    19  
    20  	vpcs = []*ipamTypes.VirtualNetwork{
    21  		{
    22  			ID:          "vpc-1",
    23  			PrimaryCIDR: "1.1.0.0/16",
    24  		},
    25  	}
    26  
    27  	subnets = []*ipamTypes.Subnet{
    28  		{
    29  			ID:                 "vsw-1",
    30  			CIDR:               cidr.NewCIDR(subnet0),
    31  			AvailableAddresses: 30,
    32  			VirtualNetworkID:   "vpc-1",
    33  			AvailabilityZone:   "cn-hangzhou-i",
    34  			Tags: map[string]string{
    35  				"tag1": "tag1",
    36  			},
    37  		}, {
    38  			ID:                 "vsw-2",
    39  			CIDR:               cidr.NewCIDR(subnet1),
    40  			AvailableAddresses: 40,
    41  			VirtualNetworkID:   "vpc-1",
    42  			AvailabilityZone:   "cn-hangzhou-h",
    43  			Tags: map[string]string{
    44  				"tag1": "tag1",
    45  			},
    46  		},
    47  	}
    48  
    49  	securityGroups = []*types.SecurityGroup{
    50  		{
    51  			ID:    "sg-1",
    52  			VPCID: "vpc-1",
    53  			Tags:  map[string]string{"k1": "v1"},
    54  		},
    55  	}
    56  
    57  	primaryENIs = map[string]apimock.ENIMap{
    58  		"i-1": {
    59  			"eni-1": {
    60  				NetworkInterfaceID: "eni-1",
    61  				PrimaryIPAddress:   "1.1.0.1",
    62  				SecurityGroupIDs:   []string{"sg-1"},
    63  				PrivateIPSets: []eniTypes.PrivateIPSet{
    64  					{
    65  						Primary:          true,
    66  						PrivateIpAddress: "1.1.0.1",
    67  					},
    68  				},
    69  				Type:       eniTypes.ENITypePrimary,
    70  				InstanceID: "i-1",
    71  				VSwitch:    eniTypes.VSwitch{VSwitchID: "vsw-1"},
    72  				VPC:        eniTypes.VPC{VPCID: "vpc-1"},
    73  				Tags:       map[string]string{},
    74  			},
    75  		},
    76  		"i-2": {
    77  			"eni-2": &eniTypes.ENI{
    78  				NetworkInterfaceID: "eni-2",
    79  				PrimaryIPAddress:   "1.1.1.1",
    80  				SecurityGroupIDs:   []string{"sg-2"},
    81  				PrivateIPSets: []eniTypes.PrivateIPSet{
    82  					{
    83  						Primary:          true,
    84  						PrivateIpAddress: "1.1.1.1",
    85  					},
    86  				},
    87  				Type:       eniTypes.ENITypePrimary,
    88  				InstanceID: "i-2",
    89  				VSwitch:    eniTypes.VSwitch{VSwitchID: "vsw-2"},
    90  				VPC:        eniTypes.VPC{VPCID: "vpc-1"},
    91  				Tags:       map[string]string{},
    92  			},
    93  		},
    94  		"i-3": {
    95  			"eni-3": &eniTypes.ENI{
    96  				NetworkInterfaceID: "eni-3",
    97  				PrimaryIPAddress:   "1.1.1.2",
    98  				SecurityGroupIDs:   []string{"sg-2"},
    99  				PrivateIPSets: []eniTypes.PrivateIPSet{
   100  					{
   101  						Primary:          true,
   102  						PrivateIpAddress: "1.1.1.2",
   103  					},
   104  				},
   105  				Type:       eniTypes.ENITypePrimary,
   106  				InstanceID: "i-3",
   107  				VSwitch:    eniTypes.VSwitch{VSwitchID: "vsw-2"},
   108  				VPC:        eniTypes.VPC{VPCID: "vpc-1"},
   109  				Tags:       map[string]string{},
   110  			},
   111  		},
   112  	}
   113  )