On Wed, 13 Jan 2021 at 18:53, Adam Williamson <adamw...@fedoraproject.org>
wrote:

> Hi folks!
>
> Before the RH holiday shutdown, I started a new project designed to
> address a long-standing pain point in Fedora: we don't really have a
> good source of truth for release cycle information. I'm thinking of
> situations where something:
>
> * Needs to know what the "current stable" Fedora release(s) are
> * Needs to know if Fedora X is Branched
> * Needs to know whether Fedora X Beta happened yet
> * Needs to know whether Fedora X is frozen
>
> ...etc etc etc. Some of this information is available...sort of...from
> various different systems, with various awkward caveats that I won't
> dive into unless someone asks. But there isn't really a single source
> of truth for it, and some of it just isn't really available in any
> easily machine-consumable way.
>
> So I wrote releasestream:
> https://pagure.io/fedora-qa/releasestream
>
> releasestream is intended to be a system that will let us do this. It
> is a very very simple webapp with three capabilities:
>
> * It can read a simple record ("stream") of "release events" for a
> "release" and produce several static JSON representations of the
> information
> * It can write an entry to one of these streams in response to a
> properly-formatted POST request
> * It can publish a message when a new entry is received
>
> that is all it does. The "releases" and "events" are entirely
> arbitrary; a "release" can be any string, and so can the "state" for a
> given "event". An "event" is defined as a state being either reached or
> left; any number of events for the same state can be present for a
> release.
>
> The JSON outputs are basically "states by release" and "releases by
> state", as you might want either depending on what you're doing. You
> can conveniently look up "what releases are currently in state X?" or
> "what states is release X currently in?".
>
> This all works right now; the main thing that isn't implemented yet is
> any form of authentication. Right now if you can talk to the server you
> can submit events. I wanted to check if there is interest in moving
> forward with this, and discuss various options, before working on that.
> There is a ticket where I sketched out various possible approaches:
> https://pagure.io/fedora-qa/releasestream/issue/2
>
> My idea for using this is basically that we deploy an 'official'
> releasestream instance in infra, and then find things that do the
> actual work of moving Fedora releases into and out of given "states"
> and tack on a bit at the end to tell releasestream about it. So when
> e.g. Mohan is putting Fedora 34 into the Beta freeze, we would add a
> "submit 'enter freeze' event to releasestream" to that process somehow
> - ideally something that has to be run as part of the process anyway
> would send the POST, but in a pinch a human could do it too. When
> Fedora 34 is being 'released', we tweak that process to include sending
> a releasestream event POST. And so on.
>
> The thing I like about this design is that there's a low barrier to
> entry, and can easily be adopted piecemeal but still be immediately
> useful for some things - as long as the event your code needs to watch
> for has been "onboarded", you're good. It also allows for the
> implementation details of a state change to change radically - it can
> go from being done by a human to being done by system X to being done
> by system Y, and all that needs to happen is to ensure the same dead
> simple POST request is sent to the same server.
>
> So, what do folks think? Does this seem like a good idea? Should I go
> ahead with trying to get it deployed and onboard things to it? Any
> comments, ideas, potential problems? Thanks!
>


I am pretty sure you did :-) but have you looked at adding the missing
information to Bodhi ? Now that we have rawhide in Bodhi we should be able
to expose most the information needed.



> --
> Adam Williamson
> Fedora QA
> IRC: adamw | Twitter: adamw_ha
> https://www.happyassassin.net
>
>
> _______________________________________________
> rel-eng mailing list -- rel-...@lists.fedoraproject.org
> To unsubscribe send an email to rel-eng-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/rel-...@lists.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
Do not reply to spam on the list, report it: 
https://pagure.io/fedora-infrastructure

Reply via email to