bobtemplates.migration
provides mr.bob templates to generate migration-related packages for Plone projects.
Packages created with bobtemplates.migration
use the current best-practices when creating an add-on. It also supports GIT by default, to keep track of changes one is doing with the package.
Currently, only a jsonify template is available. This will create a Transmogrifier migration that will work with a collective.jsonify export out of the box.
Pull requests are welcome if you would like a template that will work with other file types. Examples would be CSV or a Wordpress export.
Add-ons created with bobtemplates.migration
are tested to work in Plone 5.1 and 5.2.
They should also work with older versions but that was not tested (if you are using this to
migrate to a new Plone site, you should be using the latest version of Plone and Python 3).
It should work on Linux, Mac and Windows.
In the buildout this template creates, there are configs for both Plone 5.1 and 5.2. By default, buildout.cfg points to plone52.cfg. For use with Python 3 (recommended), you may also need to uncomment the [sources] section to checkout the unreleased Python 3 fixes for the Transmogrifier add-ons.
To get started with Transmogrifier, visit the training at https://training.plone.org/5/transmogrifier
For easy usage of mr.bob see: plonecli
You can install bobtemplates.migration as every other normal Python package with pip inside a virtualenv or better with pipenv.
pipenv install bobtemplates.migration
You can also install bobtemplates.migration
with pip in a virtualenv.
If you don't have an active virtualenv, you can create one inside your project directory.
virtualenv .
Then either activate the virtualenv:
source ./bin/activate
or just use the binaries directly inside the bin folder as below:
./bin/pip install bobtemplates.migration
[buildout]
parts += mrbob
[mrbob]
recipe = zc.recipe.egg
eggs =
mr.bob
bobtemplates.migration
This creates a mrbob-executable in your bin-directory.
As bobtemplates.migration is a template for mr.bob, we use mrbob to run the templates.
If you are using buildout or an unactivated virtualenv, you can use mrbob like this:
./bin/mrbob bobtemplates.migration:jsonify -O src/collective.foo
If you are using pipenv or an activated virtualenv, you can use mrbob like this:
Activate pipenv shell:
pipenv shell
or activate your virtualenv:
source bin/activate
mrbob bobtemplates.migration:jsonify -O src/collective.foo
This will create your Plone package inside the src
directory.
See the documentation of mr.bob for further information.
You can set all mr.bob configuration parameters in your ~/.mrbob file.
Here is an example:
[mr.bob]
verbose = False
[variables]
author.name = Maik Derstappen
author.email = [email protected]
author.github.user = MrTango
plone.version = 5.1.4
#package.git.init = y
#package.git.autocommit = n
#package.git.disabled = n
- Issue Tracker: https://github.com/collective/bobtemplates.migration/issues
- Source Code: https://github.com/collective/bobtemplates.migration
- Documentation: https://training.plone.org/5/transmogrifier