feature/2025-03-18-add-support-for-podman (more) #8

Merged
glenux merged 4 commits from feature/2025-03-18-add-support-for-podman into develop 2025-11-19 12:10:17 +00:00
Owner
No description provided.
refactor(container): streamline container command execution
All checks were successful
continuous-integration/drone/push Build is passing
8d4ce99922
Simplified the process of constructing and executing container commands
to enhance maintainability and reduce redundancy.

- Removed redundant appending of image_tag and action to docker_opts in
  run.cr.
- Modified command construction in docker_engine.cr to use pre-built cmd
  array, enhancing clarity.
- Updated podman_engine.cr to utilize cmd array for process execution,
  ensuring consistency across container engines.

Signed-off-by: Glenn Y. Rolland <glenux@glenux.net>
This change updates dependencies and refactors the CLI structure to
enhance maintainability and functionality. Without these updates, the
system could face compatibility issues and reduced efficiency in
handling CLI commands.

- Replace 'ioctl' with 'term-color' in shard.lock for better terminal
  color handling.
- Update versions of 'term-cursor', 'term-prompt', 'term-reader', and
  'term-screen' to ensure compatibility and access to new features.
- Add 'cor' dependency in shard.yml to support additional
  functionalities.
- Refactor CLI class to inherit from 'DocMachine::BaseCliCommand' for
  better command structure.
- Modify 'Config' class to inherit from 'DocMachine::Config' and update
  initialization for improved configuration management.
- Enable caching by default in 'Config' to optimize performance.
- Remove unnecessary whitespace and fix minor syntax issues for code
  clarity.

Signed-off-by: Glenn Y. Rolland <glenux@glenux.net>
Establishing a clear technical stack is crucial for aligning the team's
development efforts and ensuring the project's success. Without this
decision, the team might face inconsistencies in development practices
and potential inefficiencies in performance and maintainability.

- Create `133c0b7-Core-Technical-Stack.md` to document the decision.
- Choose Crystal Language for its performance, type safety, and
  developer-friendly syntax.
- Select Shards as the dependency manager for its seamless integration
  and reproducibility.
- Outline quality constraints and conventions for using Crystal,
  emphasizing OOP principles, idiomatic usage, and testing.
- Define guidelines for dependency management with Shards, focusing on
  version pinning and minimal dependency usage.

Signed-off-by: Glenn Y. Rolland <glenux@glenux.net>
feat(container): Improve error handling and runtime flag normalization
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
f74296fdab
Enhancing error handling for Podman engine operations and normalizing
container runtime flag inputs improves reliability and user experience.
Without these changes, Podman failures could silently pass, and runtime
flag inputs could lead to unexpected fallbacks.

- Implement error raising in Podman engine methods to propagate failures
  as exceptions.
- Normalize container runtime flag inputs to handle case insensitivity
  and validate against supported runtimes.
- Update CLI to use the new normalization logic, ensuring consistent
  behavior.
- Add tests to cover error propagation and runtime flag validation
  scenarios.
- Update TASKS.md to reflect completion of these improvements.

Signed-off-by: Glenn Y. Rolland <glenux@glenux.net>
glenux merged commit b8601e7489 into develop 2025-11-19 12:10:17 +00:00
Sign in to join this conversation.
No reviewers
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference: glenux/docmachine-cli#8
No description provided.