Make your Odoo scripts sing.
Project description
Anthem is a tool to help scripting Odoo instances for automated setup, upgrades, testing and more.
It should be an alternative to the other tools like oerpscenario.
Make your own songs
Writing your songs is as easy as creating a Python Package. The songs functions called by anthem must have a positional ctx argument.
## songs/install.py def setup_company(ctx): """ Setup company """ company = ctx.env.ref('base.main_company') company.name = 'My Company' def main(ctx): setup_company(ctx)
Execute your songs
Use the command line anthem. Provided your songs and openerp are in the PYTHONPATH:
anthem songs.install::main -c path/to/openerp.cfg
Anthem will execute the function main of the module songs.install with a ctx initialized with an Odoo env.
Instead of using -c for the command line, you can export the environment variable OPENERP_SERVER with the path of the configuration file.
export OPENERP_SERVER=path/to/openerp.cfg anthem songs.install::main
In order to have openerp in the PYTHONPATH, you might install it as a package with pip install -e or directly modify the PYTHONPATH.
In order to have your songs in the PYTHONPATH, the better is to make a Python package out of them.
Run the tests
To run anthem’s tests, it is a good idea to to an editable install of it in a virtualenv, and then intall and run pytest as follows:
% git clone https://github.com/camptocamp/anthem.git Cloning into 'anthem'... % cd anthem % python2 -m virtualenv env % source env/bin/activate % pip install -e . % pip install pytest % py.test
Release History
Unreleased
Features
Bugfixes
Improvements
Documentation
Build
0.3.0 (2016-07-26)
Features
Add –quiet mode
Fixes
Encode the logged strings to the default encoding or utf8
Allow to use Ctrl-c to stop anthem.
Set openerp’s loglevel to ERROR, its logs clutter anthem’s own outputs
0.2.0 (2016-07-22)
Features
Ability to log descriptions and timings in songs with the context manager Context.log and the decorator anthem.log.
from anthem import log @log def setup_company(ctx): """ Setup company """ # do stuff with ctx.log('other stuff'): # do other stuff @log def load_data(ctx): """ Load data """ # load @log def main(ctx): setup_company(ctx) load_data(ctx)
If we run anthem on main, we will get:
running... main running... Setup company running... other stuff other stuff: 0.850s Setup company: 1.100s running... Load data Load data: 2.900s main: 4.000s
0.1.3 (2016-07-07)
Fixes
Correct lyric to create or update a record
0.1.2 (2016-07-07)
Add a lyric to create a xmlid
Add a lyric to create or update a record
0.1.1 (2016-06-23)
Fixed crash on non-editable install.
0.1.0 (2016-06-23)
Initial release.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file anthem-0.3.0.tar.gz
.
File metadata
- Download URL: anthem-0.3.0.tar.gz
- Upload date:
- Size: 8.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 3ef15a1b74b27d9d8b998d8e2f9f63468ecd5e92c1fb0fdb41a17e0c8aaac6e8 |
|
MD5 | d7c42ebbd4f550fde0a236251e83b698 |
|
BLAKE2b-256 | 77c095bfbb0aeeeb2aaee29c2dca00da66f8b8675a49a658694a37c62fc4556f |
File details
Details for the file anthem-0.3.0-py2-none-any.whl
.
File metadata
- Download URL: anthem-0.3.0-py2-none-any.whl
- Upload date:
- Size: 10.3 kB
- Tags: Python 2
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | f42391178ec4e7a85bcf71a405e619c059dfb4721bd08601e00f5069d476c494 |
|
MD5 | f0628e21189cde696e065e20310951fc |
|
BLAKE2b-256 | d96995de3e8e06a175164be1e6c5315bcc573e9b690434644ad1746914040b5f |