配置文件说明

在与项目同级的目录下,有一个全局的 .tmtworkflowrc 配置文件,项目下也可以有一个 .tmtworkflowrc,程序运行时先寻找当前目录下是否有配置文件,如果没有,则继续往上一层目录寻找,直到系统目录

我们使用 rc 组件来管理配置文件。如果项目下不存在 .tmtworkflowrc 文件,将会根据以下优化级进行寻找配置。

  • 系统环境变量以 tmtworkflow_ 开头的变量,(例如: tmtworkflow_foo__bar__baz => foo.bar.baz)
  • 项目目录下的 .tmtworkflowrc 或依次向上遍历查找 ./ ../ ../../ ../../../
  • $HOME/.tmtworkflowrc
  • $HOME/.tmtworkflowrc/config
  • $HOME/.config/tmtworkflowrc
  • $HOME/.config/tmtworkflowrc/config
  • /etc/tmtworkflowrc
  • /etc/tmtworkflowrc/config
  • 工作流默认配置

通过修改配置文件,可以实现自定义任务中的相关流程,例如:是否需要编译一份 WEBP 资源,是否编译 HTML 文件到 dist 目录。

.tmtworkflowrc 配置示例

{
  //ftp 配置
  "ftp": {
    "host": "xx.xx.xx.xx",
    "port": "8021",
    "user": "tmt",
    "pass": "password",
    "remotePath": "remotePath", //默认上传到根目录下,配置此属性可指定具体子目录
    "includeHtml": true  //ftp 上传是否包含 html
  },

  //自动刷新
  "livereload": {
     "available": true,  //开启自动刷新
     "port": 8080,
     "startPath": "html/TmTIndex.html"  //启动时自动打开的路径
   },

   //插件功能
   //路径相对于 tasks/plugins 目录
  "plugins": {
    "build_devAfter": ["TmTIndex"],  //dev 任务执行后自动执行
    "build_distAfter": [],          //build 任务执行后自动执行
    "ftpAfter": ["ftp"]        //ftp 任务执行后自动执行
  },

  "lazyDir": ["../slice"], //gulp-lazyImageCSS 寻找目录(https://github.com/weixin/gulp-lazyimagecss)

  "supportWebp": false,  //编译使用 webp

  "supportREM": false,   //REM转换

  "reversion": false     //新文件名功能
}