358 Commits

Author SHA1 Message Date
anonpenguin23
78d876e71b feat(monitor): add sandbox environment support
- load nodes from active sandbox state for env=sandbox
- extract fanoutArchive for efficient server-to-server distribution
2026-03-09 10:19:40 +02:00
anonpenguin23
6468019136 feat(sandbox): optimize archive upload via server-to-server fanout
- add WithNoHostKeyCheck option for ephemeral server IPs
- upload binary to genesis then distribute to other nodes (faster)
- improve provisioning error handling for cleanup on partial failure
2026-03-07 14:27:09 +02:00
anonpenguin23
e2b6f7d721 docs: add security hardening and OramaOS deployment docs
- Document WireGuard IPv6 disable, service auth, token security, process isolation
- Introduce OramaOS architecture, enrollment flow, and management via Gateway API
- Add troubleshooting for RQLite/Olric auth, OramaOS LUKS/enrollment issues
2026-02-28 15:41:04 +02:00
anonpenguin23
fd87eec476 feat(security): add manifest signing, TLS TOFU, refresh token migration
- Invalidate plaintext refresh tokens (migration 019)
- Add `--sign` flag to `orama build` for rootwallet manifest signing
- Add `--ca-fingerprint` TOFU verification for production joins/invites
- Save cluster secrets from join (RQLite auth, Olric key, IPFS peers)
- Add RQLite auth config fields
2026-02-28 15:40:43 +02:00
anonpenguin23
a0468461ab feat(sandbox): add reset command and interactive setup
- new `orama sandbox reset` deletes Hetzner resources (IPs, firewall, SSH key) and local config
- interactive location/server type selection during `setup`
- add Hetzner API methods for listing locations/types, deleting resources
- update defaults to nbg1/cx23
2026-02-28 10:14:02 +02:00
anonpenguin23
2f5718146a Fixed builder bug 2026-02-27 15:56:22 +02:00
anonpenguin23
f26676db2c feat: add sandbox command and vault guardian build
- integrate Zig-built vault-guardian into cross-compile process
- add `orama sandbox` for ephemeral Hetzner Cloud clusters
- update docs for `orama node` subcommands and new guides
2026-02-27 15:22:51 +02:00
anonpenguin23
fade8f89ed Added hatzhner support for clustering cli orama to spin up clusters 2026-02-25 15:13:18 +02:00
anonpenguin23
6898f47e2e Replace sshpass password auth with RootWallet SSH keys
Replaces plaintext password-based SSH authentication (sshpass) across
the entire Go CLI with wallet-derived ed25519 keys via RootWallet.

- Add `rw vault ssh agent-load` command to RootWallet CLI for SSH
  agent forwarding in push fanout
- Create wallet.go bridge: PrepareNodeKeys resolves keys from `rw
  vault ssh get --priv`, writes temp PEMs (0600), zero-overwrites
  on cleanup
- Remove Password field from Node struct, update config parser to
  new 3-field format (env|user@host|role)
- Remove all sshpass branches from inspector/ssh.go and
  remotessh/ssh.go, require SSHKey on all SSH paths
- Add WithAgentForward() option to RunSSHStreaming for hub fanout
- Add PrepareNodeKeys + defer cleanup to all 7 entry points:
  inspect, monitor, push, upgrade, clean, recover, install
- Update push fanout to use SSH agent forwarding instead of sshpass
  on hub
- Delete install/ssh.go duplicate, replace with remotessh calls
- Create nodes.conf from remote-nodes.conf (topology only, no
  secrets)
- Update all config defaults and help text from remote-nodes.conf
  to nodes.conf
- Use StrictHostKeyChecking=accept-new consistently everywhere
2026-02-24 17:24:16 +02:00
anonpenguin23
f0d2621199 Removed extract deploy script 2026-02-24 14:28:11 +02:00
anonpenguin23
c6998b6ac2 Remove legacy deployment and upgrade scripts
- Deleted redeploy.sh, which handled redeployment to nodes in devnet/testnet environments.
- Removed upgrade-nodes.sh, responsible for rolling upgrades of nodes.
- Eliminated upload-source-fanout.sh, which uploaded source archives to nodes in parallel.
- Removed upload-source.sh, used for uploading and extracting source archives to VPS nodes.
2026-02-24 14:24:25 +02:00
anonpenguin23
80e26f33fb feat: add sourceUserID to publishedTrack and update TrackAddedData and TrackRemovedData structures 2026-02-24 10:16:27 +02:00
anonpenguin23
25495448ed fix: update test to verify is_active value as 1 instead of TRUE 2026-02-24 09:15:00 +02:00
anonpenguin23
7f1c592235 refactor: remove UUID generation from DNS record creation for cleaner inserts 2026-02-24 08:00:15 +02:00
anonpenguin23
72fb5f1a5a feat: add secrets and triggers management to function commands
- Introduced `secrets` command for managing function secrets, including set, list, and delete operations.
- Added `triggers` command for managing PubSub triggers associated with functions, allowing addition, listing, and deletion of triggers.
- Implemented API handlers for secrets management, including setting, listing, and deleting secrets.
- Updated serverless handlers to support new secrets and triggers functionalities.
- Enhanced tests for the new features, ensuring proper functionality and error handling.
2026-02-23 19:18:39 +02:00
anonpenguin23
85eb98ed34 feat: add TURN domain configuration and certificate provisioning via Caddy 2026-02-23 16:57:29 +02:00
anonpenguin23
714a986a78 Bump version to 0.112.2 and update TURN server configuration
- Updated version in Makefile to 0.112.2.
- Enhanced SFU server error handling to ignore http.ErrServerClosed.
- Added TURNS (TURN over TLS) configuration options in TURN server and related components.
- Updated firewall rules to include TURNS ports and modified related tests.
- Implemented self-signed certificate generation for TURNS.
- Adjusted TURN server to support both UDP and TCP listeners.
- Updated WebRTC and SFU components to accommodate new TURNS configurations.
2026-02-23 16:32:32 +02:00
anonpenguin23
bcfdabb32d feat: update WebRTC handlers to support dynamic SFU host configuration and add monitoring script 2026-02-23 06:30:57 +02:00
anonpenguin23
3597c61cfc feat: add WebRTC configuration support for gateway instances 2026-02-22 13:11:16 +02:00
anonpenguin23
3e9ef5ac6c feat: enhance WebRTC port allocation with existing allocation checks and increase upload timeout 2026-02-22 11:39:59 +02:00
anonpenguin23
19463b8621 feat: disable HTTP/3 in Caddy to free UDP 443 for TURN server and add patch script 2026-02-21 18:30:28 +02:00
anonpenguin23
a79ae41dd5 feat: implement PubSub trigger management with API endpoints for adding, listing, and removing triggers 2026-02-21 16:26:36 +02:00
anonpenguin23
e4d51676cc feat: add WebRTC feature management commands and public API endpoints for enabling, disabling, and checking status 2026-02-21 13:14:46 +02:00
anonpenguin23
e6f828d6f1 feat: add WebRTC support with SFU and TURN server integration, including configuration, monitoring, and API endpoints 2026-02-21 11:31:20 +02:00
anonpenguin23
8ee606bfb1 feat: implement SFU and TURN server functionality
- Add signaling package with message types and structures for SFU communication.
- Implement client and server message serialization/deserialization tests.
- Enhance systemd manager to handle SFU and TURN services, including start/stop logic.
- Create TURN server configuration and main server logic with HMAC-SHA1 authentication.
- Add tests for TURN server credential generation and validation.
- Define systemd service files for SFU and TURN services.
2026-02-21 11:17:13 +02:00
anonpenguin23
d256a83fb7 feat: enhance namespace management with cluster state deletion and improved deprovisioning process 2026-02-21 06:41:19 +02:00
anonpenguin23
c731486454 feat: update version to 0.110.0 and enhance dead node recovery handling with deployment status updates 2026-02-20 10:08:17 +02:00
anonpenguin23
8cabe48f7d feat: enhance WASM upload functionality with replication and error handling 2026-02-20 09:44:13 +02:00
anonpenguin23
c499b2d76e Enhance health checker and deployment handling
- Added support for "degraded" deployment status in types.
- Updated health checker initialization to include process manager and node ID.
- Refactored health checker tests to accommodate new process manager functionality.
- Implemented logic to handle unhealthy deployments, including restart and failure marking.
- Enhanced deployment reconciliation to manage under-replicated scenarios.
- Updated gateway handlers and middleware to consider "degraded" status in deployment queries.
2026-02-20 09:44:07 +02:00
anonpenguin23
4ebf558719 feat: implement suspect node handling with callbacks for DNS record management 2026-02-20 09:27:35 +02:00
anonpenguin23
a71b979036 feat: add RQLite export/import functionality and related handlers + Deployments DNS Fixes 2026-02-20 07:29:18 +02:00
anonpenguin23
106c2df4d2 feat: implement wallet-based SSH authentication using Ed25519 keys
- Added documentation for wallet-based SSH authentication in WALLET_SSH_AUTH.md.
- Introduced SSH key derivation and management in rootwallet core and CLI.
- Created commands for generating, loading, and unloading SSH keys in the CLI.
- Updated Orama network to support SSH key authentication.
- Added migration steps for nodes to transition from password-based to key-based authentication.

feat: add serverless function management commands

- Implemented function command structure in CLI for managing serverless functions.
- Added commands for initializing, building, deploying, invoking, deleting, and listing functions.
- Created helper functions for handling function configuration and API requests.
- Integrated TinyGo for building functions to WASM.
- Added logging and version management for deployed functions.
2026-02-19 10:51:03 +02:00
anonpenguin23
40600c3557 Enhance PID collection by adding namespace service support and extending timeout for systemd queries 2026-02-19 10:24:49 +02:00
anonpenguin23
aa2da83969 Bump version to 0.109.0 and add tests for TCP port waiting and Olric config YAML parsing 2026-02-19 08:57:32 +02:00
anonpenguin23
bb98418ac9 Unmask and re-enable services before restarting to ensure proper startup 2026-02-19 06:43:28 +02:00
anonpenguin23
b58e1d80ee Implement WireGuard peer authentication and enhance internal request validation 2026-02-19 06:43:06 +02:00
anonpenguin23
4f1709e136 Bug fixing 2026-02-18 11:20:16 +02:00
anonpenguin23
83804422c4 Namespace bug fix and fixing bugs on serverless and deployments 2026-02-17 15:57:32 +02:00
anonpenguin23
8aef779fcd Updated docs and bug fixing 2026-02-17 08:49:16 +02:00
anonpenguin23
0b5b6e68e3 A ton of updates on the monitoring mostly bug fixes 2026-02-16 16:35:29 +02:00
anonpenguin23
f889c2e358 Added some new alerts on monitoring 2026-02-16 11:47:18 +02:00
anonpenguin23
1e38fc2861 Created new monitoring cli interface for nodes, namespaces and cluster 2026-02-16 11:16:02 +02:00
anonpenguin23
865a4f3434 Refactored cli to make things more clear and easy to understand for developers 2026-02-16 10:31:17 +02:00
anonpenguin23
7163aad850 Refactor installation scripts and improve security measures
- Updated `clean-testnet.sh` to stop and disable legacy services.
- Added `upload-source.sh` for streamlined source archive uploads.
- Enhanced password input handling in `ssh.go` for better security.
- Adjusted directory permissions in `validator.go` for improved security.
- Simplified node configuration logic in `config.go`.
- Removed unnecessary commands from `gateway.go` to streamline installation.
2026-02-16 10:01:35 +02:00
anonpenguin23
bc9cbb3627 Moved everything to root user and to /opt/orama from home/orama/.orama 2026-02-14 14:33:38 +02:00
anonpenguin23
29d255676f Renamed debros to orama 2026-02-14 14:14:04 +02:00
anonpenguin23
ba4e2688e4 Updated installation process simplified it 2026-02-14 14:06:14 +02:00
anonpenguin23
749d5ed5e7 Bro i did so many things to fix the problematic discovery and redeployment and i dont even remember what i did 2026-02-14 10:56:26 +02:00
anonpenguin23
2986e64162 Writing more tests and fixed bug on rqlite address 2026-02-13 16:18:22 +02:00
anonpenguin23
1ab63857d3 Security audit, code cleanup 2026-02-13 14:33:11 +02:00