Show More
@@ -0,0 +1,39 b'' | |||||
|
1 | import logging | |||
|
2 | ||||
|
3 | from sqlalchemy import * | |||
|
4 | ||||
|
5 | from rhodecode.model import meta | |||
|
6 | from rhodecode.lib.dbmigrate.versions import _reset_base, notify | |||
|
7 | ||||
|
8 | log = logging.getLogger(__name__) | |||
|
9 | ||||
|
10 | ||||
|
11 | def upgrade(migrate_engine): | |||
|
12 | """ | |||
|
13 | Upgrade operations go here. | |||
|
14 | Don't create your own engine; bind migrate_engine to your metadata | |||
|
15 | """ | |||
|
16 | _reset_base(migrate_engine) | |||
|
17 | from rhodecode.lib.dbmigrate.schema import db_4_11_0_0 as db | |||
|
18 | ||||
|
19 | repository_table = db.Repository.__table__ | |||
|
20 | ||||
|
21 | push_uri = Column( | |||
|
22 | "push_uri", db.EncryptedTextValue(), nullable=True, unique=False, | |||
|
23 | default=None) | |||
|
24 | ||||
|
25 | push_uri.create(table=repository_table) | |||
|
26 | ||||
|
27 | # issue fixups | |||
|
28 | fixups(db, meta.Session) | |||
|
29 | ||||
|
30 | ||||
|
31 | def downgrade(migrate_engine): | |||
|
32 | meta = MetaData() | |||
|
33 | meta.bind = migrate_engine | |||
|
34 | ||||
|
35 | ||||
|
36 | def fixups(models, _SESSION): | |||
|
37 | pass | |||
|
38 | ||||
|
39 |
@@ -51,7 +51,7 b' PYRAMID_SETTINGS = {}' | |||||
51 | EXTENSIONS = {} |
|
51 | EXTENSIONS = {} | |
52 |
|
52 | |||
53 | __version__ = ('.'.join((str(each) for each in VERSION[:3]))) |
|
53 | __version__ = ('.'.join((str(each) for each in VERSION[:3]))) | |
54 |
__dbversion__ = 8 |
|
54 | __dbversion__ = 86 # defines current db version for migrations | |
55 | __platform__ = platform.system() |
|
55 | __platform__ = platform.system() | |
56 | __license__ = 'AGPLv3, and Commercial License' |
|
56 | __license__ = 'AGPLv3, and Commercial License' | |
57 | __author__ = 'RhodeCode GmbH' |
|
57 | __author__ = 'RhodeCode GmbH' |
@@ -1557,6 +1557,9 b' class Repository(Base, BaseModel):' | |||||
1557 | clone_uri = Column( |
|
1557 | clone_uri = Column( | |
1558 | "clone_uri", EncryptedTextValue(), nullable=True, unique=False, |
|
1558 | "clone_uri", EncryptedTextValue(), nullable=True, unique=False, | |
1559 | default=None) |
|
1559 | default=None) | |
|
1560 | push_uri = Column( | |||
|
1561 | "push_uri", EncryptedTextValue(), nullable=True, unique=False, | |||
|
1562 | default=None) | |||
1560 | repo_type = Column( |
|
1563 | repo_type = Column( | |
1561 | "repo_type", String(255), nullable=False, unique=False, default=None) |
|
1564 | "repo_type", String(255), nullable=False, unique=False, default=None) | |
1562 | user_id = Column( |
|
1565 | user_id = Column( | |
@@ -1943,6 +1946,7 b' class Repository(Base, BaseModel):' | |||||
1943 | 'repo_name': repo.repo_name, |
|
1946 | 'repo_name': repo.repo_name, | |
1944 | 'repo_type': repo.repo_type, |
|
1947 | 'repo_type': repo.repo_type, | |
1945 | 'clone_uri': repo.clone_uri or '', |
|
1948 | 'clone_uri': repo.clone_uri or '', | |
|
1949 | 'push_uri': repo.push_uri or '', | |||
1946 | 'url': RepoModel().get_url(self), |
|
1950 | 'url': RepoModel().get_url(self), | |
1947 | 'private': repo.private, |
|
1951 | 'private': repo.private, | |
1948 | 'created_on': repo.created_on, |
|
1952 | 'created_on': repo.created_on, | |
@@ -2077,6 +2081,16 b' class Repository(Base, BaseModel):' | |||||
2077 | clone_uri = url_obj.with_password('*****') |
|
2081 | clone_uri = url_obj.with_password('*****') | |
2078 | return clone_uri |
|
2082 | return clone_uri | |
2079 |
|
2083 | |||
|
2084 | @property | |||
|
2085 | def push_uri_hidden(self): | |||
|
2086 | push_uri = self.push_uri | |||
|
2087 | if push_uri: | |||
|
2088 | import urlobject | |||
|
2089 | url_obj = urlobject.URLObject(cleaned_uri(push_uri)) | |||
|
2090 | if url_obj.password: | |||
|
2091 | push_uri = url_obj.with_password('*****') | |||
|
2092 | return push_uri | |||
|
2093 | ||||
2080 | def clone_url(self, **override): |
|
2094 | def clone_url(self, **override): | |
2081 | from rhodecode.model.settings import SettingsModel |
|
2095 | from rhodecode.model.settings import SettingsModel | |
2082 |
|
2096 |
General Comments 0
You need to be logged in to leave comments.
Login now