Merge lp:~dooferlad/linaro-license-protection/django-configs-debug-off into lp:~linaro-automation/linaro-license-protection/trunk

Proposed by James Tunnicliffe
Status: Rejected
Rejected by: Данило Шеган
Proposed branch: lp:~dooferlad/linaro-license-protection/django-configs-debug-off
Merge into: lp:~linaro-automation/linaro-license-protection/trunk
Diff against target: 827 lines (+759/-0) (has conflicts)
13 files modified
README (+213/-0)
apache/releases.linaro.org (+39/-0)
apache/snapshots.linaro.org (+154/-0)
apache/staging.releases.linaro.org (+39/-0)
apache/staging.snapshots.linaro.org (+154/-0)
django/settings_releases.py (+22/-0)
django/settings_snapshots.py (+22/-0)
django/settings_staging_releases.py (+20/-0)
django/settings_staging_snapshots.py (+20/-0)
wsgi/wsgi_releases.py (+19/-0)
wsgi/wsgi_snapshots.py (+19/-0)
wsgi/wsgi_staging_releases.py (+19/-0)
wsgi/wsgi_staging_snapshots.py (+19/-0)
Conflict adding file README.  Moved existing file to README.moved.
To merge this branch: bzr merge lp:~dooferlad/linaro-license-protection/django-configs-debug-off
Reviewer Review Type Date Requested Status
Данило Шеган (community) Disapprove
Review via email: mp+120411@code.launchpad.net
To post a comment you must log in.
Revision history for this message
Данило Шеган (danilo) wrote :

You should propose against ~linaro-infrastructure/linaro-license-protection/configs :)

review: Disapprove
Revision history for this message
Данило Шеган (danilo) wrote :

Unmerged revisions

19. By James Tunnicliffe

Disabled DEBUG for production instances

18. By Данило Шеган

Move deployment steps for upload framework here as well.

17. By Данило Шеган

Fallback to "templates" dir for separate sites.

16. By Данило Шеган

Revert previous change.

15. By Данило Шеган

Clear-up system path in wsgi file.

14. By Данило Шеган

Update SSL cert file on snapshots.linaro.org.

13. By Данило Шеган

Update the SSL statement as well.

12. By Данило Шеган

Move deployment steps out of the code README and into the configs README.

11. By Данило Шеган

Set DJANGO_SETTINGS_MODULE unconditionally to avoid variable-based flakiness in mod_wsgi (for production configs as well).

10. By Данило Шеган

Set DJANGO_SETTINGS_MODULE unconditionally to avoid variable-based flakiness in mod_wsgi.

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== added file 'README'
2--- README 1970-01-01 00:00:00 +0000
3+++ README 2012-08-20 15:32:38 +0000
4@@ -0,0 +1,213 @@
5+Linaro License Protection configuration
6+=======================================
7+
8+This branch contains current production configuration for
9+
10+ * releases.linaro.org (hosted on mombin.canonical.com)
11+ * snapshots.linaro.org (mombin)
12+ * staging.releases.linaro.org (kahaku.canonical.com)
13+ * staging.snapshots.linaro.org (kahaku.canonical.com)
14+
15+
16+Dependencies
17+------------
18+
19+libapache2-mod-xsendfile >= 0.10
20+libapache2-mod-python
21+python-django >= 1.3.1
22+python-django-openid-auth
23+python-apache-openid
24+
25+python-apache-openid is needed until we migrate existing apache
26+openid-protected directories to the new setup.
27+
28+
29+Pushing framework on snapshots.linaro.org
30+-----------------------------------------
31+
32+Pushing/uploading side is currently implemented as a multi-system setup:
33+
34+ * configuration on jenkins
35+ * configuration of users on server
36+
37+Configuration of jenkins
38+........................
39+
40+ * We are using Publish-over-SSH plugin for jenkins
41+
42+ * We perform two build (not publish, to allow for LAVA to have known URLs)
43+ steps:
44+
45+ * publish artifacts over SSH (ends up on a private location on the server)
46+
47+ * call out a trigger script over SSH (to move files securely to a public
48+ location)
49+
50+ * We use strictly "push from master" in advanced settings of publish-over-ssh
51+ plugin, and keep private keys for both actions above on the master:
52+
53+ /home/ubuntu/snapshots-sync2/linaro-android-build-publish —
54+ linaro-android-build-publish
55+ /home/ubuntu/snapshots-sync2/linaro-android-build-publish-trigger —
56+ linaro-android-build-publish-trigger
57+
58+Configuration of users on the receiving server (snapshots.l.o)
59+..............................................................
60+
61+For the two actions above, we have two separate users for all hosts
62+accessing the system (two for android-build.linaro.org and another two
63+for ci.linaro.org at this time).
64+
65+One of the users is a sftp/push user, and another is the trigger user that
66+shuffles the files around.
67+
68+Current users and their configurations:
69+
70+ * linaro-android-build-publish
71+ /etc/ssh/user-authorized-keys/linaro-android-build-publish
72+
73+ command="/usr/lib/sftp-server",no-pty,no-port-forwarding,\
74+ no-X11-forwarding,no-agent-forwarding,from="50.17.250.69" \
75+ <PUBLIC-SSH-KEY-DATA>
76+
77+ (chrooted to /srv/snapshots.linaro.org/uploads/)
78+
79+ * linaro-android-build-publish-trigger:
80+
81+ /etc/ssh/user-authorized-keys/linaro-android-build-publish-trigger
82+
83+ command="/home/linaro-android-build-publish-trigger/scripts\
84+ /trigger-linaro-android-build-publish.sh \
85+ ${SSH_ORIGINAL_COMMAND#* }",\
86+ no-pty,no-port-forwarding,no-X11-forwarding,no-agent-forwarding,
87+ from="50.17.250.69" <PUBLIC-SSH-KEY-DATA>
88+
89+ The script being executed passes parameters to publish_to_snapshots
90+ which moves files from /uploads/ into appropriate public directory:
91+
92+ #!/bin/sh
93+ if [ "$(id -un)" != "linaro-android-build-publish-trigger" ]; then
94+ echo "This script is designed to be run as linaro-android-build-publish-trigger user"
95+ exit 1
96+ fi
97+ sudo -u linaro-android-build-publish /home/linaro-android-build-publish/linaro-license-protection/scripts/publish_to_snapshots.py "$@"
98+
99+ * linaro-ci-publish
100+
101+ Exactly the same as linaro-android-build-publish, except for the IP
102+ (allowing ci.linaro.org from 50.17.200.206) and SSH key data.
103+
104+ * linaro-ci-publish-trigger
105+
106+ Like linaro-android-build-publish-trigger, with different IP
107+ and SSH key data. Script lives in
108+
109+ /home/linaro-ci-publish-trigger/scripts/trigger-linaro-ci-publish.sh
110+
111+ and is of similar structure to the one for the user
112+ linaro-android-build-publish-trigger.
113+
114+android-build.linaro.org
115+........................
116+
117+Runs Jenkins and uses SFTP plugin to access the above two users. Private
118+keys live in
119+
120+ /home/ubuntu/snapshots-sync2/linaro-android-build-publish —
121+ linaro-android-build-publish
122+ /home/ubuntu/snapshots-sync2/linaro-android-build-publish-trigger —
123+ linaro-android-build-publish-trigger
124+
125+To ensure serialization of steps, and allow LAVA submission, these happen as
126+build steps, and not as publishing steps.
127+
128+Deployment steps
129+----------------
130+
131+This documents our current deployment while at the same time representing
132+an example production deployment.
133+
134+1. Install the dependencies
135+ (see the "Dependencies" section)
136+
137+2. Get the code
138+
139+ mkdir -p /srv/shared-branches
140+ cd /srv/shared-branches
141+ bzr branch lp:linaro-license-protection
142+
143+ (we are actually using http URLs since lp: defaults to bzr+ssh which
144+ doesn't work on system accounts)
145+
146+3. Get the configuration
147+
148+ Configuration files for deploying to snapshots.linaro.org,
149+ releases.linaro.org, staging.snapshots.linaro.org
150+ and staging.releases.linaro.org all live in
151+
152+ lp:linaro-license-protection/configs
153+
154+ We need to branch that into /srv/shared-branches as well:
155+
156+ cd /srv/shared-branches
157+ bzr branch lp:linaro-license-protection/configs linaro-license-protection-configs
158+
159+4. Checkout branches for the services you want to use:
160+
161+ (cd /srv/staging.snapshots.linaro.org &&
162+ bzr checkout /srv/shared-branches/linaro-license-protection-configs configs &&
163+ bzr checkout /srv/shared-branches/linaro-license-protection)
164+
165+ Replace "/srv/staging.snapshots.linaro.org" with one of
166+ /srv/staging.releases.linaro.org
167+ /srv/snapshots.linaro.org
168+ /srv/releases.linaro.org
169+
170+ depending on the service you are deploying.
171+
172+ If you use these paths, none of the config files will need updating.
173+
174+5. Configure apache2
175+
176+ Make sure mod-xsendfile and mod-python are enabled.
177+ Copy appropriate
178+ /srv/staging.snapshots.linaro.org/configs/apache/staging.snapshots.linaro.org
179+ files to /etc/apache2/sites-available
180+
181+ Add appropriate NameVirtualHost directive to
182+
183+ /etc/apache2/sites-enabled/000-default
184+
185+ Run "a2ensite staging.snapshots.linaro.org".
186+
187+ You also need to set up SSL certificate for *snapshots.linaro.org.
188+
189+6. Create databases and set up static files
190+
191+ Make sure appropriate configs/django directory is in the PYTHONPATH
192+ and set DJANGO_SETTINGS_MODULE and then run django-admin:
193+
194+ export PYTHONPATH=/srv/staging.snapshots.linaro.org:/srv/staging.snapshots.linaro.org/linaro-license-protection:/srv/staging.snapshots.linaro.org/configs/django
195+ export DJANGO_SETTINGS_MODULE=settings_staging_snapshots
196+ mkdir -p /srv/staging.snapshots.linaro.org/db
197+ django-admin syncdb --noinput
198+ django-admin collectstatic --noinput
199+
200+7. Set up a cron job to keep code updating automatically
201+
202+ You may want to automatically keep code up to date (mostly for staging)
203+ instances.
204+
205+ There is
206+
207+ scripts/update-staging.py
208+
209+ which can be run from a cronjob to keep the above deployment always
210+ up to date.
211+
212+8. Ensure license_protected_downloads/config.py contains relevant white-listed
213+ IP addresses:
214+
215+ For releases.linaro.org:
216+ * android-build.linaro.org (50.17.250.69)
217+ * validation.linaro.org (213.123.120.124)
218
219=== renamed file 'README' => 'README.moved'
220=== added directory 'apache'
221=== added file 'apache/releases.linaro.org'
222--- apache/releases.linaro.org 1970-01-01 00:00:00 +0000
223+++ apache/releases.linaro.org 2012-08-20 15:32:38 +0000
224@@ -0,0 +1,39 @@
225+<VirtualHost 91.189.95.80:80>
226+ Alias /static/ /srv/releases.linaro.org/linaro-license-protection/static/
227+ DocumentRoot /srv/releases.linaro.org/www
228+ ServerName releases.linaro.org
229+ ServerAdmin webmaster@linaro.org
230+ CustomLog /var/log/apache2/releases.linaro.org-access.log combined
231+ ErrorLog /var/log/apache2/releases.linaro.org-error.log
232+
233+ <Directory /srv/releases.linaro.org/linaro-license-protection/static>
234+ Order deny,allow
235+ Allow from all
236+ </Directory>
237+
238+ <Directory /srv/releases.linaro.org/www>
239+ Order deny,allow
240+ Allow from all
241+ </Directory>
242+
243+ XSendFile on
244+ XSendFilePath /srv/releases.linaro.org/www
245+
246+ WSGIScriptAlias / /srv/releases.linaro.org/configs/wsgi/wsgi_releases.py
247+ WSGIDaemonProcess linaro-license-protection-releases
248+
249+ <Directory /srv/releases.linaro.org/configs/wsgi>
250+ <Files wsgi_releases.py>
251+ Order deny,allow
252+ Allow from all
253+ </Files>
254+ </Directory>
255+
256+ <Directory />
257+ IndexOptions NameWidth=* +SuppressDescription
258+ Options +Indexes +FollowSymLinks
259+ IndexIgnore favicon.ico HEADER.html
260+ AllowOverride FileInfo Indexes
261+ </Directory>
262+
263+</VirtualHost>
264
265=== added file 'apache/snapshots.linaro.org'
266--- apache/snapshots.linaro.org 1970-01-01 00:00:00 +0000
267+++ apache/snapshots.linaro.org 2012-08-20 15:32:38 +0000
268@@ -0,0 +1,154 @@
269+<VirtualHost 91.189.95.80:80>
270+
271+ Alias /static/ /srv/snapshots.linaro.org/linaro-license-protection/static/
272+ DocumentRoot /srv/snapshots.linaro.org/www
273+ ServerName snapshots.linaro.org
274+ ServerAdmin webmaster@linaro.org
275+ CustomLog /var/log/apache2/snapshots.linaro.org-access.log combined
276+ ErrorLog /var/log/apache2/snapshots.linaro.org-error.log
277+
278+ Redirect /hwpacks https://snapshots.linaro.org/hwpacks
279+ Redirect /precise/restricted https://snapshots.linaro.org/precise/restricted
280+
281+ <Directory /srv/snapshots.linaro.org/linaro-license-protection/static>
282+ Order deny,allow
283+ Allow from all
284+ </Directory>
285+
286+ <Directory /srv/snapshots.linaro.org/www>
287+ Order deny,allow
288+ Allow from all
289+ </Directory>
290+
291+ XSendFile on
292+ XSendFilePath /srv/snapshots.linaro.org/www
293+
294+ WSGIScriptAlias / /srv/snapshots.linaro.org/configs/wsgi/wsgi_snapshots.py
295+ WSGIDaemonProcess linaro-license-protection-snapshots
296+
297+ <Directory /srv/snapshots.linaro.org/configs/wsgi>
298+ <Files wsgi_snapshots.py>
299+ Order deny,allow
300+ Allow from all
301+ </Files>
302+ </Directory>
303+
304+ <Directory />
305+ IndexOptions NameWidth=* +SuppressDescription
306+ Options +Indexes +FollowSymLinks
307+ IndexIgnore favicon.ico HEADER.html
308+ AllowOverride FileInfo Indexes
309+ </Directory>
310+
311+</VirtualHost>
312+
313+<VirtualHost 91.189.95.80:443>
314+
315+ Alias /static/ /srv/snapshots.linaro.org/linaro-license-protection/static/
316+ DocumentRoot /srv/snapshots.linaro.org/www
317+ ServerName snapshots.linaro.org
318+ ServerAdmin webmaster@linaro.org
319+ CustomLog /var/log/apache2/snapshots.linaro.org-access.log combined
320+ ErrorLog /var/log/apache2/snapshots.linaro.org-error.log
321+
322+ SSLEngine On
323+ SSLCertificateFile /etc/apache2/ssl/staging.snapshots.linaro.org.pem
324+
325+ <Directory /srv/snapshots.linaro.org/linaro-license-protection/static>
326+ Order deny,allow
327+ Allow from all
328+ </Directory>
329+
330+ <Directory /srv/snapshots.linaro.org/www>
331+ Order deny,allow
332+ Allow from all
333+ </Directory>
334+
335+ XSendFile on
336+ XSendFilePath /srv/snapshots.linaro.org/www
337+
338+ WSGIScriptAlias / /srv/snapshots.linaro.org/configs/wsgi/wsgi_snapshots.py
339+ WSGIDaemonProcess linaro-license-protection-snapshots-ssl
340+
341+ <Directory /srv/snapshots.linaro.org/configs/wsgi>
342+ <Files wsgi_snapshots.py>
343+ Order deny,allow
344+ Allow from all
345+ </Files>
346+ </Directory>
347+
348+ <Directory />
349+ IndexOptions NameWidth=* +SuppressDescription
350+ Options +Indexes +FollowSymLinks
351+ IndexIgnore favicon.ico HEADER.html
352+ AllowOverride FileInfo Indexes
353+ </Directory>
354+
355+ <Location "/hwpacks">
356+ PythonAccessHandler apache_openid::protect
357+ PythonOption handler openidteams
358+ PythonOption authorized-teams-list-url "file:///etc/apache2/security/all-private-hwpack-teams.txt"
359+ PythonOption action-path "/openid/"
360+ </Location>
361+
362+ <Location "/openid/">
363+ Allow from all
364+ SetHandler mod_python
365+ PythonAccessHandler apache_openid::protect
366+ PythonOption handler openidteams
367+ PythonOption store-type file
368+ PythonOption store-directory /var/cache/apache2/openid/
369+ PythonOption allowed-op-list-url "file:///etc/apache2/security/allowed-ops.txt"
370+ PythonOption authorized-teams-list-url "file:///etc/apache2/security/all-private-hwpack-teams.txt"
371+ PythonOption authorized-teams-list-url "file:///etc/apache2/security/linaro-teams.txt"
372+ PythonOption action-path "/openid/"
373+ </Location>
374+
375+ <Location "/precise/restricted">
376+ PythonAccessHandler apache_openid::protect
377+ PythonOption handler openidteams
378+ PythonOption authorized-teams-list-url "file:///etc/apache2/security/linaro-teams.txt"
379+ PythonOption action-path "/openid/"
380+ </Location>
381+
382+ Alias /hwpacks/freescale /srv/landing-teams/hwpacks/freescale
383+ <Location "/hwpacks/freescale">
384+ PythonAccessHandler apache_openid::protect
385+ PythonOption handler openidteams
386+ PythonOption authorized-teams-list-url "file:///etc/apache2/security/freescale-private-hwpack-teams.txt"
387+ PythonOption action-path "/openid/"
388+ </Location>
389+
390+ Alias /hwpacks/samsung /srv/landing-teams/hwpacks/samsung
391+ <Location "/hwpacks/samsung">
392+ PythonAccessHandler apache_openid::protect
393+ PythonOption handler openidteams
394+ PythonOption authorized-teams-list-url "file:///etc/apache2/security/samsung-private-hwpack-teams.txt"
395+ PythonOption action-path "/openid/"
396+ </Location>
397+
398+ Alias /hwpacks/ste /srv/landing-teams/hwpacks/ste
399+ <Location "/hwpacks/ste">
400+ PythonAccessHandler apache_openid::protect
401+ PythonOption handler openidteams
402+ PythonOption authorized-teams-list-url "file:///etc/apache2/security/ste-private-hwpack-teams.txt"
403+ PythonOption action-path "/openid/"
404+ </Location>
405+
406+ Alias /hwpacks/ti /srv/landing-teams/hwpacks/ti
407+ <Location "/hwpacks/ti">
408+ PythonAccessHandler apache_openid::protect
409+ PythonOption handler openidteams
410+ PythonOption authorized-teams-list-url "file:///etc/apache2/security/ti-private-hwpack-teams.txt"
411+ PythonOption action-path "/openid/"
412+ </Location>
413+
414+ Alias /hwpacks/arm /srv/landing-teams/hwpacks/arm
415+ <Location "/hwpacks/arm">
416+ PythonAccessHandler apache_openid::protect
417+ PythonOption handler openidteams
418+ PythonOption authorized-teams-list-url "file:///etc/apache2/security/arm-private-hwpack-teams.txt"
419+ PythonOption action-path "/openid/"
420+ </Location>
421+
422+</VirtualHost>
423
424=== added file 'apache/staging.releases.linaro.org'
425--- apache/staging.releases.linaro.org 1970-01-01 00:00:00 +0000
426+++ apache/staging.releases.linaro.org 2012-08-20 15:32:38 +0000
427@@ -0,0 +1,39 @@
428+<VirtualHost 91.189.95.80:80>
429+ Alias /static/ /srv/staging.releases.linaro.org/linaro-license-protection/static/
430+ DocumentRoot /srv/staging.releases.linaro.org/www
431+ ServerName staging.releases.linaro.org
432+ ServerAdmin webmaster@linaro.org
433+ CustomLog /var/log/apache2/staging.releases.linaro.org-access.log combined
434+ ErrorLog /var/log/apache2/staging.releases.linaro.org-error.log
435+
436+ <Directory /srv/staging.releases.linaro.org/linaro-license-protection/static>
437+ Order deny,allow
438+ Allow from all
439+ </Directory>
440+
441+ <Directory /srv/staging.releases.linaro.org/www>
442+ Order deny,allow
443+ Allow from all
444+ </Directory>
445+
446+ XSendFile on
447+ XSendFilePath /srv/staging.releases.linaro.org/www
448+
449+ WSGIScriptAlias / /srv/staging.releases.linaro.org/configs/wsgi/wsgi_staging_releases.py
450+ WSGIDaemonProcess linaro-license-protection-staging-releases
451+
452+ <Directory /srv/staging.releases.linaro.org/configs/wsgi>
453+ <Files wsgi_staging_releases.py>
454+ Order deny,allow
455+ Allow from all
456+ </Files>
457+ </Directory>
458+
459+ <Directory />
460+ IndexOptions NameWidth=* +SuppressDescription
461+ Options +Indexes +FollowSymLinks
462+ IndexIgnore favicon.ico HEADER.html
463+ AllowOverride FileInfo Indexes
464+ </Directory>
465+
466+</VirtualHost>
467
468=== added file 'apache/staging.snapshots.linaro.org'
469--- apache/staging.snapshots.linaro.org 1970-01-01 00:00:00 +0000
470+++ apache/staging.snapshots.linaro.org 2012-08-20 15:32:38 +0000
471@@ -0,0 +1,154 @@
472+<VirtualHost 91.189.95.80:80>
473+
474+ Alias /static/ /srv/staging.snapshots.linaro.org/linaro-license-protection/static/
475+ DocumentRoot /srv/staging.snapshots.linaro.org/www
476+ ServerName staging.snapshots.linaro.org
477+ ServerAdmin webmaster@linaro.org
478+ CustomLog /var/log/apache2/staging.snapshots.linaro.org-access.log combined
479+ ErrorLog /var/log/apache2/staging.snapshots.linaro.org-error.log
480+
481+ Redirect /hwpacks https://staging.snapshots.linaro.org/hwpacks
482+ Redirect /precise/restricted https://staging.snapshots.linaro.org/precise/restricted
483+
484+ <Directory /srv/staging.snapshots.linaro.org/linaro-license-protection/static>
485+ Order deny,allow
486+ Allow from all
487+ </Directory>
488+
489+ <Directory /srv/staging.snapshots.linaro.org/www>
490+ Order deny,allow
491+ Allow from all
492+ </Directory>
493+
494+ XSendFile on
495+ XSendFilePath /srv/staging.snapshots.linaro.org/www
496+
497+ WSGIScriptAlias / /srv/staging.snapshots.linaro.org/configs/wsgi/wsgi_staging_snapshots.py
498+ WSGIDaemonProcess linaro-license-protection-staging-snapshots
499+
500+ <Directory /srv/staging.snapshots.linaro.org/configs/wsgi>
501+ <Files wsgi_staging_snapshots.py>
502+ Order deny,allow
503+ Allow from all
504+ </Files>
505+ </Directory>
506+
507+ <Directory />
508+ IndexOptions NameWidth=* +SuppressDescription
509+ Options +Indexes +FollowSymLinks
510+ IndexIgnore favicon.ico HEADER.html
511+ AllowOverride FileInfo Indexes
512+ </Directory>
513+
514+</VirtualHost>
515+
516+<VirtualHost 91.189.95.80:443>
517+
518+ Alias /static/ /srv/staging.snapshots.linaro.org/linaro-license-protection/static/
519+ DocumentRoot /srv/staging.snapshots.linaro.org/www
520+ ServerName staging.snapshots.linaro.org
521+ ServerAdmin webmaster@linaro.org
522+ CustomLog /var/log/apache2/staging.snapshots.linaro.org-access.log combined
523+ ErrorLog /var/log/apache2/staging.snapshots.linaro.org-error.log
524+
525+ SSLEngine On
526+ SSLCertificateFile /etc/apache2/ssl/staging.snapshots.linaro.org.pem
527+
528+ <Directory /srv/staging.snapshots.linaro.org/linaro-license-protection/static>
529+ Order deny,allow
530+ Allow from all
531+ </Directory>
532+
533+ <Directory /srv/staging.snapshots.linaro.org/www>
534+ Order deny,allow
535+ Allow from all
536+ </Directory>
537+
538+ XSendFile on
539+ XSendFilePath /srv/staging.snapshots.linaro.org/www
540+
541+ WSGIScriptAlias / /srv/staging.snapshots.linaro.org/configs/wsgi/wsgi_staging_snapshots.py
542+ WSGIDaemonProcess linaro-license-protection-staging-snapshots-ssl
543+
544+ <Directory /srv/staging.snapshots.linaro.org/configs/wsgi>
545+ <Files wsgi_staging_snapshots.py>
546+ Order deny,allow
547+ Allow from all
548+ </Files>
549+ </Directory>
550+
551+ <Directory />
552+ IndexOptions NameWidth=* +SuppressDescription
553+ Options +Indexes +FollowSymLinks
554+ IndexIgnore favicon.ico HEADER.html
555+ AllowOverride FileInfo Indexes
556+ </Directory>
557+
558+ <Location "/hwpacks">
559+ PythonAccessHandler apache_openid::protect
560+ PythonOption handler openidteams
561+ PythonOption authorized-teams-list-url "file:///etc/apache2/security/all-private-hwpack-teams.txt"
562+ PythonOption action-path "/openid/"
563+ </Location>
564+
565+ <Location "/openid/">
566+ Allow from all
567+ SetHandler mod_python
568+ PythonAccessHandler apache_openid::protect
569+ PythonOption handler openidteams
570+ PythonOption store-type file
571+ PythonOption store-directory /var/cache/apache2/openid/
572+ PythonOption allowed-op-list-url "file:///etc/apache2/security/allowed-ops.txt"
573+ PythonOption authorized-teams-list-url "file:///etc/apache2/security/all-private-hwpack-teams.txt"
574+ PythonOption authorized-teams-list-url "file:///etc/apache2/security/linaro-teams.txt"
575+ PythonOption action-path "/openid/"
576+ </Location>
577+
578+ <Location "/precise/restricted">
579+ PythonAccessHandler apache_openid::protect
580+ PythonOption handler openidteams
581+ PythonOption authorized-teams-list-url "file:///etc/apache2/security/linaro-teams.txt"
582+ PythonOption action-path "/openid/"
583+ </Location>
584+
585+ Alias /hwpacks/freescale /srv/landing-teams/hwpacks/freescale
586+ <Location "/hwpacks/freescale">
587+ PythonAccessHandler apache_openid::protect
588+ PythonOption handler openidteams
589+ PythonOption authorized-teams-list-url "file:///etc/apache2/security/freescale-private-hwpack-teams.txt"
590+ PythonOption action-path "/openid/"
591+ </Location>
592+
593+ Alias /hwpacks/samsung /srv/landing-teams/hwpacks/samsung
594+ <Location "/hwpacks/samsung">
595+ PythonAccessHandler apache_openid::protect
596+ PythonOption handler openidteams
597+ PythonOption authorized-teams-list-url "file:///etc/apache2/security/samsung-private-hwpack-teams.txt"
598+ PythonOption action-path "/openid/"
599+ </Location>
600+
601+ Alias /hwpacks/ste /srv/landing-teams/hwpacks/ste
602+ <Location "/hwpacks/ste">
603+ PythonAccessHandler apache_openid::protect
604+ PythonOption handler openidteams
605+ PythonOption authorized-teams-list-url "file:///etc/apache2/security/ste-private-hwpack-teams.txt"
606+ PythonOption action-path "/openid/"
607+ </Location>
608+
609+ Alias /hwpacks/ti /srv/landing-teams/hwpacks/ti
610+ <Location "/hwpacks/ti">
611+ PythonAccessHandler apache_openid::protect
612+ PythonOption handler openidteams
613+ PythonOption authorized-teams-list-url "file:///etc/apache2/security/ti-private-hwpack-teams.txt"
614+ PythonOption action-path "/openid/"
615+ </Location>
616+
617+ Alias /hwpacks/arm /srv/landing-teams/hwpacks/arm
618+ <Location "/hwpacks/arm">
619+ PythonAccessHandler apache_openid::protect
620+ PythonOption handler openidteams
621+ PythonOption authorized-teams-list-url "file:///etc/apache2/security/arm-private-hwpack-teams.txt"
622+ PythonOption action-path "/openid/"
623+ </Location>
624+
625+</VirtualHost>
626
627=== added directory 'django'
628=== added file 'django/settings_releases.py'
629--- django/settings_releases.py 1970-01-01 00:00:00 +0000
630+++ django/settings_releases.py 2012-08-20 15:32:38 +0000
631@@ -0,0 +1,22 @@
632+# Settings for releases.linaro.org.
633+
634+from settings import *
635+
636+DEBUG = False
637+
638+DATABASES = {
639+ 'default': {
640+ 'ENGINE': 'django.db.backends.sqlite3',
641+ 'NAME': '/srv/releases.linaro.org/db/licenses.db',
642+ 'USER': '',
643+ 'PASSWORD': '',
644+ 'HOST': '',
645+ 'PORT': '',
646+ }
647+}
648+
649+TEMPLATE_DIRS = (
650+ os.path.join(PROJECT_ROOT, "templates_releases" ),
651+ os.path.join(PROJECT_ROOT, "templates" ),
652+ )
653+SERVED_PATHS = ['/srv/releases.linaro.org/www']
654
655=== added file 'django/settings_snapshots.py'
656--- django/settings_snapshots.py 1970-01-01 00:00:00 +0000
657+++ django/settings_snapshots.py 2012-08-20 15:32:38 +0000
658@@ -0,0 +1,22 @@
659+# Settings for snapshots.linaro.org.
660+
661+from settings import *
662+
663+DEBUG = False
664+
665+DATABASES = {
666+ 'default': {
667+ 'ENGINE': 'django.db.backends.sqlite3',
668+ 'NAME': '/srv/snapshots.linaro.org/db/licenses.db',
669+ 'USER': '',
670+ 'PASSWORD': '',
671+ 'HOST': '',
672+ 'PORT': '',
673+ }
674+}
675+
676+TEMPLATE_DIRS = (
677+ os.path.join(PROJECT_ROOT, "templates_snapshots" ),
678+ os.path.join(PROJECT_ROOT, "templates" ),
679+ )
680+SERVED_PATHS = ['/srv/snapshots.linaro.org/www']
681
682=== added file 'django/settings_staging_releases.py'
683--- django/settings_staging_releases.py 1970-01-01 00:00:00 +0000
684+++ django/settings_staging_releases.py 2012-08-20 15:32:38 +0000
685@@ -0,0 +1,20 @@
686+# Settings for staging.releases.linaro.org.
687+
688+from settings import *
689+
690+DATABASES = {
691+ 'default': {
692+ 'ENGINE': 'django.db.backends.sqlite3',
693+ 'NAME': '/srv/staging.releases.linaro.org/db/licenses.db',
694+ 'USER': '',
695+ 'PASSWORD': '',
696+ 'HOST': '',
697+ 'PORT': '',
698+ }
699+}
700+
701+TEMPLATE_DIRS = (
702+ os.path.join(PROJECT_ROOT, "templates_releases" ),
703+ os.path.join(PROJECT_ROOT, "templates" ),
704+ )
705+SERVED_PATHS = ['/srv/staging.releases.linaro.org/www']
706
707=== added file 'django/settings_staging_snapshots.py'
708--- django/settings_staging_snapshots.py 1970-01-01 00:00:00 +0000
709+++ django/settings_staging_snapshots.py 2012-08-20 15:32:38 +0000
710@@ -0,0 +1,20 @@
711+# Settings for staging.snapshots.linaro.org.
712+
713+from settings import *
714+
715+DATABASES = {
716+ 'default': {
717+ 'ENGINE': 'django.db.backends.sqlite3',
718+ 'NAME': '/srv/staging.snapshots.linaro.org/db/licenses.db',
719+ 'USER': '',
720+ 'PASSWORD': '',
721+ 'HOST': '',
722+ 'PORT': '',
723+ }
724+}
725+
726+TEMPLATE_DIRS = (
727+ os.path.join(PROJECT_ROOT, "templates_snapshots" ),
728+ os.path.join(PROJECT_ROOT, "templates" ),
729+ )
730+SERVED_PATHS = ['/srv/staging.snapshots.linaro.org/www']
731
732=== added directory 'wsgi'
733=== added file 'wsgi/wsgi_releases.py'
734--- wsgi/wsgi_releases.py 1970-01-01 00:00:00 +0000
735+++ wsgi/wsgi_releases.py 2012-08-20 15:32:38 +0000
736@@ -0,0 +1,19 @@
737+"""
738+WSGI config for license_protected_downloads project.
739+
740+This file configures WSGI for releases.linaro.org.
741+"""
742+import os
743+import sys
744+sys.path.append("/usr/lib/python2.7/dist-packages")
745+sys.path.append("/usr/lib/pymodules/python2.7")
746+sys.path.append("/usr/lib/python2.7")
747+
748+sys.path.append("/srv/releases.linaro.org")
749+sys.path.append("/srv/releases.linaro.org/linaro-license-protection")
750+sys.path.append("/srv/releases.linaro.org/configs/django")
751+
752+os.environ["DJANGO_SETTINGS_MODULE"] = "settings_releases"
753+
754+import django.core.handlers.wsgi
755+application = django.core.handlers.wsgi.WSGIHandler()
756
757=== added file 'wsgi/wsgi_snapshots.py'
758--- wsgi/wsgi_snapshots.py 1970-01-01 00:00:00 +0000
759+++ wsgi/wsgi_snapshots.py 2012-08-20 15:32:38 +0000
760@@ -0,0 +1,19 @@
761+"""
762+WSGI config for license_protected_downloads project.
763+
764+This file configures WSGI for snapshots.linaro.org.
765+"""
766+import os
767+import sys
768+sys.path.append("/usr/lib/python2.7/dist-packages")
769+sys.path.append("/usr/lib/pymodules/python2.7")
770+sys.path.append("/usr/lib/python2.7")
771+
772+sys.path.append("/srv/snapshots.linaro.org")
773+sys.path.append("/srv/snapshots.linaro.org/linaro-license-protection")
774+sys.path.append("/srv/snapshots.linaro.org/configs/django")
775+
776+os.environ["DJANGO_SETTINGS_MODULE"] = "settings_snapshots"
777+
778+import django.core.handlers.wsgi
779+application = django.core.handlers.wsgi.WSGIHandler()
780
781=== added file 'wsgi/wsgi_staging_releases.py'
782--- wsgi/wsgi_staging_releases.py 1970-01-01 00:00:00 +0000
783+++ wsgi/wsgi_staging_releases.py 2012-08-20 15:32:38 +0000
784@@ -0,0 +1,19 @@
785+"""
786+WSGI config for license_protected_downloads project.
787+
788+This file configures WSGI for staging.releases.linaro.org.
789+"""
790+import os
791+import sys
792+sys.path.append("/usr/lib/python2.7/dist-packages")
793+sys.path.append("/usr/lib/pymodules/python2.7")
794+sys.path.append("/usr/lib/python2.7")
795+
796+sys.path.append("/srv/staging.releases.linaro.org")
797+sys.path.append("/srv/staging.releases.linaro.org/linaro-license-protection")
798+sys.path.append("/srv/staging.releases.linaro.org/configs/django")
799+
800+os.environ["DJANGO_SETTINGS_MODULE"] = "settings_staging_releases"
801+
802+import django.core.handlers.wsgi
803+application = django.core.handlers.wsgi.WSGIHandler()
804
805=== added file 'wsgi/wsgi_staging_snapshots.py'
806--- wsgi/wsgi_staging_snapshots.py 1970-01-01 00:00:00 +0000
807+++ wsgi/wsgi_staging_snapshots.py 2012-08-20 15:32:38 +0000
808@@ -0,0 +1,19 @@
809+"""
810+WSGI config for license_protected_downloads project.
811+
812+This file configures WSGI for staging.snapshots.linaro.org.
813+"""
814+import os
815+import sys
816+sys.path.append("/usr/lib/python2.7/dist-packages")
817+sys.path.append("/usr/lib/pymodules/python2.7")
818+sys.path.append("/usr/lib/python2.7")
819+
820+sys.path.append("/srv/staging.snapshots.linaro.org")
821+sys.path.append("/srv/staging.snapshots.linaro.org/linaro-license-protection")
822+sys.path.append("/srv/staging.snapshots.linaro.org/configs/django")
823+
824+os.environ["DJANGO_SETTINGS_MODULE"] = "settings_staging_snapshots"
825+
826+import django.core.handlers.wsgi
827+application = django.core.handlers.wsgi.WSGIHandler()

Subscribers

People subscribed via source and target branches