Put solver bindists into different artifacts than non-solver bindists
RyanGlScott opened this issue · comments
Currently, if you look at a downloads page for a SAW CI workflow, it looks something like this:
The saw-1.0.0.99-ubuntu-22.04-x86_64 (GHC 8.10.7)
artifact is over 200 megabytes in size! While SAW binaries are somewhat on the large side, I wouldn't expect them to be that large. Part of the reason for it being so large is that this artifact actually includes two bindists: one SAW bindist that includes SMT solvers, and another bindist that doesn't include SMT solvers. Most of the time, I only want to download the bindist that doesn't include the solvers, which means I end up downloading far more than I ever really want.
I would prefer that the solver bindists be split up from the non-solver bindists on the downloads page, similarly to how Cryptol handles it:
Notice that the *-with-solvers
artifacts are now separate. This wouldn't be too difficult to accomplish in SAW's CI. Currently, we have:
saw-script/.github/workflows/ci.yml
Lines 185 to 199 in 4070dd4
Notice that although these use different paths, they are both grouped under the same ${{ steps.config.outputs.name }} (GHC ${{ matrix.ghc }})
name. To fix this issue, it would suffice to change the with-solvers
step to use the name ${{ steps.config.outputs.name }}-with-solvers (GHC ${{ matrix.ghc }})
, like how Cryptol does it.