【DevOps】Atlassian插件开发指南

本文以Bamboo插件开发为例,记录一下插件开发过程。

一、简介

Atlassian Bamboo 6.9.1 是一款持续集成和持续交付(CI/CD)工具,支持使用插件扩展其功能。如果需要开发自己的 Bamboo 插件并添加到 Bamboo 中,则可以参考以下指南。

二、开发过程

1. 开发环境配置

要开发 Bamboo 插件,需要安装 Java 开发工具包(JDK)和 Atlassian Plugin SDK。Atlassian Plugin SDK 包含了 Atlassian 插件开发所需的一切工具和库。

下载地址:Atlassian-Plugin-SDK-installer

2.创建插件项目

使用 Atlassian Plugin SDK 中的 "atlas-create-bamboo-plugin" 命令创建一个新的 Bamboo 插件项目。该命令将生成一个基本的插件项目结构,包括 pom.xml 文件和插件的基本目录结构。

根据提示,输入插件的组ID工件ID版本包名称

其中,Use OSGI Java Config:(Y/N/y/n)N: : 直接回车即可,默认为N;

回车后,控制台会输出插件的坐标信息,会出现Y: : 选项,直接回车即可。

3.编写插件代码

在创建好的插件项目中,可以根据插件的需求编写相应的代码。Bamboo 插件可以包含以下类型的模块:

  • Web 模块:允许您添加自定义 Web 页面和 REST API 到 Bamboo 中。
  • Build 模块:允许您添加自定义构建任务和构建器到 Bamboo 中。
  • Deploy 模块:允许您添加自定义部署任务和部署器到 Bamboo 中。
  • Task 模块:允许您添加自定义任务到 Bamboo 中。
  • Administration 模块:允许您添加自定义系统配置页面到 Bamboo 中。

4.添加插件元数据

根据插件类型,调整修改atlassian-plugin.xml文件,该文件是插件元数据描述文件。

5.打包和安装插件

完成插件代码编写后,可以使用 Atlassian Plugin SDK 中的 "atlas-package" 命令打包插件。打包后的插件文件位于 "target" 目录中。

6.安装插件

要安装插件,请将插件文件上传到 Bamboo 插件管理页面中。在上传插件后,Bamboo 将自动检测和加载插件。

7.调试插件

要调试插件,可以使用 Atlassian Plugin SDK 中的 "atlas-debug" 命令启动 Bamboo,以便在本地环境中进行调试。
注意事项:

  • 可以插件开发调试可能会影响Bamboo的稳定性和性能,建议在测试环境中进行调试,充分验证后再进行插件安装。
  • Bamboo默认的调试端口为5005

三、参考资料

Bamboo插件开发指南官方文档地址: https://developer.atlassian.com/server/bamboo/bamboo-plugin-guide
Bamboo开发者社区地址: https://community.atlassian.com/t5/Bamboo-discussions/bd-p/bamboo-discussions
HipChat4Bamboo Demo: https://github.com/go2group/hipchat-bamboo

相关推荐
RoboWizard4 分钟前
金士顿高速闪存盘 单双接口适配多元存储需求
大数据·运维·人工智能·智能手机·云计算
hkj880812 分钟前
Ubuntu 20.04 安装 OpenJDK 17
linux·运维·ubuntu
sulikey20 分钟前
服务器安装Docker教程。如何在云服务器安装Docker容器?
运维·服务器·ubuntu·docker·安装教程·云服务器
许彰午23 分钟前
17-22-运维与高级主题
运维·网络
万联WANFLOW23 分钟前
外贸独立站:服务器放海外国内后台卡,放国内海外客户打不开——这道两头难怎么破?
运维·网络·数据库·经验分享
跨境小彭25 分钟前
Temu 店群自动化核价落地实践:告别人工熬夜议价,依托智能核价极速版规避操作亏损
运维·自动化·跨境电商·temu
池央40 分钟前
NAS里的大文件怎么快速传?用Copyparty搭建轻量文件服务器
运维·服务器·cpolar
窝子面2 小时前
认识Docker与启动容器与镜像的关系
运维·docker·容器
编程序的员2 小时前
使用OpenTelemetry来监控GoLang应用
运维·golang·monitoring·apm·opentelemetry
羑悻的小杀马特3 小时前
把随身WiFi改成网盘聚合器:中兴F50挂载本地存储+夸克网盘实战
运维·服务器·人工智能·网盘·openlist