helm install platform-services oci://registry.company.com/helm-charts/platform-services --version 3.2.1 -n monitoring
helm install platform-services oci://registry.company.com/helm-charts/platform-services --version 3.2.1 -n monitoring
helm install platform-services oci://registry.company.com/helm-charts/platform-services --version 3.2.1 -n monitoring
# some-service/chart/Chart.yaml
dependencies: - name: platform-services version: "~3.2.0" repository: "https://charts.company.com" alias: monitoring
# some-service/chart/Chart.yaml
dependencies: - name: platform-services version: "~3.2.0" repository: "https://charts.company.com" alias: monitoring
# some-service/chart/Chart.yaml
dependencies: - name: platform-services version: "~3.2.0" repository: "https://charts.company.com" alias: monitoring
# gitops/apps/some-team/monitoring.yaml
apiVersion: argoproj.io/v1alpha1
kind: Application
spec: source: chart: platform-services repoURL: https://charts.company.com targetRevision: 3.2.1
# gitops/apps/some-team/monitoring.yaml
apiVersion: argoproj.io/v1alpha1
kind: Application
spec: source: chart: platform-services repoURL: https://charts.company.com targetRevision: 3.2.1
# gitops/apps/some-team/monitoring.yaml
apiVersion: argoproj.io/v1alpha1
kind: Application
spec: source: chart: platform-services repoURL: https://charts.company.com targetRevision: 3.2.1
# gitops/releases/monitoring.yaml
apiVersion: helm.toolkit.fluxcd.io/v2
kind: HelmRelease
spec: chart: spec: chart: platform-services version: ">=3.0.0 <4.0.0" sourceRef: kind: HelmRepository name: company-charts
# gitops/releases/monitoring.yaml
apiVersion: helm.toolkit.fluxcd.io/v2
kind: HelmRelease
spec: chart: spec: chart: platform-services version: ">=3.0.0 <4.0.0" sourceRef: kind: HelmRepository name: company-charts
# gitops/releases/monitoring.yaml
apiVersion: helm.toolkit.fluxcd.io/v2
kind: HelmRelease
spec: chart: spec: chart: platform-services version: ">=3.0.0 <4.0.0" sourceRef: kind: HelmRepository name: company-charts
grep -r "platform-services" --include="*.yaml" --include="*.yml" ~/repos/
grep -r "platform-services" --include="*.yaml" --include="*.yml" ~/repos/
grep -r "platform-services" --include="*.yaml" --include="*.yml" ~/repos/
# Traditional repository (in Chart.yaml dependencies)
repository: "https://charts.company.com" # OCI registry (in Chart.yaml dependencies, Helm 3.8+)
repository: "oci://registry.company.com/helm-charts" # OCI in a Flux HelmRepository
spec: type: oci url: oci://registry.company.com/helm-charts # Inline OCI reference in a helm CLI call
helm install platform-services oci://registry.company.com/helm-charts/platform-services --version 3.2.1
# Traditional repository (in Chart.yaml dependencies)
repository: "https://charts.company.com" # OCI registry (in Chart.yaml dependencies, Helm 3.8+)
repository: "oci://registry.company.com/helm-charts" # OCI in a Flux HelmRepository
spec: type: oci url: oci://registry.company.com/helm-charts # Inline OCI reference in a helm CLI call
helm install platform-services oci://registry.company.com/helm-charts/platform-services --version 3.2.1
# Traditional repository (in Chart.yaml dependencies)
repository: "https://charts.company.com" # OCI registry (in Chart.yaml dependencies, Helm 3.8+)
repository: "oci://registry.company.com/helm-charts" # OCI in a Flux HelmRepository
spec: type: oci url: oci://registry.company.com/helm-charts # Inline OCI reference in a helm CLI call
helm install platform-services oci://registry.company.com/helm-charts/platform-services --version 3.2.1
version: "~3.2.0" # patch-compatible only: >=3.2.0 <3.3.0
version: "^3.0.0" # minor-compatible: >=3.0.0 <4.0.0
version: ">=3.0.0 <4" # explicit range
version: "*" # any version (dangerous)
version: "~3.2.0" # patch-compatible only: >=3.2.0 <3.3.0
version: "^3.0.0" # minor-compatible: >=3.0.0 <4.0.0
version: ">=3.0.0 <4" # explicit range
version: "*" # any version (dangerous)
version: "~3.2.0" # patch-compatible only: >=3.2.0 <3.3.0
version: "^3.0.0" # minor-compatible: >=3.0.0 <4.0.0
version: ">=3.0.0 <4" # explicit range
version: "*" # any version (dangerous)
dependencies: - name: platform-services version: "~3.2.0" repository: "https://charts.company.com" alias: monitoring # the chart is installed as "monitoring", not "platform-services"
dependencies: - name: platform-services version: "~3.2.0" repository: "https://charts.company.com" alias: monitoring # the chart is installed as "monitoring", not "platform-services"
dependencies: - name: platform-services version: "~3.2.0" repository: "https://charts.company.com" alias: monitoring # the chart is installed as "monitoring", not "platform-services" - Not every team has migrated to GitOps. Some still run helm upgrade in CI pipelines or from engineer laptops.
- The GitOps manifests may live in many different repos — a central gitops repo, per-team repos, per-environment repos — rather than a single queryable location.
- ArgoCD's UI shows you the apps it's managing, but querying "show me every app that references chart platform-services" is not a built-in view. You'd need to iterate through the Application CRDs or query the Argo CD API.
- Flux doesn't have a central query surface for "which HelmRelease objects across all clusters reference chart X at version Y" — that information is spread across HelmRelease YAML files in whatever repos your GitOps setup uses. - Scans every repo in the org, including GitOps repos, service repos, and platform repos — without requiring registration or manual catalog entries
- Parses all reference formats — Chart.yaml dependencies, ArgoCD Application manifests, Flux HelmRelease CRDs, and helm install calls in CI configs and shell scripts
- Resolves OCI and HTTP registry references back to a canonical chart identity, so consumers using different registry URL formats for the same chart are recognised as the same dependency
- Evaluates version constraints rather than just matching exact version strings, so you know which consumers are within range of your next release
- Follows umbrella chart transitive dependencies, so second-order consumers are visible, not just direct chart references
- Keeps results current through regular rescans, not a one-time manual trawl