Commit graph

176 commits

Author SHA1 Message Date
admin
c169887fed feat: remote assistance — deploy locally or open tunnel for admin
Startup flow now offers:
- [1] Deploy locally — config wizard, deploys on this server
- [2] Remote assistance — prompts for jumphost URL, user, password
  (or SSH key path), opens reverse TLS:443 tunnel so a remote admin
  can connect and run deployment through their terminal.

Tunnel now supports password auth in addition to key auth.
2026-08-01 14:47:49 +00:00
admin
58faccbb27 fix: source-based deploy.sh — clones repo, builds binary
Gitea server has strict HTTP body limits (~1MB) preventing binary
uploads.  deploy.sh now clones the repo and builds from source using
Go (auto-installed if missing).

Build takes ~30 seconds.  Binary is ~7MB stripped, ~2MB with UPX.
2026-08-01 14:37:28 +00:00
admin
67d9a6a7d8 build: UPX compression — binary 6.9MB → 2.1MB (70% smaller)
UPX with --best --lzma compresses the Go binary for distribution.
Integrated into Makefile targets (fallback if upx not installed).
2026-08-01 14:33:43 +00:00
admin
c64f12a360 chore: Makefile release target with versioned builds 2026-08-01 14:32:23 +00:00
admin
19d16b1e4a fix: deploy.sh uses Gitea releases API instead of raw branch
Binary is now distributed via Gitea releases (not committed to repo).
deploy.sh queries API for latest release tag and downloads the correct
architecture binary.
2026-08-01 14:32:03 +00:00
admin
ff5a09b994 refactor: drop Docker, single-binary native-only world
Removed:
- docker/ (scripts, binaries, images) - no longer needed
- native/, common/ bash scripts - replaced by Go binary
- setup.sh - replaced by deploy.sh
- internal/docker/ Go package - no longer needed

Added:
- deploy.sh - one-command bootstrap
- --version flag

Result: one binary, one TUI, one deployment type. Zero Docker.
Binary distributed via Gitea releases (not in repo).
2026-08-01 14:31:25 +00:00
admin
1a11e40c66 feat: wired TUI form to deployment — wizard actually deploys now
- Wizard: type pick → cloud region → token → node config → deploys via native.InstallNode / docker.DeployContainer
- State saved after successful deployment with API token
- Dashboard reflects real node state from ~/.wallarm/state.json
- Removed old unused HuhForm stub
2026-08-01 13:59:25 +00:00
admin
2db33343a8 feat: native and docker deployment packages + Makefile
- internal/native/ — systemd units, installer download, node install/remove/status
  (ported from wallarm-native.sh)
- internal/docker/ — Docker engine install (apt/yum/apk), image load, container
  deploy/remove/status (ported from wallarm-ct-deploy.sh)
- Makefile — cross-compile targets (linux-amd64, linux-arm64)
2026-08-01 13:55:28 +00:00
admin
dfd7180556 feat: bubbletea TUI — wizard + dashboard
- Wizard: type pick → cloud region → token → node config (huh forms)
- Dashboard: node list with status, action shortcuts
- Auto-routes based on ~/.wallarm/state.json existence
- Replaces text stubs with proper interactive TUI
2026-08-01 13:16:08 +00:00
admin
1a2a0fbd7b feat: Go binary — preflight, state, tunnel over TLS:443
Single-binary wallarm deployment manager:
- shared/ — system detection, validation, connectivity (port of wallarm-lib.sh)
- preflight/ — mandatory checks on every start (OS, arch, disk, memory, cloud)
- state/ — ~/.wallarm/state.json persistence (nodes, deployment type)
- tunnel/ — reverse SSH tunnel over TLS:443 via Zoraxy edge proxy
- cmd/wallarm/main.go — auto-detect state, route to wizard or dashboard

wallarm-docker.sh wrapper delegates to existing ct-* scripts for now.
2026-08-01 09:25:22 +00:00
admin
62ddaaa9c5 feat: cloud region selection in native script, rename deploy script
- wallarm-native.sh: added cloud region (US/EU) selection step during
  --install. Preflight now saves reachability to US_CLOUD_REACHABLE/
  EU_CLOUD_REACHABLE globals, select_cloud_region() prompts user,
  API_HOST passed through to env file and installer.
- wallarm-ct-deploy.sh renamed to wallarm-docker.sh (reflects Docker
  binary usage, leaves room for podman variant).
- setup.sh: updated next-steps reference for renamed script.
2026-08-01 08:58:50 +00:00
admin
0ee73f5af3 refactor: download repo archive once, copy selected folders to deploy
- Replaces per-file curl downloads with single archive download
  (tar.gz from Gitea), extracts only common/ + selected type folder.
- Interactive prompt uses /dev/tty when stdin is piped (curl|bash).
- Falls back to both only when fully headless.
- Post-extract sed patch fixes library sourcing path for flat deploy/
  until source scripts are updated in the repo.
2026-08-01 08:50:14 +00:00
admin
68fbb25db2 fix: interactive deploy type selection, flat deploy/ dir, set -u crash fix
- setup.sh: ask user which deployment type (docker/native/both) instead
  of silently downloading everything; uses env var for piped mode
- All scripts now download to single flat deploy/ directory instead of
  separate common/docker/native dirs
- Post-download sed patch fixes library sourcing path until repo is
  synced
- wallarm-native.sh: fix set -u crash when declare -a used without =()
  (user hitting blank node name triggered unbound variable crash)
- All deployment scripts: library source path changed from
  ../common/wallarm-lib.sh to same-directory wallarm-lib.sh
2026-08-01 08:44:38 +00:00
Sechpoint Admin
0622638a12 docs: correct deployment environment guidance (Docker=VM, Native=containers)
Docker inside LXC containers is problematic, so the Docker deployment is
intended for full VMs; the native deployment is ideal for any container
environment (LXC, Proxmox containers, etc.).
2026-08-01 08:55:35 +01:00
Sechpoint Admin
d9b53c6c18 refactor: make wallarm-native.sh the sole native deployment script
Remove the native/wallarm-ct-*.sh scripts (NGINX-module based native
deployment) so the wallarm-ct-* family is Docker-only and the native
deployment is represented by the unified wallarm-native.sh manager.
Update setup.sh (native downloads only wallarm-native.sh), README and
changelog.
2026-08-01 08:53:07 +01:00
Sechpoint Admin
537beed957 fix: make setup.sh download both deployment types under curl|bash
The interactive deployment-type prompt read from stdin, which is the script
pipe (not the terminal) when piped to bash, so it was silently skipped and
only Docker scripts were downloaded. setup.sh is now non-interactive by
default and downloads BOTH deployment types (docker/ + native/) so the native
option is always available; DEPLOYMENT_TYPE=docker|native restricts to one.
Also guard clear and drop the broken overwrite confirmation.
2026-08-01 08:45:29 +01:00
Sechpoint Admin
aa3d716f61 feat: add native deployment and separate docker|native structure
- Restructure repo into docker/ and native/ deployment types with a shared
  common/wallarm-lib.sh (logging, detection, validation, connectivity, env parsing)
- Move Docker scripts + artifacts (binaries/, images/) under docker/ (git mv, history preserved)
- Refactor Docker scripts to source the shared library; update artifact URLs
- Add native/ scripts for no-Docker deployment using the Wallarm all-in-one installer
  (check, deploy, reconfigure, uninstall) with version pinning via WALLARM_VERSION
- Add native/wallarm-native.sh unified node manager (Wallarm Native Node, connector
  mode) with preflight checks, parallel multi-node install, config/remove/status
- Update setup.sh to download scripts per deployment type (DEPLOYMENT_TYPE=...)
- Update README.md and changelog.md
2026-08-01 08:36:37 +01:00
Sechpoint Admin
424786b181 chore: add notes/ to .gitignore 2026-07-30 12:29:46 +01:00
administrator
4881759fd6 chore: auto-commit 2026-05-04 12:12 2026-05-04 12:12:38 +01:00
administrator
c07c7afd6d fix: correct URL pattern to /raw/branch/main for download compatibility
- Revert GIT_RAW_URL from /src/branch/main to /raw/branch/main in deployment scripts
- Remove Forgejo references that were inadvertently re-added to README.md
- Update changelog to document URL correction
2026-04-21 10:31:02 +01:00
administrator
509909de09 chore: remove Forgejo references and fix setup URL
- Remove all Forgejo branding from codebase for neutrality
- Update setup.sh header comments and banner
- Fix download URL in README from /raw/branch/main/ to /src/branch/main/
- Update changelog to document additional changes
2026-04-21 10:14:03 +01:00
administrator
c278d5a381 chore: add changelog with version 2026-04.1
- Add initial changelog.md file following Keep a Changelog format
- Implement date-based versioning schema (YYYY-MM.x)
- Document recent changes from commit 3158ee7
- Record variable renaming, URL updates, and fallback simplification
2026-04-21 09:41:03 +01:00
administrator
3158ee7ab1 chore: refactor git references and remove internal registry fallback
- Rename GITLAB variables to GIT prefix
- Update GIT_RAW_URL to use src/branch/main path
- Replace 'GitLab' with 'Git Repositorys' in comments/logs
- Remove internal registry/download fallback options
- Update priority chains to two-tier fallback (primary + local)
- Sync documentation with new terminology
2026-04-21 09:34:42 +01:00
administrator
be7f247ef3 chore: auto-commit 2026-03-30 07:09 2026-03-30 07:09:38 +01:00
administrator
044c386234 chore: auto-commit 2026-03-30 07:02 2026-03-30 07:02:34 +01:00
administrator
6b8186f496 chore: auto-commit 2026-03-30 06:58 2026-03-30 06:58:19 +01:00
administrator
c5beca562b chore: auto-commit 2026-03-30 06:54 2026-03-30 06:54:23 +01:00
administrator
22eaefdc2d chore: auto-commit 2026-03-30 06:52 2026-03-30 06:52:21 +01:00
administrator
cdff390ae0 chore: auto-commit 2026-03-30 06:40 2026-03-30 06:40:37 +01:00
administrator
19866a97a9 chore: auto-commit 2026-03-30 06:33 2026-03-30 06:33:38 +01:00
cclohmar
f1a31beadd chore: auto-commit 2026-03-24 20:00 2026-03-24 20:00:52 +00:00
cclohmar
3dcc4f8cff chore: auto-commit 2026-03-24 19:59 2026-03-24 19:59:02 +00:00
cclohmar
b4b7181e1f chore: auto-commit 2026-03-24 19:00 2026-03-24 19:00:33 +00:00
cclohmar
f6c46d767c chore: auto-commit 2026-03-24 18:35 2026-03-24 18:35:01 +00:00
cclohmar
abdaea3e76 chore: auto-commit 2026-03-24 14:16 2026-03-24 14:16:47 +00:00
cclohmar
b48777d0b4 chore: auto-commit 2026-03-24 13:29 2026-03-24 13:29:19 +00:00
cclohmar
aa88f19df1 chore: auto-commit 2026-03-24 12:51 2026-03-24 12:51:26 +00:00
cclohmar
a15c4a7c84 chore: auto-commit 2026-03-20 14:56 2026-03-20 14:56:23 +00:00
cclohmar
4f9bbc48af chore: auto-commit 2026-03-18 22:03 2026-03-18 22:03:54 +00:00
cclohmar
5fdf9e384f chore: auto-commit 2026-03-18 21:29 2026-03-18 21:29:24 +00:00
cclohmar
70a417a990 chore: auto-commit 2026-03-18 21:24 2026-03-18 21:24:07 +00:00
cclohmar
9441ee4fb3 chore: auto-commit 2026-03-18 21:16 2026-03-18 21:16:35 +00:00
cclohmar
2e349cf279 chore: auto-commit 2026-03-18 20:59 2026-03-18 20:59:00 +00:00
cclohmar
66928424a4 chore: auto-commit 2026-03-18 20:56 2026-03-18 20:56:57 +00:00
cclohmar
9005d8c79e chore: auto-commit 2026-03-18 20:54 2026-03-18 20:54:45 +00:00
cclohmar
0d56c63c3c chore: auto-commit 2026-03-18 20:44 2026-03-18 20:44:48 +00:00
cclohmar
66b6a7d17b chore: auto-commit 2026-03-18 20:39 2026-03-18 20:39:53 +00:00
cclohmar
4ceedb8d7a chore: auto-commit 2026-03-18 20:33 2026-03-18 20:33:00 +00:00
cclohmar
6a1c5fc1a3 chore: auto-commit 2026-03-18 19:43 2026-03-18 19:43:45 +00:00
cclohmar
6af44a977e chore: auto-commit 2026-03-18 14:14 2026-03-18 14:14:10 +00:00