- Remove unused `lock_manager` from the `App` struct.
- Comment out the lock and unlock handlers.
- Improve `propfind` response XML generation.
- Fix path handling in `generate_response_element`.
- Update content type handling for files.
- Improve XML generation for resource responses.
Co-authored-by: mahmmoud.hassanein <mahmmoud.hassanein@gmail.com>
- Adds a new example demonstrating deployment of OpenWebUI on the ThreeFold Grid using the `tfgrid3deployer` module.
- Provides detailed instructions and a README file for easy setup and execution.
Co-authored-by: mahmmoud.hassanein <mahmmoud.hassanein@gmail.com>
- Created an example to create a docker image for open-webui
- The `docker_recipe_env.v` file is updated to correctly handle quoting in environment variables.
Co-authored-by: mahmmoud.hassanein <mahmmoud.hassanein@gmail.com>
- Add a WebDAV server implementation using the `vweb` framework.
- The server supports basic authentication, request logging, and essential WebDAV methods.
- Implements file operations, authentication, and request logging.
Co-authored-by: mahmmoud.hassanein <mahmmoud.hassanein@gmail.com>
* refactor: Simplify V and Herolib setup
- Use install_v.sh script to install V and Herolib in CI.
Co-authored-by: mahmmoud.hassanein <mahmmoud.hassanein@gmail.com>
* WIP: handle github actions in vlang installer
- Add `--github-actions` flag to `install_v.sh` script.
- Add appropriate privilege when running install_v.sh script.
Co-authored-by: mahmmoud.hassanein <mahmmoud.hassanein@gmail.com>
* refactor: consolidate build workflows
- Consolidate macOS and Linux build workflows into a single `build_and_test.yml` workflow.
- Remove the now-redundant `hero_build_linux.yml` workflow.
- Update the workflow to support both Linux and macOS targets.
- Update `install_v.sh` script to handle brew installations without sudo.
Co-authored-by: mahmmoud.hassanein <mahmmoud.hassanein@gmail.com>
---------
Co-authored-by: mahmmoud.hassanein <mahmmoud.hassanein@gmail.com>
- Add support for deploying VMs, ZDBs, and gateways on Hetzner nodes.
- Introduce `use_hetzner_node` flag to VM, ZDB, and WebName.
- Update `filter_nodes` to filter by Hetzner farm IDs if `on_hetzner` flag is set.
- Implement `get_hetzner_farm_ids` function (currently a placeholder).
Co-authored-by: mahmmoud.hassanein <mahmmoud.hassanein@gmail.com>
- Add a new ip-api client to the project.
- This client uses the ip-api.com API to get IP information.
- An example is provided in `examples/develop/ipapi`.
Co-authored-by: mahmmoud.hassanein <mahmmoud.hassanein@gmail.com>
- Added a new example demonstrating deployment on Hetzner using the `tfgrid3deployer`.
- The example creates a VM and adds a webname.
Co-authored-by: mahmmoud.hassanein <mahmmoud.hassanein@gmail.com>
- Add a new WireGuard installer to the project.
- This installer handles installation and uninstallation of WireGuard.
Co-authored-by: mahmmoud.hassanein <mahmmoud.hassanein@gmail.com>
- Updated WireGuard client to use `wg-quick` instead of `sudo wg-quick`.
- Improved error handling in WireGuard client.
- Added `sudo` to `wg show` command for proper permissions.
- Updated example `wireguard.vsh` script to reflect changes.
- Added a new `wg0.conf` file for the WireGuard configuration.
- Resolved the issue where the script wasn't finding the configuration file.
Co-authored-by: mahmmoud.hassanein <mahmmoud.hassanein@gmail.com>
- Add a WireGuard client to the project.
- New utility functions have been added to parse the output of `wg show` command and improve error handling.
- Add start, down, show, show_config, generate_private_key, and get_public_key method to interact with the wg binary.
- Created a new example file to offer more clear usage.
Co-authored-by: mariobassem12 <mariobassem12@gmail.com>
- Add a new WireGuard client to the project.
- Includes a factory, model, and basic client functionality.
Co-authored-by: mariobassem12 <mariobassem12@gmail.com>