wallarm/changelog.md
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

88 lines
No EOL
5.8 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Changelog
All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to date-based versioning (YYYY-MM.x).
## [2026-08.1] - 2026-08-01
### Added
- **Native deployment type**: Wallarm filtering node can now be deployed directly on the OS **without Docker**
- `native/wallarm-ct-check.sh` Preflight validation for native deployment (no Docker artifact checks)
- `native/wallarm-ct-deploy.sh` Downloads and runs the official Wallarm all-in-one installer (`meganode.wallarm.com`, version configurable via `WALLARM_VERSION`), configures the NGINX server block, reloads and verifies the node
- `native/wallarm-ct-reconfigure.sh` Update trusted proxies / `wallarm_mode` via NGINX test + reload
- `native/wallarm-ct-uninstall.sh` Remove NGINX config, Wallarm packages/repos, and `/opt/wallarm` data
- **Unified node manager**: `native/wallarm-native.sh` single-script manager for the Wallarm Native Node (go-node, connector-server mode)
- `--preflight` checks (root, systemd, architecture, required commands, installer + Wallarm cloud connectivity, disk/memory, listen-port availability); auto-run before `--install`
- Interactive parallel multi-node installation with per-node systemd template units (`wallarm-node@<name>.service`)
- `--config` (address/token/labels, safe env rewrite), `--remove`, `--status [NODE]`
- All-in-one installer from `repo.wallarm.com` (overridable via `WALLARM_INSTALLER_URL`/`WALLARM_INSTALLER_ARCH`)
- **Shared library**: `common/wallarm-lib.sh` extracted and reused by both deployment types
- Colors, logging (`log_message`, `fail_with_remediation`), early error handler
- System detection (OS/arch/init), network connectivity tests
- Preflight `.env` parsing (`load_env_file`), cloud region selection (`select_cloud_region`)
- Validation helpers (IP, CIDR, port), artifact download + checksum verification
### Changed
- **Repository structure** now separates deployment types:
- `docker/` all Docker-based scripts moved here (`git mv`, history preserved)
- `docker/binaries/` and `docker/images/` Docker artifacts moved into the Docker tree
- `native/` new native (no-Docker) deployment scripts
- `common/` shared library
- **Artifact URLs** updated to the `docker/` prefix (`/docker/binaries/...`, `/docker/images/...`)
- **Docker scripts** refactored to source `common/wallarm-lib.sh` (removed duplicated helper functions; behavior preserved)
- **setup.sh** now prompts for a deployment type (`docker` or `native`), downloads the matching scripts into `docker/` or `native/` (native now includes `wallarm-native.sh`); supports `DEPLOYMENT_TYPE=native` for non-interactive use
- **README.md** rewritten to document both deployment types, the new structure, the unified manager, and native-specific usage
### Notes
- Native deployment supports one node per host (system NGINX); multi-node remains a Docker feature
- Native installer version defaults to `6.12.7` and can be pinned via `WALLARM_VERSION`
- Docker deployment behavior is unchanged apart from the new directory layout
- The unified manager targets the Wallarm **Native Node** product; the `native/wallarm-ct-*.sh` scripts target the **NGINX-module** native deployment. Both are no-Docker options
## [2026-04.1] - 2026-04-21
### Added
- Initial changelog file with versioning schema
- Date-based versioning system (YYYY-MM.x)
### Changed
- **Variable renaming**: All `GITLAB_*` variables renamed to `GIT_*` prefix
- `GITLAB_BASE_URL``GIT_BASE_URL`
- `GITLAB_RAW_URL``GIT_RAW_URL` (with updated path)
- `GITLAB_DOCKER_BINARY_URL``GIT_DOCKER_BINARY_URL`
- `GITLAB_DOCKER_CHECKSUM_URL``GIT_DOCKER_CHECKSUM_URL`
- `GITLAB_WALLARM_IMAGE_URL``GIT_WALLARM_IMAGE_URL`
- `GITLAB_WALLARM_CHECKSUM_URL``GIT_WALLARM_CHECKSUM_URL`
- `GITLAB_REACHABLE``GIT_REACHABLE`
- **URL structure**: Updated `GIT_RAW_URL` from `/-/raw/main` to `/raw/branch/main` path (corrected for download compatibility)
- **Terminology**: Replaced all "GitLab" references in comments and log messages with "Git Repositorys"
- **Documentation**: Updated README.md to reflect new terminology
- **URL correction**: Corrected setup.sh download URL in README.md back to `/raw/branch/main/` pattern for download compatibility
- **Branding**: Removed all Forgejo references from codebase and documentation for neutrality
- **Fallback chains**: Simplified from three-tier to two-tier approach
- Docker binary: `Git Repositorys → local dir → current dir` (removed `→ internal proxy`)
- Wallarm image: `Git Repositorys → local dir → current dir` (removed `→ internal registry`)
### Removed
- Internal registry fallback options and related variables:
- `INTERNAL_DOCKER_REGISTRY` and `INTERNAL_DOCKER_DOWNLOAD`
- `DOCKER_REGISTRY_HOST` and `DOCKER_DOWNLOAD_HOST`
- `DOCKER_STATIC_BASE_URL` and `WALLARM_IMAGE_SOURCE`
- Connectivity tests for internal registry/download servers
- Remediation instructions mentioning internal fallback options
- All references to internal proxy/registry in error messages
### Technical Details
- **Commits**:
- `3158ee7` (chore: refactor git references and remove internal registry fallback)
- `509909d` (chore: remove Forgejo references and fix setup URL)
- **Files modified**: 4 files changed, additional modifications
- `README.md` - Documentation updates and URL fixes
- `setup.sh` - URL base update and Forgejo reference removal
- `wallarm-ct-check.sh` - Variable renaming and logic simplification
- `wallarm-ct-deploy.sh` - Variable renaming and fallback chain updates
### Notes
- Scripts maintain backward compatibility with existing artifact URLs
- Simplified error handling focuses on primary Git Repositorys source and local files
- No functional changes to core deployment logic