summaryrefslogtreecommitdiffstats
path: root/services/convert/mirror.go
diff options
context:
space:
mode:
Diffstat (limited to 'services/convert/mirror.go')
-rw-r--r--services/convert/mirror.go27
1 files changed, 27 insertions, 0 deletions
diff --git a/services/convert/mirror.go b/services/convert/mirror.go
new file mode 100644
index 0000000..85e0d1c
--- /dev/null
+++ b/services/convert/mirror.go
@@ -0,0 +1,27 @@
+// Copyright 2022 The Gitea Authors. All rights reserved.
+// SPDX-License-Identifier: MIT
+
+package convert
+
+import (
+ "context"
+
+ repo_model "code.gitea.io/gitea/models/repo"
+ api "code.gitea.io/gitea/modules/structs"
+)
+
+// ToPushMirror convert from repo_model.PushMirror and remoteAddress to api.TopicResponse
+func ToPushMirror(ctx context.Context, pm *repo_model.PushMirror) (*api.PushMirror, error) {
+ repo := pm.GetRepository(ctx)
+ return &api.PushMirror{
+ RepoName: repo.Name,
+ RemoteName: pm.RemoteName,
+ RemoteAddress: pm.RemoteAddress,
+ CreatedUnix: pm.CreatedUnix.AsTime(),
+ LastUpdateUnix: pm.LastUpdateUnix.AsTimePtr(),
+ LastError: pm.LastError,
+ Interval: pm.Interval.String(),
+ SyncOnCommit: pm.SyncOnCommit,
+ PublicKey: pm.GetPublicKey(),
+ }, nil
+}