summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorDaniel Silverstone <dsilvers@digital-scurf.org>2017-06-18 20:22:08 +0100
committerDaniel Silverstone <dsilvers@digital-scurf.org>2017-07-08 15:41:55 +0100
commit7db114a85daad6a628493712df06d71372400d69 (patch)
treed77d01a80b478f3dd7ff643a99078ed365abd49b /lib
parentfca3bcf7ec9f368edea838a8a3c57d1e60755d55 (diff)
downloadgitano-7db114a85daad6a628493712df06d71372400d69.tar.gz
Re-own repos when renaming users
Diffstat (limited to 'lib')
-rw-r--r--lib/gitano/admincommand.lua14
1 files changed, 14 insertions, 0 deletions
diff --git a/lib/gitano/admincommand.lua b/lib/gitano/admincommand.lua
index 3dd3258..e9f2fdf 100644
--- a/lib/gitano/admincommand.lua
+++ b/lib/gitano/admincommand.lua
@@ -344,6 +344,20 @@ local function builtin_user_run(conf, _, cmdline, env)
log.fatal(commit)
end
log.state("Committed: " .. reason)
+ if cmdline[2] == "rename" then
+ local function reown_repo(_, repo)
+ if repo:conf_get("project.owner") == cmdline[3] then
+ local ok, msg = repo:conf_set_and_save(
+ "project.owner", cmdline[4],
+ env.GITANO_USER, env.GITANO_ORIG_USER)
+ if not ok then
+ log.error(msg)
+ return "exit", 1
+ end
+ end
+ end
+ repository.foreach(conf, reown_repo)
+ end
end
return "exit", 0
end