多目录发布

任务描述:

项目文件结构

本地文件夹

配置文件

// 项目根目录下fjpublish.config.js
module.exports = {
  modules: [
    {
      name: '测试环境',
      env: 'test',
      ssh: {
        host: '192.168.0.xxx',
        port: 22,
        username: 'root',
        //rc版本的user选项和userName选项请在未来统一配置为username
        password: 'xxxxx'
      },
      buildCommand: 'webpack',
      localPathEntries: ['example', 'lib'],
      localPathIgnore: '**/*.txt',
      remotePath: '/www/manman/multiple'
    }
  ]
}

发布命令

fjpublish env test

动态图

多目录发布
多目录发布

更多

  • 如果把配置改一下,那么发布的项目结构将完全不同,那么聪明的你猜猜修改上文配置的localPathlocalPathEntries会发生什么吧;
...
localPath: 'example/webpack',   //当localPathEntries存在时localPath可不填,不填意味着项目根目录
localPathEntries: ['build', 'dist'],
...
  • 若项目为多目录发布,则远程目录的备份规则也将变为以这些子目录为备份源。
    远程备份