Run unit, integration tests and builds in a container#521
Run unit, integration tests and builds in a container#521acardace wants to merge 4 commits intollm-d:mainfrom
Conversation
9b1d0bc to
f1e29ca
Compare
|
@elevran as a follow up I can also do the same thing for building other than just testing, so we can have a fixed image for building as well. |
|
FWIW the venv+Makefile flow makes it easy to attach a local debugger even on macOS (although it should be feasible to spin that flow off to its own Makefile/script if necessary) |
That's fair but I think we should converge on containerized workflows for ease of use and reproducibility. |
f1e29ca to
1377ed5
Compare
|
I've completely reworked this to use the container image for building, linting and running the typos tool as well, this let me get rid of a lot of the Makefile. |
|
Container build fails: |
I'll take a look, the issue is I only use podman locally. |
|
CICD runs Ubuntu with docker by default so that would be needed |
7095e06 to
4301a69
Compare
Add Dockerfile.builder with required dependencies and update Makefile
targets to run tests and builds inside a container, eliminating host
dependency requirements.
Notable changes:
- latest stable Fedora as base image
- add builder image (Dockerfile.builder)
- if pinned python modules deps cannot be found then the latest ones
will be used
- containerized test-unit, test-integration, and build targets
- simplified Makefile by removing host-based Python/tokenizer setup
Fixes llm-d#470
Signed-off-by: Antonio Cardace <acardace@redhat.com>
4301a69 to
5d97f47
Compare
Add golangci-lint to the builder image and update Makefile lint target
to run inside the container, further reducing host dependencies.
Changes:
- Add golangci-lint installation to Dockerfile.builder
- Update lint target to run golangci-lint in container
- Simplify CI workflow to use containerized make targets
- Remove check-golangci-lint from host tool requirements
Signed-off-by: Antonio Cardace <acardace@redhat.com>
Signed-off-by: Antonio Cardace <acardace@redhat.com>
concatenate string using strings.Builder Signed-off-by: Antonio Cardace <acardace@redhat.com>
5d97f47 to
ddd5e59
Compare
|
This PR is marked as stale after 21d of inactivity. After an additional 14d of inactivity (7d to become rotten, then 7d more), it will be closed. To prevent this PR from being closed, add a comment or remove the |
Run unit, integration tests and build in a container
Add Dockerfile.builder with required dependencies and update Makefile
targets to run tests and builds inside a container, eliminating host
dependency requirements.
Notable changes:
latest stable Fedora as base image
add builder image (Dockerfile.builder)
if pinned python modules deps cannot be found then the latest ones will be used
containerized test-unit, test-integration, and build targets
simplified Makefile by removing host-based Python/tokenizer setup
integrate linting and typos in the llm-d-builder image
Fixes Installation of build dependencies via Makefile is broken #470