Cirrus-ci-docs: Cache instruction chokes up when cache contains broken symlinks

Created on 7 May 2019  路  4Comments  路  Source: cirruslabs/cirrus-ci-docs

Expected Behavior

Broken symlinks are cached (as symlinks) regardless of where they point to: file outside the cache_folder, file within cache_folder or nonexistent file.

Real Behavior

"Upload cache" reports failure and does not store cache (next build reports "Cache miss").

Failed to calculate hash of /var/folders/sy/2x5qvs0n4lg18fry9jz4y21m0000gn/T/cirrus-ci-build/SDK! open /var/folders/sy/2x5qvs0n4lg18fry9jz4y21m0000gn/T/cirrus-ci-build/SDK/symlink: no such file or directorySkipping uploading of /var/folders/sy/2x5qvs0n4lg18fry9jz4y21m0000gn/T/cirrus-ci-build/SDK!

Related Info

bug

All 4 comments

Can reproduce
@fkorotkov we had a private conversation about this earlier this year

Real world case:

This Flutter directory is full of non-existent symlinks until iOS tests for the Flutter framework itself run (which doesn't happen on derived project build / test run).

A portable workaround is to run:

$ find /directory/with/flutter -type l -exec test ! -e {} \; -print -delete

Thank you for the example! I was able to reproduce it in a test and fixed it. Your example should be working now. Could you please try once again on your project now?

Great! It works perfectly now, the cache is being uploaded without error messages, and then downloads for the next build. Thank you!

Was this page helpful?
0 / 5 - 0 ratings

Related issues

cevich picture cevich  路  5Comments

aslushnikov picture aslushnikov  路  5Comments

pzahemszky picture pzahemszky  路  5Comments

fkorotkov picture fkorotkov  路  5Comments

fkorotkov picture fkorotkov  路  4Comments