From bcb22f38fc4126251c2ce6ab2fdc3eb074a898be Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Nicolas=20Mass=C3=A9?= Date: Tue, 23 Apr 2019 17:37:09 +0200 Subject: [PATCH] [skip travis] add a cleanup script --- tests/setup/cleanup.yml | 50 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 50 insertions(+) create mode 100644 tests/setup/cleanup.yml diff --git a/tests/setup/cleanup.yml b/tests/setup/cleanup.yml new file mode 100644 index 0000000..7153757 --- /dev/null +++ b/tests/setup/cleanup.yml @@ -0,0 +1,50 @@ +--- + +- name: Delete all services of a 3scale tenant + hosts: localhost + gather_facts: no + vars: + ansible_connection: local + threescale_api: https://nmasse-redhat-admin.3scale.net/admin/api + tasks: + - assert: + that: + - threescale_token is defined + msg: > + Please pass your 3scale Access Token in the 'threescale_token' extra var + + - name: Find Services + uri: + url: '{{ threescale_api }}/services.json?access_token={{ threescale_token }}' + register: find_services_response + changed_when: false + + - name: Delete services (except the default 'api' service) + uri: + url: '{{ threescale_api }}/services/{{ item }}.json?access_token={{ threescale_token }}' + method: DELETE + status_code: "200,404" + register: delete_service_response + changed_when: delete_service_response.status == 200 + with_items: '{{ services }}' + vars: + services: '{{ find_services_response.json|json_query(query) }}' + query: services[?service.system_name != `api`].service.id + + - name: Find ActiveDocs + uri: + url: '{{ threescale_api }}/active_docs.json?access_token={{ threescale_token }}' + register: find_active_docs_response + changed_when: false + + - name: Delete ActiveDocs (except the default 'api' ActiveDoc) + uri: + url: '{{ threescale_api }}/active_docs/{{ item }}.json?access_token={{ threescale_token }}' + method: DELETE + status_code: "200,404" + register: delete_active_docs_response + changed_when: delete_active_docs_response.status == 200 + with_items: '{{ active_docs }}' + vars: + active_docs: '{{ find_active_docs_response.json|json_query(query) }}' + query: api_docs[?api_doc.system_name != `api`].api_doc.id