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

86 lines
No EOL
5.7 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
### 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@<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/` 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