diff options
Diffstat (limited to 'cvp/update/update.yml')
-rw-r--r-- | cvp/update/update.yml | 50 |
1 files changed, 50 insertions, 0 deletions
diff --git a/cvp/update/update.yml b/cvp/update/update.yml new file mode 100644 index 00000000..18b75b6b --- /dev/null +++ b/cvp/update/update.yml @@ -0,0 +1,50 @@ +--- +- hosts: "{{ host }}" + remote_user: "{{ user }}" + become: "yes" + become_method: sudo + vars: + user: "root" + port: "8000" + update_path: "/tmp/testapi" + image: "opnfv/testapi" + mode: "pull" + mongodb_url: "mongodb://172.17.0.1:27017" + swagger_url: "http://{{ host }}:{{ port }}" + tasks: + - name: create temporary update directory + file: + path: "{{ update_path }}" + state: directory + - name: transfer files in templates + copy: + src: templates/ + dest: "{{ update_path }}" + - name: transfer Dockerfile + copy: + src: ../docker/Dockerfile + dest: "{{ update_path }}" + when: mode == "build" + - name: backup mongodb database + command: "python {{ update_path }}/backup_mongodb.py -u {{ mongodb_url }} -o {{ update_path }}" + - name: stop and remove old versions + command: bash "{{ update_path }}/rm_olds.sh" + register: rm_result + - debug: msg="{{ rm_result.stderr }}" + - name: delete old docker images + command: bash "{{ update_path }}/rm_images.sh" + ignore_errors: true + - name: update mongodb + command: "python {{ update_path }}/update_mongodb.py -u {{ mongodb_url }}" + - name: docker build image + command: "docker build -t {{ image }} {{ update_path }}" + when: mode == "build" + - name: docker start testapi server + command: docker run -dti -p "{{ port }}:8000" + -e "mongodb_url={{ mongodb_url }}" + -e "swagger_url={{ swagger_url }}" + "{{ image }}" + - name: remove temporary update directory + file: + path: "{{ update_path }}" + state: absent |