Skip to content

Pin docker-cli and compose to exact apk versions - #76

Closed
ChiragAgg5k wants to merge 1 commit into
mainfrom
fix/pin-docker-cli
Closed

Pin docker-cli and compose to exact apk versions#76
ChiragAgg5k wants to merge 1 commit into
mainfrom
fix/pin-docker-cli

Conversation

@ChiragAgg5k

Copy link
Copy Markdown
Member

Summary

  • Pin docker-cli=29.5.2-r0 and docker-cli-compose=2.40.3-r6 in the final image (same versions already shipped in 1.4.4)
  • Tighten structure tests to assert those exact CLI/Compose versions
  • Document in CHANGES as 1.4.5

This stops Alpine package floats from silently bumping the Docker client in future base builds. It does not downgrade the client; hosts on older Engine APIs (e.g. max 1.42) still need a separate compatibility approach.

Test plan

  • CI structure tests pass (docker --version / docker compose version)
  • Confirm build fails clearly if Alpine drops these exact package versions from the 3.23 community repo

Made with Cursor

Lock docker-cli=29.5.2-r0 and docker-cli-compose=2.40.3-r6 so Alpine
floats cannot silently bump the installer Docker client.

Co-authored-by: Cursor <cursoragent@cursor.com>
Comment thread tests.yaml
command: "docker"
args: ["--version"]
expectedOutput: ["Docker version 29.*"]
expectedOutput: ["Docker version 29.5.2.*"]

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

P2 Exact version regex is loose

The periods in 29.5.2 are regex wildcards and the expression lacks a version boundary, so output such as Docker version 29x5x20 can satisfy a test intended to enforce the exact Docker CLI version.

Suggested change
expectedOutput: ["Docker version 29.5.2.*"]
expectedOutput: ["Docker version 29[.]5[.]2($|,)"]
Prompt To Fix With AI
This is a comment left during a code review.
Path: tests.yaml
Line: 19

Comment:
**Exact version regex is loose**

The periods in `29.5.2` are regex wildcards and the expression lacks a version boundary, so output such as `Docker version 29x5x20` can satisfy a test intended to enforce the exact Docker CLI version.

```suggestion
    expectedOutput: ["Docker version 29[.]5[.]2($|,)"]
```

---

For each issue above, determine whether it is valid and should be fixed. If so, fix it directly.

Fix in Claude Code Fix in Codex

@greptile-apps

greptile-apps Bot commented Jul 30, 2026

Copy link
Copy Markdown

Greptile Summary

Pins the Docker CLI packages and updates release documentation and structure tests.

  • Pins docker-cli to 29.5.2-r0 and docker-cli-compose to 2.40.3-r6.
  • Updates command tests to check Docker CLI 29.5.2 and Compose 2.40.3 output.
  • Adds the 1.4.5 changelog entry describing these pins.

Confidence Score: 4/5

The PR appears safe to merge, with a non-blocking correction recommended so the Docker CLI structure test genuinely enforces the intended exact version.

The package pins are internally consistent with the stated release versions, while the Docker CLI test’s regex metacharacters and missing boundary allow unintended output to satisfy the new assertion.

Files Needing Attention: tests.yaml

Important Files Changed

Filename Overview
Dockerfile Replaces floating Docker CLI and Compose package dependencies with exact APK revisions.
tests.yaml Tightens version checks, but the Docker CLI pattern does not enforce literal, exact semantic-version components.
CHANGES.md Documents the package pins and associated structure-test updates for version 1.4.5.

Fix All in Claude Code Fix All in Codex

Prompt To Fix All With AI
### Issue 1
tests.yaml:19
**Exact version regex is loose**

The periods in `29.5.2` are regex wildcards and the expression lacks a version boundary, so output such as `Docker version 29x5x20` can satisfy a test intended to enforce the exact Docker CLI version.

```suggestion
    expectedOutput: ["Docker version 29[.]5[.]2($|,)"]
```

---

For each issue above, determine whether it is valid and should be fixed. If so, fix it directly.

Reviews (1): Last reviewed commit: "Pin docker-cli and compose apk packages ..." | Re-trigger Greptile

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.

1 participant