Server Environment Autocreate

Add ability to auto create records

Technical Name:
server_environment_autocreate
Version:
17.0
License:
Author:
XCG Consulting
https://odoo-community.org/web/image/product.template/716596/image_1920?unique=d0f6141
  • Odoo Version

Read the rules established to regulate the OCA (Bylaws )

Odoo Community Association

Server Environment Autocreate

Beta License: LGPL-3 OCA/server-env Translate me on Weblate Try me on Runboat

This module adds a way to create automaticaly records using server_environment server.env.mixin.

Table of contents

Use Cases / Context

Modules that uses server_environment server.env.mixin need to be created manually in the database. This module avoid that needs by adding a way to autocreate records.

Configuration

This module does not need any configuration in Odoo.

The configuration is made in either server_environment_files, the environment variable or the configuration file as described in server_environment.

On top of the fields available when defining a record inheriting server.env.mixin, it is possible to add __autocreate = {}. The value is a dictionary that will be passed when the record is created. This allows setting required field values that are not made available. The values are only used once, when the object is created. Changes are not used.

To continue the example provided by server_environment, to have this module create the record for storage_backend.my_sftp, the file would look like:

# These variables are not odoo standard variables,
# they are there to represent what your file could look like
export WORKERS='8'
export MAX_CRON_THREADS='1'
export LOG_LEVEL=info
export LOG_HANDLER=":INFO"
export DB_MAXCONN=5

# server environment options
export SERVER_ENV_CONFIG="
[storage_backend.my_sftp]
__autocreate={}
sftp_server=10.10.10.10
sftp_login=foo
sftp_port=22200
directory_path=Odoo
"

Another example, using a value in the creation dictionnary, when using fs_storage module, the name of the storage is required so the configuration would look like:

[fs_storage.my_sftp]
__autocreate = {"name": "My SFTP"}
protocol=sftp
options={"host": "10.10.10.10", "username": "foo", "password": "xxxxxxxxx"}

When the module creates such a record, it will add an xml id in the form __server_environment_autocreate__.<section name with space replaced by ->.

When the module is removed, the created record are kept. They can be found by searching the xmlid for the pseudo module __server_environment_autocreate__.

If the creation fails with an exception, or if the values dictionary is incorrect, this will prevent the loading of the registry. This is intended, so that odoo does not start without the intended configuration.

Usage

This module does not impact the user interface.

Known issues / Roadmap

  • This module does not guarantee that any model record can be created, extra steps might be needed.
  • If a created record is not referenced in the configuration anymore, it is not removed.

Bug Tracker

Bugs are tracked on GitHub Issues. In case of trouble, please check there if your issue has already been reported. If you spotted it first, help us to smash it by providing a detailed and welcomed feedback.

Do not contact contributors directly about support or help with technical issues.

Credits

Authors

  • XCG Consulting

Contributors

Maintainers

This module is maintained by the OCA.

Odoo Community Association

OCA, or the Odoo Community Association, is a nonprofit organization whose mission is to support the collaborative development of Odoo features and promote its widespread use.

This module is part of the OCA/server-env project on GitHub.

You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.

This is a preview of the recently viewed products by the user.
Once the user has seen at least one product this snippet will be visible.

Recently viewed Products