Skip to content

七牛云 Jenkins 插件,支持归档构建结果到七牛,并从七牛云下载构建结果,不再占用本地存储资源

License

Notifications You must be signed in to change notification settings

sdandroid/qiniu-plugin

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

65 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

七牛云 Jenkins 插件

安装

从 Jenkins 插件列表中找到 Qiniu 插件,安装

七牛插件安装

构建

克隆代码仓库

git clone git@github.com:jenkinsci/qiniu-plugin.git

进入插件目录并构建插件

cd qiniu-plugin
mvn -Djenkins.version=2.217 -Duse-jenkins-bom package

安装依赖

  • OpenJDK 1.8
  • Jenkins 2.217+

使用插件

全局配置

  • 点击 Manage Jenkins 进入管理界面。
  • 点击 Configure System 进入配置界面。
  • 点击 Artifact Management for Builds 按钮,选择 Qiniu Artifact Manager
  • 在出现的 Qiniu Artifact Manager 配置栏中,依次填写 Access KeySecret KeyBucket Name,注意 Bucket Name 必须是七牛账户中已有的存储空间名称。
  • 可以点击旁边的 Advanced 按钮,将出现更多配置项,这里的配置项都是可选的。
    • Archive as infrequent storage object 表示以低频存储的方式存储归档文件,推荐打开。
    • Object Name Prefix 表示在存储空间中的对象名称前缀。
    • Bucket Download Domain 表示存储空间绑定的下载域名,如果不填,则从存储空间中选择一个下载域名。但如果在存储空间中没有绑定任何下载域名,则该项必填。
    • Use HTTPs Protocol 表示是否使用 HTTPS 传输协议,默认使用 HTTP 传输协议。
    • Qiniu Uc DomainQiniu Rs DomainQiniu API Domain 都仅在使用七牛私有云时才有必要修改配置,默认使用公有云的配置。
    • Apply for all jobs 表示对所有 Job 全部启用七牛归档存储。
  • 点击 Save 按钮保存。

配置任务

  • 如果在全局配置中没有勾选 Apply for all jobs,则需要为每个需要的 Job 启用七牛归档存储,配置方法如下:
    • 在 Job 的配置界面,点击 Post-build Actions 下拉框里的 Archive the artifacts to Qiniu 选项,将添加一个配置框。
    • Files to archive 里输入要归档的构建结果路径,可以使用通配符。
    • 可以点击旁边的 Advanced 按钮,将出现更多配置项,这里的配置项都是可选的。
      • Excludes 表示要从构建结果中排除一部分文件,依然可以使用通配符。
      • Do not fail build if archiving returns nothing 表示允许空的归档文件。
      • Archive artifacts only if build is successful 表示仅当构建成功才会归档。
      • Use default excludes 表示自动将 SCM 软件用的配置文件或数据文件排除,不予归档。
      • Treat include and exclude patterns as case sensitive 表示归档结果路径为大小写敏感。
    • 点击 Save 按钮保存。

流水线

  • 如果在全局配置中没有勾选 Apply for all jobs,则在 Pipeline 配置界面中,可以使用 archiveArtifactsToQiniu 指令将文件归档到七牛云存储。

脚本案例

node {
   stage('Build') {
      sh '''
rm -rf **
mkdir -p {aa,bb,cc}/{dd,ee,ff}
for file in {aa,bb,cc}/{dd,ee,ff}/{gg,hh,ii}
do
  dd if=/dev/urandom of="$file" count=1024 bs=1
done
      '''
   }
   stage('Results') {
      archiveArtifactsToQiniu allowEmptyArchive: false, caseSensitive: false, excludeFilesGlob: '', includeFilesGlob: '**', onlyIfSuccessful: false, useDefaultExcludes: false
   }
}

参数列表

参数名称 参数类型 描述 备注
includeFilesGlob 字符串 要归档的构建结果路径,可以使用通配符 必填,如果希望归档所有文件,则填写 '**
excludeFilesGlob 字符串 要从构建结果中排除一部分文件,依然可以使用通配符 必填,如果不希望排除任何文件,则填写 ''
allowEmptyArchive 布尔值 允许空的归档文件 必填
onlyIfSuccessful 布尔值 仅当构建成功才会归档 必填
useDefaultExcludes 布尔值 自动将 SCM 软件用的配置文件或数据文件排除,不予归档
caseSensitive 布尔值 归档结果路径为大小写敏感

About

七牛云 Jenkins 插件,支持归档构建结果到七牛,并从七牛云下载构建结果,不再占用本地存储资源

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Java 98.2%
  • HTML 1.8%