Sidekiq fails to deal with 'Emails on push' service.
Created by: lurdan
Summary
While "test settings" button works as expected (I can receive the mail with commit diffs), Sidekiq fails its job when really be pushed.
Steps to reproduce
- Choose repository
- Settings -> Services -> "Emails on push"
- Check enabled and fill email address
- Push some branch
Expected behavior
I'll receive notification mail.
Observed behavior
I don't receive notification mail.
Relevant logs and/or screenshots
2014-04-08T06:19:12Z 14727 TID-1gzwtm WARN: {"retry"=>true, "queue"=>"default", "class"=>"EmailsOnPushWorker", "args"=>[50, "mail@localdomain", {"before"=>"62b0e2e1761064e67e9573f96c06d5f770e97f06", "after"=>"474b4bf2a1ca5178d5a31fe2ee8df2f2ae028819", "ref"=>"refs/heads/master", "user_id"=>2, "user_name"=>"me", "project_id"=>50, "repository"=>{"name"=>"proj1", "url"=>"git@localhost:gr1/proj1.git", "description"=>"", "homepage"=>"http://localhost/gr1/proj1"}, "commits"=>[{"id"=>"474b4bf2a1ca5178d5a31fe2ee8df2f2ae028819", "message"=>"commit message", "timestamp"=>"2014-04-08T15:05:50+09:00", "url"=>"http://localhost/gr1/proj1/commit/474b4bf2a1ca5178d5a31fe2ee8df2f2ae028819", "author"=>{"name"=>"me", "email"=>"mail@localdomain"}}], "total_commits_count"=>1}], "jid"=>"3c45ba91116b68e27ff687e6", "enqueued_at"=>1396937154.217174, "error_message"=>"No route matches {:action=>\"show\", :controller=>\"projects/commit\", :project_id=>#<Project id: 50, name: \"proj1\", path: \"proj1\", description: \"\", created_at: \"2014-01-29 09:02:14\", updated_at: \"2014-03-24 09:30:54\", creator_id: 2, issues_enabled: true, wall_enabled: false, merge_requests_enabled: true, wiki_enabled: false, namespace_id: 3, issues_tracker: \"requesttracker\", issues_tracker_id: nil, snippets_enabled: false, last_activity_at: \"2014-04-08 06:05:54\", import_url: \"\", visibility_level: 0, archived: false, import_status: \"none\">, :id=>#<Gitlab::Git::Commit:0xaacb87c @raw_commit=#<Grit::Commit \"474b4bf2a1ca5178d5a31fe2ee8df2f2ae028819\">, @id=\"474b4bf2a1ca5178d5a31fe2ee8df2f2ae028819\", @message=\"commit message\", @authored_date=2014-04-08 15:05:50 +0900, @committed_date=2014-04-08 15:05:50 +0900, @author_name=\"me\", @author_email=\"mail@localdomain\", @committer_name=\"me\", @committer_email=\"mail@localdomain\", @parent_ids=[\"62b0e2e1761064e67e9573f96c06d5f770e97f06\"], @head=nil>, :format=>nil} missing required keys: [:id]", "error_class"=>"ActionController::UrlGenerationError", "failed_at"=>"2014-04-08T06:05:54Z", "retry_count"=>5, "retried_at"=>2014-04-08 06:19:12 UTC}
2014-04-08T06:19:12Z 14727 TID-1gzwtm WARN: No route matches {:action=>"show", :controller=>"projects/commit", :project_id=>#<Project id: 50, name: "proj1", path: "proj1", description: "", created_at: "2014-01-29 09:02:14", updated_at: "2014-03-24 09:30:54", creator_id: 2, issues_enabled: true, wall_enabled: false, merge_requests_enabled: true, wiki_enabled: false, namespace_id: 3, issues_tracker: "requesttracker", issues_tracker_id: nil, snippets_enabled: false, last_activity_at: "2014-04-08 06:05:54", import_url: "", visibility_level: 0, archived: false, import_status: "none">, :id=>#<Gitlab::Git::Commit:0xaacb87c @raw_commit=#<Grit::Commit "474b4bf2a1ca5178d5a31fe2ee8df2f2ae028819">, @id="474b4bf2a1ca5178d5a31fe2ee8df2f2ae028819", @message="commit message", @authored_date=2014-04-08 15:05:50 +0900, @committed_date=2014-04-08 15:05:50 +0900, @author_name="me", @author_email="mail@localdomain", @committer_name="me", @committer_email="mail@localdomain", @parent_ids=["62b0e2e1761064e67e9573f96c06d5f770e97f06"], @head=nil>, :format=>nil} missing required keys: [:id]
Output of checks
GitLab 6.7.3 f88d30fa, Application check passes.
Possible fixes
Error log says "missing required keys: [:id]", it seems that there is something mismatched parameter?