Skip to content

MOD-13779 | MOD-13574 | MOD-13811 Dockerize CI, add AL2023 and macos-…#1500

Merged
AvivDavid23 merged 2 commits into8.0from
8.0-ci
Feb 9, 2026
Merged

MOD-13779 | MOD-13574 | MOD-13811 Dockerize CI, add AL2023 and macos-…#1500
AvivDavid23 merged 2 commits into8.0from
8.0-ci

Conversation

@AvivDavid23
Copy link
Contributor

@AvivDavid23 AvivDavid23 commented Feb 8, 2026

…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 an arch + OS matrix.

Adds new Dockerfile.* images (including Amazon Linux 2023 and Alpine) plus .install/install_redis.sh to build Redis from a provided ref inside containers, and introduces sbin/upload-artifacts-s3 for 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 covering macos-14, macos-15, and macos-26.

Pins setuptools to <81 across test/dependency installs to avoid build breakage.

Written by Cursor Bugbot for commit 57e727d. This will update automatically on new commits. Configure here.

…26 (#1494)

* MOD-13779 Dockerize CI

* MOD-13574 AL2023

* MOD-13811 MACOS-26
@codecov
Copy link

codecov bot commented Feb 8, 2026

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 78.97%. Comparing base (5a44d47) to head (57e727d).
⚠️ Report is 12 commits behind head on 8.0.

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.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.


# Install git and build tools first
RUN dnf install -y git make wget openssl openssl-devel which \
rsync unzip clang tar
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

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.

Fix in Cursor Fix in Web

Copy link

@cursor cursor bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Cursor Bugbot has reviewed your changes and found 2 potential issues.

# 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
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

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)

Fix in Cursor Fix in Web

RLTest ~= 0.7.2
redis ~= 5.0.8
six >= 1.10.0
gevent >= 22.10.2
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

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".

Fix in Cursor Fix in Web

@AvivDavid23 AvivDavid23 merged commit e814a0e into 8.0 Feb 9, 2026
37 of 38 checks passed
@AvivDavid23 AvivDavid23 deleted the 8.0-ci branch February 9, 2026 08:59
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants