Gentoo Archives: gentoo-dev

From: "Michał Górny" <mgorny@g.o>
To: gentoo-dev@l.g.o
Subject: Re: [gentoo-dev] [RFC] Services and software which is critical for Gentoo should be developed/run in Gentoo namespace
Date: Sun, 13 Sep 2020 20:38:10
Message-Id: af628166c98db46ee818a0561712aa86bf7b01c2.camel@gentoo.org
In Reply to: [gentoo-dev] [RFC] Services and software which is critical for Gentoo should be developed/run in Gentoo namespace by Thomas Deutschmann
1 On Sun, 2020-09-13 at 20:31 +0200, Thomas Deutschmann wrote:
2 > You maybe all remember what happened to stable-bot: Years ago,
3 > kensington created stable-bot on his own as PoC which revolutionized the
4 > way how we do package stabilization in bugzilla. The service run on his
5 > own infrastructure. Because of the benefit of the service the bot
6 > provided, arch team’s workflow became dependent on stable-bot. We were
7 > lucky that stable-bot just worked most of the time until the service was
8 > down for a while. Nobody was able to help here: Kensigton himself was
9 > unavailable, nobody had the sources… the end of the story: mgorny
10 > created nattka which replaced stable-bot.
11 >
12 > However, we are still facing the same problem:
13
14 No, we're not. Don't you see the huge difference between proprietary
15 closed-source software and free software?
16
17 > Only one person is involved in development
18
19 How is that a problem? It is quite normal that simple tools are
20 developed primarily by one person, and nattka is not exactly rocket
21 science. That said, nobody is stopping others from working on it, there
22 are surely some improvements to be done.
23
24 > and knows how to run it.
25
26 Everything is documented and fully contained in puppet. Deploying it to
27 new server is as trivial as enabling it on host in question.
28
29 > In case something will
30 > break again and Michał will be unavailable, we can’t just push a fix and
31 > watch a CI pipeline picking up and deploying new nattka.
32
33 Who is 'we' here? Our Infra does not use 'CI pipelines', it uses Gentoo
34 packages. Deploying a new version means bumping the package, waiting
35 for rsync to distribute it (meh!) and telling puppet to upgrade. No
36 buzz words involved, sorry.
37
38 > Instead someone will have to fork repository from Michał’s private
39 > repository at GitHub, make the changes
40
41 It's not private, it's public. And to be honest, forking it on GitHub
42 will certainly take less time and effort than dealing with
43 git.gentoo.org (which needs to happen via Infra).
44
45 > and hope that anyone within infrastructure team can
46 > help to deploy fixed nattka.
47
48 Are you suggesting there is a problem with Gentoo Infrastructure?
49 I really don't see where this is going. You're concerned that Infra
50 can't handle it, yet you actually ask to make it more reliant
51 on Infra...
52
53 > This is what the motion is about: This is not about that Gentoo depends
54 > on single persons or things like that. It’s about the idea to
55 > *formalize* the requirement that any service and software which is
56 > critical for Gentoo (think about pkgcore) should live within Gentoo
57 > namespace (https://gitweb.gentoo.org/), i.e. be accessible for *any*
58 > Gentoo developer and deployments should be based on these repositories.
59
60 You should weigh your words more carefully. Otherwise, we're going to
61 end up forking the whole base-system, kernel...
62
63 > Or in other words: Make sure that we adhere to social contract even for
64 > critical software and services Gentoo depends on. So that we will never
65 > ever face the situation that something we depend on doesn’t work
66 > anymore.
67
68 I fail to see how this is going to actually accomplish the goal. Having
69 a different pipeline for committing does not make stuff not break, nor
70 makes it more likely for people to fix it. In fact, I dare say having
71 nattka on GitHub increases the chances of someone (esp. non-developer)
72 submitting a fix, compared to obscure git.gentoo.org with no clear
73 contribution pipeline.
74
75 > Taking care of working pipelines before something is broken
76 > should also help us in case something stops working so we don’t have to
77 > figure out how to fix and re-deploy when house is already burning (like
78 > portage: In case Zac can't do a release for some reason, in theory,
79 > every Gentoo developer would be able to roll a new release).
80
81 Please tell me how rolling a new release of nattka is exactly harder
82 than rolling a release of Portage? I'm pretty sure most of Gentoo
83 developers can figure out how to use GitHub, how to fork a repository,
84 and if they use Python they can probably deal with pretty standard
85 setup.py. Deployment can't be done without Infra's help anyway.
86
87 --
88 Best regards,
89 Michał Górny

Attachments

File name MIME type
signature.asc application/pgp-signature