NVIDIA / NVIDIA/nvcf

Bazel consolidation phase 4: centralize OCI, platform, and stamping contracts

Open
#452 0 comments 0 reactions 1 assignee View on GitHub

@balajinvda is already working on this.

Since Jul 26, 2026.

ci
Dominant language
Go
Stars
218
Forks
72
Avg merge
1d 12h
Merged PRs (30d)
427

Description

Description

Phase 4 of #448. Centralize the OCI, platform, and stamping contracts behind one API,
covering Go, Rust, multi-binary images, extra layers, environment, entrypoints,
platforms, and registry outputs.

Measured on main: 120 copied rules/oci files totalling 6944 lines, and 20
workspace_status.sh copies in 7 variants. These copies contain real behavioral
differences, so this is a shared API with per-component configuration, not a
mechanical deletion.

This phase gates every service migration and must land before any service moves.

Definition of Done

  • One OCI and stamping API, with per-component configuration.
  • Equivalence gate: image manifests and configuration compared before and after for
    every affected service.
  • Per-service version stamping defined, given that one workspace-status command runs
    once per Bazel invocation while releases stay per service.
  • Tag prefixes, artifact names, and registry destinations unchanged.

Resources

  • #448
  • #431 (java_oci_image macro)

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.