Update: registry cache and update to Ghost version 5.112.0#596
Update: registry cache and update to Ghost version 5.112.0#596pascalandy wants to merge 5 commits intomasterfrom
Conversation
Update the Ghost v5 workflow to use a registry-based build cache instead of GHA cache. This improves cache reliability and performance for Docker builds.
WalkthroughThe GitHub Actions workflow for Docker image building was updated to replace the Docker build cache from GitHub Actions cache to a registry-based cache. Both the edge and stable build jobs now use a Docker registry cache image with adjusted Changes
Sequence Diagram(s)sequenceDiagram
participant GitHubActions
participant DockerRegistry
GitHubActions->>DockerRegistry: Pull build cache image (cache-from: type=registry)
GitHubActions->>DockerRegistry: Build and push Docker image
GitHubActions->>DockerRegistry: Push updated build cache image (cache-to: type=registry, mode=max)
Possibly related PRs
📜 Recent review detailsConfiguration used: .coderabbit.yaml 📒 Files selected for processing (2)
🧰 Additional context used🪛 dotenv-linter (3.3.0).env[warning] 6-6: [QuoteCharacter] The value has quote characters (', ") [warning] 6-6: [UnorderedKey] The APP_VERSION key should go before the GITHUB_USER key ⏰ Context from checks skipped due to timeout of 90000ms (1)
🔇 Additional comments (2)
✨ Finishing Touches
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. 🪧 TipsChatThere are 3 ways to chat with CodeRabbit:
SupportNeed help? Create a ticket on our support page for assistance with any issues or questions. Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments. CodeRabbit Commands (Invoked using PR comments)
Other keywords and placeholders
Documentation and Community
|
There was a problem hiding this comment.
Actionable comments posted: 1
📜 Review details
Configuration used: .coderabbit.yaml
Review profile: ASSERTIVE
Plan: Pro
📒 Files selected for processing (1)
.github/workflows/ghostv5.yml(2 hunks)
🔇 Additional comments (1)
.github/workflows/ghostv5.yml (1)
291-292: Validate registry cache operations
Moving to a registry-based cache depends on successful GHCR authentication and network reliability. Verify thedocker/login-actionstep passes and run a dry-run to confirm cache pull/push flows under both normal and failure conditions.
Overview
Environment Variables (8 changes)
-GHOST_CLI_VERSION=1.27.0
-GHOST_CONTENT=/var/lib/ghost/content
-GHOST_INSTALL=/var/lib/ghost
-GOSU_VERSION=1.17
-NODE_ENV=production
-NODE_VERSION=20.19.2-alpine3.22
+NODE_VERSION=20.19.2
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
-USER=node
-VERSION=5.112.0
YARN_VERSION=1.22.22Labels (15 changes)
-com.firepress.image.base_os=
-com.firepress.image.ghost_cli_version=1.27.0
-com.firepress.image.node_env=production
-com.firepress.image.node_version=20.19.2-alpine3.22
-com.firepress.image.schema_version=1.0
-com.firepress.image.user=node
-org.opencontainers.image.authors=Pascal Andy https://firepress.org/en/contact/
-org.opencontainers.image.created=
-org.opencontainers.image.description=Docker image for Ghost 5.112.0
-org.opencontainers.image.licenses=GNUv3 https://github.com/pascalandy/GNU-GENERAL-PUBLIC-LICENSE/blob/master/LICENSE.md
-org.opencontainers.image.revision=
-org.opencontainers.image.source=https://github.com/firepress-org/ghostfire
-org.opencontainers.image.title=Ghost
-org.opencontainers.image.url=https://hub.docker.com/r/devmtl/ghostfire/tags/
-org.opencontainers.image.vendor=https://firepress.org/Packages and Vulnerabilities (1204 package changes and 124 vulnerability changes)
Changes for packages of type
|
| Package | Versiondevmtl/ghostfire:edge |
Versionnode:20.19.2-alpine3.22 |
|
|---|---|---|---|
| ➖ | bash | 5.2.37-r0 |
|
| ➖ | brotli | 1.1.0-r2 |
|
| ➖ | brotli-libs | 1.1.0-r2 |
|
| ➖ | c-ares | 1.34.5-r0 |
|
| ➖ | curl | 8.14.1-r0 |
|
| ➖ | libcurl | 8.14.1-r0 |
|
| ➖ | libidn2 | 2.3.7-r0 |
|
| ➖ | libncursesw | 6.5_p20250503-r0 |
|
| ➖ | libpsl | 0.21.5-r3 |
|
| ➖ | libunistring | 1.3-r0 |
|
| ➖ | ncurses | 6.5_p20250503-r0 |
|
| ➖ | ncurses-terminfo-base | 6.5_p20250503-r0 |
|
| ➖ | nghttp2 | 1.65.0-r0 |
|
| ➖ | nghttp2-libs | 1.65.0-r0 |
|
| ➖ | readline | 8.2.13-r1 |
|
| ➖ | zstd | 1.5.7-r0 |
|
| ➖ | zstd-libs | 1.5.7-r0 |
Changes for packages of type generic (1 changes)
| Package | Versiondevmtl/ghostfire:edge |
Versionnode:20.19.2-alpine3.22 |
|
|---|---|---|---|
| ➕ | node | 20.19.2 |
Changes for packages of type github (1 changes)
| Package | Versiondevmtl/ghostfire:edge |
Versionnode:20.19.2-alpine3.22 |
|
|---|---|---|---|
| ➖ | node | 20.19.2-alpine3.22 |
Changes for packages of type golang (4 changes)
Changes for packages of type npm (1181 changes)
There was a problem hiding this comment.
Actionable comments posted: 2
♻️ Duplicate comments (1)
.github/workflows/ghostv5.yml (1)
284-292: Duplicate: Refine comment formatting.Same formatting nitpick in the stable job—replace
<docker push -tag>with backticks or plain text for consistency.
📜 Review details
Configuration used: .coderabbit.yaml
Review profile: ASSERTIVE
Plan: Pro
📒 Files selected for processing (1)
.github/workflows/ghostv5.yml(3 hunks)
⏰ Context from checks skipped due to timeout of 90000ms (1)
- GitHub Check: build_edge
Each workflow run now gets a unique cache identifier using ${{ github.run_id }}
This prevents concurrent builds from writing to the same cache location
Eliminates race conditions that could occur when multiple jobs try to write cache simultaneously
Maintains cache functionality while ensuring safe concurrent operations
Update the Ghost v5 workflow to use a registry-based build cache instead of GHA cache. This improves cache reliability and performance for Docker builds.
Summary by CodeRabbit