概述
本文讲解Web应用构建相应的配置。关于构建的更多内容,比如<应用名>.release是什么,请从
构建配置概述读起。
完成Web应用的构建配置后,请继续部署配置,参见
部署配置:通过脚本部署。
Java构建
此时<应用名>.release文件基本内容:
- code.language=oracle-jdk1.9
- build.output=target/<应用名>.war
这意味着,将在Java构建环境(详见
构建环境)中,使用Java默认构建命令mvn -U clean package -Dappname=$APP_NAME -P$PACKAGE_LABEL进行构建,随后把构建输出target/<应用名>.war打为tgz包并保存,供后续部署使用。
如果想改变构建命令,需要设置build.command。详见
可配置键的完整列表中的build.command。
默认的maven settings会把所有的repository都镜像到maven.aliyun.com下载依赖,如果您需要不同的配置,只需要在代码根目录放置您的settings.xml,RDC会使用该文作为构建的settings.xml。
如果需要使用私有maven仓库下载依赖或上传二方库,具体做法详见
在RDC中使用私有maven仓库。
Node构建
此时<应用名>.release文件基本内容:
- code.language=node8.x
这意味着,将在Node构建环境(详见
构建环境)中,使用Node默认构建命令npm --python=/usr/alibaba/install/python-3.5.0/bin/python3 --registry=https://registry.npm.taobao.org install --productionL进行构建,随后把构建输出./(源代码根目录)打为tgz包并保存,供后续部署使用。
如果想改变构建命令,需要设置build.command。详见
可配置键的完整列表中的build.command。类似的,如果想改变打包范围,需要设置build.output。
Node构建通过engines的方式来获得特定的版本,具体方式是在package.json中添加如下片段:
- ...
- "engines": {
- "node": ">=5.1.0"
- },
- ...
则RDC会根据使用您指定的版本。该机制背后使用的是nvm,所以只要是nvm支持的版本,都可以填写。
PHP构建
此时<应用名>.release文件基本内容:
- code.language=php7.0
系统将简单的把./(源代码根目录)打为tgz包并保存,供后续部署使用。如果希望构建,请设置build.command,于是将在PHP构建环境(详见
构建环境)中,据此构建后再打包。
其他情况
此时<应用名>.release文件基本内容:
- code.language=scripts
系统将简单的把./(源代码根目录)打为tgz包并保存,供后续部署使用。如果希望构建,请设置build.command,于是将在基础环境(详见
构建环境)中,据此构建后再打包。
补充说明
灵活配置构建环境
在build.command中,可以指定任意构建命令,比如build.command=sh build.sh,所以如果需要安装软件,或者执行复杂的命令,都可以通过这种方式实现。
环境变量对于构建过程的影响
关于环境变量对于构建过程的影响,请参看
使用参数影响构建行为
不同环境使用不同的构建配置
RDC支持为不同的运行环境打不同的包。为此,在不同的环境中使用不同的构建配置。详见
使用参数影响构建行为。
修改一个环境的构建配置后,考虑相应的修改该环境的部署配置。详见
应用部署概述。
关于包的管理
目前不提供压缩包的下载,该压缩包会在进行部署时候,直接传到指定机器上。详见
部署配置:通过脚本部署。