Process multiple claims in one PR
This commit is contained in:
parent
c1158a187f
commit
eb7b5e1010
|
@ -0,0 +1,7 @@
|
|||
ALTER TABLE pull_requests DROP CONSTRAINT pull_requests_pkey;
|
||||
ALTER TABLE pull_requests DROP CONSTRAINT pull_requests_pr_id_key;
|
||||
ALTER TABLE pull_requests DROP CONSTRAINT pull_requests_fkey;
|
||||
|
||||
|
||||
ALTER TABLE pull_requests ADD CONSTRAINT pull_requests_pkey PRIMARY KEY (pr_id);
|
||||
ALTER TABLE pull_requests ADD CONSTRAINT pull_requests_pr_id_key UNIQUE (pr_id);
|
|
@ -0,0 +1,7 @@
|
|||
ALTER TABLE pull_requests DROP CONSTRAINT pull_requests_pkey;
|
||||
ALTER TABLE pull_requests DROP CONSTRAINT pull_requests_pr_id_key;
|
||||
|
||||
|
||||
ALTER TABLE pull_requests ADD CONSTRAINT pull_requests_pkey PRIMARY KEY (pr_id, issue_id);
|
||||
ALTER TABLE pull_requests ADD CONSTRAINT pull_requests_pr_id_key UNIQUE (pr_id, issue_id);
|
||||
ALTER TABLE pull_requests ADD CONSTRAINT pull_requests_fkey FOREIGN KEY (issue_id) REFERENCES issues(issue_id);
|
|
@ -174,22 +174,23 @@
|
|||
pr-body :body
|
||||
pr-title :title} :pull_request}]
|
||||
(log/info "handle-pull-request-event" event-type owner repo repo-id login pr-body pr-title)
|
||||
(if-let [issue (some #(issues/get-issue repo-id %1) (extract-issue-number owner repo pr-body pr-title))]
|
||||
(if-not (:commit_sha issue) ; no PR has been merged yet referencing this issue
|
||||
(do
|
||||
(log/info "Referenced bounty issue found" owner repo (:issue_number issue))
|
||||
(handle-claim issue
|
||||
user-id
|
||||
login name
|
||||
avatar_url
|
||||
owner repo
|
||||
repo-id
|
||||
pr-id
|
||||
pr-number
|
||||
head-sha
|
||||
merged?
|
||||
event-type))
|
||||
(log/info "PR for issue already merged"))
|
||||
(if-let [issues (remove nil? (map #(issues/get-issue repo-id %1) (extract-issue-number owner repo pr-body pr-title)))]
|
||||
(doseq [issue issues]
|
||||
(if-not (:commit_sha issue) ; no PR has been merged yet referencing this issue
|
||||
(do
|
||||
(log/info "Referenced bounty issue found" owner repo (:issue_number issue))
|
||||
(handle-claim issue
|
||||
user-id
|
||||
login name
|
||||
avatar_url
|
||||
owner repo
|
||||
repo-id
|
||||
pr-id
|
||||
pr-number
|
||||
head-sha
|
||||
merged?
|
||||
event-type))
|
||||
(log/info "PR for issue already merged")))
|
||||
(when (= :edited event-type)
|
||||
; Remove PR if it does not reference any issue
|
||||
(pull-requests/remove pr-id))))
|
||||
|
|
Loading…
Reference in New Issue