1
0
mirror of https://github.com/containers/ramalama.git synced 2026-02-05 06:46:39 +01:00

3795 Commits

Author SHA1 Message Date
Roberto Majadas
2d4050b568 Add e2e pytest test for pull command
- Migrate to e2e pytest the `test/system/050-pull.bats` bat test.
- Ollama fixture has been added to test on a insolated ollama instance
- The tests cover a wide range of functionalities, including:
  - Pulling models from different transports like Ollama, Hugging Face, OCI, and local files.
  - Verifying the use of local caches from Ollama and Hugging Face to speed up subsequent pulls.
  - Testing error handling for non-existent models and endianness mismatches.
  - Ensuring proper interaction with authenticated OCI registries for pulling private models.
  - Validating the handling of models with multiple layers and references.

Signed-off-by: Roberto Majadas <rmajadas@redhat.com>
2026-01-05 19:02:41 +01:00
Nathan Weinberg
059945f3d8 chore: add CLAUDE.md
a committed CLAUDE.md can ensure more consistent
behavior for contributors utilizing Claude Code
or other supported agents for ramalama development

Signed-off-by: Nathan Weinberg <nweinber@redhat.com>
2026-01-05 12:39:47 -05:00
red-hat-konflux-kflux-prd-rh03[bot]
265fc14cdb chore(deps): lock file maintenance
Signed-off-by: red-hat-konflux-kflux-prd-rh03 <206760901+red-hat-konflux-kflux-prd-rh03[bot]@users.noreply.github.com>
2026-01-05 00:41:45 +00:00
John Wiele
fe31ba5750 Update maintainers in pyproject.toml.
Update email address for Dan Walsh. Add Mike Bonnet. Subtract Eric
Curtin.

Signed-off-by: John Wiele <jwiele@redhat.com>
2026-01-03 12:12:46 -05:00
Daniel J Walsh
07143fb585 Fix quadlet generation for multi-part models
Add support for generating multiple Mount= declarations in quadlet files
for multi-part models (e.g., models split into multiple GGUF files).

Changes:
- Add _get_all_model_part_paths() method to Transport class to retrieve
  all parts of a multi-part model from the ref file
- Update Quadlet class to accept and store model_parts list
- Modify _gen_model_volume() to generate Mount= entries for each part
- Update generate_container_config() to pass model parts to quadlet
- Add test case for multi-part model quadlet generation

The fix ensures that when generating quadlet files for models like
gpt-oss-120b that are split across multiple files, all parts are
properly mounted into the container with correct src/dest paths.

Fixes #2017

Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
2026-01-02 11:59:55 -05:00
Daniel J Walsh
005b91691e Merge pull request #2267 from telemaco/e2e-pytest-convert-cmd
Add e2e pytest test for convert command
2026-01-02 11:58:37 -05:00
Roberto Majadas
ff87990058 Add e2e pytest test for convert command
- Migrate to e2e pytest the `test/system/055-convert.bats` bat test.

Signed-off-by: Roberto Majadas <rmajadas@redhat.com>
2025-12-29 18:22:59 +01:00
Daniel J Walsh
7630400864 Merge pull request #2268 from telemaco/e2e-pytest-info-cmd
Add e2e pytest test for info command
2025-12-29 09:35:23 -05:00
Daniel J Walsh
25b98cd3ac Merge pull request #2271 from containers/konflux/mintmaker/main/docsite-lockfile-maintenance
chore(deps): lock file maintenance
2025-12-29 09:32:43 -05:00
Daniel J Walsh
cdf389e669 Merge pull request #2270 from containers/konflux/references/main
chore(deps): update konflux references to 0b10508
2025-12-29 09:32:18 -05:00
red-hat-konflux-kflux-prd-rh03[bot]
2c4ca2e963 chore(deps): lock file maintenance
Signed-off-by: red-hat-konflux-kflux-prd-rh03 <206760901+red-hat-konflux-kflux-prd-rh03[bot]@users.noreply.github.com>
2025-12-29 00:41:56 +00:00
red-hat-konflux-kflux-prd-rh03[bot]
8c96e531b8 chore(deps): update konflux references to 0b10508
Signed-off-by: red-hat-konflux-kflux-prd-rh03 <206760901+red-hat-konflux-kflux-prd-rh03[bot]@users.noreply.github.com>
2025-12-27 08:37:51 +00:00
Roberto Majadas
55b0e0ebac Add e2e pytest test for info command
- Migrate to e2e pytest the `test/system/050-info.bats` bat test.

Signed-off-by: Roberto Majadas <rmajadas@redhat.com>
2025-12-23 17:48:09 +01:00
Daniel J Walsh
5a3d77ee13 Merge pull request #2259 from rhatdan/silence-cuda-warnings
Add --quiet/-q flag to silence warnings
2025-12-22 14:08:26 -05:00
Daniel J Walsh
5f985008e3 Merge pull request #2264 from containers/konflux/mintmaker/main/docsite-lockfile-maintenance
chore(deps): lock file maintenance
2025-12-22 09:42:28 -05:00
Daniel J Walsh
7a31e55ec3 Merge pull request #2266 from containers/konflux/mintmaker/main/registry.access.redhat.com-ubi9-ubi-9.x
chore(deps): update registry.access.redhat.com/ubi9/ubi docker tag to v9.7-1766364927
2025-12-22 09:41:57 -05:00
red-hat-konflux-kflux-prd-rh03[bot]
4a9e805c48 chore(deps): update registry.access.redhat.com/ubi9/ubi docker tag to v9.7-1766364927
Signed-off-by: red-hat-konflux-kflux-prd-rh03 <206760901+red-hat-konflux-kflux-prd-rh03[bot]@users.noreply.github.com>
2025-12-22 08:34:07 +00:00
red-hat-konflux-kflux-prd-rh03[bot]
1a308469e0 chore(deps): lock file maintenance
Signed-off-by: red-hat-konflux-kflux-prd-rh03 <206760901+red-hat-konflux-kflux-prd-rh03[bot]@users.noreply.github.com>
2025-12-22 00:37:06 +00:00
Daniel J Walsh
e4ddee365c Merge pull request #2263 from containers/konflux/references/main
chore(deps): update konflux references
2025-12-20 08:03:24 -05:00
red-hat-konflux-kflux-prd-rh03[bot]
40254a5cf7 chore(deps): update konflux references
Signed-off-by: red-hat-konflux-kflux-prd-rh03 <206760901+red-hat-konflux-kflux-prd-rh03[bot]@users.noreply.github.com>
2025-12-20 08:30:55 +00:00
Oliver Walsh
0bec66e377 Merge pull request #2251 from containers/fix-ci-bats-cuda
ci: fix podman-in-podman setup for nvidia GPUs
2025-12-19 20:26:05 +00:00
Mike Bonnet
822af7cbf8 040-serve.bats: llama-stack: only pass "--dri off" if /dev/dri is not present
When testing with nvidia hardware, passing "--dri off" prevents access to the hardware
and causes the cuda image to crash.

Signed-off-by: Mike Bonnet <mikeb@redhat.com>
2025-12-19 11:31:43 -08:00
Mike Bonnet
27628c2fe5 002-bench.bats: only skip if running with --nocontainer
llama-bench is included in the ramalama images, it doesn't need to be
present in the host environment.

Signed-off-by: Mike Bonnet <mikeb@redhat.com>
2025-12-19 11:31:25 -08:00
Mike Bonnet
1422b512ee ci: fix podman-in-podman setup for nvidia GPUs
To run CI in Konflux we're using podman-in-podman to provide fine-grained control
over the test environment. Previously we were deleting the CDI hooks from the outer
podman environment because they were unnecessary.

Recent changes to the cuda image require the symlinks created by the hooks to be
present, so mount /usr/bin/nvidia-container-runtime and /usr/bin/nvidia-cdi-hook
into the outer podman environment and re-enable the hooks.

Signed-off-by: Mike Bonnet <mikeb@redhat.com>
2025-12-19 11:31:24 -08:00
Mike Bonnet
0b1ba47015 Merge pull request #2261 from olliewalsh/stack_cuda_2
Fix kube resource label for llama-stack
2025-12-19 11:31:07 -08:00
Oliver Walsh
cdf054ef8f Update ramalama/stack.py
Signed-off-by: Oliver Walsh <owalsh@redhat.com>

Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
2025-12-19 17:57:45 +00:00
Oliver Walsh
4b92d1a841 Fix kube resource label for llama-stack
GPU resource label was not correct.

This reverts commit a1f0440f99.

Signed-off-by: Oliver Walsh <owalsh@redhat.com>
2025-12-19 17:53:25 +00:00
Daniel J Walsh
cea8561e4f Add --quiet/-q flag to silence warnings
Implement support for silencing CUDA version warnings and other warnings
by using the existing --quiet/-q flag. When specified, the log level is
set to ERROR, which suppresses WARNING level messages.

The flag was already defined but not properly connected to the logging
system. This change updates post_parse_setup() to respect the quiet flag
and set the appropriate log level.

Log level priority: --debug > --quiet > config > default

This addresses user feedback in issue #2151 where CUDA version warnings
were being displayed even when the user wanted to suppress them.

Fixes #2151

*This PR was created with the assistance of Cursor AI.*

Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
2025-12-19 06:49:52 -05:00
Daniel J Walsh
39dd0cf603 Merge pull request #2257 from jwieleRH/test
Use "with pytest.raises" in tests checking for expected exceptions.
2025-12-19 05:23:03 -05:00
Daniel J Walsh
a17f21bd3d Merge pull request #2256 from olliewalsh/stack_cuda
Fix llama-stack oci runtime on CUDA
2025-12-19 05:08:51 -05:00
John Wiele
58451e7ece Use "with pytest.raises" in tests checking for expected exceptions.
Using the "with pytest.raises" context manager explicitly guarantees
that the test will fail unless the expected exception is
raised. "pytest.mark.xfail" without the strict parameter will merely
log the unexpected behavior but will not necessarily fail the test.

Collapse the two invalid_log_level tests into one parametrized test.

Signed-off-by: John Wiele <jwiele@redhat.com>
2025-12-18 20:58:01 -05:00
Oliver Walsh
662b93d683 Merge pull request #2255 from dominikkawka/MaintainersMD
Adding mikebonnet as ramalama maintainer
2025-12-18 17:31:38 +00:00
Oliver Walsh
474e3c519d Apply suggestions from code review
Signed-off-by: Oliver Walsh <owalsh@redhat.com>

Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
2025-12-18 17:28:10 +00:00
Oliver Walsh
a1f0440f99 Fix llama-stack oci runtime on CUDA
Typically the container runtime for CUDA is specified using the `podman
--runtime` arg.
However lama-stack uses `podman kube play` which has no way to override the runtime.
Use a temporary containers.conf file to do this instead.

Signed-off-by: Oliver Walsh <owalsh@redhat.com>
2025-12-18 17:16:09 +00:00
DominikKawka
bd5ff465bf Adding mikebonnet as ramalama maintainer
Signed-off-by: DominikKawka <dkawka@redhat.com>
2025-12-18 15:42:06 +00:00
Daniel J Walsh
96bcd6779d Merge pull request #2254 from olliewalsh/version_0_16_0
Bump to v0.16.0
v0.16.0
2025-12-18 09:57:43 -05:00
Oliver Walsh
58aaea1c00 Bump to v0.16.0
Signed-off-by: Oliver Walsh <owalsh@redhat.com>
2025-12-18 14:19:28 +00:00
Daniel J Walsh
06d544b843 Merge pull request #2249 from olliewalsh/hardlinks
Fix removing blobs when hardlink/copy is used
2025-12-18 06:58:07 -05:00
Oliver Walsh
cf19099f9f Fix removing blobs when hardlink/copy is used
Removing binary blob files previously relied on following the symlink from a
snapshot file to the binary blob file.
This no longer works now that hardlinks are used by default.

Signed-off-by: Oliver Walsh <owalsh@redhat.com>
2025-12-17 17:36:39 +00:00
Oliver Walsh
202901e4a0 Merge pull request #2245 from rhatdan/artifact
Add comprehensive uninstall instructions to README
2025-12-17 16:06:14 +00:00
Daniel J Walsh
a800ca398b Merge pull request #2247 from olliewalsh/revert_cudacompat_ldconfig
Revert "Workaround for CUDA image not pointing to libcuda.so.1 in ld.so.conf"
2025-12-17 08:23:52 -05:00
Oliver Walsh
fe2f3ca37f Fix bats-on-pull-request
Signed-off-by: Oliver Walsh <owalsh@redhat.com>
2025-12-17 11:02:58 +00:00
Oliver Walsh
bfc859873c Revert "Workaround for CUDA image not pointing to libcuda.so.1 in ld.so.conf"
This reverts commit a22e209551.

Signed-off-by: Oliver Walsh <owalsh@redhat.com>
2025-12-16 22:39:22 +00:00
Daniel J Walsh
b9fe3f0040 Add comprehensive uninstall instructions to README
- Add detailed uninstall section covering all installation methods
- Document pip uninstall command
- Document Fedora DNF removal command
- Document macOS pkg uninstaller steps
- Add instructions for removing user data and configuration files
- Document locations of artifacts in home directory (~/.local/share/ramalama and ~/.config/ramalama)
- Update 'In development' section to reference new uninstall instructions

Fixes #2243

Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
2025-12-15 11:53:46 -05:00
Daniel J Walsh
9201b298b7 Merge pull request #2046 from rhatdan/artifact
Add support for converting to OCI artifacts
2025-12-15 10:56:40 -05:00
Daniel J Walsh
50222f9458 Add support for converting to OCI artifacts
Add Podman >= 5.7.0 version requirement for artifact tests

Artifact support requires Podman 5.7.0 or later. This commit adds version
checking to skip artifact tests on systems with older Podman versions.

Changes:
- Add get_podman_version() and skip_if_podman_too_old() functions to test/system/helpers.bash
- Add skip_if_podman_too_old decorator to test/conftest.py for e2e tests
- Apply version check to all artifact-related tests in:
  - test/system/056-artifact.bats (BATS tests)
  - test/e2e/test_artifact.py (pytest e2e tests)
- Tests will be skipped with clear message on systems with Podman < 5.7.0
- Docker and nocontainer tests are also skipped as they don't support artifacts

The version check extracts the Podman version and compares it numerically,
handling development versions like "5.7.0-dev" correctly.

Cursor-AI-Generated

Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
2025-12-15 08:16:39 -05:00
Daniel J Walsh
6641d15c0c Merge pull request #2244 from containers/konflux/mintmaker/main/docsite-lockfile-maintenance
chore(deps): lock file maintenance
2025-12-15 08:03:50 -05:00
Oliver Walsh
f670778ef7 Merge pull request #2239 from olliewalsh/windows_part_deux
Windows support part 2
2025-12-15 10:16:00 +00:00
red-hat-konflux-kflux-prd-rh03[bot]
f8a3e8e87e chore(deps): lock file maintenance
Signed-off-by: red-hat-konflux-kflux-prd-rh03 <206760901+red-hat-konflux-kflux-prd-rh03[bot]@users.noreply.github.com>
2025-12-15 00:31:06 +00:00
Oliver Walsh
5b3d3bbdf7 nits
Signed-off-by: Oliver Walsh <owalsh@redhat.com>
2025-12-13 18:07:54 +00:00