522
微信
编译__用户手册_持续交付平台-阿里云
编译就是把高级语言变成计算机可以识别的2进制语言。 测试是运行代码工程中的单元测试用例,当单元测试用例执行不通过时,建议开发人员先解决单元测试问题。
阿里云持续交付平台CRP,提供多种标准的编译/测试容器,可以支持编译Java、Node、Php、Python、Ruby、Go等语言的编译。 其他语言,或以上语言的编译测试环境需要依赖其他软件,可以在运行指令中预安装依赖的编译软件,然后运行编译命令。
1 使用场景说明
当您的源代码需要执行一些编译指令后,转换成2进制语言才能运行。您需要在持续发布线中增加编译/测试的任务。配置好后,持续交付平台CRP会提供对应的编译/测试容器,并在容器里运行编译的命令,最后将您需要的产出物打成package.tgz包上传到云存储中,用作后续上传maven仓库或部署等任务使用。
2 第一步:增加编译/测试任务
在项目列表中,点击您要配置持续发布线的项目,在左侧的菜单栏中点击图标,进入持续发布线配置页面。
点击需要配置的持续发布线名称,进入工作流查看页面,点击右上角的编辑按钮,在右下角的任务列表处,点击“+”号,选择"编译/测试”即可增加编译任务。
编译时,CRP会根据依次执行以下动作:分配标准编译容器->下载源代码->下载依赖的其他文件/目录->在代码目录下,执行编译命令->编译成功上传“产出物路径”中指定的包到云存储
3 第二步:选择语言类型
CRP的工作流支持Java、Node、Php、Python、Ruby、Go语言的编译-测试-部署。 按照您的工程使用的语言,您可以选择编译依赖的语言版本环境,
4 第三步:输入运行指令
编译指令指您需要在CRP的机器上运行的命令,可以输入多行命令,也可以在同一行输入,用分号间隔;
Go的编译指令举例如下:
go build
Java的测试&编译指令举例如下:
mvn test
mvn clean package -D maven.test.skip=true
Node.js的测试&编译指令举例如下:
npm test
npm install
Python的测试-编译指令举例如下:
python setup.py install
python setup.py test
python setup.py build
Php的测试指令举例如下:
phpunit --coverage-text .
Ruby的编译指令举例如下:
bundle install
bundle exec rake
5 第四步:设置编译好的包路径(产出物路径),上传包到云存储
产出物路径通常是Java、Go语言需要使用的。在您编译完成后,需要将编译好的包上传到部署机器上做部署。您可以在“输出物路径”中填写部署包的相对路径(相对于代码目录),CRP会将输出物上传到云存储,用作部署阶段使用。
Java产出物路径示例
target/demo.war
6 第五步:上传编译过程中需要的依赖文件
依赖文件是指在编译过程中,需要依赖其他代码库的代码时,可以在这里输入文件所在的代码库的地址(这个地址是您在CRP上浏览该代码的URL),该文件会自动下载到服务器的/root/upload/目录下。
比如Java工程使用autoconfig插件,配置文件为了保密要求,是放在其他代码库中的。示例输入如下:
https://crp.aliyun.com/projects/2***/codes/19**/repositories/blob?path=antx.properties
CRP会将对应路径下的文件下载到/root/upload/目录下,用户在编译指令中可以做如下处理:
cp /root/upload/antx.properties .
mvn clean package -D maven.test.skip=ture
7 如何使用自己的maven仓库上传下载jar包
CRP的Java编译默认是使用maven.aliyun.com仓库,如果需要使用您自己的maven仓库,请将您的settings.xml存到代码库根目录,系统将使用您的仓库进行编译。您可以在编译的配置页面上下载settings.xml示例文件。
最后更新:2016-11-23 17:16:07
上一篇:
代码更新__用户手册_持续交付平台-阿里云
下一篇:
部署__用户手册_持续交付平台-阿里云
业务数据分析__快速开始_移动数据分析-阿里云
SDK示例代码运行简介__数据订阅_用户指南_数据传输-阿里云
变更应用配置__应用管理_用户指南_容器服务-阿里云
修改查询删除报警任务__报警任务_用户指南_弹性伸缩-阿里云
查找数据__数据管理手册_用户操作指南_大数据开发套件-阿里云
设置回源HOST__配置操作接口_API 手册_CDN-阿里云
忘记密码怎么办,如何找回密码__账号登录_会员帐号及密码_会员账号&实名认证-阿里云
查询任务列表__其他接口_API 参考_云服务器 ECS-阿里云
cname接入指南__常见接入问题_Web 应用防火墙-阿里云
怎样授权一个子用户管理两台指定的RDS实例___云数据库(RDS)授权问题_授权常见问题_访问控制-阿里云
相关内容
常见错误说明__附录_大数据计算服务-阿里云
发送短信接口__API使用手册_短信服务-阿里云
接口文档__Android_安全组件教程_移动安全-阿里云
运营商错误码(联通)__常见问题_短信服务-阿里云
设置短信模板__使用手册_短信服务-阿里云
OSS 权限问题及排查__常见错误及排除_最佳实践_对象存储 OSS-阿里云
消息通知__操作指南_批量计算-阿里云
设备端快速接入(MQTT)__快速开始_阿里云物联网套件-阿里云
查询API调用流量数据__API管理相关接口_API_API 网关-阿里云
使用STS访问__JavaScript-SDK_SDK 参考_对象存储 OSS-阿里云