ssh-deploy/src/sshKey.js

26 lines
693 B
JavaScript
Raw Normal View History

const { join } = require('path');
const { writeToFile } = require('./helpers');
2023-01-02 18:41:31 +08:00
const getPrivateKeyPath = (filename) => {
const { HOME } = process.env;
const dir = join(HOME || __dirname, '.ssh');
2023-01-02 18:41:31 +08:00
return {
dir,
filename,
path: join(dir, filename)
};
};
2023-01-02 18:41:31 +08:00
const addSshKey = (content, deployKeyName) => {
const { dir, filename } = getPrivateKeyPath(deployKeyName);
writeToFile({ dir, filename: 'known_hosts', content: '' });
2023-01-02 18:41:31 +08:00
console.log('✅ [SSH] known_hosts file ensured', dir);
writeToFile({ dir, filename, content, isRequired: true });
2023-01-02 18:41:31 +08:00
console.log('✅ [SSH] key added to `.ssh` dir ', dir, filename);
};
module.exports = {
2023-01-02 18:41:31 +08:00
getPrivateKeyPath,
addSshKey
};