Commit graph

25 commits

Author SHA1 Message Date
admin
128e59c0e4 fix: download Docker from URL, not apt (works offline/air-gapped)
- DOCKER_DOWNLOAD_URL and WALLARM_IMAGE_URL env vars for custom sources
- Falls back to offline/ dir if present
- Docker installed under /opt/fw/docker/bin/
2026-08-03 14:38:59 +00:00
admin
587aa70554 feat: self-contained /opt/fw/ — Docker runtime, offline dir, connectivity check
- setup.sh checks git.sechpoint.app reachability first
- Docker installed under /opt/fw/docker/ (binaries + data)
- /opt/fw/offline/ for pre-downloaded binaries (air-gapped)
- /opt/fw/fw.conf — user-editable config
- All self-contained, no system-wide installs
2026-08-03 14:33:20 +00:00
admin
e25ea0560b feat: offline mode — drop binaries in /opt/fw/offline/
Offline deployment for air-gapped corporate environments:
- /opt/fw/offline/docker-29.2.1.tgz → Docker static binary
- /opt/fw/offline/wallarm-node.tar → Wallarm Docker image
- Setup auto-detects and uses offline files
- Falls back to apt/docker.io if no offline files
2026-08-03 14:29:14 +00:00
admin
fd641905e0 feat: offline mode — pre-download Docker + Wallarm image to /opt/fw/offline/ 2026-08-03 14:25:19 +00:00
admin
a906b21b99 fix: install Docker in setup.sh 2026-08-03 13:25:47 +00:00
admin
112bffb742 refactor: /opt/fw/deploy.sh wrapper, app/ subdir for main.py + config
- /opt/fw/deploy.sh — simple wrapper, user entry point
- /opt/fw/app/main.py — deploy script
- /opt/fw/app/fw.conf — node config
- /opt/fw/app/state.json — deployment state
- Instances stay at /opt/fw/{name}/wallarm/
2026-08-03 12:06:33 +00:00
admin
278d82441d fix: distro package fallback before pyenv for Python install 2026-08-03 11:47:03 +00:00
admin
43dfc6ec06 pivot: Python rewrite replacing Go — single deploy.py
- Single deploy.py (~400 lines) replaces all Go code
- setup.sh installs Python 3.12 via pyenv (cross-distro)
- Same functionality: menu, deploy, edit, remove, status, tunnel
- No build step — script runs directly
- Path patching and port offset in native Python
2026-08-03 11:09:08 +00:00
admin
e62efa5534 fix: setup.sh installs curl + git + go for all package managers 2026-08-03 10:38:36 +00:00
admin
83f73c0e9c simplify: setup.sh just builds and drops binary in /opt/fw/
No directory structure creation, no confusing messages.
Deploy binary handles everything else.
2026-08-01 17:00:43 +00:00
admin
b44da10ae7 fix: preflight URL, /opt/fw/ refactor complete 2026-08-01 16:55:53 +00:00
admin
f299f7f895 feat: show version on startup and in setup.sh output 2026-08-01 16:11:57 +00:00
admin
157373ea16 refactor: rename wallarm → deploy, deploy.sh → setup.sh
- setup.sh bootstraps /opt/wallarm/ structure, builds deploy binary
- deploy binary at /opt/wallarm/deploy (renamed from wallarm)
- /opt/wallarm/source/ — Go source for local rebuilds
- /opt/wallarm/nodes/{instance}/ — per-node directories
- cmd/deploy/main.go replaces cmd/wallarm/main.go
2026-08-01 15:39:56 +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
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
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
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