mirror of
				https://github.com/louislam/uptime-kuma.git
				synced 2025-10-31 19:39:20 +08:00 
			
		
		
		
	
		
			
				
	
	
		
			61 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			61 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
| require("dotenv").config();
 | |
| const { NodeSSH } = require("node-ssh");
 | |
| const readline = require("readline");
 | |
| const rl = readline.createInterface({ input: process.stdin,
 | |
|     output: process.stdout });
 | |
| const prompt = (query) => new Promise((resolve) => rl.question(query, resolve));
 | |
| 
 | |
| (async () => {
 | |
|     try {
 | |
|         console.log("SSH to demo server");
 | |
|         const ssh = new NodeSSH();
 | |
|         await ssh.connect({
 | |
|             host: process.env.UPTIME_KUMA_DEMO_HOST,
 | |
|             port: process.env.UPTIME_KUMA_DEMO_PORT,
 | |
|             username: process.env.UPTIME_KUMA_DEMO_USERNAME,
 | |
|             privateKeyPath: process.env.UPTIME_KUMA_DEMO_PRIVATE_KEY_PATH
 | |
|         });
 | |
| 
 | |
|         let cwd = process.env.UPTIME_KUMA_DEMO_CWD;
 | |
|         let result;
 | |
| 
 | |
|         const version = await prompt("Enter Version: ");
 | |
| 
 | |
|         result = await ssh.execCommand("git fetch --all", {
 | |
|             cwd,
 | |
|         });
 | |
|         console.log(result.stdout + result.stderr);
 | |
| 
 | |
|         await prompt("Press any key to continue...");
 | |
| 
 | |
|         result = await ssh.execCommand(`git checkout ${version} --force`, {
 | |
|             cwd,
 | |
|         });
 | |
|         console.log(result.stdout + result.stderr);
 | |
| 
 | |
|         result = await ssh.execCommand("npm run download-dist", {
 | |
|             cwd,
 | |
|         });
 | |
|         console.log(result.stdout + result.stderr);
 | |
| 
 | |
|         result = await ssh.execCommand("npm install --production", {
 | |
|             cwd,
 | |
|         });
 | |
|         console.log(result.stdout + result.stderr);
 | |
| 
 | |
|         /*
 | |
|         result = await ssh.execCommand("pm2 restart 1", {
 | |
|             cwd,
 | |
|         });
 | |
|         console.log(result.stdout + result.stderr);*/
 | |
| 
 | |
|     } catch (e) {
 | |
|         console.log(e);
 | |
|     } finally {
 | |
|         rl.close();
 | |
|     }
 | |
| })();
 | |
| 
 | |
| // When done reading prompt, exit program
 | |
| rl.on("close", () => process.exit(0));
 |