code.gitea.io/gitea@v1.22.3/services/asymkey/deploy_key.go (about)

     1  // Copyright 2021 The Gitea Authors. All rights reserved.
     2  // SPDX-License-Identifier: MIT
     3  
     4  package asymkey
     5  
     6  import (
     7  	"context"
     8  
     9  	"code.gitea.io/gitea/models"
    10  	"code.gitea.io/gitea/models/db"
    11  	user_model "code.gitea.io/gitea/models/user"
    12  )
    13  
    14  // DeleteDeployKey deletes deploy key from its repository authorized_keys file if needed.
    15  func DeleteDeployKey(ctx context.Context, doer *user_model.User, id int64) error {
    16  	dbCtx, committer, err := db.TxContext(ctx)
    17  	if err != nil {
    18  		return err
    19  	}
    20  	defer committer.Close()
    21  
    22  	if err := models.DeleteDeployKey(dbCtx, doer, id); err != nil {
    23  		return err
    24  	}
    25  	if err := committer.Commit(); err != nil {
    26  		return err
    27  	}
    28  
    29  	return RewriteAllPublicKeys(ctx)
    30  }