Added odood server healthcheck command. One step to make Odood container-friendly.
Added odood server wait-pg command
Added odood server run --wait-pg option
Added odood db is-initialized command to check if database is already initialized.
Added odood db ensure-initialized command to initialize database if it is not initialized yet.
Added new options to odood addons install
--missing-only - install only addons that are not installed in specified db from the list.
--ignore-unfinished-updates - do not fail on unfinished updates
Added new options to odood addons update
--installed-only - install only addons that are not installed in specified db from the list.
--ignore-unfinished-updates - do not fail on unfinished updates
Added --tls12-compat flag to odood deploy to allow TLS 1.2 in addition
to TLS 1.3 for backward compatibility with older clients.
Added --use-system-ca-bundle flag to odood deploy to set
REQUESTS_CA_BUNDLE to the system CA certificate store. Auto-detects
the CA bundle path across Debian/Ubuntu, RHEL/CentOS/Fedora, and openSUSE.
Changed template for nginx configuration for deploy command:
Added security headers
Database manager (/web/database) is blocked by default
Bugfixes related to nginx config generation
Nginx SSL configuration now defaults to TLS 1.3 only with hardened cipher
suites (FIPS 140-2/3 compliant, no CBC/RC4/3DES). Use --tls12-compat
to enable TLS 1.2 with ECDHE forward secrecy ciphers.
Command odood db list rewritten in D (no more python / lodoo call)
Commands odood addons install and odood addons update now will
fail if there are unfinished addon updates before running command or after.
This way these commands ensures clean state of db before and after operation.
Default dockerimage’s command now waits when pg is ready before running Odoo (odood server run --wait-pg insteand of odood server run)
“No access rules” warnings are no longer treated as test errors. Models
that intentionally have no ACLs (e.g. sudo()-only technical models) will
no longer cause odood test to fail.
added support for assembly layout config (standard and flat)
added support for downloading addons from Odoo Apps
Clone/update git sources in parallel
Added assemply spec validation before sync operation
Added new option --dockerfile that allows to automatically generate Dockerfile for assembly on sync.
Thus we have the way to build standard images for assemblies.
Added ability to pull all repositories via command odood repo pull-all.
This could be helpfull during development to pull all repos on instance.
Added command odood pre-commit update that could be used to update pre-commit dependencies (in pre-commit config).
Just an alias for standard pre-commit autoupdate that is run inside correct repo dir and within correct venv.
--start - automatically start server if upgrade is successful and server was not running before upgrade.
Added new option odood assembly --assembly-path that could be used to specify different assembly path for assembly commands.
Mostly, this option could be useful for CI
Added option --start to addons install/update/uninstall command to automatically start server if it was stopped.
Added automatic generation of changelogs on assembly sync if option --changelog specified.
If enabled, then Odood will automatically generate VERSION file for assembly repo. It could be used later to track versions of assemblies.
local-nginx-ssl to enable SSL configuration for local nginx
local-nginx-ssl-key choose path to ssl key for the server
local-nginx-ssl-cert choose paht to ssl certificate for the server
Git sources in assembly spec now supports shortucts github and oca that allows to simplify configuration of git sources
During assembly sync, Odood can automatically apply acccess credentials from env variables:
For named sources ODOOD_ASSEMBLY_repo_name_CRED
Added support for access groups (access-group for sources in odood-assembly.yml), this way it is possible to use same token for multiple repos.
The name is ODOOD_ASSEMBLY_access_group_CRED
The format of ODOOD_ASSEMBLY_<group/repo>_CRED variable is username:password
During assembly upgrade, check for unfinished install/upgrade and print waring if there are any unfinished install/upgrade/uninstall
Added new option assembly-repo for odood deploy command, that allows to automatically configure deployed instance to use specified assembly.
Addd new command odood repo migrate-addons that uses under the hood OCA’s utility odoo-module-migrator to migrate source code of modules to project’s serie from older odoo series.
New command odood db populate that allows to populate database with test data
New options to odood test command (--populate-model and --populate-size)
that could be used to populate database with test data before running tests.
Especially, this could be useful for migration tests
New command odood assembly that could be used to manage Odoo instance in assembly style,
when all addons used on instance are placed in single repo.
Added new flag --assembly to odood addons list/update/install/uninstall commands
New command odood translations regenerate that allows to regenerate translations for modules.
Could be useful to automatically or semiautomatically generate .po and .pot files for modules.
Also, this command available as shortcut odood tr regenerate.
New flag --no-install-addons added to odood test.
It could be used to speed up running tests on localc machine on same db.
Breaking Changed approach to docker images. No more custom entry point.
Just single option (on application level), that allows to update Odoo configuration from environment variables.
Default command uses this option. but custom commands will need to use this option.
Currently, this requires explicit specification of this command on Odood runs.
This may be changed in future.
Breaking Do not use separate config file for tests on deployments (Odoo installations installed via odood deploy command)
odood script py command: now output of script will be redirected on stdout.
Thus no more need to wait while script completed to get intermediate output of script.
Added new command entrypoint that is available only in version for docker images,
that is used as entrypoint for docker container and that is responsible for applying
configuration from environment variables to Odoo configuration file before
any further action.
Added new command odood odoo recompute that allows to recompute computed fields for specified model in specified database.
Pre-commit related commands moved to pre-commit subcommand.
Thus, following commands now available to work with pre-commit:
odood pre-commit init
odood pre-commit set-up
odood pre-commit run
Change command odood server run. Command uses execv to run Odoo,
thus, Odoo process will replace Odood process. Thus, option --detach
is not available here. If you want to start Odoo in background, then
odood server start command exists. Instead, this command (odood server run)
is designed to run Odoo with provided args in same way as you run Odoo binary directly.
For example, following command
odood server run -- -d my_database --install=crm --stop-after-init,
that will install crm module, will be translated to odoo -d my_database --install=crm --stop-after-init,
that will be ran inside virtualenv of current Odood project.
Added new option --ignore-running that allows to ignore server running.
Removed option --detach as it does not have sense. Use odood server start instead.
Changed generation of default test db name.
Before it was: odood<serie>-odood-test
Now it will be: <db_user>-odood-test
Installation of dependencies from manifest is now optional.
It is frequent case, when authors of module place incorrect dependencies
in manifest, thus installation of addon may fail.
Fix error when running addons install/update/uninstall with non-existing
logfile. This was caused by attempt to determine starting point of logfile
to search for errors happened during operation.
Now this case is handled correctly.
Added new options --skip and --skip-re to odood test command,
that allow to not run tests for specified addons.
Useful in cases, when there is need to skip some addons
found via options --dir and --dir-r
Added new options --skip and --skip-re to odood addons install/update/uninstall commands.
Useful in cases, when there is need to skip some addons
found via options --dir and --dir-r
Added new option --skip-errors to odood addons install/update/uninstall commands, that allows
to not fail when installing addons in database,
thus allowing to install addons to other databases, and fail in the end.
Added new option --install-type to odood init and odood venv reinstall-odoo commands,
thus, now it is possible to install Odoo as git repo or as unpacked archive depending on this option
Command odood addons generate-py-requirements that allows to generate
requirements txt files for specified modules.
Added new option --tdb to odood db create command,
that allows to use automatically generated default name for tests database.
Added new command odood db list-installed-addons.
This command could be used to print to stdout or
file list of addons installed on specific databases.
Command odood venv reinstall-odoo now backups old odoo by default.
But it is possible to disable backup with option --no-backup
Now it is allowed to specify only name of backup to restore database from.
In this case, Odood will try to find corresponding backup in standard
backups directory of project.
New option --all to odood db backup command, that allows to backup
all databases within single command.
New command info that will display info about project,
optionally in JSON fromat.
New option --file to odood addons install and odood addons update
commands. This option allows to get list of addons to install / update
from provided file. This way, it is possible to avoid specifying list of
addons manually.
New option --install-file to odood db create command, that
will automatically install modules from specified files.
New option --coverage-ignore-errors to odood test command, that allows
to ignore coverage errors, that a frequent case during migration tests
(because files available on start may disapear during migration).
New option --recreate to db restore command, thus it is possible
to automatically drop database before restoration if needed.
Added flag --backup to venv update-odoo command.
Added new command odood venv reinstall-odoo, that could be used to
reinstall odoo to different version in same venv.
This could be used for migrations to avoid the need to setup new machine
for migrated instance.
Command odood db backup: when --dest option supplied and
it is existing directory, then database will be backed up in this directory
with automatically generated name of backup.
Automatically supply --ignore-errors to coverage when running migration
tests
odood test command: show error report by default, but add option to
disable it.
Clone repos recursively optionally. Before this change,
command odood repo add was clonning repositories recursively
(parse odoo_requirements.txt file in clonned repo and clone dependencies
mentioned there). After this change, recursive add repo is optional,
end could be enable by option odood repo add --recursive ...
odoo test with option --isw will additionally ignore following warning:
unknown parameter 'tracking'