Skip to content

Commit d2911cc

Browse files
committed
Improved documentation and examples
1 parent d39b208 commit d2911cc

File tree

3 files changed

+107
-2
lines changed

3 files changed

+107
-2
lines changed

README.md

+97
Original file line numberDiff line numberDiff line change
@@ -59,3 +59,100 @@ See the folder `examples/`:
5959

6060
- `django_deploy.yml`: playbook example
6161
- `django_sites.yml`: configuration example
62+
63+
Task description
64+
----------------
65+
66+
1. Check that project path in dev as specified in configuration is valid and has wsgi script
67+
68+
Checks that there is a valid local path specified in `django_sites.yml` and an `index.wsgi` exists.
69+
Avoids deploying wrong files.
70+
71+
2. Check if gulp file exists
72+
73+
So that to execute next step.
74+
75+
3. Execute gulp
76+
77+
Execute `gulp --production` locally.
78+
79+
4. Set Python executable
80+
81+
Auxiliary task which sets a variable with the Python executable.
82+
83+
5. Make virtualenv
84+
85+
Create a virtualenv if it does not exist.
86+
87+
6. Configure Apache
88+
89+
Configure Apache to execute the wsgi script using the provided template file.
90+
Only executes if a `domain_name` is provided.
91+
If the configuration changes, causes Plesk to reconfigure the domain in the end (notifies handler).
92+
If the configuration changes, causes Apache to restart in the end (notifies handler).
93+
94+
7. Configure New Relic
95+
96+
If `newrelic` is defined configures New Relic.
97+
98+
8. Open ownership
99+
100+
Open the target directory ownership to allow file copy.
101+
102+
9. Sync files
103+
104+
Syncs files to target directory.
105+
106+
:warning: Make sure that you have synced back any user uploaded files in `media` with manual `rsync`.
107+
108+
10. Upgrade pip
109+
110+
Upgrades pip, setup, wheel.
111+
112+
11. Install pip requirements
113+
114+
Install `requirements.txt` in virtualenv.
115+
116+
12. Set Django admin executable
117+
118+
Auxiliary task which sets a variable with the Django admin executable.
119+
120+
13. Set Django admin settings
121+
122+
Auxiliary task which sets a variable with the custom settings file (default `django_settings` variable).
123+
124+
14. Migrate
125+
126+
Runs migrations.
127+
128+
15. Flush data
129+
130+
Flushes data if `loaddata` and `flush` are both true.
131+
132+
16. Load data
133+
134+
Loads data if `loaddata` is true.
135+
136+
17. Collect static
137+
138+
Runs collect static.
139+
140+
18. Compile messages
141+
142+
Compiles i18n messages if `compile_msgs` is true.
143+
144+
19. Clear cache
145+
146+
Clears cache if `memcached` is true.
147+
148+
20. Post deployment script
149+
150+
Runs an optional `post_script`.
151+
152+
21. Close ownership to Plesk account group
153+
154+
Reset target directory ownership to the appropriate Plesk permissions.
155+
156+
22. Close ownership to Plesk server group
157+
158+
Reset target directory ownership to the appropriate Plesk permissions.

examples/django_deploy.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -23,4 +23,4 @@
2323
when: django_sites[project].disabled is defined
2424

2525
roles:
26-
- django_deploy
26+
- Wtower.django_deploy

examples/django_sites.yml

+9-1
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,15 @@
11
---
22
django_sites:
33
myproject:
4-
name: My Project
4+
disabled: false
5+
date: 19/3/2015
6+
app_name: My Project
57
domain_name: myproject.com
8+
dev_path: ~/workspace/python/project
69
host_path: /var/www/vhosts/mysite.com/myproject.com
10+
host_user: username
711
python_version: 3.4
12+
memcached: true
13+
data:
14+
- auth
15+
- app2

0 commit comments

Comments
 (0)