Last time Kohsuke blocked this question with his veto because jenkinsci 
should be a bazaar model (and everybody should be able to work on any 
plugin). 
What happened since last time when i (and some other persons) tried to 
implement this and remove RW from everyone? 
*Kohsuke, do you publicly approve that jenkins is not the bazaar anymore? *
PS Or JEP now removes King of project position?

Thanks.
On Tuesday, November 28, 2017 at 6:58:53 AM UTC+3, Kohsuke Kawaguchi wrote:
>
> Thanks for driving this. 
>
> If this change inadvertently remove somebody's commit access, presumably 
> we expect people to follow this 
> <https://wiki.jenkins.io/display/JENKINS/Adopt+a+Plugin#AdoptaPlugin-Requestcommitaccess>
>  and 
> mail this list?
>
> On Mon, Nov 27, 2017 at 4:25 PM Daniel Beck <m...@beckweb.net 
> <javascript:>> wrote:
>
>> Hi everyone,
>>
>> For a long time, we didn't really manage GitHub permissions for plugins: 
>> We just added new repos and contributors to the 'Everyone' team, giving 
>> everyone access to everything, and that was it. Contrary to its name, it 
>> doesn't actually include _everyone_, at least not anymore: We've moved away 
>> from adding people to the Everyone team over a year ago. But it still has 
>> hundreds of members, and provides write access to more than 1200 
>> repositories.
>>
>> While contributors are mostly well-behaved, we've occasionally seen PRs 
>> merged by people who weren't regular contributors to those plugins, 
>> resulting in conflict with actual maintainers. Since these users cannot 
>> release the plugins anyway, the benefit of being able to do this is 
>> questionable at best. Not to mention the problem of malicious or accidental 
>> data loss through people force-pushing into Git (this, accidentally, has 
>> happened with dozens -- hundreds? -- of repositories back in 2015, and 
>> caused a considerable mess).
>>
>> I know that quite a few plugin maintainers have long removed the Everyone 
>> team from their plugin repositories to prevent such problems, but the 
>> default is still to add the team to a new plugin repo.
>>
>> Given the size of the Jenkins project, this is untenable. I plan to 
>> remove the Everyone team from all repositories, instead granting direct 
>> access to contributors who previously got their write access from the 
>> Everyone team. This way, we should be able to retain access for those who 
>> legitimately have it, while removing those who have no relationship to any 
>> particular plugin.
>>
>> Right now, I plan to grant direct write access to a plugin to users who:
>>
>> 1. Have write access to a repository through the Everyone team only
>> 2. Are considered 'contributors' by GitHub (meaning they have commits 
>> associated with them in the repo)
>> 3. Have at least 5 'contributions' (~commits in the contributors graph)
>>
>> The first two should be obvious (with the caveat that badly set up GH 
>> accounts -- their commits not associated with the account -- will lose 
>> access). The third is where it gets tricky: Not everyone who contributed to 
>> a repository, and currently has write access to it via 'Everyone' team, 
>> should legitimately have write access to it in the future. Unfortunately, 
>> GitHub makes it impossible to efficiently determine who has performed 
>> various maintainer-specific actions, such as created a release tag, or 
>> merged a pull request -- and these might still miss legitimate 
>> co-maintainers who just don't have direct access.
>>
>> So I will instead use a minimum number (currently 5) of contributions 
>> required for someone to retain access. Once we've drastically limited who 
>> has access to any given repo, we can always fine-tune this later. There 
>> will also be a log of what changed so this can be referenced later in case 
>> of questions related to lost permissions.
>>
>> While this may be a painful change if the above rules get the needed 
>> permissions wrong, it's an important one, and I'm trying to make it as 
>> smooth as possible. Please bring up your concerns and questions in this 
>> thread and I'll do my best to address them.
>>
>> I don't think this is JEPable, as this doesn't actually create a 
>> longer-running process, it's just a one-time legacy permission migration.
>>
>> Daniel
>>
>> --
>> 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 jenkinsci-de...@googlegroups.com <javascript:>.
>> To view this discussion on the web visit 
>> https://groups.google.com/d/msgid/jenkinsci-dev/ABF8E55F-0896-4DD0-AB07-6778F39F5A10%40beckweb.net
>> .
>> For more options, visit https://groups.google.com/d/optout.
>>
> -- 
> Kohsuke Kawaguchi
>

-- 
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 jenkinsci-dev+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/jenkinsci-dev/bd3419ac-7f79-45aa-83c0-d9527cde54af%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to