Change management
Introduced via support-team-meta#4077
Schedule changes
Note This only applies for the non-shadow schedules. For changing shadow schedules, please see shadow schedule changes.
The process for this can be broken down into 3 sections:
Notify DRIs about the upcoming implementation
On the first Monday of the second month of a given quarter, we notify the DRIs about the upcoming implementation. This is done automatically via Slack workflows, but for reference, the timing and messaging used is as follows:
0800 UTC - EMEA
Greetings @support-managers-emea @Kate Grechishkina !
This is your quarterly reminder that Support Readiness will be implementing next quarter’s Pagerduty oncall schedules in about a month. As such, please remember to fill out the Pagerduty spreadsheet before the first of next month!
The schedules you need to ensure are updated are CEOC, CMOC, Managers, and SSAT
Please remember any BLANK values at the time of implementation will be assigned to the Support Director for your region.
1400 UTC - AMER
Greetings @support_managers_amer !
This is your quarterly reminder that Support Readiness will be implementing next quarter’s Pagerduty oncall schedules in about a month. As such, please remember to fill out the Pagerduty spreadsheet before the first of next month!
The schedules you need to ensure are updated are Global CEOC 1, Global CEOC 2, Global CEOC 3, US Gov CEOC 1, US Gov CEOC 2, US Gov CEOC 3, CMOC, Managers, and SSAT
Please remember any BLANK values at the time of implementation will be assigned to the Support Director for your region.
2130 UTC - APAC
Greetings @support-managers-apac !
This is your quarterly reminder that Support Readiness will be implementing next quarter’s Pagerduty oncall schedules in about a month. As such, please remember to fill out the Pagerduty spreadsheet before the first of next month!
The schedules you need to ensure are updated are CEOC 1, CEOC 2, CMOC 1, CMOC 2, Managers, and SSAT
Please remember any BLANK values at the time of implementation will be assigned to the Support Director for your region.
Implement the changes
During the first week of the final month of the quarter, you need to setup all the schedules we use to align with the requested changes in the Support Pagerduty Worksheet.
To do this, there is a script located in our Pagerduty project called handle_pd_changes.
To utilize this, you will need to download a CSV of each of the locked sheets.
To do that, you will go to the sheet in question, click File
at the top menu,
hover over Download
, and then click Comma Separate Values (.csv)
. Doing so
will download that specific sheet to your computer. Keep in mind the CSV file
that is downloaded has the entire spreadsheet within it, so you will need
to modify the file to remove any entries beyond the following quarter.
You will then navigate to the location of the Pagerduty project repo on your local computer.
Run the bundle
command to download the needed gems. An example out this would
look like:
|
|
After doing so, you should verify you have the five needed environment variables set in your local environment (see the project’s README for more details).
After that has been done, you will run the script with the needed parameters to
create all the overrides needed for the next quarter (again, see the project’s
README
for more details). You can also run the commands ./handle_pd_changes HELP
and
./handle_pd_changes DEFINE
to see more information on running the script.
The output should show you if each override was created correctly. If you see a status of 201, it was successful. If you see anything else, it did not succeed (and manual intervention will be required).
An example of the script running would look like:
|
|
After you have run that script, go into Pagerduty and check the corresponding schedule for accuracy.
Rotate the spreadsheet
After you have implemented the changes into Pagerduty, the final thing you need to do is rotate the spreadsheet. How you do this is really up to you, but the general recommended way is to do the following:
- Select the following quarter’s entries on the spreadsheet and hit the
DEL
key on your keyboard twice (this ensures it fully deletes everything) - Copy all the remaining entries and paste them from the 2nd line of the file (the one right after the headers).
- Navigate to the bottom of what you just copied, select the remaining entries,
and hit the
DEL
key on your keyboard twice (this ensures it fully deletes everything) - Select the last 5 rows on the spreadsheet, click the dot at the bottom-right of your selection (holding the mouse button down), and drag it down however many rows you need to add (if you are unsure, go down about 93 rows, as that should cover all the days). Doing this will automatically fill out the needed information for you.
Shadow schedule changes
These are now fully automated via the Support Super form. As such, you should never need to make modifications to them.
Escalation policy changes
This can be a very destructive action. Due to the complexity involved, we do not have a fully documented process for this at this time.
As such, please only have @jcolyer or @dtragjasi work these at this time.
Service changes
This can be a very destructive action. Due to the complexity involved, we do not have a fully documented process for this at this time.
As such, please only have @jcolyer or @dtragjasi work these at this time.
Spreadsheet setup
The Support Pagerduty Worksheet is setup in a very specific way to facilitate planning for the next quarter’s changes.
Dropdowns reflect the entire pool of possible people for that dropdown
Each dropdown’s content is determined based on the pool of possible people that could be used. This is done via a range on the People sheet.
Never make edits directly to the dropdown values. If you need to add or remove someone from the possible options, please do so on the People sheet. This is usually done by provisioners during onboarding, offboarding, and team member transfers.
We have many protections in place
We have several protections in place on the sheet to prevent editing cells that are not meant to be edited:
Name of protection | Sheet | Definition |
---|---|---|
AMER - Customer Emergencies headers | AMER - Emergencies | Whole sheet except F2:F1000, M2:M1000, T2:T1000 |
AMER - CMOC headers | AMER - CMOC | Whole sheet except F2:F1000 |
US Federal headers | US Federal | Whole sheet except F2:F1000, M2:M1000, T2:T1000 |
APAC - Customer Emergencies headers | APAC - Emergencies | Whole sheet except F2:F1000, M2:M1000 |
APAC - CMOC headers | APAC - CMOC | Whole sheet except F2:F1000, M2:M1000 |
EMEA headers | EMEA | Whole sheet except F2:F1000, M2:M1000 |
Managers headers | Managers | Whole sheet except F2:F1000, M2:M1000, T2:T1000 |
SSAT headers | SSAT | Whole sheet except F2:F1000 |
Available persons | People | Whole sheet |
2fc13ab5
)