On Mon, 3 Oct 2016 14:35:00 -0600
Kevin Fenzi <ke...@scrye.com> wrote:

> On Mon, 3 Oct 2016 13:50:33 -0600
> Tim Flink <tfl...@redhat.com> wrote:
> 
> > One of the features for Taskotron that we've been planning since the
> > beginning was a way for contributors to maintain their own automated
> > tasks/tests which would be run during a package's lifecycle.
> > 
> > I'm happy to say that we're almost to this milestone and wanted to
> > get some feedback from devel@ on the specifics of what we're
> > planning WRT where these automated tasks will be stored and the
> > execution modes that we're planning to support. Our current plan is
> > written up at:
> > 
> > https://phab.qadevel.cloud.fedoraproject.org/w/taskotron/new_distgit_task_storage_proposal/
> > 
> > The hope is that by making it easier for contributors to write
> > automated tasks and making the model completely self-service and
> > convention drive, there will be a lot more automated checks for
> > packages than we currently have for Fedora.
> > 
> > Please read through the wiki page I mentioned above and give us
> > feedback on whether what we're planning to implement is going to be
> > useful or if there are areas of the plan which could be improved.  
> 
> To clarify at the top you have "Seeing as dist-git will be moving to
> pagure before long", the plan there is not to move dist-git, but to
> add a partial pagure instance in front of it. This would have issues,
> permissions, docs, etc all disabled and would basically just be a way
> to add a PR workflow. The existing dist-git setup would be still there
> exactly the same. 

Thanks for the clarification - the emphasis was on coming support for
PRs. I've reworded that part of the proposal to make it more clear that
dist-git isn't "moving to pagure".

> Another alternate here is that we could make taskotron a 'namespace'
> like currently rpms/ and docker/ are. Then we would have
> perhaps: /taskotron/rpms/foobar/ as the top level and all the rest is
> the same. This would get us a seperate pkgdb entry for the taskotron
> part of things (ie, it could have different maintainers, people
> allowed to commit, etc). That would add to complexity however. 

That is an alternative that we had been looking at before we learned
that dist-git would be getting pull requests. The namespace we were
talking about was 'checks/rpms/foobar' which would also open the door
for things like 'checks/docker/foobar' or any other type of deliverable
which uses dist-git.

Our thought is that keeping all the checks in the same repo that spec
files live in is going to be easier to use than having to worry about
keeping 2 repos in sync with eachother.

That being said, we're fine with either storage paradigm and it doesn't
matter much if we look for tasks in a directory inside dist-git
branches or a separate repo which only holds tasks as long as there is
a single convention that is easy for most contributors and doesn't
involve something that's unmanageable for the Taskotron devs/admins.

> Is there any provision for tests that should be run on _all_
> packages? or we would need to link the test into all repos, etc?
> I have in mind a test that would get the checksum from the sources
> file and see if it could compare it to upstream. 

At this point, that's pretty much "come talk to us and we'll get
something figured out". I suspect that things which run on all
builds/uploads are going to be the minority of tasks that people want
to run and for now, it's treated as a special case.

So, if you have ideas for checks that would run on all packages or on
groups of packages, please come find us. If I'm wrong and there are a
lot of more general checks that people want to run, we can speed up
plans to make them less of a special case.

> Finally, are the lifecycle points triggered via fedmsg? If so, it
> would be nice to have a UPLOAD lifecycle where someone has uploaded a
> source to lookaside cache. (The above test would probibly be better
> at upload time than sources git commit time, but either could work). 

Everything that runs in Taskotron is triggered via fedmsg so we can add
pretty much anything which emits a fedmsg.

In this context, there are only so many things which make sense to have
in dist-git but that doesn't mean it can't be run.

I've started an explicit list of the lifecycle points that we'll be
supporting for the tasks stored in dist-git.

https://phab.qadevel.cloud.fedoraproject.org/T721


> Thanks for working on all this. It's awesome to see it start to come
> to fruition!

This has been a wishlist item for as long as I can remember. It'll be
great to start new kinds of automation and help make Fedora better :)

Tim

Attachment: pgpqQaBUF6fUW.pgp
Description: OpenPGP digital signature

_______________________________________________
devel mailing list -- devel@lists.fedoraproject.org
To unsubscribe send an email to devel-le...@lists.fedoraproject.org

Reply via email to