...
In general, such a deployment will involve 3 - 4 steps:
- Export of the Calendar from the Int. JOC Cockpit to the Int. file system, where the Calendar will be saved as a JSON file.
- Transfer of the JSON calendar file to the Production file system.
- Import of the JSON calendar file to the Production JOC Cockpit with automatic integration into the Production JOC Cockpit Daily Plan.Manual Updating of the Daily Plan will be Required in particular situations
Details of the deployment procedure will depend on two factors:
...
Consider the situation where a new Calendar has been tested and is now to be deployed to a production environment.
- The new Calendar can have ...
Status colour Yellow title To complete
...
- There are two cases to consider here:
- i.e. whether or not a Calendar being deployed on the Int. system was not assigned to one or more Orders on that system.
Status colour Yellow title To rewrite
Example Configuration
The following configuration will be used to demonstrate deployment of "new" Calendars:
...
- Two Orders have been configured for a Job Chain:
- inpexp_1, with the Frequencies:
cal_sat
, configured with every Saturday, and a Single Start Period at 12:00cal_sun
, configured with every Sunday, and a Single Start Period at 18:00
- inpexp_2, with the Frequency:
cal_sat
, configured with every Saturday, and a Single Start Period at 21:00
- inpexp_3, with the Frequency:
cal_sun
, configured with every Sunday, and a Single Start Period at 15:00
- inpexp_1, with the Frequencies:
- In addition, a further Calendar has been configured but not assigned to an Order:
cal_mo-fr
configured with every day, Monday to Friday,
...
Two Orders have been configured for a Job Chain:
inpexp_1, with no Calendars assigned
- inpexp_2, with a Single Start Period at 21:00 and the following Calendar assigned:
cal_fr
, configured with every Friday, and a Single Start Period at 24:00
- has the same Path parameter as will be required on the Prod. system.
...
Export Procedure
Calendar Export is carried out from the Resources / Calendars view of the JOC Cockpit:
- The Calendar or Calendars to be exported are selected using the select boxes shown either in the Calendar Cards or at the left of the list of Calenders (as shown in the screenshot below) or at the left of the list of Calenders.
- Selecting a first Calendar will cause the default Import Calendar button (shown in the screenshot above) to be replaced with the Export Calendar button as shown in the next screenshot.
- Clicking the the Export Calendar button will open a standard browser file-saving menu that is then followed to save the Calendar(s) selected as a single
.json
file to the Int. file system. This file can now be transferred to the Prod. file system. - In the configuration used for the screenshots the impexp_cal_sat Calender is assigned to two Orders on the Int. system and the impexp_cal_sun Calender is not assigned to any Order. Both Calenders are none-the-less exported in the
.json
file.
Import Procedure
The ...
Behavior of the Import Function
The import function is conservative, preserving existing configurations on the target system where appropriate.
- Orders on the target Prod. system with the same names as Orders on the source Int. system will be automatically assigned the Frequency or Frequencies for the Calendar(s) that have been exported - i.e. Calendar, Period and Restrictions - that the Orders on the Int. System were assigned:
- The Order inpexp_1, will be assigned the Frequency:
cal_sat
, configured with every Saturday, and a Single Start Period at 12:00
Note that a Frequency for thecal_sun
Calendar will not be assigned to this Order as the Calendar for such a Frequency was not included in the export.
- The Order inpexp_2, will be assigned the Frequency:
cal_sat
, configured with every Saturday, and a Single Start Period at 21:00
Note that the already assigned Frequency with thecal_fr
Calendar will neither be modified not overwritten.
- The Order inpexp_1, will be assigned the Frequency:
- Frequency information for an Order on the Int system that was included in the export will not be imported into the Prod. system if an Order with the same name is not found on the Prod. system.
- This means that in the example, the exported information for the inpexp_3 Order will not be imported.
Once the import has been carried out the imported Calendar(s) can be seen in the Resources / Calendars view, in the appropriate folder as can be seen in the next screenshot, which shows the already existing cal_fri
Calendar and the imported cal_sat
and cal_mo-fr
Calendars.
SCREENSHOT
In addition ... in the relevant Order's Assigned Calendars modal window as can be seen in the next screenshot
SCREENSHOT
In the Job Chains view, the Set Run-time modal window can be opened to see if the Calendars have been successfully imported as shown in the next screenshot, where they can be seen in the list of Frequencies along with any Period and Restriction information imported:
SCREENSHOT
exported .json file is shown in the listing below:
Code Block | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
{
"calendars": [
{
"path": "/demo/calendar/import-export/cal_mo-fr",
"type": "WORKING_DAYS",
"category": "e2e",
"title": "Cal Mon-Fri",
"from": "2017-12-16",
"to": "2017-12-31",
"includes": {
"weekdays": [
{
"days": [
1,
2,
3,
4,
5
]
}
]
},
"usedBy": {
"jobs": [],
"orders": [],
"schedules": []
}
},
{
"path": "/demo/calendar/import-export/cal_sat",
"type": "WORKING_DAYS",
"category": "e2e",
"title": "Cal Sat",
"from": "2017-12-16",
"to": "2017-12-30",
"includes": {
"weekdays": [
{
"days": [
6
]
}
]
},
"usedBy": {
"jobs": [],
"orders": [
"/demo/calendar/import-export/job_chain1,impexp_1",
"/demo/calendar/import-export/job_chain1,impexp_2"
],
"schedules": []
}
},
{
"path": "/demo/calendar/import-export/job_chain1,impexp_1",
"basedOn": "/demo/calendar/import-export/cal_sat",
"type": "ORDER",
"periods": [
{
"singleStart": "12:00:00",
"whenHoliday": "suppress"
}
],
"includes": {}
},
{
"path": "/demo/calendar/import-export/job_chain1,impexp_2",
"basedOn": "/demo/calendar/import-export/cal_sat",
"type": "ORDER",
"periods": [
{
"singleStart": "21:00:00",
"whenHoliday": "suppress"
}
],
"includes": {}
}
],
"deliveryDate": "2017-12-16T12:16:36.922Z"
} |
Import Procedure
The Import procedure is started in the Resources / Calendars view of the target system by simply clicking the Import Calendar button (any folder can be selected in the Folder Tree) as shown in the screenshot below.
Note that the imported Calendars will neither be shown nor included in the Daily Plan until ....
Deployment of a Calendar Update
...