mirror of
https://github.com/angristan/openvpn-install.git
synced 2025-12-12 07:22:41 +01:00
Add Docker-based E2E testing (#1320)
### Summary - Add automated end-to-end testing using Docker to verify the installation script works across 18 Linux distributions - Add Oracle Linux 9 support to the installation script - Drop support for EOL distributions (Debian 8/9/10, CentOS 7, Ubuntu 16.04) - Disable Digital Ocean droplets based end-to-end tests, let's use docker from now on ### Changes **New test infrastructure:** - `test/Dockerfile.server` - Multi-OS server image with `BASE_IMAGE` build arg - `test/Dockerfile.client` - Ubuntu 24.04 client for connectivity testing - `test/server-entrypoint.sh` - Runs install script, verifies files exist, asserts iptables NAT rules, starts OpenVPN - `test/client-entrypoint.sh` - Connects to VPN, verifies tun0 interface, pings gateway - `docker-compose.yml` - Orchestrates server + client with shared volume - `.github/workflows/docker-test.yml` - CI matrix testing 18 OS variants - `.github/workflows/test.yml` - Removed push/PR triggers, now manual only for DO tests - `Makefile` - Local testing commands (`make test`, `make test-ubuntu-24.04`, etc.) **Distributions tested (18 total):** | Family | Versions | |--------|----------| | Ubuntu | 18.04, 20.04, 22.04, 24.04 | | Debian | 11, 12 | | Fedora | 40, 41 | | Rocky Linux | 8, 9 | | AlmaLinux | 8, 9 | | Oracle Linux | 8, 9 | | Amazon Linux | 2, 2023 | | CentOS Stream | 9 | | Arch Linux | latest |
This commit is contained in:
27
README.md
27
README.md
@@ -132,26 +132,23 @@ export PASS="1"
|
||||
|
||||
The script supports these Linux distributions:
|
||||
|
||||
| | Support |
|
||||
| ---------------------- | ------- |
|
||||
| AlmaLinux 8 | ✅ |
|
||||
| Amazon Linux 2 | ✅ |
|
||||
| Amazon Linux >= 2023.6 | ✅ |
|
||||
| Arch Linux | ✅ |
|
||||
| CentOS 7 | ✅ |
|
||||
| CentOS Stream >= 8 | ✅ 🤖 |
|
||||
| Debian >= 10 | ✅ 🤖 |
|
||||
| Fedora >= 35 | ✅ 🤖 |
|
||||
| Oracle Linux 8 | ✅ |
|
||||
| Rocky Linux 8 | ✅ |
|
||||
| Ubuntu >= 18.04 | ✅ 🤖 |
|
||||
| | Support |
|
||||
| ------------------ | ------- |
|
||||
| AlmaLinux >= 8 | ✅ 🤖 |
|
||||
| Amazon Linux 2 | ✅ 🤖 |
|
||||
| Amazon Linux 2023 | ✅ 🤖 |
|
||||
| Arch Linux | ✅ 🤖 |
|
||||
| CentOS Stream >= 8 | ✅ 🤖 |
|
||||
| Debian >= 11 | ✅ 🤖 |
|
||||
| Fedora >= 40 | ✅ 🤖 |
|
||||
| Oracle Linux >= 8 | ✅ 🤖 |
|
||||
| Rocky Linux >= 8 | ✅ 🤖 |
|
||||
| Ubuntu >= 18.04 | ✅ 🤖 |
|
||||
|
||||
To be noted:
|
||||
|
||||
- The script is regularly tested against the distributions marked with a 🤖 only.
|
||||
- It's only tested on `amd64` architecture.
|
||||
- It should work on older versions such as Debian 8+, Ubuntu 16.04+ and previous Fedora releases. But versions not in the table above are not officially supported.
|
||||
- It should also support versions between the LTS versions, but these are not tested.
|
||||
- The script requires `systemd`.
|
||||
|
||||
## Fork
|
||||
|
||||
Reference in New Issue
Block a user