replace nodeCMD with exec
This commit is contained in:
parent
692d3fee7d
commit
c7bd38757d
37
.github/workflows/e2e.yml
vendored
37
.github/workflows/e2e.yml
vendored
@ -1,9 +1,11 @@
|
||||
name: e2e Test
|
||||
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- feature/add-tests
|
||||
workflow_run:
|
||||
workflows: ["Build"]
|
||||
branches: [ main ]
|
||||
types:
|
||||
- completed
|
||||
|
||||
env:
|
||||
TEST_HOST_DOCKER: ./test
|
||||
@ -54,19 +56,11 @@ jobs:
|
||||
date +"%Y-%m-%d %H:%M:%S,%3N" >> index.html
|
||||
cat index.html
|
||||
|
||||
# - name: e2e Test local ssh-deploy action
|
||||
# run: node ./dist/index.js
|
||||
# env:
|
||||
# SSH_PRIVATE_KEY: $EXAMPLE_SSH_PRIVATE_KEY
|
||||
# ARGS: "-rltgoDzvO"
|
||||
# SOURCE: "test_project/"
|
||||
# REMOTE_HOST: $EXAMPLE_REMOTE_HOST
|
||||
# REMOTE_USER: $TEST_USER
|
||||
# TARGET: "/var/www/html/"
|
||||
# EXCLUDE: "/dist/, /node_modules/"
|
||||
|
||||
- name: e2e Test published ssh-deploy action
|
||||
uses: easingthemes/ssh-deploy@main
|
||||
- name: e2e Test local ssh-deploy action
|
||||
run: |
|
||||
npm ci
|
||||
npm run build
|
||||
node ./src/index.js
|
||||
env:
|
||||
SSH_PRIVATE_KEY: $EXAMPLE_SSH_PRIVATE_KEY
|
||||
ARGS: "-rltgoDzvO"
|
||||
@ -76,3 +70,14 @@ jobs:
|
||||
TARGET: "/var/www/html/"
|
||||
EXCLUDE: "/dist/, /node_modules/"
|
||||
|
||||
# - name: e2e Test published ssh-deploy action
|
||||
# uses: easingthemes/ssh-deploy@main
|
||||
# env:
|
||||
# SSH_PRIVATE_KEY: $EXAMPLE_SSH_PRIVATE_KEY
|
||||
# ARGS: "-rltgoDzvO"
|
||||
# SOURCE: "test_project/"
|
||||
# REMOTE_HOST: $EXAMPLE_REMOTE_HOST
|
||||
# REMOTE_USER: $TEST_USER
|
||||
# TARGET: "/var/www/html/"
|
||||
# EXCLUDE: "/dist/, /node_modules/"
|
||||
|
||||
|
525
dist/index.js
vendored
525
dist/index.js
vendored
File diff suppressed because one or more lines are too long
14
package-lock.json
generated
14
package-lock.json
generated
@ -10,7 +10,6 @@
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"command-exists": "^1.2.9",
|
||||
"node-cmd": "^5.0.0",
|
||||
"rsyncwrapper": "^3.0.1"
|
||||
},
|
||||
"devDependencies": {
|
||||
@ -1397,14 +1396,6 @@
|
||||
"integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==",
|
||||
"dev": true
|
||||
},
|
||||
"node_modules/node-cmd": {
|
||||
"version": "5.0.0",
|
||||
"resolved": "https://registry.npmjs.org/node-cmd/-/node-cmd-5.0.0.tgz",
|
||||
"integrity": "sha512-4sQTJmsS5uZKAPz/Df9fnIbmvOySfGdW+UreH4X5NcAOOpKjaE+K5wf4ehNBbZVPo0vQ36RkRnhhsXXJAT+Syw==",
|
||||
"engines": {
|
||||
"node": ">=6.4.0"
|
||||
}
|
||||
},
|
||||
"node_modules/object-inspect": {
|
||||
"version": "1.12.2",
|
||||
"resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.2.tgz",
|
||||
@ -3012,11 +3003,6 @@
|
||||
"integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==",
|
||||
"dev": true
|
||||
},
|
||||
"node-cmd": {
|
||||
"version": "5.0.0",
|
||||
"resolved": "https://registry.npmjs.org/node-cmd/-/node-cmd-5.0.0.tgz",
|
||||
"integrity": "sha512-4sQTJmsS5uZKAPz/Df9fnIbmvOySfGdW+UreH4X5NcAOOpKjaE+K5wf4ehNBbZVPo0vQ36RkRnhhsXXJAT+Syw=="
|
||||
},
|
||||
"object-inspect": {
|
||||
"version": "1.12.2",
|
||||
"resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.2.tgz",
|
||||
|
@ -31,7 +31,6 @@
|
||||
"homepage": "https://github.com/easingthemes/ssh-deploy#readme",
|
||||
"dependencies": {
|
||||
"command-exists": "^1.2.9",
|
||||
"node-cmd": "^5.0.0",
|
||||
"rsyncwrapper": "^3.0.1"
|
||||
},
|
||||
"devDependencies": {
|
||||
|
@ -1,23 +1,20 @@
|
||||
const { sync: commandExists } = require('command-exists');
|
||||
const { get: nodeCmd } = require('node-cmd');
|
||||
const { sync: commandExists } = require("command-exists");
|
||||
const { exec, execSync } = require("child_process");
|
||||
|
||||
const validateRsync = (callback = () => {}) => {
|
||||
const rsyncCli = commandExists('rsync');
|
||||
const rsyncCli = commandExists("rsync");
|
||||
console.log('⚠️ [CLI] Rsync doesn\'t exists. Start installation with "apt-get" \n');
|
||||
console.log('nodeCmd: ', nodeCmd);
|
||||
if (!rsyncCli) {
|
||||
nodeCmd(
|
||||
'sudo apt-get --no-install-recommends install rsync',
|
||||
(err, data, stderr) => {
|
||||
if (err) {
|
||||
console.log('⚠️ [CLI] Rsync installation failed. Aborting ... ', err.message);
|
||||
process.abort();
|
||||
} else {
|
||||
console.log('✅ [CLI] Rsync installed. \n', data, stderr);
|
||||
callback();
|
||||
}
|
||||
execSync("sudo apt-get update");
|
||||
exec("sudo apt-get --no-install-recommends install rsync", (err, data, stderr) => {
|
||||
if (err) {
|
||||
console.log("⚠️ [CLI] Rsync installation failed. Aborting ... ", err.message);
|
||||
process.abort();
|
||||
} else {
|
||||
console.log("✅ [CLI] Rsync installed. \n", data, stderr);
|
||||
callback();
|
||||
}
|
||||
);
|
||||
});
|
||||
} else {
|
||||
callback();
|
||||
}
|
||||
@ -36,12 +33,12 @@ const validateInputs = (inputs) => {
|
||||
});
|
||||
|
||||
if (validInputs.length !== inputKeys.length) {
|
||||
console.error('⚠️ [INPUTS] Inputs not valid, aborting ...');
|
||||
console.error("⚠️ [INPUTS] Inputs not valid, aborting ...");
|
||||
process.abort();
|
||||
}
|
||||
};
|
||||
|
||||
module.exports = {
|
||||
validateRsync,
|
||||
validateInputs
|
||||
validateInputs,
|
||||
};
|
||||
|
Loading…
Reference in New Issue
Block a user