ZIm/crates/eval/examples/standardized_docker_dependency_checks/criteria.md
Thomas Mickley-Doyle d74f0735c2
Add more eval examples + filtering examples by language + fix git concurrent usage (#28719)
Release Notes:

- N/A

---------

Co-authored-by: michael <michael@zed.dev>
Co-authored-by: agus <agus@zed.dev>
2025-04-14 22:05:46 +00:00

1.6 KiB

  1. The changes introduce a new DependencyError class in kamal/cli.rb alongside other error classes like BootError and HookError. This new error class will be used to handle dependency-related failures.
  2. In kamal/cli/base.rb, a new method ensure_docker_installed is added which checks for Docker and buildx plugin installation locally. It raises the new DependencyError with appropriate messages if either Docker or buildx plugin are not found, replacing similar functionality that was previously scattered elsewhere.
  3. The kamal/cli/build.rb file is modified to use the new ensure_docker_installed method instead of the removed verify_local_dependencies method. The error handling is now consistent, using DependencyError instead of BuildError for dependency-related failures.
  4. The kamal/cli/registry.rb file now includes a call to ensure_docker_installed at the start of the login method, ensuring Docker is available before attempting registry operations.
  5. The kamal/commands/base.rb file adds a new public method ensure_docker_installed that combines checks for both Docker and buildx plugin installation, moving this functionality from the Builder class.
  6. The kamal/commands/builder.rb file is simplified by removing the ensure_local_dependencies_installed method and related private methods, as this functionality has been moved to the base commands class.
  7. Test files are updated to reflect these changes, with build_test.rb now expecting DependencyError instead of BuildError for dependency failures, and registry_test.rb adding a new test case for Docker dependency checking during login.