Files
CID/deploy.js
2025-10-30 19:34:04 +08:00

47 lines
1.0 KiB
JavaScript

import SftpClient from 'ssh2-sftp-client';
const args = process.argv.splice(2);
const remoteName = args[0];
const remoteList = {
test: {
host: '192.168.65.161',
port: 22,
username: 'root',
password: 'carsafe',
remotePath: '/usr/local/nginx/html/cid',
localPath: './dist',
},
};
const config = remoteList[remoteName];
if (!remoteName || !config) {
console.error('找不到对应环境!');
process.exit(1);
}
async function deploy() {
const sftp = new SftpClient();
try {
console.log('打包完成...');
console.log('正在连接...');
await sftp.connect({
host: config.host,
port: config.port,
username: config.username,
password: config.password,
});
console.log('连接成功...');
console.log('开始上传...');
await sftp.uploadDir(config.localPath, config.remotePath);
console.log('上传成功!');
} catch (err) {
console.error('部署失败:', err.message);
process.exit(1);
} finally {
await sftp.end();
}
}
deploy();