Authoring environment

An authoring environment is a staging environment that has workspaces enabled. Business users use an authoring environment to control site changes.

Examples of site changes include:
  • Assigning work
  • Sending notifications
  • Executing site changes to product, content, promotions and campaigns
  • Previewing changes
  • Approving changes
  • Scheduling when changes go into production

An authoring environment is deployed by default in a staging environment, with the servers running in Docker containers. It consists of the following components:

an HCL Commerce application
Contains all the code, HTML files, JSP files, and other files required to run a store and the HCL Commerce tools.
Workspace database schemas
Each workspace on an authoring environment has its own database schema. The database schemas for workspaces are separate from the production-ready data database schema. This keeps changes made in a workspace isolated from other workspaces and the database schema for the production-ready data.
Production-ready data
Contains the same database schema and tables as the production database, plus a set of triggers to log changes made to specific tables in the production-ready data. For a list of tables that have triggers enabled, refer to Listing staging or authoring environment-managed tables.

Changes are logged to the STAGLOG table (a staging table) using database triggers. Whenever you change a database table record in the production-ready data, the STAGLOG table records this change. For each modified record, a trigger records the type of modification (insert, delete, or update), the name of the table where the record resides, and the record's primary key or unique index.

stagingcopy utility
The stagingcopy utility exists and can be run from the Utility server Docker container. This utility allows an administrator to copy data from the production database to the production-ready data. You can copy the data into multiple site-related staged tables, multiple merchant-related stages tables, all staged tables, or individual site-related or merchant-related staged tables.

The stagingcopy utility should only be used in specific administrative situations, such as setting up a new authoring environment or recovering from corrupt production-ready data. An administrator should not make day-to-day changes on the production environment and routinely use the stagingcopy utility to copy the data to the authoring environment.

stagingprop utility
The stagingprop utility exists and can be run from the Utility server Docker container. This utility allows an administrator to publish changes from the production-ready data to the production database. The information in the STAGLOG table identifies the records in the production-ready data that must be inserted, updated, or deleted in the production database. Processed records are indicated in the STAGLOG table by a 1 in the STGPROCESSED column. These processed records are not deleted and can be used for future analysis or troubleshooting.