New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 666169 link

Starred by 3 users

Issue metadata

Status: Fixed
Owner:
Closed: Dec 2016
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 1
Type: ----



Sign in to add a comment

Serriff-o-Matic should make clear the current trooper who is oncall

Project Member Reported by tansell@chromium.org, Nov 17 2016

Issue description

When things start going wrong with the tree (such as bot failures), the sheriff needs to talk to the current trooper / infra. This information should be quick and easy to find out this.
 
Labels: Milestone-Workflow
Status: Available (was: Untriaged)
current trooper name should be available from the same source as the go/chromecals json data. Technically I don't think this would be difficult to implement.

Though, we do have a protocol for contacting troopers already. It's at go/bug-a-trooper - It recommends filing bugs as the primary way to communicate (issues sometimes span trooper shifts so this helps with hand-off), but having this information easily visible for sheriffs on SoM probably wouldn't hurt.





Cc: chrishall@chromium.org
Labels: cit-pm
Cc: -zhangtiff@chromium.org
Labels: -Pri-2 Pri-1
Owner: zhangtiff@chromium.org
Status: Assigned (was: Available)
zhangtiff: can you take a look at this on?

We can probably just display the current trooper's ldap in the header, or somewhere in the side nav.

The calendar data json used by go/chromecals comes from http://chromium-build.appspot.com/p/chromium/all_rotations.js (sift through it to find the "trooper" rotation). There may be a better way to get that information though. 

I think we should also display current sheriff for each tree. Not sure where, but it'd be useful to see for me. It's annoying to have to dig through the calendar to find the chrome rotation.
Sure! 

+1 to displaying the current sheriff as well. 
Please work with chrishall@ on how to get the sheriff/trooper data in the best way, I think it is done differently for troopers and sheriffs now?
From the all_rotations.js file, just to clarify, I think these rotations are the ones for the trees Sheriff-o-Matic currently supports? 

Chromium => chrome
Chromium OS => chromeosgardener
Android => android 
Chromium.Perf => perf (or perfbot?) 

Infra Troopers aren't in this data anymore, so I will need to figure out how to get that information.

As a random side note, maybe the rotation calendar should be revamped a bit to be easier to read/find things in also? 
chromium.perf is perfbot. The perf rotation is separate, and not as concerned with buildbot.
Labels: -Infra-DX
Re side note in comment #7: yes, absolutely that should be revamped. The rotation calendar situation is a known problem. I think agable@ has some ideas on using internal tools to manage it better, but that is a separate issue.
There is a second writeup forthcoming from another sheriff who also has many concerns over the rotation calendar.  Wait for that (hopefully out later today) before making any decisions here.
Labels: -cit-pm cit-pm-7
Posting a quick update here that I'm still investigating the best way to get the current trooper on call.  

build.chromium.org currently displays the current trooper from a script file: https://chromium-build.appspot.com/p/chromium/trooper.js 


Apparently, this script file is generated by a cron job run on one of the masters. Worst case, if there's not a clean way to get the current trooper, we could always read that script file as a quick hack. But I'm still searching for a better method. 
Just a quick note that zhangtiff@ has reached out to me and I've been in contact with them to discuss how best to get the current trooper, I'll be working with them to support them for the purposes of this bug.
The plan of attack is for me to expose the current trooper as a plain string at https://chromium-build.appspot.com/p/chromium/current_trooper.txt (or maybe https://chromium-build.appspot.com/p/chromium/current_trooper.js depending on caching rules), I'm aiming to get the change done today.
Project Member

Comment 15 by bugdroid1@chromium.org, Dec 2 2016

The following revision refers to this bug:
  https://chrome-internal.googlesource.com/infra/infra_internal.git/+/2421b93b63afd5751b6a66f8a3771262e1adf91d

commit 2421b93b63afd5751b6a66f8a3771262e1adf91d
Author: Chris Hall <chrishall@google.com>
Date: Fri Dec 02 05:20:20 2016

This change has two components:

1) the code change - adding a new flag to the python script in order to output a txt file containing the current trooper
https://chrome-internal-review.googlesource.com/#/c/308515/

2) the cron change (deployed via puppet) which frequently runs this python script
https://chrome-internal-review.googlesource.com/#/c/308535/

(1) has now been submitted, on Monday I will see if this has rolled out and if so I will submit (2).

I'll update this bug on Monday as to the current progress.
Project Member

Comment 17 by bugdroid1@chromium.org, Dec 5 2016

The following revision refers to this bug:
  https://chrome-internal.googlesource.com/infra/puppet/+/3dd3580cf984f3d7625e90e9c2c2d9dac6482b51

commit 3dd3580cf984f3d7625e90e9c2c2d9dac6482b51
Author: Chris Hall <chrishall@google.com>
Date: Thu Dec 01 09:12:04 2016

I have landed the second part just now after confirming the first part was deployed correctly.

This should mean that *shortly* (within a few hours) the current trooper will be served from
https://chromium-build.appspot.com/p/chromium/current_trooper.txt

I will wait until tomorrow morning, and then I will check everything is behaving.
Project Member

Comment 19 by bugdroid1@chromium.org, Dec 6 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/infra/infra.git/+/77a2064660533e38b7851af9c05a251781a841d3

commit 77a2064660533e38b7851af9c05a251781a841d3
Author: Chris Hall <chrishall@chromium.org>
Date: Tue Dec 06 03:34:23 2016

Adding new current trooper output for Sheriff-o-matic consumption.

This is the final part in a 3-piece change.
The primary code change is in https://chrome-internal-review.googlesource.com/#/c/308515/
The matching puppet change is in https://chrome-internal-review.googlesource.com/308535

BUG= 666169 

Change-Id: I924a74de65be70e055dad88c340b40033a18ec54
Reviewed-on: https://chromium-review.googlesource.com/416512
Reviewed-by: Dave Sansome <dsansome@chromium.org>
Commit-Queue: Chris Hall <chrishall@chromium.org>

[modify] https://crrev.com/77a2064660533e38b7851af9c05a251781a841d3/appengine/chromium_build/app.py

So I have just landed the third part in what should have been a two part change :p

This should mean that, once deployed, the url 
https://chromium-build.appspot.com/p/chromium/current_trooper.txt 
should work

However, as of *right* *now* the url
https://build.chromium.org/p/chromium/current_trooper.txt
DOES work

Which is fine to use.

This should conclude my work on this piece, sans a deploy of chromium-build.appspot.

Let me know if there is anything missing or if you need any more support :)
Alright, this change + displaying the current sheriffs should be deployed later today. :)
Project Member

Comment 24 by bugdroid1@chromium.org, Dec 7 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/infra/infra.git/+/40ea19bc69a4dbc98aa87f5a6ffd531958f72a64

commit 40ea19bc69a4dbc98aa87f5a6ffd531958f72a64
Author: Tiffany Zhang <zhangtiff@google.com>
Date: Wed Dec 07 01:12:37 2016

SoM: Change pulling sheriffs to account for timezones.

BUG= 666169 

Change-Id: I9cf5cb4ca6567eaae4bb36d7d4d5d6e3ca43b0d0
Reviewed-on: https://chromium-review.googlesource.com/417405
Reviewed-by: Sean McCullough <seanmccullough@chromium.org>
Commit-Queue: Tiffany Zhang <zhangtiff@chromium.org>

[modify] https://crrev.com/40ea19bc69a4dbc98aa87f5a6ffd531958f72a64/go/src/infra/appengine/sheriff-o-matic/elements/som-drawer.html

Status: Fixed (was: Assigned)

Sign in to add a comment