# fis3-command-ferd **Repository Path**: g8up/fis3-command-ferd ## Basic Information - **Project Name**: fis3-command-ferd - **Description**: fis3 辅助工具,自动拉取 RD 同学开发环境配置 - **Primary Language**: NodeJS - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2018-11-21 - **Last Updated**: 2020-12-19 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # fis3-command-ferd ![NPM](https://img.shields.io/npm/v/fis3-command-ferd.svg) 基于 [FIS3](http://fis.baidu.com/) 前端工作流的开发辅助工具,自动拉取 RD 的开发环境配置,在执行目录生成 `deploy-hosts.json` ## Install > npm install -g fis3-command-ferd ## Usage > ferd --fetch @GroupName > `@GroupName`表示拉取的分组 ### 使用范例 - `package.json` 中注册 `ferd` ```js { ..., script:{ ferd: 'cd fis-conf && npx ferd --fetch @audit' } } ``` - `fis-conf.js` 引入 > var DEPLOY_CONFIG = require( './fis-conf/deploy-hosts' ); - 执行 > npm run ferd ## 建议 改造一下 您的 `fis-conf.js`,以避免产生缺失或多余分隔符的困扰 ```javascript var path = require('path'); // ... function push(RD, to) { return fis.plugin('http-push', { receiver: RD.receiver, to: path.join(RD.root , to) // 更改连接路径的方式 }); } ``` ## Docs - [fis3 plugin](https://fex-team.github.io/fis3/docs/api/dev-plugin.html) ## 接入 - 设置配置托管服务(服务需自行提供)的接口,如 > ferd --set-url http://ferd.g8up.com/api/host/all - 接口响应数据格式如下: ```js { media1: [ { host: "http://test.developer.com/", portAndRoots: [ { id: 54, port: "8190", // 用于部署前端代码的 reciever.php 端口 root: "/home/biz_root/", // 前端代码部署的根目录 webUrl: "http://test.developer.com:8088", // 访问项目页面的入口地址 tag: "sale" // 按分组查询时的标识 } ] } ], ... } ``` 更多详情[查看 FIS 文档](http://fis.baidu.com/fis3/docs/beginning/debug.html#%E5%8F%91%E5%B8%83%E5%88%B0%E8%BF%9C%E7%AB%AF%E6%9C%BA%E5%99%A8) ## URL 变更 - 当服务端接口变化时,可以通过如下命令修改接口地址: > ferd --set-url http://ferd.g8up.com/api/host/all ## API ```js // npm install fis3-command-ferd@^1.3.8 const ferd = require('fis3-command-ferd'); ferd.fetchDataByTag('bmbs').then((data) => { /** * data structrue: * { * "media_name": { * "receiver": "http://ip:port/receiver.php", * "root": "/deploy_root/", * "webUrl": "http://ip:port/webpage" * }, * } */ // add your code here }); ```