Registry Job Shell is a command line utility for running various scheduled tasks. It is primarily intended to be run via Cron, though it can also be run manually.

(info) Prior to v2.0.0, JobShell was known as CronShell.

Installation and Running

For installation instruction via cron, see Registry Installation - Cron.

To run JobShell manually, the usage is

JobShell Usage
$ cd ${REGISTRY_SRC}/app
$ su -c "./Console/cake job ${ARGS}" ${APACHE_USER}

(warning) After running JobShell, it may be necessary to manually clear or change ownership on cache files, especially if the command is not run as the Apache user.


(info) Registry v3.3.0 introduces Job Plugins. Existing tasks will remain available until Registry v4.0.0 (CO-1310), at which time they will be converted to Job Plugins.


  1. job [-hqv] [-c coid] [task] [task...]
  2. job [-hqv] -r -c coid
  3. job job [-hqv] -s -c coid [params...]
  4. job -U lockid

Usage 1 is deprecated, and will be removed in Registry v4.0.0. Usages 2, 3, and 4 are available since Registry v3.3.0.


  • c: Numeric CO ID to process tasks for (default: All COs) (--coid)
  • h: Display help (--help)
  • q: Quiet mode, suppress most output (--quiet)
  • r: Run queued jobs (--runqueue)
  • s: Run the specified job synchronously (--synchronous)
  • U: Remove the specified lock ID (--unlock) (use to clear stale locks)
  • v: Verbose mode, enable additional output (--verbose)
  • job: Job to run
    • In Registry v3.3.x, the job name corresponds to the prefix of the plugin name (eg: for the plugin ProvisionerJob, the job is provisioner).
    • From Registry v4.0.0, the job name is the plugin name, a dot (.), and then the name of the Job to run (without the Job suffix). eg: For the plugin ProvisionerJob implementing a ProvisionerJob model, the job is ProvisionerJob.Provisioner.
  • params: Job-specific parameters
  • task: Task or tasks to run (default: All available tasks)

(warning) JobShell is designed to provide minimal command line output, with actions instead recorded in Registry Job History.


(info) Tasks migrated to the Core Job Plugin in Registry v4.0.0. The descriptions here apply to earlier versions.

The following tasks are supported by Job Shell:

  • expirations: Run Expiration Policies.
    • In most cases, it makes sense to run expirations once per day, as this task is primarily useful for expirations driven by calendar dates. However, if your deployment includes business processes that manually manage criteria for expiration (eg: expiration driven by moving a record to a different COU) you may wish to run expirations more frequently.
  • forcesyncorgsources: Sync Organizational Identity Sources. Available as of Registry v3.2.0.
  • groupvalidity: Reprovision records to due Group Validity. Available as of Registry v3.2.0.
    • When a CO Group Member valid from or valid through date takes effect, this task is used to reprovision affected records. When executed, the task will reprovision any record associated with a CO Group Membership whose valid from or valid through date is within the last x minutes, where x is set via the CO Setting Group Validity Sync Window. The default value for this setting is 1440 minutes (or 1 day), and so typically it would make sense to run this task once per day, perhaps just after midnight. However, it may make sense to run this task more frequently, depending on how your deployment uses these dates.
  • syncorgsources: Sync Organizational Identity Sources.


Job status maybe monitored via the web interface by CO Administrators, via the Jobs menu item. An in progress job may be canceled via the Job details view. (Expirations cannot be monitored this way prior to Registry v4.0.0.)

  • No labels