Skip to content

[Bug]: ArgoCD application ComparisonError when using OCI bundle to deploy recipe #519

Description

@lalitadithya

Prerequisites

  • I searched existing issues and found no duplicates
  • I can reproduce this issue consistently
  • This is not a security vulnerability (use Security Advisories instead)

Bug Description

I'm creating a OCI bundle for a recipe:

$ aicr bundle --recipe recipe.yaml -o oci://nvcr.io/foo/aicr-bundles:v0.0.0-lke.2 --deployer argocd --repo oci://nvcr.io/foo/aicr-bundles:v0.0.0-lke.2
[cli] generating bundle: deployer=argocd type=ArgoCD applications recipe=/home/ladithyav/Repositories/ladithyav/aicr/recipe.yaml output=./bundle oci=true
[cli] bundle generated: type=ArgoCD applications files=21 size_bytes=23120 duration_sec=0.00536668 output_dir=./bundle
[cli] packaging and pushing bundle as OCI artifact: registry=nvcr.io repository=foo/aicr-bundles tag=v0.0.0-lke.2
[cli] OCI artifact packaged locally: reference=nvcr.io/foo/aicr-bundles:v0.0.0-lke.2 digest=sha256:8677eca6980e5e4f7a748ac08e89e7f3dd6f4b8b4ef023641b035280f082d21a store_path=/home/ladithyav/Repositories/ladithyav/aicr/bundle/oci-layout
[cli] pushing OCI artifact to remote registry: registry=nvcr.io repository=foo/aicr-bundles tag=v0.0.0-lke.2
[cli] OCI artifact pushed successfully: reference=nvcr.io/foo/aicr-bundles:v0.0.0-lke.2 digest=sha256:8677eca6980e5e4f7a748ac08e89e7f3dd6f4b8b4ef023641b035280f082d21a

and when I apply the app of apps, I see the following error on all the applications that are created by the app of apps and not the app of apps itself:

Failed to load target state: failed to generate manifest for source 1 of 2: rpc error: code = Unknown desc = failed to get git client for repo {{ .RepoURL }}

I suspect this is because the templating wasn't run on the individual applications themselves

apiVersion: argoproj.io/v1alpha1
kind: Application
metadata:
  name: cert-manager
  namespace: argocd
  annotations:
    argocd.argoproj.io/sync-wave: "0"
spec:
  project: default
  sources:
    - repoURL: https://charts.jetstack.io
      chart: cert-manager
      targetRevision: 1.17.2
      helm:
        valueFiles:
          - $values/cert-manager/values.yaml
    - repoURL: '{{ .RepoURL }}'
      targetRevision: main
      ref: values
  destination:
    server: https://kubernetes.default.svc
    namespace: cert-manager
  syncPolicy:
    automated:
      prune: true
      selfHeal: true
    syncOptions:
      - CreateNamespace=true

Impact

Blocking (cannot proceed)

Component

Bundlers (gpu-operator, network-operator, etc.)

Regression?

Unknown / first time using this feature

Steps to Reproduce

  1. aicr bundle --recipe recipe.yaml -o oci://nvcr.io/foo/aicr-bundles:v0.0.0-lke.2 --deployer argocd --repo oci://nvcr.io/foo/aicr-bundles:v0.0.0-lke.2
  2. Apply the app of apps

Expected Behavior

No ArgoCD error

Actual Behavior

ArgoCD error

Failed to load target state: failed to generate manifest for source 1 of 2: rpc error: code = Unknown desc = failed to get git client for repo {{ .RepoURL }}

Environment

  • AICR version (CLI aicr version, API image tag, or commit SHA): built from head of main
  • Install method (release binary / build from source / container image): build from source
  • Platform (eks/gke/aks/self-managed): lke
  • Kubernetes version: NA
  • OS (ubuntu/cos/other) + version: Ubuntu
  • Kernel version: NA
  • GPU type (h100/gb200/a100/l40/other): rtx 6000
  • Workload intent (training/inference): NA

Command / Request Used

No response

Logs / Error Output

Additional Context

No response

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Fields

No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions