summaryrefslogtreecommitdiffstats
path: root/snaps/openstack/utils
AgeCommit message (Collapse)AuthorFilesLines
2018-01-23Added password support for SSH and Ansiblespisarski2-3/+6
Additional protections when initializing network resources Enhanced playbook runner variable support Change-Id: Id897c4ece1de706afbc52d0a034ca3bfb68fdce3 Signed-off-by: spisarski <s.pisarski@cablelabs.com>
2018-01-18Change exception message.spisarski1-1/+1
Change-Id: I120faaa8695db5f83e39b521aaa6c1ab68e7fcc1 Signed-off-by: spisarski <s.pisarski@cablelabs.com>
2018-01-16Added post processing task after application of an Ansible playbook.spisarski1-1/+12
The only task currently supported is reboot. Change-Id: I9089c593af30db071508a47667381238fe91e44e Signed-off-by: spisarski <s.pisarski@cablelabs.com>
2018-01-11Fixed vm instance instantiation from Heat when using nested resourcesspisarski2-19/+39
* Simplified the configuration of file resources * Added integration test JIRA: SNAPS-255 Change-Id: I1065d9352865d7a9f946a5d9947e32e7340f20bc Signed-off-by: spisarski <s.pisarski@cablelabs.com>
2018-01-10Added port security flag support to ports.spisarski1-1/+2
Change-Id: Ib66607b7656093c5f0cd0e2cb4c0aa9c3b9c661a Signed-off-by: spisarski <s.pisarski@cablelabs.com>
2018-01-09Merge "Added support for Heat resource files."Steven Pisarski1-0/+3
2017-12-29Added support for Heat resource files.spisarski1-0/+3
Change-Id: I936c0ef5570b5b417e4649504a817f0ca216812f Signed-off-by: spisarski <s.pisarski@cablelabs.com>
2017-12-28Enhancements to the SNAPS orchestrator/launcherspisarski1-0/+804
Added support for more Ansible substitution values extracted from OpenStack instances (i.e. subnet broadcast address, router external IP for gateway configuration, CIDR IP, netmask, etc.) Removed most try/except blocks to ensure processing does not continue when a problem should arise Added the ability to know when cloud-init has completed Removed nic configuration from OpenStackVmInstance as userdata/ cloud-init/cloud-config should be performing that functionality Fixed some logging messages Misc launcher bug fixes Change-Id: I73e7607ee158cce3d16f9c1c1fc7c32ef5899a1d Signed-off-by: spisarski <s.pisarski@cablelabs.com>
2017-12-18Refactored VmInst domain class for Ports.spisarski6-70/+76
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-12-14Added utility function to retrieve the names of all hosts with a hypervisor.spisarski2-0/+25
Change-Id: I25b91c6eee78ebf35785c4884dded7c9ab2cc412 Signed-off-by: spisarski <s.pisarski@cablelabs.com>
2017-12-04Added the ability to reboot OpenStack server instancesspisarski1-0/+31
JIRA: SNAPS-243 Change-Id: I7232ee14cac81d39d86e7391a4e006b8276ed536 Signed-off-by: spisarski <s.pisarski@cablelabs.com>
2017-12-01Added ability to add a floating IP to an existing instancespisarski2-13/+15
Patch includes: 1. Ability to easily retrive an initialized OpenStackVmInstance object 2. Added method to OpenStackVmInstance named "add_floating_ip" 3. Tests to ensure floating IPs added after initialization actually work JIRA: SNAPS-241, SNAPS-242 Change-Id: I1f413645a752c17fd624ecff26e851068bb77e3f Signed-off-by: spisarski <s.pisarski@cablelabs.com>
2017-12-01Merge "Deactivated test heat template's volume encryption."Steven Pisarski2-14/+18
2017-11-30Deactivated test heat template's volume encryption.spisarski2-14/+18
Removed volume encryption from the test volume heat template as it is no longer operating properly against a Pike pod. Created the ticket SNAPS-245 to address this issue sometime in the future. JIRA: SNAPS-240 Change-Id: I610dbba4ebadd5dfb360a665b7a543be6ef5fb1c Signed-off-by: spisarski <s.pisarski@cablelabs.com>
2017-11-30Added exception handling around adding security groups.spisarski1-2/+13
When a VM instance has a security group associated with it and the client attempts to add the same security group, a Pike pod now raises a ClientException where previous releases simply return None. This patch adds the appropriate exception handling that allows several existing tests to pass not only with Pike but also with all OpenStack versions. JIRA: SNAPS-239 Change-Id: I282df5a2b516dab415ba5e2e7208176f2ba3f270 Signed-off-by: spisarski <s.pisarski@cablelabs.com>
2017-11-29Cluster template cleanupspisarski1-13/+1
Removal of negative tests where an invalid keypair is being configured. This test was not operating consistently between pods Update testing documentation Updated some invalid class names in pydoc Change-Id: I7a392e9ed993450de40a20457044ba8294d45044 Signed-off-by: spisarski <s.pisarski@cablelabs.com>
2017-11-28Added cluster template creator/state machine class.spisarski2-0/+44
Created class and tests for creating and managing cluster templates. JIRA: SNAPS-235 Change-Id: Ia91aef9507fc39d1814dce03169aab0b784721a6 Signed-off-by: spisarski <s.pisarski@cablelabs.com>
2017-11-27Expanded the tests for ClusterTypesspisarski1-7/+130
JIRA: SNAPS-233 Change-Id: Ibba9b7046b95b5523cde525c4a4ed971f463a19d Signed-off-by: spisarski <s.pisarski@cablelabs.com>
2017-11-22Implemented the ability to create Magnum Cluster Type objects.spisarski2-6/+193
This patch is the second of several necessary for the addition of Magnum support. This one implements a create and delete function to magnum_utils.py as well as the necessary config and domain classes for sending and receiving Cluster Type data to OpenStack. JIRA: SNAPS-233 Change-Id: Iad1959b98eaabc4ef5f41b70a23f6b1306259650 Signed-off-by: spisarski <s.pisarski@cablelabs.com>
2017-11-21Refactoring of SecurityGroupSettings to extend SecurityGroupConfigspisarski4-32/+30
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 VmInstanceConfigspisarski6-26/+26
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 NetworkConfigspisarski6-72/+71
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 VolumeConfigspisarski4-11/+13
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 VolumeTypeConfigspisarski3-20/+20
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 QoSSettings to extend QoSConfigspisarski2-11/+11
QoSSettings and cinder_utils have a runtime cyclical dependency. This patch reduces this dependency and deprecates the QoSSettings class. JIRA: SNAPS-222 Change-Id: I6385717b78db413c496b15b8c4b76ffabe9797c1 Signed-off-by: spisarski <s.pisarski@cablelabs.com>
2017-11-20Refactoring of StackSettings to extend StackConfigspisarski1-19/+20
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 RouterSettings to extend RouterConfigspisarski3-5/+5
RouterSettings and neutron_utils have a runtime cyclical dependency. This patch reduces this dependency and deprecates the RouterSettings class. JIRA: SNAPS-223 Change-Id: I6a2a5e6e6e86204e62148a57e3525da5862841cf Signed-off-by: spisarski <s.pisarski@cablelabs.com>
2017-11-20Refactoring of UserSettings to extend UserConfigspisarski1-3/+3
UserSettings and keystone_utils have a runtime cyclical dependency. This patch reduces this dependency and deprecates the UserSettings class. JIRA: SNAPS-226 Change-Id: Ifcc2a029463780e963b1afcf1de31baf9edded40 Signed-off-by: spisarski <s.pisarski@cablelabs.com>
2017-11-20Refactoring of ProjectSettings to extend ProjectConfigspisarski2-4/+4
ProjectSettings and keystone_utils have a runtime cyclical dependency. This patch reduces this dependency and deprecates the ProjectSettings class. JIRA: SNAPS-221 Change-Id: I9e39f09fb8bb03dbd725f44b7256bacb05f26afc Signed-off-by: spisarski <s.pisarski@cablelabs.com>
2017-11-20Refactoring of KeypairSettings to extend KeypairConfigspisarski5-42/+43
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 FlavorConfigspisarski4-17/+18
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 ImageConfigspisarski3-9/+9
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-16Minor copy/paste logging value fixes.spisarski2-3/+3
Change-Id: I729265575583eec7fb7adc1fc49c6d91c06ad603 Signed-off-by: spisarski <s.pisarski@cablelabs.com>
2017-11-09Deleting files created when obtaining keypair settings from heat.spisarski1-6/+23
When Heat creates a keypair and SNAPS-OO attempts to generate a KeypairSettings object, the private key is getting stored into a file that was not getting cleaned up in some of the tests. JIRA: SNAPS-177 Change-Id: I50759a74efbd1d0df4de0780da43b9e56432d28c Signed-off-by: spisarski <s.pisarski@cablelabs.com>
2017-11-09Initial patch to begin adding support for Magnum.spisarski2-0/+83
JIRA: SNAPS-212 Change-Id: I5f72fe9c28fe5cdd61546eee828becd034f8aff9 Signed-off-by: spisarski <s.pisarski@cablelabs.com>
2017-11-08Adding tests for IPv6.spisarski2-122/+363
Included in patch: 1. Refactor Network domain object to include Subnet objects 2. Removed subnet members from OpenStackNetwork 3. Added exhausive IPv6 tests to neutron_utils_tests.py 4. Added two IPv6 integration tests to create_network_tests.py 5. Added two tests where VM instances have ports with IPv6 addresses 6. Updated docs JIRA: SNAPS-178 Change-Id: Id3e5448cb431d2acf47029244fe6773f3f29d368 Signed-off-by: spisarski <s.pisarski@cablelabs.com>
2017-11-06Added method to OpenStackHeatStack to return OpenStackSecurityGroup objects.spisarski4-13/+156
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-4/+7
2017-11-02Added logging when a heat stack fails.spisarski1-6/+8
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.spisarski6-21/+215
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.spisarski5-18/+111
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.spisarski4-82/+155
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.spisarski4-27/+283
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-24Implemented the ability to attach volumes to VM instances.spisarski3-14/+248
JIRA: SNAPS-198 Change-Id: I30bb92dabab64e6a8918fa5ab0de1bed359a147e Signed-off-by: spisarski <s.pisarski@cablelabs.com>
2017-10-23Merge "Added ext_net_name into template substitution variable."Steven Pisarski1-1/+1
2017-10-23Added ext_net_name into template substitution variable.spisarski1-1/+1
Without the change, the template would always leverage the external network name of 'external'. Also am now creating a security group for the VM with the floating IP so the test will always be able to access. Fixed another test that used the same heat template that was changed to add in security groups. JIRA: SNAPS-206 Change-Id: I19b09e91a844f88bd473ea25b2bba71ae19b0aa1 Signed-off-by: spisarski <s.pisarski@cablelabs.com>
2017-10-23Merge "Third patch for volume support."Steven Pisarski2-1/+193
2017-10-20Merge "Add reason for stack creation failure"Steven Pisarski1-0/+10
2017-10-19Third patch for volume support.spisarski2-1/+193
* Added support for volumes integrated with QoS and encryption. * Created tests for volumes at an API and state machine level. JIRA: SNAPS-197 Change-Id: I07326875b9f1a30e50389531d0d2571ee648675f Signed-off-by: spisarski <s.pisarski@cablelabs.com>
2017-10-19Add reason for stack creation failureTaseer Ahmed1-0/+10
JIRA: SNAPS-190 Change-Id: I59b7d416ef16cd1f301ccbdcdd8a7529527b3dd6 Signed-off-by: Taseer Ahmed <taseer94@gmail.com>