Esempio n. 1
0
    def test_refuse_snapof_when_no_brand_native_capability(
            provision_zone, svc):
        zone = ContainerZone(rid='container#1', snapof='something')
        zone.svc = svc
        provisioned = zone.provisioner(need_boot=False)

        assert provisioned is False
        assert provision_zone.call_count == 0
Esempio n. 2
0
    def test_return_false_when_mixing_container_origin_and_snapof(
            provision_zone,
            svc):
        zone = ContainerZone(rid='container#1', snapof='something', container_origin='skel')
        zone.svc = svc
        provisioned = zone.provisioner()

        assert provisioned is False
        assert provision_zone.call_count == 0
Esempio n. 3
0
    def test_create_origin_then_provision_zone_when_container_origin(
            create_container_origin, provision_zone, svc):
        zone = ContainerZone(rid='container#1', container_origin='skelzone')
        zone.svc = svc
        provisioned = zone.provisioner(need_boot=False)

        assert provisioned is True
        assert create_container_origin.call_count == 1
        assert provision_zone.call_count == 1
Esempio n. 4
0
    def test_create_correct_zone(
            svc,
            klass_has_capability,
            set_zone_data,
            zonecfg,
            brand,
            zonepath,
            expected_zonecfg_cmd):
        # noinspection PyUnusedLocal
        def zonecfg_side_effect(*args, **kwargs):
            set_zone_data(brand=brand, zonepath=zonepath)

        if brand == 'native':
            klass_has_capability(ContainerZone, ['container.zone.brand-native'])
        else:
            klass_has_capability(ContainerZone, ['container.zone.brand-solaris',
                                                 'container.zone.brand-solaris10'])
        zone = ContainerZone(rid='container#1', name='z1', brand=brand, zonepath=zonepath)
        zone.svc = Svc(name='svc1', volatile=True)
        zonecfg.side_effect = zonecfg_side_effect
        zone.zone_configure()
        zonecfg.assert_called_once_with([expected_zonecfg_cmd])
Esempio n. 5
0
 def test_fallback_to_none(svc):
     zone = ContainerZone(rid='container#1')
     zone.svc = svc
     assert zone.zonepath is None
Esempio n. 6
0
def zone(svc):
    zone = ContainerZone(rid='container#1', name='zonex', zonepath='/z/zonepath_kw')
    zone.svc = svc
    return zone