注意:以下文档只适用于TOP接口,请谨慎使用!

文档中心 > 聚石塔

持续集成(CI)使用手册

更新时间:2023/01/04 访问次数:1575

前言

为进一步提升用户的应用交付效率,聚石塔推出了持续集成能力;从用户的代码源开始,用户手动触发构建,系统自动帮助用户构建并产出代码包,构建完成后,用户直接提交发布单即可,免去了之前用户通过线下方式手工打包、然后上传代码包的过程,主要流程如下图:

image.png

前置条件

  • 目前支持java+maven、php、python、nginx等技术体系,如有其他语言需求,请联系@岭锋
  • 目前支持git仓库,如果使用的是github、云效codeup、gitlab、gogs等,则是天然支持的(安全方面,聚石塔会根据用户提供的git token访问,聚石塔保障用户的token及源代码不会从聚石塔发生泄漏);如果是自建的git仓库,则需要仓库提供公网访问能力

 

使用步骤

创建应用

目前支持代码包方式的持续集成,因此,【部署方式】请选择“代码包上传”

image.png

 

创建环境

image.png

 

环境配置时,请勾选“使用持续集成”,并填写“代码源信息”以及“构建信息”

仓库地址:请填写http协议的地址

用户名:并非创建token时的token名称,而是你的实际用户名称

image.png

设置代码拉取凭证

代码拉取凭证(token)是拉取git源代码的访问令牌token,具体参见下方链接

 

注意:聚石塔持续集成填写的用户名并非创建token时的token名称,而是你的实际用户账号

获取github访问令牌

获取gitlab访问令牌

获取gogs访问令牌

获取云效codeup访问令牌

 

设置构建信息

 

① java + maven

  • 构建命令:如【mvn -B clean package -DskipTests=true】
  • 构建物的路径:此处指的是最终的构建产出物(一般为.jar或者.war),且路径为相对工程根路径的相对路径(此处注意为相对路径,前面不需要加/),如target/artifactName.jar ; 如果你的工程是maven多module模式(如下图所示),则构建产出物路径则需要加上maven module,如本示例中则应该为(template-web/target/web.jar),artifactName为用户在项目中指定的构建物名称,请自行替换;

image.png

注意:如果你的工程是微服务架构,工程依赖了其他工程的jar包,并且你依赖的jar包是放在公司自有的maven仓库中的,则需要:

1、你公司的maven仓库可以公网访问

2、将你的maven settings.xml放在工程的根目录下(如上图所示)

此时构建命令参考:mvn clean -B package -DskipTests=true --settings settings.xml

 

ps:如果工程中依赖了-snapshot的jar包,并且构建时出现未下载最新版本而导致编译报错(这种情况本地构建有时候也是会出现的),则需要加上"-U"命令

-U,  --update-snapshots   通过远程仓库强制检查缺失的release包 并 更新snapshots包

mvn clean -B -U package -DskipTests=true --settings settings.xml

 

 

② php、python、nginx等无需编译的语言

image.png

  • 构建物的路径:此处指的需要打包的目录,路径为相对git工程根路径的相对路径(此处注意为相对路径,前面不需要加/);"."代表打包根目录下所有文件和目录,一般情况下填写"."即可,如只需打包git根目录下某个目录,则填写该目录名称即可(再次强调:路径为相对git工程根路径的相对路径(此处注意为相对路径,前面不需要加/));

 

发布

image.png

 

进入发布页面后,点击“重新构建”即可发起一次全新的代码构建;

对于maven构建,第一次构建会有点慢,因为需要下载依赖包,聚石塔会对依赖包进行缓存加速,之后的构建会复用缓存构建,则会快很多

image.png

 

构建过程中,可通过“构建日志”按钮,查看构建过程中的日志

image.png

 

image.png

 

构建完成后,“部署”阶段,下方会出现“新建发布单”按钮,点击创建新的发布单

image.png

image.png

 

 

“部署”阶段,发布过程中,可点击“发布详情”按钮查看发布单的详细信息

image.png

 

发布完成

image.png

 

至此,已经通过聚石塔持续集成将git代码发布成功了;如代码更新后需再次发布,点击“重新构建”即可重新发布

 

 

常见问题

1、Could not find artifact 构建时无法下载依赖的其他工程的二方包

如果你的工程是微服务架构,工程依赖了其他工程的jar包,并且你依赖的jar包是放在公司自有的maven仓库中的,则需要:

1、你公司的maven仓库可以公网访问

2、将你的maven settings.xml放在工程的根目录下(如下图所示)

此时构建命令参考:mvn clean package -DskipTests=true --settings settings.xml

image.png

 

2、编译报错,下载的依赖jar包不是最新版本

如果工程中依赖了-snapshot的jar包,并且构建时未下载最新版本而导致编译报错(这种情况本地构建有时候也是会出现的),则需要加上"-U"命令

-U,  --update-snapshots   通过远程仓库强制检查缺失的release包 并 更新snapshots包

mvn clean -B -U package -DskipTests=true --settings settings.xml

 

FAQ

关于此文档暂时还没有FAQ
返回
顶部