The TBS automatic dependency updater is configured in tap-values.yaml but buildpacks, stacks, and builders are not being updated automatically between releases, despite the following configuration being present:
buildservice:
dependency_updates:
allow: true
scope: allThe tbs-dependencies-package-repository PackageRepository reconciles successfully and newer Package CRs are visible in the cluster via kubectl get packages -n tap-install, but the corresponding PackageInstall objects for buildpacks and stacks remain pinned to their original versions.
TBS 1.12.x
The dependency_updates configuration must be provided in the full dependencies values file (tbs-full-deps-values.yaml), which is the values source for the full-deps PackageInstall. This is the package that actually owns and manages the dependency PackageInstall objects for buildpacks, stacks, and builders, and is therefore the correct consumer of the dependency_updates block.
Step 1: Retrieve the current full-deps values to confirm existing configuration:
kubectl get secret full-deps-tap-install-values \
-n tap-install \
-o jsonpath='{.data.values\.yml}' | base64 -dStep 2: Update tbs-full-deps-values.yaml to include the dependency_updates block:
kp_default_repository: harbor.example/tbs2/tbs
kp_default_repository_secret:
name: kp-default-repository
namespace: tap-install
dependency_updates:
allow: true
scope: allStep 3: Apply the updated values to the full-deps PackageInstall:
tanzu package installed update full-deps \
--namespace tap-install \
--values-file tbs-full-deps-values.yamlStep 4: Verify the full-deps PackageInstall reconciled successfully:
tanzu package installed get full-deps -n tap-installStep 5: Confirm PackageInstall versions are being updated:
kubectl get packageinstall -n tap-install | \
grep -E "buildpack|stack|builder"