Merge lp:~cjohnston/ubuntu-ci-services-itself/ticket-system into lp:ubuntu-ci-services-itself
- ticket-system
- Merge into trunk
Status: | Merged |
---|---|
Approved by: | Chris Johnston |
Approved revision: | 17 |
Merged at revision: | 17 |
Proposed branch: | lp:~cjohnston/ubuntu-ci-services-itself/ticket-system |
Merge into: | lp:ubuntu-ci-services-itself |
Diff against target: |
1091 lines (+1037/-0) 10 files modified
.bzrignore (+1/-0) ticket_system/COPYING (+661/-0) ticket_system/local_settings.py.example (+8/-0) ticket_system/manage.py (+10/-0) ticket_system/setup.py (+52/-0) ticket_system/ticket_system/__init__.py (+14/-0) ticket_system/ticket_system/local_tests.py (+29/-0) ticket_system/ticket_system/settings.py (+192/-0) ticket_system/ticket_system/urls.py (+24/-0) ticket_system/ticket_system/wsgi.py (+46/-0) |
To merge this branch: | bzr merge lp:~cjohnston/ubuntu-ci-services-itself/ticket-system |
Related bugs: |
Reviewer | Review Type | Date Requested | Status |
---|---|---|---|
Ursula Junque (community) | Approve | ||
Review via email:
|
Commit message
Initial setup of the ticket system
Description of the change
Initial setup of the ticket system
- 17. By Chris Johnston
-
add copying
![](/+icing/build/overlay/assets/skins/sam/images/close.gif)
Vincent Ladeuil (vila) wrote : | # |
684 +ADMINS = (
685 + ('Admin Name', '<email address hidden>'),
686 +)
$ dig someplace.com
; <<>> DiG 9.9.3-rpz2+
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 43817
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 1
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;someplace.com. IN A
;; ANSWER SECTION:
someplace.com. 14351 IN A 184.154.203.124
;; AUTHORITY SECTION:
someplace.com. 86351 IN NS ns1.directory.net.
;; Query time: 2 msec
;; SERVER: 10.98.3.
;; WHEN: Wed Dec 11 12:28:37 UTC 2013
;; MSG SIZE rcvd: 89
You want @example.com for dummy addresses.
840 + # ('Your Name', '<email address hidden>'),
Yeah, that ;)
![](/+icing/build/overlay/assets/skins/sam/images/close.gif)
Chris Johnston (cjohnston) wrote : | # |
File a bug upstream :-)
Preview Diff
1 | === modified file '.bzrignore' |
2 | --- .bzrignore 2013-11-22 04:54:50 +0000 |
3 | +++ .bzrignore 2013-12-09 17:34:42 +0000 |
4 | @@ -2,3 +2,4 @@ |
5 | *.egg-info |
6 | *.pyc |
7 | *.swp |
8 | +local_settings.py |
9 | |
10 | === added directory 'ticket_system' |
11 | === added file 'ticket_system/COPYING' |
12 | --- ticket_system/COPYING 1970-01-01 00:00:00 +0000 |
13 | +++ ticket_system/COPYING 2013-12-09 17:34:42 +0000 |
14 | @@ -0,0 +1,661 @@ |
15 | + GNU AFFERO GENERAL PUBLIC LICENSE |
16 | + Version 3, 19 November 2007 |
17 | + |
18 | + Copyright (C) 2007 Free Software Foundation, Inc. <http://fsf.org/> |
19 | + Everyone is permitted to copy and distribute verbatim copies |
20 | + of this license document, but changing it is not allowed. |
21 | + |
22 | + Preamble |
23 | + |
24 | + The GNU Affero General Public License is a free, copyleft license for |
25 | +software and other kinds of works, specifically designed to ensure |
26 | +cooperation with the community in the case of network server software. |
27 | + |
28 | + The licenses for most software and other practical works are designed |
29 | +to take away your freedom to share and change the works. By contrast, |
30 | +our General Public Licenses are intended to guarantee your freedom to |
31 | +share and change all versions of a program--to make sure it remains free |
32 | +software for all its users. |
33 | + |
34 | + When we speak of free software, we are referring to freedom, not |
35 | +price. Our General Public Licenses are designed to make sure that you |
36 | +have the freedom to distribute copies of free software (and charge for |
37 | +them if you wish), that you receive source code or can get it if you |
38 | +want it, that you can change the software or use pieces of it in new |
39 | +free programs, and that you know you can do these things. |
40 | + |
41 | + Developers that use our General Public Licenses protect your rights |
42 | +with two steps: (1) assert copyright on the software, and (2) offer |
43 | +you this License which gives you legal permission to copy, distribute |
44 | +and/or modify the software. |
45 | + |
46 | + A secondary benefit of defending all users' freedom is that |
47 | +improvements made in alternate versions of the program, if they |
48 | +receive widespread use, become available for other developers to |
49 | +incorporate. Many developers of free software are heartened and |
50 | +encouraged by the resulting cooperation. However, in the case of |
51 | +software used on network servers, this result may fail to come about. |
52 | +The GNU General Public License permits making a modified version and |
53 | +letting the public access it on a server without ever releasing its |
54 | +source code to the public. |
55 | + |
56 | + The GNU Affero General Public License is designed specifically to |
57 | +ensure that, in such cases, the modified source code becomes available |
58 | +to the community. It requires the operator of a network server to |
59 | +provide the source code of the modified version running there to the |
60 | +users of that server. Therefore, public use of a modified version, on |
61 | +a publicly accessible server, gives the public access to the source |
62 | +code of the modified version. |
63 | + |
64 | + An older license, called the Affero General Public License and |
65 | +published by Affero, was designed to accomplish similar goals. This is |
66 | +a different license, not a version of the Affero GPL, but Affero has |
67 | +released a new version of the Affero GPL which permits relicensing under |
68 | +this license. |
69 | + |
70 | + The precise terms and conditions for copying, distribution and |
71 | +modification follow. |
72 | + |
73 | + TERMS AND CONDITIONS |
74 | + |
75 | + 0. Definitions. |
76 | + |
77 | + "This License" refers to version 3 of the GNU Affero General Public License. |
78 | + |
79 | + "Copyright" also means copyright-like laws that apply to other kinds of |
80 | +works, such as semiconductor masks. |
81 | + |
82 | + "The Program" refers to any copyrightable work licensed under this |
83 | +License. Each licensee is addressed as "you". "Licensees" and |
84 | +"recipients" may be individuals or organizations. |
85 | + |
86 | + To "modify" a work means to copy from or adapt all or part of the work |
87 | +in a fashion requiring copyright permission, other than the making of an |
88 | +exact copy. The resulting work is called a "modified version" of the |
89 | +earlier work or a work "based on" the earlier work. |
90 | + |
91 | + A "covered work" means either the unmodified Program or a work based |
92 | +on the Program. |
93 | + |
94 | + To "propagate" a work means to do anything with it that, without |
95 | +permission, would make you directly or secondarily liable for |
96 | +infringement under applicable copyright law, except executing it on a |
97 | +computer or modifying a private copy. Propagation includes copying, |
98 | +distribution (with or without modification), making available to the |
99 | +public, and in some countries other activities as well. |
100 | + |
101 | + To "convey" a work means any kind of propagation that enables other |
102 | +parties to make or receive copies. Mere interaction with a user through |
103 | +a computer network, with no transfer of a copy, is not conveying. |
104 | + |
105 | + An interactive user interface displays "Appropriate Legal Notices" |
106 | +to the extent that it includes a convenient and prominently visible |
107 | +feature that (1) displays an appropriate copyright notice, and (2) |
108 | +tells the user that there is no warranty for the work (except to the |
109 | +extent that warranties are provided), that licensees may convey the |
110 | +work under this License, and how to view a copy of this License. If |
111 | +the interface presents a list of user commands or options, such as a |
112 | +menu, a prominent item in the list meets this criterion. |
113 | + |
114 | + 1. Source Code. |
115 | + |
116 | + The "source code" for a work means the preferred form of the work |
117 | +for making modifications to it. "Object code" means any non-source |
118 | +form of a work. |
119 | + |
120 | + A "Standard Interface" means an interface that either is an official |
121 | +standard defined by a recognized standards body, or, in the case of |
122 | +interfaces specified for a particular programming language, one that |
123 | +is widely used among developers working in that language. |
124 | + |
125 | + The "System Libraries" of an executable work include anything, other |
126 | +than the work as a whole, that (a) is included in the normal form of |
127 | +packaging a Major Component, but which is not part of that Major |
128 | +Component, and (b) serves only to enable use of the work with that |
129 | +Major Component, or to implement a Standard Interface for which an |
130 | +implementation is available to the public in source code form. A |
131 | +"Major Component", in this context, means a major essential component |
132 | +(kernel, window system, and so on) of the specific operating system |
133 | +(if any) on which the executable work runs, or a compiler used to |
134 | +produce the work, or an object code interpreter used to run it. |
135 | + |
136 | + The "Corresponding Source" for a work in object code form means all |
137 | +the source code needed to generate, install, and (for an executable |
138 | +work) run the object code and to modify the work, including scripts to |
139 | +control those activities. However, it does not include the work's |
140 | +System Libraries, or general-purpose tools or generally available free |
141 | +programs which are used unmodified in performing those activities but |
142 | +which are not part of the work. For example, Corresponding Source |
143 | +includes interface definition files associated with source files for |
144 | +the work, and the source code for shared libraries and dynamically |
145 | +linked subprograms that the work is specifically designed to require, |
146 | +such as by intimate data communication or control flow between those |
147 | +subprograms and other parts of the work. |
148 | + |
149 | + The Corresponding Source need not include anything that users |
150 | +can regenerate automatically from other parts of the Corresponding |
151 | +Source. |
152 | + |
153 | + The Corresponding Source for a work in source code form is that |
154 | +same work. |
155 | + |
156 | + 2. Basic Permissions. |
157 | + |
158 | + All rights granted under this License are granted for the term of |
159 | +copyright on the Program, and are irrevocable provided the stated |
160 | +conditions are met. This License explicitly affirms your unlimited |
161 | +permission to run the unmodified Program. The output from running a |
162 | +covered work is covered by this License only if the output, given its |
163 | +content, constitutes a covered work. This License acknowledges your |
164 | +rights of fair use or other equivalent, as provided by copyright law. |
165 | + |
166 | + You may make, run and propagate covered works that you do not |
167 | +convey, without conditions so long as your license otherwise remains |
168 | +in force. You may convey covered works to others for the sole purpose |
169 | +of having them make modifications exclusively for you, or provide you |
170 | +with facilities for running those works, provided that you comply with |
171 | +the terms of this License in conveying all material for which you do |
172 | +not control copyright. Those thus making or running the covered works |
173 | +for you must do so exclusively on your behalf, under your direction |
174 | +and control, on terms that prohibit them from making any copies of |
175 | +your copyrighted material outside their relationship with you. |
176 | + |
177 | + Conveying under any other circumstances is permitted solely under |
178 | +the conditions stated below. Sublicensing is not allowed; section 10 |
179 | +makes it unnecessary. |
180 | + |
181 | + 3. Protecting Users' Legal Rights From Anti-Circumvention Law. |
182 | + |
183 | + No covered work shall be deemed part of an effective technological |
184 | +measure under any applicable law fulfilling obligations under article |
185 | +11 of the WIPO copyright treaty adopted on 20 December 1996, or |
186 | +similar laws prohibiting or restricting circumvention of such |
187 | +measures. |
188 | + |
189 | + When you convey a covered work, you waive any legal power to forbid |
190 | +circumvention of technological measures to the extent such circumvention |
191 | +is effected by exercising rights under this License with respect to |
192 | +the covered work, and you disclaim any intention to limit operation or |
193 | +modification of the work as a means of enforcing, against the work's |
194 | +users, your or third parties' legal rights to forbid circumvention of |
195 | +technological measures. |
196 | + |
197 | + 4. Conveying Verbatim Copies. |
198 | + |
199 | + You may convey verbatim copies of the Program's source code as you |
200 | +receive it, in any medium, provided that you conspicuously and |
201 | +appropriately publish on each copy an appropriate copyright notice; |
202 | +keep intact all notices stating that this License and any |
203 | +non-permissive terms added in accord with section 7 apply to the code; |
204 | +keep intact all notices of the absence of any warranty; and give all |
205 | +recipients a copy of this License along with the Program. |
206 | + |
207 | + You may charge any price or no price for each copy that you convey, |
208 | +and you may offer support or warranty protection for a fee. |
209 | + |
210 | + 5. Conveying Modified Source Versions. |
211 | + |
212 | + You may convey a work based on the Program, or the modifications to |
213 | +produce it from the Program, in the form of source code under the |
214 | +terms of section 4, provided that you also meet all of these conditions: |
215 | + |
216 | + a) The work must carry prominent notices stating that you modified |
217 | + it, and giving a relevant date. |
218 | + |
219 | + b) The work must carry prominent notices stating that it is |
220 | + released under this License and any conditions added under section |
221 | + 7. This requirement modifies the requirement in section 4 to |
222 | + "keep intact all notices". |
223 | + |
224 | + c) You must license the entire work, as a whole, under this |
225 | + License to anyone who comes into possession of a copy. This |
226 | + License will therefore apply, along with any applicable section 7 |
227 | + additional terms, to the whole of the work, and all its parts, |
228 | + regardless of how they are packaged. This License gives no |
229 | + permission to license the work in any other way, but it does not |
230 | + invalidate such permission if you have separately received it. |
231 | + |
232 | + d) If the work has interactive user interfaces, each must display |
233 | + Appropriate Legal Notices; however, if the Program has interactive |
234 | + interfaces that do not display Appropriate Legal Notices, your |
235 | + work need not make them do so. |
236 | + |
237 | + A compilation of a covered work with other separate and independent |
238 | +works, which are not by their nature extensions of the covered work, |
239 | +and which are not combined with it such as to form a larger program, |
240 | +in or on a volume of a storage or distribution medium, is called an |
241 | +"aggregate" if the compilation and its resulting copyright are not |
242 | +used to limit the access or legal rights of the compilation's users |
243 | +beyond what the individual works permit. Inclusion of a covered work |
244 | +in an aggregate does not cause this License to apply to the other |
245 | +parts of the aggregate. |
246 | + |
247 | + 6. Conveying Non-Source Forms. |
248 | + |
249 | + You may convey a covered work in object code form under the terms |
250 | +of sections 4 and 5, provided that you also convey the |
251 | +machine-readable Corresponding Source under the terms of this License, |
252 | +in one of these ways: |
253 | + |
254 | + a) Convey the object code in, or embodied in, a physical product |
255 | + (including a physical distribution medium), accompanied by the |
256 | + Corresponding Source fixed on a durable physical medium |
257 | + customarily used for software interchange. |
258 | + |
259 | + b) Convey the object code in, or embodied in, a physical product |
260 | + (including a physical distribution medium), accompanied by a |
261 | + written offer, valid for at least three years and valid for as |
262 | + long as you offer spare parts or customer support for that product |
263 | + model, to give anyone who possesses the object code either (1) a |
264 | + copy of the Corresponding Source for all the software in the |
265 | + product that is covered by this License, on a durable physical |
266 | + medium customarily used for software interchange, for a price no |
267 | + more than your reasonable cost of physically performing this |
268 | + conveying of source, or (2) access to copy the |
269 | + Corresponding Source from a network server at no charge. |
270 | + |
271 | + c) Convey individual copies of the object code with a copy of the |
272 | + written offer to provide the Corresponding Source. This |
273 | + alternative is allowed only occasionally and noncommercially, and |
274 | + only if you received the object code with such an offer, in accord |
275 | + with subsection 6b. |
276 | + |
277 | + d) Convey the object code by offering access from a designated |
278 | + place (gratis or for a charge), and offer equivalent access to the |
279 | + Corresponding Source in the same way through the same place at no |
280 | + further charge. You need not require recipients to copy the |
281 | + Corresponding Source along with the object code. If the place to |
282 | + copy the object code is a network server, the Corresponding Source |
283 | + may be on a different server (operated by you or a third party) |
284 | + that supports equivalent copying facilities, provided you maintain |
285 | + clear directions next to the object code saying where to find the |
286 | + Corresponding Source. Regardless of what server hosts the |
287 | + Corresponding Source, you remain obligated to ensure that it is |
288 | + available for as long as needed to satisfy these requirements. |
289 | + |
290 | + e) Convey the object code using peer-to-peer transmission, provided |
291 | + you inform other peers where the object code and Corresponding |
292 | + Source of the work are being offered to the general public at no |
293 | + charge under subsection 6d. |
294 | + |
295 | + A separable portion of the object code, whose source code is excluded |
296 | +from the Corresponding Source as a System Library, need not be |
297 | +included in conveying the object code work. |
298 | + |
299 | + A "User Product" is either (1) a "consumer product", which means any |
300 | +tangible personal property which is normally used for personal, family, |
301 | +or household purposes, or (2) anything designed or sold for incorporation |
302 | +into a dwelling. In determining whether a product is a consumer product, |
303 | +doubtful cases shall be resolved in favor of coverage. For a particular |
304 | +product received by a particular user, "normally used" refers to a |
305 | +typical or common use of that class of product, regardless of the status |
306 | +of the particular user or of the way in which the particular user |
307 | +actually uses, or expects or is expected to use, the product. A product |
308 | +is a consumer product regardless of whether the product has substantial |
309 | +commercial, industrial or non-consumer uses, unless such uses represent |
310 | +the only significant mode of use of the product. |
311 | + |
312 | + "Installation Information" for a User Product means any methods, |
313 | +procedures, authorization keys, or other information required to install |
314 | +and execute modified versions of a covered work in that User Product from |
315 | +a modified version of its Corresponding Source. The information must |
316 | +suffice to ensure that the continued functioning of the modified object |
317 | +code is in no case prevented or interfered with solely because |
318 | +modification has been made. |
319 | + |
320 | + If you convey an object code work under this section in, or with, or |
321 | +specifically for use in, a User Product, and the conveying occurs as |
322 | +part of a transaction in which the right of possession and use of the |
323 | +User Product is transferred to the recipient in perpetuity or for a |
324 | +fixed term (regardless of how the transaction is characterized), the |
325 | +Corresponding Source conveyed under this section must be accompanied |
326 | +by the Installation Information. But this requirement does not apply |
327 | +if neither you nor any third party retains the ability to install |
328 | +modified object code on the User Product (for example, the work has |
329 | +been installed in ROM). |
330 | + |
331 | + The requirement to provide Installation Information does not include a |
332 | +requirement to continue to provide support service, warranty, or updates |
333 | +for a work that has been modified or installed by the recipient, or for |
334 | +the User Product in which it has been modified or installed. Access to a |
335 | +network may be denied when the modification itself materially and |
336 | +adversely affects the operation of the network or violates the rules and |
337 | +protocols for communication across the network. |
338 | + |
339 | + Corresponding Source conveyed, and Installation Information provided, |
340 | +in accord with this section must be in a format that is publicly |
341 | +documented (and with an implementation available to the public in |
342 | +source code form), and must require no special password or key for |
343 | +unpacking, reading or copying. |
344 | + |
345 | + 7. Additional Terms. |
346 | + |
347 | + "Additional permissions" are terms that supplement the terms of this |
348 | +License by making exceptions from one or more of its conditions. |
349 | +Additional permissions that are applicable to the entire Program shall |
350 | +be treated as though they were included in this License, to the extent |
351 | +that they are valid under applicable law. If additional permissions |
352 | +apply only to part of the Program, that part may be used separately |
353 | +under those permissions, but the entire Program remains governed by |
354 | +this License without regard to the additional permissions. |
355 | + |
356 | + When you convey a copy of a covered work, you may at your option |
357 | +remove any additional permissions from that copy, or from any part of |
358 | +it. (Additional permissions may be written to require their own |
359 | +removal in certain cases when you modify the work.) You may place |
360 | +additional permissions on material, added by you to a covered work, |
361 | +for which you have or can give appropriate copyright permission. |
362 | + |
363 | + Notwithstanding any other provision of this License, for material you |
364 | +add to a covered work, you may (if authorized by the copyright holders of |
365 | +that material) supplement the terms of this License with terms: |
366 | + |
367 | + a) Disclaiming warranty or limiting liability differently from the |
368 | + terms of sections 15 and 16 of this License; or |
369 | + |
370 | + b) Requiring preservation of specified reasonable legal notices or |
371 | + author attributions in that material or in the Appropriate Legal |
372 | + Notices displayed by works containing it; or |
373 | + |
374 | + c) Prohibiting misrepresentation of the origin of that material, or |
375 | + requiring that modified versions of such material be marked in |
376 | + reasonable ways as different from the original version; or |
377 | + |
378 | + d) Limiting the use for publicity purposes of names of licensors or |
379 | + authors of the material; or |
380 | + |
381 | + e) Declining to grant rights under trademark law for use of some |
382 | + trade names, trademarks, or service marks; or |
383 | + |
384 | + f) Requiring indemnification of licensors and authors of that |
385 | + material by anyone who conveys the material (or modified versions of |
386 | + it) with contractual assumptions of liability to the recipient, for |
387 | + any liability that these contractual assumptions directly impose on |
388 | + those licensors and authors. |
389 | + |
390 | + All other non-permissive additional terms are considered "further |
391 | +restrictions" within the meaning of section 10. If the Program as you |
392 | +received it, or any part of it, contains a notice stating that it is |
393 | +governed by this License along with a term that is a further |
394 | +restriction, you may remove that term. If a license document contains |
395 | +a further restriction but permits relicensing or conveying under this |
396 | +License, you may add to a covered work material governed by the terms |
397 | +of that license document, provided that the further restriction does |
398 | +not survive such relicensing or conveying. |
399 | + |
400 | + If you add terms to a covered work in accord with this section, you |
401 | +must place, in the relevant source files, a statement of the |
402 | +additional terms that apply to those files, or a notice indicating |
403 | +where to find the applicable terms. |
404 | + |
405 | + Additional terms, permissive or non-permissive, may be stated in the |
406 | +form of a separately written license, or stated as exceptions; |
407 | +the above requirements apply either way. |
408 | + |
409 | + 8. Termination. |
410 | + |
411 | + You may not propagate or modify a covered work except as expressly |
412 | +provided under this License. Any attempt otherwise to propagate or |
413 | +modify it is void, and will automatically terminate your rights under |
414 | +this License (including any patent licenses granted under the third |
415 | +paragraph of section 11). |
416 | + |
417 | + However, if you cease all violation of this License, then your |
418 | +license from a particular copyright holder is reinstated (a) |
419 | +provisionally, unless and until the copyright holder explicitly and |
420 | +finally terminates your license, and (b) permanently, if the copyright |
421 | +holder fails to notify you of the violation by some reasonable means |
422 | +prior to 60 days after the cessation. |
423 | + |
424 | + Moreover, your license from a particular copyright holder is |
425 | +reinstated permanently if the copyright holder notifies you of the |
426 | +violation by some reasonable means, this is the first time you have |
427 | +received notice of violation of this License (for any work) from that |
428 | +copyright holder, and you cure the violation prior to 30 days after |
429 | +your receipt of the notice. |
430 | + |
431 | + Termination of your rights under this section does not terminate the |
432 | +licenses of parties who have received copies or rights from you under |
433 | +this License. If your rights have been terminated and not permanently |
434 | +reinstated, you do not qualify to receive new licenses for the same |
435 | +material under section 10. |
436 | + |
437 | + 9. Acceptance Not Required for Having Copies. |
438 | + |
439 | + You are not required to accept this License in order to receive or |
440 | +run a copy of the Program. Ancillary propagation of a covered work |
441 | +occurring solely as a consequence of using peer-to-peer transmission |
442 | +to receive a copy likewise does not require acceptance. However, |
443 | +nothing other than this License grants you permission to propagate or |
444 | +modify any covered work. These actions infringe copyright if you do |
445 | +not accept this License. Therefore, by modifying or propagating a |
446 | +covered work, you indicate your acceptance of this License to do so. |
447 | + |
448 | + 10. Automatic Licensing of Downstream Recipients. |
449 | + |
450 | + Each time you convey a covered work, the recipient automatically |
451 | +receives a license from the original licensors, to run, modify and |
452 | +propagate that work, subject to this License. You are not responsible |
453 | +for enforcing compliance by third parties with this License. |
454 | + |
455 | + An "entity transaction" is a transaction transferring control of an |
456 | +organization, or substantially all assets of one, or subdividing an |
457 | +organization, or merging organizations. If propagation of a covered |
458 | +work results from an entity transaction, each party to that |
459 | +transaction who receives a copy of the work also receives whatever |
460 | +licenses to the work the party's predecessor in interest had or could |
461 | +give under the previous paragraph, plus a right to possession of the |
462 | +Corresponding Source of the work from the predecessor in interest, if |
463 | +the predecessor has it or can get it with reasonable efforts. |
464 | + |
465 | + You may not impose any further restrictions on the exercise of the |
466 | +rights granted or affirmed under this License. For example, you may |
467 | +not impose a license fee, royalty, or other charge for exercise of |
468 | +rights granted under this License, and you may not initiate litigation |
469 | +(including a cross-claim or counterclaim in a lawsuit) alleging that |
470 | +any patent claim is infringed by making, using, selling, offering for |
471 | +sale, or importing the Program or any portion of it. |
472 | + |
473 | + 11. Patents. |
474 | + |
475 | + A "contributor" is a copyright holder who authorizes use under this |
476 | +License of the Program or a work on which the Program is based. The |
477 | +work thus licensed is called the contributor's "contributor version". |
478 | + |
479 | + A contributor's "essential patent claims" are all patent claims |
480 | +owned or controlled by the contributor, whether already acquired or |
481 | +hereafter acquired, that would be infringed by some manner, permitted |
482 | +by this License, of making, using, or selling its contributor version, |
483 | +but do not include claims that would be infringed only as a |
484 | +consequence of further modification of the contributor version. For |
485 | +purposes of this definition, "control" includes the right to grant |
486 | +patent sublicenses in a manner consistent with the requirements of |
487 | +this License. |
488 | + |
489 | + Each contributor grants you a non-exclusive, worldwide, royalty-free |
490 | +patent license under the contributor's essential patent claims, to |
491 | +make, use, sell, offer for sale, import and otherwise run, modify and |
492 | +propagate the contents of its contributor version. |
493 | + |
494 | + In the following three paragraphs, a "patent license" is any express |
495 | +agreement or commitment, however denominated, not to enforce a patent |
496 | +(such as an express permission to practice a patent or covenant not to |
497 | +sue for patent infringement). To "grant" such a patent license to a |
498 | +party means to make such an agreement or commitment not to enforce a |
499 | +patent against the party. |
500 | + |
501 | + If you convey a covered work, knowingly relying on a patent license, |
502 | +and the Corresponding Source of the work is not available for anyone |
503 | +to copy, free of charge and under the terms of this License, through a |
504 | +publicly available network server or other readily accessible means, |
505 | +then you must either (1) cause the Corresponding Source to be so |
506 | +available, or (2) arrange to deprive yourself of the benefit of the |
507 | +patent license for this particular work, or (3) arrange, in a manner |
508 | +consistent with the requirements of this License, to extend the patent |
509 | +license to downstream recipients. "Knowingly relying" means you have |
510 | +actual knowledge that, but for the patent license, your conveying the |
511 | +covered work in a country, or your recipient's use of the covered work |
512 | +in a country, would infringe one or more identifiable patents in that |
513 | +country that you have reason to believe are valid. |
514 | + |
515 | + If, pursuant to or in connection with a single transaction or |
516 | +arrangement, you convey, or propagate by procuring conveyance of, a |
517 | +covered work, and grant a patent license to some of the parties |
518 | +receiving the covered work authorizing them to use, propagate, modify |
519 | +or convey a specific copy of the covered work, then the patent license |
520 | +you grant is automatically extended to all recipients of the covered |
521 | +work and works based on it. |
522 | + |
523 | + A patent license is "discriminatory" if it does not include within |
524 | +the scope of its coverage, prohibits the exercise of, or is |
525 | +conditioned on the non-exercise of one or more of the rights that are |
526 | +specifically granted under this License. You may not convey a covered |
527 | +work if you are a party to an arrangement with a third party that is |
528 | +in the business of distributing software, under which you make payment |
529 | +to the third party based on the extent of your activity of conveying |
530 | +the work, and under which the third party grants, to any of the |
531 | +parties who would receive the covered work from you, a discriminatory |
532 | +patent license (a) in connection with copies of the covered work |
533 | +conveyed by you (or copies made from those copies), or (b) primarily |
534 | +for and in connection with specific products or compilations that |
535 | +contain the covered work, unless you entered into that arrangement, |
536 | +or that patent license was granted, prior to 28 March 2007. |
537 | + |
538 | + Nothing in this License shall be construed as excluding or limiting |
539 | +any implied license or other defenses to infringement that may |
540 | +otherwise be available to you under applicable patent law. |
541 | + |
542 | + 12. No Surrender of Others' Freedom. |
543 | + |
544 | + If conditions are imposed on you (whether by court order, agreement or |
545 | +otherwise) that contradict the conditions of this License, they do not |
546 | +excuse you from the conditions of this License. If you cannot convey a |
547 | +covered work so as to satisfy simultaneously your obligations under this |
548 | +License and any other pertinent obligations, then as a consequence you may |
549 | +not convey it at all. For example, if you agree to terms that obligate you |
550 | +to collect a royalty for further conveying from those to whom you convey |
551 | +the Program, the only way you could satisfy both those terms and this |
552 | +License would be to refrain entirely from conveying the Program. |
553 | + |
554 | + 13. Remote Network Interaction; Use with the GNU General Public License. |
555 | + |
556 | + Notwithstanding any other provision of this License, if you modify the |
557 | +Program, your modified version must prominently offer all users |
558 | +interacting with it remotely through a computer network (if your version |
559 | +supports such interaction) an opportunity to receive the Corresponding |
560 | +Source of your version by providing access to the Corresponding Source |
561 | +from a network server at no charge, through some standard or customary |
562 | +means of facilitating copying of software. This Corresponding Source |
563 | +shall include the Corresponding Source for any work covered by version 3 |
564 | +of the GNU General Public License that is incorporated pursuant to the |
565 | +following paragraph. |
566 | + |
567 | + Notwithstanding any other provision of this License, you have |
568 | +permission to link or combine any covered work with a work licensed |
569 | +under version 3 of the GNU General Public License into a single |
570 | +combined work, and to convey the resulting work. The terms of this |
571 | +License will continue to apply to the part which is the covered work, |
572 | +but the work with which it is combined will remain governed by version |
573 | +3 of the GNU General Public License. |
574 | + |
575 | + 14. Revised Versions of this License. |
576 | + |
577 | + The Free Software Foundation may publish revised and/or new versions of |
578 | +the GNU Affero General Public License from time to time. Such new versions |
579 | +will be similar in spirit to the present version, but may differ in detail to |
580 | +address new problems or concerns. |
581 | + |
582 | + Each version is given a distinguishing version number. If the |
583 | +Program specifies that a certain numbered version of the GNU Affero General |
584 | +Public License "or any later version" applies to it, you have the |
585 | +option of following the terms and conditions either of that numbered |
586 | +version or of any later version published by the Free Software |
587 | +Foundation. If the Program does not specify a version number of the |
588 | +GNU Affero General Public License, you may choose any version ever published |
589 | +by the Free Software Foundation. |
590 | + |
591 | + If the Program specifies that a proxy can decide which future |
592 | +versions of the GNU Affero General Public License can be used, that proxy's |
593 | +public statement of acceptance of a version permanently authorizes you |
594 | +to choose that version for the Program. |
595 | + |
596 | + Later license versions may give you additional or different |
597 | +permissions. However, no additional obligations are imposed on any |
598 | +author or copyright holder as a result of your choosing to follow a |
599 | +later version. |
600 | + |
601 | + 15. Disclaimer of Warranty. |
602 | + |
603 | + THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY |
604 | +APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT |
605 | +HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY |
606 | +OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, |
607 | +THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR |
608 | +PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM |
609 | +IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF |
610 | +ALL NECESSARY SERVICING, REPAIR OR CORRECTION. |
611 | + |
612 | + 16. Limitation of Liability. |
613 | + |
614 | + IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING |
615 | +WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS |
616 | +THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY |
617 | +GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE |
618 | +USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF |
619 | +DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD |
620 | +PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), |
621 | +EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF |
622 | +SUCH DAMAGES. |
623 | + |
624 | + 17. Interpretation of Sections 15 and 16. |
625 | + |
626 | + If the disclaimer of warranty and limitation of liability provided |
627 | +above cannot be given local legal effect according to their terms, |
628 | +reviewing courts shall apply local law that most closely approximates |
629 | +an absolute waiver of all civil liability in connection with the |
630 | +Program, unless a warranty or assumption of liability accompanies a |
631 | +copy of the Program in return for a fee. |
632 | + |
633 | + END OF TERMS AND CONDITIONS |
634 | + |
635 | + How to Apply These Terms to Your New Programs |
636 | + |
637 | + If you develop a new program, and you want it to be of the greatest |
638 | +possible use to the public, the best way to achieve this is to make it |
639 | +free software which everyone can redistribute and change under these terms. |
640 | + |
641 | + To do so, attach the following notices to the program. It is safest |
642 | +to attach them to the start of each source file to most effectively |
643 | +state the exclusion of warranty; and each file should have at least |
644 | +the "copyright" line and a pointer to where the full notice is found. |
645 | + |
646 | + <one line to give the program's name and a brief idea of what it does.> |
647 | + Copyright (C) <year> <name of author> |
648 | + |
649 | + This program is free software: you can redistribute it and/or modify |
650 | + it under the terms of the GNU Affero General Public License as published by |
651 | + the Free Software Foundation, either version 3 of the License, or |
652 | + (at your option) any later version. |
653 | + |
654 | + This program is distributed in the hope that it will be useful, |
655 | + but WITHOUT ANY WARRANTY; without even the implied warranty of |
656 | + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
657 | + GNU Affero General Public License for more details. |
658 | + |
659 | + You should have received a copy of the GNU Affero General Public License |
660 | + along with this program. If not, see <http://www.gnu.org/licenses/>. |
661 | + |
662 | +Also add information on how to contact you by electronic and paper mail. |
663 | + |
664 | + If your software can interact with users remotely through a computer |
665 | +network, you should also make sure that it provides a way for users to |
666 | +get its source. For example, if your program is a web application, its |
667 | +interface could display a "Source" link that leads users to an archive |
668 | +of the code. There are many ways you could offer source, and different |
669 | +solutions will be better for different programs; see section 13 for the |
670 | +specific requirements. |
671 | + |
672 | + You should also get your employer (if you work as a programmer) or school, |
673 | +if any, to sign a "copyright disclaimer" for the program, if necessary. |
674 | +For more information on this, and how to apply and follow the GNU AGPL, see |
675 | +<http://www.gnu.org/licenses/>. |
676 | |
677 | === added file 'ticket_system/local_settings.py.example' |
678 | --- ticket_system/local_settings.py.example 1970-01-01 00:00:00 +0000 |
679 | +++ ticket_system/local_settings.py.example 2013-12-09 17:34:42 +0000 |
680 | @@ -0,0 +1,8 @@ |
681 | +DEBUG = False |
682 | +TEMPLATE_DEBUG = DEBUG |
683 | + |
684 | +ADMINS = ( |
685 | + ('Admin Name', 'admin.name@someplace.com'), |
686 | +) |
687 | + |
688 | +SECRET_KEY = 'zlv5#5_@*5re)(s$0&r98i*5*g6k=x!$0lo)fl!+^2l6#)5hqb' |
689 | |
690 | === added file 'ticket_system/manage.py' |
691 | --- ticket_system/manage.py 1970-01-01 00:00:00 +0000 |
692 | +++ ticket_system/manage.py 2013-12-09 17:34:42 +0000 |
693 | @@ -0,0 +1,10 @@ |
694 | +#!/usr/bin/env python |
695 | +import os |
696 | +import sys |
697 | + |
698 | +if __name__ == "__main__": |
699 | + os.environ.setdefault("DJANGO_SETTINGS_MODULE", "ticket_system.settings") |
700 | + |
701 | + from django.core.management import execute_from_command_line |
702 | + |
703 | + execute_from_command_line(sys.argv) |
704 | |
705 | === added file 'ticket_system/setup.py' |
706 | --- ticket_system/setup.py 1970-01-01 00:00:00 +0000 |
707 | +++ ticket_system/setup.py 2013-12-09 17:34:42 +0000 |
708 | @@ -0,0 +1,52 @@ |
709 | +#!/usr/bin/env python |
710 | +# Ubuntu CI Services |
711 | +# Copyright 2013 Canonical Ltd. |
712 | + |
713 | +# This program is free software: you can redistribute it and/or modify it |
714 | +# under the terms of the GNU Affero General Public License version 3, as |
715 | +# published by the Free Software Foundation. |
716 | + |
717 | +# This program is distributed in the hope that it will be useful, but |
718 | +# WITHOUT ANY WARRANTY; without even the implied warranties of |
719 | +# MERCHANTABILITY, SATISFACTORY QUALITY, or FITNESS FOR A PARTICULAR |
720 | +# PURPOSE. See the GNU Affero General Public License for more details. |
721 | + |
722 | +# You should have received a copy of the GNU Affero General Public License |
723 | +# along with this program. If not, see <http://www.gnu.org/licenses/>. |
724 | + |
725 | +import os |
726 | +import sys |
727 | + |
728 | +from setuptools import find_packages, setup |
729 | + |
730 | +# ensure find_packages works if our current directory isn't this project |
731 | +basedir = os.path.abspath(os.path.dirname(__file__)) |
732 | +os.chdir(basedir) |
733 | +packages = find_packages(basedir) |
734 | + |
735 | +if sys.argv[1] == 'create_db': |
736 | + import ticket_system.settings |
737 | + import ci_utils.create_db |
738 | + dbconfig = ticket_system.settings.DATABASES['default'] |
739 | + exit(ci_utils.create_db.create_db(dbconfig)) |
740 | + |
741 | +import ticket_system |
742 | + |
743 | +requires = [ |
744 | + 'Django==1.5', |
745 | + 'django-tastypie==0.9.15', |
746 | + 'South==0.7.5', |
747 | + 'mock==1.0.1', |
748 | +] |
749 | + |
750 | +setup( |
751 | + name='ticket_system', |
752 | + version=ticket_system.__version__, |
753 | + description='Ticket system component of Ubuntu CI Services', |
754 | + author='Chris Johnston', |
755 | + author_email='chrisjohnston@ubuntu.com', |
756 | + license='AGPL', |
757 | + packages=packages, |
758 | + test_suite='tests', |
759 | + install_requires=requires, |
760 | +) |
761 | |
762 | === added directory 'ticket_system/ticket_system' |
763 | === added file 'ticket_system/ticket_system/__init__.py' |
764 | --- ticket_system/ticket_system/__init__.py 1970-01-01 00:00:00 +0000 |
765 | +++ ticket_system/ticket_system/__init__.py 2013-12-09 17:34:42 +0000 |
766 | @@ -0,0 +1,14 @@ |
767 | +# Ubuntu Continuous Integration Engine |
768 | +# Copyright 2013 Canonical Ltd. |
769 | + |
770 | +# This program is free software: you can redistribute it and/or modify it |
771 | +# under the terms of the GNU Affero General Public License version 3, as |
772 | +# published by the Free Software Foundation. |
773 | + |
774 | +# This program is distributed in the hope that it will be useful, but |
775 | +# WITHOUT ANY WARRANTY; without even the implied warranties of |
776 | +# MERCHANTABILITY, SATISFACTORY QUALITY, or FITNESS FOR A PARTICULAR |
777 | +# PURPOSE. See the GNU Affero General Public License for more details. |
778 | + |
779 | +# You should have received a copy of the GNU Affero General Public License |
780 | +# along with this program. If not, see <http://www.gnu.org/licenses/>. |
781 | |
782 | === added file 'ticket_system/ticket_system/local_tests.py' |
783 | --- ticket_system/ticket_system/local_tests.py 1970-01-01 00:00:00 +0000 |
784 | +++ ticket_system/ticket_system/local_tests.py 2013-12-09 17:34:42 +0000 |
785 | @@ -0,0 +1,29 @@ |
786 | +# Houston |
787 | +# Ubuntu Continuous Integration Engine |
788 | +# Copyright 2013 Canonical Ltd. |
789 | + |
790 | +# This program is free software: you can redistribute it and/or modify it |
791 | +# under the terms of the GNU Affero General Public License version 3, as |
792 | +# published by the Free Software Foundation. |
793 | + |
794 | +# This program is distributed in the hope that it will be useful, but |
795 | +# WITHOUT ANY WARRANTY; without even the implied warranties of |
796 | +# MERCHANTABILITY, SATISFACTORY QUALITY, or FITNESS FOR A PARTICULAR |
797 | +# PURPOSE. See the GNU Affero General Public License for more details. |
798 | + |
799 | +# You should have received a copy of the GNU Affero General Public License |
800 | +# along with this program. If not, see <http://www.gnu.org/licenses/>. |
801 | + |
802 | +from django.test.simple import DjangoTestSuiteRunner |
803 | +from django.conf import settings |
804 | + |
805 | + |
806 | +class LocalAppsTestSuiteRunner(DjangoTestSuiteRunner): |
807 | + """ Override the default 'test' command to only run local tests. """ |
808 | + |
809 | + def run_tests(self, test_labels, *args, **kwargs): |
810 | + if not test_labels: |
811 | + test_labels = settings.LOCAL_APPS |
812 | + |
813 | + return super(LocalAppsTestSuiteRunner, self).run_tests( |
814 | + test_labels, *args, **kwargs) |
815 | |
816 | === added file 'ticket_system/ticket_system/settings.py' |
817 | --- ticket_system/ticket_system/settings.py 1970-01-01 00:00:00 +0000 |
818 | +++ ticket_system/ticket_system/settings.py 2013-12-09 17:34:42 +0000 |
819 | @@ -0,0 +1,192 @@ |
820 | +# Ubuntu Continuous Integration Engine |
821 | +# Copyright 2013 Canonical Ltd. |
822 | + |
823 | +# This program is free software: you can redistribute it and/or modify it |
824 | +# under the terms of the GNU Affero General Public License version 3, as |
825 | +# published by the Free Software Foundation. |
826 | + |
827 | +# This program is distributed in the hope that it will be useful, but |
828 | +# WITHOUT ANY WARRANTY; without even the implied warranties of |
829 | +# MERCHANTABILITY, SATISFACTORY QUALITY, or FITNESS FOR A PARTICULAR |
830 | +# PURPOSE. See the GNU Affero General Public License for more details. |
831 | + |
832 | +# You should have received a copy of the GNU Affero General Public License |
833 | +# along with this program. If not, see <http://www.gnu.org/licenses/>. |
834 | +# Django settings for ticket_system project. |
835 | + |
836 | +DEBUG = False |
837 | +TEMPLATE_DEBUG = DEBUG |
838 | + |
839 | +ADMINS = ( |
840 | + # ('Your Name', 'your_email@example.com'), |
841 | +) |
842 | + |
843 | +MANAGERS = ADMINS |
844 | + |
845 | +DATABASES = { |
846 | + 'default': { |
847 | + 'ENGINE': 'django.db.backends.postgresql_psycopg2', |
848 | + 'NAME': '', |
849 | + 'USER': '', |
850 | + 'PASSWORD': '', |
851 | + 'HOST': '', |
852 | + 'PORT': '', |
853 | + } |
854 | +} |
855 | + |
856 | +# Hosts/domain names that are valid for this site; required if DEBUG is False |
857 | +# See https://docs.djangoproject.com/en/1.5/ref/settings/#allowed-hosts |
858 | +ALLOWED_HOSTS = [] |
859 | + |
860 | +# Local time zone for this installation. Choices can be found here: |
861 | +# http://en.wikipedia.org/wiki/List_of_tz_zones_by_name |
862 | +# although not all choices may be available on all operating systems. |
863 | +# In a Windows environment this must be set to your system time zone. |
864 | +TIME_ZONE = 'GMT' |
865 | + |
866 | +# Language code for this installation. All choices can be found here: |
867 | +# http://www.i18nguy.com/unicode/language-identifiers.html |
868 | +LANGUAGE_CODE = 'en-us' |
869 | + |
870 | +SITE_ID = 1 |
871 | + |
872 | +# If you set this to False, Django will make some optimizations so as not |
873 | +# to load the internationalization machinery. |
874 | +USE_I18N = False |
875 | + |
876 | +# If you set this to False, Django will not format dates, numbers and |
877 | +# calendars according to the current locale. |
878 | +USE_L10N = True |
879 | + |
880 | +# If you set this to False, Django will not use timezone-aware datetimes. |
881 | +USE_TZ = True |
882 | + |
883 | +# Absolute filesystem path to the directory that will hold user-uploaded files. |
884 | +# Example: "/var/www/example.com/media/" |
885 | +MEDIA_ROOT = '' |
886 | + |
887 | +# URL that handles the media served from MEDIA_ROOT. Make sure to use a |
888 | +# trailing slash. |
889 | +# Examples: "http://example.com/media/", "http://media.example.com/" |
890 | +MEDIA_URL = '' |
891 | + |
892 | +# Absolute path to the directory static files should be collected to. |
893 | +# Don't put anything in this directory yourself; store your static files |
894 | +# in apps' "static/" subdirectories and in STATICFILES_DIRS. |
895 | +# Example: "/var/www/example.com/static/" |
896 | +STATIC_ROOT = '' |
897 | + |
898 | +# URL prefix for static files. |
899 | +# Example: "http://example.com/static/", "http://static.example.com/" |
900 | +STATIC_URL = '/static/' |
901 | + |
902 | +# Additional locations of static files |
903 | +STATICFILES_DIRS = ( |
904 | + # Put strings here, like "/home/html/static" or "C:/www/django/static". |
905 | + # Always use forward slashes, even on Windows. |
906 | + # Don't forget to use absolute paths, not relative paths. |
907 | +) |
908 | + |
909 | +# List of finder classes that know how to find static files in |
910 | +# various locations. |
911 | +STATICFILES_FINDERS = ( |
912 | + 'django.contrib.staticfiles.finders.FileSystemFinder', |
913 | + 'django.contrib.staticfiles.finders.AppDirectoriesFinder', |
914 | + #'django.contrib.staticfiles.finders.DefaultStorageFinder', |
915 | +) |
916 | + |
917 | +# Make this unique, and don't share it with anybody. |
918 | +SECRET_KEY = '1)*_ck0b)6mek=&dud8(g(=13g$s)_bwu#vzsq0g6yfjgdx-zb' |
919 | + |
920 | +# List of callables that know how to import templates from various sources. |
921 | +TEMPLATE_LOADERS = ( |
922 | + 'django.template.loaders.filesystem.Loader', |
923 | + 'django.template.loaders.app_directories.Loader', |
924 | +) |
925 | + |
926 | +MIDDLEWARE_CLASSES = ( |
927 | + 'django.middleware.common.CommonMiddleware', |
928 | + 'django.contrib.sessions.middleware.SessionMiddleware', |
929 | + 'django.middleware.csrf.CsrfViewMiddleware', |
930 | + 'django.contrib.auth.middleware.AuthenticationMiddleware', |
931 | + 'django.contrib.messages.middleware.MessageMiddleware', |
932 | + # Uncomment the next line for simple clickjacking protection: |
933 | + # 'django.middleware.clickjacking.XFrameOptionsMiddleware', |
934 | +) |
935 | + |
936 | +ROOT_URLCONF = 'ticket_system.urls' |
937 | + |
938 | +# Python dotted path to the WSGI application used by Django's runserver. |
939 | +WSGI_APPLICATION = 'ticket_system.wsgi.application' |
940 | + |
941 | +TEMPLATE_DIRS = ( |
942 | + # Put strings here, like "/home/html/django_templates" or |
943 | + # "C:/www/django/templates". |
944 | + # Always use forward slashes, even on Windows. |
945 | + # Don't forget to use absolute paths, not relative paths. |
946 | +) |
947 | + |
948 | +INSTALLED_APPS = ( |
949 | + 'django.contrib.auth', |
950 | + 'django.contrib.contenttypes', |
951 | + 'django.contrib.sessions', |
952 | + 'django.contrib.sites', |
953 | + 'django.contrib.messages', |
954 | + 'django.contrib.staticfiles', |
955 | + 'django.contrib.admin', |
956 | + 'south', |
957 | + 'tastypie', |
958 | +) |
959 | + |
960 | +LOCAL_APPS = ( |
961 | + 'people', |
962 | + 'project', |
963 | + 'ticket', |
964 | +) |
965 | + |
966 | +INSTALLED_APPS = LOCAL_APPS + INSTALLED_APPS |
967 | +TEST_RUNNER = "ticket_system.local_tests.LocalAppsTestSuiteRunner" |
968 | +SESSION_SERIALIZER = 'django.contrib.sessions.serializers.JSONSerializer' |
969 | +TASTYPIE_DEFAULT_FORMATS = ['json'] |
970 | + |
971 | +SESSION_SERIALIZER = 'django.contrib.sessions.serializers.JSONSerializer' |
972 | + |
973 | +# A sample logging configuration. The only tangible logging |
974 | +# performed by this configuration is to send an email to |
975 | +# the site admins on every HTTP 500 error when DEBUG=False. |
976 | +# See http://docs.djangoproject.com/en/dev/topics/logging for |
977 | +# more details on how to customize your logging configuration. |
978 | +LOGGING = { |
979 | + 'version': 1, |
980 | + 'disable_existing_loggers': False, |
981 | + 'filters': { |
982 | + 'require_debug_false': { |
983 | + '()': 'django.utils.log.RequireDebugFalse' |
984 | + } |
985 | + }, |
986 | + 'handlers': { |
987 | + 'mail_admins': { |
988 | + 'level': 'ERROR', |
989 | + 'filters': ['require_debug_false'], |
990 | + 'class': 'django.utils.log.AdminEmailHandler' |
991 | + } |
992 | + }, |
993 | + 'loggers': { |
994 | + 'django.request': { |
995 | + 'handlers': ['mail_admins'], |
996 | + 'level': 'ERROR', |
997 | + 'propagate': True, |
998 | + }, |
999 | + } |
1000 | +} |
1001 | + |
1002 | +# Use local settings if available |
1003 | +try: |
1004 | + from local_settings import * |
1005 | +except ImportError: |
1006 | + pass |
1007 | + |
1008 | +try: |
1009 | + from db_settings import DATABASES |
1010 | +except ImportError: |
1011 | + pass |
1012 | |
1013 | === added file 'ticket_system/ticket_system/urls.py' |
1014 | --- ticket_system/ticket_system/urls.py 1970-01-01 00:00:00 +0000 |
1015 | +++ ticket_system/ticket_system/urls.py 2013-12-09 17:34:42 +0000 |
1016 | @@ -0,0 +1,24 @@ |
1017 | +# Ubuntu Continuous Integration Engine |
1018 | +# Copyright 2013 Canonical Ltd. |
1019 | + |
1020 | +# This program is free software: you can redistribute it and/or modify it |
1021 | +# under the terms of the GNU Affero General Public License version 3, as |
1022 | +# published by the Free Software Foundation. |
1023 | + |
1024 | +# This program is distributed in the hope that it will be useful, but |
1025 | +# WITHOUT ANY WARRANTY; without even the implied warranties of |
1026 | +# MERCHANTABILITY, SATISFACTORY QUALITY, or FITNESS FOR A PARTICULAR |
1027 | +# PURPOSE. See the GNU Affero General Public License for more details. |
1028 | + |
1029 | +# You should have received a copy of the GNU Affero General Public License |
1030 | +# along with this program. If not, see <http://www.gnu.org/licenses/>. |
1031 | + |
1032 | +from django.conf.urls import patterns, include, url |
1033 | +from django.contrib import admin |
1034 | + |
1035 | +admin.autodiscover() |
1036 | + |
1037 | +urlpatterns = patterns( |
1038 | + '', |
1039 | + url(r'^admin/', include(admin.site.urls)), |
1040 | +) |
1041 | |
1042 | === added file 'ticket_system/ticket_system/wsgi.py' |
1043 | --- ticket_system/ticket_system/wsgi.py 1970-01-01 00:00:00 +0000 |
1044 | +++ ticket_system/ticket_system/wsgi.py 2013-12-09 17:34:42 +0000 |
1045 | @@ -0,0 +1,46 @@ |
1046 | +# Ubuntu Continuous Integration Engine |
1047 | +# Copyright 2013 Canonical Ltd. |
1048 | + |
1049 | +# This program is free software: you can redistribute it and/or modify it |
1050 | +# under the terms of the GNU Affero General Public License version 3, as |
1051 | +# published by the Free Software Foundation. |
1052 | + |
1053 | +# This program is distributed in the hope that it will be useful, but |
1054 | +# WITHOUT ANY WARRANTY; without even the implied warranties of |
1055 | +# MERCHANTABILITY, SATISFACTORY QUALITY, or FITNESS FOR A PARTICULAR |
1056 | +# PURPOSE. See the GNU Affero General Public License for more details. |
1057 | + |
1058 | +# You should have received a copy of the GNU Affero General Public License |
1059 | +# along with this program. If not, see <http://www.gnu.org/licenses/>. |
1060 | +""" |
1061 | +WSGI config for ticket_system project. |
1062 | + |
1063 | +This module contains the WSGI application used by Django's development server |
1064 | +and any production WSGI deployments. It should expose a module-level variable |
1065 | +named ``application``. Django's ``runserver`` and ``runfcgi`` commands discover |
1066 | +this application via the ``WSGI_APPLICATION`` setting. |
1067 | + |
1068 | +Usually you will have the standard Django WSGI application here, but it also |
1069 | +might make sense to replace the whole Django WSGI application with a custom one |
1070 | +that later delegates to the Django one. For example, you could introduce WSGI |
1071 | +middleware here, or combine a Django application with an application of another |
1072 | +framework. |
1073 | + |
1074 | +""" |
1075 | +import os |
1076 | + |
1077 | +# We defer to a DJANGO_SETTINGS_MODULE already in the environment. This breaks |
1078 | +# if running multiple sites in the same mod_wsgi process. To fix this, use |
1079 | +# mod_wsgi daemon mode with each site in its own daemon process, or use |
1080 | +# os.environ["DJANGO_SETTINGS_MODULE"] = "ticket_system.settings" |
1081 | +os.environ.setdefault("DJANGO_SETTINGS_MODULE", "ticket_system.settings") |
1082 | + |
1083 | +# This application object is used by any WSGI server configured to use this |
1084 | +# file. This includes Django's development server, if the WSGI_APPLICATION |
1085 | +# setting points here. |
1086 | +from django.core.wsgi import get_wsgi_application |
1087 | +application = get_wsgi_application() |
1088 | + |
1089 | +# Apply WSGI middleware here. |
1090 | +# from helloworld.wsgi import HelloWorldApplication |
1091 | +# application = HelloWorldApplication(application) |
Looks good.