1.1.2 • Published 1 year ago

simm v1.1.2

Weekly downloads
-
License
MIT
Repository
github
Last release
1 year ago

simm

npm version npm downloads

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
    },
  },
});