diff options
Diffstat (limited to 'roles/lib_openshift/src/test/integration')
5 files changed, 178 insertions, 33 deletions
diff --git a/roles/lib_openshift/src/test/integration/oadm_manage_node.yml b/roles/lib_openshift/src/test/integration/oadm_manage_node.yml index 69a701b17..3ee13a409 100755 --- a/roles/lib_openshift/src/test/integration/oadm_manage_node.yml +++ b/roles/lib_openshift/src/test/integration/oadm_manage_node.yml @@ -1,40 +1,51 @@ #!/usr/bin/ansible-playbook --module-path=../../../library/ -# ./oadm_manage_node.yml -M ../../../library -e "cli_master_test=$OPENSHIFT_MASTER cli_node_test=$OPENSHIFT_NODE +# +# ./oadm_manage_node.yml -e "cli_master_test=$OPENSHIFT_MASTER --- - hosts: "{{ cli_master_test }}" gather_facts: no user: root tasks: + - name: get list of nodes + oc_obj: + state: list + kind: node + register: obj_out + + - name: Set the node to work with + set_fact: + node_to_test: "{{ obj_out['results']['results'][0]['items'][0]['metadata']['name'] }}" + - name: list pods from a node oadm_manage_node: list_pods: True node: - - "{{ cli_node_test }}" + - "{{ node_to_test }}" register: podout - debug: var=podout - assert: - that: "'{{ cli_node_test }}' in podout.results.nodes" + that: "'{{ node_to_test }}' in podout.results.nodes" msg: Pod data was not returned - name: set node to unschedulable oadm_manage_node: schedulable: False node: - - "{{ cli_node_test }}" + - "{{ node_to_test }}" register: nodeout - debug: var=nodeout - name: assert that schedulable=False assert: that: nodeout.results.nodes[0]['schedulable'] == False - msg: "{{ cli_node_test }} schedulable set to True" + msg: "{{ node_to_test }} schedulable set to True" - name: get node scheduable oc_obj: kind: node state: list - name: "{{ cli_node_test }}" + name: "{{ node_to_test }}" namespace: None register: nodeout @@ -48,11 +59,11 @@ oadm_manage_node: schedulable: True node: - - "{{ cli_node_test }}" + - "{{ node_to_test }}" register: nodeout - debug: var=nodeout - name: assert that schedulable=False assert: that: nodeout.results.nodes[0]['schedulable'] - msg: "{{ cli_node_test }} schedulable set to False" + msg: "{{ node_to_test }} schedulable set to False" diff --git a/roles/lib_openshift/src/test/integration/oc_label.yml b/roles/lib_openshift/src/test/integration/oc_label.yml index ce9bc25bb..b4e721407 100755 --- a/roles/lib_openshift/src/test/integration/oc_label.yml +++ b/roles/lib_openshift/src/test/integration/oc_label.yml @@ -1,5 +1,7 @@ #!/usr/bin/ansible-playbook --module-path=../../../library/ -# ./oc_label.yml -e "cli_master_test=$OPENSHIFT_MASTER -e "cli_node_test=ip-172-0-31-1.ec2" +# +# ./oc_label.yml -e "cli_master_test=$OPENSHIFT_MASTER +# --- - hosts: "{{ cli_master_test }}" gather_facts: no @@ -15,16 +17,25 @@ msg: "{{ item }} not defined" when: "{{ item }} is not defined" with_items: - - cli_node_test # openshift node to be used to add/remove labels to - cli_master_test # ansible inventory instance to run playbook against tasks: + - name: get list of nodes + oc_obj: + state: list + kind: node + register: obj_out + + - name: Set the node to work with + set_fact: + node_to_test: "{{ obj_out['results']['results'][0]['items'][0]['metadata']['name'] }}" + - name: delete test labels (start from known starting position) oc_label: state: absent namespace: "{{ def_namespace }}" kind: "{{ def_kind }}" - name: "{{ cli_node_test }}" + name: "{{ node_to_test }}" labels: - key: testlabel2 - key: testlabel3 @@ -34,7 +45,7 @@ state: list namespace: "{{ def_namespace }}" kind: "{{ def_kind }}" - name: "{{ cli_node_test }}" + name: "{{ node_to_test }}" register: original_labels - name: assert that testlabel2 and testlabel3 test labels don't exist assert: @@ -47,7 +58,7 @@ state: add namespace: "{{ def_namespace }}" kind: "{{ def_kind }}" - name: "{{ cli_node_test }}" + name: "{{ node_to_test }}" labels: - key: testlabel2 value: "yes" @@ -62,7 +73,7 @@ state: list namespace: "{{ def_namespace }}" kind: "{{ def_kind }}" - name: "{{ cli_node_test }}" + name: "{{ node_to_test }}" register: label_out - name: assert that testlabel2 label actually added assert: @@ -75,7 +86,7 @@ state: add namespace: "{{ def_namespace }}" kind: "{{ def_kind }}" - name: "{{ cli_node_test }}" + name: "{{ node_to_test }}" labels: - key: testlabel2 value: "yes" @@ -90,7 +101,7 @@ state: add namespace: "{{ def_namespace }}" kind: "{{ def_kind }}" - name: "{{ cli_node_test }}" + name: "{{ node_to_test }}" labels: - key: testlabel2 value: "different" @@ -105,7 +116,7 @@ state: list namespace: "{{ def_namespace }}" kind: "{{ def_kind }}" - name: "{{ cli_node_test }}" + name: "{{ node_to_test }}" register: label_out - name: assert that testlabel2 label actually modified assert: @@ -118,7 +129,7 @@ state: absent namespace: "{{ def_namespace }}" kind: "{{ def_kind }}" - name: "{{ cli_node_test }}" + name: "{{ node_to_test }}" labels: - key: testlabelnone register: label_out @@ -132,7 +143,7 @@ state: absent namespace: "{{ def_namespace }}" kind: "{{ def_kind }}" - name: "{{ cli_node_test }}" + name: "{{ node_to_test }}" labels: - key: testlabel2 register: label_out @@ -146,7 +157,7 @@ state: absent namespace: "{{ def_namespace }}" kind: "{{ def_kind }}" - name: "{{ cli_node_test }}" + name: "{{ node_to_test }}" labels: - key: testlabel2 register: label_out @@ -160,7 +171,7 @@ state: list namespace: "{{ def_namespace }}" kind: "{{ def_kind }}" - name: "{{ cli_node_test }}" + name: "{{ node_to_test }}" register: label_out - name: assert label actually deleted assert: @@ -172,7 +183,7 @@ state: add namespace: "{{ def_namespace }}" kind: "{{ def_kind }}" - name: "{{ cli_node_test }}" + name: "{{ node_to_test }}" labels: - key: testlabel2 value: "yes" @@ -189,7 +200,7 @@ state: list namespace: "{{ def_namespace }}" kind: "{{ def_kind }}" - name: "{{ cli_node_test }}" + name: "{{ node_to_test }}" register: label_out - name: assert that both labels actually exist assert: @@ -204,7 +215,7 @@ state: absent namespace: "{{ def_namespace }}" kind: "{{ def_kind }}" - name: "{{ cli_node_test }}" + name: "{{ node_to_test }}" labels: - key: testlabel2 - key: testlabel3 @@ -219,7 +230,7 @@ state: absent namespace: "{{ def_namespace }}" kind: "{{ def_kind }}" - name: "{{ cli_node_test }}" + name: "{{ node_to_test }}" labels: - key: testlabel2 - key: testlabel3 @@ -237,7 +248,7 @@ state: present namespace: "{{ def_namespace }}" kind: "{{ def_kind }}" - name: "{{ cli_node_test }}" + name: "{{ node_to_test }}" labels: "{{ original_labels_as_key_value_list }}" register: label_out - name: assert that no changes are made when current list matches existing list @@ -250,7 +261,7 @@ state: present namespace: "{{ def_namespace }}" kind: "{{ def_kind }}" - name: "{{ cli_node_test }}" + name: "{{ node_to_test }}" labels: "{{ original_labels_as_key_value_list + [{'key': 'testlabel2', 'value': 'yes'}] }}" register: label_out - name: assert that changes were made @@ -263,7 +274,7 @@ state: list namespace: "{{ def_namespace }}" kind: "{{ def_kind }}" - name: "{{ cli_node_test }}" + name: "{{ node_to_test }}" register: label_out - name: asssert that new label was actually added assert: @@ -276,7 +287,7 @@ state: present namespace: "{{ def_namespace }}" kind: "{{ def_kind }}" - name: "{{ cli_node_test }}" + name: "{{ node_to_test }}" labels: "{{ original_labels_as_key_value_list + [{'key': 'testlabel2', 'value': 'different'}]}}" register: label_out - name: assert that changes were made when existing key's value is changed @@ -289,7 +300,7 @@ state: list namespace: "{{ def_namespace }}" kind: "{{ def_kind }}" - name: "{{ cli_node_test }}" + name: "{{ node_to_test }}" register: label_out - name: asssert that changed label was actually changed assert: @@ -302,7 +313,7 @@ state: present namespace: "{{ def_namespace }}" kind: "{{ def_kind }}" - name: "{{ cli_node_test }}" + name: "{{ node_to_test }}" labels: "{{ original_labels_as_key_value_list }}" register: label_out - name: assert that changes were made @@ -315,7 +326,7 @@ state: list namespace: "{{ def_namespace }}" kind: "{{ def_kind }}" - name: "{{ cli_node_test }}" + name: "{{ node_to_test }}" register: label_out - name: asssert that present-removed actually removed assert: diff --git a/roles/lib_openshift/src/test/integration/oc_process.yml b/roles/lib_openshift/src/test/integration/oc_process.yml new file mode 100755 index 000000000..7ea4c6b99 --- /dev/null +++ b/roles/lib_openshift/src/test/integration/oc_process.yml @@ -0,0 +1,83 @@ +#!/usr/bin/ansible-playbook --module-path=../../../library/:../../../../lib_utils/library + +--- +- hosts: "{{ cli_master_test }}" + gather_facts: no + user: root + vars: + template_name: mysql-ephemeral + ns_name: test + + post_tasks: + - name: get the mysql-ephemeral template + oc_obj: + name: mysql-ephemeral + state: list + namespace: openshift + kind: template + register: mysqltempl + + - name: fix namespace + yedit: + src: /tmp/mysql-template + key: metadata.namespace + value: test + backup: false + content: "{{ mysqltempl.results.results[0] | to_yaml }}" + + - name: create the test namespace + oc_obj: + name: test + state: present + namespace: test + kind: namespace + content: + path: /tmp/ns_test + data: + apiVersion: v1 + kind: Namespace + metadata: + name: test + spec: + finalizers: + - openshift.io/origin + - kubernetes + register: mysqltempl + + - name: create the mysql-ephemeral template + oc_obj: + name: mysql-ephemeral + state: present + namespace: test + kind: template + files: + - /tmp/mysql-template + delete_after: True + register: mysqltempl + + - name: process mysql-ephemeral + oc_process: + template_name: mysql-ephemeral + namespace: test + params: + NAMESPACE: test + DATABASE_SERVICE_NAME: testdb + create: False + reconcile: false + register: procout + + - assert: + that: + - not procout.changed + - procout.results.results['items'][0]['metadata']['name'] == 'testdb' + - procout.results.results['items'][0]['kind'] == 'Service' + - procout.results.results['items'][1]['metadata']['name'] == 'testdb' + - procout.results.results['items'][1]['kind'] == 'DeploymentConfig' + msg: process failed on template + + - name: remove namespace test + oc_obj: + kind: namespace + name: test + namespace: test + state: absent diff --git a/roles/lib_openshift/src/test/integration/oc_route.yml b/roles/lib_openshift/src/test/integration/oc_route.yml index 620d5d5e7..b9d635eaa 100755 --- a/roles/lib_openshift/src/test/integration/oc_route.yml +++ b/roles/lib_openshift/src/test/integration/oc_route.yml @@ -75,3 +75,43 @@ - assert: that: "routeout.changed == False" msg: Route create not idempotent + + - name: delete route + oc_route: + name: test + namespace: default + state: absent + register: routeout + + - name: create route + oc_route: + name: test + namespace: default + tls_termination: passthrough + service_name: test + host: test.example + port: 8443 + register: routeout + + - assert: + that: + - "routeout.changed == True" + - "routeout.results['results'][0]['spec']['port']['targetPort'] == 8443" + msg: Route create not idempotent + + - name: create route + oc_route: + name: test + namespace: default + tls_termination: passthrough + service_name: test + host: test.example + port: 8444 + register: routeout + - debug: var=routeout + + - assert: + that: + - "routeout.changed == True" + - "routeout.results.results[0]['spec']['port']['targetPort'] == 8444" + msg: Route update not idempotent diff --git a/roles/lib_openshift/src/test/integration/oc_service.yml b/roles/lib_openshift/src/test/integration/oc_service.yml index 616694382..3eb6facef 100755 --- a/roles/lib_openshift/src/test/integration/oc_service.yml +++ b/roles/lib_openshift/src/test/integration/oc_service.yml @@ -123,6 +123,6 @@ - assert: that: - svc_out.changed == False - - svc_out.results.returncode == 1 + - svc_out.results.returncode == 0 - "'not found' in svc_out.results.stderr" msg: service get failed |