mirror of
https://github.com/webfactory/ssh-agent.git
synced 2025-06-28 05:33:45 +00:00
Randomize SSH auth socket, kill agent to support non-ephemeral, self hosted runners (@thommyhh, #27)
Thanks to @thommyhh for this contribution! Unless the `SSH_AUTH_SOCK` is configured explicitly, this change will make the SSH agent use a random file name for the socket. That way, multiple, concurrent SSH agents can be used on non-ephemeral, self-hosted runners. A new post-action step will automatically clean up the running agent at the end of a job. Be aware of the possible security implications: Two jobs running on the same runner might be able to access each other's socket and thus access repositories and/or hosts.
This commit is contained in:
parent
a82ae3cd1a
commit
4fcb25e7ef
9 changed files with 424 additions and 20 deletions
10
cleanup.js
Normal file
10
cleanup.js
Normal file
|
@ -0,0 +1,10 @@
|
|||
const core = require('@actions/core')
|
||||
const { execSync } = require('child_process')
|
||||
|
||||
try {
|
||||
// Kill the started SSH agent
|
||||
console.log('Stopping SSH agent')
|
||||
execSync('kill ${SSH_AGENT_PID}', { stdio: 'inherit' })
|
||||
} catch (error) {
|
||||
core.setFailed(error.message)
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue