Browse Source

Re-enable import local paths after reversion from #13610 (#14925) (#14927)

Backport #14925

PR #13610 unfortunately disabled importing repositories from local paths.
This PR restores this functionality.

Fix #14700

Signed-off-by: Andrew Thornton <art27@cantab.net>
tags/v1.13.5
zeripath GitHub 4 years ago
parent
commit
951ad62073
2 changed files with 19 additions and 0 deletions
  1. +7
    -0
      modules/migrations/migrate.go
  2. +12
    -0
      modules/migrations/migrate_test.go

+ 7
- 0
modules/migrations/migrate.go View File

@@ -52,6 +52,13 @@ func isMigrateURLAllowed(remoteURL string) error {
}
}

if u.Host == "" {
if !setting.ImportLocalPaths {
return &models.ErrMigrationNotAllowed{Host: "<LOCAL_FILESYSTEM>"}
}
return nil
}

if !setting.Migrations.AllowLocalNetworks {
addrList, err := net.LookupIP(strings.Split(u.Host, ":")[0])
if err != nil {


+ 12
- 0
modules/migrations/migrate_test.go View File

@@ -31,4 +31,16 @@ func TestMigrateWhiteBlocklist(t *testing.T) {

err = isMigrateURLAllowed("https://github.com/go-gitea/gitea.git")
assert.Error(t, err)

old := setting.ImportLocalPaths
setting.ImportLocalPaths = false

err = isMigrateURLAllowed("/home/foo/bar/goo")
assert.Error(t, err)

setting.ImportLocalPaths = true
err = isMigrateURLAllowed("/home/foo/bar/goo")
assert.NoError(t, err)

setting.ImportLocalPaths = old
}

Loading…
Cancel
Save