mirror of
https://github.com/OpenNebula/one.git
synced 2025-02-01 05:47:01 +03:00
f002812c9f
When (for whatever reason) opennebula-ssh-agent gets killed it leaves existing socket and following start fails with opennebula-ssh-agent[2333]: unix_listener: cannot bind to path /var/run/one/ssh-agent.sock: Address already in use
26 lines
932 B
Desktop File
26 lines
932 B
Desktop File
[Unit]
|
|
Description=OpenNebula SSH agent
|
|
After=remote-fs.target
|
|
|
|
[Service]
|
|
Type=forking
|
|
Group=oneadmin
|
|
User=oneadmin
|
|
Environment=SSH_AUTH_SOCK=/var/run/one/ssh-agent.sock
|
|
# ssh-agent is executed via shell wrapper to workaround a SELinux issue
|
|
ExecStartPre=/bin/sh -c "echo SSH_AUTH_SOCK=$SSH_AUTH_SOCK > /var/run/one/ssh-agent.env; rm -f $SSH_AUTH_SOCK"
|
|
ExecStart=/bin/sh -c "exec /usr/bin/ssh-agent -a $SSH_AUTH_SOCK"
|
|
ExecStartPost=-/bin/sh -c "/usr/bin/ssh-add"
|
|
ExecStopPost=/usr/bin/rm -f /var/run/one/ssh-agent.env
|
|
ExecReload=/bin/sh -c "/usr/bin/ssh-add -D && /usr/bin/ssh-add"
|
|
Restart=on-failure
|
|
# NOTE: ssh-agent returns "2" as the exit code on SIGTERM or on termination via:
|
|
# SSH_AGENT_PID=??? ssh-agent -k
|
|
# without this following directive the "systemctl stop" would fail and cleanup
|
|
# (ExecStopPost) would not be triggered...
|
|
SuccessExitStatus=2
|
|
SyslogIdentifier=opennebula-ssh-agent
|
|
|
|
[Install]
|
|
WantedBy=default.target
|