ADD create gitea webhook api

This commit is contained in:
Jasder
2020-09-04 15:46:07 +08:00
parent 8c908a35ac
commit eb2f1f46e0
2 changed files with 42 additions and 10 deletions

View File

@@ -1,23 +1,39 @@
class Gitea::Hooks::CreateService < Gitea::ClientService
attr_reader :user, :repo_name, :body
attr_reader :token, :owner, :repo, :body
def initialize(user, repo_name, body)
@user = user
@repo_name = repo_name
@body = body
# body params:
# {
# "active": false,
# "branch_filter": "string",
# "config": {
# "content_type": "string",
# "url": "string"
# },
# "events": [
# "create"
# ],
# "type": "gitea"
# }
# eg:
# Gitea::Hooks::CreateService.call(user.gitea_token, user.login, repo.identifier, body)
def initialize(token, owner, repo, body)
@token = token
@owner = owner
@repo = repo
@body = body
end
def call
response = post(url, params)
def call
post(url, params)
end
private
def params
body.merge(token: user.gitea_token)
Hash.new.merge(token: token, data: body).compact!
end
def url
"/repos/#{user.login}/#{repo_name}/hooks".freeze
"/repos/#{owner}/#{repo}/hooks".freeze
end
end
end