Get rid of unnecessary `-E` flag for `sudo`

In the "Execute Command Example - Sudo Example", the used command is
defining environment variables prematurely, hence requiring the sudo
invocation to be made with the `-E` flag. However, this is not only
necessary but might have indesirable side effects, as the `-E` flag
forwards the whole environment to the subshell.
This commit is contained in:
7heo 2016-10-19 16:28:48 +02:00 committed by 7heo
parent 2ecbfd551b
commit 4a4d529b33
1 changed files with 2 additions and 4 deletions

View File

@ -112,13 +112,11 @@ Some operating systems default to a non-root user. For example if you login as
`execute_command` to be: `execute_command` to be:
``` {.text} ``` {.text}
"echo 'packer' | {{ .Vars }} sudo -E -S sh '{{ .Path }}'" "echo 'packer' | sudo -S sh -c '{{ .Vars }} {{ .Path }}'"
``` ```
The `-S` flag tells `sudo` to read the password from stdin, which in this case The `-S` flag tells `sudo` to read the password from stdin, which in this case
is being piped in with the value of `packer`. The `-E` flag tells `sudo` to is being piped in with the value of `packer`.
preserve the environment, allowing our environmental variables to work within
the script.
By setting the `execute_command` to this, your script(s) can run with root By setting the `execute_command` to this, your script(s) can run with root
privileges without worrying about password prompts. privileges without worrying about password prompts.