forked from webfactory/ssh-agent
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathpaths.js
More file actions
33 lines (30 loc) · 1.56 KB
/
paths.js
File metadata and controls
33 lines (30 loc) · 1.56 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
const os = require("node:os");
const core = require("@actions/core");
const defaults =
process.env.OS !== "Windows_NT"
? {
// We use os.userInfo() rather than os.homedir(), since it uses the getpwuid() system call to get the user's home directory (see https://nodejs.org/api/os.html#osuserinfooptions).
// This mimics the way openssh derives the home directory for locating config files (see https://github.com/openssh/openssh-portable/blob/826483d51a9fee60703298bbf839d9ce37943474/ssh.c#L710);
// Makes a difference in Docker-based Action runs, when $HOME is different from what getpwuid() returns (which is based on the entry in /etc/passwd)
homePath: os.userInfo().homedir,
sshAgentCmdDefault: "ssh-agent",
sshAddCmdDefault: "ssh-add",
gitCmdDefault: "git",
}
: {
// Assuming GitHub hosted `windows-*` runners for now
homePath: os.homedir(),
sshAgentCmdDefault: "c://progra~1//git//usr//bin//ssh-agent.exe",
sshAddCmdDefault: "c://progra~1//git//usr//bin//ssh-add.exe",
gitCmdDefault: "c://progra~1//git//bin//git.exe",
};
const sshAgentCmdInput = core.getInput("ssh-agent-cmd");
const sshAddCmdInput = core.getInput("ssh-add-cmd");
const gitCmdInput = core.getInput("git-cmd");
module.exports = {
homePath: defaults.homePath,
sshAgentCmd:
sshAgentCmdInput !== "" ? sshAgentCmdInput : defaults.sshAgentCmdDefault,
sshAddCmd: sshAddCmdInput !== "" ? sshAddCmdInput : defaults.sshAddCmdDefault,
gitCmd: gitCmdInput !== "" ? gitCmdInput : defaults.gitCmdDefault,
};