Skip to content

Commit b337868

Browse files
committed
Add conditions to the SSH agent post-start command
Signed-off-by: ivinokur <ivinokur@redhat.com>
1 parent ff72383 commit b337868

File tree

1 file changed

+8
-5
lines changed

1 file changed

+8
-5
lines changed

pkg/library/ssh/event.go

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -22,11 +22,14 @@ import (
2222
)
2323

2424
const commandLine = `SSH_ENV_PATH=$HOME/ssh-environment \
25-
&& if [ -f /etc/ssh/passphrase ] && command -v ssh-add >/dev/null; \
26-
then ssh-agent | sed 's/^echo/#echo/' > $SSH_ENV_PATH \
27-
&& chmod 600 $SSH_ENV_PATH && source $SSH_ENV_PATH \
28-
&& ssh-add /etc/ssh/dwo_ssh_key < /etc/ssh/passphrase \
29-
&& if [ -f $HOME/.bashrc ] && [ -w $HOME/.bashrc ]; then echo "source ${SSH_ENV_PATH}" >> $HOME/.bashrc; fi; fi`
25+
&& if [ -f /etc/ssh/passphrase ] && [ -w $HOME ] && command -v ssh-add >/dev/null; then\
26+
ssh-agent | sed 's/^echo/#echo/' > $SSH_ENV_PATH \
27+
&& chmod 600 $SSH_ENV_PATH \
28+
&& source $SSH_ENV_PATH \
29+
&& if timeout 3 ssh-add /etc/ssh/dwo_ssh_key < /etc/ssh/passphrase && [ -f $HOME/.bashrc ] && [ -w $HOME/.bashrc ]; then \
30+
echo "source ${SSH_ENV_PATH}" >> $HOME/.bashrc; \
31+
fi; \
32+
fi`
3033

3134
// AddSshAgentPostStartEvent Start ssh-agent and add the default ssh key to it, if the ssh key has a passphrase.
3235
// Initialise the ssh-agent session env variables in the user .bashrc file.

0 commit comments

Comments
 (0)