mirror of https://github.com/go-gitea/gitea
Added test environment for mssql (#4282)
* Added test environment for m$sql * Added template for test environment for m$sql * Fix password * Fix password (again) * Fix password (again again) * Fix db * Ci trigger (Looking at you drone....) * Ci trigger (Looking at you drone....) * Ci trigger (Looking at you drone....) * Ci trigger (Looking at you drone....) * Create master database for mssql integration tests Signed-off-by: Jonas Franz <info@jonasfranz.software> * Create database only if master do not exist Signed-off-by: Jonas Franz <info@jonasfranz.software> * Fix mssql integration tests by using custom database "gitea" Signed-off-by: Jonas Franz <info@jonasfranz.software> * Moved defer * bump xorm * updated xorm * Fixed buildpull/5522/head^2
parent
b1f3685015
commit
6db7dbd333
@ -0,0 +1,72 @@ |
|||||||
|
APP_NAME = Gitea: Git with a cup of tea |
||||||
|
RUN_MODE = prod |
||||||
|
|
||||||
|
[database] |
||||||
|
DB_TYPE = mssql |
||||||
|
HOST = {{TEST_MSSQL_HOST}} |
||||||
|
NAME = {{TEST_MSSQL_DBNAME}} |
||||||
|
USER = {{TEST_MSSQL_USERNAME}} |
||||||
|
PASSWD = {{TEST_MSSQL_PASSWORD}} |
||||||
|
SSL_MODE = disable |
||||||
|
|
||||||
|
[indexer] |
||||||
|
ISSUE_INDEXER_PATH = integrations/indexers-mssql/issues.bleve |
||||||
|
REPO_INDEXER_ENABLED = true |
||||||
|
REPO_INDEXER_PATH = integrations/indexers-mssql/repos.bleve |
||||||
|
|
||||||
|
[repository] |
||||||
|
ROOT = integrations/gitea-integration-mssql/gitea-repositories |
||||||
|
|
||||||
|
[repository.local] |
||||||
|
LOCAL_COPY_PATH = tmp/local-repo-mssql |
||||||
|
LOCAL_WIKI_PATH = tmp/local-wiki-mssql |
||||||
|
|
||||||
|
[server] |
||||||
|
SSH_DOMAIN = localhost |
||||||
|
HTTP_PORT = 3003 |
||||||
|
ROOT_URL = http://localhost:3003/ |
||||||
|
DISABLE_SSH = false |
||||||
|
SSH_LISTEN_HOST = localhost |
||||||
|
SSH_PORT = 2201 |
||||||
|
START_SSH_SERVER = true |
||||||
|
LFS_START_SERVER = true |
||||||
|
LFS_CONTENT_PATH = data/lfs-mssql |
||||||
|
OFFLINE_MODE = false |
||||||
|
LFS_JWT_SECRET = Tv_MjmZuHqpIY6GFl12ebgkRAMt4RlWt0v4EHKSXO0w |
||||||
|
APP_DATA_PATH = integrations/gitea-integration-mssql/data |
||||||
|
|
||||||
|
[mailer] |
||||||
|
ENABLED = false |
||||||
|
|
||||||
|
[service] |
||||||
|
REGISTER_EMAIL_CONFIRM = false |
||||||
|
ENABLE_NOTIFY_MAIL = false |
||||||
|
DISABLE_REGISTRATION = false |
||||||
|
ENABLE_CAPTCHA = false |
||||||
|
REQUIRE_SIGNIN_VIEW = false |
||||||
|
DEFAULT_KEEP_EMAIL_PRIVATE = false |
||||||
|
DEFAULT_ALLOW_CREATE_ORGANIZATION = true |
||||||
|
NO_REPLY_ADDRESS = noreply.example.org |
||||||
|
|
||||||
|
[picture] |
||||||
|
DISABLE_GRAVATAR = false |
||||||
|
ENABLE_FEDERATED_AVATAR = false |
||||||
|
|
||||||
|
[session] |
||||||
|
PROVIDER = file |
||||||
|
PROVIDER_CONFIG = data/sessions-mssql |
||||||
|
|
||||||
|
[log] |
||||||
|
MODE = console,file |
||||||
|
ROOT_PATH = mssql-log |
||||||
|
|
||||||
|
[log.console] |
||||||
|
LEVEL = Warn |
||||||
|
|
||||||
|
[log.file] |
||||||
|
LEVEL = Debug |
||||||
|
|
||||||
|
[security] |
||||||
|
INSTALL_LOCK = true |
||||||
|
SECRET_KEY = 9pCviYTWSb |
||||||
|
INTERNAL_TOKEN = eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJuYmYiOjE0OTU1NTE2MTh9.hhSVGOANkaKk3vfCd2jDOIww4pUk0xtg9JRde5UogyQ |
@ -0,0 +1,30 @@ |
|||||||
|
// Copyright 2018 The Xorm Authors. All rights reserved.
|
||||||
|
// Use of this source code is governed by a BSD-style
|
||||||
|
// license that can be found in the LICENSE file.
|
||||||
|
|
||||||
|
package xorm |
||||||
|
|
||||||
|
// ContextCache is the interface that operates the cache data.
|
||||||
|
type ContextCache interface { |
||||||
|
// Put puts value into cache with key.
|
||||||
|
Put(key string, val interface{}) |
||||||
|
// Get gets cached value by given key.
|
||||||
|
Get(key string) interface{} |
||||||
|
} |
||||||
|
|
||||||
|
type memoryContextCache map[string]interface{} |
||||||
|
|
||||||
|
// NewMemoryContextCache return memoryContextCache
|
||||||
|
func NewMemoryContextCache() memoryContextCache { |
||||||
|
return make(map[string]interface{}) |
||||||
|
} |
||||||
|
|
||||||
|
// Put puts value into cache with key.
|
||||||
|
func (m memoryContextCache) Put(key string, val interface{}) { |
||||||
|
m[key] = val |
||||||
|
} |
||||||
|
|
||||||
|
// Get gets cached value by given key.
|
||||||
|
func (m memoryContextCache) Get(key string) interface{} { |
||||||
|
return m[key] |
||||||
|
} |
@ -1,22 +0,0 @@ |
|||||||
// Copyright 2017 The Xorm Authors. All rights reserved.
|
|
||||||
// Use of this source code is governed by a BSD-style
|
|
||||||
// license that can be found in the LICENSE file.
|
|
||||||
|
|
||||||
// +build go1.6
|
|
||||||
|
|
||||||
package xorm |
|
||||||
|
|
||||||
import "time" |
|
||||||
|
|
||||||
// SetConnMaxLifetime sets the maximum amount of time a connection may be reused.
|
|
||||||
func (engine *Engine) SetConnMaxLifetime(d time.Duration) { |
|
||||||
engine.db.SetConnMaxLifetime(d) |
|
||||||
} |
|
||||||
|
|
||||||
// SetConnMaxLifetime sets the maximum amount of time a connection may be reused.
|
|
||||||
func (eg *EngineGroup) SetConnMaxLifetime(d time.Duration) { |
|
||||||
eg.Engine.SetConnMaxLifetime(d) |
|
||||||
for i := 0; i < len(eg.slaves); i++ { |
|
||||||
eg.slaves[i].SetConnMaxLifetime(d) |
|
||||||
} |
|
||||||
} |
|
@ -0,0 +1,26 @@ |
|||||||
|
// Copyright 2018 The Xorm Authors. All rights reserved.
|
||||||
|
// Use of this source code is governed by a BSD-style
|
||||||
|
// license that can be found in the LICENSE file.
|
||||||
|
|
||||||
|
package xorm |
||||||
|
|
||||||
|
// Transaction Execute sql wrapped in a transaction(abbr as tx), tx will automatic commit if no errors occurred
|
||||||
|
func (engine *Engine) Transaction(f func(*Session) (interface{}, error)) (interface{}, error) { |
||||||
|
session := engine.NewSession() |
||||||
|
defer session.Close() |
||||||
|
|
||||||
|
if err := session.Begin(); err != nil { |
||||||
|
return nil, err |
||||||
|
} |
||||||
|
|
||||||
|
result, err := f(session) |
||||||
|
if err != nil { |
||||||
|
return nil, err |
||||||
|
} |
||||||
|
|
||||||
|
if err := session.Commit(); err != nil { |
||||||
|
return nil, err |
||||||
|
} |
||||||
|
|
||||||
|
return result, nil |
||||||
|
} |
Loading…
Reference in new issue