fix(ssh): fetch ssh key by fingerprint (#39423)

Co-authored-by: wxiaoguang <wxiaoguang@gmail.com>
This commit is contained in:
TheFox0x7
2026-09-25 06:22:04 -07:00
committed by GitHub
co-authored by wxiaoguang
parent 6d59229331
commit 448f8c67e0
9 changed files with 60 additions and 80 deletions
+2 -7
View File
@@ -10,19 +10,14 @@ import (
"gitea.dev/modules/setting"
)
// UpdatePublicKeyInRepo update public key and if necessary deploy key updates
func UpdatePublicKeyInRepo(ctx context.Context, keyID, repoID int64) error {
// Ask for running deliver hook and test pull request tasks.
func UpdatePublicKeyLastUsed(ctx context.Context, keyID, repoID int64) error {
reqURL := setting.LocalURL + fmt.Sprintf("api/internal/ssh/%d/update/%d", keyID, repoID)
req := newInternalRequestAPI(ctx, reqURL, "POST")
_, extra := requestJSONResp(req, &ResponseText{})
return extra.Error
}
// AuthorizedPublicKeyByContent searches content as prefix (leak e-mail part)
// and returns public key found.
func AuthorizedPublicKeyByContent(ctx context.Context, content string) (*ResponseText, ResponseExtra) {
// Ask for running deliver hook and test pull request tasks.
func AuthorizedPublicKeyForSSH(ctx context.Context, content string) (*ResponseText, ResponseExtra) {
reqURL := setting.LocalURL + "api/internal/ssh/authorized_keys"
req := newInternalRequestAPI(ctx, reqURL, "POST")
req.Param("content", content)