20/3/30 08:40(e)an, James Cassell igorleak idatzi zuen:
> 
> On Sun, Mar 29, 2020, at 11:47 PM, Neal Gompa wrote:
>> On Sat, Mar 28, 2020 at 4:12 PM Aoife Moloney <amolo...@redhat.com> wrote:
>>>
>>> ### Other Updates
>>>
>>> #### GitForge Decision
>>> * After evaluating over 300 user stories from multiple stakeholders we
>>> have aligned on a decision for the Gitforge that CPE will operate for
>>> the coming years. We are opting for Gitlab for our dist git and
>>> project hosting and will continue to run pagure.io with community
>>> assistance.
>>>     * Check out our GitForge decision on the Fedora Community blog
>>> https://communityblog.fedoraproject.org/
>>>     * And at the CentOS blog page
>>> https://blog.centos.org/2020/03/git-forge-decision/
>>> * Keep an eye out for mails in the coming months to the devel lists as
>>> we plan transitions and next steps with GitLab
>>> * We would like to express our sincere thank you to all who
>>> contributed requirements to us!
>>>
>>>
>>
>> I'm going to start with the delivery of this decision sucked. If I
>> hadn't been alerted to look for this by other folks due to my advocacy
>> and community building work around Pagure, I would *not* have known
>> that the decision had been made. This is in contrast to the *big deal*
>> that was made about starting this "decision process". I don't know if
> 
> Indeed, it seems like the lead got buried. I, too, had missed the 
> announcement. I guess I'll make more effort to read these weekly status 
> updates.

From the original blow post:
https://communityblog.fedoraproject.org/git-forge-requirements/

> How will information be gathered and disseminated?
>
> It is recommended that both Fedora Council and CentOS Board gather
input and present their concerns in a manner that is consistent with how
their communities work. The RHEL and CPE requirements will be gathered
through Red Hat communication mechanisms and presented publicly via a
HackMD file to ensure transparency in their source. This will be
published and distributed in due course. Additionally, a live video call
and associated IRC meetings will be held and advertised in advance to
discuss the requirements, talk about concerns and address any questions.
> We want transparency to be at the heart of this decision.

Good promise, where are all those? No discussion, no advances, no proper
information dissemination, nothing :(


This announcement is not even on the first position on communityblog. I
was expecting at least the same announcement visibility level for the
final announcement that we had for the initial one: first position on
communityblog blog + exclusive threads on the mailing lists.

Well, actually I was waiting for those live discussions

> 
>> there were folks counting on nobody noticing this or not, but this is
>> not a good way to deliver effectively a major decision like this. I
>> also absolutely *refuse* to deal with the fact that this thread was
>> split into three mailing lists. All three are connected to this
>> thread, and I will take responses from all of them and follow them
>> accordingly.
>>
>> Enough about that, let's talk about the actual decision.
> 
> Thanks for your comprehensive response here and for all the work you've done 
> to drive Pagure forward.
> 
> V/r,
> James Cassell
> 
> 
>>
>> So, you're going with GitLab. It's interesting to note that the
>> particulars about going to GitLab are not even figured out. It is
>> curious that "SAAS" is mentioned very prominently. That made me a bit
>> more curious, so I looked at the "final" feature requirements.
>> Needless to say, I was extremely disappointed.
>>
>> To put it bluntly, there are *zero* free and open source solutions
>> that satisfy your needs. From this, I understood why you said GitLab
>> and SaaS. You want GitLab Ultimate, the proprietary solution that
>> includes several extra features on top to satisfy the following
>> requirements (quoted from your blog post):
>>
>>> * There is a need for CentOS Stream to integrate with a kernel workflow 
>>> that is an automated bot driven merging solution (merge trains). This 
>>> allows for richer CI capabilities and minimizes the need for human 
>>> interaction
>>> * Gitlab allows for project planning capability which could make multiple 
>>> trackers such as Taiga redundant, allowing for the planning and tracking to 
>>> reside within the repo. It would enrich the current ticket based solution 
>>> that Pagure has evolved into for some groups
>>
>> These two requirements *alone* automatically force us to GitLab
>> Enterprise Ultimate Edition, as there is no other solution available
>> that satisfies those requirements in one product. Merge trains *is* a
>> feature of Pagure when combined with Zuul, but GitLab's project
>> planning features do not exist in *any* FOSS product, including GitLab
>> CE (or GitLab Core as they call it now).
>>
>> There are mentions of other work that CPE team wants to do to better
>> improve Fedora. Okay, sure. I even agree with some of them. And the
>> time bomb that is FAS is definitely worth the attention (note that I
>> am somewhat involved in the development of the Fedora AAA solution and
>> am also working on trying to develop a community around it so it
>> doesn't implode like virtually every other project under the Fedora
>> umbrella, more on *that* a bit later).
>>
>> However, nobody has given me or anyone else in the Pagure community
>> (which yes, is more than Pierre-Yves, thank you very much!) any
>> concrete details of deficiencies they'd see that is not satisfiable by
>> the community within a year before now. I've spent a little over a day
>> analyzing the user stories and thinking about the gaps between Pagure
>> and what the community wants, and I want to give some perspective here
>> for some of these. I'm happy to accept refutations and other details
>> to further enhance the color of these stories, of course.
>>
>>> 5
>>> As a RH Developer
>>> I need the ability to privately comment on a PR
>>> so that confidential information does not leak outside Red Hat
>>
>> Ignoring the mountainous levels of terrible problems that such a
>> feature causes us *now* in the Red Hat Bugzilla, Pierre-Yves and I
>> were literally discussing this with a Mageian who was interested in
>> this feature for Pagure weeks ago. We had identified the feature as
>> not difficult to implement but also simultaneously nobody really
>> *wanted it now*. It surprises me that this is something that should be
>> considered an important feature to preserve. It's actually a very
>> *rare* feature, and does not exist in any forge today, presumably
>> because it's actually a horrifically bad idea and antithetical to open
>> development. GitLab itself lacks this feature, in all variants.
>>
>>> 16
>>> As a general user
>>> I want to be able to create a bot/service account
>>> That integrates with the gitforge in the same way as a human does
>>
>> This is a nice ask, but it's not a reasonably easy one to implement
>> with our current system. This is a problem I've struggled with at
>> $DAYJOB with GitLab as well, and frankly, if you have account
>> integration with a single-sign-on system (which virtually all
>> large-scale Git forge instances do), you can't really easily have this
>> without causing major problems. Not the least of which is how you
>> resolve account namespace collisions. There are also problems with
>> maintaining and auditing, too. But it's certainly something I'd like
>> to see in any forge (note that none implement this today either).
>>
>>> 29
>>> As a General User
>>> I want to access repos fully over https
>>> For environments where SSH is blocked
>>
>> I would be really curious if the Red Hat Infrastructure Security guys
>> have changed their opinion on this after four years of blocking the
>> development of this feature in Pagure. The two major reasons we don't
>> have this in Pagure are:
>>
>> * There is a very strong push to not provide a way to bypass the SSO
>> (ignoring the fact that SSH keys are effectively a bypass, but most
>> security people are two-faced about this anyway)
>> * There is a very strong push to not provide LDAP integration so that
>> the required HTTP(S) Git proxy server would not be able to be
>> implemented.
>>
>> Note that for GitLab, unless you configure it to have access to LDAP
>> or set up personal access tokens, you cannot use HTTP(S) push at all.
>> Once again, this totally bypasses SSO. If the same rules that applied
>> to Pagure apply to GitLab, nobody is getting this feature anytime soon
>> with GitLab. If the attitude toward this feature has finally changed,
>> I'd love to know.
>>
>> Also, for those who don't know, Fedora's Dist-Git supports HTTPS push,
>> and has for almost a year:
>> https://fedoraproject.org/wiki/Infrastructure/HTTPS-commits
>>
>> This is done by *forcing* an SSO flow for *fedpkg* itself and
>> leveraging it as a credential and auth point. Unfortunately, this is
>> not a general purpose feature because there's not an easy way to do
>> that, so it's unavailable on pagure.io at this time. This mechanism
>> for HTTP push is *not* possible with GitLab, and would be quite
>> difficult to implement due to the crazy architecture internally. But
>> if more *normal* HTTPS is acceptable (like through auth tokens or LDAP
>> auth), then this is something that could be relatively quickly added
>> to Pagure (there was some old code that never got merged two years
>> ago, I still have it archived somewhere...).
>>
>>> 31
>>> As a General User
>>> I can request access rights to a repository
>>> So that I can contribute in a low friction manner
>>
>> I honestly don't know entirely what this means. Are we talking about
>> having partial commit access (commit access to only some branches)? If
>> so, there's a PR out for implementing this in Pagure under review:
>> https://pagure.io/pagure/pull-request/4786
>>
>>
>>> 34
>>> As a General User
>>> I want a mobile native app
>>> To allow me contribute while away from my desk
>>
>> I don't have words for this... You folks know that only GitHub.com has
>> an official mobile app, right? And the experience is not great...
>> 🤦‍♂️
>>
>>> 42
>>> As a General User
>>> want a GUI to interface with the system as well as a CLI
>>> so new users have an easier way to interface with it
>>
>> I'd like to point out that most popular GUIs for Git stuff are not
>> forge specific and do not even do much for forge integration. But
>> sure...?
>>
>>> 44
>>> As a General User
>>> I want a temporary file (gist)
>>> So that I can share code easily
>>
>> There seems to be a misunderstanding here... Gists are not temporary.
>> They're lightweight *permanent* Git repos (in GitHub). GitLab stores
>> them (called Snippets) as permanent things in the database (not a Git
>> repo). Are you trying to conflate pastebin use-cases here? That's
>> probably a very bad idea...
>>
>>> 46
>>> As a General User
>>> I want to be notified of CVEs in my code
>>> so that I can stay on top of critical vulnerabilities
>>
>> There are *zero* FOSS solutions for this in the forge space. This
>> feature does *not* exist below GitLab Ultimate (the former Gemnasium
>> service was integrated into it).
>>
>>> 47
>>> As a General User
>>> I want integrated keyword support
>>> to allow me automate a lot of my actions such as a rebuild / retest
>>
>> This is not a forge feature, this is a CI service feature. And note,
>> GitLab CI does not support this.
>>
>>> 49
>>> As a General User
>>> I want to gain analytics and insights from my code
>>> so that I can have historic context to make decisions moving forward
>>
>> GitLab Enterprise features...
>>
>>> 51
>>> As a General User
>>> I would like to track my work in an Agile manner
>>> allowing me centralise all my planning in my forge and gain insights into 
>>> how I am working.
>>
>> GitLab Enterprise features, as mentioned earlier.
>>
>>> 56
>>> As a General User
>>> I want registry integration
>>> so that I can store dependencies
>>
>> No, you don't. You *really* don't want this. Are you *sure* you know
>> what you're asking for? You're suggesting three things here:
>>
>> * OSS solutions for this (including Fedora's own package/container
>> infrastructure and hosted quay.io) are not good enough
>> * You are ready to have even more arbitrary data stored in the Git
>> system that may not follow our legal compliance
>> * You are willing to pay the cost of having even more data stored
>>
>>> 57
>>> As a General User
>>> I want the ability to have a private branch
>>> So that I do not need to leave the code tree I am already in
>>
>> Just so everyone is *crystal clear*: you literally cannot do this. Git
>> does not have a concept of private branches or private refs within a
>> repository. You can have private forks, of course. And Pagure supports
>> those just fine, just like GitLab and GitHub do.
>>
>> (also note, we *intentionally* do not have private repos turned on...
>> if we want this, we could just flip a switch...)
>>
>>> 62
>>> As a General User
>>> I want automerges when specific acceptance criteria are met
>>> So that I do not need manual intervention
>>
>> So... Mergify then? This is not *currently* a GitLab feature, and
>> Mergify does not support GitLab, last I checked. Only GitHub.com. It's
>> been on my bucket for a while to look at extending Mergify to support
>> Pagure for this, as it's a really nice feature...
>>
>> I want to take a moment to reflect on something that has been on my
>> mind for a while now: Fedora has not done a good job being an umbrella
>> organization. As an organization, we have done a huge disservice to
>> all Fedora-affiliated projects by not allocating any community
>> development effort or marketing effort. I know that Matthew Miller
>> feels Fedora should evolve to being an operating systems factory[1]
>> and to some extent that isn't a bad thought. But the Fedora Project
>> was always intended to be more than just the Fedora Linux
>> distribution. It has always been intended to be a home for Free and
>> Open Source innovation. In a Hacker News thread last year[2], I had
>> reflected on how proud I have been to be part of Fedora because we, as
>> a community, weren't willing to just give up like so many others do.
>> When FOSS solutions were inadequate, we built better ones. We've
>> invented things that didn't exist before, and jump-started
>> conversations about concepts that people didn't think of before. But
>> there has been a bit of a dark side to this for Fedora. We've rarely
>> given our projects an opportunity to grow beyond us. Off the top of my
>> head, the *only* project that technically *started* in Fedora and
>> became successful was Ansible. And if I'm being totally brutally
>> honest, it was only successful because the engineers who were
>> passionate about it had to quit Red Hat and create AnsibleWorks to
>> push it to success. It was successful *despite* Fedora. Maybe soon
>> we'll be able to add HyperKitty and Postorius to that, as I've been
>> seeing deployments of that come online over the past few months. It's
>> taken a while, but HyperKitty is finally taking off. There was one
>> person I talked to who told me that HyperKitty made mailing lists
>> enjoyable and she didn't know the project came from Fedora originally.
>> Again, seeing success despite Fedora.
>>
>> When I talk to folks in other communities and show them some of the
>> infrastructure projects we've developed as part of trying to build
>> communities around them, I've literally had people tell me that they
>> wish they had known we made them before, because it solved all their
>> problems they were struggling with. That's both amazingly uplifting
>> and terribly depressing at the same time. I'm not even putting in a
>> lot of effort and we get so much more out of it. It didn't take a lot
>> for me to get openSUSE interested in our new AAA solution and
>> contributing. That tells me that we're just not trying. And really,
>> that's obvious. Even a simple comparison of the Fedora and openSUSE
>> project landing pages show that Fedora gives zero attention to the
>> projects that exist under its umbrella. When you look at the openSUSE
>> landing page, the distribution and major software projects under the
>> umbrella are all broadcasted there. It makes it so much easier to
>> discover and generate interest. I'm not saying I love every aspect of
>> the openSUSE marketing. Far from it! But this is one thing they do
>> right that we do terribly wrong. And then we sit back and wonder why
>> our projects fail to generate interest beyond a few folks in Fedora
>> itself. It's a self-fulfilling prophecy. This is something we need to
>> fix for *all* our projects: present and future.
>>
>> In the end, I think the biggest disappointment of this process is that
>> it feels like it demonstrates that Fedora leadership and management is
>> not as committed to its mission and vision[3] as I hoped it was. I
>> realize that I should not be surprised by this. Most of the leadership
>> and management are no longer the idealistic people they were when they
>> first became involved. And it's even harder to be idealistic when it's
>> so easy to give in when you work for "open source company" that
>> increasingly uses proprietary software to manage its workflow (to be
>> fair, I think at this point virtually all major companies do this,
>> which more or less demonstrates the amoral nature of these entities).
>> Maybe I'm just an old remnant of a bygone era, but I personally remain
>> somewhat idealistic, even as I have progressed over the years. I also
>> remain hopeful that other members of the community are of similar
>> mind. And perhaps this is a bit of a fool's hope, but I hope the CPE
>> team reconsiders their decision, or at least would be willing to
>> provide more context on the gaps they felt pushed them over so they
>> could be prioritized for Pagure development (and maybe we can develop
>> them fast enough so that we don't have to switch...).
>>
>> I think this is also an important indicator that Open Source has *not*
>> won and it is *not* the default. People who keep saying otherwise need
>> to seriously look hard at the landscape and realize that we have a
>> long way to go before Open Source becomes the true default. It
>> behooves us to become cognizant of this and push for freedom whenever
>> and wherever we can.
>>
>> As for me? Well, I will do my best to try to help develop the Pagure
>> community. I'm still committed to assisting the Free Software
>> Foundation and other communities with using and contributing to
>> Pagure. I hope others within the community will consider helping too.
>> Pagure provides unique features that do not exist in any other forge,
>> in large part because it is driven by an ideal that open data and
>> freedom should be core tenants of software project management. And
>> hey, I hear whispers of new Pagure instances being set up all the
>> time! We're doing something right here, and it'd be a shame to
>> squander it.
>>
>> Heh, the irony is that I started using and contributing to Pagure
>> *because* I was burned by GitLab...
>>
>>
>> [1]: 
>> https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org/thread/ZBU4MYRMMAE2Z7DL4NPPECTMX2FBQAVL/
>> [2]: https://news.ycombinator.com/item?id=19356307
>> [3]: https://docs.fedoraproject.org/en-US/project/
>>
> _______________________________________________
> devel mailing list -- devel@lists.fedoraproject.org
> To unsubscribe send an email to devel-le...@lists.fedoraproject.org
> Fedora Code of Conduct: 
> https://docs.fedoraproject.org/en-US/project/code-of-conduct/
> List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
> List Archives: 
> https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org
> 

-- 
Julen Landa Alustiza <jla...@fedoraproject.org>
_______________________________________________
devel mailing list -- devel@lists.fedoraproject.org
To unsubscribe send an email to devel-le...@lists.fedoraproject.org
Fedora Code of Conduct: 
https://docs.fedoraproject.org/en-US/project/code-of-conduct/
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: 
https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org

Reply via email to