CIDuty/How To/Update Python dependencies
Contents
- 1 Introduction
- 2 Check the puppet repo for patch made by pyup bot
- 3 Check the dependencies and how they affect the systems
- 4 Check if there are any releases on the go also check with the release team
- 5 Running the update
- 6 Monitoring the update on puppet mail and papertrail
- 7 In case of failure - Rollback
- 8 In case of update to Signing Servers
- 9 Weekly admin task
- 10 Questions and Answers
Introduction
Use this page if you want to update Python dependencies.
The action list is as follows:
- Check the puppet repo for patch made by pyup bot
- Check the dependencies and how they affect the systems
- Check if there are any releases on the go also check with the release team.
- If you have the Ok, start the update
- Monitoring the update on puppet mail and papertrail
- In case of failure - rollback
- Weekly admin task
- Questions and Answers
Check the puppet repo for patch made by pyup bot
Go to https://github.com/mozilla-releng/build-puppet and click on Pull requests and look for "Scheduled weekly dependency update for week X" ( where X is the current week )
Check the dependencies and how they affect the systems
If you don't know what it does, you can click on it name and find out also on most of them you can also check the change log. For example : ptyprocess 0.6.0
Also to check how are the files changed : Go to Files change tab to see what will be changed and how :
Check if there are any releases on the go also check with the release team
The update action shouldn't be done during a release. Always ask the release duty team before running the update
Running the update
After checking all the dependencies and if there are no releases, you can start the update, by merging the pyup update into master
Monitoring the update on puppet mail and papertrail
In order to monitor the updates you should subscribe to puppet mail : Releng Puppet Mail
You should also check and monitor using papertrail : Papertrail Ex of search : Balrog scriptworker
In case of failure - Rollback
In case of any failure it is needed to create a patch that reverts the changes. For this is needed to be created a ticket.
In case of update to Signing Servers
Please note if there's signingserver changes so someone from the short list (https://github.com/mozilla-releng/build-puppet/blob/master/manifests/moco-config.pp#L239) will need to restart those instances within a few hours of this being merged.
Weekly admin task
Every Monday, the admin who is on duty needs to check the build puppet, for the dependencies . If there is a "Scheduled weekly dependency update for week X" then he will need to update them following the action list
Questions and Answers
Q : What do we need to do before update ?
A : We need to check all the dependencies that will be updated, to figure out what could be affected in case of any surprises.
Q : How do we do the update ?
A : We need to merge pyup-bot patch to the master.
Q: When it is recommended to run the update ?
A : This should be done, when there are no releases and also it should be wise to ask the release duty team before starting any action.
Q : Where and what do we need to monitor when we triggered the update ?
A : The monitoring should be done the Puppet mail and also on papertrail
Q : Who are affected when an update or more goes wrong ?
A : Possibly, anyone!