Add support for pagure.io
Opened this issue · 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
I was getting hands dirty with this issue and made some research. I have a few questions:
- 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.
- What exactly the CLI interface for this functionality means? This looks like a task for the long term, maybe also as part of GSOC.
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.
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.
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.