MOD-13779 | MOD-13574 | MOD-13811 Dockerize CI, add AL2023 and macos-…#1500
MOD-13779 | MOD-13574 | MOD-13811 Dockerize CI, add AL2023 and macos-…#1500AvivDavid23 merged 2 commits into8.0from
Conversation
…26 (#1494) * MOD-13779 Dockerize CI * MOD-13574 AL2023 * MOD-13811 MACOS-26
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## 8.0 #1500 +/- ##
==========================================
- Coverage 79.24% 78.97% -0.27%
==========================================
Files 15 15
Lines 3729 3744 +15
==========================================
+ Hits 2955 2957 +2
- Misses 774 787 +13 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
|
|
||
| # Install git and build tools first | ||
| RUN dnf install -y git make wget openssl openssl-devel which \ | ||
| rsync unzip clang tar |
There was a problem hiding this comment.
Dockerfile.amazonlinux2023 missing GCC causes build failure
High Severity
Dockerfile.amazonlinux2023 only installs clang but is missing gcc or any C compiler that provides a cc binary. The install_redis.sh script runs make which expects a default C compiler. All other Dockerfiles in this PR (e.g., Dockerfile.azurelinux3, Dockerfile.focal, Dockerfile.rocky9) install gcc, but this one does not. The Docker build will fail when attempting to compile Redis.
| # Install Redis (SANITIZER can be 'address' for ASAN builds) | ||
| ARG REDIS_REF=unstable | ||
| ARG SANITIZER= | ||
| RUN chmod +x /workspace/.install/install_redis.sh && REDIS_REF=${REDIS_REF} SANITIZER=${SANITIZER} /workspace/.install/install_redis.sh |
There was a problem hiding this comment.
GCC devtoolset not activated during Redis build in Docker
Medium Severity
The source /opt/rh/devtoolset-11/enable command on line 19 runs in its own RUN layer, so the environment changes are lost when the layer completes. Subsequent RUN commands, including the install_redis.sh on line 29, execute in a fresh shell without the devtoolset environment. Redis gets built with the older system GCC (7.x) instead of the intended devtoolset-11 (GCC 11). The same issue affects Dockerfile.rocky8 where gcc-toolset-11 is installed but only copied to /etc/profile.d/ without being sourced before building Redis.
Additional Locations (1)
| RLTest ~= 0.7.2 | ||
| redis ~= 5.0.8 | ||
| six >= 1.10.0 | ||
| gevent >= 22.10.2 |
There was a problem hiding this comment.
Misspelled filename requierments_docker.txt
Low Severity
The filename requierments_docker.txt is misspelled; the correct spelling is requirements. While the code functions correctly because the typo is used consistently throughout all Dockerfiles, this introduces a confusing naming convention that may cause issues if someone later creates a correctly-spelled file or searches for "requirements".


…26 (#1494)
MOD-13779 Dockerize CI
MOD-13574 AL2023
MOD-13811 MACOS-26
Note
Medium Risk
CI/build pipeline is significantly refactored (new Docker-based matrix, new packaging/upload path), so failures could block releases or artifact publishing despite limited impact on product runtime code.
Overview
Reworks CI to run Linux builds inside per-distro Docker images via a new reusable
flow-linux.yml, replacing the previous x86/ARM/Alpine/AzureLinux ARM workflows and standardizing on anarch+ OS matrix.Adds new
Dockerfile.*images (including Amazon Linux 2023 and Alpine) plus.install/install_redis.shto build Redis from a provided ref inside containers, and introducessbin/upload-artifacts-s3for container-friendly S3 uploads (with optional beta uploads).Updates event workflows (
event-ci,event-nightly,event-weekly,event-tag) to call the new Linux flow (including valgrind) and adjusts macOS builds to an arm64-only matrix coveringmacos-14,macos-15, andmacos-26.Pins
setuptoolsto<81across test/dependency installs to avoid build breakage.Written by Cursor Bugbot for commit 57e727d. This will update automatically on new commits. Configure here.