1.0.5 • Published 4 months ago

scp2-env v1.0.5

Weekly downloads
-
License
-
Repository
github
Last release
4 months ago

scp2-env

一个简单实用的自动化部署工具,用于通过SCP将文件部署到远程服务器。

功能特点

  • 支持多环境配置(开发、测试、生产)
  • 通过SCP安全地将文件传输到远程服务器
  • 友好的命令行界面和日志输出
  • 可通过环境变量灵活配置

安装

# npm
npm install scp2-env

# yarn
yarn add scp2-env

# pnpm
pnpm add scp2-env

全局安装(作为命令行工具使用):

npm install -g scp2-env

使用方法

命令行使用

# 使用默认开发环境
scp2-env

# 指定环境
scp2-env --mode test
scp2-env --mode production
scp2-env -m development

在项目中配置脚本

package.json 中添加以下脚本:

{
  "scripts": {
    "deploy": "scp2-env",
    "deploy:dev": "scp2-env --mode development",
    "deploy:test": "scp2-env --mode test",
    "deploy:prod": "scp2-env --mode production"
  }
}

然后可以使用:

npm run deploy
npm run deploy:test
npm run deploy:prod

配置

环境变量配置

创建以下环境配置文件:

  • .env - 默认配置(开发环境)
  • .env.test - 测试环境配置
  • .env.production - 生产环境配置

配置文件示例:

SCP2_DEPLOY_SERVER_HOST=example.com
SCP2_DEPLOY_SERVER_PORT=22
SCP2_DEPLOY_SERVER_USERNAME=deploy
SCP2_DEPLOY_SERVER_PASSWORD=secret
SCP2_DEPLOY_SERVER_PATH=/var/www/html
SCP2_DEPLOY_SOURCE_DIR=./dist

配置项说明

配置项说明默认值
SCP2_DEPLOY_SERVER_HOST远程服务器主机地址localhost
SCP2_DEPLOY_SERVER_PORT远程服务器端口22
SCP2_DEPLOY_SERVER_USERNAME远程服务器用户名root
SCP2_DEPLOY_SERVER_PASSWORD远程服务器密码-
SCP2_DEPLOY_SERVER_PATH远程服务器部署路径/tmp
SCP2_DEPLOY_SOURCE_DIR需要部署的源目录./dist(尽量是绝对路径)

开发

# 安装依赖
pnpm install

# 构建项目
pnpm build

# 测试部署
pnpm deploy:dev

示例

  1. 配置环境变量
  2. 执行部署命令
  3. 自动执行构建
  4. 部署到远程服务器
# 部署到测试环境
pnpm deploy:test

# 部署到生产环境
pnpm deploy:prod

许可证

MIT

1.0.5

4 months ago

1.0.3

4 months ago

1.0.2

4 months ago

1.0.1

4 months ago

1.0.0

4 months ago