diff options
author | Lunny Xiao <xiaolunwen@gmail.com> | 2017-03-10 23:43:51 +0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-03-10 23:43:51 +0800 |
commit | 74cde12677bc548487ed1caf192eb19b0b7cf99c (patch) | |
tree | 08dd8fca3b12c447833a13f0aefd87e9f4d90431 /models/migrations/v19.go | |
parent | f5476bdbb182835996e4e7269df64bf50dfc367b (diff) | |
download | gitea-74cde12677bc548487ed1caf192eb19b0b7cf99c.tar.gz gitea-74cde12677bc548487ed1caf192eb19b0b7cf99c.zip |
Fix upgrade failed after ever rollback (#1194)
* fix upgrade failed after rollback
* fix upgrade failed after rollback
* fix possible upgrade twice fail after rollback
Diffstat (limited to 'models/migrations/v19.go')
-rw-r--r-- | models/migrations/v19.go | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/models/migrations/v19.go b/models/migrations/v19.go index 6e0dbedaa3..0edeb3e92e 100644 --- a/models/migrations/v19.go +++ b/models/migrations/v19.go @@ -60,8 +60,14 @@ func generateAndMigrateGitHooks(x *xorm.Engine) (err error) { oldHookPath := filepath.Join(hookDir, hookName) newHookPath := filepath.Join(hookDir, hookName+".d", "gitea") - if err = os.MkdirAll(filepath.Join(hookDir, hookName+".d"), os.ModePerm); err != nil { - return fmt.Errorf("create hooks dir '%s': %v", filepath.Join(hookDir, hookName+".d"), err) + customHooksDir := filepath.Join(hookDir, hookName+".d") + // if it's exist, that means you have upgraded ever + if com.IsExist(customHooksDir) { + continue + } + + if err = os.MkdirAll(customHooksDir, os.ModePerm); err != nil { + return fmt.Errorf("create hooks dir '%s': %v", customHooksDir, err) } // WARNING: Old server-side hooks will be moved to sub directory with the same name |