Skip to content

Templating 8.4#505

Merged
Peter-Sh merged 78 commits intorelease/8.4from
templating_8.4
Jan 26, 2026
Merged

Templating 8.4#505
Peter-Sh merged 78 commits intorelease/8.4from
templating_8.4

Conversation

@Peter-Sh
Copy link
Copy Markdown
Contributor

This includes all workflow changes from unstable, fixes and templating from #503 for release/8.4

adobrzhansky and others added 30 commits December 17, 2025 04:13
Use uv instead of docker to run release-automation tool instead
Introduce more fine grained redis version (release_tag) handling
Rewrite release_build_and_test workflow to handle all sorts of
notification routing:
	Route everything directly to requested thread for non regular
	releases
	Duplicate links to announcmenets in the requested thread in case
	of public releases
Create release handle for all types of releases, the minimal version
would contain only list of images that have been built
Ability to override release_branch in ensure-branch for testing purposes
Introduce validation of release_tag, release_type and run_type variables

That way the responsibility of identifing whether the release is public
is on the caller side
In the workflow we only validate for obvious errors and incorrect
values.
Peter-Sh and others added 27 commits January 13, 2026 17:32
Flexible slack messaging and some release process modifications
Make REDIS_DOWNLOAD_SHA conditionally required
Installing clang that way hasn't been accepted by docker team as the
apt source is nightly
This PR is intended to fix issues raised by the Docker team: docker-library/official-images#20699 (comment)
Templating for Dockerfiles

To enable custom builds, I introduced Dockerfile templating based on Jinja2. Since we already have a Python-based release-automation tool, this was implemented as a new render-dockerfile command.
Major changes:

    Redis versions are now declared in the .redis.version.json file, which is used as context for the templates
    Added Dockerfile.j2 templates for each distribution
    custom_build is no longer used as a Dockerfile ARG, but only as a Jinja2 template variable that enables certain sections in the Dockerfile
    Introduced an action that validates all Dockerfiles are in sync with their corresponding templates (with custom_build=false)
    Simplified the "apply docker version" action to use templating for updating Redis versions during releases
    Added ./bin/render-all-dockerfiles.sh script to help render all templates in various places

clang-21 issue

Reverted clang-21 source and installation, as there is no reliable way to install the latest version on Trixie.
@jit-ci
Copy link
Copy Markdown

jit-ci bot commented Jan 26, 2026

🛡️ Jit Security Scan Results

CRITICAL HIGH MEDIUM

🚨 Summary

• Shell injection vulnerability detected in GitHub Actions workflow

• Missing '--no-cache' flag in 'apk add' command in Dockerfile

• Both issues could potentially impact security and image size

🔍 Findings

HIGH - 2 findings HIGH
1. Shell Injection Vulnerability in GitHub Actions
ID Type Finding File Severity
ea580111cb yaml.github-actions.security.run-shell-injection.run-shell-injection Shell Injection Vulnerability in GitHub Actions - Using variable interpolation with 'github' context data in a 'run:' step could allow code injection. This poses a risk of secret and code theft. .github/workflows/release_publish.yml (lines 209-231) HIGH

🔍 AI Analysis: This is a critical vulnerability affecting a GitHub Actions workflow, which could lead to unauthorized access to sensitive information.

Remediation:

- run: |
-   # Create release_info.json with all fields, then filter out empty ones
+ env:
+   GITHUB_CONTEXT: ${{ toJson(github) }}
+ run: |
+   # Create release_info.json with all fields, then filter out empty ones
+   GITHUB_CONTEXT="$GITHUB_CONTEXT"
2. Missing '--no-cache' Flag in 'apk add' Command
ID Type Finding File Severity
95e30a09bb DS025 Missing '--no-cache' Flag in 'apk add' Command - The 'apk add' command is used without the '--no-cache' flag. This can lead to increased image size due to cached package data. alpine/Dockerfile (lines 19-145) HIGH

🔍 AI Analysis: This issue affects the Dockerfile, which is a key component in building the container image. It impacts image size and potentially security.

Remediation:

- RUN apk add --update ...
+ RUN apk add --no-cache --update ...

▶️ Advanced Options

Help section with supported ignore actions and syntax.

Need to ignore a finding? Use commands like:

@sera ignore <finding_id> reason:accepted (reason is optional)

@sera ignore all reason:other - this is a test PR (reason is optional)

@sera ignore type:run-shell-injection

@sera ignore type:DS025


Security scan by Jit

@Peter-Sh Peter-Sh merged commit 51353a2 into release/8.4 Jan 26, 2026
21 of 22 checks passed
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.

4 participants