commits
feat: add default registry prefix for image repository and improve logging
feat: Implement HTTP API with image and machine management
feat: add volume management functionality with create, list, inspect, and remove commands
- Adjusted line breaks for better readability in core VM management, network & storage, image management, and configuration management sections.
- Enhanced descriptions for commands and options to maintain consistency and clarity.
- Updated example commands to reflect the latest image versions.
- Improved overall structure and formatting for better user experience.
- Added sections for Image Management & OCI Registry Support, detailing commands for listing, tagging, and managing VM disk images.
- Introduced Configuration Management section with examples for initializing and using configuration files.
- Improved formatting and clarity throughout the document, including command examples and descriptions.
- Updated prerequisites and dependencies to reflect new features and libraries.
feat: add image management functionality with OCI registry support
- Introduced new constants for image directory.
- Refactored database context to include migration handling.
- Created a new database schema for images with relevant fields.
- Implemented image CRUD operations in a new images module.
- Added migration scripts for creating and altering the images table.
- Developed ORAS commands for pushing and pulling images.
- Implemented subcommands for image management (list, tag, push, pull, remove).
- Enhanced utility functions for image validation and size formatting.
- Updated existing modules to integrate new image management features.
Enhance VM configuration management and add new commands
- Update .gitignore to include vmconfig.toml
- Add TOML parsing and validation for VM configurations
- Introduce init command to create a default VM configuration file
- Refactor main.ts to integrate new configuration handling
- Export DEFAULT_VERSION and add URL validation for ISO files
Refactor subcommands to use Effect for error handling and asynchronous operations
- Updated `restart.ts` to utilize Effect for managing VM state and process control, including error handling with tagged errors.
- Refactored `rm.ts` to implement Effect for finding and removing VMs, enhancing error management.
- Modified `start.ts` to support both detached and interactive modes using Effect, improving command execution and error handling.
- Enhanced `stop.ts` to utilize Effect for stopping VMs and managing errors effectively.
- Refactored utility functions in `utils.ts` to use Effect for asynchronous operations and error handling, including disk image management and QEMU command execution.
Allow user to override VM configuration options for CPU, memory, disk, and networking
Refactor disk size checks to use EMPTY_DISK_THRESHOLD_KB constant
- Introduced 'logs' command to view VM logs with optional follow flag.
- Added 'restart' command to restart a virtual machine.
- Enhanced 'start' command to support running VMs in detached mode with logging.
- Updated database schema to include port forwarding configuration.
- Implemented utility functions for setting up port forwarding arguments.
- Adjusted line breaks for better readability in core VM management, network & storage, image management, and configuration management sections.
- Enhanced descriptions for commands and options to maintain consistency and clarity.
- Updated example commands to reflect the latest image versions.
- Improved overall structure and formatting for better user experience.
- Added sections for Image Management & OCI Registry Support, detailing commands for listing, tagging, and managing VM disk images.
- Introduced Configuration Management section with examples for initializing and using configuration files.
- Improved formatting and clarity throughout the document, including command examples and descriptions.
- Updated prerequisites and dependencies to reflect new features and libraries.
- Introduced new constants for image directory.
- Refactored database context to include migration handling.
- Created a new database schema for images with relevant fields.
- Implemented image CRUD operations in a new images module.
- Added migration scripts for creating and altering the images table.
- Developed ORAS commands for pushing and pulling images.
- Implemented subcommands for image management (list, tag, push, pull, remove).
- Enhanced utility functions for image validation and size formatting.
- Updated existing modules to integrate new image management features.
- Updated `restart.ts` to utilize Effect for managing VM state and process control, including error handling with tagged errors.
- Refactored `rm.ts` to implement Effect for finding and removing VMs, enhancing error management.
- Modified `start.ts` to support both detached and interactive modes using Effect, improving command execution and error handling.
- Enhanced `stop.ts` to utilize Effect for stopping VMs and managing errors effectively.
- Refactored utility functions in `utils.ts` to use Effect for asynchronous operations and error handling, including disk image management and QEMU command execution.
- Introduced 'logs' command to view VM logs with optional follow flag.
- Added 'restart' command to restart a virtual machine.
- Enhanced 'start' command to support running VMs in detached mode with logging.
- Updated database schema to include port forwarding configuration.
- Implemented utility functions for setting up port forwarding arguments.