commits
feat: add default registry to image repository and enhance flag merging logic
feat: implement HTTP API with image and machine management endpoints
feat: add support for volumes
- Implemented image database operations in src/images.ts including listing, retrieving, saving, and deleting images.
- Created migration scripts in src/migrations.ts for managing the images table and related schema changes.
- Introduced ORAS binary setup and image push/pull functionality in src/oras.ts.
- Added subcommands for image management (push, pull, tag, rmi) in src/subcommands.
- Enhanced error handling and validation for image names and states.
- Updated state management in src/state.ts to use a unified DbError class for database operations.
- Improved utility functions in src/utils.ts for image validation and size formatting.
Add VM configuration management and improve command handling
- Introduced `src/config.ts` for VM configuration schema and file handling.
- Updated `src/constants.ts` to define `CONFIG_FILE_NAME`.
- Enhanced `main.ts` to support VM initialization and configuration merging.
- Improved ISO URL validation in `src/utils.ts`.
- Refactored `inspect.ts` to log VM state more effectively.
- Updated `.gitignore` to include `vmconfig.toml`.
- Added new dependencies in `deno.json` for TOML parsing and validation.
Refactor virtual machine commands to use Effect for better error handling and control flow
- Updated `restart.ts` to utilize Effect for managing the restart process of virtual machines, including improved error handling and logging.
- Refactored `rm.ts` to use Effect for removing virtual machines, enhancing error management.
- Enhanced `start.ts` to implement Effect for starting virtual machines, allowing for better control over detached and attached modes.
- Refactored `stop.ts` to leverage Effect for stopping virtual machines, improving error handling and logging.
- Updated `utils.ts` to introduce new error classes and refactor existing functions to use Effect for better error management and control flow.
Add CLI flag parsing for overriding virtual machine configuration in start command
Enhance cross-platform support by adding ARM architecture targets and improve disk size checks using a constant for threshold
- Introduced database functionality with SQLite for managing virtual machines.
- Added commands for starting, stopping, inspecting, and listing VMs.
- Implemented state management for VMs, including saving and updating their status.
- Enhanced CLI with examples for user guidance.
- Refactored code structure for better organization and maintainability.
- Implemented image database operations in src/images.ts including listing, retrieving, saving, and deleting images.
- Created migration scripts in src/migrations.ts for managing the images table and related schema changes.
- Introduced ORAS binary setup and image push/pull functionality in src/oras.ts.
- Added subcommands for image management (push, pull, tag, rmi) in src/subcommands.
- Enhanced error handling and validation for image names and states.
- Updated state management in src/state.ts to use a unified DbError class for database operations.
- Improved utility functions in src/utils.ts for image validation and size formatting.
- Introduced `src/config.ts` for VM configuration schema and file handling.
- Updated `src/constants.ts` to define `CONFIG_FILE_NAME`.
- Enhanced `main.ts` to support VM initialization and configuration merging.
- Improved ISO URL validation in `src/utils.ts`.
- Refactored `inspect.ts` to log VM state more effectively.
- Updated `.gitignore` to include `vmconfig.toml`.
- Added new dependencies in `deno.json` for TOML parsing and validation.
- Updated `restart.ts` to utilize Effect for managing the restart process of virtual machines, including improved error handling and logging.
- Refactored `rm.ts` to use Effect for removing virtual machines, enhancing error management.
- Enhanced `start.ts` to implement Effect for starting virtual machines, allowing for better control over detached and attached modes.
- Refactored `stop.ts` to leverage Effect for stopping virtual machines, improving error handling and logging.
- Updated `utils.ts` to introduce new error classes and refactor existing functions to use Effect for better error management and control flow.
- Introduced database functionality with SQLite for managing virtual machines.
- Added commands for starting, stopping, inspecting, and listing VMs.
- Implemented state management for VMs, including saving and updating their status.
- Enhanced CLI with examples for user guidance.
- Refactored code structure for better organization and maintainability.