This is an automated email from the ASF dual-hosted git repository.
warren pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/incubator-devlake.git
The following commit(s) were added to refs/heads/main by this push:
new 51785fae feat(jenkins): add swagger
51785fae is described below
commit 51785fae80dd6e581d9d27eb89497a4f2edb5e20
Author: Yingchu Chen <[email protected]>
AuthorDate: Mon Aug 8 10:43:08 2022 +0800
feat(jenkins): add swagger
closes #2699
---
plugins/jenkins/api/connection.go | 73 ++++++++++++++++++++++++---------------
1 file changed, 45 insertions(+), 28 deletions(-)
diff --git a/plugins/jenkins/api/connection.go
b/plugins/jenkins/api/connection.go
index 40b6b664..13f2f260 100644
--- a/plugins/jenkins/api/connection.go
+++ b/plugins/jenkins/api/connection.go
@@ -31,6 +31,14 @@ import (
"github.com/mitchellh/mapstructure"
)
+// @Summary test jenkins connection
+// @Description Test Jenkins Connection
+// @Tags plugins/Jenkins
+// @Param body body models.TestConnectionRequest true "json body"
+// @Success 200
+// @Failure 400 {string} errcode.Error "Bad Request"
+// @Failure 500 {string} errcode.Error "Internel Error"
+// @Router /plugins/jenkins/test [POST]
func TestConnection(input *core.ApiResourceInput) (*core.ApiResourceOutput,
error) {
// decode
var err error
@@ -71,15 +79,14 @@ func TestConnection(input *core.ApiResourceInput)
(*core.ApiResourceOutput, erro
return nil, nil
}
-/*
-POST /plugins/jenkins/connections
-{
- "name": "jenkins data connection name",
- "endpoint": "jenkins api endpoint, i.e. https://ci.jenkins.io/",
- "username": "username, usually should be email address",
- "password": "jenkins api access token"
-}
-*/
+// @Summary create jenkins connection
+// @Description Create Jenkins connection
+// @Tags plugins/Jenkins
+// @Param body body models.JenkinsConnection true "json body"
+// @Success 200
+// @Failure 400 {string} errcode.Error "Bad Request"
+// @Failure 500 {string} errcode.Error "Internel Error"
+// @Router /plugins/jenkins/connections [POST]
func PostConnections(input *core.ApiResourceInput) (*core.ApiResourceOutput,
error) {
// create a new connection
connection := &models.JenkinsConnection{}
@@ -92,16 +99,14 @@ func PostConnections(input *core.ApiResourceInput)
(*core.ApiResourceOutput, err
return &core.ApiResourceOutput{Body: connection, Status:
http.StatusOK}, nil
}
-/*
-PATCH /plugins/jenkins/connections/connectionId
-{
- "name": "jenkins data connection name",
- "endpoint": "jenkins api endpoint, i.e. https://ci.jenkins.io/",
- "username": "username, usually should be email address",
- "password": "jenkins api access token"
-}
-*/
-
+// @Summary patch jenkins connection
+// @Description Patch Jenkins connection
+// @Tags plugins/Jenkins
+// @Param body body models.JenkinsConnection true "json body"
+// @Success 200
+// @Failure 400 {string} errcode.Error "Bad Request"
+// @Failure 500 {string} errcode.Error "Internel Error"
+// @Router /plugins/jenkins/connections/{connectionId} [PATCH]
func PatchConnection(input *core.ApiResourceInput) (*core.ApiResourceOutput,
error) {
connection := &models.JenkinsConnection{}
err := connectionHelper.Patch(connection, input)
@@ -112,9 +117,13 @@ func PatchConnection(input *core.ApiResourceInput)
(*core.ApiResourceOutput, err
return &core.ApiResourceOutput{Body: connection}, nil
}
-/*
-DELETE /plugins/jenkins/connections/connectionId
-*/
+// @Summary delete a jenkins connection
+// @Description Delete a Jenkins connection
+// @Tags plugins/Jenkins
+// @Success 200
+// @Failure 400 {string} errcode.Error "Bad Request"
+// @Failure 500 {string} errcode.Error "Internel Error"
+// @Router /plugins/jenkins/connections/{connectionId} [DELETE]
func DeleteConnection(input *core.ApiResourceInput) (*core.ApiResourceOutput,
error) {
connection := &models.JenkinsConnection{}
err := connectionHelper.First(connection, input.Params)
@@ -125,9 +134,13 @@ func DeleteConnection(input *core.ApiResourceInput)
(*core.ApiResourceOutput, er
return &core.ApiResourceOutput{Body: connection}, err
}
-/*
-GET /plugins/jenkins/connections
-*/
+// @Summary get all jenkins connections
+// @Description Get all Jenkins connections
+// @Tags plugins/Jenkins
+// @Success 200
+// @Failure 400 {string} errcode.Error "Bad Request"
+// @Failure 500 {string} errcode.Error "Internel Error"
+// @Router /plugins/jenkins/connections [GET]
func ListConnections(input *core.ApiResourceInput) (*core.ApiResourceOutput,
error) {
var connections []models.JenkinsConnection
err := connectionHelper.List(&connections)
@@ -138,9 +151,13 @@ func ListConnections(input *core.ApiResourceInput)
(*core.ApiResourceOutput, err
return &core.ApiResourceOutput{Body: connections, Status:
http.StatusOK}, nil
}
-/*
-GET /plugins/jenkins/connections/connectionId
-*/
+// @Summary get jenkins connection detail
+// @Description Get Jenkins connection detail
+// @Tags plugins/Jenkins
+// @Success 200
+// @Failure 400 {string} errcode.Error "Bad Request"
+// @Failure 500 {string} errcode.Error "Internel Error"
+// @Router /plugins/jenkins/connections/{connectionId} [GET]
func GetConnection(input *core.ApiResourceInput) (*core.ApiResourceOutput,
error) {
connection := &models.JenkinsConnection{}
err := connectionHelper.First(connection, input.Params)