mirror of https://github.com/go-gitea/gitea.git
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
35 lines
984 B
35 lines
984 B
// Copyright 2020 The Gitea Authors. All rights reserved. |
|
// SPDX-License-Identifier: MIT |
|
|
|
package private |
|
|
|
import ( |
|
"context" |
|
"fmt" |
|
|
|
"code.gitea.io/gitea/modules/setting" |
|
) |
|
|
|
// RestoreParams structure holds a data for restore repository |
|
type RestoreParams struct { |
|
RepoDir string |
|
OwnerName string |
|
RepoName string |
|
Units []string |
|
Validation bool |
|
} |
|
|
|
// RestoreRepo calls the internal RestoreRepo function |
|
func RestoreRepo(ctx context.Context, repoDir, ownerName, repoName string, units []string, validation bool) ResponseExtra { |
|
reqURL := setting.LocalURL + "api/internal/restore_repo" |
|
|
|
req := newInternalRequestAPI(ctx, reqURL, "POST", RestoreParams{ |
|
RepoDir: repoDir, |
|
OwnerName: ownerName, |
|
RepoName: repoName, |
|
Units: units, |
|
Validation: validation, |
|
}) |
|
req.SetReadWriteTimeout(0) // since the request will spend much time, don't timeout |
|
return requestJSONClientMsg(req, fmt.Sprintf("Restore repo %s/%s successfully", ownerName, repoName)) |
|
}
|
|
|