diff --git a/models/repo/update.go b/models/repo/update.go index 5f5e8eb7e56..38bac3e10c1 100644 --- a/models/repo/update.go +++ b/models/repo/update.go @@ -77,7 +77,7 @@ func IsErrRepoAlreadyExist(err error) bool { } func (err ErrRepoAlreadyExist) Error() string { - return fmt.Sprintf("repository already exists [uname: %s, name: %s]", err.Uname, err.Name) + return fmt.Sprintf("repository already exists [owner: %s, repo: %s]", err.Uname, err.Name) } func (err ErrRepoAlreadyExist) Unwrap() error { diff --git a/routers/api/v1/repo/repo.go b/routers/api/v1/repo/repo.go index 1174b103cf0..2f155fbe7b6 100644 --- a/routers/api/v1/repo/repo.go +++ b/routers/api/v1/repo/repo.go @@ -23,7 +23,6 @@ import ( unit_model "gitea.dev/models/unit" user_model "gitea.dev/models/user" "gitea.dev/modules/git" - "gitea.dev/modules/label" "gitea.dev/modules/log" "gitea.dev/modules/markup" "gitea.dev/modules/optional" @@ -254,17 +253,7 @@ func CreateUserRepo(ctx *context.APIContext, owner *user_model.User, opt api.Cre ObjectFormatName: string(opt.ObjectFormatName), }) if err != nil { - if repo_model.IsErrRepoAlreadyExist(err) { - ctx.APIError(http.StatusConflict, "The repository with the same name already exists.") - } else if db.IsErrNameReserved(err) || - db.IsErrNamePatternNotAllowed(err) || - label.IsErrTemplateLoad(err) { - ctx.APIError(http.StatusUnprocessableEntity, err.Error()) - } else if errors.Is(err, util.ErrPermissionDenied) { - ctx.APIError(http.StatusForbidden, err.Error()) - } else { - ctx.APIErrorInternal(err) - } + ctx.APIErrorAuto(err) return } diff --git a/tests/integration/api_repo_test.go b/tests/integration/api_repo_test.go index b723901fc5f..8bdb79f368b 100644 --- a/tests/integration/api_repo_test.go +++ b/tests/integration/api_repo_test.go @@ -517,7 +517,7 @@ func testAPIRepoMigrateConflict(t *testing.T, u *url.URL) { AddTokenAuth(httpContext.Token) resp := httpContext.Session.MakeRequest(t, req, http.StatusConflict) respJSON := DecodeJSON(t, resp, map[string]string{}) - assert.Equal(t, "The repository with the same name already exists.", respJSON["message"]) + assert.Contains(t, respJSON["message"], "already exists") }) } @@ -574,7 +574,7 @@ func testAPIRepoCreateConflict(t *testing.T, u *url.URL) { AddTokenAuth(httpContext.Token) resp := httpContext.Session.MakeRequest(t, req, http.StatusConflict) respJSON := DecodeJSON(t, resp, map[string]string{}) - assert.Equal(t, "The repository with the same name already exists.", respJSON["message"]) + assert.Contains(t, respJSON["message"], "already exists") }) }