JuliaCI / julia-buildbot

Buildbot configuration for build.julialang.org
MIT License
19 stars 14 forks source link

Clone Homebrew julia deps bottles regularly #13

Closed staticfloat closed 9 years ago

staticfloat commented 9 years ago

See original comment, essentially we need to loop over brew deps --HEAD julia, call brew fetch --force-bottle $dep, parse the output for downloaded bottle, ensure that bottle is uploaded to AWS, if not, upload the new one.

For parsing out downloaded location, this seems to work well:

$ brew fetch --force-bottle gcc | grep -i downloaded | cut -d-f2- | xargs echo
/Library/Caches/Homebrew/gcc-4.9.2_1.yosemite.bottle.tar.gz

To download bottles of different platforms, we can parse out download URL and replace it with our own new platforms:

$ brew fetch --force-bottle gcc | grep Downloading | awk '{ print $3 }' | sed -e "s/yosemite/mountain_lion/"
https://downloads.sf.net/project/machomebrew/Bottles/gcc-4.9.2_1.mountain_lion.bottle.tar.gz

To figure out what bottles need to be uploaded, we can just [[ -z "$(aws ls bucketname -l | grep bottle_filename)" ]].

tkelman commented 9 years ago

brew deps --HEAD julia

staticfloat commented 9 years ago

:+1:

staticfloat commented 9 years ago

Ref https://github.com/Homebrew/homebrew/issues/35586

staticfloat commented 9 years ago

Not doing this since we now have the caching server.