1.4. Installing cubes#
1.4.1. Installing the code#
1.4.1.1. Using Pip#
Cubes are written in python so most of then are
distributing with pip
.
The naming convention for cubes pip packages is
cubicweb_<CUBE_NAME>
.
So if you want to install the api
cube,
you need to run the command
pip install cubicweb_api
1.4.1.2. Using Sources#
If the cube is not distributed with pip, you can download the sources on your machine and install it manually.
If you are using venv, make sure your shell is using the one for your CubicWeb application.
Open a shell in the cubeâs source files and run
pip install
.
This will install the cube in the venv of you application.
If you want to make changes on the cube and see
those changes on your main CubicWeb application,
run pip install -e .
instead.
1.4.2. Adding the dependency#
Once you have installed the cubeâs code in your application, you need to declare the dependency.
Open the file __pkginfo__.py
in you main CubicWeb application
and add your cube with the required version in the __depends__
.
The naming convention here for the cube name is
cubicweb-<CUBE_NAME>
. Notice the use of - instead of _ in pip
.
For example, if you want to install the api cube version 0.9.0, you would write
1.4.3. Installing on existing instance#
If your CubicWeb application has already an instance running, you need to manually add the cube and run a migration.
To do so, run the following commands (replacing <YOUR_INSTANCE> with your instance name):
Open a shell using cubicweb-ctl shell <YOUR_INSTANCE>
.
In that shell type add_cube(api)
, then exit()
to leave the shell.
And finally upgrade your instance:
cubicweb-ctl upgrade <YOUR_INSTANCE>
More information on migration here