Correctly install regular pip dependencies in declarative image builds #128
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
PR description courtesy of Copilot, let's try this thing out 😄
This pull request includes several changes to the
client/src/jobq/assembler/renderers.py
file to improve the handling of package dependencies and their installation in Docker images. It also updates the test suite to ensure these changes are correctly validated. The most important changes include copying thepip
list to avoid modifying the original, removing processed packages from the list, and adding new assertions in the test cases to verify the Dockerfile content.Improvements to dependency handling:
client/src/jobq/assembler/renderers.py
: Copied thepip
list to avoid modifying the original list directly.client/src/jobq/assembler/renderers.py
: Removed processed packages (wheels, requirements, build folders, and editable installs) from thepip
list to ensure only the remaining packages are installed at the end. [1] [2]Updates to test cases:
client/tests/smoke/_data/docker.yaml
: Added new dependencies to thepip
list in the Docker configuration for testing purposes.client/tests/smoke/test_build_from_yaml.py
: Added assertions to check the presence of the base image, wheel installation, editable package install, and regular package install in the rendered Dockerfile. [1] [2]