Broadleaf Microservices
  • v1.0.0-latest-prod

Sandbox Service Configuration

Overview

There are various properties you can configure when utilizing Broadleaf’s Sandbox Service.

Data Properties

Properties related to JPA and persistence configuration

Property Description

broadleaf.sandbox.jpa.*

JPA Configuration Properties. See com.broadleafcommerce.common.jpa.data.JpaProperties for full list of options.

broadleaf.sandbox.datasource.*

Datasource Configuration Properties. See org.springframework.boot.autoconfigure.jdbc.DataSourceProperties for full list of options.

broadleaf.sandbox.liquibase.*

Liquibase Configuration Properties. See org.springframework.boot.autoconfigure.liquibase.LiquibaseProperties for full list of options.

broadleaf.sandbox.delegating.*

Delegating Schema Configuration Properties for running in a composed mode along side other Broadleaf microservices. See com.broadleafcommerce.common.jpa.data.SchemaDelegatingProperties for full list of options.

Message Notification Properties

Properties related to async messaging

Property Description

broadleaf.transition.notification.*

Properties for DefaultNotificationHandler. See com.broadleafcommerce.common.messaging.notification.NotificationProperties for full list of options.

broadleaf.transition.retry.*

Properties for RetryHandler for durable message retry. See com.broadleafcommerce.common.messaging.notification.RetryProperties for full list of options.

Preview Properties

Properties related to issuance of preview tokens for live, in-storefront preview of sandbox changes

Property Description

broadleaf.sandbox.preview.encoder.encodedPrivateKey

The encoded RSA private key string to be used to encode preview token JWTs.

broadleaf.sandbox.preview.encoder.issuer

The issuer for the JWT token. This is used when creating the JWT to specify the authority that issued it.

broadleaf.sandbox.preview.encoder.expirationTimeout

The duration of the expiration timeout for the preview token JWT.

Transition Completion Properties (Since 2.0.1)

Properties related to several cleanup jobs that complete the status of ChangeSummaryGroups, ChangeDeploys, and temporary Sandboxes after a workflow transition has completed for all relevant ChangeSummary instances.

Property Description Default

broadleaf.transition.cleanup.max-cleanup-interval-millis

The max amount of pause time between completed transition cleanup attempts.

10000

broadleaf.transition.cleanup.min-cleanup-interval-millis

The max amount of pause time between completed transition cleanup attempts.

2000

broadleaf.transition.cleanup.cleanup-batch-size

The quantity of transition cleanups to attempt at one time. Should be somewhat conservative to avoid overworking the database or causing the transaction log to spiral out of control.

100

broadleaf.transition.cleanup.evaluation-window

The amount of time beyond which active items will no longer be evaluated for completion. This measure avoids infinite evaluation of errant, stuck, or defunct items. Without this, the queue of items to check might grow to a ponderous level and interfere with timely processing of other valid items. Measured in days.

30

broadleaf.transition.cleanup.enabled

Whether the separate cleanup services will be enabled. If false, the prior, slower process of detecting ChangeSummaryGroup and ChangeDeploy status upon every ChangeSummary completion will be used. Note, the prior process is deprecated and will be removed in a subsequent release.

true

Dormant Notification State Prune Properties (Since 2.0.6, 2.1.3)

Properties related to a cleanup job that prunes 'dormant' notification states from the datastore. For more details, see SandboxNotificationPruneProperties.

Property Description Default

broadleaf.sandbox.tracking.notification.prune.enabled

Whether pruning of dormant notification states is enabled. Enabling this is highly recommended to prevent buildup in the datastore.

true

broadleaf.sandbox.tracking.notification.prune.outdated-data-age-cutoff

Dormant NotificationStates created at a time older than the current time (the time that the scheduled job is handled) minus this duration will be pruned from the datastore. This value should be set low enough to prevent excessive build-up of dormant states in the system, but also high enough to allow most change summary lifecycles to complete within the allotted time. The default value is set to 30 days, assuming that most change summaries are created and either reverted or fully deployed to production within that time.

30 days

broadleaf.sandbox.tracking.notification.prune.delete-batch-size

The default cleanup process deletes entities in batches, and this property can be used to configure the batch size. This can be helpful to avoid large transactions that affect a huge number of rows.

100

broadleaf.sandbox.tracking.notification.prune.pause-between-delete-batches

This is the amount of time that the cleanup job will pause in between each delete batch. Useful to give the database some relief during execution

1 second