mcpbeat

Nvca Values Customization

nvidia/nvca-values-customization

Customize NVCA Operator Helm chart values in the native monorepo. Use when modifying vendored defaults, changing stack-derived install values, adding deployment-time overrides, or updating scripts under deploy/helm/nvca-operator.

823 tokens
context cost
the whole folder, loaded on every use
1
files
instructions only
0
copies elsewhere
how many repositories repackaged it
193
stars on the repo
on the repository, not the skill itself

Install

one command, takes just this skill from the repository
npx skills add https://github.com/NVIDIA/nvcf --skill nvca-values-customization

The instruction itself

7 sections, as written by the author

Customizing NVCA Operator Chart Values

Use this skill from deploy/helm/nvca-operator.

Values Flow

src/compute-plane-services/nvca/deployments/nvca-operator/   source chart
  -> scripts/ci_vendor_nvca_operator_chart                   applies self-managed defaults
  -> nvca-operator/values.yaml                               vendored chart values
  -> scripts/render_values_from_stack_env.sh                 stack-aware generated values
  -> make install or make install-from-stack                 optional additional overrides

Permanent Defaults

For defaults that every self-managed deployment should receive, edit

scripts/ci_vendor_nvca_operator_chart and re-vendor:

make vendor-chart
git diff nvca-operator/values.yaml

The vendoring script already applies defaults such as:

  • ngcConfig.clusterSource = "self-managed"
  • ngcConfig.serviceKey = "dummy-api-key"
  • image.tag = "$NVCA_OPERATOR_VERSION"
  • selfManaged.nvcaVersion = "$NVCA_VERSION"
  • generateImagePullSecret = false
  • selfManaged.sharedStorage.imageTag = "$NVCA_SHARED_STORAGE_IMAGE_TAG"
  • nameOverride = "nvca-operator"
  • fullnameOverride = "nvca-operator"

Do not edit nvca-operator/values.yaml directly for a permanent default. The

next vendor run will overwrite it.

Deploy-time Overrides

Use additional_values for one-off validation or environment-specific values:

make install-from-stack \
  stack_repo=../../../deploy/stacks/self-managed \
  stack_env=local \
  additional_values=override.yml

Use deploy-time overrides for secrets, credentials, cluster-specific IDs, and

temporary validation changes.

Adding .env Inputs

For version-like values that the vendoring script needs, add a variable to

.env, require it in scripts/ci_vendor_nvca_operator_chart, and re-vendor:

MY_NEW_CONFIG=some-value
update_yaml_key ".myConfig = \"${MY_NEW_CONFIG:?MY_NEW_CONFIG is not set}\"" "${TARGET_DIR}/values.yaml"

Validation

make lint
make template
make validate
tools/ci/validate-helm-chart deploy/helm/nvca-operator/nvca-operator \
  -f tools/ci/helm-validate-values/nvca-operator.yaml

Gotchas

  • Install-time values are layered after generated stack-aware values.
  • Use yq carefully for nested keys and quoted strings.
  • Keep Chart.yaml name/version changes in the vendoring script when they are

part of the self-managed packaging contract.

  • Never commit real service keys or rendered secret material.

How to use it

Copy the folder

Take nvidia/nvca-values-customization from the repository into ~/.claude/skills for personal use, or into .claude/skills inside a project.

Check the name does not clash

The agent identifies a skill by the name field in its header. Two skills with the same name cannot sit side by side — one of them will be ignored.