Beispiel #1
0
 def test_convert_ec2_metadata_network_config_handles_only_dhcp6(self):
     """Config dhcp6 when ipv6s is in metadata for a mac."""
     macs_to_nics = {self.mac1: 'eth9'}
     network_metadata_ipv6 = copy.deepcopy(self.network_metadata)
     nic1_metadata = (
         network_metadata_ipv6['interfaces']['macs'][self.mac1])
     nic1_metadata['ipv6s'] = '2620:0:1009:fd00:e442:c88d:c04d:dc85/64'
     nic1_metadata.pop('public-ipv4s')
     expected = {
         'version': 2,
         'ethernets': {
             'eth9': {
                 'match': {
                     'macaddress': self.mac1
                 },
                 'set-name': 'eth9',
                 'dhcp4': True,
                 'dhcp6': True
             }
         }
     }
     self.assertEqual(
         expected,
         ec2.convert_ec2_metadata_network_config(network_metadata_ipv6,
                                                 macs_to_nics))
Beispiel #2
0
 def test_md_with_secondary_v4_and_v6_addresses(self):
     """All secondary addresses are returned from nic metadata"""
     self.assertEqual(
         [
             "172.31.45.70/20",
             "2600:1f16:292:100:f152:2222:3333:4444/128",
             "2600:1f16:292:100:f153:12a3:c37c:11f9/128",
         ],
         ec2.get_secondary_addresses(NIC1_MD_IPV4_IPV6_MULTI_IP, self.mac),
     )
Beispiel #3
0
    def test_convert_ec2_metadata_network_config_skips_absent_macs(self):
        """Any mac absent from metadata is skipped by network config."""
        macs_to_nics = {self.mac1: 'eth9', 'DE:AD:BE:EF:FF:FF': 'vitualnic2'}

        # DE:AD:BE:EF:FF:FF represented by OS but not in metadata
        expected = {'version': 1, 'config': [
            {'mac_address': self.mac1, 'type': 'physical',
             'name': 'eth9', 'subnets': [{'type': 'dhcp4'}]}]}
        self.assertEqual(
            expected,
            ec2.convert_ec2_metadata_network_config(
                self.network_metadata, macs_to_nics))
    def test_convert_ec2_metadata_network_config_skips_absent_macs(self):
        """Any mac absent from metadata is skipped by network config."""
        macs_to_nics = {self.mac1: 'eth9', 'DE:AD:BE:EF:FF:FF': 'vitualnic2'}

        # DE:AD:BE:EF:FF:FF represented by OS but not in metadata
        expected = {'version': 1, 'config': [
            {'mac_address': self.mac1, 'type': 'physical',
             'name': 'eth9', 'subnets': [{'type': 'dhcp4'}]}]}
        self.assertEqual(
            expected,
            ec2.convert_ec2_metadata_network_config(
                self.network_metadata, macs_to_nics))
 def test_convert_ec2_metadata_gets_macs_from_get_interfaces_by_mac(self):
     """Convert Ec2 Metadata calls get_interfaces_by_mac by default."""
     expected = {'version': 1, 'config': [
         {'mac_address': self.mac1, 'type': 'physical',
          'name': 'eth9',
          'subnets': [{'type': 'dhcp4'}]}]}
     patch_path = (
         'cloudinit.sources.DataSourceEc2.net.get_interfaces_by_mac')
     with mock.patch(patch_path) as m_get_interfaces_by_mac:
         m_get_interfaces_by_mac.return_value = {self.mac1: 'eth9'}
         self.assertEqual(
             expected,
             ec2.convert_ec2_metadata_network_config(self.network_metadata))
Beispiel #6
0
 def test_convert_ec2_metadata_gets_macs_from_get_interfaces_by_mac(self):
     """Convert Ec2 Metadata calls get_interfaces_by_mac by default."""
     expected = {'version': 1, 'config': [
         {'mac_address': self.mac1, 'type': 'physical',
          'name': 'eth9',
          'subnets': [{'type': 'dhcp4'}]}]}
     patch_path = (
         'cloudinit.sources.DataSourceEc2.net.get_interfaces_by_mac')
     with mock.patch(patch_path) as m_get_interfaces_by_mac:
         m_get_interfaces_by_mac.return_value = {self.mac1: 'eth9'}
         self.assertEqual(
             expected,
             ec2.convert_ec2_metadata_network_config(self.network_metadata))
Beispiel #7
0
 def test_convert_ec2_metadata_network_config_handles_local_dhcp4(self):
     """Config dhcp4 when there are no public addresses in public-ipv4s."""
     macs_to_nics = {self.mac1: 'eth9'}
     network_metadata_ipv6 = copy.deepcopy(self.network_metadata)
     nic1_metadata = (
         network_metadata_ipv6['interfaces']['macs'][self.mac1])
     nic1_metadata['local-ipv4s'] = '172.3.3.15'
     nic1_metadata.pop('public-ipv4s')
     expected = {'version': 1, 'config': [
         {'mac_address': self.mac1, 'type': 'physical',
          'name': 'eth9', 'subnets': [{'type': 'dhcp4'}]}]}
     self.assertEqual(
         expected,
         ec2.convert_ec2_metadata_network_config(
             network_metadata_ipv6, macs_to_nics))
Beispiel #8
0
 def test_convert_ec2_metadata_network_config_handles_dhcp4_and_dhcp6(self):
     """Config both dhcp4 and dhcp6 when both vpc-ipv6 and ipv4 exists."""
     macs_to_nics = {self.mac1: 'eth9'}
     network_metadata_both = copy.deepcopy(self.network_metadata)
     nic1_metadata = (
         network_metadata_both['interfaces']['macs'][self.mac1])
     nic1_metadata['ipv6s'] = '2620:0:1009:fd00:e442:c88d:c04d:dc85/64'
     expected = {'version': 1, 'config': [
         {'mac_address': self.mac1, 'type': 'physical',
          'name': 'eth9',
          'subnets': [{'type': 'dhcp4'}, {'type': 'dhcp6'}]}]}
     self.assertEqual(
         expected,
         ec2.convert_ec2_metadata_network_config(
             network_metadata_both, macs_to_nics))
 def test_convert_ec2_metadata_network_config_handles_dhcp4_and_dhcp6(self):
     """Config both dhcp4 and dhcp6 when both vpc-ipv6 and ipv4 exists."""
     macs_to_nics = {self.mac1: 'eth9'}
     network_metadata_both = copy.deepcopy(self.network_metadata)
     nic1_metadata = (
         network_metadata_both['interfaces']['macs'][self.mac1])
     nic1_metadata['ipv6s'] = '2620:0:1009:fd00:e442:c88d:c04d:dc85/64'
     expected = {'version': 1, 'config': [
         {'mac_address': self.mac1, 'type': 'physical',
          'name': 'eth9',
          'subnets': [{'type': 'dhcp4'}, {'type': 'dhcp6'}]}]}
     self.assertEqual(
         expected,
         ec2.convert_ec2_metadata_network_config(
             network_metadata_both, macs_to_nics))
 def test_convert_ec2_metadata_network_config_handles_local_dhcp4(self):
     """Config dhcp4 when there are no public addresses in public-ipv4s."""
     macs_to_nics = {self.mac1: 'eth9'}
     network_metadata_ipv6 = copy.deepcopy(self.network_metadata)
     nic1_metadata = (
         network_metadata_ipv6['interfaces']['macs'][self.mac1])
     nic1_metadata['local-ipv4s'] = '172.3.3.15'
     nic1_metadata.pop('public-ipv4s')
     expected = {'version': 1, 'config': [
         {'mac_address': self.mac1, 'type': 'physical',
          'name': 'eth9', 'subnets': [{'type': 'dhcp4'}]}]}
     self.assertEqual(
         expected,
         ec2.convert_ec2_metadata_network_config(
             network_metadata_ipv6, macs_to_nics))
 def test_convert_ec2_metadata_network_config_handles_only_dhcp6(self):
     """Config dhcp6 when ipv6s is in metadata for a mac."""
     macs_to_nics = {self.mac1: 'eth9'}
     network_metadata_ipv6 = copy.deepcopy(self.network_metadata)
     nic1_metadata = (
         network_metadata_ipv6['interfaces']['macs'][self.mac1])
     nic1_metadata['ipv6s'] = '2620:0:1009:fd00:e442:c88d:c04d:dc85/64'
     nic1_metadata.pop('public-ipv4s')
     expected = {'version': 1, 'config': [
         {'mac_address': self.mac1, 'type': 'physical',
          'name': 'eth9', 'subnets': [{'type': 'dhcp6'}]}]}
     self.assertEqual(
         expected,
         ec2.convert_ec2_metadata_network_config(
             network_metadata_ipv6, macs_to_nics))
Beispiel #12
0
 def test_convert_ec2_metadata_network_config_handles_only_dhcp6(self):
     """Config dhcp6 when ipv6s is in metadata for a mac."""
     macs_to_nics = {self.mac1: 'eth9'}
     network_metadata_ipv6 = copy.deepcopy(self.network_metadata)
     nic1_metadata = (
         network_metadata_ipv6['interfaces']['macs'][self.mac1])
     nic1_metadata['ipv6s'] = '2620:0:1009:fd00:e442:c88d:c04d:dc85/64'
     nic1_metadata.pop('public-ipv4s')
     expected = {'version': 1, 'config': [
         {'mac_address': self.mac1, 'type': 'physical',
          'name': 'eth9', 'subnets': [{'type': 'dhcp6'}]}]}
     self.assertEqual(
         expected,
         ec2.convert_ec2_metadata_network_config(
             network_metadata_ipv6, macs_to_nics))
Beispiel #13
0
    def test_convert_ec2_metadata_network_config_handles_absent_dhcp4(self):
        """Config dhcp4 on fallback_nic when there are no ipv4 addresses."""
        macs_to_nics = {self.mac1: 'eth9'}
        network_metadata_ipv6 = copy.deepcopy(self.network_metadata)
        nic1_metadata = (
            network_metadata_ipv6['interfaces']['macs'][self.mac1])
        nic1_metadata['public-ipv4s'] = ''

        # When no ipv4 or ipv6 content but fallback_nic set, set dhcp4 config.
        expected = {'version': 1, 'config': [
            {'mac_address': self.mac1, 'type': 'physical',
             'name': 'eth9', 'subnets': [{'type': 'dhcp4'}]}]}
        self.assertEqual(
            expected,
            ec2.convert_ec2_metadata_network_config(
                network_metadata_ipv6, macs_to_nics, fallback_nic='eth9'))
    def test_convert_ec2_metadata_network_config_handles_absent_dhcp4(self):
        """Config dhcp4 on fallback_nic when there are no ipv4 addresses."""
        macs_to_nics = {self.mac1: 'eth9'}
        network_metadata_ipv6 = copy.deepcopy(self.network_metadata)
        nic1_metadata = (
            network_metadata_ipv6['interfaces']['macs'][self.mac1])
        nic1_metadata['public-ipv4s'] = ''

        # When no ipv4 or ipv6 content but fallback_nic set, set dhcp4 config.
        expected = {'version': 1, 'config': [
            {'mac_address': self.mac1, 'type': 'physical',
             'name': 'eth9', 'subnets': [{'type': 'dhcp4'}]}]}
        self.assertEqual(
            expected,
            ec2.convert_ec2_metadata_network_config(
                network_metadata_ipv6, macs_to_nics, fallback_nic='eth9'))
Beispiel #15
0
 def test_convert_ec2_metadata_network_config_handles_multiple_nics(self):
     """DHCP route-metric increases on secondary NICs for IPv4 and IPv6."""
     mac2 = "06:17:04:d7:26:08"
     macs_to_nics = {self.mac1: "eth9", mac2: "eth10"}
     network_metadata_both = copy.deepcopy(self.network_metadata)
     # Add 2nd nic info
     network_metadata_both["interfaces"]["macs"][mac2] = NIC2_MD
     nic1_metadata = network_metadata_both["interfaces"]["macs"][self.mac1]
     nic1_metadata["ipv6s"] = "2620:0:1009:fd00:e442:c88d:c04d:dc85/64"
     nic1_metadata.pop("public-ipv4s")  # No public-ipv4 IPs in cfg
     nic1_metadata["local-ipv4s"] = "10.0.0.42"  # Local ipv4 only on vpc
     expected = {
         "version": 2,
         "ethernets": {
             "eth9": {
                 "match": {
                     "name": "eth9"
                 },
                 "set-name": "eth9",
                 "dhcp4": True,
                 "dhcp4-overrides": {
                     "route-metric": 100
                 },
                 "dhcp6": True,
                 "dhcp6-overrides": {
                     "route-metric": 100
                 },
             },
             "eth10": {
                 "match": {
                     "name": "eth10"
                 },
                 "set-name": "eth10",
                 "dhcp4": True,
                 "dhcp4-overrides": {
                     "route-metric": 200
                 },
                 "dhcp6": False,
             },
         },
     }
     self.assertEqual(
         expected,
         ec2.convert_ec2_metadata_network_config(network_metadata_both,
                                                 macs_to_nics),
     )
Beispiel #16
0
 def test_convert_ec2_metadata_network_config_handles_multiple_nics(self):
     """DHCP route-metric increases on secondary NICs for IPv4 and IPv6."""
     mac2 = '06:17:04:d7:26:08'
     macs_to_nics = {self.mac1: 'eth9', mac2: 'eth10'}
     network_metadata_both = copy.deepcopy(self.network_metadata)
     # Add 2nd nic info
     network_metadata_both['interfaces']['macs'][mac2] = NIC2_MD
     nic1_metadata = (
         network_metadata_both['interfaces']['macs'][self.mac1])
     nic1_metadata['ipv6s'] = '2620:0:1009:fd00:e442:c88d:c04d:dc85/64'
     nic1_metadata.pop('public-ipv4s')  # No public-ipv4 IPs in cfg
     nic1_metadata['local-ipv4s'] = '10.0.0.42'  # Local ipv4 only on vpc
     expected = {
         'version': 2,
         'ethernets': {
             'eth9': {
                 'match': {
                     'macaddress': self.mac1
                 },
                 'set-name': 'eth9',
                 'dhcp4': True,
                 'dhcp4-overrides': {
                     'route-metric': 100
                 },
                 'dhcp6': True,
                 'dhcp6-overrides': {
                     'route-metric': 100
                 }
             },
             'eth10': {
                 'match': {
                     'macaddress': mac2
                 },
                 'set-name': 'eth10',
                 'dhcp4': True,
                 'dhcp4-overrides': {
                     'route-metric': 200
                 },
                 'dhcp6': False
             }
         }
     }
     self.assertEqual(
         expected,
         ec2.convert_ec2_metadata_network_config(network_metadata_both,
                                                 macs_to_nics))
Beispiel #17
0
 def test_convert_ec2_metadata_network_config_handles_local_v4_and_v6(self):
     """When dhcp6 is public and dhcp4 is set to local enable both."""
     macs_to_nics = {self.mac1: 'eth9'}
     network_metadata_both = copy.deepcopy(self.network_metadata)
     nic1_metadata = (
         network_metadata_both['interfaces']['macs'][self.mac1])
     nic1_metadata['ipv6s'] = '2620:0:1009:fd00:e442:c88d:c04d:dc85/64'
     nic1_metadata.pop('public-ipv4s')
     nic1_metadata['local-ipv4s'] = '10.0.0.42'  # Local ipv4 only on vpc
     expected = {'version': 1, 'config': [
         {'mac_address': self.mac1, 'type': 'physical',
          'name': 'eth9',
          'subnets': [{'type': 'dhcp4'}, {'type': 'dhcp6'}]}]}
     self.assertEqual(
         expected,
         ec2.convert_ec2_metadata_network_config(
             network_metadata_both, macs_to_nics))
 def test_convert_ec2_metadata_network_config_handles_local_v4_and_v6(self):
     """When dhcp6 is public and dhcp4 is set to local enable both."""
     macs_to_nics = {self.mac1: 'eth9'}
     network_metadata_both = copy.deepcopy(self.network_metadata)
     nic1_metadata = (
         network_metadata_both['interfaces']['macs'][self.mac1])
     nic1_metadata['ipv6s'] = '2620:0:1009:fd00:e442:c88d:c04d:dc85/64'
     nic1_metadata.pop('public-ipv4s')
     nic1_metadata['local-ipv4s'] = '10.0.0.42'  # Local ipv4 only on vpc
     expected = {'version': 1, 'config': [
         {'mac_address': self.mac1, 'type': 'physical',
          'name': 'eth9',
          'subnets': [{'type': 'dhcp4'}, {'type': 'dhcp6'}]}]}
     self.assertEqual(
         expected,
         ec2.convert_ec2_metadata_network_config(
             network_metadata_both, macs_to_nics))
Beispiel #19
0
 def test_convert_ec2_metadata_gets_macs_from_get_interfaces_by_mac(self):
     """Convert Ec2 Metadata calls get_interfaces_by_mac by default."""
     expected = {
         "version": 2,
         "ethernets": {
             "eth9": {
                 "match": {"macaddress": self.mac1},
                 "set-name": "eth9",
                 "dhcp4": True,
                 "dhcp6": False,
             }
         },
     }
     patch_path = M_PATH_NET + "get_interfaces_by_mac"
     with mock.patch(patch_path) as m_get_interfaces_by_mac:
         m_get_interfaces_by_mac.return_value = {self.mac1: "eth9"}
         self.assertEqual(
             expected,
             ec2.convert_ec2_metadata_network_config(self.network_metadata),
         )
Beispiel #20
0
 def test_invalid_ipv4_ipv6_cidr_metadata_logged_with_defaults(self):
     """Any invalid subnet-ipv(4|6)-cidr-block values use defaults"""
     invalid_cidr_md = copy.deepcopy(NIC1_MD_IPV4_IPV6_MULTI_IP)
     invalid_cidr_md['subnet-ipv4-cidr-block'] = "something-unexpected"
     invalid_cidr_md['subnet-ipv6-cidr-block'] = "not/sure/what/this/is"
     self.assertEqual([
         '172.31.45.70/24', '2600:1f16:292:100:f152:2222:3333:4444/128',
         '2600:1f16:292:100:f153:12a3:c37c:11f9/128'
     ], ec2.get_secondary_addresses(invalid_cidr_md, self.mac))
     expected_logs = [
         "WARNING: Could not parse subnet-ipv4-cidr-block"
         " something-unexpected for mac 06:17:04:d7:26:ff."
         " ipv4 network config prefix defaults to /24",
         "WARNING: Could not parse subnet-ipv6-cidr-block"
         " not/sure/what/this/is for mac 06:17:04:d7:26:ff."
         " ipv6 network config prefix defaults to /128"
     ]
     logs = self.logs.getvalue()
     for log in expected_logs:
         self.assertIn(log, logs)
Beispiel #21
0
 def test_convert_ec2_metadata_gets_macs_from_get_interfaces_by_mac(self):
     """Convert Ec2 Metadata calls get_interfaces_by_mac by default."""
     expected = {
         'version': 2,
         'ethernets': {
             'eth9': {
                 'match': {
                     'macaddress': self.mac1
                 },
                 'set-name': 'eth9',
                 'dhcp4': True,
                 'dhcp6': False
             }
         }
     }
     patch_path = M_PATH_NET + 'get_interfaces_by_mac'
     with mock.patch(patch_path) as m_get_interfaces_by_mac:
         m_get_interfaces_by_mac.return_value = {self.mac1: 'eth9'}
         self.assertEqual(
             expected,
             ec2.convert_ec2_metadata_network_config(self.network_metadata))
Beispiel #22
0
    def test_convert_ec2_metadata_network_config_skips_absent_macs(self):
        """Any mac absent from metadata is skipped by network config."""
        macs_to_nics = {self.mac1: 'eth9', 'DE:AD:BE:EF:FF:FF': 'vitualnic2'}

        # DE:AD:BE:EF:FF:FF represented by OS but not in metadata
        expected = {
            'version': 2,
            'ethernets': {
                'eth9': {
                    'match': {
                        'macaddress': self.mac1
                    },
                    'set-name': 'eth9',
                    'dhcp4': True,
                    'dhcp6': False
                }
            }
        }
        self.assertEqual(
            expected,
            ec2.convert_ec2_metadata_network_config(self.network_metadata,
                                                    macs_to_nics))
Beispiel #23
0
    def test_convert_ec2_metadata_network_config_skips_absent_macs(self):
        """Any mac absent from metadata is skipped by network config."""
        macs_to_nics = {self.mac1: "eth9", "DE:AD:BE:EF:FF:FF": "vitualnic2"}

        # DE:AD:BE:EF:FF:FF represented by OS but not in metadata
        expected = {
            "version": 2,
            "ethernets": {
                "eth9": {
                    "match": {"macaddress": self.mac1},
                    "set-name": "eth9",
                    "dhcp4": True,
                    "dhcp6": False,
                }
            },
        }
        self.assertEqual(
            expected,
            ec2.convert_ec2_metadata_network_config(
                self.network_metadata, macs_to_nics
            ),
        )
Beispiel #24
0
 def test_convert_ec2_metadata_network_config_handles_dhcp4_and_dhcp6(self):
     """Config both dhcp4 and dhcp6 when both vpc-ipv6 and ipv4 exists."""
     macs_to_nics = {self.mac1: "eth9"}
     network_metadata_both = copy.deepcopy(self.network_metadata)
     nic1_metadata = network_metadata_both["interfaces"]["macs"][self.mac1]
     nic1_metadata["ipv6s"] = "2620:0:1009:fd00:e442:c88d:c04d:dc85/64"
     expected = {
         "version": 2,
         "ethernets": {
             "eth9": {
                 "match": {"macaddress": self.mac1},
                 "set-name": "eth9",
                 "dhcp4": True,
                 "dhcp6": True,
             }
         },
     }
     self.assertEqual(
         expected,
         ec2.convert_ec2_metadata_network_config(
             network_metadata_both, macs_to_nics
         ),
     )
Beispiel #25
0
 def test_convert_ec2_metadata_network_config_local_only_dhcp4(self):
     """Config dhcp4 when there are no public addresses in public-ipv4s."""
     macs_to_nics = {self.mac1: "eth9"}
     network_metadata_ipv6 = copy.deepcopy(self.network_metadata)
     nic1_metadata = network_metadata_ipv6["interfaces"]["macs"][self.mac1]
     nic1_metadata["local-ipv4s"] = "172.3.3.15"
     nic1_metadata.pop("public-ipv4s")
     expected = {
         "version": 2,
         "ethernets": {
             "eth9": {
                 "match": {"macaddress": self.mac1},
                 "set-name": "eth9",
                 "dhcp4": True,
                 "dhcp6": False,
             }
         },
     }
     self.assertEqual(
         expected,
         ec2.convert_ec2_metadata_network_config(
             network_metadata_ipv6, macs_to_nics
         ),
     )
Beispiel #26
0
 def test_convert_ec2_metadata_network_config_handles_only_dhcp6(self):
     """Config dhcp6 when ipv6s is in metadata for a mac."""
     macs_to_nics = {self.mac1: "eth9"}
     network_metadata_ipv6 = copy.deepcopy(self.network_metadata)
     nic1_metadata = network_metadata_ipv6["interfaces"]["macs"][self.mac1]
     nic1_metadata["ipv6s"] = "2620:0:1009:fd00:e442:c88d:c04d:dc85/64"
     nic1_metadata.pop("public-ipv4s")
     expected = {
         "version": 2,
         "ethernets": {
             "eth9": {
                 "match": {"macaddress": self.mac1},
                 "set-name": "eth9",
                 "dhcp4": True,
                 "dhcp6": True,
             }
         },
     }
     self.assertEqual(
         expected,
         ec2.convert_ec2_metadata_network_config(
             network_metadata_ipv6, macs_to_nics
         ),
     )
Beispiel #27
0
 def test_convert_ec2_metadata_network_config_handles_dhcp4_and_dhcp6(self):
     """Config both dhcp4 and dhcp6 when both vpc-ipv6 and ipv4 exists."""
     macs_to_nics = {self.mac1: 'eth9'}
     network_metadata_both = copy.deepcopy(self.network_metadata)
     nic1_metadata = (
         network_metadata_both['interfaces']['macs'][self.mac1])
     nic1_metadata['ipv6s'] = '2620:0:1009:fd00:e442:c88d:c04d:dc85/64'
     expected = {
         'version': 2,
         'ethernets': {
             'eth9': {
                 'match': {
                     'macaddress': self.mac1
                 },
                 'set-name': 'eth9',
                 'dhcp4': True,
                 'dhcp6': True
             }
         }
     }
     self.assertEqual(
         expected,
         ec2.convert_ec2_metadata_network_config(network_metadata_both,
                                                 macs_to_nics))
Beispiel #28
0
 def test_md_with_no_secondary_addresses(self):
     """Empty list is returned when nic metadata contains no secondary ip"""
     self.assertEqual([], ec2.get_secondary_addresses(NIC2_MD, self.mac))
Beispiel #29
0
 def test_identify_zstack(self, m_collect):
     """zstack should be identified if chassis-asset-tag ends in .zstack.io
     """
     m_collect.return_value = self.collmock(asset_tag='123456.zstack.io')
     self.assertEqual(ec2.CloudNames.ZSTACK, ec2.identify_platform())
Beispiel #30
0
 def test_identify_e24cloud(self, m_collect):
     """e24cloud identified if vendor is e24cloud"""
     m_collect.return_value = self.collmock(vendor='e24cloud')
     self.assertEqual(ec2.CloudNames.E24CLOUD, ec2.identify_platform())
Beispiel #31
0
 def test_identify_zstack_full_domain_only(self, m_collect):
     """zstack asset-tag matching should match only on full domain boundary.
     """
     m_collect.return_value = self.collmock(asset_tag='123456.buzzstack.io')
     self.assertEqual(ec2.CloudNames.UNKNOWN, ec2.identify_platform())
Beispiel #32
0
 def test_identify_e24cloud_negative(self, m_collect):
     """e24cloud identified if vendor is e24cloud"""
     m_collect.return_value = self.collmock(vendor='e24cloudyday')
     self.assertEqual(ec2.CloudNames.UNKNOWN, ec2.identify_platform())