mozilla-releng/balrog

show a simple, positive indication that required signoffs have been achieved

Closed this issue · 10 comments

We hit an issue today where it wasn't clear that signoff requirements hadn't been met. The change in question needed a signoff from releng and relman, but we had signoffs from releng and releng-relman.

One thing we can do to help make this more clear is to have a clear, positive indication that the required signoffs have been achieved. Perhaps a progress bar, or checkmarks beside each required signoff?

Can I give fixing this a shot?

I'll like to fix this issue if it can be assigned to me. Pls assign to me

Please feel free to work on this issue and open a pull request when ready. Even if someone else ends up fixing it first, working on it would be good experience.

Please feel free to work on this issue and open a pull request when ready. Even if someone else ends up fixing it first, working on it would be good experience.

great.

Okay, thanks.

More info about this issue please ? @bhearsum, @gabrielBusta.
Would you mind providing the UI (or component) in which the change should be made ?

In production there are stringent checks around changes to balrog's data. Certain types of changes need approval from multiple individuals before they can be implemented. This multi-approval system ensures checks and balances, and prevents unauthorized or incorrect modifications. When impactful changes like adding new rules are proposed, they need to go through the required signoffs to ensure accuracy and security before being finalized.

If you navigate to the required sign-offs page, you will see that the local instance of balrog is set-up to require 1 sign-off from a user with the releng role on the Firefox release channel.

Screenshot 2023-10-10 at 14 25 29 Screenshot 2023-10-10 at 14 44 28

When you run:

$ export LOCAL_ADMIN=<email address you signed in with>
$ docker-compose run balrogadmin create-local-admin

The script grants the user you signed in with this releng role.

To see the required sign-offs component try adding a rule to the Firefox release channel.

Go to the rules page and select the Firefox release channel.

Screenshot 2023-10-10 at 14 54 27

Click "add rule".

Screenshot 2023-10-10 at 14 57 07

Fill out the required rule fields, making sure to select Firefox for the product and release for the channel. The click the save icon at the bottom right.

Screenshot 2023-10-10 at 14 58 15

You will see an "scheduled change" on the rules page. You can revoke the releng sign-off (it is automatically added since the person that created the rule has the releng role) to stop the change from being implemented and take a good look at the user interface.

Screenshot 2023-10-10 at 15 03 16 Screenshot 2023-10-10 at 15 03 24

The issue describe here is that when a rule gets all the sign-offs it needs, there's no indication that all the required sign-offs have been met and the rule will be implemented.

Oh also, rather than revoking the sign-off, you can set the "when" in the rule far off into the future so the agent won't implement it for a while. Then you can add and revoke to test your changes.

Screenshot 2023-10-10 at 15 55 18

Thank for explanation!

This is fixed by #3016.