可配置键的完整列表
<应用名>.release
文件存放在源代码所在Git库的根目录下。流水线的构建任务,根据这个文件构建打包,供后续的部署任务使用。
<应用名>.release
是键-值形式的。例如:
code.language=oracle-jdk1.9
build.output=target/abc.war
这些键,可能带有前缀。比如docker.file
带testing
前缀,写为testing.docker.file
。这些键的值,可能不是常数,而是带变量,比如docker.tag=${PACKAGE_LABEL}_${TIMESTAMP}
。相关内容,详见使用传入参数改变构建行为。
下面给出这些可配置的键的完整列表:
键 | 默认值 | 可填写值 | 说明 | 是否必填 |
code.language | 无 |
| 必填 | |
build.command | 见说明1 | 任意命令行 | 构建时执行的命令 | 选填 |
build.output | 如果编程语言是 | 相对路径形式,从代码库根目录算起。可以是文件(比如 | 需要最终打成tgz压缩包的内容。 | 选填 |
build.output.nottgz |
|
| 不要对build.output指定的输出物打压缩包 | 选填 |
deploy.appctl.path | 无 | 该文件的相对路径形式,从根目录算起,比如 | 需要添加到压缩包的部署脚本文件 详情 | 选填 |
docker.repo | 无 | 比如 | 推送到Docker Registry上的镜像名称 | 制作Docker镜像则必填 |
docker.repo.pull | 无 | 内容格式与docker.repo相同 | 当设置该值时,云效依然会使用docker.repo中的地址进行构建和push,但在传递给部署系统(比如阿里云容器服务)时,会使用docker.repo.pull指定的URL为基准的镜像地址。一个典型的使用场景是阿里云容器服务集群在VPC中,希望使用registry的VPC地址进行镜像下载,则可以指定docker.repo.pull为 | 选填 |
docker.file |
| 该文件的相对路径形式,从根目录算起,比如 | 制作Docker镜像所用Dockerfile的路径 | 选填 |
docker.tag |
| 比如 | 推送到Docker Registry上的镜像标签名称 | 选填 |
说明1:build.command
的默认值:
编程语言是Java的Web应用:
mvn -U clean package -Dappname=$APP_NAME -P$PACKAGE_LABEL
(关于$APP_NAME
和$PACKAGE_LABEL
,请参看使用参数影响构建行为)。编程语言是Java的安卓无线应用:
./gradlew clean assembleDebug(assembleRelease) --info -s
。编程语言是Node时的Web应用:
npm --python=/usr/alibaba/install/python-3.5.0/bin/python3 --registry=https://registry.npmmirror.com install --production
。其中的--python
部分是为了进行包含本地扩展的Node模块的编译,详见:https://github.com/nodejs/node-gyp/https://github.com/nodejs/node-gyp。其他情况,默认值为空,于是不进行构建。(可能进行生成Docker镜像、打压缩包等工作)