- added openssl and iproute2 installation to install_v.sh since they're
needed in coredns installation and usage.
- fixed bug in coredns build process.
- fixed bug in getting own public ip.
- fixed bugs in json encoding dns records before pushing to redis
* 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 a new WireGuard installer to the project.
- This installer handles installation and uninstallation of WireGuard.
Co-authored-by: mahmmoud.hassanein <mahmmoud.hassanein@gmail.com>
- Added a Buildah installer to the project.
- The installer can install and remove Buildah.
- Updated the installer to use the latest Buildah version.
Co-authored-by: mahmmoud.hassanein <mahmmoud.hassanein@gmail.com>
Co-authored-by: mariobassem <mariobassem12@gmail.com>
- Add a new docker installer.
- Includes functionality for installing, starting, stopping, and removing docker.
Co-authored-by: mariobassem12 <mariobassem12@gmail.com>
Co-authored-by: omda <mahmmoud.hassanein@gmail.com>
- Add a new installer for the `screen` utility.
- This installer supports Ubuntu and macOS.
- Includes functionality for installation, uninstallation,
and status checking.
- Fixed tests for osal.screen
Co-authored-by: mahmmoud.hassanein <mahmmoud.hassanein@gmail.com>
- Improve the installation process for Gitea and PostgreSQL.
- Change the location of the Gitea config file to `/etc`.
- Add a health check for the PostgreSQL container.
- Ensure the Gitea user is created only if it doesn't exist.
- Add a restart command for Gitea to ensure it starts after.
- Improve error handling during user creation.
- Simplify PostgreSQL configuration in Gitea actions.
- Replace `osal.cmd_add` with explicit `cp` and `chmod`
- commands for more robust installation.
- This ensures gitea is correctly added to the path and
- made executable, providing better error handling.
Co-authored-by: mariobassem12 <mariobassem12@gmail.com>
- Corrected a typo in the Gitea SMTP port configuration
- across multiple files: `gitea.vsh`, `gitea_model.v`,
- `server.v`, and `app.ini`. The incorrect `smpt_port`
- was changed to the correct `smtp_port`.
Co-authored-by: mariobassem12 <mariobassem12@gmail.com>
- Remove unnecessary and incomplete code in `gitea_actions.v`.
- Simplify the `upload`, `startupcmd`, and `running` functions.
- Use a temporary file for the Gitea configuration.
- Implement a simpler health check using `curl`.
Co-authored-by: mariobassem12 <mariobassem12@gmail.com>
- The Gitea installer now automatically starts the Gitea server after installation.
- Updated the installer to include a `start()` function.
- Added PostgreSQL installation and configuration to the Gitea installer.
- Improved error handling and logging.
- Updated configuration file template for better clarity and consistency.
- Renamed some variables for better readability.
Co-authored-by: mariobassem12 <mariobassem12@gmail.com>
- Refactor the Gitea installer to use a more robust and.
- configurable approach. The installer now uses a more.
- flexible configuration system and handles different.
- platforms more effectively. The installation process.
- is now more modular and easier to maintain. The.
- previous method was overly simplistic and lacked.
- essential configuration options.
Co-authored-by: mariobassem12 <mariobassem12@gmail.com>
- Migrate Gitea installation to use Podman containers.
- This simplifies the installation process and improves
- portability. Removes reliance on direct binary
- downloads and manual installation steps. The
- Gitea instance is now managed as a container.
- Updates configuration to reflect container-based
- deployment. Updates version to 'latest' to
- leverage Podman's image management capabilities.
Co-authored-by: mariobassem12 <mariobassem12@gmail.com>
- Remove unnecessary error return in `installed_()`.
- Remove `workdir` from `startupcmd()` as it's not needed.
- Simplify healthcheck to only return boolean.
Co-authored-by: mariobassem12 <mariobassem12@gmail.com>
- Replaced the previous systemd-based PostgreSQL installer with a
Podman-based solution. This simplifies the installation process
and improves compatibility across different Linux distributions.
- The new installer uses Podman containers to manage the
PostgreSQL database, eliminating the need for complex systemd
configurations and package management.
- This change enhances portability and reduces the risk of
conflicts with existing system packages. The destroy_ function
now cleanly removes the Podman container. The installed_ and
check functions now verify the container's health.
Co-authored-by: mario <mariobassem12@gmail.com>
- Updated PostgreSQL installer to use volume path instead of server path.
- Updated connection string to include user, password, host, and port.
- Updated import statements to use herolib instead of crystallib.
- Updated readme files to reflect changes.
Co-authored-by: mariobeh <mariobassem12@gmail.com>
- Refactor Podman installer to use a more robust approach
- Improve error handling and clarify the installation/removal
- Update example usage to reflect changes
Co-authored-by: supermario <mariobassem12@gmail.com>
- Simplify the Podman installer code.
- Remove unnecessary functions and improve code structure.
- Update the installer to support more platforms.
- Improve error handling and logging.
- Update Podman version to 4.9.3.
- Improve the parsing of Git URLs to correctly handle paths and branches.
- Fix an issue where the `griddriver` installer was not correctly
- installed.
- Fix a bug in the `IPAddress` `ping` function.
- Update the `GitLocation` struct to correctly handle branches and
- tags.
- Fix a bug in the `GitRepo` `checkout` function.
- Improve the `gitlocation_from_url` function to handle various Git
- URL formats.
- Update the `livekit` installer to use the correct source command.
- Update the `golang` installer to use the correct `go version`
- command.
- Update the `griddriver` installer to use the correct version
- command.
Co-authored-by: supermario <mariobassem12@gmail.com>