script - ¿Cómo creo un webhook de GitLab?
gitlab run script on commit (5)
He leído que GitLab es capaz de enviar mensajes a otros servidores a través de "enlaces web" pero no puedo encontrar dónde crear uno.
¿Alguien me puede apuntar en la dirección correcta?
Puede ver un ejemplo del gancho del sistema GitLab, con una creación web_hook.rb en este proyecto GitHub .
En gitlab, como administrador, ve a la pestaña "
Hooks
", crea un gancho como: http://your.ip.goes.here:8000o cambie el puerto en la línea 175 del script.
Para enlaces web, vea la respuesta más precisa de .
Puede inspeccionar el resultado de un webhook con un servicio como RequestBin .
Otro ejemplo de interpretación de webhook: esta pregunta .
Tenga en cuenta que aún quedan algunos problemas con el webhook de gitlab:
Recomiendo usar GitLabForm - configuración como herramienta de código para GitLab - para configurar webhooks con un código como este:
project_settings:
my_group/my_project:
hooks:
hooks:
''http://127.0.0.1:5000/hooks/my-hook-endpoint'':
push_events: false # this is set to true by GitLab API by default
merge_requests_events: true
token: some_secret_auth_token
Divulgación: escribí esta herramienta y mi empresa la abrió.
Para ganchos de nivel de grupo:
visita: https://gitlab.com/groups/<yourgroup>/hooks
Para ganchos de nivel de proyecto de grupo:
visite: https://gitlab.com/yourgroup/yourproject/hooks
Todas las respuestas que he encontrado en la documentación oficial y en Desbordamiento de pila para encontrar enlaces web son incorrectas. La página del admin area > hooks
no contiene enlaces web . Contiene enganches del sistema , que se activan al crear / eliminar proyectos y usuarios y cosas por el estilo. Esto no es lo que quieres.
Para encontrar sus ganchos web, vaya a la página del specific project > settings > web hooks (on sidebar in GitLab 6.1.0)
. Estos se activarán después de recibir para el proyecto en cuestión. Puede usar un servicio como RequestBin para ver cómo se ve la carga útil y para asegurarse de que está disparando correctamente para fines de depuración.