云服务器内容精选

  • 在Maven私有依赖库的版本视图中查看归档的组件 进入目标私有依赖库,找到通过构建任务上传的Maven私有组件。 参考上述步骤,在代码仓库中设置组件版本,可将多个版本组件归档至私有依赖库。 单击“版本视图”。 在包列表中,可以查看从编译构建中获取软件包的版本数和最新版本。 单击“包名”,页面将显示该软件包最新版本的概览信息。 选择“文件列表”页签,在列表中可以单击目标组件操作列中的,可将组件下载到本地。 用户在本地对组件修改并设置新的版本号后,在目标私有依赖库中,单击“上传组件”,可将最新版本的组件上传至私有依赖库。 版本视图中的包列表显示对应组件最新上传的版本并统计版本归档过的数量。
  • 通过编译构建发布Maven私有组件到私有依赖库 在代码仓库完成设置组件版本后,单击页面右上角“设置构建”,页面跳转至“新建编译构建任务”页面。 在页面中选择“空白构建模板”,单击“下一步”。 单击“点击添加构建步骤”。搜索并添加步骤“Maven构建”。 编辑步骤“Maven构建”。 工具版本按照实际选择,本文中选择“maven3.5.3-jdk8-open”。 找到以下命令行,删除命令行前的#。 #mvn deploy -Dmaven.test.skip=true -U -e -X -B 找到以下命令行,在命令行前添加#。 mvn package -Dmaven.test.skip=true -U -e -X -B 在“发布依赖包到CodeArts私有依赖库”一栏勾选“配置所有pom”,并在下拉列表中选择与已项目关联的Maven私有依赖库。 单击“新建并执行”,启动构建任务执行。
  • 背景介绍 相对于开发过程中的“源代码”,制品仓库服务关注和管理开发产生的待部署的软件包。软件包通常是由源码编译构建或打包而成,其中涉及生命周期的元数据(如名称、大小等基本属性、代码库地址、代码分支信息、构建任务、构建者、构建时间)。在开发过程中,软件包会根据不同版本不断生成改进。 软件包及其属性的管理是发布过程管理的基础,也是软件开发过程中的重要资产,而能够及时查看软件包的版本记录也成为开发者面临的诉求。
  • 迁移PyPI组件 进入私有依赖库,在左侧边栏中选择目标PyPI私有依赖库。 单击仓库名称,页面中仓库的详细信息显示“仓库地址”。单击即可复制该地址。 单击页面右上方“操作指导”,在弹框中单击“下载配置文件”,将配置文件pypirc下载到本地。 在本地打开配置文件,在文件中搜索并找到用户名与密码。 单击页面右上方,单击“下载迁移工具”将迁移工具压缩包(脚本uploadArtifact2.py、配置文件artifact.conf)下载到本地。 配置artifact.conf。 [artifact] packageType = 组件类型,设置为pypi userInfo = username:password(步骤3中获取的用户名与密码) repoRelease = 私有依赖库地址(步骤2中获取的仓库地址) repoSnapshot = 保留为空 srcDir = 组件的目录路径,例如:C:\Users\xxxxxx\repository,用户自己指定 [nexus] nexusAddr=nexus地址 nexusPort=nexus端口 repoName=待迁移的nexus仓库名称 userName=nexus用户名 passwd=nexus密码 执行迁移脚本python uploadArtifact2.py。 进入私有库页面查看二进制包是否上传成功。
  • 迁移Maven组件 从Maven本地仓库(例如:C:\Users\xxxxx\.m2\repository)找到需迁移的组件,复制到指定目录(用户自己指定)。 进入私有依赖库,在左侧边栏中选择目标Maven私有依赖库。 单击仓库名称,页面中仓库的详细信息显示“仓库地址”。单击即可复制该地址。 单击页面右上方“操作指导”,在弹框中单击“下载配置文件”,将配置文件settings.xml下载到本地。 在本地打开配置文件,在文件中搜索并找到用户名与密码。 单击页面右上方,单击“下载迁移工具”将迁移工具压缩包(脚本uploadArtifact2.py、配置文件artifact.conf)下载到本地。 配置artifact.conf。 [artifact] packageType = 组件类型,设置为Maven userInfo = username:password(步骤4中获取的用户名与密码) repoRelease = 仓库类型为 Release地址(步骤3中获取的仓库地址) repoSnapshot = 仓库类型为 Snapshot地址(步骤3中获取的仓库地址) srcDir = 组件的目录路径(用户自己指定),如存放在步骤1下载组件的目标路径。 [nexus] nexusAddr=nexus地址 nexusPort=nexus端口 repoName=待迁移的nexus仓库名称 userName=nexus用户名 passwd=nexus密码 执行迁移脚本python uploadArtifact2.py。 进入对应的私有依赖库,查看组件包是否上传成功。
  • 迁移npm组件 进入私有依赖库,在左侧边栏中选择目标npm私有依赖库。 单击仓库名称,页面中仓库的详细信息显示“仓库地址”。单击即可复制该地址。 单击页面右上方“操作指导”,在弹框中单击“下载配置文件”,将npmrc文件下载到本地。 在本地打开配置文件,在文件中找到“_auth”字段的值并进行base64解码。 单击页面右上方,单击“下载迁移工具”将迁移工具压缩包(脚本uploadArtifact2.py、配置文件artifact.conf)下载到本地。 配置artifact.conf。 [artifact] packageType = 组件类型,设置为npm userInfo = npm仓库下的配置文件npmrc中通过base64 解密后的_auth字段的值(参考步骤3) repoRelease = 私有依赖库地址(步骤2中获取的仓库地址) repoSnapshot = 保留为空 srcDir = 组件的目录路径,例如:C:\Users\xxxxxx\repository,用户自己指定 [nexus] nexusAddr=nexus地址 nexusPort=nexus端口 repoName=待迁移的nexus仓库名称 userName=nexus用户名 passwd=nexus密码 检查对应npm仓是否配置了路径白名单。 请确认package.json中私有二进制包是否在白名单内,只有与白名单内匹配的二进制包才能上传成功;没有配置白名单,则package.json中私有二进制包都可以上传成功。 执行迁移脚本python uploadArtifact2.py。 进入对应的私有依赖库,查看组件包是否上传成功。
  • 支持10+种仓库类型,充分满足用户各种使用场景 华为云CodeArts Artifact制品仓库支持 Generic、Maven、npm、Go、NuGet、PyPI、Conan、Debian、RPM主流制品仓库类型,满足嵌入式、WEB应用、移动应用等开发场景所需,可以与本地各构建、部署工具和云上的持续集成、持续部署无缝结合。华为云CodeArts Artifact也提供制品和元数据的完整性校验能力,支持细粒度控制和按版本的细粒度包锁定权限,保障发布软件测试完整性,全面看护企业制品安全。
  • 提供自研、安全、极致性能的制品仓,保障业务连续性不中断 CodeArts Artifact制品仓库,基于云原生架构自研,解决外界不可控因素导致业务连续性问题。在安全上华为云CodeArts Artifact提供多维度、细粒度的权限控制,支持企业内不同角色对制品仓库访问控制的诉求。制品仓库存储采用物理隔离存储方式,减少恶意盗取制品风险,同时提供记录用户操作功能,保证操作可追溯;在可靠性上华为云CodeArts Artifact支持双AZ容灾和跨地域容灾、API限流与降级、服务依赖和隔离、实现服务故障自探测,实现99.99%的SLA保证;在极致性能上CodeArts Artifact提供热点文件缓存加速,增量上传下载,大小文件充分利用缓存加速优势,极速传输,提升用户构建速度,突破底层存储带宽限制,实现同地域高速并发传输,对比开源同类产品5X倍的上传和10X倍的下载性能提升。
  • 支持开源合规分析和漏洞检测,让高危致命问题无处遁逃 华为云CodeArts Artifact制品仓库提供基于软件包的成分分析能力,通过特征匹配的方式,分析软件包中的开源软件及版本,并通过漏洞库匹配的方式进行开源漏洞排查。实时同步NVD、CNVD、CNNVD等常见漏洞库漏洞数据,覆盖主流编程语言(C/C++、Java、Go、Python、JavaScript等),覆盖语种持续增加,提供全面、直观的风险汇总信息。在服务上线之前能够实时感知开源高危风险,建立起防御体系,并且及时修复问题,避免不可估量的损失。
  • 无缝连接第三方仓库,提供统一聚合仓地址,极大提升用户体验和下载性能 针对用户同时使用多个镜像源或制品库的场景,CodeArts Artifact提供仓库聚合能力,允许灵活组合多个代理仓,提供统一制品仓库入口,解决用户找不到制品包的痛点和简化客户配置。 CodeArts Artifact新增自定义代理仓功能,允许用户创建自定义代理仓库来代理开源社区仓库和三方依赖仓库,通过代理仓下载文件后支持将对应文件缓存到制品仓库,解决用户三方依赖下载慢痛点,实现下载三方依赖和本地仓库一样的极致体验。
  • 按文件名和checksum搜索,亿级制品包秒级查询与精准定位 华为云CodeArts Artifact具备强大的搜索能力,依托于数据引擎检索能力,支持内部研发近百亿制品文件的多维度的快速搜索。 当前覆盖Maven、npm、Go、PyPI、RPM、Debian、Conan、NuGet多种制品类型,用户可以通过文件名称或HASH信息(MD5、SHA1、SHA256、SHA512等四种类型),实现秒级检索定位。 以此为基础,CodeArts Artifact也演进出上亿级别的元数据和SBOM的高效关联查询,以便对制品文件进行快速溯源,对比开源同类产品搜索性能提升20X倍。
  • 服务概述 制品仓库服务(CodeArts Artifact)为软件开发企业提供管理软件发布过程的能力,保障软件发布过程的规范化、可视化及可追溯。 相对于开发过程中的“源代码”,制品仓库服务关注和管理的是开发产生的待部署的“软件包”(通常由源码编译构建或打包而成)及其生命周期元数据(如名称、大小等基本属性、代码库地址、代码分支信息、构建任务、构建者、构建时间)。 “软件包”及其属性的管理是发布过程管理的基础,也是软件开发过程中的重要资产,常见的软件研发过程如图1所示: 图1 软件开发过程 图中的Repository即制品仓库,用于管理软件开发过程产生的软件包,它是连接持续集成和持续交付的重要环节,软件包的发布评审、追溯和安全控制等操作通常在其中进行。 制品仓库服务提供以下两类仓库: 软件发布库。 软件发布库可以存储任何软件包和工具,没有格式限制。 通过编译构建任务可将产物归档到软件发布库,通过页面可以查看和管理这些归档的软件包及其生命周期属性信息,部署服务使用的部署软件包也来源于此。 私有依赖库。 私有依赖库管理各种开发语言对应的私有组件包(开发者通俗称之为私服,如Maven私服), 因为不同的开发语言组件通常有不同的归档格式要求(例如Maven组件需要基于GAV格式归档),该仓库目的就在于管理私有开发语言组件并在企业或团队内共享给其他开发者开发使用。
  • 制品仓库服务提供哪些功能? 表1 软件发布库功能特性 功能特性 说明 页面上传、下载、搜索、删除软件包,创建文件夹。 通过软件发布库页面进行类似网盘的操作来管理软件包。 查看软件包属性。 在软件发布库中可以查看软件包的生命周期属性,如基本信息(名称、大小、校验和等)、构建信息(构建任务、构建时间,源码仓库等)。 编译构建发布软件包到软件发布库。 软件发布库默认集成了编译构建服务,编译构建服务生产的所有软件包都可以通过配置自动上传到软件发布库中归档。 集成部署服务。 软件发布库中存储的软件包可以供部署服务使用。 包视图和构建视图。 可以根据需要选择从包视图(存储目录结构)或者构建视图(构建任务及流水线)的角度查看软件包。 表2 私有依赖库功能特性 功能特性 说明 页面上传、下载、删除、搜索组件。 通过私有依赖库页面进行类似网盘的操作来管理私有组件。 编译构建发布组件到私有依赖库。 用户可以在编译构建任务中配置将构建产物直接发布到私有依赖库。 对接本地开发环境。 通过页面给出的使用配置,可以一键生成配置文件。将生成的文件配置到本地开发工具中以后,可以直接在本地开发环境对接私有依赖库中的私有组件包,例如使用命令行对私有依赖库中的组件进行上传、下载等操作。 仓库权限控制。 管理员可以通过设置成员在各仓库的角色来限制其在私有依赖库的操作权限。 对接容器镜像服务。 Docker私有依赖库引用容器镜像服务,用户可以查看和管理Docker私有镜像、新建和管理归档Docker私有镜像的组织。
  • 约束与限制 介绍制品仓库服务中的使用限制,如表1所示。 表1 制品仓库使用限制说明 指标类别 指标项 限制说明 浏览器 类型 目前制品仓库服务适配的主流浏览器类型包括: Chrome浏览器:支持和测试最新的3个稳定版本 Firefox浏览器:支持和测试最新的3个稳定版本 Microsoft Edge浏览器:Win10默认浏览器,支持和测试最新的3个稳定版本 IE浏览器:不再进行支持与测试。 推荐使用Chrome、Firefox浏览器,效果会更好。 分辨率 分辨率大小 推荐使用1280*1024以上。 总存储容量 发布库与私有库容量共用 总容量10 GB 总下载容量 发布库与私有库流量共用 总流量5 GB/月 软件发布库使用限制 通过页面上传单文件大小限制 2 GB 通过编译构建任务上传单文件大小限制 10 GB 私有依赖库使用限制 通过页面上传单文件大小限制 Maven/npm/PyPI/Go/RPM/Debian/Conan:100 MB NuGet:20 MB 每种制品仓数量限制 非Maven仓库上限100 个 Maven仓库上限50 对 通过编译构建任务上传单文件大小限制 2 GB 不同CodeArts套餐以及制品仓库服务套餐规格限制的差异请参考:套餐规格特性差异和包年/包月。 当前规格为CodeArts体验版规格。
  • 责任共担 华为云秉承“将公司对网络和业务安全性保障的责任置于公司的商业利益之上”。针对层出不穷的云安全挑战和无孔不入的云安全威胁与攻击,华为云在遵从法律法规业界标准的基础上,以安全生态圈为护城河,依托华为独有的软硬件优势,构建面向不同区域和行业的完善云服务安全保障体系。 安全性是华为云与您的共同责任,如图1所示。 华为云:负责云服务自身的安全,提供安全的云。华为云的安全责任在于保障其所提供的 IaaS、PaaS 和 SaaS 各类各项云服务自身的安全,涵盖华为云数据中心的物理环境设施和运行其上的基础服务、平台服务、应用服务等。这不仅包括华为云基础设施和各项云服务技术的安全功能和性能本身,也包括运维运营安全,以及更广义的安全合规遵从。 租户:负责云服务内部的安全,安全地使用云。 华为云租户的安全责任在于对使用的 IaaS、PaaS 和 SaaS 类各项云服务内部的安全以及对租户定制配置进行安全有效的管理,包括但不限于虚拟网络、虚拟主机和访客虚拟机的操作系统,虚拟防火墙、API 网关和高级安全服务,各项云服务,租户数据,以及身份账号和密钥管理等方面的安全配置。 《华为云安全白皮书》详细介绍华为云安全性的构建思路与措施,包括云安全战略、责任共担模型、合规与隐私、安全组织与人员、基础设施安全、租户服务与租户安全、工程安全、运维运营安全、生态安全。 图1 华为云安全责任共担模型 父主题: 安全