22# tasks file for symfony2
33- include : 00-facts.yml
44
5- - name : Create/prepare necessary directories for release and shared data .
5+ - name : Create base deployment directories .
66 file : state=directory path={{item.path}}
77 with_items :
88 - { path: "{{symfony_current_release_dir}}" }
99 - { path: "{{symfony_shared_dir}}" }
10- - { path: "{{symfony_shared_dir}}/app/config" }
11- - { path: "{{symfony_shared_dir}}/app/logs" }
10+
11+ - name : Create managed shared directories.
12+ file : state=directory path="{{symfony_shared_dir}}/{{item.path}}"
13+ with_items : " {{symfony_project_shared_folders}}"
1214
1315- name : Pull sources from the repository.
1416 git : repo={{symfony_project_repo}} dest={{symfony_current_release_dir}} version={{symfony_project_branch}} accept_hostkey=yes depth={{symfony_project_git_clone_depth}}
1517
16- # will be replaced with symlink
17- - name : Ensure logs directory is not present.
18- file : state=absent path="{{symfony_current_release_dir}}/app/logs"
18+ - name : Ensure shared folders are absent in release.
19+ file : state=absent path="{{symfony_current_release_dir}}/{{item.path}}"
20+ with_items : " {{symfony_project_shared_folders}}"
21+
22+ - name : Ensure managed folders are present.
23+ file : state=directory path="{{symfony_current_release_dir}}/{{item.path}}"
24+ with_items : " {{symfony_project_managed_folders}}"
1925
20- # read project's composer.json and store output
2126- name : Read composer.json
2227 shell : cat {{symfony_current_release_dir}}/composer.json
2328 register : composer_content
2429
25- - include : " {{ symfony_project_post_folder_creation_tasks | default('empty.yml') }}"
30+ - include : " {{symfony_project_post_folder_creation_tasks | default('empty.yml')}}"
2631
2732- name : Create symlinks to shared directories.
28- file : state=link src="{{symfony_shared_dir}}{{item.src}}" path="{{symfony_current_release_dir}}{{item.path}}"
29- with_items :
30- - { src: "/app/logs", path: "/app/logs" }
33+ file : state=link src="{{symfony_shared_dir}}/{{item.src}}" path="{{symfony_current_release_dir}}/{{item.path}}"
34+ with_items : " {{symfony_project_shared_folders}}"
3135
3236- include : 10-config.yml
3337
3438- include : 20-composer.yml
3539
36- - include : " {{ symfony_project_pre_cache_warmup_tasks | default('empty.yml') }}"
40+ - include : " {{symfony_project_pre_cache_warmup_tasks | default('empty.yml')}}"
3741
3842- include : 30-cache.yml
3943
4448- name : Create release file.
4549 copy : content="{{symfony_current_release}}" dest="{{symfony_current_release_dir}}/RELEASE" mode=644
4650
47- - include : " {{ symfony_project_pre_live_switch_tasks | default('empty.yml') }}"
51+ - include : " {{symfony_project_pre_live_switch_tasks | default('empty.yml')}}"
4852
4953- name : Create symlink for release.
5054 file : state=link src="{{symfony_current_release_dir}}" path="{{symfony_project_root}}/current"
5155
52- - include : " {{ symfony_project_post_live_switch_tasks | default('empty.yml') }}"
56+ - include : " {{symfony_project_post_live_switch_tasks | default('empty.yml')}}"
5357
5458- include : 60-clean_releases.yml
0 commit comments