chef/cookbooks/cpe_environment/templates/default/bash_cpe.erb (24 lines of code) (raw):
<% unless @config['paths'].nil? || @config['paths'].empty? %>
ENV_PATHS=<%= @config['paths'].join(':') %>
<% if macos? %>
if [[ -z "$PROMPT_COMMAND" ]]; then
PROMPT_COMMAND='[[ "$PATH" =~ "$ENV_PATHS" ]] || export PATH="$ENV_PATHS:$PATH"'
else
PROMPT_COMMAND='[[ "$PATH" =~ "$ENV_PATHS" ]] || export PATH="$ENV_PATHS:$PATH"'";$PROMPT_COMMAND"
fi
<% else %>
preexec() {
[[ "$PATH" =~ "$ENV_PATHS" ]] || export PATH="$ENV_PATHS:$PATH"
}
preexec_invoke_exec () {
[ -n "$COMP_LINE" ] && return # do nothing if completing
preexec
}
trap 'preexec_invoke_exec' DEBUG
<%- end -%>
<%- end -%>
<% unless @config['vars'].nil? %>
<% @config['vars'].each do |var,value| %>
export <%= var %>=<%= value %>
<%- end -%>
<%- end -%>