From 8fa0dde4720de58a268af5d0ce8818e7da236655 Mon Sep 17 00:00:00 2001 From: Paul Bonaud Date: Wed, 21 Nov 2018 13:20:56 +0100 Subject: deploy_task: Update clever CLI tools and use it instead of git push Updating to latest version of 1.1.1 helps to have a stable `clever deploy` command. This commit relies on the output of the command instead of manually pooling the results with `clever activity` command. --- tasks/deploy.yml | 53 +++++++++++++++++++++++++++++------------------------ tasks/setup.yml | 1 - 2 files changed, 29 insertions(+), 25 deletions(-) (limited to 'tasks') diff --git a/tasks/deploy.yml b/tasks/deploy.yml index 84ebe73..10c02c4 100644 --- a/tasks/deploy.yml +++ b/tasks/deploy.yml @@ -24,11 +24,15 @@ tags: - skip_ansible_lint -- name: Push to Clever-Cloud to trigger deployment - command: "git push --force git+ssh://git@push-par-clevercloud-customers.services.clever-cloud.com/{{ clever_app }}.git HEAD:refs/heads/master" +- name: Deploy to Clever-Cloud + shell: "clever deploy" args: chdir: "{{ clever_app_root }}" - register: clever_git_push + environment: + CONFIGURATION_FILE: "{{ clever_login_file }}" + register: clever_deploy + async: 900 # 15 minutes timeout + poll: 30 ignore_errors: true tags: - skip_ansible_lint @@ -38,33 +42,34 @@ args: chdir: "{{ clever_app_root }}" when: - - clever_git_push is failed - - clever_git_push.stderr is search("shallow update not allowed") + - clever_deploy is failed + - clever_deploy.stderr is search("Failed to read git object") tags: - skip_ansible_lint -- name: Push to Clever-Cloud to trigger deployment - command: "git push --force git+ssh://git@push-par-clevercloud-customers.services.clever-cloud.com/{{ clever_app }}.git HEAD:refs/heads/master" +- name: Deploy to Clever-Cloud + shell: "clever deploy" args: chdir: "{{ clever_app_root }}" - when: clever_git_push is failed + environment: + CONFIGURATION_FILE: "{{ clever_login_file }}" + when: clever_deploy is failed + register: clever_deploy + async: 900 # 15 minutes timeout + poll: 30 + ignore_errors: true tags: - skip_ansible_lint -- name: Watch deployment status - command: "clever-wait-deploy.sh '{{ clever_app_root }}'" - async: 900 - poll: 0 - register: long_command - environment: - CONFIGURATION_FILE: "{{ clever_login_file }}" - changed_when: False +- name: Return deployment logs + debug: + var: clever_deploy.stdout + +- name: Return deployment errors + debug: + var: clever_deploy.stderr + when: clever_deploy is failed -# Waits up to 15 minutes -- name: Wait for deployment completion - async_status: - jid: "{{ long_command.ansible_job_id }}" - register: job_result - until: job_result.finished - delay: 30 - retries: 30 +- name: Fail on deployment errors + fail: "The clever deployment failed! Please check logs above." + when: clever_deploy is failed diff --git a/tasks/setup.yml b/tasks/setup.yml index f85a635..33b1ff6 100644 --- a/tasks/setup.yml +++ b/tasks/setup.yml @@ -26,4 +26,3 @@ with_items: - clever-set-domain.sh - clever-set-drain.sh - - clever-wait-deploy.sh -- cgit v1.2.3