-
-
Notifications
You must be signed in to change notification settings - Fork 608
/
prepare.yml
69 lines (60 loc) · 2.3 KB
/
prepare.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
---
- name: Check if deploy_prepare_before scripts exist
stat:
path: "{{ item }}"
delegate_to: localhost
register: deploy_prepare_before_paths
with_items: "{{ deploy_prepare_before | default([]) }}"
- include_tasks: "{{ include_path.item }}"
with_items: "{{ deploy_prepare_before_paths.results }}"
loop_control:
loop_var: include_path
when: include_path.stat.exists
tags: deploy-prepare-before
- name: Check for project repo subtree
stat:
path: "{{ project_source_path }}/{{ project.repo_subtree_path }}"
register: project_subtree_full_path
when: project.repo_subtree_path is defined
- name: Fail if repo_subtree_path is set incorrectly
fail:
msg: "repo subtree is set to '{{ project.repo_subtree_path }}' but that path does not exist in the repo. Edit `repo_subtree_path` for '{{ site }}' in `wordpress_sites.yml`."
when: project.repo_subtree_path is defined and not project_subtree_full_path.stat.exists
- name: Create new release dir
file:
path: "{{ deploy_helper.new_release_path }}"
mode: '0755'
state: directory
- name: Run git archive to populate new build dir
shell: |
set -eo pipefail
git archive {{ project_version }} | tar xf - -C {{ deploy_helper.new_release_path }}
args:
chdir: "{{ project_source_path }}"
executable: /bin/bash
when: project.repo_subtree_path is not defined
- name: Run git archive with subdirectory to populate new build dir
shell: |
set -eo pipefail
git archive {{ project_version }} {{ project.repo_subtree_path }} | tar -x --strip-components {{ project.repo_subtree_path.split('/') | count }} -f - -C {{ deploy_helper.new_release_path }}
args:
chdir: "{{ project_source_path }}"
executable: /bin/bash
when: project.repo_subtree_path is defined
- name: write unfinished file
file:
path: "{{ deploy_helper.new_release_path }}/{{ deploy_helper.unfinished_filename }}"
mode: '0744'
state: touch
- name: Check if deploy_prepare_after scripts exist
stat:
path: "{{ item }}"
delegate_to: localhost
register: deploy_prepare_after_paths
with_items: "{{ deploy_prepare_after | default([]) }}"
- include_tasks: "{{ include_path.item }}"
with_items: "{{ deploy_prepare_after_paths.results }}"
loop_control:
loop_var: include_path
when: include_path.stat.exists
tags: deploy-prepare-after