Auto deploy
The LumisXP has an automated deployment mechanism.
This mechanism periodically scans the folder lumisdata/data/autoDeploy
for files with the extension .jar
and .zip
.
Once found, these files will be deployed on the portal, one at a time.
The basic cycle of the auto deploy scanner is:
-
Once there are no
.jar
or.zip
files in the folderlumisdata/data/autoDeploy
, wait for notification of file creation from the file system. -
For each file in the folder:
-
If the last modified date and the file size have stabilized for a period equal to or greater than
fileReadyInterval
(see configuration below), then proceed. Otherwise, skip to the next file. -
Try to read the file to verify whether it is a module or a package. If unable to read, the file will be marked as a failure (it will receive a
.error
extension). If successful, proceed. -
Rename the file by adding a
.deploying
extension. - Deploy the file.
-
If the deployment was successful, rename the file by removing the
.deploying
extension and adding a.success
extension. If not, rename the file by removing the.deploying
extension and adding a.error
extension.
-
If the last modified date and the file size have stabilized for a period equal to or greater than
-
Wait until the time
pollInterval
(see configuration below) has been reached (if it has not been reached yet). - Repeat the procedure.
Configuration
The auto deploy scanner can be configured via System Properties. They are:
- lumis.portal.deployment.autodeploy.enabled
-
Boolean (
true
orfalse
) that indicates whether auto deploy will be enabled or not.
Default:true
(enabled). - lumis.portal.deployment.autodeploy.pollInterval
-
Minimum time in milliseconds between scanner iterations. This time may be longer if any deployment
takes place during an iteration.
Default:10000
(10 seconds).
Time equal to0
(zero) disables the minimum time between scanner iterations. - lumis.portal.deployment.autodeploy.fileReadyInterval
-
Minimum time in milliseconds for stabilization of the last modification date and file size before it can be processed.
Default:10000
(10 seconds).
Time equal to0
(zero) disables the minimum stabilization time. This allows the file to be processed at the first iteration of the scanner in which this file is present. - lumis.portal.deployment.autodeploy.syncStructure
-
Boolean (
true
orfalse
) that indicates whether structure synchronization should be performed by auto deploy.
Default:true
(true). - lumis.portal.deployment.autodeploy.forceReprocess
-
Boolean (
true
orfalse
) that indicates whether auto deploy should force reprocessing of components.
Default:false
(false).
```