Gavin Panella has proposed merging lp:~allenap/maas/hack-hacking into lp:maas.
Requested reviews: Launchpad code reviewers (launchpad-reviewers) For more details, see: https://code.launchpad.net/~allenap/maas/hack-hacking/+merge/120523 -- https://code.launchpad.net/~allenap/maas/hack-hacking/+merge/120523 Your team Launchpad code reviewers is requested to review the proposed merge of lp:~allenap/maas/hack-hacking into lp:maas.
=== modified file 'HACKING.txt' --- HACKING.txt 2012-08-20 06:48:33 +0000 +++ HACKING.txt 2012-08-21 09:49:38 +0000 @@ -26,33 +26,44 @@ Prerequisites ============= -MAAS depends on Postgres 9.1, RabbitMQ, Apache 2, python-dev, avahi-daemon, -daemontools, pyinotify, and many other packages. To install everything that's +You can grab MAAS's code manually from Launchpad but Bazaar_ makes it +easy to fetch the last version of the code. First of all, install +Bazaar:: + + $ sudo apt-get install bzr + +.. _Bazaar: http://bazaar.canonical.com/ + +Then go into the directory where you want the code to reside and run:: + + $ bzr branch lp:maas maas && cd maas + +MAAS depends on Postgres 9.1, RabbitMQ, Apache 2, Avahi, daemontools, +pyinotify, and many other packages. To install everything that's needed for running and developing MAAS, run:: $ make install-dependencies -Careful: this will "apt-get install" many packages on your system, under -"sudo." It may prompt you for your password. - -You may need to install python-django-piston as well, but installing it seems -to cause import errors for "oauth" when running the test suite. - -And for convenience, you may also want bzr which we use for development:: - - $ sudo apt-get install bzr - -All other development dependencies are pulled automatically from `PyPI`_ -when buildout runs. +Careful: this will ``apt-get install`` many packages on your system, +via ``sudo``. It may prompt you for your password. + +This will install ``bind9``. As a result you will have an extra daemon +running. If you are a developer and don't intend to run BIND locally, +you can disable the daemon by inserting ``exit 1`` at the top of +``/etc/default/bind9``. The package still needs to be installed for +tests though. + +You may also need to install ``python-django-piston``, but installing +it seems to cause import errors for ``oauth`` when running the test +suite. + +All other development dependencies are pulled automatically from +`PyPI`_ when ``buildout`` runs. See ``First time using buildout`_ and +`Running tests`_. .. _PyPI: http://pypi.python.org/ -After installing bind9, you will have an extra daemon running. If you are a -developer and don't intend to run BIND locally, you can disable the daemon -by inserting ``exit 1`` at the top of ``/etc/default/bind9``. The package -still needs to be installed for tests though. - First time using buildout? ========================== @@ -74,16 +85,6 @@ The ``eggs`` directory will be created automatically. -Getting the latest version of the code -====================================== - -You can grab the code manually from Launchpad but Bazaar makes it easy to fetch -the last version of the code. Go into the directory where you want the code -to reside and run:: - - $ bzr branch lp:maas maas && cd maas - - Running tests ============= @@ -347,12 +348,12 @@ Adding new dependencies ======================= -Since MAAS is distributed mainly as Ubuntu package, all runtime dependencies -should be packaged and we should develop with the packaged version if -possible. You'll need to add the dependency to the -``allowed-eggs-from-site-packages`` option in the ``buildout.cfg`` file. You -also need to add it to setup.py (And don't forget to add the version to -``versions.cfg`` as we run with ``allowed-picked-version`` set to false.) +Since MAAS is distributed mainly as an Ubuntu package, all runtime +dependencies should be packaged, and we should develop with the +packaged version if possible. All dependencies, from a package or not, +need to be added to ``setup.py`` and ``buildout.cfg``, and the version +specified in ``versions.cfg`` (``allowed-picked-version`` is disabled, +hence ``buildout`` must be given precise version information). If it is a development-only dependency (i.e. only needed for the test suite, or for developers' convenience), simply running ``buildout`` like this will make @@ -445,28 +446,3 @@ .. _convention for headings as used in the Python documentation: http://sphinx.pocoo.org/rest.html#sections - - -Acceptance tests -================ - -MAAS uses `Checkbox`_ to verify features are implemented according to -the spec. They can be found in the `official checkbox repository`_, in -the ``jobs/`` directory. - -.. _Checkbox: https://wiki.ubuntu.com/Testing/Automation/Checkbox - -.. _official checkbox repository: - https://code.launchpad.net/~nskaggs/checkbox/checkbox-app-testing-qt - -You need to install additional QT dependencies:: - - $ sudo apt-get install libqt4-dev qt4-qmake - -Get a copy of the checkbox repository:: - - $ bzr branch lp:~nskaggs/checkbox/checkbox-app-testing-qt - -To run them, move into the branch directory and run:: - - $ bin/checbox-app-testing --whitelist-file=
_______________________________________________ Mailing list: https://launchpad.net/~launchpad-reviewers Post to : [email protected] Unsubscribe : https://launchpad.net/~launchpad-reviewers More help : https://help.launchpad.net/ListHelp

