> On 27. Aug 2018, at 21:50, Craig Rodrigues <[email protected]> wrote:
> 
> My submission is now Draft JEP-11:
> 
> https://github.com/jenkinsci/jep/tree/master/jep/11


Reading through the current JEP, it doesn't seem robust enough in the face of 
some of our historical infra baggage, and potentially introduces an additional 
component to the takeover that may not actually be involved otherwise.

Not all plugins use Jira. Not all plugins have components in Jira. Not all 
maintainers are default assignees. The first is mostly maintainers prioritizing 
their own tool preferences over project convention (or having inherited 
something like that), the others are mostly due to badly maintained old Jira 
components. Since there's no syncing/automated cleanup of components (Tyler 
refused to let me continually spam the Jira API), it will likely remain that 
way for a while.

There's simply too much that can go wrong with these assumptions (being able to 
rely on them would be nice, but we simply can't). Additionally, it seems weird 
that the adoption request would be filed in the JENKINS project, when it's more 
an INFRA kind of issue.

I agree with Devin and Oleg that a PR to 
jenkins-infra/repository-permissions-updater should be the entry point and 
reference for any plugin ownership takeover. Without a change there, no 
ownership transfer can actually be complete, so making that the reference, and 
things like default assignee changes and adding commit access secondary, would 
be preferable. It satisfies all the conditions laid out in the motivation with 
fewer of the previously mentioned pitfalls (although a dev list email CC 
maintainers would still be useful to announce the intended change, and increase 
visibility of the request). Even in the case of badly set up Git user names, 
https://jenkins.io/doc/developer/publishing/source-code-hosting/ tells us what 
GitHub users have commit access, which is usually good enough to identify 
maintainer GitHub accounts to ping them. The history of an individual 
permission file already tells the maintainership history of plugins since we 
started with this.

Further feedback:       

- The reasoning seems to ignore that maintainers are to be copied in any emails 
to the dev list. They would receive emails directly. This is far more reliable 
than Jira notifications could ever hope to be, so seems a step backwards.
- We give repo admin access (unless dealing with historical baggage), not just 
write access.
- Batch reassigning issues is something anyone can trivially do in Jira, 
doesn't need to be part of the process (presumably to be done by infra admins).
- Wiki pages don't typically list maintainers, so nothing needs updating there 
(except for the last release's pom.xml metadata via update-center.json, which 
cannot be changed).
- We should just ignore the pom.xml maintainer metadata for being mostly 
useless.
- This process allows bad actors to take control of popular, but badly 
maintained plugins (no more than today, but still). The JEP does not 
acknowledge this issue in the security section.
- Tags exist in Jira as soon as they're entered once, so this probably doesn't 
make the threshold for an infra requirement.

I think this has the potential to be an exemplary process JEP, solving an 
important and currently underspecified problem, but I don't think it's quite 
there yet.

I only read the finished JEP and earlier messages in this thread, so may have 
missed further out of band communication.

-- 
You received this message because you are subscribed to the Google Groups 
"Jenkins Developers" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/jenkinsci-dev/E36E213F-7038-41A9-991A-01C65C0BD4F0%40beckweb.net.
For more options, visit https://groups.google.com/d/optout.

Reply via email to