效率云

    任务配置

    Maven构建 插件使用指南

    使用Apache Maven构建Java项目。

    配置方式

    方式一:不配置打包上传(只是简单的编译代码,review代码,配置到Change流水线上)

    1.JPG 2.JPG 3.JPG

    方式二:配置打包上传(需要做发布、部署的操作)

    1.JPG 2.JPG 4.JPG

    查看制品库irepo页面地址:https://console.bce.baidu.com/irepo/

    5.JPG

    查看执行结果:

    7.JPG

    下载编译日志,查看编译信息

    6.JPG

    Gradle构建 插件使用指南

    使用Gradle构建Java项目。

    配置方式

    方式一:不配置打包上传(只是简单的编译代码,review代码,配置到Change流水线上)

    image.png

    2.JPG

    3.JPG

    4.JPG

    方式二:配置打包上传(需要做发布、部署的操作)

    2.JPG

    3.JPG

    11.JPG

    查看执行结果(执行成功):

    66.JPG

    发布 插件使用指南

    简介

    发布生成四位版本号供下游部署平台使用,发布依赖编译或构建插件。

    配置方式

    发布插件一定要配置到编译插件后面

    1.JPG 8.JPG 9.JPG

    执行过程

    1.JPG 2.JPG

    执行结果(成功案例)

    3.JPG 4.JPG 11.JPG

    执行取消发布

    5.JPG 6.JPG 7.JPG 8.JPG

    查看发布任务详情

    1.JPG 2.JPG

    Jenkins 插件用户指南

    Jenkins 插件 iPipe-Agent

    iPipe-Agent 是一个用来与 iPipe 对接的插件。您只需简单的操作,即可享受 iPipe 与 Jenkins 带来的持续交付可视化和自动化的便捷。

    插件.hpi文件下载地址

    下载链接: https://pan.baidu.com/s/12dbnnOmyzLaT1fOPku-qPA
    提取密码: 96wl

    安装Jenkins步骤:

    Jenkins支持外网机器部署:

    1. 登陆上述相应的机器,下载安装jdk,建议1.8, 下载链接:https://pan.baidu.com/s/1aDE-OxxygXkEmnFCJoYGKg 提取码:zmut

    解压以后在/etc/profile文件末尾处配置环境变量 比如我的JDK解压到/home/local目录下 export PATH=/home/local/jdk1.8.0_192/bin:$PATH

    1. 下载2.19版本Jenkins.war 点击下载: 链接:https://pan.baidu.com/s/1KJP2vdHLI9BIY_6rtFDIVw 提取码:7tjm
    2. 将下载好的jenkins.war上传到保定BCC机器上或者其他外网机器。
    3. 执行命令:nohup java -Dfile.encoding=utf-8 -Dhudson.model.ParametersAction.keepUndefinedParameters=true -jar jenkins.war --httpPort=8888 & (8888为启动端口号,可以根据实际情况更改)
    4. 会看到当前目录下生成一个nohup.out文件
    5. jenkins配置、构建等数据,默认保存到了~/.jenkins目录下,建议定期备份

    插件安装

    Jenkins版本要求:测试于Jenkins版本2.19上完成,建议使用该版本。其他Jenkins版本

    1.x理论上兼容,可以试用。

    方式一 使用 jenkins 管理页面的插件安装推荐使用

    • 打开 jenkins 的系统管理页面(BCC公网IP+启动端口号)

      1.JPG 2.JPG 3.JPG 4.JPG

      10.JPG

    • 进入插件管理页面

    21.JPG

    • 选择高级

    22.JPG

    • 在页面下方可以看到上传插件,选择 iPipe-Agent 插件 hpi 文件上传即可

    注意:自动安装的插件有些会有安装失败的情况,应是有些版本不支持,可以在此链接: http://updates.jenkins-ci.org/download/plugins 下载版本的.hpi文件即可(Ctrl+F搜索需要的替换的插件名称) 以publish-over-ssh插件为例:

    12.JPG

    21.JPG

    23.JPG

    方式二

    将 iPipe-Agent 插件 hpi 文件复制到 /.jenkins/plugins 目录下,重启 jenkins 即可完成插件安装

    注册 jenkins 到 iPipe

    可注册多个jenkins

    1. 安装 iPipe-Agent 插件后便可在 jenkins 的系统管理页面看到 iPipe-Agent 的管理入口

    11.JPG

    1. 填入注册信息,保存即可注册完成

    image.png

    3.将“防止跨站点请求伪造”选项去掉勾选

    12.JPG

    13.JPG

    创建一个 Job

    1. 注册好 jenkins 之后,即可创建 job

    image.png

    image.png

    1. 在配置 job 时可以填入项目标识列表,以半角逗号分隔;配置以后,则在iPipe上流水线中可以使用该job。

    image.png 1.JPG image.png

    之后在框里写个echo "test"就可以保存啦!

    iPipe流水线上配置Jenkins Job

    完成上面的步骤后即可在 iPipe 中配置刚刚新建的 Jenkins Job 到流水线上

    1. 首先进入 iPipe 流水线首页, 查看右上角,可以选择创建一条新的流水线,也可以在原有的流水线配置上更改配置保存后重新构建即可,流水线配置详情请参考流水线配置指南,这里只提供示例,如下图: image.png
    2. 选择添加 Stage、job image.png image.png image.png image.png image.png

    3.查看在iPipe上执行的效果:

    image.png

    4.在Jenkins构建页面查看触发的任务构建日志,下图表示执行成功:

    image.png

    image.png

    image.png

    参数传递

    iPipe-Agent 插件实现了上下游 Job 之间的参数传递功能

    1. 在 Jenkins 中创建 Job 时可以选择参数输出文件,并将想要传递的参数输出到上面指定的文件,一行一个键值对,格式为$VAR_NAME=$VAR_VALUE

    image.png

    image.png

    image.png

    1. 传递的参数可以直接在下游 Job 中使用,使用方法为$加上参数名 image.png

    image.png

    1. 到 iPipe 中配置好上下游 Job,即可实现参数传递

    image.png

    Jenkins上游配置: image.png

    image.png

    Jenkins下游配置(手动触发或自动触发都可以):

    image.png

    1. 可以在构建日志中看到,下游的 Job 成功接受参数:

    image.png

    1. Job 的输出参数和接受参数也可在详情页中查看

    image.png

    image.png

    上游参数: image.png 下游参数:

    image.png

    image.png

    部署BCC机器用户指南

    BCCDeploy简介

    BCCDeploy插件可以将自己的项目打包部署到已购买的BCC云服务器上。

    服务器安装部署客户端步骤

    登陆百度智能云BCC服务器(公网IP)并执行以下命令:

    首先确认BCC的操作系统是否为Centos, 执行命令:cat /etc/redhat-release root账号下执行以下命令: mkdir -p /home/work (创建客户端安装目录) cd /home/work (进入客户端安装目录) wget http://sugarheap.bid.local.baidubce.com:15505/download?fileName=salt-64.tar.gz -O salt.tar.gz (下载) tar -xzvf ./salt.tar.gz (解压压缩文件) sh ./bin/control start (运行客户端) sh ./bin/control status (查看客户端状态,显示Running就是正常的,参考下图执行的命令) 66.JPG

    “BCCDeploy”插件在iPipe上配置(Demo)

    Demo的环境准备:

    “BCCDeploy”插件在ipipe上配置如下:

    可配置在编译插件或发布插件后面,编译中配置的命令如下(BID部署的启动脚本需参考此命令,启动命令demo下面已经给出,下载即可):

    在iPipe上配置如下:

    3.JPG 4.JPG 1.JPG 2.JPG 3.JPG

    "停止命令"和"启动命令"

    下载链接:https://pan.baidu.com/s/17rxMf-Tr4uZyHyiIm0fpuQ 提取码:6ajd 将下载好的这三个.sh文件上传到BCC机器/home/work/下,并执行命令:

    chmod +x start.sh
    chmod +x startspring.sh
    chmod +x stop.sh

    名词解释:

    任务名:任务名可自定义;

    类型:通过下拉选框选择“BCCDeploy”;

    执行账户:BCC机器上的操作用户,需与下载客户端的账户一致;

    部署路径:代码库(项目)的部署的位置,会将编译产出的目录(.output/*.war)放到此目录下(此产出目录需参考编译命令,Demo已给出示例);

    启动命令:启动程序的命令脚本,需要自己编写符合自己项目的shell脚本,温馨提示:此demo中的shell脚本中启动命令用的是java -jar命令启动output目录下的war包,如图;

    1.JPG

    停止命令:停止程序命令脚本,需自己编写shell脚本,温馨提示:每次部署会先检查进程,然后kill掉,如图;

    2.JPG

    部署资源:指定需要部署到哪台BCC机器上,可多选,但需要在选择的BCC机器上部署agent;

    5.JPG

    其中,还有个选项就是自动检查验证和人工检查验证,

    55.JPG

    区别如下图:

    56.JPG

    回调接口需在代码里自己开发,返回格式如下:

    57.JPG

    比如:

    58.JPG

    后者是需要人工检查完成后,通过点击链接打开部署任务,在部署任务中手动点击“确认”按钮完成检查流程,如下图:

    6.JPG

    第一次执行BID任务会失败,而且BID页面任务列表中会没有数据,原因是没有对BID实例进行授权操作,这时候需要效率云主账号对BID实例进行授权操作,根据提示,点击“是”即可。

    11.JPG

    点确定以后,到iPipe流水线重新执行BID任务即可.

    1.JPG 2.JPG

    最后在BCC机器的/home/work目录下查看是否将发布产出部署上去:

    3.JPG

    查看在ipipe上执行结果

    4.JPG

    在浏览器上输入:公网IP:8080

    5.JPG

    iScan接入iPipe使用指南

    简介

    iPipe流水线配置iScan插件后,相应的流水线每次构建或执行都会自动触发扫描,及时发现代码问题,保证质量和开发效率。

    iScan插件使用步骤

    step1 进入流水线配置页面

    1.JPG

    step2 添加任务

    3.JPG

    step3 选择iScan扫描插件

    4.JPG

    step4 配置插件

    6.JPG

    step5 触发流水线执行扫描任务

    8.JPG

    step6 触发流水线执行结果(因配置的时候是选择的“存在高危缺陷时任务失败”,所以此时任务是成功的)

    9.JPG

    step7 查看执行详情

    11.JPG 10.JPG

    配置说明

    基础配置

    任务名

    流水线中iScan扫描任务的名字

    语言类型

    要扫描的语言,iPipe系统会分析代码库的语言构成自动推荐扫描语言,如果要扫描的语言与推荐的不相符,请手动选择要扫描的语言

    扫描工具

    上面指定的语言所支持的扫描工具,具体见下方的表格。

    如果要一次扫描任务配置多个工具同时扫描,请参考:多工具并行扫描

    编译命令 Object-C语言项目,Xcode创建的工程使用xcodebuild命令行编译;

    android语言选用infer工具时,gradle构建的工程选用./gradlew命令行编译;

    编译命令格式:commands1&&commands2,

    其中编译前的准备环境命令以及clean命令要写在最前面即commands1,各命令间用英文分号隔开; 编译命令为commands2;

    commands1和commands2命令都是相对于代码根目录的,如果需要进入到指定目录下执行命令,比如obeject-c项目要进入根目录下的app文件夹执行commands1与commands2,命令如下: cd app;xcodebuild -scheme XX -workspace XX.xcworkspace -configuration Release clean && cd app;xcodebuild -scheme XX -workspace XX.xcworkspace -configuration Release build

    语言 扫描工具 默认推荐工具
    Java BCA-Java
    Java FindBugs
    Java PMD
    Java Fox
    C/C++ BCA-Cpp
    C/C++ Clang Static Analyzer
    Android BCA-Java
    Android Findbugs
    Android Godeyes
    Android Fox
    Android Android Lint
    PHP PHPMD
    PHP RIPS
    PHP SonarEngine
    PHP PHPCheckstyle
    Python Pylint
    Go Govet
    Go Golint
    JavaScript ESLint
    Object-C Infer
    Object-C oclint

    选择infer,clang,oclint、findbugs这个需要编译的工具时,下方会出现编译命令元素,用于指定编译代码所需的命令

    扫描等级

    用于控制扫描的范围,目前支持扫描全部缺陷,只扫描中高级缺陷,只扫描高级缺陷三种选择,默认为只扫描中高级缺陷

    扫描红线

    用于控制出现何种缺陷的时候流水线任务,目前支持忽略所有漏洞,存在高级漏洞时失败,存在中高级漏洞时失败,存在所有漏洞时扫描失败

    高级配置

    过滤

    选择只扫描时:iScan扫描任务会只扫描编辑框内指定的若干个路径,(不用填写代码库三级路径,从后面的路径填写即可,比如完整路径为i6xfauqk/lihangtest/icodeDemo/src,若只想扫描src,填写src即可)

    选择不扫描时:iScan扫描任务会不扫描编辑框内指定的若干路径, 如果编辑框不填写内容,则不会进行过滤操作

    Docker构建使用指南

    Docker构建是指通过流水线构建和制品管理,将编译之后的服务通过打docker镜像推送至百度容器引擎CCE上管理。

    制品管理iRepo配置制品

    4.JPG 5.JPG

    回到制品库列表页面查看是否创建成功。

    6.JPG

    在持续集成流水线iPipe上配置

    1.选择Maven编译或Gradle编译插件,这里以Maven编译插件为例

    1.JPG

    2.配置详情

    2.JPG

    3.JPG

    注意:

    如果出现因"镜像Tag"重复导致构建失败的问题,可以在配置任务的时候,“镜像Tag”使用系统变量参数,如填写:${AGILE_PIPELINE_BUILD_ID}

    3.点击保存触发构建即可

    4.查看构建结果

    7.JPG

    查看镜像上传结果

    查看制品库镜像详情页面是否真的上传成功。

    8.JPG

    9.JPG

    10.JPG

    上一篇
    配置或者修改流水线
    下一篇
    交付之分支关联卡片