Add: psql, mariadb, sqlite#7
Conversation
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Organization UI Review profile: ASSERTIVE Plan: Pro Plus Run ID: 📒 Files selected for processing (1)
📜 Recent review details⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (1)
🧰 Additional context used🪛 Hadolint (2.14.0)Dockerfile[warning] 92-92: Pin versions in apt get install. Instead of (DL3008) 🔇 Additional comments (2)
📝 WalkthroughWalkthroughAdds database CLI clients (psql, mariadb/mysql, sqlite3) to the Dockerfile with a POSTGRESQL_CLIENT_VERSION build arg; updates Changes
Estimated code review effort🎯 3 (Moderate) | ⏱️ ~25 minutes Poem
🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches🧪 Generate unit tests (beta)
Comment |
There was a problem hiding this comment.
Actionable comments posted: 1
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Inline comments:
In `@Dockerfile`:
- Around line 92-103: The current multi-command piped RUN that imports the PGDG
key should be rewritten to use explicit intermediate files and individual checks
so failures aren't masked by pipelines: in the Dockerfile RUN block that
references TARGETARCH and POSTGRESQL_CLIENT_VERSION, first curl the ASC key into
a temp file and check its exit status, then run gpg --dearmor reading that temp
file and write to /etc/apt/keyrings/postgresql.gpg (or a temp gpg file and move
it), verify the gpg command succeeded, then create the sources.list.d entry
using the TARGETARCH and lsb_release substitution, run apt-get update and
apt-get install postgresql-client-${POSTGRESQL_CLIENT_VERSION} with explicit
checks, remove /var/lib/apt/lists/* and temp files, and finally run psql
--version to confirm installation; this eliminates piping and ensures
deterministic failure points.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Organization UI
Review profile: ASSERTIVE
Plan: Pro Plus
Run ID: 4feb8c61-bff1-427b-b2de-c0004c8300bd
📒 Files selected for processing (5)
.claude/settings.local.json.devcontainer/example/devcontainer.json.env.exampleDockerfileREADME.md
📜 Review details
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (1)
- GitHub Check: Build and Push
🧰 Additional context used
🪛 Hadolint (2.14.0)
Dockerfile
[warning] 92-92: Pin versions in apt get install. Instead of apt-get install <package> use apt-get install <package>=<version>
(DL3008)
[warning] 92-92: Set the SHELL option -o pipefail before RUN with a pipe in it. If you are using /bin/sh in an alpine image or if your shell is symlinked to busybox then consider explicitly setting your SHELL to /bin/ash, or disable this check
(DL4006)
🔇 Additional comments (5)
.devcontainer/example/devcontainer.json (1)
38-39: Good mount layering forknown_hostspersistence.This keeps the broader SSH directory read-only while allowing host key updates to persist across rebuilds.
.claude/settings.local.json (1)
1-10: Scoped permission list looks appropriately constrained.The allow-list is explicit and limited to MariaDB-related domains.
Dockerfile (1)
62-67: Database client additions are clear and consistent with the image scope.Nice inclusion of MariaDB and SQLite CLIs in the base system package layer.
.env.example (1)
17-24: Version reference + new PostgreSQL pin are well aligned.
POSTGRESQL_CLIENT_VERSIONin.env.examplematches the new Docker build argument and keeps local-build overrides coherent.Also applies to: 46-47
README.md (1)
32-34: Docs update is accurate and useful.The new database CLI rows in “What’s Inside” correctly reflect the tooling added in this PR.
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
There was a problem hiding this comment.
Actionable comments posted: 1
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Inline comments:
In `@Dockerfile`:
- Around line 92-103: In the Dockerfile RUN block that adds the PGDG repo (using
TARGETARCH and POSTGRESQL_CLIENT_VERSION and ending with psql --version), remove
the temporary artifacts after installing postgresql-client: delete
/etc/apt/sources.list.d/postgresql.list and the GPG file
/etc/apt/keyrings/postgresql.gpg (and ensure /tmp/postgresql.asc is removed), so
the PGDG APT source and key do not persist for later apt-get update steps (keep
the install steps unchanged, just add cleanup of those files at the end of that
RUN).
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Organization UI
Review profile: ASSERTIVE
Plan: Pro Plus
Run ID: 4c66c24e-33bb-41c2-bd32-0fefa5d143fa
📒 Files selected for processing (1)
Dockerfile
📜 Review details
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (1)
- GitHub Check: Build and Push
🧰 Additional context used
🪛 Hadolint (2.14.0)
Dockerfile
[warning] 92-92: Pin versions in apt get install. Instead of apt-get install <package> use apt-get install <package>=<version>
(DL3008)
🔇 Additional comments (1)
Dockerfile (1)
62-67: Good placement of new DB clients in the existing system-packages layer.This keeps layer count and cache behavior consistent with the rest of the Dockerfile.
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Summary by CodeRabbit
New Features
Documentation
Chores