mirror of
				https://gitee.com/gitea/gitea
				synced 2025-11-04 00:20:25 +08:00 
			
		
		
		
	Add RemoteAddress to mirrors (#26952)
				
					
				
			This PR adds a new field `RemoteAddress` to both mirror types which contains the sanitized remote address for easier (database) access to that information. Will be used in the audit PR if merged.
This commit is contained in:
		@@ -243,6 +243,13 @@ func SettingsPost(ctx *context.Context) {
 | 
			
		||||
			return
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		remoteAddress, err := util.SanitizeURL(form.MirrorAddress)
 | 
			
		||||
		if err != nil {
 | 
			
		||||
			ctx.ServerError("SanitizeURL", err)
 | 
			
		||||
			return
 | 
			
		||||
		}
 | 
			
		||||
		pullMirror.RemoteAddress = remoteAddress
 | 
			
		||||
 | 
			
		||||
		form.LFS = form.LFS && setting.LFS.StartServer
 | 
			
		||||
 | 
			
		||||
		if len(form.LFSEndpoint) > 0 {
 | 
			
		||||
@@ -397,12 +404,19 @@ func SettingsPost(ctx *context.Context) {
 | 
			
		||||
			return
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		remoteAddress, err := util.SanitizeURL(form.PushMirrorAddress)
 | 
			
		||||
		if err != nil {
 | 
			
		||||
			ctx.ServerError("SanitizeURL", err)
 | 
			
		||||
			return
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		m := &repo_model.PushMirror{
 | 
			
		||||
			RepoID:       repo.ID,
 | 
			
		||||
			Repo:         repo,
 | 
			
		||||
			RemoteName:   fmt.Sprintf("remote_mirror_%s", remoteSuffix),
 | 
			
		||||
			SyncOnCommit: form.PushMirrorSyncOnCommit,
 | 
			
		||||
			Interval:     interval,
 | 
			
		||||
			RepoID:        repo.ID,
 | 
			
		||||
			Repo:          repo,
 | 
			
		||||
			RemoteName:    fmt.Sprintf("remote_mirror_%s", remoteSuffix),
 | 
			
		||||
			SyncOnCommit:  form.PushMirrorSyncOnCommit,
 | 
			
		||||
			Interval:      interval,
 | 
			
		||||
			RemoteAddress: remoteAddress,
 | 
			
		||||
		}
 | 
			
		||||
		if err := repo_model.InsertPushMirror(ctx, m); err != nil {
 | 
			
		||||
			ctx.ServerError("InsertPushMirror", err)
 | 
			
		||||
 
 | 
			
		||||
@@ -628,15 +628,6 @@ func markupRender(ctx *context.Context, renderCtx *markup.RenderContext, input i
 | 
			
		||||
	return escaped, output, err
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func safeURL(address string) string {
 | 
			
		||||
	u, err := url.Parse(address)
 | 
			
		||||
	if err != nil {
 | 
			
		||||
		return address
 | 
			
		||||
	}
 | 
			
		||||
	u.User = nil
 | 
			
		||||
	return u.String()
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func checkHomeCodeViewable(ctx *context.Context) {
 | 
			
		||||
	if len(ctx.Repo.Units) > 0 {
 | 
			
		||||
		if ctx.Repo.Repository.IsBeingCreated() {
 | 
			
		||||
@@ -660,7 +651,7 @@ func checkHomeCodeViewable(ctx *context.Context) {
 | 
			
		||||
 | 
			
		||||
			ctx.Data["Repo"] = ctx.Repo
 | 
			
		||||
			ctx.Data["MigrateTask"] = task
 | 
			
		||||
			ctx.Data["CloneAddr"] = safeURL(cfg.CloneAddr)
 | 
			
		||||
			ctx.Data["CloneAddr"], _ = util.SanitizeURL(cfg.CloneAddr)
 | 
			
		||||
			ctx.Data["Failed"] = task.Status == structs.TaskStatusFailed
 | 
			
		||||
			ctx.HTML(http.StatusOK, tplMigrating)
 | 
			
		||||
			return
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user