X-Git-Url: https://osm.etsi.org/gitweb/?a=blobdiff_plain;f=examples%2Fcontroller.py;h=6002f683632fa3655d40887717a8eb7cfce70e9f;hb=65d71ab71ce1aaf9ca3aeeee7dd6cb8793278b3e;hp=3a492c4fc6ba63c2ceeec4ee6e92ebbefbf53b48;hpb=a516c1225a8e76faf11aed1a4489cf4b11665018;p=osm%2FN2VC.git diff --git a/examples/controller.py b/examples/controller.py index 3a492c4..6002f68 100644 --- a/examples/controller.py +++ b/examples/controller.py @@ -4,46 +4,38 @@ This example: 1. Connects to current controller. 2. Creates a new model. 3. Deploys an application on the new model. - -Note: 'cloudcred' format to add a model should be: -cloudcred-__ +4. Disconnects from the model +5. Destroys the model """ import asyncio import logging -from juju.model import Model, ModelObserver from juju.controller import Controller +from juju import loop -class MyModelObserver(ModelObserver): - async def on_change(self, delta, old, new, model): - pass - - -async def run(): +async def main(): controller = Controller() await controller.connect_current() model = await controller.add_model( - 'libjuju-test', - 'cloud-aws', - 'cloudcred-aws_tvansteenburgh@external_aws-tim', + 'my-test-model', + 'aws', + 'aws-tim', ) await model.deploy( 'ubuntu-0', - service_name='ubuntu', + application_name='ubuntu', series='trusty', channel='stable', ) await model.disconnect() + await controller.destroy_model(model.info.uuid) await controller.disconnect() - model.loop.stop() -logging.basicConfig(level=logging.DEBUG) -ws_logger = logging.getLogger('websockets.protocol') -ws_logger.setLevel(logging.INFO) -loop = asyncio.get_event_loop() -loop.set_debug(False) -loop.create_task(run()) -loop.run_forever() +if __name__ == '__main__': + logging.basicConfig(level=logging.DEBUG) + ws_logger = logging.getLogger('websockets.protocol') + ws_logger.setLevel(logging.INFO) + loop.run(main())