5
0
Fork 0
mirror of https://0xacab.org/sutty/sutty synced 2024-11-23 01:46:21 +00:00
panel/app/controllers/api/v1/webhooks_controller.rb

34 lines
944 B
Ruby
Raw Normal View History

# frozen_string_literal: true
module Api
module V1
# Recibe webhooks y lanza un PullJob
class WebhooksController < BaseController
rescue_from ActiveRecord::RecordNotFound, with: :platforms_answer
def site
@site ||= Site.find_by_name!(params[:site_id])
end
# valida la plataforma del webhook
def usuarie
# Gitlab
token = request.headers["X-Gitlab-Token"]
@usuarie = site.roles.find_by!(temporal: false, rol: 'usuarie', token: token).usuarie
end
2023-07-27 19:46:32 +00:00
# Trae los cambios a partir de un post de Webhooks:
# (Gitlab, Github, Guitea, etc)
def pull
2023-07-27 19:46:32 +00:00
message = I18n.with_locale(site.default_locale) do
I18n.t('webhooks.pull.message')
end
GitPullJob.perform_later(site, usuarie, message)
end
def platforms_answer
head :ok
end
end
end
end