simm
v1.1.2
Published
๐ Simple deploy like pm2
Downloads
12
Readme
simm
Features
โ Deploy to any remote server from local
โ Supported proxyJump
โ Supported sftp (beta)
Install
# npm
npm install -g simm@latest
# yarn
yarn add -g simm@latest
# pnpm
pnpm install -g simm@latest
Usage CLI
npx simm deploy [environment]
Quick Usage
import fs from "node:fs";
import { defineConfig } from "simm";
export default defineConfig({
servers: {
production: {
user: "__USER__",
host: "__HOST__",
privateKey: "__PRIVATE_KEY__",
passsword: "__PASSWORD__",
deploy: {
branch: "main",
repo: `https://github.com/example/example.git`,
path: "/home/_works/",
postDeploy: 'pnpm install && pnpm build',
}
},
},
});
Start deploy
npx simm deploy production
Usage with proxyJump server
import fs from "node:fs";
import { defineConfig } from "simm";
export default defineConfig({
servers: {
bastion: {
user: "__USER__",
host: "__HOST__",
privateKey: "__PRIVATE_KEY__",
passsword: "__PASSWORD__",
},
production: {
user: "__USER__",
host: "__HOST__",
privateKey: "__PRIVATE_KEY__",
passsword: "__PASSWORD__",
proxyJump: 'bastion',
deploy: {
branch: "main",
repo: `https://github.com/example/example.git`,
path: "/home/_works/",
postDeploy: 'pnpm install && pnpm build',
}
},
},
});
Sftp (beta)
import { defineConfig } from "simm";
export default defineConfig({
servers: {
production: {
user: "__USER__",
host: "__HOST__",
privateKey: "__PRIVATE_KEY__",
passsword: "__PASSWORD__",
sftp: {
source: '/home/local/source',
dest: '/home/remote/source',
}
// proxyJump: 'bastion', when use proxyJump to a bastion server
},
},
});