Add 40 Docker Hub images and TEA dedup workflow#10
Merged
Conversation
- Add SBOM configs and workflows for top 40 Docker Hub official images (postgres, python, node, mysql, mongo, httpd, rabbitmq, traefik, mariadb, golang, alpine, ubuntu, debian, ruby, wordpress, php, sonarqube, haproxy, influxdb, nextcloud, tomcat, maven, eclipse-mosquitto, telegraf, bash, ghost, solr, kong, zookeeper, neo4j, gradle, mongo-express, eclipse-temurin, perl, cassandra, drupal, memcached, registry, redis, nginx/chainguard) - Add tea-sync.yml hourly workflow to detect docker/chainguard image changes and rebuild SBOMs via the existing sbom-builder - Update sbom-builder.yml to three-phase approach: build augmented SBOM locally, check TEA for existing hash, upload only if new - Fix docker-attestation.sh multi-arch manifest handling (was using --platform which skips the index-level attestation manifests) - Skip semver validation for docker/chainguard source types in common.sh - Add product_id to dependency-track configs - Rename sbomify/github-action to sbomify/sbomify-action Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Add scripts/check-updates.sh for checking upstream version updates across all apps (supports --type, --app, --update, --json flags) - Add OS images: fedora, rockylinux, amazonlinux, oraclelinux - Add language images: rust, swift, elixir, erlang, r-base, haskell, julia - Fix eclipse-mosquitto: 2.1.2 -> 2.1.2-alpine (bare tag doesn't exist) - Fix trivy: 0.68.2 -> 0.69.3 (old release was deleted) - Remove nextcloud (no SBOM attestation in image, only SLSA provenance) - Update README with check-updates usage Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Reorganize projects table into categories (OS, Languages, Databases, Web Servers, Applications, Build Tools, Infrastructure, Security Tools) and add TEI column for TEA discovery of each SBOM. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Avoids re-downloading ~50MB of tool binaries on every job run. Cache key is versioned so bumping tool versions invalidates it. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Cache sbom.json/lockfile per app+version to skip Docker Hub and Chainguard pulls when the version hasn't changed - Verify SHA-256 checksums for all downloaded tool binaries (yq, crane, cosign) before installing Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Download checksum files from each tool's GitHub release and verify against them, instead of hardcoding hashes. This means version bumps only require changing the version env vars. - yq: verify against checksums-bsd from release - crane: verify against checksums.txt from release - cosign: verify against cosign_checksums.txt from release - Move COSIGN_VERSION to workflow-level env var Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
tea-sync.yml) that detects docker/chainguard apps and triggers the SBOM builder — deduplication is handled in the builder itselfsbom-builder.ymlto a three-phase approach: (1) build augmented SBOM locally without upload, (2) check TEA for existing SBOM hash, (3) upload only if the SBOM is newdocker-attestation.sh— multi-arch manifest handling was broken (used--platformwhich skips index-level attestation manifests)sbomify/github-action→sbomify/sbomify-actionproduct_idto dependency-track configsTest plan
🤖 Generated with Claude Code