# 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 ### Fixed - **setup.sh interactive prompt broken under `curl ... | bash`**: the deployment-type prompt and overwrite confirmation read from stdin, which is the script pipe (not the terminal) when piped to bash — the prompt 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. Use `DEPLOYMENT_TYPE=docker|native` to download only one type. ### Added - **Native deployment**: Wallarm filtering node can now be deployed directly on the OS **without Docker** via the unified manager `native/wallarm-native.sh` (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@.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/` – native (no-Docker) deployment, containing only the unified `wallarm-native.sh` - `common/` – shared library - **Removed** the `native/wallarm-ct-*.sh` scripts (NGINX-module based native deployment) so the native deployment is represented solely by the unified `wallarm-native.sh`; the `wallarm-ct-*` family is now Docker-only - **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** downloads the shared library and scripts per deployment type into `docker/`/`native/` (native = `wallarm-native.sh`); supports `DEPLOYMENT_TYPE=docker|native` to download only one type - **README.md** rewritten to document both deployment types, the new structure, and the unified native manager ### Notes - The `wallarm-ct-*` script family is Docker-only; native deployment uses `wallarm-native.sh` - Native multi-node is supported via per-node systemd template units - Docker deployment behavior is unchanged apart from the new directory layout ## [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