release-bot icon indicating copy to clipboard operation
release-bot copied to clipboard

Add support for pagure.io

Open TomasTomecek opened this issue 5 years ago • 4 comments

Requires #190

Right now we only support Github. In Fedora land, a lot of projects use pagure.io, let's add support for it!

TODO

  • [ ] listen to fedmsg events for pagure.io
  • [ ] figure out a CLI interface for this new functionality
  • [ ] process messages and pass them to handlers

TomasTomecek avatar Mar 19 '19 09:03 TomasTomecek

I was getting hands dirty with this issue and made some research. I have a few questions:

  1. Why do we need to use fedmsg? I found that pagure.io has similar webhooks as Github. https://docs.pagure.org/pagure/usage/using_webhooks.html I already tried it and works perfectly. I also think this is more straightforward then fedmsg which I still don't understand completely. It's quite a new world for me.
  2. What exactly the CLI interface for this functionality means? This looks like a task for the long term, maybe also as part of GSOC.

marusinm avatar Mar 25 '19 14:03 marusinm

Cool, I did not know that pagure supports webhooks as well: that will make things much easier.

By CLI interface I meant: run release bot and listen to events on fedmsg bus, but that won't be needed.

TomasTomecek avatar Mar 26 '19 08:03 TomasTomecek

I was debugging release-bot on Pagure since we have implemented ogr-lib already. But there is a problem with git actions (e.g. git push) over https.

When release-bot works with Github it clones repo via https, then it sets a credential file to avoid login prompts which allows e.g. git push. However, this doesn't work for pagure. I was also playing with Pagure repo in a cmd and I couldn't find a way how to push changes over https.

Do you think that we can use an ssh connection somehow? Because this could make workflow difficult. This actually divides us from full support for Pagure.

marusinm avatar Aug 14 '19 13:08 marusinm

I'd say that cloning via SSH is the key.

Fedora is using OpenID Connect for auth: https://fedoraproject.org/wiki/Infrastructure/Authentication#OpenID_Connect_Authentication I'm sure we should be able to push via https using that tech but we'd need a token for such a thing.

TomasTomecek avatar Aug 21 '19 06:08 TomasTomecek