云服务器内容精选

  • 客户端上传/下载RPM组件 使用linux系统和yum工具,请确保使用linux系统,且已安装yum。 发布私有组件到Rpm私有依赖库 检查linux下是否安装yum工具 在linux主机中输入 rpm -qa yum 如出现如下内容 则证明机器已安装yum 登录软件开发生产线,进入Rpm私有依赖库。单击页面右侧“操作指导”。 在弹框中单击“下载配置文件”。 在Linux主机中执行以下命令,上传Rpm组件 curl -k -u {{user}}:{{password}} -X PUT https://{{repoUrl}}/{{component}}/{{version}}/ -T {{localFile}} 其中,“user”、“password”、“repoUrl”来源于上一步下载的配置文件中“rpm上传命令”部分。 user:位于curl -u与-X之间、“:”之前的字符串。 password:位于curl -u与-X之间、“:”之后的字符串。 repoUrl:“https://”与“/{{component}}”之间的字符串。 “component”、“version”、“localFile”来源于待上传的Rpm组件。以组件“hello-0.17.2-54.x86_64.rpm”为例。 component:软件名称,即“hello”。 version:软件版本,即“0.17.2”。 localFile:Rpm组件,即“hello-0.17.2-54.x86_64.rpm”。 完整的命令行如下图所示: 命令执行成功,进入私有依赖库,可找到已上传的Rpm私有组件。
  • 客户端下载Maven组件 使用客户端工具为Maven,请确保已安装JDK和Maven。 1. 从私有依赖库页面下载settings.xml文件,将下载的配置文件直接替换或按提示修改maven的settings.xml文件。 2. 使用以下命令进行客户端下载: mvn dependency:get -DremoteRepositories={repo_url} -DgroupId={groupId} -DartifactId={artifactId} -Dversion={version} -Dmaven.wagon.http.ssl.insecure=true -Dmaven.wagon.http.ssl.allowall=true -Dmaven.wagon.http.ssl.ignore.validity.dates=true
  • 从Rpm私有依赖库获取依赖包 以•发布私有组件到Rpm私有依赖库中发布的Rpm私有组件为例,介绍如何从Rpm私有依赖库中获取依赖包。 参考发布Rpm私有组件的2、3,下载Rpm私有依赖库配置文件。 打开配置文件,将文件中所有“{{component}}”替换为上传Rpm文件时使用的“{{component}}”值(本文档中该值为“hello”),并删除“rpm上传命令”部分,保存文件。 将修改后的配置文件保存到Linux主机的“/etc/yum.repos.d/”目录中。 执行以下命令,下载Rpm组件。其中,hello为组件的“component”值,请根据实际情况修改。 yum install hello
  • 客户端上传Maven组件 使用客户端工具为Maven,请确保已安装JDK和Maven。 从私有依赖库页面下载settings.xml文件,将下载的配置文件直接替换Maven安装目录下的settings.xml文件。 使用以下命令进行客户端上传,命令示例如下: 上传时需要到上传的pom文件所在目录下执行命令。 mvn deploy:deploy-file -DgroupId={groupId} -DartifactId={artifactId} -Dversion={version} -Dpackaging=jar -Dfile={file_path} -DpomFile={pom_path} -Durl={url} -DrepositoryId={repositoryId} -s {settings_path} -Dmaven.wagon.http.ssl.insecure=true -Dmaven.wagon.http.ssl.allowall=true -Dmaven.wagon.http.ssl.ignore.validity.dates=true 参数说明 DgroupId :上传的groupId DartifactId :上传的artifactId Dversion :上传的版本version Dpackaging :上传包的类型(jar,zip,war等) Dfile :上传实体文件所在的路径 DpomFile : 上传实体pom文件所在的路径(Release版本请注意:如果没有该参数,系统会自动生成pom,pom有特殊要求的请指定该参数) pom文件中的DgroupId ,DartifactId ,Dversion 要与外面的一致,否则报409。 DpomFile 和(DgroupId ,DartifactId ,Dversion) 可以二选一(即如果选择DgroupId ,DartifactId ,Dversion,则可以不用DpomFile) Durl :上传文件到仓库的路径 DrepositoryId :这个是settings配置的用户名密码所对应的id,如下图所示:
  • 通过编译构建将snapshot组件发布到Maven私有依赖库 进入代码仓库,打开pom.xml文件,定义待上传组件的坐标信息(GAV信息)。 构建任务执行时会根据定义识别上传到私有依赖库的组件属性信息。 version:版本号,默认上传release组件。如果需要上传snapshot组件,version值以“-SNAPSHOT”结尾即可,如“1.0-SNAPSHOT”。 在“构建步骤Maven构建”中,编辑编译构建任务: 在“命令”框中:使用注释mvn package命令(在命令前加#),取消注释mvn deploy(删除其命令前的#)。 单击“发布依赖包到CodeArts私有依赖库”,勾选“配置所有pom”。 执行构建任务。 待任务执行成功后,即可在私有依赖库中找到生成的Maven组件。
  • 通过Maven CLI命令上传snapshot组件 进入“Maven私有依赖库”,在页面左侧导航中选择“snapshot”类型仓库。 单击右上角“操作指导”,弹出“私有依赖库使用配置”对话框。 。 根据配置指导配置本地Maven工具。 执行mvn deploy命令上传Maven项目。 在命令窗口进入maven项目“pom.xml”所在目录,输入如下命令,上传本地jar包: mvn deploy:deploy-file -DgroupId=com.huawei -DartifactId=aopalliance -Dversion=1.0-SNAPSHOT -Dpackaging=jar -Dfile=D:\aopalliance-1.0-SNAPSHOT.jar -Durl={Maven Snapshot地址} -DrepositoryId=snapshots DgroupId、DartifactId、Dversion、Dpackaging:可根据需要自定义。 Dfile:本地jar包所在位置的绝对路径。 Durl:Maven Snapshot地址。单击图标即可获取。
  • 在私有依赖库中管理仓库权限 用户在创建仓库后,添加的项目成员和仓库角色对应关系如下: 项目创建者、项目经理对应仓库管理员。 开发人员、测试经理、测试人员、运维经理对应仓库开发者。 参与者、浏览者、自定义角色对应仓库浏览者。 为私有依赖库成员添加/删除权限的操作步骤如下: 进入私有依赖库页面,在仓库列表中选择目标仓库。 在页面右侧单击“设置仓库”。 选择“仓库权限”页签,已经添加的仓库成员显示在列表中。 添加成员。 单击页面左上方“添加成员”,在弹框中勾选成员,单击“下一步”。 图1 添加成员 为成员分配仓库角色。 可以在仓库角色的下拉栏中选择“仓库管理者”、“仓库开发者”、“仓库浏览者”。 图2 为成员分配仓库角色 单击“确定”,完成添加仓库成员和仓库角色配置,新添加的成员将显示在列表中。 在成员列表中,勾选多个仓库成员,单击下方“仓库角色”可以批量配置仓库角色。 图3 批量配置仓库角色 仓库角色对应的操作权限如表1所示。 表1 私有依赖库角色权限表 操作/角色 租户管理员 非租户管理员 仓库管理员 开发者 浏览者 仓库管理员 开发者 浏览者 新建私有依赖库 √ √ √ × × × 编辑私有依赖库 √ √ √ × × × 管理仓库与项目关联 √ √ √ × × × 上传私有组件 √ √ × √ √ × 下载组件 √ √ √ √ √ √ 删除组件 √ √ × √ √ × 还原组件 √ √ × √ √ × 彻底删除(组件) √ √ × √ √ × 删除仓库 √ × × × × × 还原仓库 √ √ × √ √ × 彻底删除(仓库) √ × × × × × 清空回收站 √ √ √ × × × 还原所有 √ √ √ × × × 管理用户权限 √ √ √ √ × ×
  • 通过版本视图查看私有组件 私有依赖库支持将不同类型私有组件按照版本维度进行归类展示。在版本视图的列表中,提供按制品包名称和版本号进行过滤展示,提供按照更新时间对文件进行排序。 进入私有依赖库页面。 在页面左上方选择“版本视图”页签,单击左侧列表中的仓库名称,页面展示该类型仓库下的软件包版本列表。为不同类型私有组件设置版本请参考通过私有依赖库页面上传/下载私有组件。 不同版本的同名软件包放在一个文件下。单击“包名”,页面将显示该软件包最新版本的概览信息。 单击“版本数”,页面将展示对应软件包的版本列表。 单击“版本号”,页面将显示该软件包的概览信息和文件列表。在文件列表中,单击“文件名称”,页面将跳转到软件包所在的存储位置。
  • 通过版本视图查看私有组件 私有依赖库支持将不同类型私有组件按照版本维度进行归类展示。在版本视图的列表中,提供按制品包名称和版本号进行过滤展示,提供按照更新时间对文件进行排序。 进入私有依赖库页面。 在页面左上方选择“版本视图”页签,单击左侧列表中的仓库名称,页面展示该类型仓库下的软件包版本列表。为不同类型私有组件设置版本请参考通过私有依赖库页面上传/下载私有组件。 不同版本的同名软件包放在一个文件下。单击“包名”,页面将显示该软件包最新版本的概览信息。 单击“版本数”,页面将展示对应软件包的版本列表。 单击“版本号”,页面将显示该软件包的概览信息和文件列表。在文件列表中,单击“文件名称”,页面将跳转到软件包所在的存储位置。
  • 上传NuGet私有组件 NuGet 包是具有 .nupkg 扩展的单个 ZIP 文件,作为一种可共享的代码单元,开发人员可以把它发布到一个专用的服务器来共享给团队内其它成员。 制品仓库服务创建NuGet私有依赖库来托管NuGet包。 一般建议使用以下规范打包命名NuGet本地文件。 软件名称-软件的主版本号.nupkg 例如:automapper.12.0.0.nupkg 进入私有依赖库,在左侧边栏中单击待上传私有组件的目标NuGet仓库。 单击“上传制品”,从本地选择待上传的NuGet文件,单击“上传”。 上传成功的组件显示在仓库列表中。 metadata目录为元数据保存目录,由组件名称名称命名。元数据目录无法删除,会跟随对应组件的删除或还原进行删除或新增。 package目录为组件保存目录。
  • 上传RPM私有组件 RPM简介 RPM 全名 RedHat Package Manager,是由Red Hat公司提出,被众多Linux发行版本所采用,是一种以数据库记录的方式来将所需要的软件安装到Linux系统的一套软件管理机制。 一般建议使用以下规范打包命名RPM二进制文件。 软件名称-软件的主版本号.软件的次版本号.软件的修订号-软件编译次数.软件适合的硬件平台.rpm 例如:hello-0.17.2-54.x86_64.rpm。其中,“hello”是软件名称,“0”是软件的主版本号,“17”是软件的次版本号,“2”是软件的修订号,“54”是软件编译次数,“x86_64”是软件适合的硬件平台。 软件名称 主版本号 次版本号 修订号 编译次数 适合的硬件平台 hello 0 17 2 54 x86_64 注:上传组件时需要配置以下两个参数。 参数 说明 Component 组件名称。 Version RPM二进制包的版本。 进入私有依赖库,在左侧边栏中单击待上传私有组件的目标仓库。 单击页面右侧“上传制品”。 在弹框中输入组件参数,并上传文件,单击“上传”。 图3 上传制品 上传成功之后,可在仓库组件列表中看到RPM二进制包,同时在组件名称路径下生成对应的元数据“repodata”目录,可用于yum安装。
  • 上传npm组件 私有依赖库支持上传tgz格式的NPM组件包,上传时需要配置以下两个参数。 参数 说明 PackageName 请与打包时的配置文件“package.json”中“name”保持一致。 Version 请与打包时的配置文件“package.json”中“version”保持一致。 在上传组件时,PackageName需要以创建仓库时添加的路径列表中的路径开头,详细可见帮助指导中的“仓库配置说明”。 例如: 创建NPM仓库时,添加的路径为“@test”。 上传组件到该仓库时,“PackageName”中的“@test”存在于新建仓库时的路径列表中,可以成功上传。若使用其他不存在与列表中的路径,如“@npm”,则会上传失败。 上传成功之后,可在仓库组件列表中看到tgz格式的组件包,同时在路径“.npm”下生成对应的元数据。
  • 上传PyPI组件 建议进入工程目录(该目录下需含有配置文件setup.py)执行以下命令将待上传组件打包成wheel格式(.whl)的安装包,安装包默认生成在工程目录的dist目录下;Python软件包管理工具pip仅支持wheel格式安装包。 python setup.py sdist bdist_wheel 上传组件时需要配置以下两个参数。 参数 说明 PackageName 请与打包时的配置文件“setup.py”中“name”保持一致。 Version 请与打包时的配置文件“setup.py”中“version”保持一致。 上传成功之后,可在仓库组件列表中看到whl格式的安装包,同时在路径“.pypi”下生成对应的元数据,可用于pip安装。
  • 上传debian私有组件 上传debian私有组件时,需要配置以下5个参数: 参数 参数说明 Distribution 软件包发行版本。 Component 软件包组件名称。 Architecture 软件包体系结构。 Path 软件包的存储路径,默认上传至根路径。 File 软件包的本地存储路径。 上传成功之后,可在仓库组件列表中看到deb格式的安装包,同时在路径“dists”下生成对应的元数据,可用于debian安装。
  • 上传Go组件 Go(又称Golang)是Google开发的一种编程语言。GoLang1.11开始支持模块化的包管理工具,模块是Go的源代码交换和版本控制的单元,mod文件用来标识并管理一个模块,zip文件是源码包。Go模块主要分为两种:v2.0以上版本,及v2.0以下版本,二者对Go模块的管理存在差异。 上传Go组件分为两步:上传zip文件与上传mod文件,需要分别输入以下参数。 参数 说明 zip path zip文件的完整路径。路径格式包括以下几种情况: v2.0以下版本:{moduleName}/@v/{version}.zip。 v2.0以上版本: zip包里有go.mod且路径里以/vN结尾:{moduleName}/vX/@v/vX.X.X.zip。 zip包里不含go.mod或go.mod第一行里不以/vN结尾:{moduleName}/@v/vX.X.X+incompatible.zip。 zip file zip文件的目录结构。包括以下几种情况: v2.0以下版本:{moduleName}@{version}。 v2.0以上版本: zip包里有go.mod且路径里以/vN结尾:{moduleName}/vX@{version}。 zip包里不含go.mod或go.mod第一行里不以/vN结尾: {moduleName}@{version}+incompatible。 mod path mod文件的完整路径。路径格式包括以下几种情况: v2.0以下版本:{moduleName}/@v/{version}.mod。 v2.0以上版本: zip包里有go.mod且路径里以/vN结尾:{moduleName}/vX/@v/vX.X.X.mod。 zip包里不含go.mod或go.mod第一行里不以/vN结尾:{moduleName}/@v/vX.X.X+incompatible.mod。 mod file mod文件内容。包括以下几种情况: v2.0以下版本:module {moduleName} v2.0以上版本: zip包里有go.mod且路径里以/vN结尾: module {moduleName}/vX zip包里不含go.mod或go.mod第一行里不以/vN结尾:module {moduleName}