Как CocoaPods хранит ссылки на почтовые индексы в разных версиях? - PullRequest
0 голосов
/ 03 октября 2018

У меня есть частный фреймворк CocoaPods, потому что это фреймворк для iOS, я должен сжать его и поместить в s3, чтобы иметь возможность загрузить.

В конце это выглядит примерно так:

Pod::Spec.new do |s|
s.name         = "XXX"
s.version      = "1.0.1"
s.homepage     = "https://bitbucket.org/XXX"
s.summary      = "XXX"
s.description  = "XXX"
s.license      = "Commercial"
s.author       = "XXX"
s.source       = { :http => "https://s3-ap-southeast-2.amazonaws.com/XXX.zip" }
s.platform     = :ios, "9.0"
s.swift_version= "4.1"
s.ios.vendored_frameworks = "XXX.framework"
end

Каждый раз, когда я обновляю свой фреймворк, я заархивирую новый .framework файл, затем заменяю загружаемый zip-файл точно таким же URL-адресом.: https://s3-ap-southeast-2.amazonaws.com/XXX.zip.

После того, как он был загружен, я делаю pod push YYY xxx.podspec, чтобы вставить podspec в мой другой центральный репозиторий спецификации pod.

Мне интересно, если разработчик, использующий эту платформу, обновит ее с 1.0.0 до 1.0.1.CocoaPods загрузит последнюю версию framework по той же ссылке.Что если разработчик захочет вернуться к 1.0.0?где / Как CocoaPod хранит старые (все) версии почтового индекса?

Ответы [ 2 ]

0 голосов
/ 04 октября 2018

Вам необходимо разместить на своем сервере разные версии вашей платформы, и, таким образом, указать разные подспецы:

Старая версия

s.version      = "1.0.0"
s.source       = { :http => "https://s3-ap-southeast-2.amazonaws.com/XXX-1-0-0.zip" }

Текущая версия:

s.version      = "1.0.1"
s.source       = { :http => "https://s3-ap-southeast-2.amazonaws.com/XXX-1-0-1.zip" }

И так одно

s.version      = "1.5.1"
s.source       = { :http => "https://s3-ap-southeast-2.amazonaws.com/XXX-1-5-1.zip" }

Таким образом, когда вы используете podspec с pod install / pod update, разработчик выберет правильные источники.

Я дал возможное наименованиедля них.Кроме того, вы можете использовать другое для «предварительных версий», еще не общедоступных, чтобы пользователи не могли «скачать их» заранее, угадав адрес.

0 голосов
/ 03 октября 2018

Версии CocoaPod с именем <PackageName> кэшируются здесь: ~/Library/Caches/CocoaPods/Pods/Release/<PackageName>

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...