1 |
On Thu, Nov 3, 2016 at 5:17 PM, William L. Thomson Jr. |
2 |
<wlt-ml@××××××.com> wrote: |
3 |
> On Thursday, November 3, 2016 1:14:20 PM EDT Rich Freeman wrote: |
4 |
>> |
5 |
>> ATs aren't developers, so they can't do commits. The commits were |
6 |
>> done by developers who were part of the arch project. |
7 |
> |
8 |
> I think that is going a bit far. I would say an arch tester can be a developer |
9 |
> or contributor, with regard to the tester. When the tester is a developer, |
10 |
> member of said arch team, they after testing mark it stable for given arch, |
11 |
> and update bug. |
12 |
|
13 |
Just to clarify, I was trying to indicate how the term "AT" was used |
14 |
in the past. I wasn't suggesting that we should have some kind of |
15 |
two-stage workflow. |
16 |
|
17 |
In the past developers certainly tested and stabilized packages |
18 |
directly. However, when they did this they were never referred to as |
19 |
"ATs," but simply as developers. I certainly support allowing |
20 |
developers to continue to do this. |
21 |
|
22 |
The purpose of ATs was to be able to allow contributors to be able to |
23 |
do the heavy lifting (the testing, etc) and then just have a developer |
24 |
do the commit. The latter is really just overhead because we don't |
25 |
have an easy way to make it possible for a contributor to directly |
26 |
stabilize things without giving them access to do a lot of other |
27 |
stuff. If we could have a really light qualification process to allow |
28 |
volunteers to test and stabilize packages without any developer |
29 |
involvement I'd be all for it, as this is fairly low risk. |
30 |
|
31 |
If I wanted to outline an ideal stable workflow managed by some kind |
32 |
of tracker it would work like this: |
33 |
1. Packages get identified for potential stabilization. This could |
34 |
be based on time-based policies, user submissions, etc. |
35 |
2. CI screens all stable requests and files bugs for repoman issues |
36 |
and so on, before a human looks at them. It could also do a build |
37 |
test. |
38 |
3. Maintainers get the ability to screen these stable requests. This |
39 |
could be via an approval process with a deadline, or by being able to |
40 |
set per-package policy (please stabilize one package in this version |
41 |
range every three months), etc. |
42 |
4. Packages that pass the screen go into queues for each arch. The |
43 |
queue is dependency aware and marks things as blockers/etc as needed |
44 |
to try to maximize the impact of each stabilization. The system |
45 |
blocks stabilizing things out of order/etc. |
46 |
5. An arch tester (a trained volunteer, but with focused training on |
47 |
the task) evaluates the package, and can file a bug directly from the |
48 |
tool, or mark it stable. No need to look for repoman issues because |
49 |
that was done in #2. The focus is on whether it builds and runs |
50 |
correctly. Ideally there would be some kind of command line tool to |
51 |
facilitate emerging the package. |
52 |
6. If it passes the tool commits the change. This could be batched |
53 |
to reduce git push volume. |
54 |
|
55 |
-- |
56 |
Rich |