Cache:Push step doesn't seem to work?

Bitrise Build Issue Report template

Description of the issue

When it gets to the Cache:Push step, this is what the log looks like:

| - | cache-push@2.0.5 | 1.42 sec |

And it never finds the cache in the Cache:Pull step of the next build:

2019/02/12 20:40:52 Failed to get download url, error: Build cache not found. Probably cache not initialised yet (first cache push initialises the cache), nothing to worry about :wink:

WARN[20:40:52] Step (cache-pull@2.0.1) failed, but was marked as skippable

Environment:

Where did the issue happen?

Xcode 10.1.x stack

Which build Step causes the issue and which version of the step?
Cache:Push

This is what the workflow looks like in bitrise.yml:

steps:
    - git-clone@3.4.0: {}
    - cache-pull@2.0.1: {}
    - fastlane:
        title: ios check
        inputs:
        - lane: ios check
        - update_fastlane: 'false'
    - recursive-touch@0.9.0:
        inputs:
        - directory_path: "/tmp/fastlane_build"
    - cache-push@2.0.5: {}

I realize the recursive-touch probably does nothing here, as we never specified that path to add to the Cache:Pull step, but that shouldnā€™t matter in terms of the push-pull mechanism right?

Reproducibility

  • Does a ā€œRebuildā€ help? (You can trigger a rebuild from the Buildā€™s page, by clicking the ā€œRebuildā€ button in the top right corner of a finished build) : NO
  • Does a rebuild without caches help? (You can remove the Cache:Pull and Cache:Push steps temporarily to not to use the cache, or you can delete all the caches on the Settings tab of the app. : NO
  • Does the issue happen sporadically, or every time? : every time
  • Does upgrading the build Step to the latest version help? : NO
  • When did the issue start? : Since we first added the step to our workflow

Local reproduction

Can it be reproduced on your own Mac/PC by following our local debug guide? Please follow at least the first section (ā€œTesting with a full clean git cloneā€) to make sure to test the state of the code what bitrise.io will get when it does a git clone in the clean environment! If possible please note which sections you tried.

No, issue is specific to bitriseā€™s caching.

Build log

Please copy paste the buildā€™s bitrise.io URL here (or if the issue happens somewhere else then the full logs), or if you canā€™t share the url / log here then send the url or full log through a private channel (e.g. email - Contact us ), with a link to the related Discuss issue.
Bitrise - Mobile Continuous Integration and Delivery - iOS & Android Build Automation

It means that step has been skipped. If you click on this line youā€™ll get the reason. Do you have this step in PR workflow perhaps?

Hi @aryo! @koral is right, also this step is meant to download cache, and if you havenā€™t built on your default branch and this branch recently this is the expected behaviour of this step. Please see: https://devcenter.bitrise.io/caching/about-caching/

Ah I seeā€¦

This is what it says:

WARN[20:20:24] The stepā€™s (cache-push@2.0.5) Run-If expression evaluated to false - skipping
INFO[20:20:24] The Run-If expression was: .IsCI | and (not .IsPR)

It is a PR workflowā€¦ Does this mean that we canā€™t do cache pushes from PR workflows?

Edit: Asking this question because we only want to enable caching for PR builds

Hello there!

If you only want to cache for PR-s then simply change .IsCI to .IsPR in the yml file :upside_down_face:

1 Like

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