The ElectricSentry procedure can easily be misconfigured. Because it is a CloudBees CD (CloudBees Flow) procedure, some easy debug techniques can be used to discover why it is not producing expected procedure starts.
Schedule appears twice in the CloudBees CD (CloudBees Flow) GUI.
Make sure you deselect the “Enabled” checkbox for continuous integration schedule on the Schedules page to prevent it from running at midnight (the default schedule).
A CI schedule is actually based on a regular schedule, but it has a “Custom Form” to display it in the UI when you edit it. Inside the Custom Form, there is a checkbox to Enable/Disable the schedule for Sentry. This sets a property that triggers ElectricSentry.
However, when you examine the list of schedules in the project, the schedules are displayed using the standard UI. The “Enabled” column displays the status for the TIMED operation of the schedule. This checkbox for ElectricSentry should be deselected for a Sentry Trigger schedule.
In the future, the CloudBees CD (CloudBees Flow) GUI could be correct to suppress the schedule checkbox when Sentry is enabled in the custom form or suppress the custom for Sentry box when the schedule is selected.
The Sentry Monitor checks for code updates, and lets you know whether there were updates or not. On the step “Checking for new sources” will:
- Print (nothing new) if it does not detect updates.
- Otherwise, it will print (ready to execute).
Examine the log file for this step to ensure the CI you are debugging is:
- error and warning free
- showing any messages that detected a CI change
Always launch the Sentry using the schedule in Electric Cloud to ensure Sentry is running as the correct user, the project principal.
The last step in ElectricSentry deletes the previous Sentry jobs, keeping the system free of Sentry remnants.
To disable this cleanup step:
- Locate the Sentry step labled “Cleanup” in project “Electric Cloud” procedure RunSentry.
- Place the character “0” in the Run Condition for the step.
- Proceed with Sentry debugging.
Be sure to remove the Run Condition or change it to “1” when debugging is completed.
For more details on how to find properties used by Sentry to hold SCM information, see KBEC-00146 - “Continuous Integration property storage and management”