def basic(self): data = self.init() if env.host != env.hosts[0]: return keystone = Keystone() keystone.create_user(data["user"], data["password"], [["admin", "admin"]], False) glance = Glance() image_id = glance.create_image(data["image"]["name"], data["image"]["src_url"]) net_id = utils.oscmd( "neutron net-list | grep ' {0} ' | awk '{{print $2}}'".format(env.cluster["neutron"]["test_net"]) ) nova = Nova() nova.create_flavor("test-flavor", 62, 2, 1) test_stack = {"image_id": image_id, "net_id": net_id, "flavor": "test-flavor"} filer.template("/tmp/stack-nova.yml", src="stack/stack-nova.yml", data=test_stack) filer.template("/tmp/autoscale.yml", src="stack/autoscale.yml", data=test_stack) with api.warn_only(): result = utils.oscmd("heat stack-list | grep stack-nova") if result.return_code == 0: utils.oscmd("heat stack-delete -y stack-nova") time.sleep(3) utils.oscmd("heat stack-create -f /tmp/stack-nova.yml stack-nova")
def register_image(self): """ trove images for ubuntu http://tarballs.openstack.org/trove/images/ubuntu/ building guest images http://docs.openstack.org/developer/trove/dev/building_guest_images.html ``` git clone https://github.com/openstack/trove-integration git clone https://github.com/openstack/tripleo-image-elements.git export PATH_TRIPLEO_ELEMENTS=$PWD/tripleo-image-elements export REDSTACK_SCRIPTS=$PWD/trove-integration/scripts export DIB_CLOUD_INIT_DATASOURCES="ConfigDrive" export ELEMENTS_PATH=$REDSTACK_SCRIPTS/files/elements:$PATH_TRIPLEO_ELEMENTS/elements disk-image-create -a amd64 -o ./ubuntu-percona.qemu ubuntu vm heat-cfntools \ cloud-init-datasources ubuntu-guest ubuntu-mysql ``` """ glance = Glance() image_id = glance.create_image( 'trove_mysql', 'http://tarballs.openstack.org/trove/images/ubuntu/mysql.qcow2') sudo("/opt/trove/bin/trove-manage --config-file /etc/trove/trove.conf datastore_update mysql ''") # noqa sudo("/opt/trove/bin/trove-manage --config-file /etc/trove/trove.conf datastore_version_update mysql mysql-5.6 mysql {0} '' 1".format(image_id)) # noqa
print str(self.endPointObj) print "Patzaks: change" except OperationError, e : sys.stderr.write( "\n" + str(e.err)) exit(e.err) def Uploadmain (): try : drive = Upload() except InvalidArgumentsException ,e: sys.stderr.write("\narguments error\n") return e.value glanceObj = Glance(drive.logObj) try : createdImageUrl = glanceObj.create_image(drive.logObj, drive.imageName, drive.endPointObj, drive.containerFormat, drive.diskFormat) print "Created Image Url: " + createdImageUrl # TBD : debugging message except OperationError, e: sys.stderr.write( "\n" + str (e.err)) return (e.err) try: glanceObj.upload_image(drive.logObj, drive.imagePath) except OperationError, e: sys.stderr.write("\n" + str(e.err)) return (e.err) return (0) if "__main__" == __name__ : exit(Uploadmain())