Merge lp:~allenap/maas/packaging.trusty.authbind-ipv6 into lp:maas/1.5

Proposed by Gavin Panella on 2014-07-15
Status: Superseded
Proposed branch: lp:~allenap/maas/packaging.trusty.authbind-ipv6
Merge into: lp:maas/1.5
Diff against target: 3526 lines (+3177/-0)
69 files modified
debian/changelog (+1165/-0)
debian/compat (+1/-0)
debian/control (+232/-0)
debian/copyright (+25/-0)
debian/extras/20-maas.conf (+32/-0)
debian/extras/99-maas (+5/-0)
debian/extras/99-maas-sudoers (+4/-0)
debian/extras/isc-dhcp-server.override (+1/-0)
debian/extras/maas (+6/-0)
debian/extras/maas-probe-dhcp (+7/-0)
debian/extras/maas-provision (+7/-0)
debian/extras/maas-region-admin (+8/-0)
debian/extras/maas-region-celeryd (+50/-0)
debian/extras/maas_remote_syslog_compress (+2/-0)
debian/maas-cli.install (+2/-0)
debian/maas-cli.links (+1/-0)
debian/maas-cli.lintian-overrides (+1/-0)
debian/maas-cluster-controller.config (+36/-0)
debian/maas-cluster-controller.dirs (+2/-0)
debian/maas-cluster-controller.install (+31/-0)
debian/maas-cluster-controller.links (+1/-0)
debian/maas-cluster-controller.lintian-overrides (+1/-0)
debian/maas-cluster-controller.logrotate (+9/-0)
debian/maas-cluster-controller.maas-cluster-celery.upstart (+30/-0)
debian/maas-cluster-controller.maas-pserv.upstart (+32/-0)
debian/maas-cluster-controller.postinst (+166/-0)
debian/maas-cluster-controller.postrm (+43/-0)
debian/maas-cluster-controller.templates (+7/-0)
debian/maas-common.install (+2/-0)
debian/maas-common.postinst (+14/-0)
debian/maas-common.postrm (+14/-0)
debian/maas-dhcp.apparmor (+7/-0)
debian/maas-dhcp.install (+1/-0)
debian/maas-dhcp.maas-dhcp-server.upstart (+65/-0)
debian/maas-dhcp.postinst (+15/-0)
debian/maas-dhcp.postrm (+13/-0)
debian/maas-dns.dirs (+1/-0)
debian/maas-dns.postinst (+46/-0)
debian/maas-dns.postrm (+23/-0)
debian/maas-region-controller-min.apport (+37/-0)
debian/maas-region-controller-min.dirs (+1/-0)
debian/maas-region-controller-min.install (+40/-0)
debian/maas-region-controller-min.links (+2/-0)
debian/maas-region-controller-min.lintian-overrides (+6/-0)
debian/maas-region-controller-min.logrotate (+18/-0)
debian/maas-region-controller-min.maas-region-celery.upstart (+27/-0)
debian/maas-region-controller-min.maas-txlongpoll.upstart (+27/-0)
debian/maas-region-controller-min.postinst (+170/-0)
debian/maas-region-controller-min.postrm (+39/-0)
debian/maas-region-controller-min.prerm (+9/-0)
debian/maas-region-controller-min.templates (+22/-0)
debian/maas-region-controller.config (+45/-0)
debian/maas-region-controller.postinst (+301/-0)
debian/maas-region-controller.postrm (+59/-0)
debian/maas-region-controller.prerm (+12/-0)
debian/maintscript (+2/-0)
debian/patches/01-fix-database-settings.patch (+24/-0)
debian/patches/02-pserv-config.patch (+34/-0)
debian/patches/03-txlongpoll-config.patch (+37/-0)
debian/patches/series (+3/-0)
debian/po/POTFILES.in (+2/-0)
debian/po/templates.pot (+82/-0)
debian/python-django-maas.install (+2/-0)
debian/python-maas-client.install (+1/-0)
debian/python-maas-provisioningserver.install (+5/-0)
debian/python-maas-provisioningserver.lintian-overrides (+2/-0)
debian/rules (+56/-0)
debian/source/format (+1/-0)
debian/watch (+3/-0)
To merge this branch: bzr merge lp:~allenap/maas/packaging.trusty.authbind-ipv6
Reviewer Review Type Date Requested Status
MAAS Maintainers 2014-07-15 Pending
Review via email: mp+226930@code.launchpad.net

Commit message

Configure authbind to permit binding all IPv6 addresses on ports 68 and 69 too.

Description of the change

Backport of r285 from packaging trunk.

To post a comment you must log in.

Unmerged revisions

285. By Gavin Panella on 2014-07-15

Configure authbind to permit binding all IPv6 addresses on ports 68 and 69 too.

284. By Greg Lutostanski on 2014-06-20

[r=andreserl][bug=1332532][author=lutostag] move python-seamicroclient dep from maas-cluster-controller to python-maas-provisioningserver

283. By Greg Lutostanski on 2014-06-20

[r=blake-rouse,andreser][bug=1328231][author=lutostag] Fix bug 1328231 by adding grub-common as a dependency for maas-cluster-controller on trusty

282. By Julian Edwards on 2014-06-04

Release 1.5.3; open 1.5.4

281. By Raphaël Badin on 2014-06-03

Backport revision 278: Add sudoer rule 'maas-dhcp-server stop' job.

280. By Julian Edwards on 2014-05-26

open 1.5.3

279. By Julian Edwards on 2014-05-26

1.5.2 release

278. By Raphaël Badin on 2014-05-23

Add dependency on python-pexpect.

277. By Raphaël Badin on 2014-05-23

Bump upstream revision.

276. By Andres Rodriguez on 2014-04-15

Fix packaging

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== added directory 'debian'
2=== added file 'debian/changelog'
3--- debian/changelog 1970-01-01 00:00:00 +0000
4+++ debian/changelog 2014-07-15 21:22:45 +0000
5@@ -0,0 +1,1165 @@
6+maas (1.5.4+bzr2287-0ubuntu1) UNRELEASED; urgency=medium
7+
8+ * UNRELEASED
9+
10+ [ Greg Lutostanski ]
11+ * debian/control:
12+ - maas-cluster-controller depends on grub-common
13+ - maas-provisioningserver not maas-cluster-controller depends on
14+ python-seamicroclient (LP: #1332532)
15+
16+ + [ Gavin Panella ]
17+ * debian/maas-cluster-controller.postinst
18+ - Allow maas-pserv to bind to all IPv6 addresses too.
19+
20+ -- Julian Edwards <julian.edwards@canonical.com> Wed, 04 Jun 2014 13:32:00 +1000
21+
22+maas (1.5.3+bzr2287-0ubuntu1) trusty; urgency=medium
23+
24+ * New upstream bugfix release:
25+ - Reduce number of celery tasks emitted when updating a cluster controller
26+ (LP: #1324944)
27+ - Fix VirshSSH template which was referencing invalid attributes
28+ (LP: #1324966)
29+ - Fix a start up problem where a database lock was being taken outside of
30+ a transaction (LP: #1325759)
31+ - Reformat badly formatted Architecture error message (LP: #1301465)
32+ - Final changes to support ppc64el (now known as PowerNV) (LP: #1315154)
33+
34+ [ Raphaël Badin ]
35+ * debian/extras/99-maas-sudoers:
36+ - Add rule 'maas-dhcp-server stop' job.
37+
38+ -- Julian Edwards <julian.edwards@canonical.com> Wed, 04 Jun 2014 13:31:46 +1000
39+
40+maas (1.5.2+bzr2277-0ubuntu1) trusty; urgency=medium
41+
42+ * New upstream bugfix release:
43+ - Remove workaround for fixed Django bug 1311433 (LP: #1311433)
44+ - Ensure that validation errors are returned when adding a node over
45+ the API and its cluster controller is not contactable. (LP: #1305061)
46+ - Hardware enablement support for PowerKVM
47+ - Shorten the time taken for a cluster to initially connect to the region
48+ via RPC to around 2 seconds (LP: #1317682)
49+ - Faster DHCP leases parser (LP: #1305102)
50+ - Documentation fixed explaining how to enable an ephemeral backdoor
51+ (LP: #1321696)
52+ - Use probe-and-enlist-hardware to enlist all virtual machine inside
53+ a libvirt machine, allow password qemu+ssh connections.
54+ (LP: #1315155, LP: #1315157)
55+ - Rename ppc64el boot loader to PowerKVM (LP: #1315154)
56+ * debian/control:
57+ - Add missing dependency in maas-cluster-controller for python-pexpect
58+
59+ -- Julian Edwards <julian.edwards@canonical.com> Mon, 26 May 2014 10:56:33 +1000
60+
61+maas (1.5+bzr2252-0ubuntu1) trusty; urgency=medium
62+
63+ * New upstream release
64+ - Add support to install Third Party Drivers. In order for this to be
65+ used the user will have to go to the Settings page to enable the
66+ installation of these drivers. (LP: #1305839)
67+ - Use release images instead of daily. (LP: #1306701)
68+ - Quote interface name in dhcpd.template, otherwise DHCP server fails
69+ to start. (LP: #1306335)
70+ - Fix IntegrityError, when multiple processes are trying to register
71+ the same component. (LP: #1307415)
72+ - Add missing armhf commissioning template (LP: #1307780)
73+ * debian/maas-region-controller-min.install: Install drivers.yaml.
74+ * debian/maas-region-controller.postinst: No longer show the
75+ installation note by default. (LP: #1284652)
76+
77+ -- Andres Rodriguez <andreserl@ubuntu.com> Wed, 09 Apr 2014 19:02:00 -0400
78+
79+maas (1.5+bzr2236-0ubuntu1) trusty; urgency=medium
80+
81+ * New upstream bugfix release.
82+ - Fix simplestreams path to use the new data source path. (LP: #1305118)
83+ - Fix commissioning_distro_series validation failure. (LP: #1304408)
84+ - Fix DB migration 0072_remove_ipmi_autodetec. (LP: #1302156)
85+ - Update documentation.
86+ * debian/maas-region-controller-min.maas-region-celery.upstart,
87+ debian/maas-region-controller-min.maas-txlongpoll.upstart: Fix ISO
88+ install by making sure rabbitmq user is really created if it does not
89+ exist (LP: #1298559)
90+
91+ -- Andres Rodriguez <andreserl@ubuntu.com> Wed, 09 Apr 2014 18:36:55 -0400
92+
93+maas (1.5+bzr2230-0ubuntu1) trusty; urgency=medium
94+
95+ * New upstream bugfix release:
96+ - Fix Cluster Controller to handle deprecated config items gracefull.
97+ Otherwise it fails on upgrades. (LP: #1302772)
98+ - Fix documentation generation and referencing. (LP: #1302956)
99+ - Ensure we PXE boot when we turn on SM15K systems. (LP: #1303915)
100+
101+ -- Andres Rodriguez <andreserl@ubuntu.com> Mon, 07 Apr 2014 10:26:51 -0400
102+
103+maas (1.5+bzr2227-0ubuntu1) trusty; urgency=medium
104+
105+ * New upstream bugfix release:
106+ - Fix catching exceptions raised by
107+ twisted.conch.ssh.keys.Key.fromString (LP: #1298788)
108+ - Fix validationg in default NodeGroupInterface.broadcast_ip making it
109+ optional. (LP: #1299374)
110+ - Drop install-pxe-bootloader as it conflicts with newer import script.
111+ - Remove references to old import script.
112+ - Fix changes that cause overwriting of existing entries.
113+ - Fix inappropriate ValidationError when defining networks with nested
114+ (but non-identical) address ranges. (LP: #1299114)
115+ - Fix issue where if a node does not provide an architecture type on dhcp
116+ request, or no other boot method is available for that architecture,
117+ the node still uses pxelinux.0 to boot. (LP: #1300285)
118+ - Take an advisory lock to prevent concurrent creation of the
119+ eventloops table. (LP: #1300363)
120+ - Remove the cloud_images_archive setting, as it conflicts with new
121+ import script. (LP: #1300587)
122+ - Add a 'logout confirmation' page. Using this, the logout action is
123+ protected against CSRF attacks because it uses a POST request, in
124+ conjunction with Django's CSRF protection feature. (LP: #1298790)
125+ - Fix cluster listings when dealing with large number of clusters by
126+ paginating it. (LP: #1301242)
127+ - Change list_boot_images() so that it can cope with a missing boot
128+ images directory: this happens if the reporting task runs before the
129+ images have been imported. (LP: #213984)
130+ - Fix internal server error on fast path installer. (LP: #1293676)
131+ - Fix uploading files using maas-cli. (LP: #1187826)
132+ - Fix SM15k Invalid Power Control and Fix enlisting machines with
133+ 2.0 api. (LP: #1302818, LP: #1302819)
134+
135+ [ Andres Rodriguez ]
136+ * debian/maas-cluster-controller.install: Install UEFI templates
137+ * debian/maas-cluster-controller.dirs: Create 'boot-resources' dir.
138+
139+ [ Jason Hobbs ]
140+ * debian/extras/99-maas: Allow access to keyserver.ubuntu.com via
141+ squid-deb-proxy.
142+
143+ [Jeroen Vermeulen]
144+ * debian/maas-cluster-controller.postinst:
145+ - Make the tgt config link point to the new boot-resources dir.
146+ * debian/maas-region-controller-min.dirs:
147+ - Don't create /var/lib/maas/tftp.
148+
149+ -- Andres Rodriguez <andreserl@ubuntu.com> Thu, 03 Apr 2014 13:45:02 -0400
150+
151+maas (1.5+bzr2204-0ubuntu1) trusty; urgency=low
152+
153+ * New upstream release (LP: #1281881)
154+
155+ [ Andres Rodriguez ]
156+ * debian/maas-region-controller-min.templates: Set installation note to false
157+ by default.
158+ * Check rabbitmqctl is present before running commands:
159+ - debian/maas-region-controller-min.maas-region-celery.upstart.
160+ - debian/maas-region-controller-min.maas-txlongpoll.upstart.
161+ * make sure maas_longpoll rabbitmq user is created/with correct password on
162+ a package reconfigure.
163+ * debian/maas-dns.postinst: Fix upgrade setup of named.conf.options.
164+ * debian/maas-cluster-controller.install: Install UEFI templates (LP: #1299143)
165+
166+ [ Julian Edwards ]
167+ * debian/extas/maas: Echo warning to stderr so json stdout is not polluted
168+ * debian/maas-cluster-controller.postinst: Run upgrade-cluster on each
169+ upgrade
170+ * debian/maas-dns.postinst: Call edit_named_options to add a line in
171+ /etc/bind/named.conf.options that includes the
172+ /etc/named/maas/named.conf.options.inside.maas file.
173+ * debian/control:
174+ - maas-dns depends on python-iscpy
175+ - maas-cluster-controller depends on python-seamicroclient
176+ * debian/maas-cluster-controller.install: Install bootresources.yaml
177+
178+ [ Dustin Kirkland ]
179+ * debian/control: LP: #1297097
180+ - clean up package descriptions, modernize, and more clearly/simply
181+ explain what each package does
182+ - drop "Ubuntu" in front of MAAS, clean up command line/API description
183+
184+ -- Andres Rodriguez <andreserl@ubuntu.com> Fri, 28 Mar 2014 10:43:53 -0400
185+
186+maas (1.5+bzr1977-0ubuntu1) trusty; urgency=low
187+
188+ * New upstream bugfix release.
189+ - setup.py: Install missing shell snippet
190+
191+ -- Andres Rodriguez <andreserl@ubuntu.com> Wed, 19 Feb 2014 16:31:45 -0500
192+
193+maas (1.5+bzr1976-0ubuntu1) trusty; urgency=low
194+
195+ * New upstream release.
196+ * debian/maas-cluster-controller.postinst: Make sure upgrades handle
197+ authbind upgrades too.
198+
199+ -- Andres Rodriguez <andreserl@ubuntu.com> Sun, 16 Feb 2014 22:56:36 -0500
200+
201+maas (1.5+bzr1951-0ubuntu1) trusty; urgency=low
202+
203+ * New upstream release
204+ * debian/maas-cluster-controller.postinst: Also authbind port 69.
205+ * debian/maas-cluster-controller.maas-pserv.upstart: Export MAAS_URL.
206+
207+ -- Andres Rodriguez <andreserl@ubuntu.com> Sat, 15 Feb 2014 16:16:38 -0500
208+
209+maas (1.5+bzr1948-0ubuntu2) trusty; urgency=low
210+
211+ * debian/maas-cluster-controller.postinst: Make sure generator on
212+ pserv.yaml is updated on upgrade or reconfigure. (LP: #1273197)
213+ * debian/maas-cluster-controller.maas-pserv.upstart: Make sure maas-pserv
214+ is started with authbind.
215+
216+ -- Andres Rodriguez <andreserl@ubuntu.com> Sat, 15 Feb 2014 13:55:20 -0500
217+
218+maas (1.5+bzr1948-0ubuntu1) trusty; urgency=low
219+
220+ * New upstream release.
221+
222+ [ Graham Binns ]
223+ * debian/control: Depends on python-jsonschema.
224+
225+ [ Andres Rodriguez ]
226+ * debian/maas-region-controller-min.posinst: Make txlongpoll.yaml only
227+ readable by the app and not world readeable.
228+ * debian/patches/02-pserv-config.patch: Refreshed.
229+
230+ [ Julian Edwards ]
231+ * debian/extras/maas-cli renamed to debian/extras/maas, and introduce
232+ a deprecation warning in favour of using maas over maas-cli.
233+ * debian/extras/maas renamed to debian/extras/maas-region-admin
234+ * debian/maas-cli.install: install debian/extras/maas
235+ * debian/maas-dns.postinst: Invoke maas-region-admin instead of maas
236+ * debian/maas-region-controller-min.install: install maas-region-admin
237+ instead of maas
238+ * debian/maas-region-controller.postinst: Invoke maas-region-admin instead
239+ of maas
240+ * debian/maas-cli.links: Link from maas to maas-cli for backward compat.
241+
242+ [ Seth Arnold ]
243+ * debian/maas-region-controller-min.postinst: Make sure txlongpoll.yaml
244+ gets correct permissions on upgrade (LP: #1254034)
245+
246+ -- Andres Rodriguez <andreserl@ubuntu.com> Sat, 15 Feb 2014 12:08:23 -0500
247+
248+maas (1.5+bzr1909-0ubuntu1) trusty; urgency=low
249+
250+ * New upstream release.
251+
252+ [ Dustin Kirkland ]
253+ * debian/maas-region-controller-min.postinst: Fix typo in sed. Remove
254+ double quotes. (LP: #1274448)
255+
256+ [ Andres Rodriguez ]
257+ * debian/control: Add depends on python-crochet.
258+ * Get rid of dfsg on the versioning as we no longer strip any code from
259+ the orig tarball.
260+ - debian/rules: Do not strip any files out of the tarball.
261+ * debian/patches/*: Refreshed.
262+
263+ -- Andres Rodriguez <andreserl@ubuntu.com> Fri, 31 Jan 2014 09:38:51 -0500
264+
265+maas (1.4+bzr1853+dfsg-0ubuntu1) trusty; urgency=low
266+
267+ * New upstream release
268+
269+ -- Dustin Kirkland <kirkland@ubuntu.com> Tue, 28 Jan 2014 08:41:41 +0000
270+
271+maas (1.4+bzr1849+dfsg-0ubuntu1) trusty; urgency=low
272+
273+ * New upstream release.
274+
275+ [ Gavin Panella ]
276+ * debian/control: Remove all dependencies on Avahi and DBUS.
277+
278+ -- Julian Edwards <julian.edwards@canonical.com> Tue, 28 Jan 2014 17:12:22 +1000
279+
280+maas (1.4+bzr1820+dfsg-0ubuntu1) trusty; urgency=low
281+
282+ * New upstream Release.
283+
284+ [ Jeroen Vermeulen ]
285+ * Move maas-probe-dhcp from maas-dhcp to python-maas-provisioningserver.
286+
287+ [ Andres Rodriguez ]
288+ * debian/maas-region-controller.postinst: Make sure maas-txlongpoll and
289+ maas-region-celery get restarted.
290+ * debian/control:
291+ - python-maas-provisioningserver Breaks/Replaces for maas-dhcp due to
292+ moving files around packages.
293+ - Suggests ipmitool, libvirt-bin, amtterm.
294+
295+ -- Andres Rodriguez <andreserl@ubuntu.com> Wed, 15 Jan 2014 00:24:58 -0500
296+
297+maas (1.4+bzr1817+dfsg-0ubuntu1) trusty; urgency=low
298+
299+ * New upstream release
300+
301+ [ Andres Rodriguez ]
302+ * debian/maas-dns.postinst: Drop write_dns_config as this is run by
303+ celery jobs.
304+ * debian/maas-region-controller.templates: Rename template to
305+ maas-region-controller-min.templates
306+ * debian/control: Depends on python-amqp; Conflicts on python-librabbitmq.
307+
308+ [ Julian Edwards ]
309+ * New maas-probe-dhcp script to detect DHCP servers
310+ - debian/extras/maas-probe-dhcp: New script
311+ - debian/maas-dhcp.install: Install new maas-probe-dhcp script
312+ - maas-dhcp.lintian-overrides: New maas-probe-dhcp script has no manpage
313+
314+ -- Andres Rodriguez <andreserl@ubuntu.com> Wed, 15 Jan 2014 00:23:44 -0500
315+
316+maas (1.4+bzr1789+dfsg-0ubuntu1) trusty; urgency=low
317+
318+ * New upstream release
319+
320+ [ Jeroen Vermeulen ]
321+ * Keep legacy import_ephemerals config for now.
322+
323+ [ Andres Rodriguez ]
324+ * debian/maas-region-controller.postinst: Allo default-maas-url debconf
325+ option to be preseeded.
326+ * Make use of authbind to allow maas-cluster-celery bind port as non-root.
327+ - debian/control: Depends on authbind for maas-cluster-controller.
328+ - debian/maas-cluster-controller.{postinst,postrm}: Handle creation
329+ and removal of required authbind file.
330+ * Split maas-region-controller into maas-region-controller-min.
331+ - debian/maas-region-controller-min.{postinst,postrm,prerm}: Handle
332+ basic configuration for rsyslogd, squid-deb-proxy, and maas-url.
333+ - debian/control: Depends on maas-region-controller-min, postgresql
334+ and rabbitmq-server for maas-region-controller.
335+
336+ -- Andres Rodriguez <andreserl@ubuntu.com> Thu, 10 Oct 2013 17:07:51 -0400
337+
338+maas (1.4+bzr1693+dfsg-0ubuntu1) saucy; urgency=low
339+
340+ * New Upstream Release (LP: #1218526)
341+ - This new upstream release contains fixes and improvements of the
342+ features approved by the FFe above.
343+ - Fixes commissioning failure on Saucy with 'Failed Test' (LP: #1237364)
344+ - Fixes access of static images over http (LP: #1236544)
345+ * d/maas-cluster-controller.postinst: a2enmod version module (LP: #1236544)
346+ * d/control: Bump depends on python-django to 1.4. (LP: #1236572)
347+ * d/maas-dhcp.postinst: Fail gracefully if apparmor_parser fails, allowing
348+ to install maas-dhcp during an ISO install. (LP: #1236786)
349+
350+ -- Andres Rodriguez <andreserl@ubuntu.com> Fri, 04 Oct 2013 12:33:05 -0400
351+
352+maas (1.4+bzr1656+dfsg-0ubuntu2) saucy; urgency=low
353+
354+ * debian/control: Recommends on maas-dns instead of Depends for region
355+ because maas-dns needs the region installed first.
356+
357+ -- Andres Rodriguez <andreserl@ubuntu.com> Thu, 03 Oct 2013 10:36:20 -0400
358+
359+maas (1.4+bzr1656+dfsg-0ubuntu1) saucy; urgency=low
360+
361+ [ Andres Rodriguez ]
362+ * New upstream bugfix release.
363+ - Respect filters for ephemerals_script.py.
364+ * debian/control: Depends on ubuntu-cloudimage-keyring instead of
365+ ubuntu-cloud-keyring; depends on python-distro-info.
366+ * debian/control: Remove suggests on maas-dhcp and maas-dns as they are
367+ now dependencies.
368+
369+ [ Scott Moser ]
370+ * debian/control: Bump depends on isc-dhcp-server to 4.2.4
371+ * debian/maas-dhcp.maas-dhcp-server.upstart: Change ownership of leases
372+ file to root:root, and run the daemon as dhcpd:dhcpd.
373+
374+ -- Andres Rodriguez <andreserl@ubuntu.com> Tue, 01 Oct 2013 15:26:34 -0400
375+
376+maas (1.4+bzr1655+dfsg-0ubuntu1) saucy; urgency=low
377+
378+ * New Upstream release. (LP: #1218526)
379+ * debian/control:
380+ - Depends on python-djorm-ext-pgarray, python-curtin,
381+ python-simplestreams, ubuntu-cloud-keyring.
382+ - Depends on maas-dns, maas-dhcp to get them seeded and
383+ into main (LP: #1227353)
384+
385+ -- Andres Rodriguez <andreserl@ubuntu.com> Wed, 28 Aug 2013 11:17:44 -0400
386+
387+maas (1.4+bzr1551+dfsg-0ubuntu1) saucy; urgency=low
388+
389+ * New upstream release
390+
391+ -- Andres Rodriguez <andreserl@ubuntu.com> Thu, 15 Aug 2013 16:20:41 -0400
392+
393+maas (1.4+bzr1548+dfsg-0ubuntu1) saucy; urgency=low
394+
395+ * New upstream release
396+
397+ -- Andres Rodriguez <andreserl@ubuntu.com> Thu, 18 Jul 2013 10:15:10 -0400
398+
399+maas (1.4+bzr1539+dfsg-0ubuntu1) saucy; urgency=low
400+
401+ * New upstream release
402+ * Symlink apache2 config into /etc/apache2/conf-enabled/ instead of
403+ /etc/apache2/conf.d as apache2.4 no longer supports the latter.
404+ - debian/maas-cluster-controller.{postinst,postrm}
405+ - debian/maas-region-controller.{postinst,postrm}
406+ * debian/control: Bump Standards-Version to 3.9.4.
407+ * debian/maas-cluster-controller.lintian-overrides: Remove unneeded
408+ override and add a new one.
409+ * debian/maas-region-controller.lintian-overrides: Add extra overrides.
410+
411+ -- Andres Rodriguez <andreserl@ubuntu.com> Wed, 03 Jul 2013 17:11:02 -0400
412+
413+maas (1.4+bzr1538+dfsg-0ubuntu1) saucy; urgency=low
414+
415+ * New upstream release
416+ * debian/patches/04-setup-dont-user-list-snippets.patch: Drop. Merged
417+ Upstream.
418+
419+ -- Andres Rodriguez <andreserl@ubuntu.com> Thu, 13 Jun 2013 20:06:35 -0400
420+
421+maas (1.4+bzr1527+dfsg-0ubuntu1) saucy; urgency=low
422+
423+ * debian/patches/04-setup-dont-user-list-snippets.patch: Drop importing
424+ maasserver modules to list snippets in favor to using glob. Otherwise
425+ we would have to add various non necessary Build-Dependencies.
426+
427+ [ Jeroen Vermeulen ]
428+ * Install templates into /etc/maas/templates/.
429+
430+ -- Andres Rodriguez <andreserl@ubuntu.com> Mon, 03 Jun 2013 17:59:31 -0400
431+
432+maas (1.4+bzr1505+dfsg-0ubuntu1) saucy; urgency=low
433+
434+ * New upstream release
435+
436+ [ Steve Langasek ]
437+ * Add missing dependency on iproute to maas-region-controller, for use of
438+ /sbin/ip in postinst.
439+
440+ [ Julian Edwards ]
441+ * debian/maas-dhcp.maas-dhcp-server.upstart:
442+ - Detect 12.04 as the host OS and install with correct permissions. This
443+ allows the same packaging to be used in the 12.04 backport.
444+
445+ [ Andres Rodriguez ]
446+ * Update packaging to support FPI:
447+ - debian/control: Depends on apache2 for maas-cluster-controller.
448+ - debian/maas-cluster-controller.install: Install http config file.
449+ - debian/maas-cluster-controller.{postinst,postrm}: Handle symlink creation
450+ and deletion.
451+ * debian/maas-region-controller.install: Install preseeds in
452+ etc/maas/preseeds. (LP: #1073463)
453+
454+ [ Jeroen Vermeulen ]
455+ * In the source tree, /etc/maas/pserv.yaml has moved from etc/ to etc/maas/.
456+ * Install templates into /etc/maas/templates/.
457+
458+ -- Andres Rodriguez <andreserl@ubuntu.com> Mon, 03 Jun 2013 16:53:14 -0400
459+
460+maas (1.3+bzr1455+dfsg-0ubuntu1) raring; urgency=low
461+
462+ * New upstream bugfix release.
463+ - Fixes and returns the 'resource_url' with the 'canonical' url for
464+ a file that is fetched using the API (LP: #1154142)
465+
466+ [ Andres Rodriguez ]
467+ * debian/control:
468+ - Change Conflicts/Replaces for Breaks/Replaces.
469+ - Conflicts on tftpd-hpa and dnsmasq.
470+ - Do not pre-depends, but Depends on ${misc:Depends} for 'maas'.
471+
472+ [ Steve Langasek ]
473+ * postinst scripts are never called with 'reconfigure' as the script
474+ argument. Remove references to this (mythical) invocation.
475+ * always call 'set -e' from maintainer scripts instead of passing 'sh -e'
476+ as the interpreter, so that scripts will behave correctly when run via
477+ 'sh -x'.
478+ * invoke-rc.d is never allowed to not exist - simplify scripts (and make
479+ them better policy-compliant) by invoking unconditionally. (The only
480+ possible exception is in the postrm, where it's *theoretically* possible
481+ for invoke-rc.d to be missing if the user has completely stripped
482+ down their system; that's a fairly unreasonable corner case, but we
483+ might as well be correct if it ever happens.)
484+ * db_get+db_set is a no-op; don't call db_set to push back a value we just
485+ got from db_get.
486+ * Omit superfluous calls to 'exit 0' at the end of each script.
487+ * Remove maas-cluster-controller prerm script, which called debconf for no
488+ reason.
489+ * Don't invoke debconf in the postrm script either, debhelper already does
490+ this for us.
491+ * Other miscellaneous maintainer script fixes
492+ * debian/maas-common.postinst: call adduser and addgroup unconditionally;
493+ the tools are already designed to DTRT, we don't need to check for the
494+ user/group existence before calling them nor should we worry about
495+ calling them only once on first install.
496+ * debian/maas-common.postrm: delete the maas group, not just the user,
497+ as the comment in the code implies we should do.
498+
499+ -- Andres Rodriguez <andreserl@ubuntu.com> Tue, 19 Mar 2013 15:38:22 -0400
500+
501+maas (1.3+bzr1452+dfsg-0ubuntu1) raring; urgency=low
502+
503+ * New upstream release.
504+ - MAAS file storage mechanism is shifting from a single shared
505+ namespace to a per-user namespace. Operators of the majority
506+ of MAAS systems will not notice any change. However, operators
507+ of the most complex installations may find that a new
508+ "shared-environment" user is created, and that some resources
509+ are reassigned to it, such as API credentials and SSH public
510+ keys. This provides a transitional environment that mimics the
511+ behaviour of a shared namespace.
512+
513+ [ Raphaël Badin ]
514+ * debian/control: maas-region-controller depends on bind9utils.
515+ (LP: #1103195)
516+ * debian/maas-dns.postinst: Call write_dns_config.
517+ (LP: #1085865).
518+ * debian/maas-cluster-controller.postinst: Fix the name of the config
519+ file (/etc/maas/pserv.yaml and not /etc/maas/pserv.conf)
520+ (LP: #1083542).
521+ * debian/extras/99-maas-sudoers: Add 'SETENV:' to sudo rule
522+ to allow preserving the environment when running
523+ /usr/sbin/maas-import-pxe-files via sudo.
524+ * debian/maas-dns.postinst: fix permissions and group ownership of
525+ file /etc/bind/maas/named.conf.rndc.maas. (LP: #1066935)
526+ * debian/control: Remove the dependency of maas-cluster-controller
527+ on rabbitmq-server. (LP: #1072744)
528+ * debian/extras/99-maas-sudoers: Add sudo rule for script
529+ /usr/sbin/maas-import-pxe-files.
530+ * debian/maas-cluster-controller.install: Removed commissioning-user-data
531+ script.
532+
533+ [ Julian Edwards ]
534+ * debian/maas-region-controller.install: Remove installation of maas-gc; it
535+ is no longer required as upstream no longer stores files in the filesystem.
536+ (LP: #1069734)
537+ * debian/maas-cluster-controller.postinst: Ensure that /etc/maas/pserv.yaml
538+ is updated when reconfiguring. (LP: #1081212)
539+
540+ [ Jeroen Vermeulen ]
541+ * debian/maas-cluster-controller.install: Install import scripts.
542+ * debian/maas-cluster-controller.postinst: Configure tgt (the iSCSI server)
543+ so the import script can install files to it.
544+ * debian/maas-cluster-controller.postrm: Clean up tgt config.
545+ * debian/maas-region-controller.install: Move import scripts out to the
546+ cluster controller, and drop the maas-import-isos compatibility script.
547+ * debian/maas-region-controller.postinst: Remove tgt config.
548+ * debian/maas-region-controller.postrm: Remove tgt config cleanup.
549+ * Bump code revision to include latest user_data.template fixes.
550+
551+ [ Gavin Panella ]
552+ * debian/extras/99-maas: squashfs image download is no longer needed.
553+ * debian/maas-cluster-controller.install: maas-import-squashfs and its
554+ configuration file are no longer part of upstream.
555+ * debian/maas-cluster-controller.install: The maas-import-pxe-files cron
556+ task is no longer used.
557+ * debian/maas-cluster-controller.postinst: Remove leading comment
558+ markers from the 'generator' line in pserv.yaml.
559+
560+ [ Andres Rodriguez ]
561+ * debian/control:
562+ - maas-cluster-controller Conflicts with tftpd-hpa (LP: #1076028)
563+ - maas-dns: Conflicts with dnsmasq
564+ - maas-cluster-controller Conflicts/Replaces maas-region-controller as
565+ import scripts are no longer shipped in the region.
566+ - debian/control: Depends on distro-info for maas-cluster-controller
567+ instead of maas-region-controller (LP: #1103194)
568+ * debian/maas-cluster-controller.config: If URL has been detected,
569+ add /MAAS if it doesn't contain it. This helps upgrades from versions
570+ where DEFAULT_MAAS_URL didn't use /MAAS.
571+
572+ -- Andres Rodriguez <andreserl@ubuntu.com> Mon, 04 Mar 2013 11:49:44 -0500
573+
574+maas (0.1+bzr1269+dfsg-0ubuntu1) quantal-proposed; urgency=low
575+
576+ * New upstream bugfix release
577+ - Fixes commissioning failing to set memory attribute. (LP: #1064638)
578+ - Fixes node listing by adding pagination (LP: #1064672)
579+ - Changes default bind rndc key which breaks initscripts (LP: #1066938)
580+ - Fixes invalid DNS config once node is enlisted (LP: #1066958)
581+ - Reference documentation link to correct URL (LP: #1067261)
582+
583+ [ Andres Rodriguez ]
584+ * debian/rules: Change upstream branch.
585+
586+ [ Gavin Panella ]
587+ * debian/maas-dns.postinst: Remove MAAS-related include lines from named's
588+ config before adding a new one (LP: #1066929)
589+
590+ [ Raphael Badin ]
591+ * debian/extras/maas-region-celeryd: Remove whitespace that affects DNS
592+ rabbitmq queue. (LP: #1067929)
593+
594+ -- Andres Rodriguez <andreserl@ubuntu.com> Tue, 16 Oct 2012 10:31:37 -0400
595+
596+maas (0.1+bzr1264+dfsg-0ubuntu2) quantal; urgency=low
597+
598+ * Fix MAAS not working after CD/preseed install (LP: #1065763)
599+ - debian/extras/maas-region-celeryd: Add wrapper to run celery from
600+ the upstart job.
601+ - debian/extras/maas-region-controller.maas-region-celery.upstart: Create
602+ rabbitmq user if it does not exists.
603+ * debian/control: Remove unneeded deps on python-txtftp for some binary pkgs.
604+ * debian/maas-region-controller.postinst: Minor fix referencing variable.
605+
606+ -- Andres Rodriguez <andreserl@ubuntu.com> Thu, 11 Oct 2012 17:38:08 -0400
607+
608+maas (0.1+bzr1264+dfsg-0ubuntu1) quantal; urgency=low
609+
610+ * New upstream release.
611+
612+ [ Raphaël Badin ]
613+ * debian/maas-region-controller.postinst: Enable proxy_http module.
614+ * debian/maas-cluster-controller.postinst: Create /var/lib/maas. (LP: #1065062)
615+
616+ [ Andres Rodriguez ]
617+ * Install maas-provision with python-maas-provisioningserver (LP: #1065171):
618+ - debian/python-maas-provisioningserver.install: Install
619+ - debian/control: Add Conflicts/Replaces with maas-cluster-controller
620+ to handle upgrades.
621+ * debian/patches/04-fix-ipmi-enlistment.patch: Drop. Merged Upstream.
622+ * debian/control: Depends on maas-region-controller for maas-dns.
623+ * debian/maas-region-controller.postinst: Set the correct host for
624+ BROKER_URL (LP: #1065080)
625+ * Handle creation of user/group in maas-common.
626+ * debian/maas-region-controller.config: Always source dbconfig scripts.
627+
628+ -- Andres Rodriguez <andreserl@ubuntu.com> Wed, 10 Oct 2012 11:17:21 -0400
629+
630+maas (0.1+bzr1243+dfsg-0ubuntu3) quantal; urgency=low
631+
632+ * 04-fix-ipmi-enlistment.patch: retry maas-enlist without power parameters
633+ on failure. This allows enlistment to continue working with Precise
634+ ephemeral images before the Precise SRU for maas-enlist lands.
635+ (LP: #1064922).
636+
637+ -- Robie Basak <robie.basak@canonical.com> Wed, 10 Oct 2012 13:29:16 +0000
638+
639+maas (0.1+bzr1243+dfsg-0ubuntu2) quantal; urgency=low
640+
641+ * debian/patches/99-ipmi-user-too-long.patch: Fix username too long for
642+ IPMI user created on enlistment (LP: #1064832)
643+
644+ -- Andres Rodriguez <andreserl@ubuntu.com> Wed, 10 Oct 2012 01:00:29 -0400
645+
646+maas (0.1+bzr1243+dfsg-0ubuntu1) quantal; urgency=low
647+
648+ * New upstream release. (LP: #1064596)
649+ * debian/patches/99-temporary-fix-constraints.patch: Dropped.
650+ * debian/control:
651+ - ${python:Depends} for maas-common.
652+ - Add missing Depends for python-maas-provisioningserver (LP: #1064542)
653+ * debian/maas-cluster-controller.postinst: Create /var/log/maas if it
654+ doesn't exist (LP: #1064539)
655+
656+ -- Andres Rodriguez <andreserl@ubuntu.com> Mon, 08 Oct 2012 17:02:56 -0400
657+
658+maas (0.1+bzr1223+dfsg-0ubuntu1) quantal; urgency=low
659+
660+ * New upstream release. (LP: #1062518)
661+
662+ [ Julian Edwards ]
663+ * Split packaging of 'maas' into maas-{region,cluster}-controller
664+ - debian/control: Update accordingly.
665+ - debian/*.install: Move files accordingly
666+ - debian/*.{postinst,postrm,preinst}: Move files accordingly.
667+ * Ensure isc-dhcp-server is disabled when installing maas-dhcp.
668+ * Ensure maas-dns creates the maas user before trying to chown files.
669+ * Make maas-cluster-controller autoconfigure itself when upgrading from the
670+ old maas package. (LP: #1059416)
671+ * Add missing prerm file for maas-cluster-controller so that .pyc files
672+ are cleaned up. (LP: #1059973)
673+
674+ [ Raphaël Badin ]
675+ * Install maas_local_celeryconfig.py in /etc/maas and symlink to
676+ /usr/share/maas.
677+ * debian/maas.postinst: Create rabbitmq celery user/vhost.
678+ * debian/maas.postinst: Update BROKER_URL in maas_local_celeryconfig.py.
679+ * Use maas_local_celeryconfig_cluster.py as the local celery
680+ configuration file for the cluster worker.
681+ * debian/maas-region-controller.maas-region-celery.upstart: Add region
682+ worker upstart script.
683+ * Rename cluster worker upstart script into
684+ maas-cluster-controller.maas-clluster-celery.upstart.
685+ * maas-cluster-controller.maas-celery.upstart: use "celeryconfig_cluster"
686+ as the Celery config module.
687+ * debian/maas-common.install: Install celeryconfig_common.py.
688+ * debian/maas-cluster-controller.install: Install celeryconfig_cluster.py.
689+ * debian/maas-region-controller.install: Install celeryconfig.py.
690+ * Split celery config into cluster and region configs.
691+ * Add region celeryd upstart config.
692+ * Define CELERY_CONFIG_MODULE in
693+ maas-cluster-controller.maas-cluster-celery.upstart
694+
695+ [ Jeroen Vermeulen ]
696+ * Make maas_local_celery_config.py non-world readable.
697+ * Make maas_local_celeryconfig_cluster.py non-world readable.
698+ * Set root:maas ownership of local cluster config only *after*
699+ the maas user/group have been created
700+
701+ [ Andres Rodriguez ]
702+ * debian/maas.postinst:
703+ - Always restart apache2.
704+ - Handle upgrades for new upstream release.
705+ - Handle upgrades for celery rabbitmq worker.
706+ * Add binary package to install client tool.
707+ - debian/extras/maas-cli: Add binary.
708+ - debian/maas-cli.install: Add. Install maascli and apiclient.
709+ - debian/control: Add binary package.
710+ * debian/control:
711+ - Depends on freeipmi-tools instead of ipmitool.
712+ - Conflicts/Replaces on maas for python-maas-client.
713+ - Depends on python-netifaces, python-lxml.
714+ * Add python-maas-client binary package:
715+ - debian/python-maas-client.install: Add. Install 'apiclient' python module.
716+ - debian/control: Add package. python-django-maas and maas-cli now
717+ Depend on it.
718+ * debian/rules: Install maas-dhcp-server upstart job.
719+ * debian/maas.postrm: Remove celery worker rabbitmq user and host.
720+ * debian/extras/99-maas-sudoers: Add for maas-dhcp-server upstart job
721+ instead of isc-dhcp-server (LP: #1055951)
722+ * debian/maas-region-controller.postinst: Cleanup upgrade rules.
723+ * debian/maas-cluster-controller.postinst: Fix 'local' usage.
724+ * debian/maas-common.install: Install celeryconfig in appropriate location.
725+ * debian/maas-cluster-controller.postrm: Add and delete maas user.
726+ * debian/maas-dhcp.postinst: Stop isc-dhcp-server not isc_dhcp_server.
727+ * debian/maas-region-controller.postinst:
728+ - Always update passwords on upgrade. No longer check versioning. (LP: #1060094).
729+ - Add MAAS server to allowed mirror in squid-deb-proxy
730+ - Source dbconfig conf file for maas-region-controller on upgrade because
731+ it writes a new config file and no longer preservers the previous password.
732+ * debian/maas-cluster-controller.maas-cluster-celery.upstart: Remove set{uid/gid}.
733+ * debian/maas-region-controller.install: Install maas-import-squashfs
734+ * Handle removal of non existant files (LP: #1059556):
735+ - debian/maintscript: Added to handle removal of conffiles.
736+ - debian/control: Add Pre-depends and bump debhelper version.
737+ * update po files for the templates.
738+ * debian/extras/99-maas: Install in usr/share/maas/conf and symlink to the
739+ appropriate etc dir.
740+ * debian/maas-cluster-controller.config: Source debconf at the beginning of the
741+ script. (LP: #1063857)
742+ * debian/patches/99-temporary-fix-constraints.patch: Fix constraints maaping
743+ when deploying with juju. Temporary until it gets merged upstream
744+
745+ [ Robie Basak ]
746+ * Add maas-cluster-controller dependency on uuid-runtime, needed for uuidgen
747+ by postinst.
748+
749+ [ Scott Moser ]
750+ * debian/maas-dhcp.{install,apparmor,postrm} install apparmor profile into
751+ /etc/apparmor.d/dhcpd.d (LP: #1049177), and update apparmor profile for
752+ /usr/sbin/dhcpd on install/remove
753+ * get the ip address for the dhcp server in config
754+
755+ [ Diogo Matsubara ]
756+ * Add initial tests to be run by autotests:
757+ - debian/control: XS-Testsuite: autopkgtest
758+ - debian/tests/control: Add
759+ - debian/tests/maas-package-test: Add
760+ - tests/maas-integration.py: Add
761+
762+ -- Andres Rodriguez <andreserl@ubuntu.com> Mon, 08 Oct 2012 13:10:23 -0400
763+
764+maas (0.1+bzr971+dfsg-0ubuntu2) quantal; urgency=low
765+
766+ * debian/extras/99-maas-sudoers: Add missing rule for
767+ maas-provision. (LP: #1046397)
768+
769+ -- Andres Rodriguez <andreserl@ubuntu.com> Wed, 05 Sep 2012 12:36:58 -0400
770+
771+maas (0.1+bzr971+dfsg-0ubuntu1) quantal; urgency=low
772+
773+ * New upstream release (LP: #1044367)
774+
775+ [ Julian Edwards ]
776+ * Fix 02-pserv-config.patch to handle new default tftp directory
777+
778+ [ Andres Rodriguez ]
779+ * debian/maas.postinst:
780+ - include '/MAAS' for DEFAULT_MAAS_URL.(LP: #1033956)
781+ - Update bzr version to safely upgrade.
782+ * Add maas-dns package that configures DNS in MAAS (LP: #1030860)
783+ * Remove cobbler related bits
784+ - debian/maas.postinst: Drop cobbler configuration
785+ - debian/maas.install: Drop installation of snippets/preseeds.
786+ - debian/control:
787+ + Drop Depends on maas-provision. (LP: #975473)
788+ + Depends on bind9utils.
789+ + Depends on python-lockfile (LP: #1037400)
790+ Add necessary Conflicts/Replaces. Add conflicts to tftpd-hpa and dnsmasq.
791+ Depends on isc-dhcp-server for maas-dhcp, and syslinux-common.
792+ - debian/extras/maas-provision: Add missing "$@" (LP: #1040462)
793+ - debian/patches:
794+ + 02-pserv-config.patch: Updated. Do not patch cobbler related bits.
795+ patch tftp config to default.
796+ * maas-dhcp: Re-add to handle initial configuration of MAAS DHCP server.
797+ * Allow restart of 'isc-dhcp-server' by adding a sudoers file:
798+ - debian/extras/99-maas-sudoers: Added.
799+ - debian/maas.install: Install 99-maas-sudoers
800+ * Minor improvements on dbconfig-common handling:
801+ - debian/maas.config: Only call dbc_go when scripts present.
802+ - debian/maas.postrm: Only call dbc_go when config file exists.
803+ * debian/maas.maas-celery.upstart: Enable Beat and set scheduler db file.
804+ * debian/maas-dns.postinst: Set correct permissions. (LP: #1042868)
805+ * debian/maas-dhcp.config:
806+ - Ask whether we want to enable DHCP (LP: #1044229)
807+ - Add debconf question for network interfaces
808+ * debian/maas.prerm: Stop services before removing database (LP: #1044559)
809+
810+ -- Andres Rodriguez <andreserl@ubuntu.com> Thu, 02 Aug 2012 09:01:43 -0400
811+
812+maas (0.1+bzr777+dfsg-0ubuntu1) quantal-proposed; urgency=low
813+
814+ * New upstream release
815+ * Only run 'maas' command as root. (LP: #974046)
816+ - debian/extras/maas: Check id.
817+ - debian/maas.install: Install in 'sbin'.
818+ * debian/maas.postinst:
819+ - restart apache2 after everything gets processed.
820+ - Update version to handle upgrades.
821+ * debian/extras/maas-provision: Add wrapper to access 'maasprovisiong'
822+ command line.
823+ * debian/patches/99_temporary_fix_path.patch: Dropped. No longer needed.
824+
825+ -- Andres Rodriguez <andreserl@ubuntu.com> Tue, 17 Jul 2012 08:28:36 -0400
826+
827+maas (0.1+bzr745+dfsg-0ubuntu2) quantal; urgency=low
828+
829+ * debian/control: Build-Dep on python-django instead of
830+ python-django-configglue
831+
832+ -- Andres Rodriguez <andreserl@ubuntu.com> Tue, 17 Jul 2012 08:24:25 -0400
833+
834+maas (0.1+bzr745+dfsg-0ubuntu1) quantal; urgency=low
835+
836+ * New Upstream Release
837+ * debian/patches:
838+ - 99_power_fixes.patch: Dropped. Merged Upstream.
839+ - 99_enums_js.patch: Dropped. No longer needed.
840+ * Automatically build enums.js:
841+ - debian/control: Build-Depends on python-django-configglue
842+ - debian/rules: Build and install enums.js.
843+ * debian/maas.postinst: Update version to handle upgrades
844+
845+ -- Andres Rodriguez <andreserl@ubuntu.com> Thu, 12 Jul 2012 16:34:11 -0400
846+
847+maas (0.1+bzr740+dfsg-0ubuntu1) quantal; urgency=low
848+
849+ * New upstream release
850+ * debian/control: Depends on python-txtftp.
851+ * debian/rules: Do not ship python-tx-tftp.
852+ * debian/maas.postinst: Update version to upgrade successfully.
853+ * debian/patches:
854+ - 02-pserv-config.patch: Refreshed.
855+ - 99_enums_js.patch: Updated.
856+ - 99_power_fixes.patch: Added temporarily to enable IPMI
857+ - 99_temporary_fix_path.patch: Added temporarily to not fail when
858+ importing celeryconfig
859+
860+ -- Andres Rodriguez <andreserl@ubuntu.com> Tue, 03 Jul 2012 17:54:49 -0400
861+
862+maas (0.1+bzr709+dfsg-0ubuntu1) quantal; urgency=low
863+
864+ * New Upstream release
865+ * debian/control:
866+ - Depends on python-celery, python-tempita, libjs-yui3-{full,min},
867+ libjs-raphael
868+ * debian/maas.install:
869+ - Install apiclient, celeryconfig.py, maas-import-pxe-files, preseeds_v2.
870+ - Update to install various files from chroot, rather tha manually copy
871+ them from the source.
872+ * debian/maas.links: symlink celeryconfig.py
873+ * debian/maas.maas-celery.upstart: Add job.
874+ * debian/rules:
875+ - Install celery upstart job.
876+ - Do not install jslibs as packages are now used.
877+ - Drop copying of maas_local_settings_sample.py as source now ships
878+ a maas_local_settings.py
879+ * debian/patches:
880+ - 04-maas-http-fix.patch: Drop. Merged upstream.
881+ - 01-fix-database-settings.patch: Refreshed.
882+ - 99_enums_js.patch: Added until creation of enum.js / build process
883+ is fixed.
884+ * debian/maas.postinst: Update bzr version to correctly handle upgrades.
885+
886+ -- Andres Rodriguez <andreserl@ubuntu.com> Tue, 03 Jul 2012 17:42:37 -0400
887+
888+maas (0.1+bzr482+dfsg-0ubuntu1) precise; urgency=low
889+
890+ * New upstream release (Fixes LP: #981103)
891+ * debian/maas.postinst:
892+ - Make sure rabbitmq and postgresql are started on upgrade (LP: #981282)
893+ - Handle upgrades from any lower than 0.1+bzr462+dfsg-0ubuntu1 to
894+ correctly re-generate passwords, and not have db sync/migrate issues
895+ as config has changed upstream.
896+ - Correctly set Passwords for PSERV, otherwise it won't set new passwords.
897+ * Allow MAAS_DEFAULT_URL reconfiguration. (LP: #980970)
898+ - debian/maas.config: Add reconfigure validation to correctly allow it,
899+ and ask a question.
900+ - debian/maas.postinst: Reconfigure DEFAULT_MAAS_URL as well as cobbler
901+ server and next_server for PXE/Provisioning.
902+ - debian/maas.templates: Add debconf question and update info.
903+ * Do not lose MAAS_DEFAULT_URL settings on upgrade (LP: #984309)
904+ * debian/maas.postinst:
905+ - Set cobbler password in between quotes (LP: #984427)
906+ - Do not change permissions to maas.log (LP: #980915)
907+ * no longer use maas-cloudimg2ephemeral, but rather use premade images
908+ at http://maas.ubuntu.com
909+
910+ -- Andres Rodriguez <andreserl@ubuntu.com> Tue, 17 Apr 2012 23:44:46 -0700
911+
912+maas (0.1+bzr462+dfsg-0ubuntu1) precise; urgency=low
913+
914+ * New upstream release (LP: #980240)
915+
916+ [ Scott Moser ]
917+ * add dependency on distro-info (LP: #949442)
918+ * debian/control: add dependency on tgt for ephemeral iscsi environment
919+
920+ [ Andres Rodriguez ]
921+ * Make package lintian clean:
922+ - maas{-dhcp}.lintian-overrides: Add to make lintian clean.
923+ - debian/control: Add missing dependencies; correct section and desc.
924+ - debian/maas.postinst: Do not use absolute path for rabbitmqctl.
925+ - debian/patches: Add headers to all patches.
926+ * debian/maas-dhcp.postrm: Added to disable dnsmasq in cobbler on removal.
927+ * debian/maas.config: Do not set a password with pwgen as it is not an
928+ essential package; allow dbconfig-common to create a password instead by
929+ creating an empty question. (LP: #977475)
930+ * Run MAAS, pserv, txlongpoll as non-root user. (LP: #975436)
931+ - debian/maas.postinst: Create user/group; set correct permissions for
932+ directories.
933+ - debian/maas.postrm: Remove user/group; restart apache2.
934+ - debian/maas.maas-{pserv,txlongpoll}.upstart: Update to run as non-root
935+ 'maas' user.
936+ * debian/patches/01-fix-database-settings.patch: Remove adding of PSERV_URL.
937+ * debian/maas.postinst:
938+ - Handle config file upgrade from versions lower than 0.1+bzr445+dfsg-0ubuntu1,
939+ by creating new passwords and updating accordingly
940+ - use local variables in functions.
941+ - Handle maas tgt configuration for upgrades from 0.1+bzr459+dfsg-0ubuntu1.
942+ * debian/extras/99-maas: Add squid-deb-proxy file to enable PPAs. (LP: #979383)
943+ * debian/maas.install: Install missing commissioning-user-data script.
944+
945+ [ Dave Walker (Daviey) ]
946+ * debian/patches/02-pserv-config.patch: Refreshed to apply to updated config.
947+
948+ [ Gavin Panella ]
949+ * debian/maas.postinst: Update pserv.yaml and maas_local_settings.py to use
950+ password.
951+
952+ -- Andres Rodriguez <andreserl@ubuntu.com> Thu, 12 Apr 2012 16:37:53 -0400
953+
954+maas (0.1+bzr415+dfsg-0ubuntu2) precise; urgency=low
955+
956+ * debian/maas-dhcp.{config,postinst}:
957+ - Fix not setting new values on fresh install. (LP: #975321)
958+ - Fix unsetting domain, otherwise, even if disabled, it will always be set.
959+ * debian/control: Depends on maas for maas-dhcp.
960+
961+ -- Andres Rodriguez <andreserl@ubuntu.com> Fri, 06 Apr 2012 15:30:44 -0400
962+
963+maas (0.1+bzr415+dfsg-0ubuntu1) precise; urgency=low
964+
965+ * debian/control: Update package descriptions; Suggests maas-dhcp for maas
966+ and add a maas-dhcp binary.
967+ * Add maas-dhcp package to configure a DHCP server.
968+ - debian/maas-dhcp.config: Add to ask debconf questions about range,
969+ gateway, and domain.
970+ - debian/maas-dhcp.postinst: Handle update of config values.
971+ - debian/maas-dhcp.templates: Debconf questions.
972+ * debian/po: Update for templates.
973+ * Add message telling MAAS URL after installation.
974+ - debian/maas.templates: Add message.
975+ - debian/maas.postinst: Display message.
976+ * debian/maas.config: Hide dbconfig-install question.
977+
978+ -- Andres Rodriguez <andreserl@ubuntu.com> Wed, 04 Apr 2012 14:47:13 -0400
979+
980+maas (0.1+bzr400+dfsg-0ubuntu1) precise; urgency=low
981+
982+ * debian/patches/{02-pserv-config,03-txlongpoll-config}.patch: Refreshed.
983+ * debian/maas.install: Install maas-gc cronjob.
984+ * Add apport hook.
985+ - debian/maas.apport: Add hook.
986+ - debian/rules: Install with apport.
987+ * debian/maas.logrotate: Add logrotate for txlongpoll and pserv logs.
988+ * Create 'var/lib/media/maas/storage' on postinst to have right permissions.
989+ - debian/maas.dirs: Drop dir creation.
990+ - debian/maas.postinst: Create dir with correct permissions.
991+ - debian/maas.postrm: Remove dir on purge.
992+
993+ -- Andres Rodriguez <andreserl@ubuntu.com> Tue, 03 Apr 2012 14:50:34 -0400
994+
995+maas (0.1+bzr378+dfsg-0ubuntu1) precise; urgency=low
996+
997+ * maas.dirs: Create var/lib/maas/media/storage for juju storage.
998+ * maas.postinst:
999+ - Give correct permissions to above dir.
1000+ - stop apache2 before db upgrade, and restart after.
1001+
1002+ -- Andres Rodriguez <andreserl@ubuntu.com> Thu, 29 Mar 2012 19:28:13 -0400
1003+
1004+maas (0.1+bzr363+dfsg-0ubuntu1) precise; urgency=low
1005+
1006+ [ Dave Walker (Daviey) ]
1007+ * debian/control: Add openssh-server as a Recommends, and wrap-and-sort.
1008+
1009+ [ Andres Rodriguez ]
1010+ * debian/maas.postinst:
1011+ - Do not start apache with apache2ctl. Use invoke-rc.d instead to not
1012+ fail in the installer.
1013+ - For start of postgresql before creating the DB, otherwise it will
1014+ fail in the installer.
1015+ - Add check of invoke-rc.d for syslog.
1016+ - Add check of invoke-rc.d for rabbitmq-server; Add check for rabbitmqctl
1017+ - Add db_stop, in case invoke-rc.d fails.
1018+ * debian/control: Tight python-django-maas dependency.
1019+ * debian/postrm: Add check for rabbitmqctl.
1020+ * debian/maas.maas-txlongpoll.upstart: Create rabbitmq longpoll user/vhost
1021+ and set permissions if they don't exist. Start on rabbitmq-server-running.
1022+
1023+ -- Andres Rodriguez <andreserl@ubuntu.com> Tue, 27 Mar 2012 14:49:56 -0400
1024+
1025+maas (0.1+bzr338+dfsg-0ubuntu1) precise; urgency=low
1026+
1027+ [ Dave Walker (Daviey) ]
1028+ * d/patches/03-txlongpoll-config.patch: Resolve typo error from prior patch.
1029+ - LP: #961031
1030+
1031+ [ Andres Rodriguez ]
1032+ * debian/maas.config: Don't allow reconfigure.
1033+ * debian/maas.postinst: Don't allow reconfigure. Run sync/migrate db on
1034+ all upgrades.
1035+
1036+ [ Scott Moser ]
1037+ * add rsylog config for logging node boots (LP: 960149)
1038+
1039+ -- Andres Rodriguez <andreserl@ubuntu.com> Thu, 22 Mar 2012 10:56:58 -0400
1040+
1041+maas (0.1+bzr315+dfsg-0ubuntu1) precise; urgency=low
1042+
1043+ * New upstream snapshot.
1044+
1045+ [ Dave Walker ]
1046+ * debian/maas.postinst: Do not import ISO's at install time.
1047+ * debian/control:
1048+ - Drop run-one, it's not a requirement and currently in universe.
1049+ - Drop python-setproctitle, no longer required.
1050+
1051+ [ Andres Rodriguez ]
1052+ * debian/control: Depends on python-avahi, python-dbus, and avahi-daemon.
1053+ * debian/maas.postinst:
1054+ - Only syncdb if dbconfig db creation was selected.
1055+ - Set rabbitmq/longpoll settings
1056+ * debian/patches/03-txlongpoll-config.patch: Updated broker settings for
1057+ rabbitmq.
1058+
1059+ -- Andres Rodriguez <andreserl@ubuntu.com> Tue, 20 Mar 2012 20:10:58 -0400
1060+
1061+maas (0.1+bzr300+dfsg-0ubuntu1) precise; urgency=low
1062+
1063+ * debian/patches:
1064+ - 01-fix-database-settings.patch: Update PSERV_URL port.
1065+ - 02-pserv-config.patch: Update, and set 'maas' as username.
1066+ - 03-longpoll-config.patch: Update.
1067+ * debian/maas.install: Install preseeds and snippets.
1068+ * debian/maas.postinst:
1069+ - Set password for 'maas' cobbler username (in pserv and cobbler).
1070+ - Set DEFAULT_MAAS_URL to IP of interface with default gateway.
1071+
1072+ -- Andres Rodriguez <andreserl@ubuntu.com> Fri, 16 Mar 2012 14:59:16 -0400
1073+
1074+maas (0.1+bzr295+dfsg-0ubuntu2) precise; urgency=low
1075+
1076+ * debian/patches:
1077+ - 01-fix-database-settings.patch: Update to set PSERV_URL.
1078+ - 02-pserv-config.patch: Set port to 8001.
1079+ * debian/maas.postinst: Run maas-import-isos on install.
1080+ * debian/control: Depends on rabbitmq-server.
1081+
1082+ -- Andres Rodriguez <andreserl@ubuntu.com> Thu, 15 Mar 2012 18:14:08 -0400
1083+
1084+maas (0.1+bzr295+dfsg-0ubuntu1) precise; urgency=low
1085+
1086+ * debian/maas.upstart: Specify pidfile and conffile.
1087+ * debian/maas.postinst:
1088+ - Only run syncdb if dbconfig postinst file exists.
1089+ - Fix file permissions.
1090+ * debian/maas.{postrm,prerm}: Add dbconfig-common support.
1091+ * Add txlongpoll support for packaging:
1092+ - debian/control: Depends on python-txlongpoll.
1093+ - debian/maas.maas-longpoll.upstart: Added to start txlongpoll.
1094+ - debian/maas.install: Install txlongpoll.yaml
1095+ * debian/extras/maas: Improvements.
1096+ * debian/maas.maas.upstart: Moved from debian/maas.upstart.
1097+ * debian/maas.postinst: Touch logfile to set correct permissions (LP: #955400)
1098+ * debian/maas.logrotate: Add.
1099+ * debian/patches/03-txlongpoll-config.patch: Add default settings.
1100+ * debian/maas.config: Only run dbconfig-common on configure/reconfigure.
1101+ * Install maas_local_settings.py in /etc/maas and symlink to usr/share/maas
1102+ * Update references from MaaS to MAAS.
1103+ * Remove podebconf as templates no longer exist.
1104+ - debian/po: Remove.
1105+ - debian/control: Drop Build-Depends on po-debconf
1106+
1107+ -- Andres Rodriguez <andreserl@ubuntu.com> Thu, 15 Mar 2012 15:28:14 -0400
1108+
1109+maas (0.1+bzr266+dfsg-0ubuntu1) precise; urgency=low
1110+
1111+ * Remove support for squid3 and use squid-deb-proxy instead.
1112+ * debian/extras/maas: Add to handle syncdb and creation of admin user.
1113+ * Add debconf questions to ask for user/pass:
1114+ - debian/maas.{template,config}: Add
1115+ - debian/maas.postinst: Ask debconf questions.
1116+ - debian/po: Add translation templates.i
1117+ * debian/maas.postinst: Enable wsgi module; drop squid3 steps.
1118+ * debian/maas.postrm: removed.
1119+ * debian/patches/01-fix-database-settings.patch: Custom database settings
1120+ and static files path.
1121+ * debian/{rules,maas.install}: Install maas static files in
1122+ 'usr/share/maas/web/static'.
1123+ * Integrate cobbler:
1124+ - debian/maas.install: Install pserv twisted plugin, and config.
1125+ - debian/maas.upstart: Created to start plugin daemon.
1126+ - debian/patches/02-pserv-config.patch: Custom pserv config.
1127+ * Integrate dbconfig-common:
1128+ - debian/maas.config: Added and default user/pass and database.
1129+ - debian/maas.{postinst,postrm}: Added handling for dbconfig-common
1130+ * debian/control: Depends on python-convoy.
1131+ * debian/rules: Update path to removal of dsfg files.
1132+ * debian/patches/01-fix-database-settings.patch: Updated.
1133+
1134+ -- Andres Rodriguez <andreserl@ubuntu.com> Tue, 13 Mar 2012 14:31:50 -0400
1135+
1136+maas (0.1+bzr232+dfsg-0ubuntu1) precise; urgency=low
1137+
1138+ * New upstream snapshot.
1139+
1140+ [ Dave Walker ]
1141+ * debian/control:
1142+ - Changed depends from psycopg2 to python-psycopg2 and dropped versioning.
1143+ - LP: #937982
1144+
1145+ [ Andres Rodriguez ]
1146+ * debian/maas.install: Install maas-import-isos and related files.
1147+ * Integrate squid3 as proxy solution:
1148+ - debian/extras/squid.conf: Added
1149+ - debian/control: Depend on squid3.
1150+ - debian/maas.{postinst,postrm}: Handle installation/removal of custom
1151+ squid config file.
1152+ * Split into different binary packages (maas,python-django-maas).
1153+ - debian/maas.postinst: Handle the apache2 configuration.
1154+
1155+ -- Andres Rodriguez <andreserl@ubuntu.com> Wed, 07 Mar 2012 12:46:17 -0500
1156+
1157+maas (0.1+bzr171+dfsg-0ubuntu1) precise; urgency=low
1158+
1159+ * New upstream snapshot, post 0.1 release.
1160+ * debian/control:
1161+ - Drop depends on rabbitmq-server, no longer required.
1162+ * debian/watch: Introduced watch file.
1163+
1164+ -- Dave Walker (Daviey) <DaveWalker@ubuntu.com> Thu, 23 Feb 2012 13:08:12 +0000
1165+
1166+maas (0.1~bzr146+dfsg-0ubuntu1) precise; urgency=low
1167+
1168+ * Initial release
1169+
1170+ -- Julian Edwards <julian.edwards@canonical.com> Thu, 16 Jan 2012 15:29:07 +0000
1171
1172=== added file 'debian/compat'
1173--- debian/compat 1970-01-01 00:00:00 +0000
1174+++ debian/compat 2014-07-15 21:22:45 +0000
1175@@ -0,0 +1,1 @@
1176+7
1177
1178=== added file 'debian/control'
1179--- debian/control 1970-01-01 00:00:00 +0000
1180+++ debian/control 2014-07-15 21:22:45 +0000
1181@@ -0,0 +1,232 @@
1182+Source: maas
1183+Section: net
1184+Priority: optional
1185+Maintainer: Ubuntu Developers <ubuntu-devel-discuss@lists.ubuntu.com>
1186+Build-Depends: debhelper (>= 8.1.0~),
1187+ dh-apport,
1188+ po-debconf,
1189+ python (>= 2.7),
1190+ python-distribute,
1191+ python-django
1192+Standards-Version: 3.9.4
1193+X-Python-Version: >= 2.7
1194+Homepage: https://launchpad.net/maas
1195+
1196+Package: maas
1197+Architecture: all
1198+Depends: ${misc:Depends}, maas-cluster-controller, maas-region-controller, python-django-maas
1199+Description: MAAS server all-in-one metapackage
1200+ MAAS is "Metal As A Service", a system for dynamic provisioning of physical
1201+ servers that has many of the same characteristics as a cloud. You register
1202+ servers with MAAS by telling MAAS about their IPMI or other control system.
1203+ MAAS can then do hardware inventory, and provision that system on demand
1204+ with whatever OS and software you like. MAAS is standalone software that
1205+ works with any configuration system, but for best results combine MAAS with
1206+ Juju.
1207+ .
1208+ MAAS provides:
1209+ * Hardware inventory of servers
1210+ * Dynamic provisioning based on name or attributes such as disk, RAM cores, sockets
1211+ * DNS and DHCP as needed
1212+ * PXE boot services
1213+ .
1214+ This package is a metapackage which installs all of the separate components
1215+ of MAAS on a single machine.
1216+
1217+Package: maas-common
1218+Architecture: all
1219+Depends: ${misc:Depends}, ${python:Depends}
1220+Breaks: maas ( <= 0.1+bzr1048+dfsg-0ubuntu1 )
1221+Replaces: maas ( <= 0.1+bzr1048+dfsg-0ubuntu1 )
1222+Description: MAAS server common files
1223+ This package contains the common files for any MAAS installation.
1224+
1225+Package: maas-region-controller-min
1226+Architecture: all
1227+Depends: apache2,
1228+ bind9utils,
1229+ dbconfig-common,
1230+ iproute,
1231+ libapache2-mod-wsgi,
1232+ libjs-raphael,
1233+ libjs-yui3-full,
1234+ libjs-yui3-min,
1235+ maas-common (= ${binary:Version}),
1236+ pwgen,
1237+ python-django (>= 1.4),
1238+ python-django-maas (= ${binary:Version}),
1239+ python-django-piston,
1240+ python-django-south,
1241+ python-maas-provisioningserver (= ${binary:Version}),
1242+ python-djorm-ext-pgarray,
1243+ rsyslog,
1244+ squid-deb-proxy,
1245+ ${misc:Depends},
1246+ ${python:Depends}
1247+Breaks: maas-region-controller ( <= 1.4+bzr1693+dfsg-0ubuntu3 )
1248+Replaces: maas-region-controller ( <= 1.4+bzr1693+dfsg-0ubuntu3 )
1249+Description: MAAS Server minimum region controller
1250+ This package installs and configures the minimum region controller
1251+ services provided by MAAS, including the web UI, caching package proxy,
1252+ networking/traffic control, and remote logging system.
1253+
1254+Package: maas-region-controller
1255+Architecture: all
1256+Depends: maas-region-controller-min (= ${binary:Version}),
1257+ postgresql (>= 9.1),
1258+ rabbitmq-server,
1259+ ${misc:Depends},
1260+ ${python:Depends}
1261+Recommends: openssh-server, maas-dns (= ${binary:Version})
1262+Description: MAAS server complete region controller
1263+ This package installs and configures the complete MAAS region controller,
1264+ including the minimum setup, plus the database server and messaging queue.
1265+
1266+Package: python-maas-provisioningserver
1267+Section: python
1268+Architecture: all
1269+Depends: python-amqp,
1270+ python-celery,
1271+ python-distro-info,
1272+ python-formencode,
1273+ python-jsonschema,
1274+ python-lockfile,
1275+ python-lxml,
1276+ python-maas-client,
1277+ python-netifaces,
1278+ python-oops,
1279+ python-oops-amqp,
1280+ python-oops-datedir-repo,
1281+ python-oops-twisted,
1282+ python-pyparsing,
1283+ python-seamicroclient,
1284+ python-simplestreams,
1285+ python-tempita,
1286+ python-twisted-core,
1287+ python-twisted-web,
1288+ python-txamqp,
1289+ python-txtftp,
1290+ python-yaml,
1291+ python-zope.interface,
1292+ ${misc:Depends},
1293+ ${python:Depends}
1294+Breaks: python-django-maas ( <= 0.1+bzr1048+dfsg-0ubuntu1 ), maas-cluster-controller (<= 0.1+bzr1243+dfsg-0ubuntu3), maas-dhcp (<= 1.4+bzr1817+dfsg-0ubuntu1)
1295+Replaces: python-django-maas ( <= 0.1+bzr1048+dfsg-0ubuntu1 ), maas-cluster-controller (<= 0.1+bzr1243+dfsg-0ubuntu3), maas-dhcp (<= 1.4+bzr1817+dfsg-0ubuntu1)
1296+Conflicts: python-librabbitmq
1297+Description: MAAS server provisioning libraries
1298+ This package provides the MAAS provisioning server python libraries.
1299+
1300+Package: maas-cli
1301+Architecture: all
1302+Depends: python-bzrlib,
1303+ python-httplib2,
1304+ python-maas-client (= ${binary:Version}),
1305+ python-oauth,
1306+ ${misc:Depends},
1307+ ${python:Depends}
1308+Conflicts: maas-region-controller-min (<= 1.5+bzr1909-0ubuntu1)
1309+Replaces: maas-region-controller-min (<= 1.5+bzr1909-0ubuntu1)
1310+Description: MAAS command line API tool
1311+ This package contains the MAAS client command line API tool.
1312+ This tool enables automation of tasks in MAAS, remotely, through
1313+ its API.
1314+
1315+Package: python-maas-client
1316+Section: python
1317+Architecture: all
1318+Depends: python-oauth, ${misc:Depends}, ${python:Depends}
1319+Breaks: maas (<= 0.1+bzr971+dfsg-0ubuntu2 )
1320+Replaces: maas (<= 0.1+bzr971+dfsg-0ubuntu2 )
1321+Description: MAAS python API client
1322+ This package contains the MAAS client API Python modules.
1323+
1324+Package: maas-cluster-controller
1325+Architecture: all
1326+Depends: apache2,
1327+ authbind,
1328+ bind9utils,
1329+ distro-info,
1330+ freeipmi-tools,
1331+ grub-common,
1332+ maas-cli (=${binary:Version}),
1333+ maas-common (=${binary:Version}),
1334+ maas-dhcp (=${binary:Version}),
1335+ python-amqp,
1336+ python-celery,
1337+ python-httplib2,
1338+ python-lockfile,
1339+ python-maas-provisioningserver (=${binary:Version}),
1340+ python-netaddr,
1341+ python-oauth,
1342+ python-pexpect,
1343+ python-tempita,
1344+ python-twisted,
1345+ python-zope.interface,
1346+ rsyslog,
1347+ syslinux-common,
1348+ tgt,
1349+ ubuntu-cloudimage-keyring,
1350+ uuid-runtime,
1351+ wget,
1352+ ${misc:Depends},
1353+ ${python:Depends}
1354+Suggests: ipmitool, libvirt-bin, amtterm
1355+Conflicts: tftpd-hpa, python-librabbitmq
1356+Breaks: maas ( <= 0.1+bzr1048+dfsg-0ubuntu1 ), maas-region-controller ( <= 0.1+bzr1314+dfsg-0ubuntu1 )
1357+Replaces: maas ( <= 0.1+bzr1048+dfsg-0ubuntu1 ), maas-region-controller ( <= 0.1+bzr1314+dfsg-0ubuntu1 )
1358+Description: MAAS server cluster controller
1359+ This package contains the MAAS cluster controller, which is responsible
1360+ for enabling and controlling remote DHCP/TFTP instances on their own
1361+ subnets.
1362+
1363+Package: python-django-maas
1364+Section: python
1365+Architecture: all
1366+Depends: python-amqp,
1367+ python-celery,
1368+ python-convoy,
1369+ python-crochet,
1370+ python-curtin,
1371+ python-lockfile,
1372+ python-lxml,
1373+ python-maas-client (= ${binary:Version}),
1374+ python-netaddr,
1375+ python-oops,
1376+ python-oops-amqp,
1377+ python-oops-datedir-repo,
1378+ python-oops-twisted,
1379+ python-oops-wsgi,
1380+ python-psycopg2,
1381+ python-sphinx,
1382+ python-tempita,
1383+ python-twisted,
1384+ python-txamqp,
1385+ python-txlongpoll,
1386+ python-zope.interface,
1387+ ${misc:Depends},
1388+ ${python:Depends}
1389+Conflicts: python-librabbitmq
1390+Description: MAAS server Django web framework
1391+ This package provides the Django web framework for MAAS.
1392+
1393+Package: maas-dhcp
1394+Architecture: all
1395+Depends: isc-dhcp-server (>= 4.2.4), ${misc:Depends}
1396+Breaks: maas-dhcp (<= 0.1+bzr777+dfsg-0ubuntu1)
1397+Replaces: maas-dhcp (<= 0.1+bzr777+dfsg-0ubuntu1)
1398+Description: MAAS DHCP server
1399+ This package installs and configures a DHCP server that can be used by
1400+ MAAS, and enhances the overall MAAS user experience.
1401+
1402+Package: maas-dns
1403+Architecture: all
1404+Depends: bind9,
1405+ maas-region-controller-min (= ${binary:Version}),
1406+ python-iscpy,
1407+ ${misc:Depends}
1408+Conflicts: dnsmasq
1409+Breaks: maas-dhcp (<= 0.1+bzr777+dfsg-0ubuntu1)
1410+Replaces: maas-dhcp (<= 0.1+bzr777+dfsg-0ubuntu1)
1411+Description: MAAS DNS server
1412+ This package installs and configures a DNS server that can be used by
1413+ MAAS, and enhances the overall MAAS user experience.
1414
1415=== added file 'debian/copyright'
1416--- debian/copyright 1970-01-01 00:00:00 +0000
1417+++ debian/copyright 2014-07-15 21:22:45 +0000
1418@@ -0,0 +1,25 @@
1419+Format: http://dep.debian.net/deps/dep5
1420+Upstream-Name: maas
1421+Source: https://launchpad.net/maas
1422+
1423+Files: *
1424+Copyright: 2012 Canonical Ltd.
1425+License: AGPL-3.0+
1426+
1427+Files: debian/*
1428+Copyright: 2012 Canonical Ltd.
1429+License: AGPL-3.0+
1430+
1431+License: AGPL-3.0+
1432+ This program is free software: you can redistribute it and/or modify
1433+ it under the terms of the GNU Affero General Public License as
1434+ published by the Free Software Foundation, either version 3 of the
1435+ License, or (at your option) any later version.
1436+ .
1437+ This program is distributed in the hope that it will be useful,
1438+ but WITHOUT ANY WARRANTY; without even the implied warranty of
1439+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1440+ GNU Affero General Public License for more details.
1441+ .
1442+ You should have received a copy of the GNU Affero General Public License
1443+ along with this program. If not, see <http://www.gnu.org/licenses/>.
1444
1445=== added directory 'debian/extras'
1446=== added file 'debian/extras/20-maas.conf'
1447--- debian/extras/20-maas.conf 1970-01-01 00:00:00 +0000
1448+++ debian/extras/20-maas.conf 2014-07-15 21:22:45 +0000
1449@@ -0,0 +1,32 @@
1450+# Enable the udp server for installation logging
1451+$ModLoad imudp
1452+$UDPServerRun 514
1453+$ModLoad imtcp # load TCP listener
1454+
1455+# The following section (certificates) was copied from orchestra, but is
1456+# not used here. In the future, if we needed secure ssl, then re-enable.
1457+# These files were created in the orchestra-logging-server's postinst
1458+#
1459+## make gtls driver the default
1460+#$DefaultNetstreamDriver gtls
1461+#
1462+## certificate files
1463+#$DefaultNetstreamDriverCAFile /var/lib/maas/ssl-cert-orchestra-ca.pem
1464+#$DefaultNetstreamDriverCertFile /var/lib/maas/.ssl/ssl-cert-orchestra.pem
1465+#$DefaultNetstreamDriverKeyFile /var/lib/maas/.ssl/ssl-cert-orchestra-pk.pem
1466+#
1467+#$InputTCPServerStreamDriverMode 1 # run driver in TLS-only mode
1468+#$InputTCPServerStreamDriverAuthMode anon # client is NOT authenticated
1469+#$InputTCPServerRun 10514 # start up listener at port 10514
1470+
1471+# Reduce message repetition
1472+$RepeatedMsgReduction on
1473+##$RepeatedMsgContainsOrigionalMsg on
1474+
1475+# Message templating
1476+$template MAASboot,"/var/log/maas/rsyslog/%HOSTNAME%/%$YEAR%/%$MONTH%/%$DAY%/messages"
1477+
1478+:fromhost-ip, !isequal, "127.0.0.1" ?MAASboot
1479+# Stop messages that came from anywhere else from going into other places
1480+# like /var/log/syslog. If you want to see these messages there, then comment below
1481+& ~
1482
1483=== added file 'debian/extras/99-maas'
1484--- debian/extras/99-maas 1970-01-01 00:00:00 +0000
1485+++ debian/extras/99-maas 2014-07-15 21:22:45 +0000
1486@@ -0,0 +1,5 @@
1487+# /etc/squid-deb-proxy/mirror-dstdomain.acl.d/99-maas
1488+#
1489+# Enable launchpad personal package archives for squid-deb-proxy
1490+ppa.launchpad.net
1491+keyserver.ubuntu.com
1492
1493=== added file 'debian/extras/99-maas-sudoers'
1494--- debian/extras/99-maas-sudoers 1970-01-01 00:00:00 +0000
1495+++ debian/extras/99-maas-sudoers 2014-07-15 21:22:45 +0000
1496@@ -0,0 +1,4 @@
1497+maas ALL= NOPASSWD: /usr/sbin/service maas-dhcp-server restart
1498+maas ALL= NOPASSWD: /usr/sbin/service maas-dhcp-server stop
1499+maas ALL= NOPASSWD: /usr/sbin/maas-provision
1500+maas ALL= NOPASSWD: SETENV: /usr/sbin/maas-import-pxe-files
1501
1502=== added file 'debian/extras/isc-dhcp-server.override'
1503--- debian/extras/isc-dhcp-server.override 1970-01-01 00:00:00 +0000
1504+++ debian/extras/isc-dhcp-server.override 2014-07-15 21:22:45 +0000
1505@@ -0,0 +1,1 @@
1506+manual
1507
1508=== added file 'debian/extras/maas'
1509--- debian/extras/maas 1970-01-01 00:00:00 +0000
1510+++ debian/extras/maas 2014-07-15 21:22:45 +0000
1511@@ -0,0 +1,6 @@
1512+#!/bin/sh
1513+if [ "`expr \"$0\" : \".*maas-cli*\"`" != "0" ];then
1514+ echo " WARNING: The maas-cli command is deprecated and will be removed" \
1515+ "in a future\n version. From now on please use 'maas' instead." >&2
1516+fi
1517+exec python -m maascli "$@"
1518
1519=== added file 'debian/extras/maas-probe-dhcp'
1520--- debian/extras/maas-probe-dhcp 1970-01-01 00:00:00 +0000
1521+++ debian/extras/maas-probe-dhcp 2014-07-15 21:22:45 +0000
1522@@ -0,0 +1,7 @@
1523+#!/bin/sh
1524+if [ "$(id -u)" != "0" ]; then
1525+ echo "This utility may only be run as root." 1>&2
1526+ exit 1
1527+fi
1528+export PYTHONPATH="/usr/share/maas${PYTHONPATH:+:}${PYTHONPATH}"
1529+exec /usr/bin/python -m provisioningserver.dhcp.probe "$@"
1530
1531=== added file 'debian/extras/maas-provision'
1532--- debian/extras/maas-provision 1970-01-01 00:00:00 +0000
1533+++ debian/extras/maas-provision 2014-07-15 21:22:45 +0000
1534@@ -0,0 +1,7 @@
1535+#!/bin/sh
1536+if [ "$(id -u)" != "0" ]; then
1537+ echo "This utility may only be run as root." 1>&2
1538+ exit 1
1539+fi
1540+export PYTHONPATH="/usr/share/maas${PYTHONPATH:+:}${PYTHONPATH}"
1541+exec /usr/bin/python -m provisioningserver "$@"
1542
1543=== added file 'debian/extras/maas-region-admin'
1544--- debian/extras/maas-region-admin 1970-01-01 00:00:00 +0000
1545+++ debian/extras/maas-region-admin 2014-07-15 21:22:45 +0000
1546@@ -0,0 +1,8 @@
1547+#!/bin/sh
1548+if [ "$(id -u)" != "0" ]; then
1549+ echo "This utility may only be run as root." 1>&2
1550+ exit 1
1551+fi
1552+export PYTHONPATH="/usr/share/maas${PYTHONPATH:+:}${PYTHONPATH}"
1553+export DJANGO_SETTINGS_MODULE="maas.settings"
1554+exec /usr/bin/django-admin "$@"
1555
1556=== added file 'debian/extras/maas-region-celeryd'
1557--- debian/extras/maas-region-celeryd 1970-01-01 00:00:00 +0000
1558+++ debian/extras/maas-region-celeryd 2014-07-15 21:22:45 +0000
1559@@ -0,0 +1,50 @@
1560+#!/usr/bin/python
1561+import os
1562+from grp import getgrnam
1563+from pwd import getpwnam
1564+
1565+def start_celery(args):
1566+ uid = getpwnam(args.user).pw_uid
1567+ gid = getgrnam(args.group).gr_gid
1568+
1569+ env = dict(os.environ, PYTHONPATH="/usr/share/maas")
1570+
1571+ command = [
1572+ 'celeryd',
1573+ '--logfile=%s' % args.logfile,
1574+ '--schedule=%s' % args.schedule,
1575+ '--loglevel=INFO',
1576+ '--beat',
1577+ '--queues=celery,master',
1578+ ]
1579+
1580+ # Change gid first, just in case changing the uid might deprive
1581+ # us of the privileges required to setgid.
1582+ os.setgid(gid)
1583+ os.setuid(uid)
1584+
1585+ os.execvpe(command[0], command, env=env)
1586+
1587+def main():
1588+ import argparse
1589+ parser = argparse.ArgumentParser(
1590+ description='MAAS celery daemon config options')
1591+ parser.add_argument(
1592+ '--user', '-u', metavar='USER', default='maas',
1593+ help="System user identity that should run the cluster controller.")
1594+ parser.add_argument(
1595+ '--group', '-g', metavar='GROUP', default='maas',
1596+ help="System group that should run the cluster controller.")
1597+ parser.add_argument(
1598+ '--logfile', '-l', metavar='LOGFILE', default='/var/log/maas/celery-region.log',
1599+ help="Location of the logfile.")
1600+ parser.add_argument(
1601+ '--schedule', '-s', metavar='SCHEDULE', default='/var/lib/maas/celerybeat-region-schedule',
1602+ help="Location of the beat schedule file.")
1603+
1604+ args = args = parser.parse_args()
1605+
1606+ start_celery(args)
1607+
1608+if __name__ == '__main__':
1609+ main()
1610
1611=== added file 'debian/extras/maas_remote_syslog_compress'
1612--- debian/extras/maas_remote_syslog_compress 1970-01-01 00:00:00 +0000
1613+++ debian/extras/maas_remote_syslog_compress 2014-07-15 21:22:45 +0000
1614@@ -0,0 +1,2 @@
1615+# Compress log files not changed in more than 48 hours:
1616+30 4 * * * root find /var/log/maas/rsyslog -type f -mtime +2 -exec bzip2 '{}' \;
1617
1618=== added file 'debian/maas-cli.install'
1619--- debian/maas-cli.install 1970-01-01 00:00:00 +0000
1620+++ debian/maas-cli.install 2014-07-15 21:22:45 +0000
1621@@ -0,0 +1,2 @@
1622+debian/extras/maas usr/bin
1623+debian/tmp/usr/lib/python*/dist-packages/maascli
1624
1625=== added file 'debian/maas-cli.links'
1626--- debian/maas-cli.links 1970-01-01 00:00:00 +0000
1627+++ debian/maas-cli.links 2014-07-15 21:22:45 +0000
1628@@ -0,0 +1,1 @@
1629+usr/bin/maas usr/bin/maas-cli
1630
1631=== added file 'debian/maas-cli.lintian-overrides'
1632--- debian/maas-cli.lintian-overrides 1970-01-01 00:00:00 +0000
1633+++ debian/maas-cli.lintian-overrides 2014-07-15 21:22:45 +0000
1634@@ -0,0 +1,1 @@
1635+maas-cli: binary-without-manpage usr/bin/maas-cli
1636
1637=== added file 'debian/maas-cluster-controller.config'
1638--- debian/maas-cluster-controller.config 1970-01-01 00:00:00 +0000
1639+++ debian/maas-cluster-controller.config 2014-07-15 21:22:45 +0000
1640@@ -0,0 +1,36 @@
1641+#!/bin/sh
1642+
1643+set -e
1644+
1645+. /usr/share/debconf/confmodule
1646+db_version 2.0
1647+
1648+# Only ask for new installations and reconfiguring.
1649+# XXX Fix to not ask when installing from the CD.
1650+if ([ "$1" = "configure" ] && [ -z "$2" ]); then
1651+
1652+ db_get maas-cluster-controller/maas-url || true
1653+ if [ -z "$RET" ]; then
1654+ # Attempt to pre-populate if installing on the region controller.
1655+ if [ -e /etc/maas/maas_local_settings.py ]; then
1656+ url=$(awk '$1 == "DEFAULT_MAAS_URL" { split($0,array,"\"")} END{print array[2] }' /etc/maas/maas_local_settings.py)
1657+ # If the URL doesn't end in /MAAS then add it. This helps upgrades from
1658+ # precise for which the URL didn't contain /MAAS, which is now required
1659+ if ! echo $url | grep -qs "/MAAS$"; then
1660+ url="${url}/MAAS"
1661+ fi
1662+ db_set maas-cluster-controller/maas-url "$url"
1663+ else
1664+ # Will only get here if dbconf value not already set, or
1665+ # /etc/maas/maas_local_settings.py doesn't exist.
1666+ db_input medium maas-cluster-controller/maas-url || true
1667+ db_go
1668+ fi
1669+ fi
1670+fi
1671+
1672+if [ "$1" = "reconfigure" ]; then
1673+ db_input high maas-cluster-controller/maas-url || true
1674+ db_go
1675+fi
1676+#DEBHELPER#
1677
1678=== added file 'debian/maas-cluster-controller.dirs'
1679--- debian/maas-cluster-controller.dirs 1970-01-01 00:00:00 +0000
1680+++ debian/maas-cluster-controller.dirs 2014-07-15 21:22:45 +0000
1681@@ -0,0 +1,2 @@
1682+etc/maas
1683+var/lib/maas/boot-resources
1684
1685=== added file 'debian/maas-cluster-controller.install'
1686--- debian/maas-cluster-controller.install 1970-01-01 00:00:00 +0000
1687+++ debian/maas-cluster-controller.install 2014-07-15 21:22:45 +0000
1688@@ -0,0 +1,31 @@
1689+# Install twisted plugins
1690+twisted/plugins/maasps.py usr/share/pyshared/twisted/plugins
1691+
1692+# Install PSERV config files
1693+debian/tmp/etc/maas/pserv.yaml
1694+debian/tmp/etc/maas/bootresources.yaml
1695+
1696+# Install cluster config file
1697+debian/tmp/etc/maas/maas_cluster.conf
1698+
1699+# Install celery config file
1700+debian/tmp/usr/share/maas/celeryconfig_cluster.py
1701+
1702+# Install local celery cluster config file
1703+debian/tmp/etc/maas/maas_local_celeryconfig_cluster.py
1704+
1705+# Install templates
1706+debian/tmp/etc/maas/templates/dhcp
1707+debian/tmp/etc/maas/templates/power
1708+debian/tmp/etc/maas/templates/pxe
1709+debian/tmp/etc/maas/templates/uefi
1710+
1711+# Install maas-import-pxe-files and related files
1712+debian/tmp/usr/sbin/maas-import-pxe-files
1713+man/maas-import-pxe-files.8 usr/share/man/man8
1714+debian/tmp/usr/bin/uec2roottar
1715+
1716+# Install all other stuff
1717+debian/extras/99-maas-sudoers etc/sudoers.d
1718+debian/extras/isc-dhcp-server.override etc/init
1719+debian/tmp/etc/maas/maas-cluster-http.conf
1720
1721=== added file 'debian/maas-cluster-controller.links'
1722--- debian/maas-cluster-controller.links 1970-01-01 00:00:00 +0000
1723+++ debian/maas-cluster-controller.links 2014-07-15 21:22:45 +0000
1724@@ -0,0 +1,1 @@
1725+etc/maas/maas_local_celeryconfig_cluster.py usr/share/maas/maas_local_celeryconfig_cluster.py
1726
1727=== added file 'debian/maas-cluster-controller.lintian-overrides'
1728--- debian/maas-cluster-controller.lintian-overrides 1970-01-01 00:00:00 +0000
1729+++ debian/maas-cluster-controller.lintian-overrides 2014-07-15 21:22:45 +0000
1730@@ -0,0 +1,1 @@
1731+maas-cluster-controller: binary-without-manpage usr/bin/uec2roottar
1732
1733=== added file 'debian/maas-cluster-controller.logrotate'
1734--- debian/maas-cluster-controller.logrotate 1970-01-01 00:00:00 +0000
1735+++ debian/maas-cluster-controller.logrotate 2014-07-15 21:22:45 +0000
1736@@ -0,0 +1,9 @@
1737+/var/log/maas/pserv.log {
1738+ rotate 5
1739+ weekly
1740+ compress
1741+ missingok
1742+ postrotate
1743+ [ -r /var/run/maas-pserv.pid ] && kill -s USR2 $(cat /var/run/maas-pserv.pid) || true
1744+ endscript
1745+}
1746
1747=== added file 'debian/maas-cluster-controller.maas-cluster-celery.upstart'
1748--- debian/maas-cluster-controller.maas-cluster-celery.upstart 1970-01-01 00:00:00 +0000
1749+++ debian/maas-cluster-controller.maas-cluster-celery.upstart 2014-07-15 21:22:45 +0000
1750@@ -0,0 +1,30 @@
1751+# maas-cluster-controller - provisioning service
1752+#
1753+# MAAS Cluster Controller Service
1754+
1755+description "MAAS Cluster Controller"
1756+author "Julian Edwards <julian.edwards@canonical.com>"
1757+
1758+start on filesystem and net-device-up
1759+stop on runlevel [016]
1760+
1761+env CONFIG_FILE=/etc/maas/maas_cluster.conf
1762+# Use cluster config.
1763+env CELERY_CONFIG_MODULE="celeryconfig_cluster"
1764+
1765+pre-start script
1766+ if [ ! -f $CONFIG_FILE ]; then
1767+ echo "$CONFIG_FILE does not exist. Aborting."
1768+ stop
1769+ exit 0
1770+ fi
1771+end script
1772+
1773+script
1774+ # Prepare settings.
1775+ . $CONFIG_FILE
1776+ # Allow the cluster-controller process to read CLUSTER_UUID as set
1777+ # in that config file.
1778+ export CLUSTER_UUID
1779+ exec /usr/bin/authbind --deep /usr/sbin/maas-provision start-cluster-controller $MAAS_URL -u maas -g maas
1780+end script
1781
1782=== added file 'debian/maas-cluster-controller.maas-pserv.upstart'
1783--- debian/maas-cluster-controller.maas-pserv.upstart 1970-01-01 00:00:00 +0000
1784+++ debian/maas-cluster-controller.maas-pserv.upstart 2014-07-15 21:22:45 +0000
1785@@ -0,0 +1,32 @@
1786+# maas-pserv - provisioning service
1787+#
1788+# MAAS Provisioning Service
1789+
1790+description "MAAS"
1791+author "Andres Rodriguez <andres.rodriguez@canonical.com>"
1792+
1793+start on filesystem and net-device-up
1794+stop on runlevel [016]
1795+
1796+respawn
1797+
1798+env CONFIG_FILE=/etc/maas/maas_cluster.conf
1799+
1800+pre-start script
1801+ if [ ! -f $CONFIG_FILE ]; then
1802+ echo "$CONFIG_FILE does not exist. Aborting."
1803+ stop
1804+ exit 0
1805+ fi
1806+end script
1807+
1808+script
1809+ # Prepare settings.
1810+ . $CONFIG_FILE
1811+ # Allow the tftpd process to read CLUSTER_UUID as set in that config
1812+ # file.
1813+ export CLUSTER_UUID
1814+ export MAAS_URL
1815+ # To add options to your daemon, edit the line below:
1816+ exec /usr/bin/authbind --deep /usr/bin/twistd -n --uid=maas --gid=maas --pidfile=/run/maas-pserv.pid --logfile=/dev/null maas-pserv --config-file=/etc/maas/pserv.yaml
1817+end script
1818
1819=== added file 'debian/maas-cluster-controller.postinst'
1820--- debian/maas-cluster-controller.postinst 1970-01-01 00:00:00 +0000
1821+++ debian/maas-cluster-controller.postinst 2014-07-15 21:22:45 +0000
1822@@ -0,0 +1,166 @@
1823+#!/bin/sh
1824+
1825+set -e
1826+
1827+. /usr/share/debconf/confmodule
1828+db_version 2.0
1829+
1830+RELEASE=`lsb_release -rs` || RELEASE=""
1831+
1832+create_log_dir() {
1833+ # create log dir
1834+ if [ ! -d /var/lib/maas ]; then
1835+ mkdir -p /var/lib/maas
1836+ fi
1837+ if [ ! -d /var/log/maas/oops ]; then
1838+ mkdir -p /var/log/maas/oops
1839+ fi
1840+ # Give appropriate permissions
1841+ chown -R maas:maas /var/lib/maas/
1842+ chown -R maas:maas /var/log/maas
1843+ chmod -R 775 /var/log/maas/oops
1844+}
1845+
1846+configure_maas_tgt() {
1847+ # Ensure that iSCSI targets get re-defined on reboot.
1848+ # Creates a softlink in /etc/tgt/conf.d/ that points to the current
1849+ # boot images' tgt configuration.
1850+ mkdir -p /etc/tgt/conf.d
1851+ ln -sf /var/lib/maas/boot-resources/current/maas.tgt /etc/tgt/conf.d/maas.conf
1852+}
1853+
1854+extract_cluster_uuid(){
1855+ # Extract ClUSTER_UUID setting from config file $1. This will work
1856+ # both the cluster celery config (which is python) and the cluster
1857+ # config (which is shell).
1858+ sed -n -e "s/^CLUSTER_UUID *= *[\"']\([^\"']*\).*/\1/p" "$1"
1859+}
1860+
1861+configure_cluster_uuid(){
1862+ # The cluster uuid goes into maas_cluster.conf, but we also still
1863+ # keep a copy in maas_local_celeryconfig_cluster.py (hopefully just
1864+ # temporarily). If an old uuid is configured, we replicate that to
1865+ # maas_cluster.conf; otherwise, we want to generate one.
1866+ local uuid
1867+
1868+
1869+ if [ -n "$(extract_cluster_uuid /etc/maas/maas_cluster.conf)" ]; then
1870+ # UUID is already set up. Wonderful.
1871+ return
1872+ fi
1873+
1874+ # Look for a UUID stored in the old location.
1875+ uuid="$(extract_cluster_uuid /etc/maas/maas_local_celeryconfig_cluster.py)"
1876+
1877+ if [ -z "$uuid" ]; then
1878+ # No UUID at all yet. Generate one, and insert it into its
1879+ # placeholder in the old config location.
1880+ uuid="$(uuidgen)"
1881+ sed -i "s|^CLUSTER_UUID = None$|CLUSTER_UUID = '$uuid'|" \
1882+ /etc/maas/maas_local_celeryconfig_cluster.py
1883+ fi
1884+
1885+ # Either way, at this point we have a uuid, and it is configured in
1886+ # the old config location.
1887+ #
1888+ # Write it to maas_cluster.conf as well. There is no initial
1889+ # placeholder in this file, so just append the setting.
1890+ echo "CLUSTER_UUID=\"$uuid\"" >>/etc/maas/maas_cluster.conf
1891+}
1892+
1893+enable_apache_version_mod(){
1894+ COMMON_STATE=$(dpkg-query -f '${Status}' -W 'apache2.2-common' 2>/dev/null | awk '{print $3}' || true)
1895+ if [ "$COMMON_STATE" = "installed" ] || [ "$COMMON_STATE" = "unpacked" ] ; then
1896+ a2enmod version
1897+ fi
1898+}
1899+
1900+configure_cluster_http(){
1901+ case $RELEASE in
1902+ 12.04|12.10|13.04)
1903+ if [ -e /etc/maas/maas-cluster-http.conf -a \
1904+ ! -e /etc/apache2/conf.d/maas-cluster-http.conf ]; then
1905+ ln -sf /etc/maas/maas-cluster-http.conf /etc/apache2/conf.d/maas-cluster-http.conf
1906+ fi
1907+ ;;
1908+ *)
1909+ # handle apache configs
1910+ if [ -e /etc/maas/maas-cluster-http.conf -a \
1911+ ! -e /etc/apache2/conf-enabled/maas-cluster-http.conf ]; then
1912+ ln -sf /etc/maas/maas-cluster-http.conf /etc/apache2/conf-enabled/maas-cluster-http.conf
1913+ fi
1914+ ;;
1915+ esac
1916+}
1917+
1918+configure_cluster_authbind() {
1919+ MAAS_UID="`id -u maas`"
1920+ if [ ! -f "/etc/authbind/byuid/$MAAS_UID" ]; then
1921+ if [ ! -d "/etc/authbind/byuid" ]; then
1922+ mkdir -p /etc/authbind/byuid
1923+ chmod 755 /etc/authbind
1924+ chmod 755 /etc/authbind/byuid
1925+ fi
1926+ fi
1927+ echo '0.0.0.0/0:68,69' >/etc/authbind/byuid/$MAAS_UID
1928+ echo '::/0,68-69' >>/etc/authbind/byuid/$MAAS_UID
1929+ chown maas:maas /etc/authbind/byuid/$MAAS_UID
1930+ chmod 700 /etc/authbind/byuid/$MAAS_UID
1931+}
1932+
1933+restart_apache2(){
1934+ if [ -x /usr/sbin/invoke-rc.d ]; then
1935+ invoke-rc.d apache2 restart || true
1936+ else
1937+ /etc/init.d/apache2 restart || true
1938+ fi
1939+}
1940+
1941+configure_pserv_generator(){
1942+ # Get the MAAS_URL on configure/reconfigure and write it to the conf files.
1943+ db_get maas-cluster-controller/maas-url || true
1944+ if [ -n "$RET" ]; then
1945+ sed -i "s|MAAS_URL=.*|MAAS_URL=\"$RET\"|" /etc/maas/maas_cluster.conf
1946+ # Extract the hostname part.
1947+ HOSTPART=$(echo $RET|awk '{ split($0,array,"/")} END{print array[3] }')
1948+ # And substitute it in-place in pserv.yaml on an indented, non-commented
1949+ # line.
1950+ sed -ri "s|^([[:space:]]+)(#+[[:space:]]*)?(generator:[[:space:]]+https?://)[^:/]+|\1\3$HOSTPART|" /etc/maas/pserv.yaml
1951+ fi
1952+}
1953+
1954+
1955+
1956+if [ "$1" = "configure" ] && [ -z "$2" ]; then
1957+ create_log_dir
1958+ configure_maas_tgt
1959+fi
1960+
1961+if [ "$1" = "configure" ]; then
1962+ if dpkg --compare-versions "$2" lt 0.1+bzr1239+dfsg-0ubuntu1; then
1963+ create_log_dir
1964+ fi
1965+
1966+ configure_maas_tgt
1967+ configure_pserv_generator
1968+
1969+ # These config files may contain a private cluster UUID. Only maas
1970+ # can read them; only root can write them
1971+ chown root:maas \
1972+ /etc/maas/maas_local_celeryconfig_cluster.py \
1973+ /etc/maas/maas_cluster.conf
1974+ chmod 0640 \
1975+ /etc/maas/maas_local_celeryconfig_cluster.py \
1976+ /etc/maas/maas_cluster.conf
1977+
1978+ configure_cluster_uuid
1979+ configure_cluster_authbind
1980+ enable_apache_version_mod
1981+ configure_cluster_http
1982+ restart_apache2
1983+ maas-provision upgrade-cluster
1984+fi
1985+
1986+db_stop
1987+
1988+#DEBHELPER#
1989
1990=== added file 'debian/maas-cluster-controller.postrm'
1991--- debian/maas-cluster-controller.postrm 1970-01-01 00:00:00 +0000
1992+++ debian/maas-cluster-controller.postrm 2014-07-15 21:22:45 +0000
1993@@ -0,0 +1,43 @@
1994+#!/bin/sh
1995+
1996+set -e
1997+
1998+#DEBHELPER#
1999+
2000+RELEASE=`lsb_release -rs` || RELEASE=""
2001+
2002+case "$1" in
2003+ purge)
2004+ # remove log directory
2005+ rm -rf /var/log/maas
2006+ case $RELEASE in
2007+ 12.04|12.10|13.04)
2008+ if [ -h /etc/apache2/conf.d/maas-cluster-http.conf ]; then
2009+ rm -rf /etc/apache2/conf.d/maas-cluster-http.conf
2010+ fi
2011+ ;;
2012+ *)
2013+ # remove apache2 config
2014+ if [ -h /etc/apache2/conf-enabled/maas-cluster-http.conf ]; then
2015+ rm -rf /etc/apache2/conf-enabled/maas-cluster-http.conf
2016+ fi
2017+ ;;
2018+ esac
2019+ # remove var directory
2020+ rm -rf /var/lib/maas/celerybeat-cluster-schedule
2021+ DIR=/var/lib/maas
2022+ if [ "$(ls -A $DIR 2> /dev/null)" = "" ]; then
2023+ rm -rf /var/lib/maas
2024+ fi
2025+
2026+ # Delete symlink for iSCSI config.
2027+ if [ -L /etc/tgt/conf.d/maas.conf ]; then
2028+ rm -rf /etc/tgt/conf.d/maas.conf
2029+ fi
2030+
2031+ # Remove authbind
2032+ MAAS_UID="`id -u maas`"
2033+ if [ -f "/etc/authbind/byuid/$MAAS_UID" ]; then
2034+ rm -rf /etc/authbind/byuid/$MAAS_UID
2035+ fi
2036+esac
2037
2038=== added file 'debian/maas-cluster-controller.templates'
2039--- debian/maas-cluster-controller.templates 1970-01-01 00:00:00 +0000
2040+++ debian/maas-cluster-controller.templates 2014-07-15 21:22:45 +0000
2041@@ -0,0 +1,7 @@
2042+Template: maas-cluster-controller/maas-url
2043+Type: string
2044+Default:
2045+_Description: Ubuntu MAAS API address:
2046+ The MAAS Cluster Controller needs to contact the MAAS server to
2047+ register its presence. Set the URL to the MAAS API here, e.g.
2048+ http://192.168.1.1/MAAS
2049
2050=== added file 'debian/maas-common.install'
2051--- debian/maas-common.install 1970-01-01 00:00:00 +0000
2052+++ debian/maas-common.install 2014-07-15 21:22:45 +0000
2053@@ -0,0 +1,2 @@
2054+# Install Celery Config
2055+debian/tmp/usr/share/maas/celeryconfig_common.py
2056
2057=== added file 'debian/maas-common.postinst'
2058--- debian/maas-common.postinst 1970-01-01 00:00:00 +0000
2059+++ debian/maas-common.postinst 2014-07-15 21:22:45 +0000
2060@@ -0,0 +1,14 @@
2061+#!/bin/sh
2062+
2063+set -e
2064+
2065+add_user_group(){
2066+ local user="maas"
2067+ local group="maas"
2068+ addgroup --quiet --system "$group" || true
2069+ adduser --quiet --system --group --no-create-home "$user" || true
2070+}
2071+
2072+add_user_group
2073+
2074+#DEBHELPER#
2075
2076=== added file 'debian/maas-common.postrm'
2077--- debian/maas-common.postrm 1970-01-01 00:00:00 +0000
2078+++ debian/maas-common.postrm 2014-07-15 21:22:45 +0000
2079@@ -0,0 +1,14 @@
2080+#!/bin/sh
2081+
2082+set -e
2083+
2084+case "$1" in
2085+ purge)
2086+ # Deleting user/group
2087+ if getent passwd maas >/dev/null; then
2088+ deluser maas || true
2089+ delgroup maas || true
2090+ fi
2091+esac
2092+
2093+#DEBHELPER#
2094
2095=== added file 'debian/maas-dhcp.apparmor'
2096--- debian/maas-dhcp.apparmor 1970-01-01 00:00:00 +0000
2097+++ debian/maas-dhcp.apparmor 2014-07-15 21:22:45 +0000
2098@@ -0,0 +1,7 @@
2099+/run/maas/dhcp/ r,
2100+/run/maas/dhcp/** r,
2101+/run/maas/dhcp/*.pid lrw,
2102+/run/maas/dhcp/*.trace lrw,
2103+/run/maas/dhcp/*.leases* lrw,
2104+/var/lib/maas/dhcp/dhcpd*.leases* lrw,
2105+/etc/maas/dhcpd.conf r,
2106
2107=== added file 'debian/maas-dhcp.install'
2108--- debian/maas-dhcp.install 1970-01-01 00:00:00 +0000
2109+++ debian/maas-dhcp.install 2014-07-15 21:22:45 +0000
2110@@ -0,0 +1,1 @@
2111+/debian/tmp/etc/apparmor.d/dhcpd.d/maas
2112
2113=== added file 'debian/maas-dhcp.maas-dhcp-server.upstart'
2114--- debian/maas-dhcp.maas-dhcp-server.upstart 1970-01-01 00:00:00 +0000
2115+++ debian/maas-dhcp.maas-dhcp-server.upstart 2014-07-15 21:22:45 +0000
2116@@ -0,0 +1,65 @@
2117+description "MAAS instance of ISC DHCP server"
2118+author "Jeroen Vermeulen <jtv@canonical.com>"
2119+
2120+start on runlevel [2345]
2121+stop on runlevel [!2345]
2122+
2123+env CONFIG_FILE=/etc/maas/dhcpd.conf
2124+env PID_DIR=/run/maas/dhcp
2125+env PID_FILE=/run/maas/dhcp/dhcpd.pid
2126+env LEASES_DIR=/var/lib/maas/dhcp
2127+env LEASES_FILE=/var/lib/maas/dhcp/dhcpd.leases
2128+
2129+# This is where we write what interfaces dhcpd should listen on.
2130+env INTERFACES_FILE=/var/lib/maas/dhcpd-interfaces
2131+
2132+pre-start script
2133+ if [ ! -f $CONFIG_FILE ]; then
2134+ echo "$CONFIG_FILE does not exist. Aborting."
2135+ stop
2136+ exit 0
2137+ fi
2138+
2139+ if [ ! -f $INTERFACES_FILE ]; then
2140+ echo "$INTERFACES_FILE does not exist. Aborting."
2141+ stop
2142+ exit 0
2143+ fi
2144+
2145+ if ! /usr/sbin/dhcpd -t -q -4 -cf $CONFIG_FILE > /dev/null 2>&1; then
2146+ echo "dhcpd self-test failed. Please fix the config file."
2147+ echo "The error was: "
2148+ /usr/sbin/dhcpd -t -4 -cf $CONFIG_FILE
2149+ stop
2150+ exit 0
2151+ fi
2152+end script
2153+
2154+respawn
2155+script
2156+ INTERFACES=`cat "${INTERFACES_FILE}"`
2157+
2158+ # Allow dhcp server to write lease and pid file.
2159+ mkdir -p $PID_DIR
2160+ chown dhcpd:dhcpd $PID_DIR
2161+
2162+ # As of Quantal, the leases file must be owned by root:root (even though
2163+ # the daemon will run under an unprivileged user).
2164+ # In Precise, ownership was supposed to be dhcpd:dhcpd.
2165+ #
2166+ # maas packages on saucy are only supported with newer isc-dhcp via
2167+ # the cloud-archive. See bug 1231693 for more information, including
2168+ # a patch that would actually work to support all, but is complex.
2169+
2170+ mkdir -p $LEASES_DIR
2171+ chown root:root $LEASES_DIR
2172+ [ -e $LEASES_FILE ] || touch $LEASES_FILE
2173+ for LFILE in $LEASES_FILE $LEASES_FILE~; do
2174+ if [ -e $LFILE ]; then
2175+ chown root:root $LFILE
2176+ chmod a+r $LFILE
2177+ fi
2178+ done
2179+
2180+ exec /usr/sbin/dhcpd -user dhcpd -group dhcpd -f -q -4 -pf $PID_FILE -cf $CONFIG_FILE -lf $LEASES_FILE $INTERFACES
2181+end script
2182
2183=== added file 'debian/maas-dhcp.postinst'
2184--- debian/maas-dhcp.postinst 1970-01-01 00:00:00 +0000
2185+++ debian/maas-dhcp.postinst 2014-07-15 21:22:45 +0000
2186@@ -0,0 +1,15 @@
2187+#!/bin/sh
2188+
2189+set -e
2190+
2191+if [ "$1" = "configure" ]; then
2192+ invoke-rc.d isc-dhcp-server stop
2193+
2194+ dhcpd_prof="/etc/apparmor.d/usr.sbin.dhcpd"
2195+ if [ -f "${dhcpd_prof}" ] && command -v apparmor_parser >/dev/null 2>&1
2196+ then
2197+ apparmor_parser --replace --write-cache --skip-read-cache "${dhcpd_prof}" || true
2198+ fi
2199+fi
2200+
2201+#DEBHELPER#
2202
2203=== added file 'debian/maas-dhcp.postrm'
2204--- debian/maas-dhcp.postrm 1970-01-01 00:00:00 +0000
2205+++ debian/maas-dhcp.postrm 2014-07-15 21:22:45 +0000
2206@@ -0,0 +1,13 @@
2207+#!/bin/sh
2208+
2209+set -e
2210+
2211+if [ "$1" = "remove" ] || [ "$1" = "purge" ]; then
2212+ dhcpd_prof="/etc/apparmor.d/usr.sbin.dhcpd"
2213+ if [ -f "${dhcpd_prof}" ] &&
2214+ command -v apparmor_parser >/dev/null 2>&1; then
2215+ apparmor_parser --replace --write-cache --skip-read-cache "${dhcpd_prof}"
2216+ fi
2217+fi
2218+
2219+#DEBHELPER#
2220
2221=== added file 'debian/maas-dns.dirs'
2222--- debian/maas-dns.dirs 1970-01-01 00:00:00 +0000
2223+++ debian/maas-dns.dirs 2014-07-15 21:22:45 +0000
2224@@ -0,0 +1,1 @@
2225+etc/bind/maas
2226
2227=== added file 'debian/maas-dns.postinst'
2228--- debian/maas-dns.postinst 1970-01-01 00:00:00 +0000
2229+++ debian/maas-dns.postinst 2014-07-15 21:22:45 +0000
2230@@ -0,0 +1,46 @@
2231+#!/bin/sh
2232+
2233+set -e
2234+
2235+if ([ "$1" = "configure" ] && [ -z "$2" ]) || [ -n "$DEBCONF_RECONFIGURE" ]; then
2236+ # If /etc/bind/maas is empty, set_up_dns.
2237+ if [ ! "$(ls -A /etc/bind/maas)" ]; then
2238+ maas-region-admin set_up_dns
2239+ fi
2240+
2241+ # Fix permissions.
2242+ if [ -d /etc/bind/maas ]; then
2243+ chown -R maas:root /etc/bind/maas
2244+ fi
2245+ if [ -f /etc/bind/maas/named.conf.maas ]; then
2246+ chmod 644 /etc/bind/maas/named.conf.maas
2247+ fi
2248+ if [ -f /etc/bind/maas/rndc.conf.maas ]; then
2249+ chmod 600 /etc/bind/maas/rndc.conf.maas
2250+ fi
2251+ if [ -f /etc/bind/maas/named.conf.rndc.maas ]; then
2252+ chown maas:bind /etc/bind/maas/named.conf.rndc.maas
2253+ chmod 640 /etc/bind/maas/named.conf.rndc.maas
2254+ fi
2255+
2256+ # Remove any existing MAAS-related include line from
2257+ # /etc/bind/named.conf.local, then re-add it.
2258+ sed -i '/^include\s.*maas/d' /etc/bind/named.conf.local
2259+ maas-region-admin get_named_conf --edit --config_path /etc/bind/named.conf.local
2260+ # Add a line in /etc/bind/named.conf.options that includes the
2261+ # /etc/named/maas/named.conf.options.inside.maas file.
2262+ maas-region-admin edit_named_options --config-path /etc/bind/named.conf.options
2263+
2264+ invoke-rc.d bind9 restart || true
2265+fi
2266+
2267+if [ "$1" = "configure" ]; then
2268+ # If the /etc/bind/named.conf.options is not set up yet, do it now.
2269+ # This might happen because of an upgrade from an older package.
2270+ if ! grep -qs "named.conf.options.inside.maas" /etc/bind/named.conf.options; then
2271+ maas-region-admin edit_named_options --config-path /etc/bind/named.conf.options
2272+ invoke-rc.d bind9 restart || true
2273+ fi
2274+fi
2275+
2276+#DEBHELPER#
2277
2278=== added file 'debian/maas-dns.postrm'
2279--- debian/maas-dns.postrm 1970-01-01 00:00:00 +0000
2280+++ debian/maas-dns.postrm 2014-07-15 21:22:45 +0000
2281@@ -0,0 +1,23 @@
2282+#!/bin/sh
2283+
2284+set -e
2285+
2286+if [ "$1" = "remove" ]; then
2287+ if [ -f /etc/bind/named.conf.local ]; then
2288+ sed -i '/^include.*\"\/etc\/bind\/maas\/named.conf.maas\"\;$/d' \
2289+ /etc/bind/named.conf.local
2290+ fi
2291+fi
2292+
2293+if [ "$1" = "purge" ]; then
2294+ # Remove zone files
2295+ if [ -d /etc/bind/maas ]; then
2296+ rm -rf /etc/bind/maas
2297+ fi
2298+fi
2299+
2300+if [ -x /usr/sbin/invoke-rc.d ]; then
2301+ invoke-rc.d bind9 restart || true
2302+fi
2303+
2304+#DEBHELPER#
2305
2306=== added file 'debian/maas-region-controller-min.apport'
2307--- debian/maas-region-controller-min.apport 1970-01-01 00:00:00 +0000
2308+++ debian/maas-region-controller-min.apport 2014-07-15 21:22:45 +0000
2309@@ -0,0 +1,37 @@
2310+#!/usr/bin/python
2311+
2312+'''apport hook for maas-region-controller
2313+
2314+(c) 2012 Canonical Ltd.
2315+Author: Andres Rodriguez <andres.rodriguez@canonical.com>
2316+
2317+This program is free software; you can redistribute it and/or modify it
2318+under the terms of the GNU General Public License as published by the
2319+Free Software Foundation; either version 2 of the License, or (at your
2320+option) any later version. See http://www.gnu.org/copyleft/gpl.html for
2321+the full text of the license.
2322+'''
2323+
2324+from apport.hookutils import *
2325+
2326+def add_info(report, ui):
2327+ response = ui.yesno("The contents of your /etc/maas/maas_local_settings.py, "
2328+ "/etc/maas/txlongpoll.yaml, /etc/maas/pserv.yaml files "
2329+ "may help developers diagnose your bug more "
2330+ "quickly. However, it may contain sensitive "
2331+ "information. Do you want to include it in your "
2332+ "bug report?")
2333+
2334+ if response == None: # user cancelled
2335+ raise StopIteration
2336+
2337+ elif response == True:
2338+ attach_conffiles(report,'maas')
2339+
2340+ # Attaching log files
2341+ attach_file_if_exists(report, '/var/log/maas/maas.log', 'MAASLog')
2342+ attach_file_if_exists(report, '/var/log/maas/pserv.log', 'MAASPservLog')
2343+ attach_file_if_exists(report, '/var/log/maas/txlongpoll.log', 'MAAStxlongpollLog')
2344+
2345+ # Attaching related packages info
2346+ attach_related_packages(report, ['python-django-maas', 'apparmor'])
2347
2348=== added file 'debian/maas-region-controller-min.dirs'
2349--- debian/maas-region-controller-min.dirs 1970-01-01 00:00:00 +0000
2350+++ debian/maas-region-controller-min.dirs 2014-07-15 21:22:45 +0000
2351@@ -0,0 +1,1 @@
2352+var/log/maas/oops
2353
2354=== added file 'debian/maas-region-controller-min.install'
2355--- debian/maas-region-controller-min.install 1970-01-01 00:00:00 +0000
2356+++ debian/maas-region-controller-min.install 2014-07-15 21:22:45 +0000
2357@@ -0,0 +1,40 @@
2358+# Install project
2359+debian/tmp/usr/lib/python*/dist-packages/maas usr/share/maas
2360+
2361+# Install static files
2362+debian/tmp/usr/share/maas/web/static
2363+
2364+# Install Apache Config
2365+debian/tmp/etc/maas/maas-http.conf
2366+
2367+# Install MAAS local settings
2368+debian/tmp/etc/maas/maas_local_settings.py
2369+
2370+# Install celery config file
2371+debian/tmp/usr/share/maas/celeryconfig.py
2372+
2373+# Install local celery region config file
2374+debian/tmp/etc/maas/maas_local_celeryconfig.py
2375+
2376+# Install WSGI
2377+debian/tmp/usr/share/maas/wsgi.py
2378+
2379+# Install txlongpoll config file
2380+debian/tmp/etc/maas/txlongpoll.yaml
2381+
2382+# Install new preseed files
2383+debian/tmp/etc/maas/preseeds
2384+
2385+# Install templates
2386+debian/tmp/etc/maas/templates/dns
2387+debian/tmp/etc/maas/templates/commissioning-user-data
2388+
2389+# Install driver configuration file
2390+debian/tmp/etc/maas/drivers.yaml
2391+
2392+# Install all other stuff
2393+debian/extras/maas-region-admin usr/sbin
2394+debian/extras/maas-region-celeryd usr/sbin
2395+debian/extras/20-maas.conf etc/rsyslog.d
2396+debian/extras/maas_remote_syslog_compress etc/cron.d
2397+debian/extras/99-maas usr/share/maas/conf
2398
2399=== added file 'debian/maas-region-controller-min.links'
2400--- debian/maas-region-controller-min.links 1970-01-01 00:00:00 +0000
2401+++ debian/maas-region-controller-min.links 2014-07-15 21:22:45 +0000
2402@@ -0,0 +1,2 @@
2403+etc/maas/maas_local_settings.py usr/share/maas/maas_local_settings.py
2404+etc/maas/maas_local_celeryconfig.py usr/share/maas/maas_local_celeryconfig.py
2405
2406=== added file 'debian/maas-region-controller-min.lintian-overrides'
2407--- debian/maas-region-controller-min.lintian-overrides 1970-01-01 00:00:00 +0000
2408+++ debian/maas-region-controller-min.lintian-overrides 2014-07-15 21:22:45 +0000
2409@@ -0,0 +1,6 @@
2410+maas-region-controller: binary-without-manpage usr/sbin/maas
2411+maas-region-controller: binary-without-manpage usr/sbin/maas-region-celeryd
2412+maas-region-controller: script-not-executable etc/maas/templates/commissioning-user-data/snippets/maas_ipmi_autodetect.py
2413+maas-region-controller: script-not-executable etc/maas/templates/commissioning-user-data/snippets/maas_signal.py
2414+maas-region-controller: script-not-executable etc/maas/templates/commissioning-user-data/user_data.template
2415+maas-region-controller: script-not-executable etc/maas/templates/commissioning-user-data/snippets/maas_get.py
2416
2417=== added file 'debian/maas-region-controller-min.logrotate'
2418--- debian/maas-region-controller-min.logrotate 1970-01-01 00:00:00 +0000
2419+++ debian/maas-region-controller-min.logrotate 2014-07-15 21:22:45 +0000
2420@@ -0,0 +1,18 @@
2421+/var/log/maas/maas.log {
2422+ rotate 5
2423+ weekly
2424+ compress
2425+ copytruncate
2426+ missingok
2427+ #create 620 root www-data
2428+}
2429+
2430+/var/log/maas/txlongpoll.log {
2431+ rotate 5
2432+ weekly
2433+ compress
2434+ missingok
2435+ postrotate
2436+ [ -r /var/run/maas-txlongpoll.pid ] && kill -s USR2 $(cat /var/run/maas-txlongpoll.pid) || true
2437+ endscript
2438+}
2439
2440=== added file 'debian/maas-region-controller-min.maas-region-celery.upstart'
2441--- debian/maas-region-controller-min.maas-region-celery.upstart 1970-01-01 00:00:00 +0000
2442+++ debian/maas-region-controller-min.maas-region-celery.upstart 2014-07-15 21:22:45 +0000
2443@@ -0,0 +1,27 @@
2444+# maas-celery - celery daemon for the region controller
2445+#
2446+# MAAS Region Controller Celery Daemon
2447+
2448+description "MAAS"
2449+author "Raphael Badin <raphael.badin@canonical.com>"
2450+
2451+start on filesystem and net-device-up and rabbitmq-server-running
2452+stop on runlevel [016]
2453+
2454+respawn
2455+
2456+env workers_user="maas_workers"
2457+env workers_pass=""
2458+env workers_vhost="/maas_workers"
2459+env DJANGO_SETTINGS_MODULE="maas.settings"
2460+
2461+pre-start script
2462+ if [ -f /usr/sbin/rabbitmqctl ] && ! /usr/sbin/rabbitmqctl list_user_permissions "$workers_user" 1>/dev/null 2>&1; then
2463+ workers_pass=`grep "maas_workers" /etc/maas/maas_local_celeryconfig.py | cut -d':' -f3 | cut -d'@' -f1`
2464+ /usr/sbin/rabbitmqctl add_user "$workers_user" "$workers_pass"
2465+ /usr/sbin/rabbitmqctl add_vhost "$workers_vhost"
2466+ /usr/sbin/rabbitmqctl set_permissions -p "$workers_vhost" "$workers_user" ".*" ".*" ".*"
2467+ fi
2468+end script
2469+
2470+exec /usr/sbin/maas-region-celeryd --logfile=/var/log/maas/celery-region.log --schedule=/var/lib/maas/celerybeat-region-schedule --user=maas --group=maas
2471
2472=== added file 'debian/maas-region-controller-min.maas-txlongpoll.upstart'
2473--- debian/maas-region-controller-min.maas-txlongpoll.upstart 1970-01-01 00:00:00 +0000
2474+++ debian/maas-region-controller-min.maas-txlongpoll.upstart 2014-07-15 21:22:45 +0000
2475@@ -0,0 +1,27 @@
2476+# maas - txlongpoll service
2477+#
2478+# MAAS Provisioning Service txlongpoll
2479+
2480+description "MAAS txlongpoll"
2481+author "Andres Rodriguez <andres.rodriguez@canonical.com>"
2482+
2483+start on filesystem and net-device-up and rabbitmq-server-running
2484+stop on runlevel [016]
2485+
2486+respawn
2487+
2488+env longpoll_user="maas_longpoll"
2489+env longpoll_pass=""
2490+env longpoll_vhost="/maas_longpoll"
2491+
2492+pre-start script
2493+ if [ -f /usr/sbin/rabbitmqctl ] && ! /usr/sbin/rabbitmqctl list_user_permissions "$longpoll_user" 1>/dev/null 2>&1; then
2494+ longpoll_pass=`/bin/grep "password" /etc/maas/txlongpoll.yaml | cut -d'"' -f2`
2495+ /usr/sbin/rabbitmqctl add_user "$longpoll_user" "$longpoll_pass"
2496+ /usr/sbin/rabbitmqctl add_vhost "$longpoll_vhost"
2497+ /usr/sbin/rabbitmqctl set_permissions -p "$longpoll_vhost" "$longpoll_user" ".*" ".*" ".*"
2498+ fi
2499+end script
2500+
2501+# To add options to your daemon, edit the line below:
2502+exec /usr/bin/twistd -n --uid=maas --gid=maas --pidfile=/run/maas-txlongpoll.pid --logfile=/dev/null txlongpoll --config-file=/etc/maas/txlongpoll.yaml
2503
2504=== added file 'debian/maas-region-controller-min.postinst'
2505--- debian/maas-region-controller-min.postinst 1970-01-01 00:00:00 +0000
2506+++ debian/maas-region-controller-min.postinst 2014-07-15 21:22:45 +0000
2507@@ -0,0 +1,170 @@
2508+#!/bin/sh
2509+
2510+set -e
2511+
2512+. /usr/share/debconf/confmodule
2513+db_version 2.0
2514+
2515+RELEASE=`lsb_release -rs` || RELEASE=""
2516+
2517+restart_squid_deb_proxy() {
2518+ invoke-rc.d squid-deb-proxy restart || true
2519+}
2520+
2521+configure_region_http() {
2522+ case $RELEASE in
2523+ 12.04|12.10|13.04)
2524+ # handle apache configs
2525+ if [ -e /etc/maas/maas-http.conf -a \
2526+ ! -e /etc/apache2/conf.d/maas-http.conf ]; then
2527+ ln -sf /etc/maas/maas-http.conf /etc/apache2/conf.d/maas-http.conf
2528+ fi
2529+ ;;
2530+ *)
2531+ # handle apache configs
2532+ if [ -e /etc/maas/maas-http.conf -a \
2533+ ! -e /etc/apache2/conf-enabled/maas-http.conf ]; then
2534+ ln -sf /etc/maas/maas-http.conf /etc/apache2/conf-enabled/maas-http.conf
2535+ fi
2536+ ;;
2537+ esac
2538+ # enable apache modules needed
2539+ a2enmod proxy_http
2540+ a2enmod expires
2541+ a2enmod wsgi
2542+}
2543+
2544+configure_maas_default_url() {
2545+ local ipaddr="$1"
2546+
2547+ if grep -qs "^DEFAULT_MAAS_URL\ \= \"[a-zA-Z0-9:/.]\{0,\}\"$" /etc/maas/maas_local_settings.py; then
2548+ sed -i "s/^DEFAULT_MAAS_URL\ \= \"[a-zA-Z0-9:/.]\{0,\}\"$/DEFAULT_MAAS_URL = \"http:\/\/$ipaddr\/MAAS\"/" /etc/maas/maas_local_settings.py
2549+ fi
2550+}
2551+
2552+get_default_route_ip() {
2553+ while read Iface Destination Gateway Flags RefCnt Use Metric Mask MTU Window IRTT; do
2554+ [ "$Mask" = "00000000" ] && break
2555+ done < /proc/net/route
2556+ interface="$Iface"
2557+ ipaddr=$(LC_ALL=C /sbin/ip -4 addr list dev "$interface" scope global)
2558+ ipaddr=${ipaddr#* inet }
2559+ ipaddr=${ipaddr%%/*}
2560+ echo $ipaddr
2561+}
2562+
2563+configure_maas_squid_deb_proxy() {
2564+ local ipaddr="$1"
2565+
2566+ if [ -e /usr/share/maas/conf/99-maas -a \
2567+ ! -L /etc/squid-deb-proxy/mirror-dstdomain.acl.d/99-maas ]; then
2568+ ln -sf /usr/share/maas/conf/99-maas \
2569+ /etc/squid-deb-proxy/mirror-dstdomain.acl.d/99-maas
2570+ fi
2571+
2572+ sed -i "s/\(^[a-zA-Z0-9\.\-].*\) # maasurl$/$ipaddr # maasurl/" \
2573+ /usr/share/maas/conf/99-maas
2574+}
2575+
2576+# Please keep this stanza until 14.10
2577+if [ "$1" = "configure" ]; then
2578+ if dpkg --compare-versions "$2" le-nl 1.5+bzr1909-0ubuntu1 ; then
2579+ chown root:maas /etc/maas/txlongpoll.yaml
2580+ chmod 0640 /etc/maas/txlongpoll.yaml
2581+ fi
2582+fi
2583+
2584+if [ "$1" = "configure" ] && [ -z "$2" ]; then
2585+ #########################################################
2586+ ################ Folder Permissions ####################
2587+ #########################################################
2588+ mkdir -p /var/lib/maas/media/storage
2589+ chown -R maas:maas /var/lib/maas/
2590+
2591+ # Config will contain credentials, so should be readable
2592+ # by the application but nobody else.
2593+ chown root:maas \
2594+ /etc/maas/maas_local_celeryconfig.py \
2595+ /etc/maas/maas_local_settings.py \
2596+ /etc/maas/txlongpoll.yaml
2597+ chmod 0640 \
2598+ /etc/maas/maas_local_celeryconfig.py \
2599+ /etc/maas/maas_local_settings.py \
2600+ /etc/maas/txlongpoll.yaml
2601+
2602+ #########################################################
2603+ ################ Configure Apache2 ####################
2604+ #########################################################
2605+ configure_region_http
2606+
2607+ #########################################################
2608+ ########## Configure DEFAULT_MAAS_URL #################
2609+ #########################################################
2610+
2611+ # Obtain IP address of default route and change DEFAULT_MAAS_URL
2612+ # if default-maas-url has not been preseeded.
2613+ db_get maas/default-maas-url
2614+ ipaddr="$RET"
2615+ if [ -z "$RET" ]; then
2616+ ipaddr=$(get_default_route_ip)
2617+ fi
2618+ # Set the IP address of the interface with default route
2619+ if [ -n "$ipaddr" ]; then
2620+ configure_maas_default_url "$ipaddr"
2621+ configure_maas_squid_deb_proxy "$ipaddr"
2622+ db_set maas/default-maas-url "$ipaddr"
2623+ fi
2624+
2625+ #########################################################
2626+ ################ Configure Logging ####################
2627+ #########################################################
2628+
2629+ # Give appropriate permissions
2630+ if [ ! -f /var/log/maas/maas.log ]; then
2631+ touch /var/log/maas/maas.log
2632+ fi
2633+ chown -R maas:maas /var/log/maas
2634+ chmod -R 775 /var/log/maas/oops
2635+
2636+ # Create log directory base
2637+ mkdir -p /var/log/maas/rsyslog
2638+ chown -R syslog:syslog /var/log/maas/rsyslog
2639+ # Make sure rsyslog reads our config
2640+ invoke-rc.d rsyslog restart
2641+
2642+ #########################################################
2643+ ################### Squid-deb-proxy ####################
2644+ #########################################################
2645+ # Make sure squid-deb-proxy reads our config (99-maas)
2646+ restart_squid_deb_proxy
2647+
2648+elif [ -n "$DEBCONF_RECONFIGURE" ]; then
2649+ # Set the IP address of the interface with default route
2650+ db_get maas/default-maas-url
2651+ ipaddr="$RET"
2652+ if [ -n "$ipaddr" ]; then
2653+ configure_maas_default_url "$ipaddr"
2654+ configure_maas_squid_deb_proxy "$ipaddr"
2655+ fi
2656+
2657+elif [ "$1" = "configure" ] && dpkg --compare-versions "$2" gt 0.1+bzr266+dfsg-0ubuntu1; then
2658+ # If upgrading to any later package version, then upgrade db.
2659+ invoke-rc.d apache2 stop || true
2660+
2661+ # make sure maas http config is symlinked
2662+ configure_region_http
2663+
2664+ # we need to regenerate the passwords and update configs.
2665+ db_get maas/default-maas-url
2666+ ipaddr="$RET"
2667+ configure_maas_default_url "$ipaddr"
2668+ configure_maas_squid_deb_proxy "$ipaddr"
2669+fi
2670+
2671+invoke-rc.d apache2 restart || true
2672+
2673+restart_squid_deb_proxy
2674+
2675+db_stop
2676+
2677+#DEBHELPER#
2678
2679=== added file 'debian/maas-region-controller-min.postrm'
2680--- debian/maas-region-controller-min.postrm 1970-01-01 00:00:00 +0000
2681+++ debian/maas-region-controller-min.postrm 2014-07-15 21:22:45 +0000
2682@@ -0,0 +1,39 @@
2683+#!/bin/sh
2684+
2685+set -e
2686+
2687+. /usr/share/debconf/confmodule
2688+
2689+RELEASE=`lsb_release -rs` || RELEASE=""
2690+
2691+case "$1" in
2692+ purge)
2693+ rm -rf /var/log/maas
2694+ rm -rf /var/lib/maas
2695+ case $RELEASE in
2696+ 12.04|12.10|13.04)
2697+ if [ -h /etc/apache2/conf.d/maas-http.conf ]; then
2698+ rm -rf /etc/apache2/conf.d/maas-http.conf
2699+ fi
2700+ ;;
2701+ *)
2702+ if [ -h /etc/apache2/conf-enabled/maas-http.conf ]; then
2703+ rm -rf /etc/apache2/conf-enabled/maas-http.conf
2704+ fi
2705+ ;;
2706+ esac
2707+
2708+ # Restarting apache2
2709+ if [ -x /usr/sbin/invoke-rc.d ]; then
2710+ invoke-rc.d apache2 restart || true
2711+ fi
2712+
2713+ # Delete symlink
2714+ if [ -L /etc/squid-deb-proxy/mirror-dstdomain.acl.d/99-maas ]; then
2715+ rm -rf /etc/squid-deb-proxy/mirror-dstdomain.acl.d/99-maas
2716+ fi
2717+esac
2718+
2719+#DEBHELPER#
2720+
2721+db_stop
2722
2723=== added file 'debian/maas-region-controller-min.prerm'
2724--- debian/maas-region-controller-min.prerm 1970-01-01 00:00:00 +0000
2725+++ debian/maas-region-controller-min.prerm 2014-07-15 21:22:45 +0000
2726@@ -0,0 +1,9 @@
2727+#!/bin/sh
2728+
2729+set -e
2730+
2731+. /usr/share/debconf/confmodule
2732+
2733+#DEBHELPER#
2734+
2735+invoke-rc.d apache2 stop || true
2736
2737=== added file 'debian/maas-region-controller-min.templates'
2738--- debian/maas-region-controller-min.templates 1970-01-01 00:00:00 +0000
2739+++ debian/maas-region-controller-min.templates 2014-07-15 21:22:45 +0000
2740@@ -0,0 +1,22 @@
2741+Template: maas/installation-note
2742+Type: note
2743+Default: false
2744+_Description: Ubuntu MAAS Server
2745+ The Ubuntu MAAS Server has been installed in your system. You
2746+ can access the MAAS Web interface here:
2747+ .
2748+ http://${MAAS_URL}/MAAS
2749+ .
2750+ If the automatically detected address above is not in the same
2751+ network as the MAAS clients, you need to reconfigure it:
2752+ .
2753+ sudo dpkg-reconfigure maas-region-controller
2754+
2755+Template: maas/default-maas-url
2756+Type: string
2757+_Description: Ubuntu MAAS PXE/Provisioning network address:
2758+ The Ubuntu MAAS Server automatically detects the IP address
2759+ that is used for PXE and provisioning. However, it needs to be
2760+ in the same network as the clients. If the automatically
2761+ detected address is not in the same network as the clients, it
2762+ must be changed.
2763
2764=== added file 'debian/maas-region-controller.config'
2765--- debian/maas-region-controller.config 1970-01-01 00:00:00 +0000
2766+++ debian/maas-region-controller.config 2014-07-15 21:22:45 +0000
2767@@ -0,0 +1,45 @@
2768+#!/bin/sh
2769+
2770+set -e
2771+
2772+. /usr/share/debconf/confmodule
2773+db_version 2.0
2774+
2775+# creates question
2776+set_question() {
2777+ if ! db_fget "$1" seen; then
2778+ db_register dbconfig-common/dbconfig-install "$1"
2779+ db_subst "$1" ID "$1"
2780+ db_fget "$1" seen
2781+ fi
2782+ if [ "$RET" = false ]; then
2783+ db_set "$1" "$2"
2784+ db_fset "$1" seen true
2785+ fi
2786+}
2787+
2788+# source dbconfig-common shell library, and call the hook function
2789+if [ -f /usr/share/dbconfig-common/dpkg/config.pgsql ]; then
2790+ . /usr/share/dbconfig-common/dpkg/config.pgsql
2791+fi
2792+
2793+if [ "$1" = "configure" ] && [ -z "$2" ]; then
2794+ # Hide maas/dbconfig-install question by setting default.
2795+ set_question maas-region-controller/dbconfig-install true
2796+ set_question maas-region-controller/pgsql/app-pass ""
2797+
2798+ dbc_dbname="maasdb"
2799+ dbc_dbuser="maas"
2800+ dbc_remove="true"
2801+
2802+ dbc_go maas-region-controller $@
2803+
2804+elif [ -n "$DEBCONF_RECONFIGURE" ]; then
2805+ db_get maas/default-maas-url || true
2806+ if [ -z "$RET" ]; then
2807+ ipaddr=$(awk '$1 == "DEFAULT_MAAS_URL" { split($0,array,"/")} END{print array[3] }' /etc/maas/maas_local_settings.py)
2808+ db_set maas/default-maas-url "$ipaddr"
2809+ fi
2810+ db_input low maas/default-maas-url || true
2811+ db_go
2812+fi
2813
2814=== added file 'debian/maas-region-controller.postinst'
2815--- debian/maas-region-controller.postinst 1970-01-01 00:00:00 +0000
2816+++ debian/maas-region-controller.postinst 2014-07-15 21:22:45 +0000
2817@@ -0,0 +1,301 @@
2818+#!/bin/sh
2819+
2820+set -e
2821+
2822+. /usr/share/debconf/confmodule
2823+db_version 2.0
2824+
2825+if [ -f /usr/share/dbconfig-common/dpkg/postinst.pgsql ]; then
2826+ . /usr/share/dbconfig-common/dpkg/postinst.pgsql
2827+fi
2828+
2829+RELEASE=`lsb_release -rs` || RELEASE=""
2830+
2831+maas_sync_migrate_db(){
2832+ maas-region-admin syncdb --noinput
2833+ maas-region-admin migrate maasserver --noinput
2834+ maas-region-admin migrate metadataserver --noinput
2835+}
2836+
2837+restart_rabbitmq(){
2838+ invoke-rc.d rabbitmq-server restart || true
2839+}
2840+
2841+restart_postgresql(){
2842+ invoke-rc.d --force postgresql restart || true
2843+}
2844+
2845+restart_squid_deb_proxy() {
2846+ invoke-rc.d squid-deb-proxy restart || true
2847+}
2848+
2849+configure_region_http() {
2850+ case $RELEASE in
2851+ 12.04|12.10|13.04)
2852+ # handle apache configs
2853+ if [ -e /etc/maas/maas-http.conf -a \
2854+ ! -e /etc/apache2/conf.d/maas-http.conf ]; then
2855+ ln -sf /etc/maas/maas-http.conf /etc/apache2/conf.d/maas-http.conf
2856+ fi
2857+ ;;
2858+ *)
2859+ # handle apache configs
2860+ if [ -e /etc/maas/maas-http.conf -a \
2861+ ! -e /etc/apache2/conf-enabled/maas-http.conf ]; then
2862+ ln -sf /etc/maas/maas-http.conf /etc/apache2/conf-enabled/maas-http.conf
2863+ fi
2864+ ;;
2865+ esac
2866+ # enable apache modules needed
2867+ a2enmod proxy_http
2868+ a2enmod expires
2869+ a2enmod wsgi
2870+}
2871+
2872+configure_maas_txlongpoll_rabbitmq_user() {
2873+ local longpoll_user="maas_longpoll"
2874+ local longpoll_pass=
2875+ local longpoll_vhost="/maas_longpoll"
2876+ longpoll_pass="$(pwgen -s 20)"
2877+ if [ -x /usr/sbin/rabbitmqctl ]; then
2878+ if ! rabbitmqctl list_users | grep -qs "$longpoll_user"; then
2879+ rabbitmqctl add_user "$longpoll_user" "$longpoll_pass" || true
2880+ rabbitmqctl add_vhost "$longpoll_vhost" || true
2881+ rabbitmqctl set_permissions -p "$longpoll_vhost" "$longpoll_user" ".*" ".*" ".*" || true
2882+ else
2883+ rabbitmqctl change_password "$longpoll_user" "$longpoll_pass" || true
2884+ fi
2885+ fi
2886+
2887+ if grep -qs "^\ \{1,\}password: \"[a-zA-Z0-9]\{0,\}\"$" /etc/maas/txlongpoll.yaml; then
2888+ sed -i "s/^\ \{1,\}password: \"[a-zA-Z0-9]\{0,\}\"$/ password: \""$longpoll_pass"\"/" \
2889+ /etc/maas/txlongpoll.yaml
2890+ fi
2891+ if grep -qs "^RABBITMQ_PASSWORD\ \= '[a-zA-Z0-9]\{0,\}'$" /etc/maas/maas_local_settings.py; then
2892+ sed -i "s/^RABBITMQ_PASSWORD\ \= '[a-zA-Z0-9]\{0,\}'$/RABBITMQ_PASSWORD = '"$longpoll_pass"'/" \
2893+ /etc/maas/maas_local_settings.py
2894+ fi
2895+}
2896+
2897+configure_maas_workers_rabbitmq_user() {
2898+ local workers_user="maas_workers"
2899+ local workers_pass="$(pwgen -s 20)"
2900+ local workers_vhost="/maas_workers"
2901+ local amqp_host="$1"
2902+ if [ -z "$amqp_host" ]; then
2903+ amqp_host="localhost"
2904+ fi
2905+ local amqp_port="5672"
2906+ if [ -x /usr/sbin/rabbitmqctl ]; then
2907+ if ! rabbitmqctl list_users | grep -qs "$workers_user"; then
2908+ rabbitmqctl add_user "$workers_user" "$workers_pass" || true
2909+ rabbitmqctl add_vhost "$workers_vhost" || true
2910+ rabbitmqctl set_permissions -p "$workers_vhost" "$workers_user" ".*" ".*" ".*" || true
2911+ else
2912+ rabbitmqctl change_password "$workers_user" "$workers_pass" || true
2913+ fi
2914+ fi
2915+
2916+ if grep -qs "^BROKER_URL\ \= '.*'$" /etc/maas/maas_local_celeryconfig.py; then
2917+ local broker_url="amqp://$workers_user:$workers_pass@$amqp_host:$amqp_port/$workers_vhost"
2918+ sed -i "s|^BROKER_URL\ \= '.*'$|BROKER_URL = '"$broker_url"'|" \
2919+ /etc/maas/maas_local_celeryconfig.py
2920+ fi
2921+}
2922+
2923+configure_maas_database() {
2924+ local dbc_dbpass="$1"
2925+ if grep -qs "^\ \{1,\} 'PASSWORD': '[a-zA-Z0-9]\{0,\}',$" /etc/maas/maas_local_settings.py; then
2926+ sed -i "s/^\ \{1,\} 'PASSWORD': '[a-zA-Z0-9]\{0,\}',$/ 'PASSWORD': '"$dbc_dbpass"',/" \
2927+ /etc/maas/maas_local_settings.py
2928+ fi
2929+}
2930+
2931+configure_maas_default_url() {
2932+ local ipaddr="$1"
2933+
2934+ if grep -qs "^DEFAULT_MAAS_URL\ \= \"[a-zA-Z0-9:/.]\{0,\}\"$" /etc/maas/maas_local_settings.py; then
2935+ sed -i "s/^DEFAULT_MAAS_URL\ \= \"[a-zA-Z0-9:/.]\{0,\}\"$/DEFAULT_MAAS_URL = \"http:\/\/"$ipaddr"\/MAAS\"/" \
2936+ /etc/maas/maas_local_settings.py
2937+ fi
2938+}
2939+
2940+get_default_route_ip() {
2941+ while read Iface Destination Gateway Flags RefCnt Use Metric Mask MTU Window IRTT; do
2942+ [ "$Mask" = "00000000" ] && break
2943+ done < /proc/net/route
2944+ interface="$Iface"
2945+ ipaddr=$(LC_ALL=C /sbin/ip -4 addr list dev "$interface" scope global)
2946+ ipaddr=${ipaddr#* inet }
2947+ ipaddr=${ipaddr%%/*}
2948+ echo $ipaddr
2949+}
2950+
2951+configure_maas_squid_deb_proxy() {
2952+ local ipaddr="$1"
2953+
2954+ if [ -e /usr/share/maas/conf/99-maas -a \
2955+ ! -L /etc/squid-deb-proxy/mirror-dstdomain.acl.d/99-maas ]; then
2956+ ln -sf /usr/share/maas/conf/99-maas \
2957+ /etc/squid-deb-proxy/mirror-dstdomain.acl.d/99-maas
2958+ fi
2959+
2960+ sed -i "s/\(^[a-zA-Z0-9\.\-].*\) # maasurl$/$ipaddr # maasurl/" \
2961+ /usr/share/maas/conf/99-maas
2962+}
2963+
2964+if [ "$1" = "configure" ] && [ -z "$2" ]; then
2965+ #########################################################
2966+ ################ Folder Permissions ####################
2967+ #########################################################
2968+ mkdir -p /var/lib/maas/media/storage
2969+ chown -R maas:maas /var/lib/maas/
2970+
2971+ # Config will contain credentials, so should be readable
2972+ # by the application but nobody else.
2973+ chown root:maas \
2974+ /etc/maas/maas_local_celeryconfig.py \
2975+ /etc/maas/maas_local_settings.py
2976+ chmod 0640 \
2977+ /etc/maas/maas_local_celeryconfig.py \
2978+ /etc/maas/maas_local_settings.py
2979+
2980+ #########################################################
2981+ ################ Configure Apache2 ####################
2982+ #########################################################
2983+ configure_region_http
2984+
2985+ #########################################################
2986+ ########## Configure DEFAULT_MAAS_URL #################
2987+ #########################################################
2988+
2989+ # Obtain IP address of default route and change DEFAULT_MAAS_URL
2990+ # if default-maas-url has not been preseeded.
2991+ db_get maas/default-maas-url
2992+ ipaddr="$RET"
2993+ if [ -z "$RET" ]; then
2994+ ipaddr=$(get_default_route_ip)
2995+ fi
2996+ # Set the IP address of the interface with default route
2997+ if [ -n "$ipaddr" ]; then
2998+ configure_maas_default_url "$ipaddr"
2999+ configure_maas_squid_deb_proxy "$ipaddr"
3000+ db_subst maas/installation-note MAAS_URL "$ipaddr"
3001+ db_set maas/default-maas-url "$ipaddr"
3002+ fi
3003+
3004+ #########################################################
3005+ ################ Configure Logging ####################
3006+ #########################################################
3007+
3008+ # Give appropriate permissions
3009+ if [ ! -f /var/log/maas/maas.log ]; then
3010+ touch /var/log/maas/maas.log
3011+ fi
3012+ chown -R maas:maas /var/log/maas
3013+ chmod -R 775 /var/log/maas/oops
3014+
3015+ # Create log directory base
3016+ mkdir -p /var/log/maas/rsyslog
3017+ chown -R syslog:syslog /var/log/maas/rsyslog
3018+ # Make sure rsyslog reads our config
3019+ invoke-rc.d rsyslog restart
3020+
3021+ #########################################################
3022+ ################### Squid-deb-proxy ####################
3023+ #########################################################
3024+ # Make sure squid-deb-proxy reads our config (99-maas)
3025+ invoke-rc.d squid-deb-proxy restart
3026+
3027+ #########################################################
3028+ ########## Configure longpoll rabbitmq config ###########
3029+ #########################################################
3030+
3031+ # Handle longpoll/rabbitmq publishing
3032+ restart_rabbitmq
3033+ configure_maas_txlongpoll_rabbitmq_user
3034+
3035+ #########################################################
3036+ ########## Configure worker rabbitmq config ###########
3037+ #########################################################
3038+
3039+ # Handle celery/rabbitmq publishing
3040+ configure_maas_workers_rabbitmq_user "$ipaddr"
3041+
3042+ #########################################################
3043+ ################ Configure Database ###################
3044+ #########################################################
3045+
3046+ # Need to for postgresql start so it doesn't fail on the installer
3047+ restart_postgresql
3048+
3049+ # Create the database
3050+ dbc_go maas-region-controller $@
3051+ configure_maas_database "$dbc_dbpass"
3052+
3053+ # Only syncdb if we have selected to install it with dbconfig-common.
3054+ db_get maas-region-controller/dbconfig-install
3055+ if [ "$RET" = "true" ]; then
3056+ maas_sync_migrate_db
3057+ fi
3058+
3059+ # Display installation note
3060+ db_input low maas/installation-note || true
3061+ db_go
3062+
3063+elif [ -n "$DEBCONF_RECONFIGURE" ]; then
3064+ # Set the IP address of the interface with default route
3065+ db_get maas/default-maas-url
3066+ ipaddr="$RET"
3067+ if [ -n "$ipaddr" ]; then
3068+ configure_maas_default_url "$ipaddr"
3069+ configure_maas_squid_deb_proxy "$ipaddr"
3070+ configure_maas_workers_rabbitmq_user "$ipaddr"
3071+ fi
3072+ configure_maas_txlongpoll_rabbitmq_user
3073+
3074+elif [ "$1" = "configure" ] && dpkg --compare-versions "$2" gt 0.1+bzr266+dfsg-0ubuntu1; then
3075+ # If upgrading to any later package version, then upgrade db.
3076+ invoke-rc.d apache2 stop || true
3077+
3078+ # make sure postgresql is running
3079+ restart_postgresql
3080+
3081+ # make sure maas http config is symlinked
3082+ configure_region_http
3083+
3084+ # we need to regenerate the passwords and update configs.
3085+ db_get maas/default-maas-url
3086+ ipaddr="$RET"
3087+ configure_maas_default_url "$ipaddr"
3088+ configure_maas_squid_deb_proxy "$ipaddr"
3089+ # make sure rabbitmq is running
3090+ restart_rabbitmq
3091+ configure_maas_txlongpoll_rabbitmq_user
3092+ # Handle celery/rabbitmq publishing
3093+ configure_maas_workers_rabbitmq_user "$ipaddr"
3094+ # handle database upgrade
3095+ if [ -f /etc/dbconfig-common/maas-region-controller.conf ]; then
3096+ # source dbconfig-common db config for maas-region-controller
3097+ # before upgrading database, otherwise a new config is written
3098+ # but the password is no longer preserved.
3099+ . /etc/dbconfig-common/maas-region-controller.conf
3100+ else
3101+ dbc_go maas-region-controller $@
3102+ fi
3103+ configure_maas_database "$dbc_dbpass"
3104+
3105+ maas_sync_migrate_db
3106+
3107+fi
3108+
3109+invoke-rc.d apache2 restart || true
3110+
3111+restart_squid_deb_proxy
3112+
3113+invoke-rc.d maas-txlongpoll restart || true
3114+invoke-rc.d maas-region-celery restart || true
3115+
3116+db_stop
3117+
3118+#DEBHELPER#
3119
3120=== added file 'debian/maas-region-controller.postrm'
3121--- debian/maas-region-controller.postrm 1970-01-01 00:00:00 +0000
3122+++ debian/maas-region-controller.postrm 2014-07-15 21:22:45 +0000
3123@@ -0,0 +1,59 @@
3124+#!/bin/sh
3125+
3126+set -e
3127+
3128+. /usr/share/debconf/confmodule
3129+
3130+RELEASE=`lsb_release -rs` || RELEASE=""
3131+
3132+if [ -f /etc/dbconfig-common/maas.conf ]; then
3133+ if [ -f /usr/share/dbconfig-common/dpkg/postrm ]; then
3134+ . /usr/share/dbconfig-common/dpkg/postrm.pgsql
3135+ dbc_go maas-region-controller $@
3136+ fi
3137+fi
3138+
3139+case "$1" in
3140+ purge)
3141+ rm -rf /var/log/maas
3142+ rm -rf /var/lib/maas
3143+ case $RELEASE in
3144+ 12.04|12.10|13.04)
3145+ if [ -h /etc/apache2/conf.d/maas-http.conf ]; then
3146+ rm -rf /etc/apache2/conf.d/maas-http.conf
3147+ fi
3148+ ;;
3149+ *)
3150+ if [ -h /etc/apache2/conf-enabled/maas-http.conf ]; then
3151+ rm -rf /etc/apache2/conf-enabled/maas-http.conf
3152+ fi
3153+ ;;
3154+ esac
3155+
3156+ # Restarting apache2
3157+ if [ -x /usr/sbin/invoke-rc.d ]; then
3158+ invoke-rc.d apache2 restart || true
3159+ fi
3160+
3161+ # Delete symlink
3162+ if [ -L /etc/squid-deb-proxy/mirror-dstdomain.acl.d/99-maas ]; then
3163+ rm -rf /etc/squid-deb-proxy/mirror-dstdomain.acl.d/99-maas
3164+ fi
3165+
3166+ # Remove rabbitmq/longpoll/celery
3167+ longpoll_user="maas_longpoll"
3168+ longpoll_vhost="/maas_longpoll"
3169+ workers_user="maas_workers"
3170+ workers_vhost="/maas_workers"
3171+ if [ -x /usr/sbin/rabbitmqctl ]; then
3172+ rabbitmqctl delete_vhost "$longpoll_vhost" || true
3173+ rabbitmqctl delete_user "$longpoll_user" || true
3174+
3175+ rabbitmqctl delete_vhost "$workers_vhost" || true
3176+ rabbitmqctl delete_user "$workers_user" || true
3177+ fi
3178+esac
3179+
3180+#DEBHELPER#
3181+
3182+db_stop
3183
3184=== added file 'debian/maas-region-controller.prerm'
3185--- debian/maas-region-controller.prerm 1970-01-01 00:00:00 +0000
3186+++ debian/maas-region-controller.prerm 2014-07-15 21:22:45 +0000
3187@@ -0,0 +1,12 @@
3188+#!/bin/sh
3189+
3190+set -e
3191+
3192+. /usr/share/debconf/confmodule
3193+
3194+#DEBHELPER#
3195+
3196+invoke-rc.d apache2 stop || true
3197+
3198+. /usr/share/dbconfig-common/dpkg/prerm.pgsql
3199+dbc_go maas-region-controller $@
3200
3201=== added file 'debian/maintscript'
3202--- debian/maintscript 1970-01-01 00:00:00 +0000
3203+++ debian/maintscript 2014-07-15 21:22:45 +0000
3204@@ -0,0 +1,2 @@
3205+rm_conffile /etc/init/maas-celery.conf 0.1+bzr971+dfsg-0ubuntu2
3206+rm_conffile /etc/dbconfig-common/maas.conf 0.1+bzr971+dfsg-0ubuntu2
3207
3208=== added directory 'debian/patches'
3209=== added file 'debian/patches/01-fix-database-settings.patch'
3210--- debian/patches/01-fix-database-settings.patch 1970-01-01 00:00:00 +0000
3211+++ debian/patches/01-fix-database-settings.patch 2014-07-15 21:22:45 +0000
3212@@ -0,0 +1,24 @@
3213+--- maas-1.5+bzr1908.orig.orig/contrib/maas_local_settings.py 2014-02-07 11:22:59.330556956 -0500
3214++++ maas-1.5+bzr1908.orig/contrib/maas_local_settings.py 2014-02-07 11:22:59.326556956 -0500
3215+@@ -7,7 +7,7 @@
3216+ DEFAULT_MAAS_URL = "http://maas.internal.example.com/"
3217+
3218+ # Absolute path to the directory static files should be collected to.
3219+-STATIC_ROOT = '/var/lib/maas/static/'
3220++STATIC_ROOT = '/usr/share/maas/web/static/'
3221+
3222+ # Prefix to use for MAAS's urls.
3223+ # If FORCE_SCRIPT_NAME is None (the default), all the urls will start with
3224+@@ -81,9 +81,9 @@
3225+ 'default': {
3226+ # 'postgresql_psycopg2', 'postgresql', 'mysql', 'sqlite3' etc.
3227+ 'ENGINE': 'django.db.backends.postgresql_psycopg2',
3228+- 'NAME': '',
3229+- 'USER': '',
3230+- 'PASSWORD': '',
3231++ 'NAME': 'maasdb',
3232++ 'USER': 'maas',
3233++ 'PASSWORD': 'maas',
3234+ 'HOST': 'localhost',
3235+ }
3236+ }
3237
3238=== added file 'debian/patches/02-pserv-config.patch'
3239--- debian/patches/02-pserv-config.patch 1970-01-01 00:00:00 +0000
3240+++ debian/patches/02-pserv-config.patch 2014-07-15 21:22:45 +0000
3241@@ -0,0 +1,34 @@
3242+Description: Use default settings for MAAS PSERV
3243+ Use default settings for MAAS pserv. These default settings
3244+ include port, logfile, oops directory, cobbler url and username
3245+Author: Andres Rodriguez <andreserl@ubuntu.com>
3246+
3247+--- a/etc/maas/pserv.yaml
3248++++ b/etc/maas/pserv.yaml
3249+@@ -6,7 +6,7 @@
3250+ ## running server.
3251+ #
3252+ # logfile: "pserv.log"
3253+-logfile: "/dev/null"
3254++logfile: "/var/log/maas/pserv.log"
3255+
3256+ ## OOPS configuration (optional).
3257+ #
3258+@@ -15,7 +15,7 @@
3259+ # or directories other than what the oops machinery creates there.
3260+ #
3261+ # directory:
3262+- directory: "logs/oops"
3263++ directory: "/var/log/maas/oops"
3264+ # reporter:
3265+ reporter: "maas-pserv"
3266+
3267+@@ -38,8 +38,6 @@
3268+ # resource_root: /var/lib/maas/boot-resources/current/
3269+
3270+ # port: 69
3271+- port: 5244
3272+ ## The URL to be contacted to generate PXE configurations.
3273+ # generator: http://localhost/MAAS/api/1.0/pxeconfig/
3274+- generator: http://localhost:5243/api/1.0/pxeconfig/
3275+
3276
3277=== added file 'debian/patches/03-txlongpoll-config.patch'
3278--- debian/patches/03-txlongpoll-config.patch 1970-01-01 00:00:00 +0000
3279+++ debian/patches/03-txlongpoll-config.patch 2014-07-15 21:22:45 +0000
3280@@ -0,0 +1,37 @@
3281+Description: Use default settings for MAAS txlongpoll
3282+ Use default settings for MAAS txlongpoll. These default settings
3283+ include oops directory, Message broker configuration, logfile.
3284+Author: Andres Rodriguez <andreserl@ubuntu.com>
3285+
3286+--- maas-1.5+bzr1908.orig.orig/etc/txlongpoll.yaml 2014-02-07 11:21:12.578557974 -0500
3287++++ maas-1.5+bzr1908.orig/etc/txlongpoll.yaml 2014-02-07 11:21:12.578557974 -0500
3288+@@ -17,7 +17,7 @@
3289+ # or directories other than what the oops machinery creates there.
3290+ #
3291+ # directory: ""
3292+- directory: "logs/oops"
3293++ directory: "/var/log/maas/oops"
3294+ ## The reporter used when generating OOPS reports.
3295+ # reporter: "LONGPOLL"
3296+ reporter: "maas-txlongpoll"
3297+@@ -25,14 +25,14 @@
3298+ ## Message broker configuration.
3299+ #
3300+ broker:
3301+- # host: "localhost"
3302+- # port: 5672
3303+- # username: "guest"
3304+- # password: "guest"
3305+- # vhost: "/"
3306++ host: "localhost"
3307++ port: 5672
3308++ username: "maas_longpoll"
3309++ password: "maaslongpoll"
3310++ vhost: "/maas_longpoll"
3311+
3312+ ## Where to log. This log can be rotated by sending SIGUSR1 to the
3313+ ## running server.
3314+ #
3315+ # logfile: "txlongpoll.log"
3316+-logfile: "/dev/null"
3317++logfile: "/var/log/maas/txlongpoll.log"
3318
3319=== added file 'debian/patches/series'
3320--- debian/patches/series 1970-01-01 00:00:00 +0000
3321+++ debian/patches/series 2014-07-15 21:22:45 +0000
3322@@ -0,0 +1,3 @@
3323+01-fix-database-settings.patch
3324+02-pserv-config.patch
3325+03-txlongpoll-config.patch
3326
3327=== added directory 'debian/po'
3328=== added file 'debian/po/POTFILES.in'
3329--- debian/po/POTFILES.in 1970-01-01 00:00:00 +0000
3330+++ debian/po/POTFILES.in 2014-07-15 21:22:45 +0000
3331@@ -0,0 +1,2 @@
3332+[type: gettext/rfc822deb] maas-region-controller.templates
3333+[type: gettext/rfc822deb] maas-cluster-controller.templates
3334
3335=== added file 'debian/po/templates.pot'
3336--- debian/po/templates.pot 1970-01-01 00:00:00 +0000
3337+++ debian/po/templates.pot 2014-07-15 21:22:45 +0000
3338@@ -0,0 +1,82 @@
3339+# SOME DESCRIPTIVE TITLE.
3340+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
3341+# This file is distributed under the same license as the PACKAGE package.
3342+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
3343+#
3344+#, fuzzy
3345+msgid ""
3346+msgstr ""
3347+"Project-Id-Version: maas\n"
3348+"Report-Msgid-Bugs-To: maas@packages.debian.org\n"
3349+"POT-Creation-Date: 2012-10-04 13:40-0400\n"
3350+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
3351+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
3352+"Language-Team: LANGUAGE <LL@li.org>\n"
3353+"Language: \n"
3354+"MIME-Version: 1.0\n"
3355+"Content-Type: text/plain; charset=CHARSET\n"
3356+"Content-Transfer-Encoding: 8bit\n"
3357+
3358+#. Type: note
3359+#. Description
3360+#: ../maas-region-controller.templates:1001
3361+msgid "Ubuntu MAAS Server"
3362+msgstr ""
3363+
3364+#. Type: note
3365+#. Description
3366+#: ../maas-region-controller.templates:1001
3367+msgid ""
3368+"The Ubuntu MAAS Server has been installed in your system. You can access the "
3369+"MAAS Web interface here:"
3370+msgstr ""
3371+
3372+#. Type: note
3373+#. Description
3374+#: ../maas-region-controller.templates:1001
3375+msgid " http://${MAAS_URL}/MAAS"
3376+msgstr ""
3377+
3378+#. Type: note
3379+#. Description
3380+#: ../maas-region-controller.templates:1001
3381+msgid ""
3382+"If the automatically detected address above is not in the same network as "
3383+"the MAAS clients, you need to reconfigure it:"
3384+msgstr ""
3385+
3386+#. Type: note
3387+#. Description
3388+#: ../maas-region-controller.templates:1001
3389+msgid " sudo dpkg-reconfigure maas-region-controller"
3390+msgstr ""
3391+
3392+#. Type: string
3393+#. Description
3394+#: ../maas-region-controller.templates:2001
3395+msgid "Ubuntu MAAS PXE/Provisioning network address:"
3396+msgstr ""
3397+
3398+#. Type: string
3399+#. Description
3400+#: ../maas-region-controller.templates:2001
3401+msgid ""
3402+"The Ubuntu MAAS Server automatically detects the IP address that is used for "
3403+"PXE and provisioning. However, it needs to be in the same network as the "
3404+"clients. If the automatically detected address is not in the same network as "
3405+"the clients, it must be changed."
3406+msgstr ""
3407+
3408+#. Type: string
3409+#. Description
3410+#: ../maas-cluster-controller.templates:1001
3411+msgid "Ubuntu MAAS API address:"
3412+msgstr ""
3413+
3414+#. Type: string
3415+#. Description
3416+#: ../maas-cluster-controller.templates:1001
3417+msgid ""
3418+"The MAAS Cluster Controller needs to contact the MAAS server to register its "
3419+"presence. Set the URL to the MAAS API here, e.g. http://192.168.1.1/MAAS"
3420+msgstr ""
3421
3422=== added file 'debian/python-django-maas.install'
3423--- debian/python-django-maas.install 1970-01-01 00:00:00 +0000
3424+++ debian/python-django-maas.install 2014-07-15 21:22:45 +0000
3425@@ -0,0 +1,2 @@
3426+debian/tmp/usr/lib/python*/dist-packages/maasserver
3427+debian/tmp/usr/lib/python*/dist-packages/metadataserver
3428
3429=== added file 'debian/python-maas-client.install'
3430--- debian/python-maas-client.install 1970-01-01 00:00:00 +0000
3431+++ debian/python-maas-client.install 2014-07-15 21:22:45 +0000
3432@@ -0,0 +1,1 @@
3433+debian/tmp/usr/lib/python*/dist-packages/apiclient
3434
3435=== added file 'debian/python-maas-provisioningserver.install'
3436--- debian/python-maas-provisioningserver.install 1970-01-01 00:00:00 +0000
3437+++ debian/python-maas-provisioningserver.install 2014-07-15 21:22:45 +0000
3438@@ -0,0 +1,5 @@
3439+debian/tmp/usr/lib/python*/dist-packages/provisioningserver
3440+
3441+# Install other stuff
3442+debian/extras/maas-provision usr/sbin
3443+debian/extras/maas-probe-dhcp usr/sbin
3444
3445=== added file 'debian/python-maas-provisioningserver.lintian-overrides'
3446--- debian/python-maas-provisioningserver.lintian-overrides 1970-01-01 00:00:00 +0000
3447+++ debian/python-maas-provisioningserver.lintian-overrides 2014-07-15 21:22:45 +0000
3448@@ -0,0 +1,2 @@
3449+python-maas-provisioningserver: binary-without-manpage usr/sbin/maas-provision
3450+python-maas-provisioningserver: binary-without-manpage usr/sbin/maas-probe-dhcp
3451
3452=== added file 'debian/rules'
3453--- debian/rules 1970-01-01 00:00:00 +0000
3454+++ debian/rules 2014-07-15 21:22:45 +0000
3455@@ -0,0 +1,56 @@
3456+#!/usr/bin/make -f
3457+
3458+BUILDHOME = $(CURDIR)/debian/build
3459+PYTHON = $(shell pyversions -d)
3460+# Python enum modules.
3461+py_enums := $(wildcard src/*/enum.py)
3462+
3463+%:
3464+ dh $@ --with python2,apport --buildsystem=python_distutils
3465+
3466+override_dh_installinit:
3467+ dh_installinit --name maas-txlongpoll --no-start
3468+ dh_installinit --name maas-region-celery --no-start
3469+ dh_installinit --name maas-pserv
3470+ dh_installinit --name maas-cluster-celery
3471+ dh_installinit --name maas-dhcp-server
3472+
3473+override_dh_auto_build:
3474+ dh_auto_build
3475+
3476+ mkdir -p $(BUILDHOME)
3477+ HOME=$(BUILDHOME) PYTHONPATH=$(CURDIR)/src/ $(PYTHON) \
3478+ $(CURDIR)/src/maasserver/utils/jsenums.py \
3479+ $(py_enums) > $(BUILDHOME)/enums.js
3480+
3481+override_dh_auto_install:
3482+ dh_auto_install
3483+
3484+ # Move static files
3485+ install -d -m 755 $(CURDIR)/debian/tmp/usr/share/maas/web/static
3486+ mv $(CURDIR)/debian/tmp/usr/lib/python*/*-packages/maasserver/static \
3487+ $(CURDIR)/debian/tmp/usr/share/maas/web/
3488+
3489+ # Install built enums.js file.
3490+ cp $(BUILDHOME)/enums.js $(CURDIR)/debian/tmp/usr/share/maas/web/static/js/
3491+
3492+ # install the apparmor profile
3493+ install -d -m 755 $(CURDIR)/debian/tmp/etc/apparmor.d/dhcpd.d
3494+ install -m 644 $(CURDIR)/debian/maas-dhcp.apparmor \
3495+ $(CURDIR)/debian/tmp/etc/apparmor.d/dhcpd.d/maas
3496+
3497+ dh_install --list-missing
3498+
3499+override_dh_auto_clean:
3500+ dh_auto_clean
3501+ rm -rf $(BUILDHOME)
3502+ rm -rf src/*.egg-info
3503+
3504+DEB_DEBIAN_DIR=$(dir $(firstword $(MAKEFILE_LIST)))
3505+REV=$(shell dpkg-parsechangelog -l$(DEB_DEBIAN_DIR)/changelog \
3506+ | sed -rne 's,^Version: .*[+~]bzr([0-9]+).*,\1,p')
3507+VER=$(shell dpkg-parsechangelog -l$(DEB_DEBIAN_DIR)/changelog \
3508+ | sed -rne 's,^Version: ([^-]+).*,\1,p')
3509+get-orig-source:
3510+ bzr export -r $(REV) --root=maas-$(VER).orig \
3511+ maas_$(VER).orig.tar.gz lp:maas/1.5
3512
3513=== added directory 'debian/source'
3514=== added file 'debian/source/format'
3515--- debian/source/format 1970-01-01 00:00:00 +0000
3516+++ debian/source/format 2014-07-15 21:22:45 +0000
3517@@ -0,0 +1,1 @@
3518+3.0 (quilt)
3519
3520=== added file 'debian/watch'
3521--- debian/watch 1970-01-01 00:00:00 +0000
3522+++ debian/watch 2014-07-15 21:22:45 +0000
3523@@ -0,0 +1,3 @@
3524+version=3
3525+opts=dversionmangle=s/\.dfsg// \
3526+http://launchpad.net/maas/+download https://launchpad.net/maas/.*/maas-(.*).tar.*

Subscribers

People subscribed via source and target branches

to all changes: