1
0
Fork 0
mirror of https://github.com/shimataro/ssh-key-action.git synced 2025-06-19 22:52:10 +10:00

Feature/styles (#6)

* * use tab for indent

* * use double quotes for string

* * use camelCase for variable

* * use path.join()

* * add JSDoc
This commit is contained in:
shimataro 2019-09-18 22:55:24 +09:00 committed by GitHub
parent a5ede5509c
commit 010eec3d7a
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
5 changed files with 55 additions and 49 deletions

View file

@ -16,7 +16,7 @@ steps:
with:
private-key: ${{ secret.SSH_KEY }}
public-key: ${{ secret.SSH_KEY_PUBLIC }}
name: 'id_rsa' # optional
name: id_rsa # optional
- name: Install packages
run: apt install openssh-client rsync
- name: rsync over ssh

View file

@ -1,19 +1,19 @@
name: 'Install SSH Key'
description: 'Install SSH key to ~/.ssh'
author: 'shimataro'
name: "Install SSH Key"
description: "Install SSH key to ~/.ssh"
author: "shimataro"
branding:
icon: 'terminal'
color: 'gray-dark'
icon: "terminal"
color: "gray-dark"
inputs:
private-key:
description: 'private SSH key'
description: "private SSH key"
required: true
public-key:
description: 'public SSH key'
description: "public SSH key"
required: true
name:
description: 'SSH key file name (default: id_rsa)'
default: 'id_rsa'
description: "SSH key file name (default: id_rsa)"
default: "id_rsa"
runs:
using: 'node12'
main: 'lib/main.js'
using: "node12"
main: "lib/main.js"

View file

@ -10,6 +10,9 @@ Object.defineProperty(exports, "__esModule", { value: true });
const fs = __importStar(require("fs"));
const path = __importStar(require("path"));
const core = __importStar(require("@actions/core"));
/**
* main function
*/
function main() {
try {
const home = getHomeDirectory();
@ -18,10 +21,10 @@ function main() {
recursive: true,
mode: 0o700,
});
const privateKey = core.getInput('private-key');
const publicKey = core.getInput('public-key');
const name = core.getInput('name');
const fileName = path.resolve(dirName, name);
const privateKey = core.getInput("private-key");
const publicKey = core.getInput("public-key");
const name = core.getInput("name");
const fileName = path.join(dirName, name);
fs.writeFileSync(fileName, privateKey, {
mode: 0o400,
});
@ -39,10 +42,10 @@ function main() {
* @returns home directory
*/
function getHomeDirectory() {
const home_env = process.platform == "win32" ? "USERPROFILE" : "HOME";
const home = process.env[home_env];
const homeEnv = process.platform == "win32" ? "USERPROFILE" : "HOME";
const home = process.env[homeEnv];
if (home === undefined) {
throw new Error(`${home_env} is not defined`);
throw new Error(`${homeEnv} is not defined`);
}
return home;
}

View file

@ -1 +1 @@
{"version":3,"file":"main.js","sourceRoot":"","sources":["../src/main.ts"],"names":[],"mappings":";;;;;;;;;AAAA,uCAAyB;AACzB,2CAA6B;AAE7B,oDAAsC;AAEtC,SAAS,IAAI;IAET,IACA;QACI,MAAM,IAAI,GAAG,gBAAgB,EAAE,CAAC;QAChC,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QAC3C,EAAE,CAAC,SAAS,CAAC,OAAO,EAAE;YAClB,SAAS,EAAE,IAAI;YACf,IAAI,EAAE,KAAK;SACd,CAAC,CAAC;QAEH,MAAM,UAAU,GAAG,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAW,CAAC;QAC1D,MAAM,SAAS,GAAG,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAW,CAAC;QACxD,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAW,CAAC;QAE7C,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;QAC7C,EAAE,CAAC,aAAa,CAAC,QAAQ,EAAE,UAAU,EAAE;YACnC,IAAI,EAAE,KAAK;SACd,CAAC,CAAC;QACH,EAAE,CAAC,aAAa,CAAC,GAAG,QAAQ,MAAM,EAAE,SAAS,EAAE;YAC3C,IAAI,EAAE,KAAK;SACd,CAAC,CAAC;QAEH,OAAO,CAAC,GAAG,CAAC,8BAA8B,QAAQ,gBAAgB,CAAC,CAAC;KACvE;IACD,OAAM,GAAG,EACT;QACI,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;KAC/B;AACL,CAAC;AAED;;;GAGG;AACH,SAAS,gBAAgB;IAErB,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,IAAI,OAAO,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,MAAM,CAAC;IACtE,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IACnC,IAAG,IAAI,KAAK,SAAS,EACrB;QACI,MAAM,IAAI,KAAK,CAAC,GAAG,QAAQ,iBAAiB,CAAC,CAAC;KACjD;IAED,OAAO,IAAI,CAAC;AAChB,CAAC;AAED,IAAI,EAAE,CAAC"}
{"version":3,"file":"main.js","sourceRoot":"","sources":["../src/main.ts"],"names":[],"mappings":";;;;;;;;;AAAA,uCAAyB;AACzB,2CAA6B;AAE7B,oDAAsC;AAEtC;;GAEG;AACH,SAAS,IAAI;IAEZ,IACA;QACC,MAAM,IAAI,GAAG,gBAAgB,EAAE,CAAC;QAChC,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QAC3C,EAAE,CAAC,SAAS,CAAC,OAAO,EAAE;YACrB,SAAS,EAAE,IAAI;YACf,IAAI,EAAE,KAAK;SACX,CAAC,CAAC;QAEH,MAAM,UAAU,GAAG,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAW,CAAC;QAC1D,MAAM,SAAS,GAAG,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAW,CAAC;QACxD,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAW,CAAC;QAE7C,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;QAC1C,EAAE,CAAC,aAAa,CAAC,QAAQ,EAAE,UAAU,EAAE;YACtC,IAAI,EAAE,KAAK;SACX,CAAC,CAAC;QACH,EAAE,CAAC,aAAa,CAAC,GAAG,QAAQ,MAAM,EAAE,SAAS,EAAE;YAC9C,IAAI,EAAE,KAAK;SACX,CAAC,CAAC;QAEH,OAAO,CAAC,GAAG,CAAC,8BAA8B,QAAQ,gBAAgB,CAAC,CAAC;KACpE;IACD,OAAM,GAAG,EACT;QACC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;KAC5B;AACF,CAAC;AAED;;;GAGG;AACH,SAAS,gBAAgB;IAErB,MAAM,OAAO,GAAG,OAAO,CAAC,QAAQ,IAAI,OAAO,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,MAAM,CAAC;IACrE,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IAClC,IAAG,IAAI,KAAK,SAAS,EACrB;QACI,MAAM,IAAI,KAAK,CAAC,GAAG,OAAO,iBAAiB,CAAC,CAAC;KAChD;IAED,OAAO,IAAI,CAAC;AAChB,CAAC;AAED,IAAI,EAAE,CAAC"}

View file

@ -1,37 +1,40 @@
import * as fs from "fs";
import * as path from 'path';
import * as path from "path";
import * as core from '@actions/core';
import * as core from "@actions/core";
/**
* main function
*/
function main(): void
{
try
{
const home = getHomeDirectory();
const dirName = path.resolve(home, ".ssh");
fs.mkdirSync(dirName, {
recursive: true,
mode: 0o700,
});
try
{
const home = getHomeDirectory();
const dirName = path.resolve(home, ".ssh");
fs.mkdirSync(dirName, {
recursive: true,
mode: 0o700,
});
const privateKey = core.getInput('private-key') as string;
const publicKey = core.getInput('public-key') as string;
const name = core.getInput('name') as string;
const privateKey = core.getInput("private-key") as string;
const publicKey = core.getInput("public-key") as string;
const name = core.getInput("name") as string;
const fileName = path.resolve(dirName, name);
fs.writeFileSync(fileName, privateKey, {
mode: 0o400,
});
fs.writeFileSync(`${fileName}.pub`, publicKey, {
mode: 0o444,
});
const fileName = path.join(dirName, name);
fs.writeFileSync(fileName, privateKey, {
mode: 0o400,
});
fs.writeFileSync(`${fileName}.pub`, publicKey, {
mode: 0o444,
});
console.log(`SSH key has been stored to ${fileName} successfully.`);
}
catch(err)
{
core.setFailed(err.message);
}
console.log(`SSH key has been stored to ${fileName} successfully.`);
}
catch(err)
{
core.setFailed(err.message);
}
}
/**
@ -40,11 +43,11 @@ function main(): void
*/
function getHomeDirectory(): string
{
const home_env = process.platform == "win32" ? "USERPROFILE" : "HOME";
const home = process.env[home_env];
const homeEnv = process.platform == "win32" ? "USERPROFILE" : "HOME";
const home = process.env[homeEnv];
if(home === undefined)
{
throw new Error(`${home_env} is not defined`);
throw new Error(`${homeEnv} is not defined`);
}
return home;