Use the cocoapods-art Plugin

JFrog Artifactory Documentation

ft:sourceType
Paligo

In order to use CocoaPods with Artifactory, you need the cocoapods-art plugin which presents Artifactory repositories as Specs repos and pod sources.

You can download the cocoapods-art plugin as a Gem, and its sources can be found on GitHub.

To use Artifactory with CocoaPods, execute the following steps:

  1. Install the cocoapods-art plugin:

    gem install cocoapods-art

    Using Homebrew?

    We recommend installing both the CocoaPods client and the cocoapod-art plugin as gems. Installing with Homebrew may cause issues with the CocoaPods hooks mechanism that the plugin relies on.

  2. The next step is to add an Artifactory repository by using the pod 'repo-art add' command:

    pod repo-art add <local_specs_repo_name> http://localhost:8081/artifactory/api/pods/<repository_key>
  3. Once the repository is added, add the following in yourPodfile:

    Adding an Artifactory source in the Podfile

    plugin 'cocoapods-art', :sources => [
            '<local_specs_repo_name>'
        ]

Working without the Master repository?

If you have removed the CocoaPods Master repository from your system, due to a known issue with the CocoaPods stats plugin, you need to add the following to your Podfile, or add the corresponding variable to your environment:

ENV['COCOAPODS_DISABLE_STATS'] = 'true'

For details, please refer to JFrog Jira

Where the local repo name is the name you gave the specs repo locally when adding it.

pod repo-art commands

The cocoapods-art plugin exposes most commands that are normally invoked with pod repo (i.e. add, update, list etc.).Use pod repo-art instead of pod repo whenever dealing with Artifactory-backed Specs repositories.

CocoaPods local Specs repos location

~/.cocoapods/repos

Once the pod command line tool is configured, every pod install command will fetch pods from the CocoaPods repository specified above.

Synchronize the cocoapods-art Plugin's Repositories With Artifactory

As opposed to the cocoapods client's default behavior, the cocoapods-art plugin does not automatically update its index whenever you run client commands (such as install). To keep your plugin's index synchronized with your CocoaPods repository, you need to update it by executing the following command:

pod repo-art update