Uploaded image for project: 'Artifactory Binary Repository'
  1. Artifactory Binary Repository
  2. RTFACT-13517

Cocoapods dependency re-write support

    XMLWordPrintable

    Details

    • Team:
      dev-artifactory-packages
    • Release Notes:
      Yes

      Description

      When you are working behind a corporate proxy, Artifactory is mandatory in the dependencies resolution mechanism, mainly on Continuous Integration platform, where a global proxy can't be configured for security reason.

      If you work with Cocoapods and you are using some components (like: GoogleMaps, GoogleSignIn, ...) you could have a problem when the Component.podspec.json Spec file of this component is on GitHub (configured as remote in Artifactory) but defines a source ouside of GitHub.

      Sample with GoogleSignIn.podspec.json dependency usage:

      "source": {
          "http": "https://dl.google.com/dl/cpdc/1e9a99db415f062f/GoogleSignIn-4.0.1.tar.gz"
        },
      

      The result of pod install --verbose is:

      $ /usr/bin/curl -n -f -L -o /[...]/file.tgz https://dl.google.com/dl/cpdc/b8b4edfd2453a212/FirebaseAnalytics-3.6.0.tar.gz --create-dirs
      $ /usr/bin/curl -n -f -L -o /[...]/file.tgz https://dl.google.com/dl/cpdc/2b53d2b7b1444ccf/FirebaseCore-3.4.6.tar.gz --create-dirs
      $ /usr/bin/curl -n -f -L -o /[...]/file.tgz https://www.gstatic.com/cpdc/18da95d517c54d0f/FirebaseInstanceID-1.0.8.tar.gz --create-dirs
      $ /usr/bin/git clone https://github.com/google/gtm-oauth2.git /[...]-hxhpye --template= --single-branch --depth 1 --branch v1.1.4
      $ /usr/bin/git clone https://github.com/google/gtm-session-fetcher.git /[...]-1nfo8wu --template= --single-branch --depth 1 --branch v1.1.7
      $ /usr/bin/curl -n -f -L -o /[...]/file.tgz https://www.gstatic.com/cpdc/8f4d85570fdd4ab9-Google-3.0.3.tar.gz --create-dirs
      $ /usr/bin/curl -n -f -L -o /[...]/file.tgz https://dl.google.com/dl/cpdc/09f214fda7470397/GoogleAppUtilities-1.1.2.tar.gz --create-dirs
      $ /usr/bin/curl -n -f -L -o /[...]/file.tgz https://dl.google.com/dl/cpdc/1a7f7ba905b2c029/GoogleInterchangeUtilities-1.2.2.tar.gz --create-dirs
      $ /usr/bin/curl -n -f -L -o /[...]/file.tgz https://dl.google.com/dl/cpdc/1e9a99db415f062f/GoogleSignIn-4.0.1.tar.gz --create-dirs
      $ /usr/bin/curl -n -f -L -o /[...]/file.tgz https://dl.google.com/dl/cpdc/7ecdffda6fbef4af/GoogleSymbolUtilities-1.1.2.tar.gz --create-dirs
      $ /usr/bin/git clone https://github.com/google/google-toolbox-for-mac.git /[...]-ns9lw8 --template= --single-branch --depth 1 --branch v2.1.0
      

      So without proxy, command fails.

      If the dependency re-write mechanism could work for Cocoapds (like NPM, ...), it would be great !


      Original thread: Artifactory Cocoapods caching

        Attachments

          Issue Links

            Activity

              People

              Assignee:
              tomern Tomer Nir
              Reporter:
              axel3rd Alix Lourme
              Votes:
              18 Vote for this issue
              Watchers:
              11 Start watching this issue

                Dates

                Created:
                Updated:
                Resolved: