]>
Commit | Line | Data |
---|---|---|
1 | - name: Configure Drain | |
2 | when: syslog_server is defined or clever_syslog_server is defined | |
3 | command: clever-set-drain.sh | |
4 | args: | |
5 | chdir: "{{ clever_app_root }}" | |
6 | environment: | |
7 | SYSLOG_UDP_SERVER: "{{ clever_syslog_server | default(syslog_server) }}" | |
8 | CONFIGURATION_FILE: "{{ clever_login_file }}" | |
9 | ||
10 | - name: Configure Domain | |
11 | when: domain is defined or clever_domain is defined | |
12 | command: clever-set-domain.sh | |
13 | args: | |
14 | chdir: "{{ clever_app_root }}" | |
15 | environment: | |
16 | DOMAIN: "{{ clever_domain | default(domain) }}" | |
17 | CONFIGURATION_FILE: "{{ clever_login_file }}" | |
18 | ||
19 | - name: Push Environment | |
20 | shell: "clever env import < {{ clever_app_confdir }}/env" | |
21 | args: | |
22 | chdir: "{{ clever_app_root }}" | |
23 | environment: | |
24 | CONFIGURATION_FILE: "{{ clever_login_file }}" | |
25 | changed_when: false | |
26 | ||
27 | #TODO: Improve ssh-key validation | |
28 | - name: Accept Clever-Cloud servers | |
29 | shell: "ssh-keyscan -H push-par-clevercloud-customers.services.clever-cloud.com >> ~/.ssh/known_hosts" | |
30 | tags: | |
31 | - skip_ansible_lint | |
32 | ||
33 | - name: Deploy to Clever-Cloud | |
34 | shell: "clever deploy --force" | |
35 | args: | |
36 | chdir: "{{ clever_app_root }}" | |
37 | environment: | |
38 | CONFIGURATION_FILE: "{{ clever_login_file }}" | |
39 | register: clever_deploy | |
40 | ignore_errors: true | |
41 | tags: | |
42 | - skip_ansible_lint | |
43 | ||
44 | - name: First time push to Clever-Cloud needs a full git clone | |
45 | command: "git fetch --unshallow" | |
46 | args: | |
47 | chdir: "{{ clever_app_root }}" | |
48 | when: | |
49 | - clever_deploy is failed | |
50 | - clever_deploy.stderr is defined | |
51 | - clever_deploy.stderr is search("Failed to read git object") | |
52 | tags: | |
53 | - skip_ansible_lint | |
54 | ||
55 | - name: Deploy to Clever-Cloud (after first time push failed) | |
56 | shell: "clever deploy --force" | |
57 | args: | |
58 | chdir: "{{ clever_app_root }}" | |
59 | environment: | |
60 | CONFIGURATION_FILE: "{{ clever_login_file }}" | |
61 | when: | |
62 | - clever_deploy is failed | |
63 | - clever_deploy.stderr is defined | |
64 | - clever_deploy.stderr is search("Failed to read git object") | |
65 | register: clever_deploy | |
66 | ignore_errors: true | |
67 | tags: | |
68 | - skip_ansible_lint | |
69 | ||
70 | - name: Return deployment logs | |
71 | debug: | |
72 | var: clever_deploy.stdout | |
73 | ||
74 | - name: Return deployment errors | |
75 | debug: | |
76 | var: clever_deploy.stderr|default(clever_deploy) | |
77 | when: clever_deploy is failed | |
78 | ||
79 | - name: Fail on deployment errors | |
80 | fail: | |
81 | msg: "The clever deployment failed! Please check logs above." | |
82 | when: clever_deploy is failed |