DINAR Is Not A Runbot.
DINAR helps you to configure Github Actions to maintain Odoo addons.
- deploy common files (e.g. pre-comming config)
- run checks in pull requests
- preview pull requests
- port modules to next Odoo version
-
Fork DINAR
-
BOT_TOKEN
-- github token with push access to the reposBOT_NAME
-- Optional. DefaultGithub Actions
BOT_EMAIL
-- Optional. Defaultactions@github.com
-
Make
config.yml
file to list repositories and set other settings. Seeconfig.example.yml
for details. -
Check Actions tab in the fork
-
In your repositories: set secrets:
DINAR_TOKEN
-- with accesswrite:packages
,read:packages
-
In your repositories: send new PR or rebase existing one
-
.github/workflows/
:DINAR2fork.yml
-- checks for updates in DINAR and makes PR to your forkfork2repos.yml
-- Github Workflow to install forked DINAR to your repositories
-
static-files/
-- copy and push to a repo with overwriting. Mandatory files to make the system work.all/
-- files for any version10.0/
,11.0/
, etc -- version specific files
-
editable-files/
-- copy and push to a repo without overwriting. The files can be modified per repository. -
embedded-files/
-- copy to a repo without overwriting. The files used on generating Docker images and normally shall not be modified per repository. -
workflow-files/
-- scripts that can be used from workflows without coping. -
local-files/
-- files to download to maintainer's machine to work with the dockers locally
DINAR builds and push docker images to Github Packages. It works
only for stable branches (e.g.
12.0
) and branches marked with -dev-
code (e.g.
12.0-dev-some-new-feature
). Examples of docker images for 12.0 branch of
repo-name
repository:
-
dinar-odoo-repo-name:12.0-base
- base odoo image with dependencies: installs packages and fetches repositories. It uses settings from.DINAR/image/
. -
Odoo and postgres images with preinstalled modules specified in manifest's
depends
attribute plus modules listed inaddons.include
attribute of.DINAR/config.yaml
.dinar-odoo-repo-name:12.0
,dinar-db-repo-name:12.0
-- modules are installed with demo datadinar-odoo-repo-name:12.0-nodemo
,dinar-db-repo-name:12.0-nodemo
-- modules are installed without demo data