You can set up ATG Content Administration so it automatically deploys all projects listed in the To Do tab of the Admin Console in the Business Control Center.

To enable this functionality:

  1. Set up your content development and target environments for ATG Content Administration deployments (review the steps described earlier in Setting Up Deployment).

  2. Configure the RecurringDeploymentService to schedule pending projects for deployment:


The following table describes each property to configure:




Specifies targets to consider for scheduled deployments. If this property is not set, the RecurringDeploymentService deploys to all target sites that are set up for deployment. The RecurringDeploymentService logs error messages for invalid targets.


The path of the DeploymentServer, by default /atg/epub/DeploymentServer.


Specifies whether the service is enabled. The default is false. Be sure to set all other required properties before enabling this service.


If set to true, specifies that the RecurringDeploymentService performs a Full Deployment. By default, this property is set to false (performs Incremental Deployment).


The substring in an ACL that is used to identify the user in the UserAuthority. The default is Profile$login$.


Specifies the schedule for deploying pending projects. The schedule is supplied to the Scheduler service specified in the Scheduler property.

In order to set up a recurring schedule, specify either a PeriodicSchedule or CalendarSchedule. For more information on defining these types of schedules, see the discussion on Scheduler services in the ATG Platform Programming Guide.

The default setting is calendar * * * * * 0, which specifies to run the job every hour on the hour.


The path of the Scheduler service to manage deployment scheduling; by default, set to /atg/dynamo/service/Scheduler.


The path of the Transaction Manager to use; by default, set to /atg/dynamo/transaction/TransactionManager.


The userAuthority that resolves the user specified in the username property.


Specifies the user to authenticate. The default is publishing.

Set this property to a user name with full access to the /atg/epub/PublishingRepository in order to ensure that the user against whom queries are executed has the required access privileges to all projects.


The path of the VersionManager to use; by default, set to /atg/epub/version/VersionManagerService.

At application startup, the RecurringDeploymentService schedules a new deployment job with the /atg/dynamo/service/Scheduler (class atg.service.scheduler.Scheduler). The Scheduler component is a service that monitors all scheduled jobs, and calls as needed on the appropriate services to execute them. The Dynamo Server Admin lists all jobs that the Scheduler component currently monitors.

According to the schedule defined in the property RecurringDeploymentService.schedule, the Scheduler calls on the RecurringDeploymentService to perform its scheduled task. When called, the RecurringDeploymentService retrieves all pending projects in the system and deploys them to all target sites specified in the candidateTargetNames property. If this property is not set, the RecurringDeploymentService deploys to all targets that are configured for deployment. You can monitor and manage scheduled tasks like other deployment activities.

Extending the RecurringDeploymentService

The default implementation of the RecurringDeploymentService schedulable service acts on all projects that are approved for deployment. You can extend this service to include only a subset of approved projects. For example, you might want to include only projects that contain changes to the product catalog.

To extend the RecurringDeploymentService in this manner, create a subclass of the atg.epub.deployment.RecurringDeploymentService class and override the following method:

public Collection getProjectsToDeploy(Collection pAllPendingProjects)

By default, getProjectsToDeploy() returns the collection of all projects approved for deployment. The custom implementation should filter the collection as needed.

After you create the subclass, configure an instance of the class in Nucleus by placing the configuration file in the configuration path:


Note: If project assets that are included in the filtered collection reference assets in other projects that are approved for deployment, the system automatically includes those projects in the deployment.