Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat(api): enhance Actions Secrets Management API for repository #30656

Merged
merged 14 commits into from
Apr 26, 2024

Conversation

appleboy
Copy link
Member

@appleboy appleboy commented Apr 23, 2024

  • Add endpoint to list repository action secrets in API routes
  • Implement ListActionsSecrets function to retrieve action secrets from the database
  • Update Swagger documentation to include the new /repos/{owner}/{repo}/actions/secrets endpoint
  • Add actions package import and define new routes for actions, secrets, variables, and runners in api.go.
  • Refactor action-related API functions into Action struct methods in org/action.go and repo/action.go.
  • Remove actionAPI struct and related functions, replacing them with NewAction() calls.
  • Rename variables.go to action.go in org directory.
  • Delete runners.go and secrets.go in both org and repo directories, consolidating their content into action.go.
  • Update copyright year and add new imports in org/action.go.
  • Implement API interface in services/actions/interface.go for action-related methods.
  • Remove individual action-related functions and replace them with methods on the Action struct in repo/action.go.

- Add endpoint to list repository action secrets in API routes
- Implement `ListActionsSecrets` function to retrieve action secrets from the database
- Update Swagger documentation to include the new `/repos/{owner}/{repo}/actions/secrets` endpoint

Signed-off-by: Bo-Yi Wu <appleboy.tw@gmail.com>
@GiteaBot GiteaBot added the lgtm/need 2 This PR needs two approvals by maintainers to be considered for merging. label Apr 23, 2024
@pull-request-size pull-request-size bot added the size/L Denotes a PR that changes 100-499 lines, ignoring generated files. label Apr 23, 2024
@github-actions github-actions bot added modifies/api This PR adds API routes or modifies them modifies/go Pull requests that update Go code labels Apr 23, 2024
@GiteaBot GiteaBot added lgtm/need 1 This PR needs approval from one additional maintainer to be merged. and removed lgtm/need 2 This PR needs two approvals by maintainers to be considered for merging. labels Apr 23, 2024
@lunny
Copy link
Member

lunny commented Apr 23, 2024

It's better to have integration tests.

- Remove owner variable and direct owner ID reference in `ListActionsSecrets` function.

Signed-off-by: Bo-Yi Wu <appleboy.tw@gmail.com>
- Add a new test case for listing repository secrets in the API integration tests

Signed-off-by: Bo-Yi Wu <appleboy.tw@gmail.com>
- Refactor API routing for actions, secrets, variables, and runners into a new `actionsGroup` function
- Introduce a new `actionAPI` struct to encapsulate action-related API functions

Signed-off-by: Bo-Yi Wu <appleboy.tw@gmail.com>
routers/api/v1/api.go Outdated Show resolved Hide resolved
routers/api/v1/api.go Outdated Show resolved Hide resolved
- Add `actions` package import and define new routes for actions, secrets, variables, and runners in `api.go`.
- Refactor action-related API functions into `Action` struct methods in `org/action.go` and `repo/action.go`.
- Remove `actionAPI` struct and related functions, replacing them with `NewAction()` calls.
- Rename `variables.go` to `action.go` in `org` directory.
- Delete `runners.go` and `secrets.go` in both `org` and `repo` directories, consolidating their content into `action.go`.
- Update copyright year and add new imports in `org/action.go`.
- Implement `API` interface in `services/actions/interface.go` for action-related methods.
- Remove individual action-related functions and replace them with methods on the `Action` struct in `repo/action.go`.

Signed-off-by: Bo-Yi Wu <appleboy.tw@gmail.com>
@pull-request-size pull-request-size bot added size/XL Denotes a PR that changes 500-999 lines, ignoring generated files. and removed size/L Denotes a PR that changes 100-499 lines, ignoring generated files. labels Apr 24, 2024
routers/api/v1/org/action.go Outdated Show resolved Hide resolved
Copy link
Contributor

@wxiaoguang wxiaoguang left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Overall LGTM

@GiteaBot GiteaBot added lgtm/done This PR has enough approvals to get merged. There are no important open reservations anymore. and removed lgtm/need 1 This PR needs approval from one additional maintainer to be merged. labels Apr 24, 2024
- Update method receiver from `*Action` to `Action`
- Update method signatures to remove receiver argument
- Update swagger operation comments to reflect changes

Signed-off-by: appleboy <appleboy.tw@gmail.com>
- Change the expected status from `http.StatusNotFound` to `http.StatusMethodNotAllowed` in the APIRepoSecrets test.

Signed-off-by: appleboy <appleboy.tw@gmail.com>
@lunny lunny added the reviewed/wait-merge This pull request is part of the merge queue. It will be merged soon. label Apr 26, 2024
@lunny lunny merged commit 852547d into go-gitea:main Apr 26, 2024
26 checks passed
@GiteaBot GiteaBot added this to the 1.23.0 milestone Apr 26, 2024
@GiteaBot GiteaBot removed the reviewed/wait-merge This pull request is part of the merge queue. It will be merged soon. label Apr 26, 2024
@appleboy appleboy deleted the secrets branch April 26, 2024 14:26
zjjhot added a commit to zjjhot/gitea that referenced this pull request Apr 26, 2024
* giteaofficial/main:
  feat(api): enhance Actions Secrets Management API for repository (go-gitea#30656)
  Fix code search input for different views (go-gitea#30678)
  Fix incorrect object id hash function (go-gitea#30708)
  Add route handler info for debugging purpose (go-gitea#30705)
  Bump htmx version to 1.9.12 (go-gitea#30711)
@wxiaoguang wxiaoguang modified the milestones: 1.23.0, 1.22.0 Apr 27, 2024
silverwind added a commit to silverwind/gitea that referenced this pull request Apr 27, 2024
* origin/main:
  Replace deprecated `math/rand` functions (go-gitea#30733)
  Make Ctrl+Enter work for issue/comment edit (go-gitea#30720)
  Rename migration package name for 1.22-rc1 (go-gitea#30730)
  Issue card improvements (go-gitea#30687)
  Don't show loading indicators when refreshing the system status (go-gitea#30712)
  Add some tests to clarify the "must-change-password" behavior (go-gitea#30693)
  Prevent allow/reject reviews on merged/closed PRs (go-gitea#30686)
  Update JS dependencies (go-gitea#30713)
  Improve diff stats bar (go-gitea#30669)
  Remove unused parameter for some functions in `services/mirror` (go-gitea#30724)
  Update misspell to 0.5.1 and add `misspellings.csv` (go-gitea#30573)
  Suppress browserslist warning in webpack target (go-gitea#30571)
  [skip ci] Updated translations via Crowdin
  Diff color enhancements, add line number background (go-gitea#30670)
  feat(api): enhance Actions Secrets Management API for repository (go-gitea#30656)
  Fix code search input for different views (go-gitea#30678)
  Fix incorrect object id hash function (go-gitea#30708)
@go-gitea go-gitea locked as resolved and limited conversation to collaborators Jul 25, 2024
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
lgtm/done This PR has enough approvals to get merged. There are no important open reservations anymore. modifies/api This PR adds API routes or modifies them modifies/go Pull requests that update Go code size/XL Denotes a PR that changes 500-999 lines, ignoring generated files.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants