Work in progress
This page contains steps to be performed for packaging different components and addons, of OpenG2P and similar, into a docker image.
Clone the https://github.com/OpenG2P/openg2p-packaging and go to packaging directory
Create text file, example my-package.txt
. This signifies a package. This file should include all openg2p modules (repositories) to be packaged into a new docker. Each line describes one repository to include, and the structure of each line looks like this.
Any underscore in the repository name will be converted to hyphen during installation. For example:
This is internally converted to repo-name
.
The above configuration can be made via environment variables also.
Any variable with the prefix G2P_PACKAGE_my_package_
will be considered as repository to install i.e., G2P_PACKAGE_<package_name>_<repo_name>
. For example;
These env variables can be added in .env
file (in the same folder). The .env
file will automatically be considered.
If same package is available in my-package.txt
, .env
and environment variable, then this will be the preference order in which they are considered (highest to lowest).
.env
file
Environment variable.
my-package.txt
Use the .env
to overload packages from my-package.txt
Run the following to download all packages:
After downloading packages, run the following to build docker image:
Then push the image.
Notes:
The above uses bitnami's odoo image as base.
This script also pulls in any OCA dependencies configured, in oca_dependencies.txt
inside each package. Use this env variable to change the version of OCA dependencies to be pulled, OCA_DEPENDENCY_VERSION
(defaults to 15.0
).
This also installs any python requirements configured in requirements.txt
inside each package.
Reference packages can be found in packages directory inside packaging directory.