juliaup icon indicating copy to clipboard operation
juliaup copied to clipboard

add way to get CI builds for a specific commit

Open simeonschaub opened this issue 3 years ago • 1 comments

I often find it useful to use to directly download the CI build outputs when reviewing a PR to base. My usual workflow is to click on Details on the particular tester for my platform, go to the Build Properties tab and copy the download_url there. I then download that tarball, extract it and run it. It would be really nice if I could just do juliaup add <git commit SHA> and juliaup did everything else for me, even clean it up once I don't need it anymore. I think this should be possible since the corresponding download URLs (I think?) all follow the same scheme based on the commit hash.

simeonschaub avatar Aug 10 '21 23:08 simeonschaub

This is now implemented in jill.py in https://github.com/johnnychen94/jill.py/pull/89 and I'd like to give a summary here so if someone is going to implement this in juliaup he doesn't need to redo everything from scratch.

  • Specific commit build is very temporary so there should be a GC functionality to automatically clean them up. In jill.py I choose to install the dev build into julia-dev folder and so every time when users do jill install 1.8.0+cc4be25c, it overrides the previous dev build contents. Thus made an auto GC.
  • Instead of keeping the entire Julia repo and use git command to query the hash, I use GitHub API to fetch the complete commit hash and then map it to the Julia-flavored one (the first 10 characters). See the codes here
  • There are four possible channels(buckets) to fetch CI builds: assert_pretesting, pretesting, assert_bin, and bin. See my configuration here

johnnychen94 avatar Aug 28 '21 06:08 johnnychen94