73 lines
1.9 KiB
JavaScript
73 lines
1.9 KiB
JavaScript
const express = require('express')
|
|
const { exec, execSync, spawn } = require("child_process");
|
|
const { NodeSSH } = require('node-ssh')
|
|
const crypto = require('crypto');
|
|
|
|
const node_ssh = new NodeSSH()
|
|
|
|
const app = express()
|
|
const port = 3000
|
|
|
|
app.get('/', (req, res) => {
|
|
res.send('Hello World!')
|
|
})
|
|
|
|
app.listen(port, () => {
|
|
|
|
console.log("REMOTE_HOST: ", process.env.REMOTE_HOST);
|
|
console.log("REMOTE_USER: ", process.env.REMOTE_USER);
|
|
console.log("SSH_KEY_FILE_NAME: ", process.env.SSH_KEY_FILE_NAME);
|
|
|
|
const sync_cmd = `ssh -i /root/.ssh/${process.env.SSH_KEY_FILE_NAME} ${process.env.REMOTE_USER}@${process.env.REMOTE_HOST}`
|
|
|
|
// I DONT NEED TO SSH. ONLY RSYNC OVER PROTOCOL
|
|
node_ssh.connect({
|
|
host: `${process.env.REMOTE_HOST}`,
|
|
username: `${process.env.REMOTE_USER}`,
|
|
privateKeyPath: `/root/.ssh/${process.env.SSH_KEY_FILE_NAME}`
|
|
})
|
|
.then((data) => {
|
|
console.log('after ssh connect');
|
|
console.log('data ', data);
|
|
})
|
|
|
|
|
|
|
|
// const ls = spawn(sync_cmd, ["ls", "-la"]);
|
|
|
|
// ls.stdout.on("data", data => {
|
|
// console.log(`stdout: ${data}`);
|
|
// });
|
|
|
|
// ls.stderr.on("data", data => {
|
|
// console.log(`stderr: ${data}`);
|
|
// });
|
|
|
|
// ls.on('error', (error) => {
|
|
// console.log(`error: ${error.message}`);
|
|
// });
|
|
|
|
// ls.on("close", code => {
|
|
// console.log(`child process exited with code ${code}`);
|
|
// });
|
|
|
|
// exec(`ssh-keyscan ${process.env.REMOTE_HOST} >> /root/.ssh/known_hosts`, (error, stdout, stderr) => {
|
|
// if (error) {
|
|
// console.error(`exec error: ${error}`);
|
|
// return;
|
|
// }
|
|
// console.log(`stdout: ${stdout}`);
|
|
// console.error(`stderr: ${stderr}`);
|
|
// });
|
|
|
|
// exec(sync_cmd, (error, stdout, stderr) => {
|
|
// if (error) {
|
|
// console.error(`exec error: ${error}`);
|
|
// return;
|
|
// }
|
|
// console.log(`stdout: ${stdout}`);
|
|
// console.error(`stderr: ${stderr}`);
|
|
// });
|
|
|
|
console.log(`sprattle running on port ${port}`)
|
|
}) |