NiklasRosenstein / flux-ci

Flux is your own private & lightweight CI server.
MIT License
26 stars 10 forks source link

KeyError 'name' ('repository.owner.name') #25

Closed steinnes closed 8 years ago

steinnes commented 8 years ago

I'm having an issue where I get a 500 error on push events, the problem is that the payload does not include a name parameter for the owner of the repository in question. See the screenshot here for the payload data:

image

I have forked the repository and I am doing some work there to see if I can use this at work to replace our external CI system, I'll make a patch there to rely on repository.owner.login if name can not be found.

Why name is missing for me is unclear, the account in question is mine and I have my full name set.

NiklasRosenstein commented 8 years ago

Hm I think this is indeed an error and it should use repository.owner.login instead of repository.owner.name. Would you try it and submit a patch? Thanks!

steinnes commented 8 years ago

This is due to me sending non-push events to the system. Maybe we should add to the README.md that when setting up the GitHub webhook you should only enable push events. Since I did not know which events were supported I opted for all :-)

See here a screenshot of actual push payload: image

NiklasRosenstein commented 8 years ago

Yeah, sorry for the lack of this information! At least now, Flux will respond with

Payload rejected (expected 'push' event, got 'event-type')

If any event but a push event is received from GitHub.

I kind of thought it was obvious since the URL on the Flux side is /hook/push. I'll add it to the README.md ;)

NiklasRosenstein commented 8 years ago

What other event would make sense to trigger a build other than PUSH?

steinnes commented 8 years ago

The only case (that I can think of!) where I would need a build but a push was not the source of it, would be when I merge a pull request to master (or another branch), thus creating a new commit on GitHub without pushing. Maybe that actually sends a push event? :-)

NiklasRosenstein commented 8 years ago

I'm not 100% sure, but my guts tell me that it would trigger a push event. :D

On 9 June 2016 at 23:19, Steinn Eldjárn Sigurðarson < notifications@github.com> wrote:

The only case where I would need a build but a push was not the source of it, would be when I merge a pull request to master (or another branch), thus creating a new commit on GitHub without pushing. Maybe that actually sends a push event? :-)

— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/NiklasRosenstein/flux/issues/25#issuecomment-225030188, or mute the thread https://github.com/notifications/unsubscribe/ABQeJlaX95njAvlqoPXQhfN0fdpUMtCbks5qKINwgaJpZM4Iwb8r .