Skip to content

chore: verify ccache checksum#1100

Merged
Ron (rjaegers) merged 2 commits intomainfrom
chore/verify-ccache-checksum
Jan 23, 2026
Merged

chore: verify ccache checksum#1100
Ron (rjaegers) merged 2 commits intomainfrom
chore/verify-ccache-checksum

Conversation

@rjaegers
Copy link
Copy Markdown
Member

🚀 Hey, I have created a Pull Request

Description of changes

This pull request updates the .devcontainer/cpp/Dockerfile to improve how the ccache binary is downloaded, extracted, and installed in the development container. The changes streamline the build process by moving ccache handling into earlier build stages and removing redundant installation steps.

Key improvements to the container build process:

ccache integration and installation:

  • Added architecture-specific download and checksum verification for the ccache binary in both the downloader-amd64 and downloader-arm64 stages, ensuring the correct binary is used for each architecture.
  • Updated the extractor stage to extract the ccache binary from the downloaded archive and prepare it for installation.
  • Modified the final installation step to copy the extracted ccache binary into /usr/local/bin/ccache alongside xwin.
  • Removed the redundant ccache installation command that downloaded and extracted ccache in the final image, since this is now handled in earlier stages.

General Dockerfile improvements:

  • Added comments and minor formatting changes to clarify the installation steps and improve maintainability.

✔️ Checklist

  • I have followed the contribution guidelines for this repository
  • I have added tests for new behavior, and have not broken any existing tests
  • I have added or updated relevant documentation
  • I have verified that all added components are accounted for in the SBOM

@rjaegers Ron (rjaegers) requested a review from a team as a code owner January 23, 2026 07:54
Copilot AI review requested due to automatic review settings January 23, 2026 07:54
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

This pull request refactors the ccache installation process in the C++ devcontainer to improve security and maintainability by adding checksum verification and moving installation logic to earlier build stages.

Changes:

  • Added checksum verification for ccache downloads using SHA-256 hashes for both AMD64 and ARM64 architectures
  • Moved ccache download and extraction to the multi-stage build process alongside xwin
  • Removed the previous inline download-and-extract ccache installation step

Comment thread .devcontainer/cpp/Dockerfile Outdated
Comment thread .devcontainer/cpp/Dockerfile Outdated
@github-actions
Copy link
Copy Markdown
Contributor

github-actions Bot commented Jan 23, 2026

📦 Container Size Analysis

Note

Comparing ghcr.io/philips-software/amp-devcontainer-base:edgeghcr.io/philips-software/amp-devcontainer-base:pr-1100

📈 Size Comparison Table

OS/Platform Previous Current Change Trend
linux/amd64 165.43 MB 165.43 MB +606 B (+0%) 🔼
linux/arm64 158.37 MB 158.37 MB +566 B (+0%) 🔼

@github-actions
Copy link
Copy Markdown
Contributor

github-actions Bot commented Jan 23, 2026

⚠️MegaLinter analysis: Success with warnings

Descriptor Linter Files Fixed Errors Warnings Elapsed time
✅ ACTION actionlint 20 0 0 0.5s
✅ DOCKERFILE hadolint 3 0 0 0.66s
✅ GHERKIN gherkin-lint 6 0 0 2.36s
✅ JSON npm-package-json-lint yes no no 0.48s
✅ JSON prettier 21 4 0 0 0.5s
✅ JSON v8r 21 0 0 7.59s
✅ MARKDOWN markdownlint 12 0 0 0 0.93s
✅ MARKDOWN markdown-table-formatter 12 0 0 0 0.25s
✅ REPOSITORY checkov yes no no 17.38s
✅ REPOSITORY gitleaks yes no no 0.5s
✅ REPOSITORY git_diff yes no no 0.01s
✅ REPOSITORY grype yes no no 28.39s
✅ REPOSITORY secretlint yes no no 0.91s
✅ REPOSITORY syft yes no no 1.93s
✅ REPOSITORY trivy yes no no 5.53s
✅ REPOSITORY trivy-sbom yes no no 0.23s
✅ REPOSITORY trufflehog yes no no 2.34s
⚠️ SPELL lychee 80 4 0 21.68s
✅ YAML prettier 28 0 0 0 0.91s
✅ YAML v8r 28 0 0 7.71s
✅ YAML yamllint 28 0 0 0.9s

Detailed Issues

⚠️ SPELL / lychee - 4 errors
[IGNORED] docker://pandoc/extra:3.7.0@sha256:a703d335fa237f8fc3303329d87e2555dca5187930da38bfa9010fa4e690933a | Unsupported: Error creating request client: builder error for url (docker://pandoc/extra:3.7.0@sha256:a703d335fa237f8fc3303329d87e2555dca5187930da38bfa9010fa4e690933a)
[ERROR] https://www.conventionalcommits.org/en/v1.0.0/ | Network error: error sending request for url (https://www.conventionalcommits.org/en/v1.0.0/) Maybe a certificate error?
[ERROR] https://www.conventionalcommits.org/en/v1.0.0/ | Error (cached)
[403] https://developer.arm.com/downloads/-/arm-gnu-toolchain-downloads | Network error: Forbidden
[ERROR] https://docs.sigstore.dev/cosign/signing/overview/ | Network error: error sending request for url (https://docs.sigstore.dev/cosign/signing/overview/) Maybe a certificate error?
[IGNORED] https://vscode.dev/redirect?url=vscode://ms-vscode-remote.remote-containers/cloneInVolume?url=https://github.com/philips-software/amp-devcontainer | Unsupported: Error creating request client: builder error for url (vscode://ms-vscode-remote.remote-containers/cloneInVolume?url=https://github.com/philips-software/amp-devcontainer)
📝 Summary
---------------------
🔍 Total..........126
✅ Successful.....120
⏳ Timeouts.........0
🔀 Redirected.......0
👻 Excluded.........0
❓ Unknown..........0
🚫 Errors...........4

Errors in .github/CONTRIBUTING.md
[ERROR] https://www.conventionalcommits.org/en/v1.0.0/ | Network error: error sending request for url (https://www.conventionalcommits.org/en/v1.0.0/) Maybe a certificate error?

Errors in .github/TOOL_VERSION_ISSUE_TEMPLATE.md
[403] https://developer.arm.com/downloads/-/arm-gnu-toolchain-downloads | Network error: Forbidden

Errors in README.md
[ERROR] https://www.conventionalcommits.org/en/v1.0.0/ | Error (cached)
[ERROR] https://docs.sigstore.dev/cosign/signing/overview/ | Network error: error sending request for url (https://docs.sigstore.dev/cosign/signing/overview/) Maybe a certificate error?

See detailed reports in MegaLinter artifacts

Your project could benefit from a custom flavor, which would allow you to run only the linters you need, and thus improve runtime performances. (Skip this info by defining FLAVOR_SUGGESTIONS: false)

  • Documentation: Custom Flavors
  • Command: npx mega-linter-runner@9.3.0 --custom-flavor-setup --custom-flavor-linters ACTION_ACTIONLINT,DOCKERFILE_HADOLINT,GHERKIN_GHERKIN_LINT,JSON_V8R,JSON_PRETTIER,JSON_NPM_PACKAGE_JSON_LINT,MARKDOWN_MARKDOWNLINT,MARKDOWN_MARKDOWN_TABLE_FORMATTER,REPOSITORY_CHECKOV,REPOSITORY_GIT_DIFF,REPOSITORY_GITLEAKS,REPOSITORY_GRYPE,REPOSITORY_SECRETLINT,REPOSITORY_SYFT,REPOSITORY_TRIVY,REPOSITORY_TRIVY_SBOM,REPOSITORY_TRUFFLEHOG,SPELL_LYCHEE,YAML_PRETTIER,YAML_YAMLLINT,YAML_V8R

MegaLinter is graciously provided by OX Security

@sonarqubecloud
Copy link
Copy Markdown

@github-actions
Copy link
Copy Markdown
Contributor

📦 Container Size Analysis

Note

Comparing ghcr.io/philips-software/amp-devcontainer-rust:edgeghcr.io/philips-software/amp-devcontainer-rust:pr-1100

📈 Size Comparison Table

OS/Platform Previous Current Change Trend
linux/amd64 545.84 MB 545.84 MB +567 B (+0%) 🔼
linux/arm64 500.48 MB 500.48 MB +718 B (+0%) 🔼

@github-actions
Copy link
Copy Markdown
Contributor

📦 Container Size Analysis

Note

Comparing ghcr.io/philips-software/amp-devcontainer-cpp:edgeghcr.io/philips-software/amp-devcontainer-cpp:pr-1100

📈 Size Comparison Table

OS/Platform Previous Current Change Trend
linux/amd64 681.24 MB 681.23 MB 2.08 kB (0%) 🔽
linux/arm64 663.14 MB 663.14 MB 111 B (0%) 🔽

@github-actions
Copy link
Copy Markdown
Contributor

Test Results

 7 files  ±0   7 suites  ±0   3m 34s ⏱️ -5s
33 tests ±0  33 ✅ ±0  0 💤 ±0  0 ❌ ±0 
69 runs  ±0  69 ✅ ±0  0 💤 ±0  0 ❌ ±0 

Results for commit 98072d7. ± Comparison against base commit e7aec51.

@rjaegers Ron (rjaegers) added this pull request to the merge queue Jan 23, 2026
Merged via the queue into main with commit 9254783 Jan 23, 2026
42 checks passed
@rjaegers Ron (rjaegers) deleted the chore/verify-ccache-checksum branch January 23, 2026 10:55
@github-actions
Copy link
Copy Markdown
Contributor

Pull Request Report (#1100)

Static measures

Description Value
Number of added lines 15
Number of deleted lines 7
Number of changed files 1
Number of commits 2
Number of reviews 2
Number of comments (w/o review comments) 6
Number of reviews that contains a comment to resolve 1
Number of reviews that requested a change from the author 0
Number of reviews that approved the Pull Request 1
Get the total number of participants of a Pull Request 5

Time related measures

Description Value
PR lead time (from creation to close of PR) 3 Hours
Time that was spend on the branch before the PR was created 5.3 Min
Time that was spend on the branch before the PR was merged 3.1 Hours
Time to merge after last review 2 Hours

Status check related measures

Description Value
Total runtime for last status check run (Workflow for PR) 51.4 Min
Total time spend in last status check run on PR 26.7 Min

@github-actions
Copy link
Copy Markdown
Contributor

🎉 Hooray! The changes in this pull request went live with the release of v6.7.1 🎉

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.

3 participants