mirror of
				https://github.com/go-gitea/gitea
				synced 2025-11-04 13:28:25 +00:00 
			
		
		
		
	refactor: merge ListActionTasks func to action.go file (#30811)
Just merge actions.go file to action.go Signed-off-by: Bo-Yi Wu <appleboy.tw@gmail.com>
This commit is contained in:
		@@ -17,6 +17,7 @@ import (
 | 
				
			|||||||
	"code.gitea.io/gitea/routers/api/v1/utils"
 | 
						"code.gitea.io/gitea/routers/api/v1/utils"
 | 
				
			||||||
	actions_service "code.gitea.io/gitea/services/actions"
 | 
						actions_service "code.gitea.io/gitea/services/actions"
 | 
				
			||||||
	"code.gitea.io/gitea/services/context"
 | 
						"code.gitea.io/gitea/services/context"
 | 
				
			||||||
 | 
						"code.gitea.io/gitea/services/convert"
 | 
				
			||||||
	secret_service "code.gitea.io/gitea/services/secrets"
 | 
						secret_service "code.gitea.io/gitea/services/secrets"
 | 
				
			||||||
)
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@@ -517,3 +518,68 @@ type Action struct{}
 | 
				
			|||||||
func NewAction() actions_service.API {
 | 
					func NewAction() actions_service.API {
 | 
				
			||||||
	return Action{}
 | 
						return Action{}
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					// ListActionTasks list all the actions of a repository
 | 
				
			||||||
 | 
					func ListActionTasks(ctx *context.APIContext) {
 | 
				
			||||||
 | 
						// swagger:operation GET /repos/{owner}/{repo}/actions/tasks repository ListActionTasks
 | 
				
			||||||
 | 
						// ---
 | 
				
			||||||
 | 
						// summary: List a repository's action tasks
 | 
				
			||||||
 | 
						// produces:
 | 
				
			||||||
 | 
						// - application/json
 | 
				
			||||||
 | 
						// parameters:
 | 
				
			||||||
 | 
						// - name: owner
 | 
				
			||||||
 | 
						//   in: path
 | 
				
			||||||
 | 
						//   description: owner of the repo
 | 
				
			||||||
 | 
						//   type: string
 | 
				
			||||||
 | 
						//   required: true
 | 
				
			||||||
 | 
						// - name: repo
 | 
				
			||||||
 | 
						//   in: path
 | 
				
			||||||
 | 
						//   description: name of the repo
 | 
				
			||||||
 | 
						//   type: string
 | 
				
			||||||
 | 
						//   required: true
 | 
				
			||||||
 | 
						// - name: page
 | 
				
			||||||
 | 
						//   in: query
 | 
				
			||||||
 | 
						//   description: page number of results to return (1-based)
 | 
				
			||||||
 | 
						//   type: integer
 | 
				
			||||||
 | 
						// - name: limit
 | 
				
			||||||
 | 
						//   in: query
 | 
				
			||||||
 | 
						//   description: page size of results, default maximum page size is 50
 | 
				
			||||||
 | 
						//   type: integer
 | 
				
			||||||
 | 
						// responses:
 | 
				
			||||||
 | 
						//   "200":
 | 
				
			||||||
 | 
						//     "$ref": "#/responses/TasksList"
 | 
				
			||||||
 | 
						//   "400":
 | 
				
			||||||
 | 
						//     "$ref": "#/responses/error"
 | 
				
			||||||
 | 
						//   "403":
 | 
				
			||||||
 | 
						//     "$ref": "#/responses/forbidden"
 | 
				
			||||||
 | 
						//   "404":
 | 
				
			||||||
 | 
						//     "$ref": "#/responses/notFound"
 | 
				
			||||||
 | 
						//   "409":
 | 
				
			||||||
 | 
						//     "$ref": "#/responses/conflict"
 | 
				
			||||||
 | 
						//   "422":
 | 
				
			||||||
 | 
						//     "$ref": "#/responses/validationError"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						tasks, total, err := db.FindAndCount[actions_model.ActionTask](ctx, &actions_model.FindTaskOptions{
 | 
				
			||||||
 | 
							ListOptions: utils.GetListOptions(ctx),
 | 
				
			||||||
 | 
							RepoID:      ctx.Repo.Repository.ID,
 | 
				
			||||||
 | 
						})
 | 
				
			||||||
 | 
						if err != nil {
 | 
				
			||||||
 | 
							ctx.Error(http.StatusInternalServerError, "ListActionTasks", err)
 | 
				
			||||||
 | 
							return
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						res := new(api.ActionTaskResponse)
 | 
				
			||||||
 | 
						res.TotalCount = total
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						res.Entries = make([]*api.ActionTask, len(tasks))
 | 
				
			||||||
 | 
						for i := range tasks {
 | 
				
			||||||
 | 
							convertedTask, err := convert.ToActionTask(ctx, tasks[i])
 | 
				
			||||||
 | 
							if err != nil {
 | 
				
			||||||
 | 
								ctx.Error(http.StatusInternalServerError, "ToActionTask", err)
 | 
				
			||||||
 | 
								return
 | 
				
			||||||
 | 
							}
 | 
				
			||||||
 | 
							res.Entries[i] = convertedTask
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						ctx.JSON(http.StatusOK, &res)
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -1,80 +0,0 @@
 | 
				
			|||||||
// Copyright 2023 The Gitea Authors. All rights reserved.
 | 
					 | 
				
			||||||
// SPDX-License-Identifier: MIT
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
package repo
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
import (
 | 
					 | 
				
			||||||
	"net/http"
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	actions_model "code.gitea.io/gitea/models/actions"
 | 
					 | 
				
			||||||
	"code.gitea.io/gitea/models/db"
 | 
					 | 
				
			||||||
	api "code.gitea.io/gitea/modules/structs"
 | 
					 | 
				
			||||||
	"code.gitea.io/gitea/routers/api/v1/utils"
 | 
					 | 
				
			||||||
	"code.gitea.io/gitea/services/context"
 | 
					 | 
				
			||||||
	"code.gitea.io/gitea/services/convert"
 | 
					 | 
				
			||||||
)
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
// ListActionTasks list all the actions of a repository
 | 
					 | 
				
			||||||
func ListActionTasks(ctx *context.APIContext) {
 | 
					 | 
				
			||||||
	// swagger:operation GET /repos/{owner}/{repo}/actions/tasks repository ListActionTasks
 | 
					 | 
				
			||||||
	// ---
 | 
					 | 
				
			||||||
	// summary: List a repository's action tasks
 | 
					 | 
				
			||||||
	// produces:
 | 
					 | 
				
			||||||
	// - application/json
 | 
					 | 
				
			||||||
	// parameters:
 | 
					 | 
				
			||||||
	// - name: owner
 | 
					 | 
				
			||||||
	//   in: path
 | 
					 | 
				
			||||||
	//   description: owner of the repo
 | 
					 | 
				
			||||||
	//   type: string
 | 
					 | 
				
			||||||
	//   required: true
 | 
					 | 
				
			||||||
	// - name: repo
 | 
					 | 
				
			||||||
	//   in: path
 | 
					 | 
				
			||||||
	//   description: name of the repo
 | 
					 | 
				
			||||||
	//   type: string
 | 
					 | 
				
			||||||
	//   required: true
 | 
					 | 
				
			||||||
	// - name: page
 | 
					 | 
				
			||||||
	//   in: query
 | 
					 | 
				
			||||||
	//   description: page number of results to return (1-based)
 | 
					 | 
				
			||||||
	//   type: integer
 | 
					 | 
				
			||||||
	// - name: limit
 | 
					 | 
				
			||||||
	//   in: query
 | 
					 | 
				
			||||||
	//   description: page size of results, default maximum page size is 50
 | 
					 | 
				
			||||||
	//   type: integer
 | 
					 | 
				
			||||||
	// responses:
 | 
					 | 
				
			||||||
	//   "200":
 | 
					 | 
				
			||||||
	//     "$ref": "#/responses/TasksList"
 | 
					 | 
				
			||||||
	//   "400":
 | 
					 | 
				
			||||||
	//     "$ref": "#/responses/error"
 | 
					 | 
				
			||||||
	//   "403":
 | 
					 | 
				
			||||||
	//     "$ref": "#/responses/forbidden"
 | 
					 | 
				
			||||||
	//   "404":
 | 
					 | 
				
			||||||
	//     "$ref": "#/responses/notFound"
 | 
					 | 
				
			||||||
	//   "409":
 | 
					 | 
				
			||||||
	//     "$ref": "#/responses/conflict"
 | 
					 | 
				
			||||||
	//   "422":
 | 
					 | 
				
			||||||
	//     "$ref": "#/responses/validationError"
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	tasks, total, err := db.FindAndCount[actions_model.ActionTask](ctx, &actions_model.FindTaskOptions{
 | 
					 | 
				
			||||||
		ListOptions: utils.GetListOptions(ctx),
 | 
					 | 
				
			||||||
		RepoID:      ctx.Repo.Repository.ID,
 | 
					 | 
				
			||||||
	})
 | 
					 | 
				
			||||||
	if err != nil {
 | 
					 | 
				
			||||||
		ctx.Error(http.StatusInternalServerError, "ListActionTasks", err)
 | 
					 | 
				
			||||||
		return
 | 
					 | 
				
			||||||
	}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	res := new(api.ActionTaskResponse)
 | 
					 | 
				
			||||||
	res.TotalCount = total
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	res.Entries = make([]*api.ActionTask, len(tasks))
 | 
					 | 
				
			||||||
	for i := range tasks {
 | 
					 | 
				
			||||||
		convertedTask, err := convert.ToActionTask(ctx, tasks[i])
 | 
					 | 
				
			||||||
		if err != nil {
 | 
					 | 
				
			||||||
			ctx.Error(http.StatusInternalServerError, "ToActionTask", err)
 | 
					 | 
				
			||||||
			return
 | 
					 | 
				
			||||||
		}
 | 
					 | 
				
			||||||
		res.Entries[i] = convertedTask
 | 
					 | 
				
			||||||
	}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	ctx.JSON(http.StatusOK, &res)
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
		Reference in New Issue
	
	Block a user