Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

@pfan/tq-simple-deploy

Package Overview
Dependencies
Maintainers
1
Versions
3
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@pfan/tq-simple-deploy

a sample deploy tool

  • 0.0.3
  • latest
  • npm
  • Socket score

Version published
Maintainers
1
Created
Source

tq-simple-deploy 介绍

主要利用node 的 node-ssh 库 实现自动连接服务器 并将本地打包完成的 dist目录自动上传到指定服务器目录,在没有安装云效,需要多次发布远程的场景下可快速发布。

在需要堡垒机发布的场景下 可快速提升发布效率

命令解释

tq-simple-deploy init --config xxx.js

init 命令 主要 用于下载config模板 及 help.md 到执行命令的目录
--config 指定 config 文件名称 默认 deploy.config.js

tq-simple-deploy ng-init --config xxx.js

ng-init 命令 nginx 配置初始化 主要通过 配置文件中选项 生成nginx配置文件,上传至服务器 比重启nginx
--config 指定 config 文件名称 默认 deploy.config.js

tq-simple-deploy deploy --config xxx.js -z -c

deploy 命令主要用于发布
--config 指定 config 文件名称 默认 deploy.config.js
-z 是否开启压缩 默认不压缩 直接dist 目录上传 dist较小时可直接文件夹上传
-c 是否拷贝原有文件夹 默认不拷贝 直接删除 服务器上原有文件 如果开启 会先将原有文件夹复制为 xxx202107011109009 格式

属性解释 deploy.config.js

  • local 本地目录 例如:path.resolve(__dirname, './dist')
  • remote 远程服务器目录 例如:/mnt/fe-projects/fe-demo/dist
  • clientConfig 连接服务器所需参数
    • port ssh 端口 默认22
    • host 服务器地址 xxx.xx.xx.xx
    • username 用户名 root admin
    • password 密码 xxxxxx
  • nginx nginx远程 动态配置文件路径 例如: /etc/nginx/conf.d
  • confName 动态配置文件名称 xxxx.cong 例如:test.conf
  • port 部署的静态文件所用的端口
  • isHistory 是否history 模式 history 模式下.cong文件下会添加 try_files $uri $uri/ /index.html;
  • nginxComd nginx relaod 命令 例如: nginx -s reload 或者 /etc/nginx/sbin/nginx -s reload
  • beforeDeploy 发布前钩子函数
  • afterDeploy 发布后钩子函数

简单nginx 配置使用 示例

安装依赖

npm i @pfan/tq-simple-deploy -D  

初始化指令

yarn  tq-simple-deploy  init 
或
npx   tq-simple-deploy  init

会下载 deploy.config.js 模板
我们以 服务器 47.96.94.154 端口 8478 为模板填写如下

//发布部署相关配置
const path = require('path')
module.exports = {
  local: path.resolve(__dirname, './dist'), //本地目录
  remote: '/mnt/fe-projects/fe-demo5/dist',//远程服务器 目录  /mnt/fe-projects/fe-demo/dist
  clientConfig: {
    port: 22,//ssh 端口  默认22
    host: '47.96.94.154',//服务器地址 xxx.xx.xx.xx
    username: 'root',//用户名   root admin
    password: 'Mm123456',//密码  xxxxxx
  },
  nginx:'/etc/nginx/conf.d',//nginx 动态配置文件路径
  confName:'test5.conf',//动态配置文件名称
  port:'8478',//静态文件 端口
  isHistory:false,//是否history 模式
  nginxComd:'nginx -s reload',//nginx relaod 命令 nginx 没有 配置到全局   类似   /etc/nginx/sbin/nginx -s reload
  beforeDeploy: async (clint) => {
     console.log("发布前钩子函数,这里可以暂时不写")
  },
  afterDeploy: async (clint) => {
    console.log("发布后钩子函数,这里可以暂时不写")
  }
}

执行

yarn  tq-simple-deploy  ng-init  
或
npx   tq-simple-deploy  ng-init 

简单发布使用示例

堡垒机发布使用示例

FAQs

Package last updated on 01 Jul 2021

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc