| --- |
| # tasks file for apigee-opdk-setup-bootstrap-rollback |
| - name: Gracefully Stop apigee components, if possible |
| ignore_errors: yes |
| shell: '{{ apigee_all }} stop' |
| |
| - name: Apigee uninstall |
| ignore_errors: yes |
| shell: "{{ apigee_service }} apigee-service uninstall" |
| when: apigee_service is defined and apigee_service | trim | length > 0 |
| |
| - name: Use no proxy definitions |
| include_tasks: no_proxy.yml |
| when: http_proxy is not defined and https_proxy is not defined |
| |
| - name: Use proxy definitions |
| include_tasks: with_proxy.yml |
| when: http_proxy is defined and https_proxy is defined |
| |
| - name: Set target bootstrap script name for 4.16.01 |
| set_fact: |
| bootstrap_script: '{{ opdk_installer_path }}/bootstrap.sh' |
| when: opdk_version | version_compare('4.16.01', '==') |
| |
| - name: Set target bootstrap script name for version > 4.16.01 |
| set_fact: |
| bootstrap_script: '{{ opdk_installer_path }}/bootstrap_{{ opdk_version }}.sh' |
| when: opdk_version | version_compare('4.16.01', '>') |
| |
| - name: Find files to remove |
| find: |
| path: '{{ item.dir }}' |
| pattern: '{{ item.pattern }}' |
| file_type: file |
| recurse: yes |
| with_items: |
| - { dir: "/opt/nginx/", pattern: "conf.d" } |
| - { dir: "/etc/yum/vars/", pattern: "apigee*" } |
| - { dir: "/tmp/", pattern: "edge" } |
| register: remove |
| |
| - name: Clear all artifacts from YUM repo |
| become: yes |
| shell: 'yum clean all' |
| |
| - name: Remove files |
| file: |
| path: '{{ item.1.path }}' |
| state: absent |
| follow: yes |
| with_subelements: |
| - "{{ remove.results }}" |
| - files |
| |
| - block: |
| - name: Find apigee & edge folders to remove on rollback |
| find: |
| path: '{{ item.dir }}' |
| pattern: '{{ item.pattern }}' |
| recurse: yes |
| file_type: '{{ item.file_type }}' |
| register: apigee_folders |
| with_items: |
| - { dir: "{{ apigee_home }}", pattern: "apigee*", file_type: "directory" } |
| - { dir: "{{ apigee_home }}", pattern: "edge*", file_type: "directory" } |
| - { dir: "{{ apigee_home }}", pattern: "edge*", file_type: "directory" } |
| - { dir: "{{ opdk_installer_path }}", pattern: "*.log", file_type: "file" } |
| - { dir: "{{ opdk_installer_path }}", pattern: "bootstrap*", file_type: "file" } |
| - { dir: "/opt", pattern: "nginx", file_type: "directory" } |
| - { dir: "{{ apigee_home }}", pattern: "data", file_type: "directory" } |
| - { dir: "{{ apigee_home }}", pattern: "etc", file_type: "directory" } |
| - { dir: "{{ apigee_home }}", pattern: "token", file_type: "directory" } |
| - { dir: "{{ apigee_home }}", pattern: "var/lock", file_type: "directory" } |
| - { dir: "{{ apigee_home }}", pattern: "var/run", file_type: "directory" } |
| |
| - name: Remove files |
| file: |
| path: '{{ item.1.path }}' |
| state: absent |
| follow: yes |
| with_subelements: |
| - "{{ apigee_folders.results }}" |
| - files |
| |
| # - name: Find edge folders to remove on rollback |
| # find: |
| # path: '{{ apigee_home }}' |
| # pattern: 'edge*' |
| # recurse: no |
| # file_type: directory |
| # register: edge_folders |
| |
| # - name: Find /tmp scripts & logs to remove on rollback |
| # find: |
| # path: '{{ opdk_installer_path }}' |
| # pattern: '*.log' |
| # file_type: 'file' |
| # register: tmp_log_files |
| |
| # - name: Find /tmp scripts & logs to remove on rollback |
| # find: |
| # path: '{{ opdk_installer_path }}' |
| # pattern: 'bootstrap*' |
| # file_type: 'file' |
| # register: bootstrap_files |
| |
| # - name: Remove found apigee & edge folders on rollback |
| # ignore_errors: yes |
| # become: yes |
| # file: |
| # path: '{{ item.path }}' |
| # state: absent |
| # follow: yes |
| # with_items: |
| # - '{{ apigee_folders.files }}' |
| # - '{{ edge_folders.files }}' |
| # - '{{ tmp_log_files.files }}' |
| # - '{{ bootstrap_files.files }}' |
| |
| # - name: Remove nginx |
| # file: |
| # path: "{{ item }}" |
| # state: absent |
| # with_items: |
| # - /opt/nginx |
| # - "{{ apigee_home }}/data" |
| # - "{{ apigee_home }}/etc" |
| # - "{{ apigee_home }}/token" |
| # - "{{ apigee_home }}/var/lock" |
| # - "{{ apigee_home }}/var/run" |
| |
| - name: Determine current user |
| shell: whoami |
| register: whoami |
| |
| - name: Determine if safe to kill user owned process |
| set_fact: |
| kill_user: '{{ whoami.stdout != opdk_user_name }}' |
| |
| - name: Release any apigee user owned processes |
| ignore_errors: yes |
| become: yes |
| shell: 'pkill -u {{ opdk_user_name }}' |
| when: kill_user |
| async: 45 |
| poll: 0 |
| |
| when: remove_apigee is defined and remove_apigee |
| |
| - name: Remove logs |
| file: |
| path: '{{ apigee_home }}/var/log/' |
| state: absent |
| when: clear_logs is defined and clear_logs |