-
Couldn't load subscription status.
- Fork 21
feat: duplicate evaluation CI to run in docker as well #1625
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
…n in docker as well
By reducing the number of files we send to Docker, we increase the chance of a cache hit (recall that we `COPY . ./` in the Dockerfile, so any change in the build context triggers a cache miss)
The `sha` option for the extract metadata results in the shortened hash, with a literal "sha" prefix. According to ChatGPT, there is no way to refer to job outputs of another job in top-level job spec (which include the `container` directive), thus by hardcoding the long sha using `${{ github.sha }}` we can more easily refer to this exact image in other jobs
|
bv_decide solved 0 theorems. |
|
bv_decide solved 0 theorems. |
1 similar comment
|
bv_decide solved 0 theorems. |
…ilt files, and rename the image to instcombine. Then, pull of the CI step that requires python into a separate job, which is run in the new instcombine image
|
bv_decide solved 0 theorems. |
|
bv_decide solved 0 theorems. |
|
bv_decide solved 0 theorems. |
1 similar comment
|
bv_decide solved 0 theorems. |
|
bv_decide solved 0 theorems. |
|
bv_decide solved 0 theorems. |
1 similar comment
|
bv_decide solved 0 theorems. |
|
bv_decide solved 0 theorems. |
|
bv_decide solved 0 theorems. |
|
bv_decide solved 0 theorems. |
|
bv_decide solved 0 theorems. |
1 similar comment
|
bv_decide solved 0 theorems. |
|
bv_decide solved 0 theorems. |
1 similar comment
|
bv_decide solved 0 theorems. |
|
bv_decide solved 0 theorems. |
2 similar comments
|
bv_decide solved 0 theorems. |
|
bv_decide solved 0 theorems. |
|
bv_decide solved 0 theorems. |
|
bv_decide solved 0 theorems. |
Yes, this will cause more (layer) cache misses, but our CI actions actually use the git history so it is needed, and trying to recover the history using CI actions is not great. Most diffs will change the code anyway, and we will still have the cache mount of .lake, so it should be fine. If not, we can always optimize the layering
|
bv_decide solved 0 theorems. |
Not all tracked files in the repo are copied into the image (e.g., stuff under .github), which was causing the diff to complain
|
bv_decide solved 0 theorems. |
|
bv_decide solved 0 theorems. |
|
bv_decide solved 0 theorems. |
As per #1613, I'm experimenting with an alternative CI setup where we run everything inside a Docker container. Until we commit to this being the workflow we like, I'll duplicate existing CI jobs and have a seperate job run the same action inside the container (on a GH-provided runner, but using the image we built on namespace's runner).
This PR does so for the CI job that builds the non-standard build targets and the Instcombine evaluation (but not yet for hackersdelight, for that I'm waiting on #1549).
To make this work, I:
lean-mlir-instcombine. Note that this second image is still build on GH runner infrastructure! This is fine as we don't actuallylake buildanything here, so there is no need for incremental caching (but of course, using namespace.so would still likely be faster)./github/home, so I originally thought it was using a github user because of security concerns with using a root user. Thus, I tried to set aUSERin the dockerfile./rootusingenv.var, but then actions started complaining about/root/.docker/config.jsonnot existing.../github/home/.elan