更新时间:2022-05-18 GMT+08:00
分享

发布服务概述

什么是发布?

发布服务为软件开发企业提供管理软件发布过程的能力,保障软件发布过程的规范化、可视化及可追溯。

相对于开发过程中的“源代码”,发布服务关注和管理的是开发产生的待部署的“软件包”(通常由源码编译构建或打包而成)及其生命周期元数据(如名称、大小等基本属性、代码库地址、代码分支信息、构建任务、构建者、构建时间)。

“软件包”及其属性的管理是发布过程管理的基础,也是软件开发过程中的重要资产,常见的软件研发过程如图1所示:

图1 软件开发过程

图中的Repository即软件制品库,用于管理软件开发过程产生的软件包,它是连接持续集成和持续交付的重要环节,软件包的发布评审、追溯和安全控制等操作通常在其中进行。

综上,发布服务提供以下两类仓库:

  • 软件发布库。

    软件发布库是一种通用软件制品库,类似网盘,可以存储任何软件包和工具,没有格式限制。

    通过编译构建任务可将产物归档到软件发布库,通过页面可以查看和管理这些归档的软件包及其生命周期属性信息,部署服务使用的部署软件包也来源于此。

  • 私有依赖库。

    私有依赖库管理各种开发语言对应的私有组件包(开发者通俗称之为私服,如Maven私服)。

    因为不同的开发语言组件通常有不同的归档格式要求(例如Maven组件需要基于GAV格式归档),该仓库目的就在于管理私有开发语言组件并在企业或团队内共享给其他开发者开发使用。

发布服务提供哪些功能?

表1 软件发布库功能特性

功能特性

说明

页面上传、下载、搜索、删除软件包,创建文件夹。

通过软件发布库页面进行类似网盘的操作来管理软件包。

查看软件包属性。

在软件发布库中可以查看软件包的生命周期属性,如基本信息(名称、大小、校验和等)、构建信息(构建任务、构建时间,源码仓库等)。

编译构建发布软件包到软件发布库。

软件发布库默认集成了编译构建服务,编译构建服务生产的所有软件包都可以通过配置自动上传到软件发布库中归档。

集成部署服务。

软件发布库中存储的软件包可以供部署服务使用。

包视图和构建视图。

可以根据需要选择从包视图(存储目录结构)或者构建视图(构建任务及流水线)的角度查看软件包。

表2 私有依赖库功能特性

功能特性

说明

页面上传、下载、删除、搜索组件。

通过私有依赖库页面行类似网盘的操作来管理私有组件。

编译构建发布组件到私有依赖库。

用户可以在编译构建任务中配置将构建产物直接发布到私有依赖库。

对接本地开发环境。

通过页面给出的使用配置,可以一键生成配置文件。将生成的文件配置到本地开发工具中以后,可以直接在本地开发环境对接私有依赖库中的私有组件包,例如使用命令行对私有依赖库中的组件进行上传、下载等操作。

仓库权限控制。

管理员可以通过设置成员在各仓库的角色来限制其的读写权限。

对接容器镜像服务。

Docker私有依赖库引用容器镜像服务,用户可以查看和管理Docker私有镜像、新建和管理归档Docker私有镜像的组织。

分享:

    相关文档

    相关产品

close