Esempio n. 1
0
 def test_settings_private(self):
     engine = PlumberyEngine()
     engine.set_shared_secret('fake_secret')
     engine.set_user_name('fake_name')
     engine.set_user_password('fake_password')
     engine.set_fittings(myPrivatePlan)
     facilities = engine.list_facility('quasimoto.com')
     self.assertEqual(len(facilities), 1)
     facilities[0].power_on()
Esempio n. 2
0
 def test_settings_private(self):
     engine = PlumberyEngine()
     engine.set_shared_secret('fake_secret')
     engine.set_user_name('fake_name')
     engine.set_user_password('fake_password')
     engine.set_fittings(myPrivatePlan)
     facilities = engine.list_facility('quasimoto.com')
     self.assertEqual(len(facilities), 1)
     facilities[0].power_on()
Esempio n. 3
0
    def test_bad_args(self):

        engine = PlumberyEngine()
        engine.set_fittings(myPlan)
        with self.assertRaises(SystemExit):
            main(['bad args'], engine)
        with self.assertRaises(SystemExit):
            main(['fittings.yaml'], engine)
        with self.assertRaises(SystemExit):
            main(['fittings.yaml', 'xyz123', 'web'], engine)
        with self.assertRaises(SystemExit):
            main(['fittings.yaml', 'build', 'web', '@'], engine)
Esempio n. 4
0
    def test_bad_args(self):

        engine = PlumberyEngine()
        engine.set_fittings(myPlan)
        with self.assertRaises(SystemExit):
            main(['bad args'], engine)
        with self.assertRaises(SystemExit):
            main(['fittings.yaml'], engine)
        with self.assertRaises(SystemExit):
            main(['fittings.yaml', 'xyz123', 'web'], engine)
        with self.assertRaises(SystemExit):
            main(['fittings.yaml', 'build', 'web', '@'], engine)
Esempio n. 5
0
    def test_parameters(self):

        engine = PlumberyEngine()
        engine.set_parameters(myParameters)

        parameters = engine.get_parameters()
        self.assertEqual(parameters['locationId.parameter'], 'NA9')
        self.assertEqual(parameters['domainName.parameter'],
                         'justInTimeDomain')
        self.assertEqual(parameters['networkName.parameter'],
                         'justInTimeNetwork')

        engine.set_fittings(myPlan)

        parameters = engine.get_parameters()
        self.assertEqual(parameters['locationId.parameter'], 'NA9')
        self.assertEqual(parameters['domainName.parameter'],
                         'justInTimeDomain')
        self.assertEqual(parameters['networkName.parameter'],
                         'justInTimeNetwork')

        self.assertEqual(engine.safeMode, False)

        self.assertEqual(len(engine.information), 2)

        self.assertEqual(len(engine.links), 1)

        domain = engine.get_default('domain')
        self.assertEqual(domain['ipv4'], 'auto')

        cloudConfig = engine.get_default('cloud-config', {})
        self.assertEqual(len(cloudConfig.keys()), 3)

        parameter = engine.get_parameter('locationId')
        self.assertEqual(parameter, 'NA9')

        parameter = engine.get_parameter('domainName')
        self.assertEqual(parameter, 'justInTimeDomain')

        parameter = engine.get_parameter('networkName')
        self.assertEqual(parameter, 'justInTimeNetwork')

        self.assertEqual(len(engine.facilities), 1)
        facility = engine.facilities[0]
        self.assertEqual(facility.settings['locationId'], 'NA9')
        self.assertEqual(facility.settings['regionId'], 'dd-eu')
        blueprint = facility.blueprints[0]['myBlueprint']
        self.assertEqual(blueprint['domain']['name'], 'justInTimeDomain')
        self.assertEqual(blueprint['ethernet']['name'], 'justInTimeNetwork')
Esempio n. 6
0
    def test_init(self):

        engine = PlumberyEngine()

        engine.set_fittings(myPlan)

        self.assertEqual(engine.buildPolisher, 'alien')

        domain = engine.get_default('domain')
        self.assertEqual(domain['ipv4'], 'auto')

        cloudConfig = engine.get_default('cloud-config', {})
        self.assertEqual(len(cloudConfig.keys()), 5)

        self.assertEqual(len(engine.information), 2)

        self.assertEqual(len(engine.links), 1)

        parameters = engine.get_parameters()
        self.assertEqual(parameters['parameter.locationId'],
                         'EU6')
        self.assertEqual(parameters['parameter.domainName'],
                         'myDC')
        self.assertEqual(parameters['parameter.networkName'],
                         'myVLAN')

        parameter = engine.get_parameter('locationId')
        self.assertEqual(parameter, 'EU6')

        parameter = engine.get_parameter('domainName')
        self.assertEqual(parameter, 'myDC')

        parameter = engine.get_parameter('networkName')
        self.assertEqual(parameter, 'myVLAN')

        self.assertEqual(len(engine.polishers), 3)
        for polisher in engine.polishers:
            self.assertTrue(isinstance(polisher, PlumberyPolisher))

        self.assertEqual(engine.safeMode, False)

        self.assertEqual(len(engine.facilities), 1)
        facility = engine.facilities[0]
        self.assertEqual(facility.settings['locationId'], 'EU6')
        self.assertEqual(facility.settings['regionId'], 'dd-eu')
        blueprint = facility.blueprints[0]['myBlueprint']
        self.assertEqual(blueprint['domain']['name'], 'myDC')
        self.assertEqual(blueprint['ethernet']['name'], 'myVLAN')
Esempio n. 7
0
    def test_main(self):

        engine = PlumberyEngine()
        engine.set_fittings(myPlan)
        engine.set_user_name('fake_name')
        engine.set_user_password('fake_password')
        with self.assertRaises(SystemExit):
            main(['bad args'], engine)
        with self.assertRaises(SystemExit):
            main(['fittings.yaml'], engine)
        with self.assertRaises(SystemExit):
            main(['fittings.yaml', 'xyz123', 'web'], engine)
        with self.assertRaises(SystemExit):
            main(['-v'], engine)
        with self.assertRaises(SystemExit):
            main(['fittings.yaml', 'build', 'web', '-v'], engine)
Esempio n. 8
0
    def test_main(self):

        with self.assertRaises(SystemExit):
            main(['fittings.yaml', 'build', 'web', '@EU6'])

        engine = PlumberyEngine()
        engine.set_fittings(myPlan)
        engine.set_user_name('fake_name')
        engine.set_user_password('fake_password')
        with self.assertRaises(SystemExit):
            main(['-v'], engine)
        with self.assertRaises(SystemExit):
            main(['fittings.yaml', 'build', 'web'], engine)
        with self.assertRaises(SystemExit):
            main(['fittings.yaml', 'build', 'web', '-v'], engine)
        with self.assertRaises(SystemExit):
            main(['fittings.yaml', 'build', 'web', '@EU6'], engine)
Esempio n. 9
0
    def test_init(self):

        engine = PlumberyEngine()

        engine.set_fittings(myPlan)

        self.assertEqual(engine.buildPolisher, 'alien')

        domain = engine.get_default('domain')
        self.assertEqual(domain['ipv4'], 'auto')

        cloudConfig = engine.get_default('cloud-config', {})
        self.assertEqual(len(cloudConfig.keys()), 5)

        self.assertEqual(len(engine.information), 2)

        self.assertEqual(len(engine.links), 1)

        parameters = engine.get_parameters()
        self.assertEqual(parameters['parameter.locationId'], 'EU6')
        self.assertEqual(parameters['parameter.domainName'], 'myDC')
        self.assertEqual(parameters['parameter.networkName'], 'myVLAN')

        parameter = engine.get_parameter('locationId')
        self.assertEqual(parameter, 'EU6')

        parameter = engine.get_parameter('domainName')
        self.assertEqual(parameter, 'myDC')

        parameter = engine.get_parameter('networkName')
        self.assertEqual(parameter, 'myVLAN')

        self.assertEqual(len(engine.polishers), 3)
        for polisher in engine.polishers:
            self.assertTrue(isinstance(polisher, PlumberyPolisher))

        self.assertEqual(engine.safeMode, False)

        self.assertEqual(len(engine.facilities), 1)
        facility = engine.facilities[0]
        self.assertEqual(facility.settings['locationId'], 'EU6')
        self.assertEqual(facility.settings['regionId'], 'dd-eu')
        blueprint = facility.blueprints[0]['myBlueprint']
        self.assertEqual(blueprint['domain']['name'], 'myDC')
        self.assertEqual(blueprint['ethernet']['name'], 'myVLAN')
Esempio n. 10
0
    def test_process_blueprint(self):

        engine = PlumberyEngine()
        DimensionDataNodeDriver.connectionCls.conn_classes = (
            None, DimensionDataMockHttp)
        DimensionDataMockHttp.type = None
        self.region = DimensionDataNodeDriver(*DIMENSIONDATA_PARAMS)

        engine.set_shared_secret('fake_secret')
        engine.set_user_name('fake_name')
        engine.set_user_password('fake_password')
        engine.set_fittings(myPrivatePlan)

        engine.process_blueprint(action='noop', names='fake')

        action = FakeAction({})
        engine.process_blueprint(action, names='fake')
        self.assertEqual(action.count, 205)
Esempio n. 11
0
    def test_process_blueprint(self):

        engine = PlumberyEngine()
        DimensionDataNodeDriver.connectionCls.conn_classes = (
            None, DimensionDataMockHttp)
        DimensionDataMockHttp.type = None
        self.region = DimensionDataNodeDriver(*DIMENSIONDATA_PARAMS)

        engine.set_shared_secret('fake_secret')
        engine.set_user_name('fake_name')
        engine.set_user_password('fake_password')
        engine.set_fittings(myPrivatePlan)

        engine.process_blueprint(action='dummy', names='fake')

        action = FakeAction({})
        engine.process_blueprint(action, names='fake')
        self.assertEqual(action.count, 205)
Esempio n. 12
0
    def test_parameters(self):

        engine = PlumberyEngine()

        parameters = engine.get_parameters()
        self.assertTrue('parameter.locationId' not in parameters)
        self.assertTrue('parameter.domainName' not in parameters)
        self.assertTrue('parameter.networkName' not in parameters)

        with self.assertRaises(KeyError):
            engine.get_parameter('locationId')
        with self.assertRaises(KeyError):
            engine.get_parameter('domainName')
        with self.assertRaises(KeyError):
            engine.get_parameter('perfectlyUnknownParameter')

        with self.assertRaises(KeyError):
            engine.lookup('parameter.locationId')

        with self.assertRaises(ValueError):
            engine.set_fittings(myBadPlan1)

        engine.set_fittings(myPlan)

        parameters = engine.get_parameters()
        self.assertEqual(parameters['parameter.locationId'],
                         'EU6')
        self.assertEqual(parameters['parameter.domainName'],
                         'myDC')
        self.assertEqual(parameters['parameter.networkName'],
                         'myVLAN')

        self.assertEqual(engine.get_parameter('locationId'),
                         'EU6')
        self.assertEqual(engine.get_parameter('parameter.locationId'),
                         'EU6')
        with self.assertRaises(KeyError):
            engine.get_parameter('perfectlyUnknownParameter')

        engine = PlumberyEngine()

        engine.set_parameters(myParameters)

        parameters = engine.get_parameters()
        self.assertEqual(parameters['parameter.locationId'],
                         'EU8')
        self.assertEqual(parameters['parameter.domainName'],
                         'aDifferentDomain')
        self.assertEqual(parameters['parameter.networkName'],
                         'aDifferentNetwork')

        engine.set_fittings(myPlan)

        parameters = engine.get_parameters()
        self.assertEqual(parameters['parameter.locationId'],
                         'EU8')
        self.assertEqual(parameters['parameter.domainName'],
                         'aDifferentDomain')
        self.assertEqual(parameters['parameter.networkName'],
                         'aDifferentNetwork')

        self.assertEqual(engine.safeMode, False)

        self.assertEqual(len(engine.information), 2)

        self.assertEqual(len(engine.links), 1)

        domain = engine.get_default('domain')
        self.assertEqual(domain['ipv4'], 'auto')

        cloudConfig = engine.get_default('cloud-config', {})
        self.assertEqual(len(cloudConfig.keys()), 5)

        parameter = engine.get_parameter('locationId')
        self.assertEqual(parameter, 'EU8')

        parameter = engine.get_parameter('domainName')
        self.assertEqual(parameter, 'aDifferentDomain')

        parameter = engine.get_parameter('networkName')
        self.assertEqual(parameter, 'aDifferentNetwork')

        self.assertEqual(len(engine.facilities), 1)
        facility = engine.facilities[0]
        self.assertEqual(facility.settings['locationId'], 'EU8')
        self.assertEqual(facility.settings['regionId'], 'dd-eu')
        blueprint = facility.blueprints[0]['myBlueprint']
        self.assertEqual(blueprint['domain']['name'], 'aDifferentDomain')
        self.assertEqual(blueprint['ethernet']['name'], 'aDifferentNetwork')
Esempio n. 13
0
    def test_parameters(self):

        engine = PlumberyEngine()

        parameters = engine.get_parameters()
        self.assertTrue('parameter.locationId' not in parameters)
        self.assertTrue('parameter.domainName' not in parameters)
        self.assertTrue('parameter.networkName' not in parameters)

        with self.assertRaises(KeyError):
            engine.get_parameter('locationId')
        with self.assertRaises(KeyError):
            engine.get_parameter('domainName')
        with self.assertRaises(KeyError):
            engine.get_parameter('perfectlyUnknownParameter')

        with self.assertRaises(KeyError):
            engine.lookup('parameter.locationId')

        with self.assertRaises(ValueError):
            engine.set_fittings(myBadPlan1)

        engine.set_fittings(myPlan)

        parameters = engine.get_parameters()
        self.assertEqual(parameters['parameter.locationId'], 'EU6')
        self.assertEqual(parameters['parameter.domainName'], 'myDC')
        self.assertEqual(parameters['parameter.networkName'], 'myVLAN')

        self.assertEqual(engine.get_parameter('locationId'), 'EU6')
        self.assertEqual(engine.get_parameter('parameter.locationId'), 'EU6')
        with self.assertRaises(KeyError):
            engine.get_parameter('perfectlyUnknownParameter')

        engine = PlumberyEngine()

        engine.set_parameters(myParameters)

        parameters = engine.get_parameters()
        self.assertEqual(parameters['parameter.locationId'], 'EU8')
        self.assertEqual(parameters['parameter.domainName'],
                         'aDifferentDomain')
        self.assertEqual(parameters['parameter.networkName'],
                         'aDifferentNetwork')

        engine.set_fittings(myPlan)

        parameters = engine.get_parameters()
        self.assertEqual(parameters['parameter.locationId'], 'EU8')
        self.assertEqual(parameters['parameter.domainName'],
                         'aDifferentDomain')
        self.assertEqual(parameters['parameter.networkName'],
                         'aDifferentNetwork')

        self.assertEqual(engine.safeMode, False)

        self.assertEqual(len(engine.information), 2)

        self.assertEqual(len(engine.links), 1)

        domain = engine.get_default('domain')
        self.assertEqual(domain['ipv4'], 'auto')

        cloudConfig = engine.get_default('cloud-config', {})
        self.assertEqual(len(cloudConfig.keys()), 5)

        parameter = engine.get_parameter('locationId')
        self.assertEqual(parameter, 'EU8')

        parameter = engine.get_parameter('domainName')
        self.assertEqual(parameter, 'aDifferentDomain')

        parameter = engine.get_parameter('networkName')
        self.assertEqual(parameter, 'aDifferentNetwork')

        self.assertEqual(len(engine.facilities), 1)
        facility = engine.facilities[0]
        self.assertEqual(facility.settings['locationId'], 'EU8')
        self.assertEqual(facility.settings['regionId'], 'dd-eu')
        blueprint = facility.blueprints[0]['myBlueprint']
        self.assertEqual(blueprint['domain']['name'], 'aDifferentDomain')
        self.assertEqual(blueprint['ethernet']['name'], 'aDifferentNetwork')