-
Notifications
You must be signed in to change notification settings - Fork 81
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Separate tasks by permissions rather than config target #32
Comments
Hi, Yes, this plugin liberally uses passwordless Here are the things I personally wouldn't like to give up on:
Given the above constraints I'm not sure I'd first go with the big update to this plugin. These solutions come to my mind though:
Thoughs? Feedback? |
I totally agree that I love how simple this setup is for most people -- i wouldn't want to change that. I wasn't thinking my suggestion would even change anything for those who don't care, but I was more wondering whether we could decompose both the unicorn and nginx setup tasks each into a "config setup" task (where config is copied into shared_path), and a "create symlink" task (where symlinking in /etc/init.d and /etc/nginx/sites-available happens). So what is theoretically two tasks now ("setup nginx" and "setup unicorn") is now 4 subtasks, with wrappers that allow the same simplicity with have now, for those who don't care. The one other change that's wrapped up with this is also moving |
Hi @patcon I'm not a server ninja, but I think it's a quite good approach. It's now in a test phase. Please tell what you think about that. |
Thanks! I'm not using this right now, but I'm sure someone will find your experience useful later :) |
It seems that these tasks are assuming liberal access to sudo command, which not everyone would be willing to give to the deploy user.
For example, those using configuration management tools like Chef would likely provision the server and do all the appropriate setup as root, and then only give the deploy user what it needs.
I would recommend storing all the config and init files in the shared_path (perhaps building and syncing all those config in one task), and then have smaller tasks for generating the symlinks with root. That way, someone using a config management tool can create those high-privilege symlinks with it, and just use cap to update that files in shared_path when required.
Would that make sense? I would really not like to give my deploy user anything but the most minimal of access to sudo (ie. just
/etc/init.d/nginx reload
)The text was updated successfully, but these errors were encountered: