部署豆荚
CocoaPods客户端不提供部署包的方法,而且主要(虽然不是唯一的)依赖于Git存储库来托管pod的代码。
要将一个吊舱部署到Artifactory,您需要使用Artifactory的REST API或者是Web UI.
一个豆荚是一个简单的tar.gz
文件,该文件包含您的项目代码以及.podspec或.podspec.json描述包元数据的文件。
豆荚的文件
尽管客户端支持更多的扩展,但Artifactory CocoaPods本地存储库目前只支持归档为tar.gz的pods
远程存储库
公众CocoaPods规格回购不包含任何实际的二进制包;它是一个包含podspec.json
从包名和版本指向其存储端点的文件。
由于大多数包托管在GitHub上,您需要创建一个远程存储库哪一个作为缓存代理github.com.如果有必要,你可以做同样的bitbucket.org或者其他的要访问的远程存储库。
与低于5.1版本的Stash合作?
如果你的包托管在Bitbucket(以前的Stash)上,你需要确保Stash存档插件安装在你的Bitbucket服务器上。
从远程存储库请求的工件(如tar.gz文件)会按需缓存。您可以从远程存储库缓存中删除下载的构件,但是您不能手动将构件部署到远程存储库。
要定义一个远程存储库来代理github.com和公共规范回购,请遵循以下步骤:
- 创建一个新的远程存储库并设置CocoaPods成为它的包类型
- 设置库的关键值,并输入
https://github.com
在URL字段,如下所示 - 在CocoaPods设置部分中,选择GitHub随着Git提供者,并保持默认设置注册网址(https://github.com/CocoaPods/Specs).
最后,点击“保存并完成”
回购网址
通常,你会指向回购网址字段的公共规格回购,如上所示。
但是,如果您正在使用私有规范回购,请将URL设置为与在URL字段。
如果远程URL是一个Artifactory实例,您需要附加它的URL/ api /豆荚回购> / <
即。http://art-prod.company.com/artifactory/api/pods/pods-local
私有比特桶服务器
使用私有比特桶服务器?将“Git Provider”设置为Stash,然后不Bitbucket都。公共Bitbucket端点响应一些私有Bitbucket服务器无法响应的API调用,因此,在使用私有Bitbucket服务器时,将Git Provider设置为Stash是很重要的。在这种情况下,URL字段应该是你的Bitbucket服务器的根,而Specs Repo URL应该是Bitbucket中Specs Repo的完整URL。
使用Pod命令行
CocoaPods存储库必须在路径中添加api/pods前缀
当通过Artifactory访问CocoaPods存储库时,存储库URL必须以api /豆荚在路上。这适用于Pod repo-art添加命令。
例如,如果您正在使用Artifactory独立或作为本地服务,您将使用以下URL访问CocoaPods存储库:
http://localhost:8081/artifactory/api /豆荚<库关键>
或者,如果您正在使用Artifactory Cloud, URL将是:
https:// < server name > .jfrog.io / artifactory /api /豆荚<库关键>
Artifactory已被更新到与CocoaPods客户端0.39.0版本的最新版本无缝工作
使用cocoapods-art
为了将CocoaPods与Artifactory一起使用,您需要CocoaPods -art插件,该插件将Artifactory存储库作为Specs reppos和pod源显示出来。
你可下载cocoapods-art插件作为一个Gem,它的源代码可以在GitHub.
要将Artifactory与CocoaPods一起使用,请执行以下步骤:
安装cocoapods-art插件:
Gem安装cocoapods-art
使用自制程序?
我们建议将CocoaPods客户端和cocoapod-art插件都作为gem安装。使用Homebrew安装可能会导致插件所依赖的CocoaPods钩子机制出现问题。
方法来添加Artifactory存储库Pod 'repo-art add'命令:
Pod repo-art add
http://localhost:8081/artifactory/api/pods/ 添加存储库之后,在您的Podfile:
在Podfile中添加一个Artifactory源代码插件'cocoapods-art',:sources => ['
']
在没有主存储库的情况下工作?
其中,本地回购名称是您在添加specs回购时在本地指定的名称。
Pod repo-art命令
的cocoapods-art插件公开了通常调用的大多数命令豆荚回购(例如,添加、更新、列出等)。使用豆荚repo-art而不是豆荚回购每当处理artifactory支持的规格存储库时。
CocoaPods本地规格回收位置
~ / .cocoapods /回购
一旦pod命令行工具配置好,每圆荚体安装
命令将从上面指定的CocoaPods存储库中获取pods。
同步的cocoapods-art
插件的仓库与Artifactory
与cocoapods客户端的默认行为相反,cocoapods-art插件不会在您运行客户端命令(如install)时自动更新其索引。要保持插件的索引与CocoaPods存储库同步,你需要执行以下命令来更新它:
Pod report -art更新
在没有匿名访问的情况下与Artifactory合作
默认情况下,Artifactory允许匿名访问CocoaPods存储库。它的定义是安全|通用配置.详情请参阅允许匿名访问.
如果希望能够跟踪用户与存储库的交互方式,则需要取消选中允许匿名访问设置。这意味着用户需要输入用户名和密码。
不幸的是,pod命令行工具不支持针对http端点的身份验证。的cocoapods-artPlugin通过强制curl (pod用于所有HTTP请求)使用. netrc文件:
机器艺术prod.company.com登录admin密码密码
因为Artifactory还支持使用您的API密匙你可以用它来代替你的密码:
机器艺术prod.company.com登录admin密码akcp2tfqm58f8ftkxo8qsj8nyymwjivmagefbqojeebqlshczuseh6z2dmhs1sisxzthoppyuw
使用加密密码
我们建议使用加密密码,而不是明文密码。详情请参阅统一安全的密码.
清理本地Pod缓存
pod客户端保存下载的pod的缓存,以及元数据。
我们建议在第一次使用Artifactory之前删除CocoaPods缓存(包和元数据响应)。这是为了确保您的缓存只包含来自Artifactory请求的元素,而不是直接来自其他规格回收的元素。
清除pod缓存的使用。
豆荚缓存清理
观看屏幕播放
观看这段简短的截屏视频,了解在Artifactory中托管rpm是多么容易。