3 Star 5 Fork 5

HuaweiCloudDeveloper / huaweicloud-jenkins-plugins

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
贡献代码
同步代码
取消
提示: 由于 Git 不支持空文件夾,创建文件夹后会生成空的 .keep 文件
Loading...
README
Apache-2.0

Jenkins华为云插件

工作原理

上传

插件使用

下载源码&编译

git clone https://gitee.com/HuaweiCloudDeveloper/huaweicloud-jenkins-plugins.git
cd huaweicloud-jenkins-plugins
mvn package -DskipTests

上传插件

系统管理 --> 插件管理 --> 高级 --> Deploy Plugin --> 选择文件 --> 上传target下的hpi文件 --> 重启Jenkins

1、OBS上传文件功能

传统构建后上传功能

增加构建后步骤
修改项目,增加构建后操作,选择华为云OBS上传

上传

填写华为云OBS配置信息

参数

本地路径为相对于workspace的路径,例如填写为/abc,则本地路径为${WORKSPACE}/abc

本地路径可以设置为文件或目录。如果设置为文件则上传单个文件,设置为目录上传整个目录

Pipeline流水线上传

参数说明
参数名称 参数说明
ak Access Key
sk Secret Key
credentialsId 全局密钥,密钥类型:Secret text,格式:credentialsId:'yourAk,yourSk'
bucket Bucket
endpoint Endpoint
workingDir 当前项目的工作目录,不为空时,将从${workspace}/workingDir下查找需要上传的文件
file 文件名称,用于指定要上传的文件全名,不能与includePathPattern一起使用
includePathPattern 文件正则匹配路径,用于匹配要上传的文件,不能与file一起使用
excludePathPattern 排除文件名正则匹配路径
path obs远端目录,上传的文件将按照工作空间下的目录结构放到此目录下,不填写默认为根目录
contentType 文件类型
kmsId SSE-KMS key_id,加密用
acl 文件权限策略
片段生成器生成

ak/sk示例1:OBSPipelineUpload(ak:"...",sk:"...",endpoint:"obs.cn-south-1.myhuaweicloud.com",bucket:"obs-jenkins", includePathPattern:'*/', path:'path/to/targetFolder/', workingDir:'/', contentType:'application/x-font-ttf', contentDisposition:'attachment',kmsId:'...')

密钥示例2:OBSPipelineUpload acl: 'Private', ak: '', bucket: 'obs-jenkins', contentType: 'application/x-font-ttf', credentialsId: 'global-obs-credentialsId', endpoint: 'obs.cn-south-1.myhuaweicloud.com', file: '', includePathPattern: '**/*', kmsId: '.....', path: 'path/to/targetFolder/', sk: '', workingDir: 'target'

上传

2、OBS文件下载功能

Pipeline流水线下载文件

参数名称 参数说明
ak Access Key
sk Secret Key
endpoint 终端节点
bucket 需要下载对象所在桶名
remotePrefix 需要下载对象对象的前缀名
localFolder 需要下载到的本地路径(在jenkins的安装路径下存放文件)
片段生成器生成

示例:OBSPipelineDownload( ak: '', bucket: '', endpoint: '', localFolder: '', remotePrefix: '', sk: '')

上传

3、CodeArts Check代码检查功能

Pipeline流水线触发

参数说明
参数名称 参数说明
ak Access Key
sk Secret Key
region Region:所在区域,如cn-north-4
project_id codeCheck中的项目id
task_id codeCheck中的任务id
deleteTask 当门禁质量通过时,是否删除任务,填true删除
topicUrn SMN服务中的主题URN,非必填
片段生成器生成

示例:CodeCheckPipeline(ak:'',sk'',region:'',project_id:'',task_id:'', deleteTask:'', topicUrn:'')

上传

4、VSS漏洞扫描功能

Pipeline流水线触发

参数说明
参数名称 参数说明
ak Access Key
sk Secret Key
region Region:所在区域,如cn-north-4
task_name 扫描任务名称,自定义即可
url vss扫描的url
topicUrn SMN服务中的主题URN,非必填
task_type 扫描任务类型,非必填
timer 普通任务的定时启动时间,非必填
trigger_time 监测任务的定时触发时间,非必填
task_period 监测任务的定时触发周期,非必填
scan_mode 扫描模式:fast - 快速扫描 normal - 标准扫描 deep - 深度扫描,非必填
port_scan 是否进行端口扫描,非必填
weak_pwd_scan 是否进行弱密码扫描,非必填
cve_check 是否进行CVE漏洞扫描,非必填
picture_check 是否进行网站内容合规文字检测,非必填
malicious_code 是否进行网站挂马检测,非必填
malicious_link 是否进行链接健康检测(死链、暗链、恶意外链),非必填
片段生成器生成

示例:VssPipeline(ak:'',sk:'',region:'cn-north-4',task_name:'test',url:'')

上传

5、CodeArts流水线

Pipeline触发CodeArts流水线

参数说明
参数名称 参数说明
ak Access Key
sk Secret Key
region Region:所在区域,如cn-north-4
project_id codeArts项目id
pipeline_id codeArts流水线id
片段生成器生成

示例:CodeArtsPipeline(ak:'',sk:'',region:'cn-north-4',project_id:'',pipeline_id:'')

上传

6、DEW服务查询凭据的版本与凭据值

查询指定凭据版本的信息和版本中的明文凭据值

Pipeline查询指定凭据

参数说明
参数名称 参数说明
accessKey Access Key
secretKey Secret Key
region Region:所在区域,如cn-north-4
secretName 凭证名称
versionId 凭证版本
片段生成器生成

示例:getContracts(accessKey: '', region: '', secretKey: '', secretName: '', versionId: '')

上传

构建

1.修改${USER}/.m2/settings.xml中的maven配置文件

mirrors节点中增加

<mirror>
  <id>repo.jenkins-ci.org</id>
  <url>https://repo.jenkins-ci.org/public/</url>
  <mirrorOf>m.g.o-public</mirrorOf>
</mirror>

pluginGroups节点中增加

<pluginGroup>org.jenkins-ci.tools</pluginGroup>

profiles节点中增加

<profile>
  <id>jenkins</id>
  <activation>
    <activeByDefault>true</activeByDefault>
  </activation>
  <repositories>
    <repository>
      <id>repo.jenkins-ci.org</id>
      <url>https://repo.jenkins-ci.org/public/</url>
    </repository>
  </repositories>
  <pluginRepositories>
    <pluginRepository>
      <id>repo.jenkins-ci.org</id>
      <url>https://repo.jenkins-ci.org/public/</url>
    </pluginRepository>
  </pluginRepositories>
</profile>

2.打包

mvn clean package -DskipTests

3.运行

mvn clean hpi:run

jenkins-plugins详情

关于更多huaweicloud-jenkins-plugins的信息和案例可前往华为云官网查看 https://developer.huaweicloud.com/develop/resource/opensource/jenkins.html

在华为云应用商店快速应用

已放入华为云应用商店,您只需开通一个华为云账户,即可一键安装部署好,可直接访问使用。 https://marketplace.huaweicloud.com/contents/5de07bbe-e025-44e4-b065-808c302d9a91#productid=OFFI820561133680414720

Apache License Version 2.0, January 2004 http://www.apache.org/licenses/ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION 1. Definitions. "License" shall mean the terms and conditions for use, reproduction, and distribution as defined by Sections 1 through 9 of this document. "Licensor" shall mean the copyright owner or entity authorized by the copyright owner that is granting the License. "Legal Entity" shall mean the union of the acting entity and all other entities that control, are controlled by, or are under common control with that entity. For the purposes of this definition, "control" means (i) the power, direct or indirect, to cause the direction or management of such entity, whether by contract or otherwise, or (ii) ownership of fifty percent (50%) or more of the outstanding shares, or (iii) beneficial ownership of such entity. "You" (or "Your") shall mean an individual or Legal Entity exercising permissions granted by this License. "Source" form shall mean the preferred form for making modifications, including but not limited to software source code, documentation source, and configuration files. "Object" form shall mean any form resulting from mechanical transformation or translation of a Source form, including but not limited to compiled object code, generated documentation, and conversions to other media types. "Work" shall mean the work of authorship, whether in Source or Object form, made available under the License, as indicated by a copyright notice that is included in or attached to the work (an example is provided in the Appendix below). "Derivative Works" shall mean any work, whether in Source or Object form, that is based on (or derived from) the Work and for which the editorial revisions, annotations, elaborations, or other modifications represent, as a whole, an original work of authorship. For the purposes of this License, Derivative Works shall not include works that remain separable from, or merely link (or bind by name) to the interfaces of, the Work and Derivative Works thereof. "Contribution" shall mean any work of authorship, including the original version of the Work and any modifications or additions to that Work or Derivative Works thereof, that is intentionally submitted to Licensor for inclusion in the Work by the copyright owner or by an individual or Legal Entity authorized to submit on behalf of the copyright owner. For the purposes of this definition, "submitted" means any form of electronic, verbal, or written communication sent to the Licensor or its representatives, including but not limited to communication on electronic mailing lists, source code control systems, and issue tracking systems that are managed by, or on behalf of, the Licensor for the purpose of discussing and improving the Work, but excluding communication that is conspicuously marked or otherwise designated in writing by the copyright owner as "Not a Contribution." "Contributor" shall mean Licensor and any individual or Legal Entity on behalf of whom a Contribution has been received by Licensor and subsequently incorporated within the Work. 2. Grant of Copyright License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare Derivative Works of, publicly display, publicly perform, sublicense, and distribute the Work and such Derivative Works in Source or Object form. 3. Grant of Patent License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work, where such license applies only to those patent claims licensable by such Contributor that are necessarily infringed by their Contribution(s) alone or by combination of their Contribution(s) with the Work to which such Contribution(s) was submitted. If You institute patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Work or a Contribution incorporated within the Work constitutes direct or contributory patent infringement, then any patent licenses granted to You under this License for that Work shall terminate as of the date such litigation is filed. 4. Redistribution. You may reproduce and distribute copies of the Work or Derivative Works thereof in any medium, with or without modifications, and in Source or Object form, provided that You meet the following conditions: (a) You must give any other recipients of the Work or Derivative Works a copy of this License; and (b) You must cause any modified files to carry prominent notices stating that You changed the files; and (c) You must retain, in the Source form of any Derivative Works that You distribute, all copyright, patent, trademark, and attribution notices from the Source form of the Work, excluding those notices that do not pertain to any part of the Derivative Works; and (d) If the Work includes a "NOTICE" text file as part of its distribution, then any Derivative Works that You distribute must include a readable copy of the attribution notices contained within such NOTICE file, excluding those notices that do not pertain to any part of the Derivative Works, in at least one of the following places: within a NOTICE text file distributed as part of the Derivative Works; within the Source form or documentation, if provided along with the Derivative Works; or, within a display generated by the Derivative Works, if and wherever such third-party notices normally appear. The contents of the NOTICE file are for informational purposes only and do not modify the License. You may add Your own attribution notices within Derivative Works that You distribute, alongside or as an addendum to the NOTICE text from the Work, provided that such additional attribution notices cannot be construed as modifying the License. You may add Your own copyright statement to Your modifications and may provide additional or different license terms and conditions for use, reproduction, or distribution of Your modifications, or for any such Derivative Works as a whole, provided Your use, reproduction, and distribution of the Work otherwise complies with the conditions stated in this License. 5. Submission of Contributions. Unless You explicitly state otherwise, any Contribution intentionally submitted for inclusion in the Work by You to the Licensor shall be under the terms and conditions of this License, without any additional terms or conditions. Notwithstanding the above, nothing herein shall supersede or modify the terms of any separate license agreement you may have executed with Licensor regarding such Contributions. 6. Trademarks. This License does not grant permission to use the trade names, trademarks, service marks, or product names of the Licensor, except as required for reasonable and customary use in describing the origin of the Work and reproducing the content of the NOTICE file. 7. Disclaimer of Warranty. Unless required by applicable law or agreed to in writing, Licensor provides the Work (and each Contributor provides its Contributions) on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied, including, without limitation, any warranties or conditions of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE. You are solely responsible for determining the appropriateness of using or redistributing the Work and assume any risks associated with Your exercise of permissions under this License. 8. Limitation of Liability. In no event and under no legal theory, whether in tort (including negligence), contract, or otherwise, unless required by applicable law (such as deliberate and grossly negligent acts) or agreed to in writing, shall any Contributor be liable to You for damages, including any direct, indirect, special, incidental, or consequential damages of any character arising as a result of this License or out of the use or inability to use the Work (including but not limited to damages for loss of goodwill, work stoppage, computer failure or malfunction, or any and all other commercial damages or losses), even if such Contributor has been advised of the possibility of such damages. 9. Accepting Warranty or Additional Liability. While redistributing the Work or Derivative Works thereof, You may choose to offer, and charge a fee for, acceptance of support, warranty, indemnity, or other liability obligations and/or rights consistent with this License. However, in accepting such obligations, You may act only on Your own behalf and on Your sole responsibility, not on behalf of any other Contributor, and only if You agree to indemnify, defend, and hold each Contributor harmless for any liability incurred by, or claims asserted against, such Contributor by reason of your accepting any such warranty or additional liability. END OF TERMS AND CONDITIONS APPENDIX: How to apply the Apache License to your work. To apply the Apache License to your work, attach the following boilerplate notice, with the fields enclosed by brackets "[]" replaced with your own identifying information. (Don't include the brackets!) The text should be enclosed in the appropriate comment syntax for the file format. We also recommend that a file or class name and description of purpose be included on the same "printed page" as the copyright notice for easier identification within third-party archives. Copyright [yyyy] [name of copyright owner] Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

简介

jenkins对接华为云服务,其中包括OBS对象存储、Codechck代码检查和VSS漏洞扫描等服务 展开 收起
Java 等 2 种语言
Apache-2.0
取消

发行版

暂无发行版

贡献者

全部

近期动态

加载更多
不能加载更多了
1
https://gitee.com/HuaweiCloudDeveloper/huaweicloud-jenkins-plugins.git
git@gitee.com:HuaweiCloudDeveloper/huaweicloud-jenkins-plugins.git
HuaweiCloudDeveloper
huaweicloud-jenkins-plugins
huaweicloud-jenkins-plugins
master

搜索帮助