Re: The future of loopabull

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu, May 28, 2020 at 02:18:38PM +0200, Pierre-Yves Chibon wrote:
> Good Morning Everyone,
> 
> I know this question has already been raised a few times, but I think we should
> raise it once more: what do we see as future for loopabull?
> 
> It is currently triggered on 4 topics (3 from prod and 1 from stg) to do basically
> three actions:
> - Flag commit successfully built in koji, in other words it adds these flags
>   to dist-git:
>   https://src.fedoraproject.org/rpms/mingw-filesystem/c/717f2a929bd25b62a0427e8e5c3792a0939dbfce
> - Flag when the Fedora CI start testing a PR
> - Flag when the Fedora CI finished testing a PR (and thus reports Pass/Fail)
> 
> Upstream released yesterday a 0.0.7 release which brings supports for
> fedora-messaging (contributed by your servitor).
> Looking at the code, it should be python3 compatible, but it doesn't say
> specifically in the setup.py and I honestly don't remember if I've tested that
> or not.
> The package has been orphaned in Fedora for over 10 months and has thus been
> retired.
> 
> I've had a chat with upstream yesterday and they are still interested in the
> project but more as a pet project and their time is just like the rest of us,
> limited for pet projects these days.
> That being said the code base is really quite small and involves technologies
> we're already using in other places (python-pika, celery, rabbitmq, ansible...)
> so there isn't really anything new there.
> 
> One of its limitation currently is with secrets, how to pass/specify them.
> This is something we could circumvent via ansible-vault or so, but it needs a
> little investigation.
> 
> I basically see three ways forward with this:
> - We continue with loopabull and we need to check its python3 support, how to
>   deal with secrets, if we can get it to run in openshift & so on.
> - We look for something else, similar. The requirements being:
>   - Run a task when seeing a message in our message bus
>   - Handle secrets
>   - Scalable up/down
>   - Runnable in openshift is a bonus
>   - Preferably in a language we can debug (python++, potentially rust)
> - We write something that fits our needs and requirements
> 
> 
> Would you know something that fits our requirements and that we could just run?
> If not, do you have a preferred way between options #1 and #3?

So I took a few hours and started poking at this. I've ended up with:
https://pagure.io/fedora-infra/toddlers (a bunch of small programs running
around: toddlers :))

It's basically, one fedora-messaging consumer and plugins.

Some of its advantages:
- We can run it in openshift easily and we should be able to scale it
  up/down as needed
- Managing secrets is just like managing secrets for all our apps in openshift.
- Relies on our main rabbitmq server and thus has monitoring (while loopabull
  ran its own, which granted we could monitor but that's something we've not
  done while we have this in place for our main cluster and easily
  configurable via ansible).

I would still like to add some unit-tests for this but from empirical testing
(ie: running it locally) it is doing what it should be doing and the two/three
tasks loopabull have already been ported.


Let me know what you think of it! :)

Pierre
_______________________________________________
infrastructure mailing list -- infrastructure@xxxxxxxxxxxxxxxxxxxxxxx
To unsubscribe send an email to infrastructure-leave@xxxxxxxxxxxxxxxxxxxxxxx
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/infrastructure@xxxxxxxxxxxxxxxxxxxxxxx




[Index of Archives]     [Fedora Development]     [Fedora Users]     [Fedora Desktop]     [Fedora SELinux]     [Yosemite News]     [KDE Users]

  Powered by Linux