首页 > 自动化运维 > DevOps > DevOps平台之一键发布设计
引言:
目录:
1. 简介
2. 关键模型设计
3. 关键界面设计
4. 关键接口设计
5. 关键表设计
6. 总结
1. 简介

2. 关键模型设计

3.关键界面设计







4.关键接口设计
//创建发布流水线ReleasePipeline createReleasePipeline(ReleasePipeline releasePipeline)//删除发布流水线ReleasePipeline removeReleasePipeline(String releasePipelineId)//启动发布流水线,注意:需要传递启动的发布定义,以及不执行的流水线任务ReleasePipelineInstance startReleasePipeline(String releasePipelineId, String[] releaseDefinitionIds, String[] disableEngineStageIds)//查询某一个发布流水线下的所有发布流水线实例PageResultList<ReleasePipelineInstance> queryReleasePipelineInstances(String releasePipelineId, boolean cascadeReleaseInstance, int pageIndex, int pageSize)
//创建发布定义ReleaseDefinition createReleaseDefinition(ReleaseDefinition releaseDefinition)//删除发布定义ReleaseDefinition removeReleaseDefinition(String releaseDefinitionId)//启动发布定义,注意:需要传递要部署的发布环境,以及不执行的流水线任务ReleaseInstance startRelease(String releaseDefinitionId, String[] releaseEnvIds, String[] disableEngineStageIds)//查询某一个发布定义下的所有发布实例PageResultList<ReleaseInstance> queryReleaseInstances(String releaseDefinitionId, boolean cascadeReleaseEnvInstance, boolean cascadeEngineStageInstance, int pageIndex, int pageSize)// 获取发布环境的部署日志BuildLog getReleaseEnvDeployLog(String releaseDefinitionId, String releaseInstanceId, String releaseEnvInstanceId, int start)
//创建引擎流水线EnginePipeline createEnginePipeline(EnginePipeline enginePipeline)//删除引擎流水线EnginePipeline removeEnginePipeline(String enginePipelineId)//执行引擎流水线
EnginePipelineInstance executeEnginePipeline(String jobNamePrefix, EnginePipeline enginePipeline, Map<String, Object> pipelineContext)//获取引擎流水线任务日志BuildLog getEnginePipelineStageLog(String enginePipelineInstanceId, String engineStageInstanceId, int start)
5.关键表设计


发布流水线和定义编排表关键字段:
1)RELEASE_DEFINITION_ID:子项目的发布定义ID
2)PRE_RELEASE_DEFINITIONS:前续发布定义ID列表,多个逗号分隔
3)EXTEND:扩展信息,一般用于前端显示布局位置信息
3、发布流水线实例表


5、发布环境表

发布环境表关键字段:
6、引擎流水线表

引擎流水线表关键字段:

8、引擎流水线任务属性表

6.总结
精选提问:
问:为什么要区分发布流水线和引擎流水线?能简述一下引擎流水线的技术实现吗?

关于作者:飞白,现任普元软件产品部资深开发工程师,毕业于大连民族大学,长期致力于IT技术研究、产品设计与开发等工作,擅长CI/CD、微服务、云计算等领域技术。负责EOS产品后端设计开发工作;负责DevOps产品后端设计开发工作。
关于EAWorld:微服务,DevOps,数据治理,移动架构原创技术分享。
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/31562043/viewspace-2667845/ ,如需转载,请注明出处,否则将追究法律责任。