##// END OF EJS Templates
merged default into stable
super-admin -
r4781:c8c75bc4 merge stable
parent child Browse files
Show More
@@ -0,0 +1,40 b''
1 |RCE| 4.27.1 |RNS|
2 ------------------
3
4 Release Date
5 ^^^^^^^^^^^^
6
7 - 2022-10-12
8
9
10 New Features
11 ^^^^^^^^^^^^
12
13
14
15 General
16 ^^^^^^^
17
18
19
20 Security
21 ^^^^^^^^
22
23
24
25 Performance
26 ^^^^^^^^^^^
27
28
29
30 Fixes
31 ^^^^^
32
33 - VCSServer: fixes the file-store backend to use serialized names for filename cache of vcsserver.
34
35
36
37 Upgrade notes
38 ^^^^^^^^^^^^^
39
40 - Un-scheduled release 4.27.1 addressing some new cache backed problems.
@@ -24,7 +24,7 b' done = true'
24 24
25 25 [release]
26 26 state = prepared
27 version = 4.27.0
27 version = 4.26.0
28 28
29 29 [task:generate_js_routes]
30 30
@@ -262,3 +262,39 b' ishell interface should be used.'
262 262 In [1]: repo = Repository.get_by_repo_name('SOME_REPO_NAME')
263 263 In [2]: repo.archived = False
264 264 In [3]: Session().add(repo);Session().commit()
265
266
267
268
269 Bulk change repository owner
270 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
271
272 Here's how one can change an owner of repository for an user who has been de activated.
273 Settings a new owner can be done via ishell for all repositories that past owner had.
274
275 do run this script the interactive ishell interface should be used.
276
277 .. code-block:: bash
278
279 # Open iShell from the terminal
280 $ rccontrol ishell enterprise-1/community-1
281
282
283 .. code-block:: python
284
285 from rhodecode.model.db import User, Repository, Session
286 from rhodecode.model.permission import PermissionModel
287
288 # replace old-owner and new-owner with your exact users
289 old_owner = User.get_by_username('old-owner')
290 new_owner = User.get_by_username('new-owner')
291
292 # list of users we need to "flush" permissions
293 affected_user_ids = [new_owner.user_id, old_owner.user_id]
294
295 for repo in Repository.get_all_repos(user_id=old_owner.user_id):
296 repo.user = new_owner
297 Session().add(repo)
298 Session().commit()
299
300 PermissionModel().trigger_permission_flush(affected_user_ids)
@@ -9,6 +9,7 b' Release Notes'
9 9 .. toctree::
10 10 :maxdepth: 1
11 11
12 release-notes-4.27.1.rst
12 13 release-notes-4.27.0.rst
13 14 release-notes-4.26.0.rst
14 15 release-notes-4.25.2.rst
@@ -1883,7 +1883,7 b' self: super: {'
1883 1883 };
1884 1884 };
1885 1885 "rhodecode-enterprise-ce" = super.buildPythonPackage {
1886 name = "rhodecode-enterprise-ce-4.27.0";
1886 name = "rhodecode-enterprise-ce-4.27.1";
1887 1887 buildInputs = [
1888 1888 self."pytest"
1889 1889 self."py"
@@ -185,8 +185,10 b' class RemoteRepo(object):'
185 185 self.url = remote_maker.url
186 186 self.stream_url = remote_maker.stream_url
187 187 self._session = remote_maker._session_factory()
188
189 cache_repo_id = self._repo_id_sanitizer(repo_id)
188 190 self._cache_region, self._cache_namespace = \
189 remote_maker.init_cache_region(self._repo_id_sanitizer(repo_id))
191 remote_maker.init_cache_region(cache_repo_id)
190 192
191 193 with_wire = with_wire or {}
192 194
@@ -194,6 +196,7 b' class RemoteRepo(object):'
194 196 self._wire = {
195 197 "path": path, # repo path
196 198 "repo_id": repo_id,
199 "cache_repo_id": cache_repo_id,
197 200 "config": config,
198 201 "repo_state_uid": repo_state_uid,
199 202 "context": self._create_vcs_cache_context(path, repo_state_uid)
@@ -210,7 +213,7 b' class RemoteRepo(object):'
210 213 self.cert_dir = get_cert_path(rhodecode.CONFIG.get('__file__'))
211 214
212 215 def _repo_id_sanitizer(self, repo_id):
213 return repo_id.replace('/', '__')
216 return repo_id.replace('/', '__').replace('-', '_')
214 217
215 218 def __getattr__(self, name):
216 219
General Comments 0
You need to be logged in to leave comments. Login now