Commit Graph

75 Commits

Author SHA1 Message Date
5c0c096a79 Merge pull request #64 from freeflowuniverse/development_coredns
Development coredns
2025-02-13 19:19:09 +02:00
e969eacd06 fix(golang): add go path to env 2025-02-13 16:56:45 +00:00
8ed3439cdc fix(coredns): comment getting machine public ip 2025-02-13 16:13:15 +00:00
25c997fec5 fix(coredns): fixes in coredns installer and client 2025-02-12 17:55:36 +02:00
3117d288b1 WIP(osal.coredns): add example for coredns usage
- 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
2025-02-10 17:07:49 +00:00
5f9c6ff2bb ... 2025-02-10 12:41:14 +03:00
86e3fdb910 WIP(osal.coredns): add example for coredns usage
- create an example to use coredns module for adding dns records
- fix module errors
2025-02-09 18:06:16 +02:00
7a6660ebd8 ... 2025-02-09 13:32:34 +01:00
e20d1bdcc5 traeffik first version, coredns 2025-02-09 13:32:11 +01:00
3e309b6379 ... 2025-02-09 12:24:12 +01:00
7b69719f0e ... 2025-02-09 08:55:01 +01:00
1d631fec21 ... 2025-02-09 08:52:42 +01:00
6e619622d2 ... 2025-02-08 14:11:51 +01:00
e34d804dda ... 2025-02-07 11:59:52 +03:00
133a8c7441 Merge branch 'development_kristof10' into development
# Conflicts:
#	.github/workflows/build_and_test.yml
#	.github/workflows/hero_build_linux.yml
#	.github/workflows/hero_build_macos.yml
#	install_herolib.vsh
#	install_v.sh
#	workflows/hero_build_macos.yml
2025-02-07 11:20:20 +03:00
4495df4d2e ... 2025-02-07 06:30:13 +03:00
99d3e6c00c ... 2025-02-07 06:19:54 +03:00
a66ef2e8b3 ... 2025-02-06 21:09:20 +03:00
5ad2062e5c format 2025-02-06 06:26:44 +03:00
ee205c4b07 refactor: Simplify V and Herolib setup (#45)
* 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>
2025-02-03 17:04:40 +02:00
9aee672450 s 2025-02-03 14:02:26 +03:00
c8d715126f s 2025-02-03 12:37:19 +03:00
0fd5062408 docusaurus 2025-02-02 19:24:10 +03:00
749fa94312 feat: Add WireGuard installer
- 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>
2025-02-02 15:20:57 +02:00
d6a13f81e0 Merge branch 'development_fix_ci' into development_kristof 2025-01-31 15:40:46 +03:00
6e1f23b702 Merge branch 'development' into development_kristof 2025-01-31 15:40:18 +03:00
74ab68d05f ... 2025-01-31 15:39:44 +03:00
112f5eecb2 feat: Add Buildah installer
- 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>
2025-01-29 11:13:33 +01:00
0f095a691d feat: add docker installer
- 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>
2025-01-28 16:17:33 +01:00
8b0f692673 fix: Fix docker examples
- Moved `httpconnection` import from `clients` to `core`.
- Changed `tfgrid-sdk-ts` dashboard to playground.
- Added ipaddr to node_local().
- Added public keyword to OpenSSLGenerateArgs.
- Improved DockerEngine image and container loading.
- Added utils.contains_ssh_port.
- Improved error handling in DockerEngine.
- Improved Docker registry handling.

Co-authored-by: mariobassem12 <mariobassem12@gmail.com>
Co-authored-by: omda <mahmmoud.hassanein@gmail.com>
2025-01-28 14:08:42 +01:00
0ae8e227fc feat: Add screen installer
- 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>
2025-01-27 17:18:39 +02:00
888aac4867 push 2025-01-23 14:16:02 +01:00
timurgordon
dce0b71530 replace crystallib with herolib 2025-01-22 23:57:49 +00:00
Mahmoud Emad
3b580dcc1d fix: improve gitea and postgresql installation
- 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.
2025-01-09 13:31:57 +02:00
a63bba4558 fixes in gitea
Co-authored-by: omda <mahmmoud.hassanein@gmail.com>
2025-01-08 21:22:49 +02:00
Mahmoud Emad
de7c3ad36c fix: improve gitea installation
- 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>
2025-01-08 14:22:34 +02:00
Mahmoud Emad
d7efbeb53f fix: correct typo in Gitea SMTP port configuration
- 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>
2025-01-08 14:04:29 +02:00
Mahmoud Emad
7086a76a69 refactor: Simplify Gitea installer
- 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>
2025-01-08 13:41:24 +02:00
Mahmoud Emad
d6cb55abb1 feat: enable Gitea auto-start
- 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>
2025-01-08 12:26:03 +02:00
Mahmoud Emad
e2a2f22571 refactor: improve gitea installer
- 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>
2025-01-08 11:43:01 +02:00
Mahmoud Emad
d631cc5af7 refactor: Migrate Gitea to Podman
- 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>
2025-01-06 17:12:59 +02:00
Mahmoud Emad
a19867c00b fix: Improve Postgresql healthcheck
- 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>
2025-01-06 15:43:33 +02:00
Mahmoud Emad
51fb692f15 fix: Use container name instead of the server name 2025-01-06 15:29:20 +02:00
Mahmoud Emad
f6b08bb1bc refactor: Migrate PostgreSQL installer to Podman
- 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>
2025-01-06 15:26:06 +02:00
Mahmoud Emad
5c0acf5678 refactor: Update PostgreSQL installer
- 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>
2025-01-06 13:38:47 +02:00
Mahmoud Emad
704ad6d3ac refactor: remove unused imports
- Remove unused imports from postgresql and podman modules.

Co-authored-by: mariobassem <mariobassem12@gmail.com>
2025-01-06 13:30:25 +02:00
Mahmoud Emad
61b210d7e0 refactor: improve Podman installer
- 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>
2025-01-06 12:51:46 +02:00
Mahmoud Emad
624639f87e refactor: simplify podman installer
- 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.
2025-01-06 12:16:29 +02:00
f7309f2433 wip: fix gitea & postgresql installers
Co-authored-by: omda <mahmmoud.hassanein@gmail.com>
2025-01-05 19:29:54 +02:00
a19480ecfd refactor: standardize imports and clean up commented code across modules 2025-01-03 00:29:37 +02:00