summaryrefslogtreecommitdiffstats
path: root/snaps/openstack/create_stack.py
AgeCommit message (Collapse)AuthorFilesLines
2018-06-20Adds Stack Updatembeierl1-2/+45
Adds function to allow stack update to occur. Includes higher level object calls for stack update. Added blocking parameter to create() and update() Rebase screwed up some changes. Added new test to test_suite_builder.py and updated IntegrationTests.rst accordingly Change-Id: I4558befb3ea8ea7982faff79d1ebb54fbb3d44a7 Signed-off-by: mbeierl <mark.beierl@dell.com>
2018-06-19Adds Threads to Heat Callsmbeierl1-17/+30
Adds thread pool and coverts looping calls to OpenStack to be submitted to it, allowing them to be run in parallel. Places a configurable maximum size (default 5) of concurrent calls on the thread pool. JIRA: SNAPS-316 Change-Id: Id209c5fe9b7ee7d755d3210a124b38fc3234f0d7 Signed-off-by: mbeierl <mark.beierl@dell.com>
2018-03-13Reverse engineer OpenStackHeatStackspisarski1-0/+16
Added support for obtaining an initialized OpenStackHeatStack object from an existing Stack object JIRA: SNAPS-278 Change-Id: I68cb0c85179868e4e3899b5516316dda3321e9f6 Signed-off-by: spisarski <s.pisarski@cablelabs.com>
2018-03-12Closing keystone sessions after done with them.spisarski1-33/+39
By not closing all of the keystone sessions being created when running all of the tests, this may be the root cause to the IOError occasionally being observed: IOError: [Errno 24] Too many open files JIRA: SNAPS-285 Change-Id: I7fc7ab0c6cdd02f1ae32bb3ae4f121cb465d5693 Signed-off-by: spisarski <s.pisarski@cablelabs.com>
2018-03-07Updated stack tests to only use an admin user when necessary.spisarski1-2/+5
Changed super test class OSIntegrationTestCase to allow subclasses to set the user roles when required. For all heat stack test, the user role will always be 'heat_stack_owner'. 'admin' will be used for tests requiring this role (i.e. heat template creates flavors) JIRA: SNAPS-268 Change-Id: I0ec01cfea6297547a6a158eec8e5c69af6d6c7d7 Signed-off-by: spisarski <s.pisarski@cablelabs.com>
2018-02-22Changed pattern on how objects lookup themselves by name and project.spisarski1-4/+7
The pattern being replaced has unwittingly added the requirement that all creator credentials must be of type 'admin' as when looking up the associated project ID required a call to keystone.projects.list(). As the SNAPS integration tests were always creating users with an 'admin' role, this issue was not caught. As part of this patch, integration test users will no longer be admin. JIRA: SNAPS-274 Change-Id: I02957f69e31a9d4dfa63362d371f061687e59fbf Signed-off-by: spisarski <s.pisarski@cablelabs.com>
2018-02-16Ensure project IDs are handled correctly for Network/Subnetsspisarski1-2/+2
JIRA: SNAPS-265 Change-Id: If58f5817e52e21be377d2b06a5f7c3a413454350 Signed-off-by: spisarski <s.pisarski@cablelabs.com>
2018-01-11Fixed vm instance instantiation from Heat when using nested resourcesspisarski1-1/+2
* Simplified the configuration of file resources * Added integration test JIRA: SNAPS-255 Change-Id: I1065d9352865d7a9f946a5d9947e32e7340f20bc Signed-off-by: spisarski <s.pisarski@cablelabs.com>
2017-12-18Refactored VmInst domain class for Ports.spisarski1-2/+2
Removed network dict and replaced with a list of Port domain objects. The old network member was directly copied into the VmInst object from neutron meaning that Neutron implementation details were leaking through. This refactor not only makes VmInst objects easier to use, it also ensures that future Neutron API changes will not break the library. JIRA: SNAPS-251 Change-Id: I3e5e811e433bf7670ecd80405186ac2ac0739def Signed-off-by: spisarski <s.pisarski@cablelabs.com>
2017-11-21Refactoring of SecurityGroupSettings to extend SecurityGroupConfigspisarski1-1/+1
SecurityGroupSettings, SecurityGroupSettings and neutron_utils have a runtime cyclical dependency. This patch reduces this dependency and deprecates the SecurityGroupSettings and SecurityGroupRuleSettings class with snaps.config.security_group SecurityGroupConfig and SecurityGroupRuleConfg classes JIRA: SNAPS-224 Change-Id: I6cd82ed5be31f4a24449be767b203e86489b1962 Signed-off-by: spisarski <s.pisarski@cablelabs.com>
2017-11-20Refactoring of VmInstanceSettings to extend VmInstanceConfigspisarski1-3/+3
VmInstanceSettings, FloatingIPSettings and nova_utils have a runtime cyclical dependency. This patch reduces this dependency and deprecates the VmInstanceSettings and FloatingIPSettings class with snaps.config.vm_inst VmInstanceConfig and FloatingIpConfg classes JIRA: SNAPS-218 Change-Id: I95688130256bca1df4a5c347bdb741019ae0937e Signed-off-by: spisarski <s.pisarski@cablelabs.com>
2017-11-20Refactoring of NetworkSettings to extend NetworkConfigspisarski1-1/+1
This also includes SubnetSettings extending to SubnetConfig and PortSettings extenting to Portconfig and neutron_utils have a runtime cyclical dependency. This patch reduces this dependency and deprecates the NetworkSettings, SubnetSettings, and PortSettings classes. JIRA: SNAPS-220 Change-Id: I996d73d9b910c075a6511a423f01d966f5b6fb74 Signed-off-by: spisarski <s.pisarski@cablelabs.com>
2017-11-20Refactoring of VolumeSettings to extend VolumeConfigspisarski1-1/+1
VolumeSettings and cinder_utils have a runtime cyclical dependency. This patch reduces this dependency and deprecates the VolumeSettings class. JIRA: SNAPS-227 Change-Id: I3f93702ff836af365c811d44bfd0e59b76c3f1f5 Signed-off-by: spisarski <s.pisarski@cablelabs.com>
2017-11-20Refactoring of VolumeTypeSettings to extend VolumeTypeConfigspisarski1-1/+1
This also includes VolumeTypeEncryptionSettings extending to VolumeTypeEncryptionConfig which is a member of VolumeTypeConfig VolumeTypeSettings and cinder_utils have a runtime cyclical dependency. This patch reduces this dependency and deprecates the VolumeTypeSettings class. JIRA: SNAPS-228 Change-Id: Iaa9c7a1cd810cf63d1badb00f71bcdcefb527e12 Signed-off-by: spisarski <s.pisarski@cablelabs.com>
2017-11-20Refactoring of StackSettings to extend StackConfigspisarski1-55/+26
StackSettings and heat_utils have a runtime cyclical dependency. This patch reduces this dependency and deprecates the StackSettings class. JIRA: SNAPS-225 Change-Id: I8dc7a4d80efce93452908563730babf14c17e615 Signed-off-by: spisarski <s.pisarski@cablelabs.com>
2017-11-20Refactoring of KeypairSettings to extend KeypairConfigspisarski1-2/+2
KeypairSettings and glance_utils have a runtime cyclical dependency. This patch reduces this dependency and deprecates the KeypairSettings class. JIRA: SNAPS-219 Change-Id: I92f51ecb77238444697e922c8f089e78d1c643aa Signed-off-by: spisarski <s.pisarski@cablelabs.com>
2017-11-20Refactoring of FlavorSettings to extend FlavorConfigspisarski1-1/+1
FlavorSettings and glance_utils have a runtime cyclical dependency. This patch reduces this dependency and deprecates the FlavorSettings class. JIRA: SNAPS-216 Change-Id: Ie9532fcbe16377d4ab608bdacd1982c3c6628fe9 Signed-off-by: spisarski <s.pisarski@cablelabs.com>
2017-11-16Refactoring of ImageSettings to extend ImageConfigspisarski1-4/+2
ImageSettings and glance_utils have a runtime cyclical dependency. This patch reduces this dependency and deprecates the ImageSettings class. JIRA: SNAPS-217 Change-Id: I09f34531366f2a5bd3202c9cbbdef878b2542abe Signed-off-by: spisarski <s.pisarski@cablelabs.com>
2017-11-06Added method to OpenStackHeatStack to return OpenStackSecurityGroup objects.spisarski1-0/+23
Continuation of the story SNAPS-153 for adding creator/state machine instances for OpenStack objects deployed via Heat. JIRA: SNAPS-207 Change-Id: Id479b69c2b166ab38724c3886096d8483998f819 Signed-off-by: spisarski <s.pisarski@cablelabs.com>
2017-11-06Merge "Added logging when a heat stack fails."Steven Pisarski1-0/+12
2017-11-02Added logging when a heat stack fails.spisarski1-0/+12
Added the stack resource reason to the error logs for each resource who's status is 'CREATE_FAILED'. All resons will be output to debug. JIRA: SNAPS-190 Change-Id: Ieb1cdb2089eb6e1c1a7c96c143b82af1b7a9efb7 Signed-off-by: spisarski <s.pisarski@cablelabs.com>
2017-11-02Added method to OpenStackHeatStack to return OpenStackRouter objects.spisarski1-0/+23
Continuation of the story SNAPS-153 for adding creator/state machine instances for OpenStack objects deployed via Heat. JIRA: SNAPS-173 Change-Id: Iac9138ef7827c10db1637447d3a909e714a0301b Signed-off-by: spisarski <s.pisarski@cablelabs.com>
2017-10-31Added method to OpenStackHeatStack to return OpenStackFlavor objects.spisarski1-0/+27
Continuation of the story SNAPS-153 for adding creator/state machine instances for OpenStack objects deployed via Heat. JIRA: SNAPS-174 Change-Id: I791e427efc487045c0f72cd836dabd9a66a4f60f Signed-off-by: spisarski <s.pisarski@cablelabs.com>
2017-10-30Added method to OpenStackHeatStack to return OpenStackKeypair objects.spisarski1-0/+29
Continuation of the story SNAPS-153 for adding creator/state machine instances for OpenStack objects deployed via Heat. JIRA: SNAPS-175 Change-Id: I7196279086b1935b4ec4a01483d46921cc567b15 Signed-off-by: spisarski <s.pisarski@cablelabs.com>
2017-10-27Return OpenStackVolume and OpenStackVolumeType instances from heat.spisarski1-11/+64
Added a methods to OpenStackHeatStack to return any OpenStackVolume and OpenStackVolumeType objects it was responsible for spawning. Changes include all of the necessary changes to the heat and settings utilities and associated tests. JIRA: SNAPS-199, SNAPS-200 Change-Id: I6da4bce1e90f080e22c96ab1b46eca8b85991ebf Signed-off-by: spisarski <s.pisarski@cablelabs.com>
2017-10-26Updated documentation to reflect new block storage support.spisarski1-1/+1
1. Updated library usaged LibraryUsage.rst 2. Added new unit tests to UnitTests.rst 3. Added new component tests to APITests.rst 4. Added new integration tests to IntegrationTests.rst 5. Updated application usage docs in VirtEnvDeploy.rst 6. Updated pydocs where inaccurate JIRA: SNAPS-203 Change-Id: I8bee2c6cdb5f54b86abf805bc930563028df3425 Signed-off-by: spisarski <s.pisarski@cablelabs.com>
2017-10-19Add reason for stack creation failureTaseer Ahmed1-5/+7
JIRA: SNAPS-190 Change-Id: I59b7d416ef16cd1f301ccbdcdd8a7529527b3dd6 Signed-off-by: Taseer Ahmed <taseer94@gmail.com>
2017-10-12Improved creator/state machine classes class hierarchy.spisarski1-26/+30
Created abstract superclasses for all classes responsible for deploying and maintaining the state of objects deployed to OpenStack which should help developers better understand the library. JIRA: SNAPS-183 Change-Id: I7651bd338f0d4e4086abbc11755e6be4f19058bd Signed-off-by: spisarski <s.pisarski@cablelabs.com>
2017-08-24Added method to return OpenStackVmInstance from Heat.spisarski1-42/+110
OpenStackHeatStack now can introspect the VMs that the template was responsible for deploying and return an instanitated instance of OpenStackVmInstance for each VM deployed. When the VM has a Floating IP, these instances have the ability to connect via SSH just like one created from scratch. JIRA: SNAPS-172 Change-Id: I5a7ed3a09bb871afc55c718aa80a9069b1eb4da7 Signed-off-by: spisarski <s.pisarski@cablelabs.com>
2017-08-09SNAPS Stack creators can now return SNAPS network creators.spisarski1-8/+68
As Heat Stacks are responsible for spawning objects in OpenStack, the class OpenStackHeatStack which is responsible for applying and managing the state of a stack now can retrieve OpenStackNetwork objects for the networks created in the stack for clients who would like to query the networks and subnets or update them outside of Heat. JIRA: SNAPS-171 Change-Id: I9bf0b81d4f7bfeb1b6392f345022c7d9a57d0415 Signed-off-by: spisarski <s.pisarski@cablelabs.com>
2017-07-31Changed heat_utils#get_stack_by_name to get_stack.spisarski1-2/+9
Added stack_settings parameter to allow for more robust queries based on the known settings as required. JIRA: SNAPS-158 Change-Id: I538826f822307365b1afe997b71280b9ea500eab Signed-off-by: spisarski <s.pisarski@cablelabs.com>
2017-07-10Fixed stack create status check on error.spisarski1-1/+2
Was checking for the status string of "ERROR" when "CREATE_FAILED" should have been used. This bug caused the heat stack test to hang instead of raising an exception. Change-Id: I91e04d58bed083fd8b93ec908c766c0ddc4828de Signed-off-by: spisarski <s.pisarski@cablelabs.com>
2017-06-20Changes StackSettings constructor to use kwargs.spisarski1-50/+69
And changed line lengths to 79 for pep8. JIRA: SNAPS-103 Change-Id: Iacc3a42cbf3bebe7336d17fc4a4574590f15b93a Signed-off-by: spisarski <s.pisarski@cablelabs.com>
2017-06-05Added support for applying Heat Templatesspisarski1-0/+214
Second patch expanded support to both files and dict() objects. Third patch exposes new accessor for status and outputs. JIRA: SNAPS-86 Change-Id: Ie7e8d883b4cc1a08dbe851fc9cbf663396334909 Signed-off-by: spisarski <s.pisarski@cablelabs.com>