From eb38cff269e23f66393e027aa412bc6456cd61a6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?St=C3=A9phane=20Bour?= Date: Mon, 16 Oct 2017 14:41:28 +0200 Subject: [PATCH 1/2] feat: adding parameters for setfacl and permissions --- lib/capistrano/tasks/file-permissions.rake | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/lib/capistrano/tasks/file-permissions.rake b/lib/capistrano/tasks/file-permissions.rake index 8e22167..afa5347 100644 --- a/lib/capistrano/tasks/file-permissions.rake +++ b/lib/capistrano/tasks/file-permissions.rake @@ -10,7 +10,7 @@ def absolute_writable_paths end end -def acl_entries(items, type = 'u', permissions = 'rwX') +def acl_entries(items, type = 'u', permissions = fetch(:file_permissions_default_permissions)) items.map { |item| "#{type}:#{item}:#{permissions}" } end @@ -42,8 +42,8 @@ namespace :deploy do entries = entries.map { |e| "-m #{e}" }.join(' ') - execute :setfacl, "-R", entries, *paths - execute :setfacl, "-dR", entries, *paths.map + execute :setfacl, fetch(:file_permissions_setfacl_first), entries, *paths + execute :setfacl, fetch(:file_permissions_setfacl_second), entries, *paths.map end end @@ -98,5 +98,8 @@ namespace :load do set :file_permissions_users, [] set :file_permissions_groups, [] set :file_permissions_chmod_mode, "0777" + set :file_permissions_setfacl_first, "-Rn" + set :file_permissions_setfacl_second, "-dRn" + set :file_permissions_default_permissions, "rwX" end end From d5e4383d12b8e46d220cbe21c7aaaac404484a30 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?St=C3=A9phane=20Bour?= Date: Mon, 16 Oct 2017 14:42:37 +0200 Subject: [PATCH 2/2] docs: update default configuration variables --- README.md | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 15bc6a6..dae2e90 100644 --- a/README.md +++ b/README.md @@ -47,7 +47,7 @@ Assume `app/logs` is a shared directory, and `app/cache` is part of the normal release, this gem would execute the following: ``` -[..] setfacl -Rn -m u:www-data:rwX -m u::rwX /shared/app/logs //app/cache +[..] setfacl -R -m u:www-data:rwX -m u::rwX /shared/app/logs //app/cache ``` ### Other tasks @@ -65,6 +65,9 @@ set :file_permissions_paths, [] set :file_permissions_users, [] set :file_permissions_groups, [] set :file_permissions_chmod_mode, "0777" +set :file_permissions_setfacl_first, "-R" +set :file_permissions_setfacl_second, "-dR" +set :file_permissions_default_permissions, "rwX" ``` ## Contributing