Skip to content
zhangyunlong edited this page Sep 16, 2013 · 1 revision

##产出目录

FIS-PC根据目录规范默认设置了文件的产出路径:

	└── config
	│    └── modulename-map.json    静态资源表
	├── template 
	│    ├──home
	│    │   └── page
	│    │         └── index.tpl      page级模板文件
	│    │   └── widget
	│    │         └── section
	│    │           └── section.tpl   widget模板文件
	├── static
	│    └── home
	│    │   ├── pkg
	│    │   │   ├── demo.css  打包css文件
	│    │   │   └── demo.js   打包js文件		
	│    │   ├── index
	│    │   │   ├── index.css  page级css文件
	│    │   │   └── index.js   page级js文件
	│    │   └── widget             widget组件目录
	│    │       └── section
	│    │               └── section.css
	├── plugin
            ├── test

用户根据产出后的目录,只需要将 config、template、static、plugin 目录上传至联调机器进行项目联调。

##上传配置

用户通过配置 deploy节点 进行文件上传,fis支持使用post请求向http服务器发送文件,服务器端可以使用php、java等后端逻辑进行接收,fis-command-release插件中提供了一个这样的 php版示例,用户可以直接部署此文件于接收端服务器上。

根据产出目录以及联调机器,进行上传配置:

    //fis-conf.js
    fis.config.merge({
        deploy : {
            //使用fis release --dest static来使用这个配置
            remote: [{
                //如果配置了receiver,fis会把文件逐个post到接收端上
                receiver : 'http://www.example.com/path/to/receiver.php',
                //从产出的结果的static目录下找文件
                from : '/static',
                //保存到远端机器的/home/fis/www/static目录下
                //这个参数会跟随post请求一起发送
                to : '/home/fis/www/',
                //某些后缀的文件不进行上传
                exclude : /.*\.(?:svn|cvs|tar|rar|psd).*/
            },
            {
                //如果配置了receiver,fis会把文件逐个post到接收端上
                receiver : 'http://www.example.com/path/to/receiver.php',
                //从产出的结果的config目录下找文件
                from : '/config',
                //保存到远端机器的/home/fis/www/config目录下
                //这个参数会跟随post请求一起发送
                to : '/home/fis/www/',
                //某些后缀的文件不进行上传
                exclude : /.*\.(?:svn|cvs|tar|rar|psd).*/
            },{
                //如果配置了receiver,fis会把文件逐个post到接收端上
                receiver : 'http://www.example.com/path/to/receiver.php',
                //从产出的结果的template目录下找文件
                from : '/config',
                //保存到远端机器的/home/fis/www/template目录下
                //这个参数会跟随post请求一起发送
                to : '/home/fis/www/',
                //某些后缀的文件不进行上传
                exclude : /.*\.(?:svn|cvs|tar|rar|psd).*/
            }],
            plugin: {
                //如果配置了receiver,fis会把文件逐个post到接收端上
                receiver : 'http://www.example.com/path/to/receiver.php',
                //从产出的结果的plugin目录下找文件
                from : '/plugin',
                //保存到远端机器的/home/fis/www/plugin目录下
                //这个参数会跟随post请求一起发送
                to : '/home/fis/www/',
                //某些后缀的文件不进行上传
                exclude : /.*\.(?:svn|cvs|tar|rar|psd).*/
            }
        }
    });
  • 小贴士:--dest参数支持使用逗号(,)分割多个发布配置,比如上面的例子,我们可以使用fis release --dest remote,plugin 命令在一次编译中同时发布多个目标。
Clone this wiki locally