Skip to content
New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

Allow specification of custom checklists from inside of client repo #20

Merged
merged 5 commits into from
Jan 22, 2020

Conversation

dgtized
Copy link
Contributor

@dgtized dgtized commented Jan 16, 2020

Specify custom deploy checklist items from within the monolith. Previously checklists were all defined & used here. There are a few provided as examples now, but moves the bulk of specification local to the repo being instrumented. This prevents accidental leaking of secrets & credentials, and allows checklists to mutate and customize according to the target repo's needs. This does make the API boundary for creating checklists a little firmer though by specifying it in two places.

  • Tags & Release as v0.9

@dgtized dgtized requested a review from BrianHicks January 21, 2020 23:01
Copy link
Contributor

@BrianHicks BrianHicks left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

looks just lovely, thank you! I appreciate the example which reads the file; I think we're underusing that (and over-reporting checklist needs.)

One thing while the boundary is hardening here: do you have any idea how we could examine the diff? For example, we could see if a fuzz test is actually being added before asking someone to check the fuzz testing item off.

Just gonna have to owe you a GIF; I'm on a plane and my connection is really bad right now.

@dgtized
Copy link
Contributor Author

dgtized commented Jan 22, 2020

Oh interesting, yea we could define some way to either derive from a class that receives all files or one that receives all lines of diff? Or we could change the relevent_for callback to receive an object that contains the full diff and list of files? I think my preference is the 2nd one, and it shouldn't be too hard to extend that to handle that later.

That might pair nicely with existing work we did for the complexity report like: https://github.com/NoRedInk/deploy-complexity/blob/master/lib/deploy_complexity/changed_files.rb#L6, or some of the info we collect in https://github.com/NoRedInk/deploy-complexity/blob/master/lib/deploy_complexity/deploy.rb#L66?

I'm going to make an issue in this repo linking to this PR with a request for followup so we don't lose this.

@BrianHicks
Copy link
Contributor

BrianHicks commented Jan 22, 2020 via email

@dgtized dgtized merged commit 927b7fe into master Jan 22, 2020
@dgtized dgtized deleted the custom-pr-checklist branch January 22, 2020 20:01
# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants