On Tue, Oct 20, 2015 at 11:47 AM, Adam Miller <maxamillion@fedoraproject.org> wrote:
Hello all,
    I wanted to make a few suggestions/proposals to the Koji project
to get feedback.

First off, I'd like to propose that koji officially move out of
FedoraHosted and into pagure[0] so that people can easily fork, create
topic branches and open pull requests for interactive peer review.

In the event that is acceptable I would also like to propose that all
documentation move out of the Fedora Wiki and move into the koji git
repo itself under the docs directory either formatted as Sphinx[1]
reStructured Text, or markdown[2]. This could either be hosted
directly in pagure.io or in readthedocs.org[3].


​Yes, please! Having the documentation in one central location will make working with it much easier.​

 
>From there I would like to suggest a formal website for koji, maybe
koji.io or similar. I don't really have a preference or suggestion on
the specific url. This website would be a simple landing page for all
information that someone interested in Koji would be looking for. It
would briefly explain what koji is, provide references on how to use
it, deploy it, how to administer it, and how get involved in
development of it. My idea is that the website itself would be a
static site that is generated using something like pelican[4] or
nikola[5], the source code for the site would also live in koji's git
repository such that all content would be in a central location and
could even be shared between the site and docs where appropriate. We
could later get clever and have the website be updated automatically
when a pull request gets merged that updates it's content, but I don't
want to get ahead of myself.

​This sounds good. It would also be awesome if there were some "quick testing/deployment" images that could be used for people to try out Koji locally, along the lines of how the Open Build Service advertises itself[0]. It might even be worth it to have Koji itself construct these images as a demonstration of its abilities (just like how OBS does it for their appliance images).​ 
 

In the event that is acceptable, I would also like to propose a
"recommended developer workflow" and introduce the use of the tito[6]
utility for koji to assist in both the release tasks but also for
iterative development and/or eventual CI without giving up the
standard rpm install process. I have started mocking up what I think
would be a good starting place for a workflow, it's currently a work
in progress and doesn't actually function as described for reasons I
don't yet know (koji-hub and I are fighting with the database) but
before chewing up more time working on it I wanted to make sure that
this is even something that the group at large is open to.

    https://github.com/maxamillion/koji-dev

Eventually if this developer workflow (or really any documented
developer workflow) was deemed as "recommended" by the group, I would
like to also have it live within the koji git repository such that it
can be a part of the official documentation for new  and potential
contributors on how to get started working with koji development and
be highlighted on the (new) proposed website.

This is effectively a multi-part "step 1", as I would like to build on
top of this and move towards having CI for the project but getting
things in a place where we can easily facilitate iterative developer
workflows is something that I consider as a prerequisite.


​The Koschei service should probably also be moved into the Koji project, as it's really the CI component for Koji. So I would imagine that your workflow stuff needs to cover the setup and integration of Koschei with Koji.​

 
I'm definitely looking forward to feedback, thanks for reading this far :)

​No problem. :)
 

-AdamM

[0] - https://pagure.io/
[1] - http://sphinx-doc.org/
[2] - https://en.wikipedia.org/wiki/Markdown
[3] - https://readthedocs.org/
[4] - http://blog.getpelican.com/
[5] - https://getnikola.com/
[6] - https://github.com/dgoodwin/tito




--
真実はいつも一つ!/ Always, there's only one truth!