Unable to disable cocoapods cache


I am using cocoapods as dependency manager of ios app.
I include all cocoapods artifacts into git, so I don’t run pod install on bitrise CI.
But Pods/ directory are cached somehow.
I’ve tried following things but no success.

  • envman add --append -k BITRISE_CACHE_EXCLUDE_PATHS -v ./ios/Pods/
  • envman add --append -k BITRISE_CACHE_EXCLUDE_PATHS -v ./ios/Pods
  • envman add --append -k BITRISE_CACHE_EXCLUDE_PATHS -v ios/Pods/
  • envman add --append -k BITRISE_CACHE_EXCLUDE_PATHS -v ios/Pods
  • - ignore_check_on_paths: ./ios/Pods/
  • - ignore_check_on_paths: ./ios/Pods
  • - ignore_check_on_paths: ios/Pods/
  • - ignore_check_on_paths: ios/Pods

What am I missing?


Does your build include the Cocoapods Install step? If so, make sure that you set the step input “Disable built-in cache” to “true”.

I include cocoapods artifacts into git, so
I don’t install cocoapods deps on bitrise.

Could you share the build log URL and enable support access? You can find the support access under the “Settings” tab on the app page.



Here it is.

It looks like the workflow that has the cache-push is run from repo so I can’t actually see the settings. Could you provide this? Also, please enable debug mode for the step and provide the build log with that.


I already enabled debug mode for cache steps.

format_version: 5
default_step_lib_source: https://github.com/bitrise-io/bitrise-steplib.git
    - cache-pull:
        - is_debug_mode: 'true'
        - allow_fallback: 'false'

    - cache-push:
        - compress_archive: 'true'
        - is_debug_mode: 'true'
        - cache_paths: |-
            ./node_modules -> ./yarn.lock
            ./vendor/bundle -> ./Gemfile.lock
        - bitrise_cache_exclude_paths: |-

    - script:
        - content: |-
            set -ex
            # sync submodules
            git submodule sync
            git submodule update --init

            # install ruby dependencies
            gem install bundler:2.2.14
            bundle install --path=vendor/bundle --clean

            # install node project dependencies
            npm link packages/some
            npm link packages/others

    - _cache-push
    - _cache-pull
    - _install-dependencies
    - fastlane@2.7.1:
        title: Build ipa
        - lane: ios build build_number:$BITRISE_BUILD_NUMBER
        - update_fastlane: 'false'
    - fastlane@2.7.1:
        title: Upload ipa to DeployGate
        - lane: ios deploy
        - update_fastlane: 'false'
    - ENV: dev

For the “Ignore Paths for change check”, you can specify paths not to include in the cache:

Paths prefixed with an ! will get ignored from the cache archive**.
If a path is located inside a specified Cache Path item and not prefixed with an !, it’ll be included in the cache archive, but won’t be checked for changes.



Thanks I will try it. But I have another question,

For the “Ignore Paths for change check”, you can specify paths not to include in the cache:

If ignore_check_on_paths were to specify paths not to include in the cache,
what bitrise_cache_exclude_paths is for?
I thought it were to specify paths not to include in the cache.


The last three “step inputs” listed are really for the step to use and cannot be changed. If you notice, they have “is_dont_change_value: true”. They are strictly for internal use by the step.

I didn’t know that. Thanks for your explanation.
And ignore_check_on_paths seems to work works fine, thanks for that too.

But why my ios/Pods got cached even thou I ain’t specify it in cache_paths?

Is is a kind of default paths to be cached?

I believe so - that be default, it will be cached.

What do you mean you “believe”?
I though that you are a guy in bitrise, aren’t you?

Sorry to bother you.

Do you know the way to exclude all cache paths without those I specified?
I want remove all the cache paths specified by Bitrise.
Never want you to cache anything other than I request.
How can I achieve that?


So now you are gone.
Great company huh?

Hello there @mickamy :wave:

Sorry for the delay, as you also have noticed, the forums are not the primary platform for solve specific ongoing issues, and our response times may vary from thread to thread.
If the issue needs escalation, I would advise contacting Bitrise Support via going to https://support.bitrise.io/, or writing us an email to support@bitrise.io :slight_smile:

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.