Closed axel-h closed 2 years ago
Have rebuilt and pushed the containers, they should now be caching the new version. Will leave this open until we can confirm this in a few successful runs.
For sel4/camkes-vm:latest
it seems to work now. A few days ago https://github.com/axel-h/camkes-tool/runs/6947987059?check_suite_focus=true was downloading and building stuff
[326/379] Generating capDL-tool/parse-capDL
stack build --fast
Preparing to install GHC (tinfo6) to an isolated location.
This will not interfere with any system-level installation.
Preparing to download ghc-tinfo6-8.8.4 ...
ghc-tinfo6-8.8.4: download has begun
ghc-tinfo6-8.8.4: 41.72 MiB / 198.61 MiB ( 21.01%) downloaded...
...
yaml > Installing library in /etc/stack/snapshots/x86_64-linux-tinfo6/72b7003234052605176f3b8bdba7090469e2889d3c472ed427cac85fb8cef2f7/8.8.4/lib/x86_64-linux-ghc-8.8.4/yaml-0.11.5.0-Er3VLfWb3kDLIaj1cBi8Ix
...
yaml > Registering library for yaml-0.11.5.0..
Building all executables for `capDL-tool' once. After a successful build of all of them, only specified executables will be rebuilt.
....
Installing executable parse-capDL in /github/workspace/build/capDL-tool/.stack-work/install/x86_64-linux-tinfo6/72b7003234052605176f3b8bdba7090469e2889d3c472ed427cac85fb8cef2f7/8.8.4/bin
so it took 11m 37s. A recent run at https://github.com/axel-h/camkes-tool/runs/6975704922?check_suite_focus=true finishes after 4m 5s without the ghc-tinfo6-8.8.4 download:
[249/379] Generating capDL-tool/parse-capDL
stack build --fast
Building all executables for `capDL-tool' once. After a successful build of all of them, only specified executables will be rebuilt.
...
Installing executable parse-capDL in /github/workspace/build/capDL-tool/.stack-work/install/x86_64-linux-tinfo6/72b7003234052605176f3b8bdba7090469e2889d3c472ed427cac85fb8cef2f7/8.8.4/bin
Excellent. I'll close this issue then.
reopening due to another update from https://github.com/seL4/capdl/pull/45
Ok, this is done. I'll see if I find some time today to automate the process -- we should check and push new containers about once a week anyway.
Also, it occurs to me that the reasoning that we want l4v and seL4 repos to be in sync wrt GHC was wrong. We do want them to be in sync, but it doesn't affect the regression tests, because l4v doesn't use the container, it uses an AWS VM (which is the thing I should update separately).
Follow-up from https://github.com/seL4/capdl/pull/44
Update Haskell toolchain in containers. Currently the CI job download and build the toolchain because it's missing. This make the CI jobs running for ages and look stuck, because thee is no output until this is finished