Skip to main content
Version: 8.6.x

Data Population Container

The Self-Managed Commerce Data Population tool is used to either create a new Commerce database or to update an existing Commerce database. For more information about the tool, see Data Population Overview.

The Data Population tool is run as a job; it starts, performs the required work and runs to completion then exits.

Prerequisites​

The data-pop-tool container image must be built and available. For information on building container images, see Building Container Images.

Usage​

The key configuration options for this job are:

  1. Which command to run, as specified by environment variable EP_DATA_POP_TOOL_CMD. The update-db command will determine and apply only the delta of changes, while the reset-db command will start from a clean database and apply all of the changes. The reset-db command is destructive and will first erase the database and any data contained within.
  2. Which data-set to apply to a given database, as specified by environment variable EP_COMMERCE_ENVNAME. The valid options are the names of the folders under extensions/database/ext-data/src/main/resources/environments in your team's ep-commerce Git project. Your Commerce development team can confirm the correct value to use.
  3. The database to apply the changes to, as specified by the environment variables named like EP_DB_*
  4. Whether files from a separate, secure encrypted Git repository should be applied, as specified by optional environment variables named like ``EP_COMMERCE_CONFIG_*`.

Egresses​

The table below describes the egress requirements for this service.

EndpointPurposeComment
Commerce JDBC endpointCommerce databaseThis service must be able to access the Commerce database.
Git ServiceOptional: inject config at start-upThe service can optionally be configured to inject config files from a secured Git project at startup time. If that is configured then the container must be able to connect to the Git project specified in environment variable EP_COMMERCE_CONFIG_REPO. For more information about secure configuration, see Injecting Commerce Configuration at Startup.

Scaling and Replicas​

The tool is run as a job and not as a service. To avoid possible data conflicts and corruption, ensure that only one instance of the container is run against a given Commerce database at a given time.

Environment Variables​

The tool is configured using container environment variables. Some environment variables must be set and some are optional. The environment variables are read and consumed by the container entrypoint script.

For a list of the supported environment variables, see the README file for your release of the containerization tools. The README for the latest release is available here.

Container user​

The data-pop-tool container image is built to be run as user app_runner (user ID 10001), with user group app_runner (group ID 10001). Ensure that you specify the correct user and group when you run the container. Consult your container orchestration documentation for more information.