prosodyctl: Change ownership of certs to same as the cert base dir when running from a source checkout
authorKim Alvefur <zash@zash.se>
Wed, 24 Oct 2018 17:13:49 +0200
changeset 9547 cbd3b9d4c60b
parent 9546 92bfb12684b0
child 9548 9dc7280dd8dc
child 9646 e31053344231
prosodyctl: Change ownership of certs to same as the cert base dir when running from a source checkout
prosodyctl
--- a/prosodyctl	Wed Oct 24 17:04:17 2018 +0200
+++ b/prosodyctl	Wed Oct 24 17:13:49 2018 +0200
@@ -867,7 +867,10 @@
 	end
 	assert(input:close());
 	assert(output:close());
-	if owner and group then
+	if not prosody.installed then
+		-- FIXME this is possibly specific to GNU chown
+		os.execute(("chown -c --reference=%s %s"):format(sh_esc(cert_basedir), sh_esc(to)));
+	elseif owner and group then
 		local ok = os.execute(("chown %s:%s %s"):format(sh_esc(owner), sh_esc(group), sh_esc(to)));
 		assert(ok == true or ok == 0, "Failed to change ownership of "..to);
 	end