From fb12ed211e6475d40284a9494231146f9db51328 Mon Sep 17 00:00:00 2001 From: Lunny Xiao Date: Wed, 8 Jan 2025 17:25:02 -0800 Subject: [PATCH] add workflow --- models/project/workflows.go | 30 ++++++++++++++++++++++++++++++ routers/web/web.go | 3 +++ 2 files changed, 33 insertions(+) create mode 100644 models/project/workflows.go diff --git a/models/project/workflows.go b/models/project/workflows.go new file mode 100644 index 0000000000..6c8ee57cc4 --- /dev/null +++ b/models/project/workflows.go @@ -0,0 +1,30 @@ +// Copyright 2025 The Gitea Authors. All rights reserved. +// SPDX-License-Identifier: MIT + +package project + +import "code.gitea.io/gitea/models/db" + +type WorkflowEvent string + +const ( + WorkflowEventItemAddedToProject WorkflowEvent = "item_added_to_project" + WorkflowEventItemReopened WorkflowEvent = "item_reopened" + WorkflowEventItemClosed WorkflowEvent = "item_closed" + WorkflowEventCodeChangesRequested WorkflowEvent = "code_changes_requested" + WorkflowEventCodeReviewApproved WorkflowEvent = "code_review_approved" + WorkflowEventPullRequestMerged WorkflowEvent = "pull_request_merged" + WorkflowEventAutoArchiveItems WorkflowEvent = "auto_archive_items" + WorkflowEventAutoAddToProject WorkflowEvent = "auto_add_to_project" + WorkflowEventAutoCloseIssue WorkflowEvent = "auto_close_issue" +) + +type ProjectWorkflow struct { + ID int64 + ProjectID int64 `xorm:"index"` + WorkflowEvent WorkflowEvent `xorm:"index"` +} + +func init() { + db.RegisterModel(new(ProjectWorkflow)) +} diff --git a/routers/web/web.go b/routers/web/web.go index 32d65865ac..0886c5d1ba 100644 --- a/routers/web/web.go +++ b/routers/web/web.go @@ -1383,6 +1383,9 @@ func registerRoutes(m *web.Router) { m.Group("/{username}/{reponame}/projects", func() { m.Get("", repo.Projects) m.Get("/{id}", repo.ViewProject) + m.Group("/{id}/workflows", func() { + m.Get("", repo.Workflows) + }) m.Group("", func() { //nolint:dupl m.Get("/new", repo.RenderNewProject) m.Post("/new", web.Bind(forms.CreateProjectForm{}), repo.NewProjectPost)