ps.bob
provides several mr.bob template to generate packages for Propertyshelf projects.
To create a package like ps.diazo.example
:
$ mrbob ps.bob:plone_theme
Note
In contrast to other available mr.bob
templates (e.g. bobtemplates.plone), the packages created with ps.bob
create the package folder as well.
The templates provided by ps.bob
are categorized as follows:
- Plone and Diazo Packages
- Zope Packages (planned)
- Pyramid Packages (planned)
- MLS Packages (planned)
- plone_theme
- A installable diazo theme for Plone.
On creating a package you can choose from the following options. The default value is in [square brackets].
- Name of the Theme [Example Theme]
- Should be something like 'Example Theme'.
- Package Name of the Theme [example]
- Should be something like 'example'.
Package created with ps.bob
use the current best-practices when creating an addon.
- Buildout
- The packages are contained in a buildout that allow you to build Plone with the new package installed for testing-purposes.
- Locales
- The packages register a directory for locales.
- Profile
- The packages contain a Generic Setup Profile that installs a browserlayer.
- Setuphandler
- The packages contain a setuphandlers.py where you can add code that is executed on installing the package.
- Template-Overrides
- The packages register the folder
template_overrides
as a directory where you can drop template-overrides using z3c.jbot. - Tests
- The packages come with a test setup and some tests for installing the package. They also contain a robot-test for browser testing. The buildouts also contains a config to allow testing the package on travis.
Addons created with ps.bob
are tested to work in Plone 4.3.x.
They should also work with other versions but that was not tested.
[buildout] parts += mrbob [mrbob] recipe = zc.recipe.egg eggs = mr.bob ps.bob
If you want to use the latest development version from GitHub, add ps.bob
to your mr.developer
source section:
[buildout] extensions += mr.developer [sources] ps.bob = git git://github.com/propertyshelf/ps.bob.git
This creates a mrbob-executeable in your bin-directory.
Call it from the src
-directory of your project like this.:
$ ../bin/mrbob ps.bob:plone_theme
You can also install ps.bob
in a virtualenv.:
$ pip install ps.bob
You can also install the latest version of ps.bob
directly from GitHub:
$ pip install -e git://github.com/propertyshelf/ps.bob.git#egg=ps.bob
Now you can use it like this:
$ mrbob ps.bob:plone_theme