Introduction
JS7 is a rewrite from scratch of the JobScheduler components available with branch 1.x (JS1). This includes that existing *.xml files for scheduling objects have to be migrated.
- For general information see JS7 - Migration of JobScheduler 1.x Job Configuration.
- For capabilities of the Converter see JS7 - Migration of JobScheduler 1.x - Converter Capability Reference.
Converter
With availability of Release 2.4.0 (in progress) a Converter will become available to migrate JS1 *.xml files of scheduling objects to JS7:
- JOC-1318Getting issue details... STATUS
The Converter reads existing JS1 *.xml files and creates .json files that are added to a .tar.gz or .zip archive for import into JS7, see JS7 - Inventory Export and Import.
Prerequisites
The Converter will be provided for download and can be used for the following platforms.
- The Converter Java classes can be used with Java JRE or JDK 1.8, 11, 17.
- The Converter Start Script is available for
- Linux, MacOS® and AIX® using bash, dash, ksh and zsh shells.
- Windows 7, 8, 10, 11, Windows Server
Download
Find the Converter for download from JS7 - Download (Links will become active with general availability of Release 2.4.0 (in progress).
- Unix: https://download.sos-berlin.com/JobScheduler.2.4/js7_convert_js1.tar.gz
- Windows: https://download.sos-berlin.com/JobScheduler.2.4/js7_convert_js1.zip
After extraction of the .tar.gz or .zip archive find the following files:
js7_convert_js1.sh | .cmd
(Converter Start Script)js7_convert_js1.config
(Converter Configuration File)lib
(Directory for Java Classes)
Usage
Invoking the Converter Start Script without arguments displays the usage clause:
Usage: js7_convert_js1.sh | .cmd [Options] Options: --input-dir=<location of input directory> | required argument --output-dir=<location of output directory> | default: ./output --report-dir=<location of report directory> | default: ./report --archive=<location of resulting .zip archive for JS7 import> | default: ./js7_converted_js1.tar.gz | .zip --config=<location of config file> | default: ./js7_convert_js1.config --help | displays usage
Explanation:
- Options
--input-dir
- Specifies the input directory of JS1 *.xml files for scheduling objects. Such files typically are located in the
SCHEDULER_DATA/config/live
folder. If you do not want to run the converter directly on the machine in which the *.xml files are located then you can copy thelive
folder or any sub-folder to a Unix or Windows machine on which to run the converter. The operating system of JobScheduler Master using the *.xml files is independent from the operating system of the converter. - The Converter recursively traverses the input directory.
- Specifies the input directory of JS1 *.xml files for scheduling objects. Such files typically are located in the
--output-dir
- Specifies the output directory to which converted .*json files are written. For a number of *.xml files there is a corresponding *.json file.
- For each sub-directory of the input directory the corresponding sub-directory is created in the output directory.
- On start-up the Converter removes existing files and sub-directories from the output directory.
--report-dir
- The Converter will report to the specified directory by use of a number of .csv files the extent to which the conversion is successful:
parser_summary.csv
: reports the number of objects found in the input directory and sub-directories.parser_analyzer.csv
: includes debugging information.converter_summary.csv
: reports the number converted objects per object type such as workflows and scheduled.converter_warnings.csv
: includes warnings about XML elements that could not be perfectly converted.
- The Converter will report to the specified directory by use of a number of .csv files the extent to which the conversion is successful:
--archive
- Specifies the path to an archive file with the .tar.gz (Unix) or .zip (Windows) extension that will be created by the Converter. The archive includes the *.json files of the output directory and can be used for later import into JS7, see JS7 - Inventory Export and Import.
- An existing archive file will be overwritten.
--config
- Specifies the location of the Converter Configuration File.. This file is required for the Converter to run. It includes a number of settings that can be adjusted.
Examples
Unix
./js7_convert_js1.sh \ --input-dir=/var/sos-berlin.com/jobscheduler/config/live # reads *.xml files from the Master's "live" folder and creates the corresponding output directory hierarchy in the "output" sub-directory of the working directory; # reports are written to the "reports" sub-directory of the working directory, the resulting "js7_converted.tar.gz" archive file is written to the working directory.
./js7_convert_js1.sh \ --input-dir=/var/sos-berlin.com/jobscheduler/config/live \ --output-dir=/tmp/output --report-dir=/tmp/report --archive=/tmp/js7-import.tar.gz # reads *.xml files directly from the Master's "live" sub-directory and creates the corresponding directory hierarchy in "/tmp/output"; # report files are written to "/tmp/report", the resulting archive file is written to "/tmp/js7-import.tar.gz".
Windows
js7_convert_js1.cmd --input-dir=C:\ProgramData\sos-berlin.com\jobscheduler\config\live ^ @rem reads *.xml files from the Master's "live" folder and creates the corresponding directory hierarchy in the "output" sub-directory of the working directory; @rem reports are written to the "reports" sub-directory of the working directory, the resulting "js7_converted.zip" archive file is written to the working directory.
js7_convert_js1.cmd ^ --input-dir=C:\ProgramData\sos-berlin.com\jobscheduler\config\live ^ --output-dir=C:\tmp\output ^ --report-dir=C:\tmp\report ^ --archive=C:\tmp\js7-import.zip @rem reads *.xml files directly from the Master's "live" sub-directory and creates the corresponding directory hierarchy in "C:\tmp\output"; @rem report files are written to "C:\tmp\report", the resulting archive file is written to "C:\tmp\js7-import.zip".