Merge "Add tests for gnocchi states and modules"
diff --git a/_modules/runtest/tempest_sections/compute_feature_enabled.py b/_modules/runtest/tempest_sections/compute_feature_enabled.py
index 91eb882..d2b3f9a 100644
--- a/_modules/runtest/tempest_sections/compute_feature_enabled.py
+++ b/_modules/runtest/tempest_sections/compute_feature_enabled.py
@@ -35,6 +35,7 @@
'suspend',
'swap_volume',
'vnc_console',
+ 'vnc_server_header',
]
@@ -184,3 +185,7 @@
#TODO: fix when value is unhardcoded.
return conditions.BaseRule('*.nova.compute.enabled', 'eq', True,
multiple='any').check(self.pillar)
+
+ @property
+ def vnc_server_header(self):
+ return 'nginx'
diff --git a/runtest/files/heat_test_tempate.yml b/runtest/files/heat_test_tempate.yml
new file mode 100644
index 0000000..552fd22
--- /dev/null
+++ b/runtest/files/heat_test_tempate.yml
@@ -0,0 +1,16 @@
+heat_template_version: 2015-10-15
+
+parameters:
+ length:
+ type: number
+ default: 100
+
+resources:
+ random:
+ type: OS::Heat::RandomString
+ properties:
+ length: {get_param: length}
+
+outputs:
+ value:
+ value: {get_attr: [random, value]}
diff --git a/runtest/salttest/modules/openstack/cinderv3.sls b/runtest/salttest/modules/openstack/cinderv3.sls
new file mode 100644
index 0000000..6286b78
--- /dev/null
+++ b/runtest/salttest/modules/openstack/cinderv3.sls
@@ -0,0 +1,57 @@
+{%- set volume_type_name = 'TestVolumeType' %}
+{%- set image_properties = "[{'op':'add', 'path':'/test_property', 'value': 'test'},]" %}
+
+cinderv3_volume_list:
+ module.run:
+ - name: cinderv3.volume_list
+ - kwargs:
+ cloud_name: admin_identity
+
+cinderv3_volume_type_list:
+ module.run:
+ - name: cinderv3.volume_type_list
+ - kwargs:
+ cloud_name: admin_identity
+
+cinderv3_volume_type_create:
+ module.run:
+ - name: cinderv3.volume_type_create
+ - args:
+ - {{ volume_type_name }}
+ - kwargs:
+ cloud_name: admin_identity
+
+cinderv3_keys_volume_type_get:
+ module.run:
+ - name: cinderv3.keys_volume_type_get
+ - args:
+ - {{ volume_type_name }}
+ - kwargs:
+ cloud_name: admin_identity
+ - require:
+ - cinderv3_volume_type_create
+
+cinderv3_keys_volume_type_set:
+ module.run:
+ - name: cinderv3.keys_volume_type_set
+ - args:
+ - {{ volume_type_name }}
+ - kwargs:
+ keys:
+ key1:
+ key: val1
+ key2:
+ key: val2
+ cloud_name: admin_identity
+ - require:
+ - cinderv3_volume_type_create
+
+cinderv3_volume_type_delete:
+ module.run:
+ - name: cinderv3.volume_type_delete
+ - args:
+ - {{ volume_type_name }}
+ - kwargs:
+ cloud_name: admin_identity
+ - require:
+ - cinderv3_volume_type_create
\ No newline at end of file
diff --git a/runtest/salttest/modules/openstack/heatv1.sls b/runtest/salttest/modules/openstack/heatv1.sls
new file mode 100644
index 0000000..f819094
--- /dev/null
+++ b/runtest/salttest/modules/openstack/heatv1.sls
@@ -0,0 +1,50 @@
+create_heatv1_module_resource:
+ file.managed:
+ - name: /srv/heat/env/template/heat_test_tempate.yml
+ - source: salt://runtest/files/heat_test_tempate.yml
+ - template: jinja
+ - makedirs: true
+ - mode: 644
+ - user: root
+ - group: root
+
+heatv1_stack_create:
+ module.run:
+ - name: heatv1.stack_create
+ - kwargs:
+ cloud_name: admin_identity
+ name: TestHeatStack
+ template: heat_test_tempate.yml
+
+heatv1_stack_list:
+ module.run:
+ - name: heatv1.stack_list
+ - kwargs:
+ cloud_name: admin_identity
+
+heatv1_stack_show:
+ module.run:
+ - name: heatv1.stack_show
+ - kwargs:
+ cloud_name: admin_identity
+ name: TestHeatStack
+
+heatv1_stack_update:
+ module.run:
+ - name: heatv1.stack_update
+ - kwargs:
+ cloud_name: admin_identity
+ name: TestHeatStack
+ template: heat_test_tempate.yml
+
+heatv1_stack_delete:
+ module.run:
+ - name: heatv1.stack_delete
+ - kwargs:
+ cloud_name: admin_identity
+ name: TestHeatStack
+
+remove_heatv1_module_resource:
+ file.directory:
+ - name: /srv/heat
+ - clean: True
\ No newline at end of file
diff --git a/runtest/salttest/modules/openstack/init.sls b/runtest/salttest/modules/openstack/init.sls
index f2e0c47..a9d6334 100644
--- a/runtest/salttest/modules/openstack/init.sls
+++ b/runtest/salttest/modules/openstack/init.sls
@@ -4,3 +4,6 @@
- runtest.salttest.modules.openstack.keystone
- runtest.salttest.modules.openstack.nova
- runtest.salttest.modules.openstack.neutron
+- runtest.salttest.modules.openstack.neutronv2
+- runtest.salttest.modules.openstack.cinderv3
+- runtest.salttest.modules.openstack.heatv1
diff --git a/runtest/salttest/modules/openstack/neutronv2.sls b/runtest/salttest/modules/openstack/neutronv2.sls
new file mode 100644
index 0000000..eeb5b56
--- /dev/null
+++ b/runtest/salttest/modules/openstack/neutronv2.sls
@@ -0,0 +1,134 @@
+{%- set neutron_test_network = 'NeutronTestNetwork' %}
+{%- set neutron_bulk_test_network = 'NeutronTestBulkNetworks' %}
+{%- set neutron_test_subnet = 'NeutronTestSubnet' %}
+{%- set neutron_test_subnet_pool = 'NeutronTestSubnetPool' %}
+
+neutronv2_network_create:
+ module.run:
+ - name: neutronv2.network_create
+ - kwargs:
+ cloud_name: admin_identity
+ name: {{ neutron_test_network }}
+
+neutronv2_network_bulk_create:
+ module.run:
+ - name: neutronv2.network_bulk_create
+ - kwargs:
+ cloud_name: admin_identity
+ networks:
+ - name: {{ neutron_bulk_test_network }}
+
+neutronv2_subnet_create:
+ module.run:
+ - name: neutronv2.subnet_create
+ - kwargs:
+ cloud_name: admin_identity
+ name: {{ neutron_test_subnet }}
+ ip_version: 4
+ cidr: 192.168.88.0/24
+ network_id: {{ neutron_test_network }}
+
+neutronv2_subnetpool_create:
+ module.run:
+ - name: neutronv2.subnetpool_create
+ - kwargs:
+ cloud_name: admin_identity
+ name: {{ neutron_test_subnet_pool }}
+ prefixes: [203.0.113.0/24]
+
+neutronv2_subnet_list:
+ module.run:
+ - name: neutronv2.subnet_list
+ - kwargs:
+ cloud_name: admin_identity
+
+neutronv2_network_list:
+ module.run:
+ - name: neutronv2.network_list
+ - kwargs:
+ cloud_name: admin_identity
+
+neutronv2_subnetpool_list:
+ module.run:
+ - name: neutronv2.subnetpool_list
+ - kwargs:
+ cloud_name: admin_identity
+
+neutronv2_subnet_get_details:
+ module.run:
+ - name: neutronv2.subnet_get_details
+ - args:
+ - {{ neutron_test_subnet }}
+ - kwargs:
+ cloud_name: admin_identity
+
+neutronv2_subnetpool_get_details:
+ module.run:
+ - name: neutronv2.subnetpool_get_details
+ - args:
+ - {{ neutron_test_subnet_pool }}
+ - kwargs:
+ cloud_name: admin_identity
+
+neutronv2_network_get_details:
+ module.run:
+ - name: neutronv2.network_get_details
+ - kwargs:
+ cloud_name: admin_identity
+ name: {{ neutron_test_network }}
+
+neutronv2_subnet_update:
+ module.run:
+ - name: neutronv2.subnet_update
+ - args:
+ - {{ neutron_test_subnet }}
+ - kwargs:
+ cloud_name: admin_identity
+ description: NeutronTestSubnetDescription
+
+neutronv2_subnetpool_update:
+ module.run:
+ - name: neutronv2.subnetpool_update
+ - args:
+ - {{ neutron_test_subnet_pool }}
+ - kwargs:
+ cloud_name: admin_identity
+ description: NeutronTestSubnetPoolDescription
+
+neutronv2_network_update:
+ module.run:
+ - name: neutronv2.network_update
+ - kwargs:
+ cloud_name: admin_identity
+ name: {{ neutron_test_network }}
+ description: NeutronTestNetworkDescription
+
+neutronv2_subnet_delete:
+ module.run:
+ - name: neutronv2.subnet_delete
+ - args:
+ - {{ neutron_test_subnet }}
+ - kwargs:
+ cloud_name: admin_identity
+
+neutronv2_subnetpool_delete:
+ module.run:
+ - name: neutronv2.subnetpool_delete
+ - args:
+ - {{ neutron_test_subnet_pool }}
+ - kwargs:
+ cloud_name: admin_identity
+
+neutronv2_network_delete:
+ module.run:
+ - name: neutronv2.network_delete
+ - kwargs:
+ cloud_name: admin_identity
+ name: {{ neutron_test_network }}
+
+neutronv2_bulk_network_delete:
+ module.run:
+ - name: neutronv2.network_delete
+ - kwargs:
+ cloud_name: admin_identity
+ name: {{ neutron_bulk_test_network }}
\ No newline at end of file
diff --git a/runtest/salttest/states/openstack/cinderv3.sls b/runtest/salttest/states/openstack/cinderv3.sls
new file mode 100644
index 0000000..96b403f
--- /dev/null
+++ b/runtest/salttest/states/openstack/cinderv3.sls
@@ -0,0 +1,18 @@
+{%- set volume_type_name = 'TestVolumeType' %}
+
+cinderv3_volume_type_present:
+ cinderv3.volume_type_present:
+ - name: {{ volume_type_name }}
+ - cloud_name: admin_identity
+
+cinderv3_volume_type_key_present:
+ cinderv3.volume_type_key_present:
+ - name: {{ volume_type_name }}
+ - key: key1
+ - value: val1
+ - cloud_name: admin_identity
+
+cinderv3_volume_type_absent:
+ cinderv3.volume_type_absent:
+ - name: {{ volume_type_name }}
+ - cloud_name: admin_identity
diff --git a/runtest/salttest/states/openstack/heatv1.sls b/runtest/salttest/states/openstack/heatv1.sls
new file mode 100644
index 0000000..471e4b9
--- /dev/null
+++ b/runtest/salttest/states/openstack/heatv1.sls
@@ -0,0 +1,25 @@
+create_heatv1_state_resource:
+ file.managed:
+ - name: /srv/heat/env/template/heat_test_tempate.yml
+ - source: salt://runtest/files/heat_test_tempate.yml
+ - template: jinja
+ - makedirs: true
+ - mode: 644
+ - user: root
+ - group: root
+
+heatv1_stack_present:
+ heatv1.stack_present:
+ - name: TestHeatStack
+ - cloud_name: admin_identity
+ - template: heat_test_tempate.yml
+
+heatv1_stack_absent:
+ heatv1.stack_absent:
+ - name: TestHeatStack
+ - cloud_name: admin_identity
+
+remove_heatv1_state_resource:
+ file.directory:
+ - name: /srv/heat
+ - clean: True
\ No newline at end of file
diff --git a/runtest/salttest/states/openstack/init.sls b/runtest/salttest/states/openstack/init.sls
index 6a26911..bb70bb0 100644
--- a/runtest/salttest/states/openstack/init.sls
+++ b/runtest/salttest/states/openstack/init.sls
@@ -1,4 +1,7 @@
include:
- runtest.salttest.states.openstack.neutron
+- runtest.salttest.states.openstack.neutronv2
- runtest.salttest.states.openstack.nova
- runtest.salttest.states.openstack.glancev2
+- runtest.salttest.states.openstack.cinderv3
+- runtest.salttest.states.openstack.heatv1
diff --git a/runtest/salttest/states/openstack/neutronv2.sls b/runtest/salttest/states/openstack/neutronv2.sls
new file mode 100644
index 0000000..a2221a7
--- /dev/null
+++ b/runtest/salttest/states/openstack/neutronv2.sls
@@ -0,0 +1,37 @@
+{%- set neutron_test_network = 'NeutronStateTestNetwork' %}
+{%- set neutron_test_subnet = 'NeutronStateTestSubnet' %}
+{%- set neutron_test_subnet_pool = 'NeutronStateTestSubnetPool' %}
+
+neutronv2_network_present:
+ neutronv2.network_present:
+ - cloud_name: admin_identity
+ - name: {{ neutron_test_network }}
+
+neutronv2_subnet_present:
+ neutronv2.subnet_present:
+ - name: {{ neutron_test_subnet }}
+ - cloud_name: admin_identity
+ - network_id: {{ neutron_test_network }}
+ - ip_version: 4
+ - cidr: 192.168.89.0/24
+
+neutronv2_subnetpool_present:
+ neutronv2.subnetpool_present:
+ - cloud_name: admin_identity
+ - name: {{ neutron_test_subnet_pool }}
+ - prefixes: [203.0.113.0/24]
+
+neutronv2_subnetpool_absent:
+ neutronv2.subnetpool_absent:
+ - cloud_name: admin_identity
+ - name: {{ neutron_test_subnet_pool }}
+
+neutronv2_subnet_absent:
+ neutronv2.subnet_absent:
+ - cloud_name: admin_identity
+ - name: {{ neutron_test_subnet }}
+
+neutronv2_network_absent:
+ neutronv2.network_absent:
+ - cloud_name: admin_identity
+ - name: {{ neutron_test_network }}