(this turned out to be a longer email than expected but please read to the end as I am proposing some changes based on a problem I can see right now)
On Thursday 20 September 2012 09:13:44 Andres Rodriguez wrote: > Hi Julian, > > > So, what I am proposing is to properly put DHCP-specific files into the > > maas- dhcp package and make maas depend on maas-dhcp (rather than the > > other way around). > > maas Recommends maas-dhcp as it is not required to be installed because > we can still use external DNS/DHCP. However, it does get installed by > default. Right. One thing that's really bothering me is our special-cased "master" DHCP which only exists to deal with the previous case of everything being installed a-la Cobbler on a single machine. This causes some friction at installation time because at the moment maas-dhcp will call "maas config_master_dhcp" which we don't want to happen for clusters. I am thinking that we change this around a little when we start the upstream work on task routing so that we have a celery worker for maas-dns and a separate one for maas-dhcp. This would remove the concept of a "master" DHCP entirely and let us have a totally generic cluster-controller that you can install on the master or anywhere else. This would obviate the need for the maas-dhcp package and require the user to set up DHCP details in the UI or API. The only fly in this ointment is how to migrate from 12.04 installations. Thoughts? > Now, given that maas installs maas-provision, that's the reason why > maas-dhcp depends on maas. I don't understand why this relationship is done like that. :( > > Does this sound OK? If so, can you give me some hints please as I am not > > a > > seasoned packager :) > > Now, in order to get the cluster-controller, region-controller etc, we > need to make several packaging changes. After talking to Raphael, I > think a good start would be: > > * maas > - Depends: python-django-maas, python-maas-provisioningserver, > maas-region-controller, maas-cluster-controller > * python-django-maas > - Installs: src/maasserver, src/metadataserver > * python-maas-provisioningserver > - Installs: src/provisioningserver > * maas-region-controller: > - Installs: maas-txlongpoll upstart job, installs DB, installs > apache2, etc. > - Depends: python-django-maas, python-maas-provisioningserver > * maas-cluster-controller > - Installs: maas-pserv, maas-celery upstart job > - Depends: python-maas-provisioningserver > > Now, I think it would be a good idea to create a different packaging > branch, such as: lp:~maas-maintainers/maas/packaging.cluster, which is > stacked on top of lp:~maas-maintainers/maas/packaging, so others can > work on it and we can also benefit from fixes that hit the packaging > branch. I don't think another branch is a good idea, it will be a lot more work to maintain it. Stacking is just a storage optimisation, not a magic way to propagate changes to dependent branches. So, given my comments above, here's my proposed packaging setup: ========= Remove maas-dhcp. maas Depends: python-django-maas, maas-region-controller Recommends: maas-dns Suggests: maas-cluster-controller python-django-maas Installs: src/maasserver, src/metadataserver python-maas-provisioningserver Installs: src/provisioningserver maas-region-controller Depends: python-django-maas, python-maas-provisioningserver Installs: maas-txlongpoll upstart job, installs DB, apache2, etc. maas-cluster-controller Depends: python-maas-provisioningserver, isc-dhcp-server Installs: maas-pserv, maas-celery upstart job (enlistment wrapper) maas-cli Installs: src/apiclient ========== Thoughts? Cheers J -- Mailing list: https://launchpad.net/~maas-devel Post to : [email protected] Unsubscribe : https://launchpad.net/~maas-devel More help : https://help.launchpad.net/ListHelp

