Define webhook URL

This commit is contained in:
nemunaire 2022-09-05 11:00:46 +02:00
parent 0079901311
commit c976f7b53f
3 changed files with 19 additions and 1 deletions

1
api.go
View File

@ -14,6 +14,7 @@ func declareAPIRoutes(router *gin.Engine) {
declareAPIAuthRoutes(apiRoutes)
declareAPISurveysRoutes(apiRoutes)
declareAPIWorksRoutes(apiRoutes)
declareCallbacksRoutes(apiRoutes)
authRoutes := router.Group("")
authRoutes.Use(authMiddleware(loggedUser))

View File

@ -254,6 +254,23 @@ func declareAPIAuthRepositoriesRoutes(router *gin.RouterGroup) {
})
}
func declareCallbacksRoutes(router *gin.RouterGroup) {
router.POST("/callbacks/trigger.json", func(c *gin.Context) {
log.Println("Received trigger")
log.Println("X-Gitlab-Token", c.Request.Header.Get("X-Gitlab-Token"))
tmp := map[string]interface{}{}
if err := c.ShouldBindJSON(&tmp); err != nil {
c.AbortWithStatusJSON(http.StatusBadRequest, gin.H{"errmsg": err.Error()})
return
}
log.Println("Content", tmp)
c.JSON(http.StatusOK, true)
})
}
func repositoryHandler(c *gin.Context) {
var u *User
if user, ok := c.Get("user"); ok {

View File

@ -146,7 +146,7 @@
<li>être dans l'espace de nom de votre utilisateur (à la fin de la liste des <span class="fst-italic">namespaces</span>),</li>
<li>avoir la visibilité «&nbsp;Privé&nbsp;»,</li>
<li>avoir invité <a href="https://gitlab.cri.epita.fr/nemunaire" target="_blank" style="font-family: monospace">nemunaire</a> avec le rôle <span class="fst-italic">Reporter</span> une fois le dépôt créé,</li>
<li>configuré un <span class="fst-italic">webhook</span> pointant sur <code>https://lessons.nemunai.re/callback/trigger.json</code></li>
<li>configuré un <span class="fst-italic">webhook</span> pointant sur <code>https://lessons.nemunai.re/api/callbacks/trigger.json</code></li>
</ul>
{#if w.tag}