Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package argocd-cli for openSUSE:Factory 
checked in at 2025-08-26 14:57:11
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/argocd-cli (Old)
 and      /work/SRC/openSUSE:Factory/.argocd-cli.new.30751 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "argocd-cli"

Tue Aug 26 14:57:11 2025 rev:47 rq:1301351 version:3.1.1

Changes:
--------
--- /work/SRC/openSUSE:Factory/argocd-cli/argocd-cli.changes    2025-08-20 
13:28:14.419720449 +0200
+++ /work/SRC/openSUSE:Factory/.argocd-cli.new.30751/argocd-cli.changes 
2025-08-26 14:57:22.411335481 +0200
@@ -1,0 +2,6 @@
+Tue Aug 26 05:07:28 UTC 2025 - Johannes Kastl 
<[email protected]>
+
+- Update to version 3.1.1:
+  * No CLI-related changes in the changelog
+
+-------------------------------------------------------------------

Old:
----
  argocd-cli-3.1.0.obscpio

New:
----
  argocd-cli-3.1.1.obscpio

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ argocd-cli.spec ++++++
--- /var/tmp/diff_new_pack.b3FAKl/_old  2025-08-26 14:57:24.107406517 +0200
+++ /var/tmp/diff_new_pack.b3FAKl/_new  2025-08-26 14:57:24.107406517 +0200
@@ -19,7 +19,7 @@
 %define executable_name argocd
 
 Name:           argocd-cli
-Version:        3.1.0
+Version:        3.1.1
 Release:        0
 Summary:        CLI for the ArgoCD declarative continuous deployment tool
 License:        Apache-2.0

++++++ _service ++++++
--- /var/tmp/diff_new_pack.b3FAKl/_old  2025-08-26 14:57:24.143408024 +0200
+++ /var/tmp/diff_new_pack.b3FAKl/_new  2025-08-26 14:57:24.147408191 +0200
@@ -3,7 +3,7 @@
     <param name="url">https://github.com/argoproj/argo-cd</param>
     <param name="scm">git</param>
     <param name="exclude">.git</param>
-    <param name="revision">v3.1.0</param>
+    <param name="revision">v3.1.1</param>
     <param name="match-tag">v*</param>
     <param name="versionformat">@PARENT_TAG@</param>
     <param name="versionrewrite-pattern">v(.*)</param>

++++++ _servicedata ++++++
--- /var/tmp/diff_new_pack.b3FAKl/_old  2025-08-26 14:57:24.167409030 +0200
+++ /var/tmp/diff_new_pack.b3FAKl/_new  2025-08-26 14:57:24.171409197 +0200
@@ -1,6 +1,6 @@
 <servicedata>
 <service name="tar_scm">
                 <param name="url">https://github.com/argoproj/argo-cd</param>
-              <param 
name="changesrevision">03c4ad854c1e6d922a121cd40f505d9bc6e402da</param></service></servicedata>
+              <param 
name="changesrevision">fa342d153e0e7942938256aea491a68439a53c44</param></service></servicedata>
 (No newline at EOF)
 

++++++ argocd-cli-3.1.0.obscpio -> argocd-cli-3.1.1.obscpio ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/argocd-cli-3.1.0/VERSION new/argocd-cli-3.1.1/VERSION
--- old/argocd-cli-3.1.0/VERSION        2025-08-13 22:36:22.000000000 +0200
+++ new/argocd-cli-3.1.1/VERSION        2025-08-25 17:30:18.000000000 +0200
@@ -1 +1 @@
-3.1.0
+3.1.1
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/argocd-cli-3.1.0/docs/operator-manual/argocd-cmd-params-cm.yaml 
new/argocd-cli-3.1.1/docs/operator-manual/argocd-cmd-params-cm.yaml
--- old/argocd-cli-3.1.0/docs/operator-manual/argocd-cmd-params-cm.yaml 
2025-08-13 22:36:22.000000000 +0200
+++ new/argocd-cli-3.1.1/docs/operator-manual/argocd-cmd-params-cm.yaml 
2025-08-25 17:30:18.000000000 +0200
@@ -205,6 +205,12 @@
   reposerver.streamed.manifest.max.tar.size: "100M"
   # Maximum size of extracted manifests when streaming manifests to the repo 
server for generation
   reposerver.streamed.manifest.max.extracted.size: "1G"
+  # Maximum size of extracted manifests when streaming manifests to the repo 
server for generation
+  reposerver.oci.manifest.max.extracted.size: "1G"
+  # Whether to disable manifest size check for OCI artifacts
+  reposerver.disable.oci.manifest.max.extracted.size: "false"
+  # The allowlist of the OCI media types which the repo-server will make use 
of. If an OCI media type for a given artifact is not in the given list, the 
repo-server will return an error.
+  reposerver.oci.layer.media.types: 
"application/vnd.oci.image.layer.v1.tar,application/vnd.oci.image.layer.v1.tar+gzip,application/vnd.cncf.helm.chart.content.v1.tar+gzip"
   # Enable git submodule support
   reposerver.enable.git.submodule: "true"
   # Number of concurrent git ls-remote requests. Any value less than 1 means 
no limit.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/argocd-cli-3.1.0/manifests/base/commit-server/kustomization.yaml 
new/argocd-cli-3.1.1/manifests/base/commit-server/kustomization.yaml
--- old/argocd-cli-3.1.0/manifests/base/commit-server/kustomization.yaml        
2025-08-13 22:36:22.000000000 +0200
+++ new/argocd-cli-3.1.1/manifests/base/commit-server/kustomization.yaml        
2025-08-25 17:30:18.000000000 +0200
@@ -12,4 +12,4 @@
 images:
 - name: quay.io/argoproj/argocd
   newName: quay.io/argoproj/argocd
-  newTag: v3.1.0
+  newTag: v3.1.1
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/argocd-cli-3.1.0/manifests/base/kustomization.yaml 
new/argocd-cli-3.1.1/manifests/base/kustomization.yaml
--- old/argocd-cli-3.1.0/manifests/base/kustomization.yaml      2025-08-13 
22:36:22.000000000 +0200
+++ new/argocd-cli-3.1.1/manifests/base/kustomization.yaml      2025-08-25 
17:30:18.000000000 +0200
@@ -5,7 +5,7 @@
 images:
 - name: quay.io/argoproj/argocd
   newName: quay.io/argoproj/argocd
-  newTag: v3.1.0
+  newTag: v3.1.1
 resources:
 - ./application-controller
 - ./dex
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/argocd-cli-3.1.0/manifests/base/repo-server/argocd-repo-server-deployment.yaml
 
new/argocd-cli-3.1.1/manifests/base/repo-server/argocd-repo-server-deployment.yaml
--- 
old/argocd-cli-3.1.0/manifests/base/repo-server/argocd-repo-server-deployment.yaml
  2025-08-13 22:36:22.000000000 +0200
+++ 
new/argocd-cli-3.1.1/manifests/base/repo-server/argocd-repo-server-deployment.yaml
  2025-08-25 17:30:18.000000000 +0200
@@ -197,6 +197,24 @@
                 name: argocd-cmd-params-cm
                 key: reposerver.disable.helm.manifest.max.extracted.size
                 optional: true
+          - name: ARGOCD_REPO_SERVER_OCI_MANIFEST_MAX_EXTRACTED_SIZE
+            valueFrom:
+              configMapKeyRef:
+                key: reposerver.oci.manifest.max.extracted.size
+                name: argocd-cmd-params-cm
+                optional: true
+          - name: ARGOCD_REPO_SERVER_DISABLE_OCI_MANIFEST_MAX_EXTRACTED_SIZE
+            valueFrom:
+              configMapKeyRef:
+                key: reposerver.disable.oci.manifest.max.extracted.size
+                name: argocd-cmd-params-cm
+                optional: true
+          - name: ARGOCD_REPO_SERVER_OCI_LAYER_MEDIA_TYPES
+            valueFrom:
+              configMapKeyRef:
+                key: reposerver.oci.layer.media.types
+                name: argocd-cmd-params-cm
+                optional: true
           - name: ARGOCD_REVISION_CACHE_LOCK_TIMEOUT
             valueFrom:
               configMapKeyRef:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/argocd-cli-3.1.0/manifests/core-install/kustomization.yaml 
new/argocd-cli-3.1.1/manifests/core-install/kustomization.yaml
--- old/argocd-cli-3.1.0/manifests/core-install/kustomization.yaml      
2025-08-13 22:36:22.000000000 +0200
+++ new/argocd-cli-3.1.1/manifests/core-install/kustomization.yaml      
2025-08-25 17:30:18.000000000 +0200
@@ -12,4 +12,4 @@
 images:
 - name: quay.io/argoproj/argocd
   newName: quay.io/argoproj/argocd
-  newTag: v3.1.0
+  newTag: v3.1.1
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/argocd-cli-3.1.0/manifests/core-install-with-hydrator.yaml 
new/argocd-cli-3.1.1/manifests/core-install-with-hydrator.yaml
--- old/argocd-cli-3.1.0/manifests/core-install-with-hydrator.yaml      
2025-08-13 22:36:22.000000000 +0200
+++ new/argocd-cli-3.1.1/manifests/core-install-with-hydrator.yaml      
2025-08-25 17:30:18.000000000 +0200
@@ -24699,7 +24699,7 @@
               key: applicationsetcontroller.requeue.after
               name: argocd-cmd-params-cm
               optional: true
-        image: quay.io/argoproj/argocd:v3.1.0
+        image: quay.io/argoproj/argocd:v3.1.1
         imagePullPolicy: Always
         name: argocd-applicationset-controller
         ports:
@@ -24825,7 +24825,7 @@
               key: log.format.timestamp
               name: argocd-cmd-params-cm
               optional: true
-        image: quay.io/argoproj/argocd:v3.1.0
+        image: quay.io/argoproj/argocd:v3.1.1
         imagePullPolicy: Always
         livenessProbe:
           failureThreshold: 3
@@ -24953,7 +24953,7 @@
         - argocd
         - admin
         - redis-initial-password
-        image: quay.io/argoproj/argocd:v3.1.0
+        image: quay.io/argoproj/argocd:v3.1.1
         imagePullPolicy: IfNotPresent
         name: secret-init
         securityContext:
@@ -25184,6 +25184,24 @@
               key: reposerver.disable.helm.manifest.max.extracted.size
               name: argocd-cmd-params-cm
               optional: true
+        - name: ARGOCD_REPO_SERVER_OCI_MANIFEST_MAX_EXTRACTED_SIZE
+          valueFrom:
+            configMapKeyRef:
+              key: reposerver.oci.manifest.max.extracted.size
+              name: argocd-cmd-params-cm
+              optional: true
+        - name: ARGOCD_REPO_SERVER_DISABLE_OCI_MANIFEST_MAX_EXTRACTED_SIZE
+          valueFrom:
+            configMapKeyRef:
+              key: reposerver.disable.oci.manifest.max.extracted.size
+              name: argocd-cmd-params-cm
+              optional: true
+        - name: ARGOCD_REPO_SERVER_OCI_LAYER_MEDIA_TYPES
+          valueFrom:
+            configMapKeyRef:
+              key: reposerver.oci.layer.media.types
+              name: argocd-cmd-params-cm
+              optional: true
         - name: ARGOCD_REVISION_CACHE_LOCK_TIMEOUT
           valueFrom:
             configMapKeyRef:
@@ -25226,7 +25244,7 @@
           value: /helm-working-dir
         - name: HELM_DATA_HOME
           value: /helm-working-dir
-        image: quay.io/argoproj/argocd:v3.1.0
+        image: quay.io/argoproj/argocd:v3.1.1
         imagePullPolicy: Always
         livenessProbe:
           failureThreshold: 3
@@ -25278,7 +25296,7 @@
         - -n
         - /usr/local/bin/argocd
         - /var/run/argocd/argocd-cmp-server
-        image: quay.io/argoproj/argocd:v3.1.0
+        image: quay.io/argoproj/argocd:v3.1.1
         name: copyutil
         securityContext:
           allowPrivilegeEscalation: false
@@ -25620,7 +25638,7 @@
               optional: true
         - name: KUBECACHEDIR
           value: /tmp/kubecache
-        image: quay.io/argoproj/argocd:v3.1.0
+        image: quay.io/argoproj/argocd:v3.1.1
         imagePullPolicy: Always
         name: argocd-application-controller
         ports:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/argocd-cli-3.1.0/manifests/core-install.yaml 
new/argocd-cli-3.1.1/manifests/core-install.yaml
--- old/argocd-cli-3.1.0/manifests/core-install.yaml    2025-08-13 
22:36:22.000000000 +0200
+++ new/argocd-cli-3.1.1/manifests/core-install.yaml    2025-08-25 
17:30:18.000000000 +0200
@@ -24667,7 +24667,7 @@
               key: applicationsetcontroller.requeue.after
               name: argocd-cmd-params-cm
               optional: true
-        image: quay.io/argoproj/argocd:v3.1.0
+        image: quay.io/argoproj/argocd:v3.1.1
         imagePullPolicy: Always
         name: argocd-applicationset-controller
         ports:
@@ -24787,7 +24787,7 @@
         - argocd
         - admin
         - redis-initial-password
-        image: quay.io/argoproj/argocd:v3.1.0
+        image: quay.io/argoproj/argocd:v3.1.1
         imagePullPolicy: IfNotPresent
         name: secret-init
         securityContext:
@@ -25018,6 +25018,24 @@
               key: reposerver.disable.helm.manifest.max.extracted.size
               name: argocd-cmd-params-cm
               optional: true
+        - name: ARGOCD_REPO_SERVER_OCI_MANIFEST_MAX_EXTRACTED_SIZE
+          valueFrom:
+            configMapKeyRef:
+              key: reposerver.oci.manifest.max.extracted.size
+              name: argocd-cmd-params-cm
+              optional: true
+        - name: ARGOCD_REPO_SERVER_DISABLE_OCI_MANIFEST_MAX_EXTRACTED_SIZE
+          valueFrom:
+            configMapKeyRef:
+              key: reposerver.disable.oci.manifest.max.extracted.size
+              name: argocd-cmd-params-cm
+              optional: true
+        - name: ARGOCD_REPO_SERVER_OCI_LAYER_MEDIA_TYPES
+          valueFrom:
+            configMapKeyRef:
+              key: reposerver.oci.layer.media.types
+              name: argocd-cmd-params-cm
+              optional: true
         - name: ARGOCD_REVISION_CACHE_LOCK_TIMEOUT
           valueFrom:
             configMapKeyRef:
@@ -25060,7 +25078,7 @@
           value: /helm-working-dir
         - name: HELM_DATA_HOME
           value: /helm-working-dir
-        image: quay.io/argoproj/argocd:v3.1.0
+        image: quay.io/argoproj/argocd:v3.1.1
         imagePullPolicy: Always
         livenessProbe:
           failureThreshold: 3
@@ -25112,7 +25130,7 @@
         - -n
         - /usr/local/bin/argocd
         - /var/run/argocd/argocd-cmp-server
-        image: quay.io/argoproj/argocd:v3.1.0
+        image: quay.io/argoproj/argocd:v3.1.1
         name: copyutil
         securityContext:
           allowPrivilegeEscalation: false
@@ -25454,7 +25472,7 @@
               optional: true
         - name: KUBECACHEDIR
           value: /tmp/kubecache
-        image: quay.io/argoproj/argocd:v3.1.0
+        image: quay.io/argoproj/argocd:v3.1.1
         imagePullPolicy: Always
         name: argocd-application-controller
         ports:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/argocd-cli-3.1.0/manifests/ha/base/kustomization.yaml 
new/argocd-cli-3.1.1/manifests/ha/base/kustomization.yaml
--- old/argocd-cli-3.1.0/manifests/ha/base/kustomization.yaml   2025-08-13 
22:36:22.000000000 +0200
+++ new/argocd-cli-3.1.1/manifests/ha/base/kustomization.yaml   2025-08-25 
17:30:18.000000000 +0200
@@ -12,7 +12,7 @@
 images:
 - name: quay.io/argoproj/argocd
   newName: quay.io/argoproj/argocd
-  newTag: v3.1.0
+  newTag: v3.1.1
 resources:
 - ../../base/application-controller
 - ../../base/applicationset-controller
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/argocd-cli-3.1.0/manifests/ha/install-with-hydrator.yaml 
new/argocd-cli-3.1.1/manifests/ha/install-with-hydrator.yaml
--- old/argocd-cli-3.1.0/manifests/ha/install-with-hydrator.yaml        
2025-08-13 22:36:22.000000000 +0200
+++ new/argocd-cli-3.1.1/manifests/ha/install-with-hydrator.yaml        
2025-08-25 17:30:18.000000000 +0200
@@ -26065,7 +26065,7 @@
               key: applicationsetcontroller.requeue.after
               name: argocd-cmd-params-cm
               optional: true
-        image: quay.io/argoproj/argocd:v3.1.0
+        image: quay.io/argoproj/argocd:v3.1.1
         imagePullPolicy: Always
         name: argocd-applicationset-controller
         ports:
@@ -26191,7 +26191,7 @@
               key: log.format.timestamp
               name: argocd-cmd-params-cm
               optional: true
-        image: quay.io/argoproj/argocd:v3.1.0
+        image: quay.io/argoproj/argocd:v3.1.1
         imagePullPolicy: Always
         livenessProbe:
           failureThreshold: 3
@@ -26342,7 +26342,7 @@
         - -n
         - /usr/local/bin/argocd
         - /shared/argocd-dex
-        image: quay.io/argoproj/argocd:v3.1.0
+        image: quay.io/argoproj/argocd:v3.1.1
         imagePullPolicy: Always
         name: copyutil
         securityContext:
@@ -26438,7 +26438,7 @@
               key: notificationscontroller.repo.server.plaintext
               name: argocd-cmd-params-cm
               optional: true
-        image: quay.io/argoproj/argocd:v3.1.0
+        image: quay.io/argoproj/argocd:v3.1.1
         imagePullPolicy: Always
         livenessProbe:
           tcpSocket:
@@ -26562,7 +26562,7 @@
         - argocd
         - admin
         - redis-initial-password
-        image: quay.io/argoproj/argocd:v3.1.0
+        image: quay.io/argoproj/argocd:v3.1.1
         imagePullPolicy: IfNotPresent
         name: secret-init
         securityContext:
@@ -26819,6 +26819,24 @@
               key: reposerver.disable.helm.manifest.max.extracted.size
               name: argocd-cmd-params-cm
               optional: true
+        - name: ARGOCD_REPO_SERVER_OCI_MANIFEST_MAX_EXTRACTED_SIZE
+          valueFrom:
+            configMapKeyRef:
+              key: reposerver.oci.manifest.max.extracted.size
+              name: argocd-cmd-params-cm
+              optional: true
+        - name: ARGOCD_REPO_SERVER_DISABLE_OCI_MANIFEST_MAX_EXTRACTED_SIZE
+          valueFrom:
+            configMapKeyRef:
+              key: reposerver.disable.oci.manifest.max.extracted.size
+              name: argocd-cmd-params-cm
+              optional: true
+        - name: ARGOCD_REPO_SERVER_OCI_LAYER_MEDIA_TYPES
+          valueFrom:
+            configMapKeyRef:
+              key: reposerver.oci.layer.media.types
+              name: argocd-cmd-params-cm
+              optional: true
         - name: ARGOCD_REVISION_CACHE_LOCK_TIMEOUT
           valueFrom:
             configMapKeyRef:
@@ -26861,7 +26879,7 @@
           value: /helm-working-dir
         - name: HELM_DATA_HOME
           value: /helm-working-dir
-        image: quay.io/argoproj/argocd:v3.1.0
+        image: quay.io/argoproj/argocd:v3.1.1
         imagePullPolicy: Always
         livenessProbe:
           failureThreshold: 3
@@ -26913,7 +26931,7 @@
         - -n
         - /usr/local/bin/argocd
         - /var/run/argocd/argocd-cmp-server
-        image: quay.io/argoproj/argocd:v3.1.0
+        image: quay.io/argoproj/argocd:v3.1.1
         name: copyutil
         securityContext:
           allowPrivilegeEscalation: false
@@ -27287,7 +27305,7 @@
               key: server.sync.replace.allowed
               name: argocd-cmd-params-cm
               optional: true
-        image: quay.io/argoproj/argocd:v3.1.0
+        image: quay.io/argoproj/argocd:v3.1.1
         imagePullPolicy: Always
         livenessProbe:
           httpGet:
@@ -27665,7 +27683,7 @@
               optional: true
         - name: KUBECACHEDIR
           value: /tmp/kubecache
-        image: quay.io/argoproj/argocd:v3.1.0
+        image: quay.io/argoproj/argocd:v3.1.1
         imagePullPolicy: Always
         name: argocd-application-controller
         ports:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/argocd-cli-3.1.0/manifests/ha/install.yaml 
new/argocd-cli-3.1.1/manifests/ha/install.yaml
--- old/argocd-cli-3.1.0/manifests/ha/install.yaml      2025-08-13 
22:36:22.000000000 +0200
+++ new/argocd-cli-3.1.1/manifests/ha/install.yaml      2025-08-25 
17:30:18.000000000 +0200
@@ -26035,7 +26035,7 @@
               key: applicationsetcontroller.requeue.after
               name: argocd-cmd-params-cm
               optional: true
-        image: quay.io/argoproj/argocd:v3.1.0
+        image: quay.io/argoproj/argocd:v3.1.1
         imagePullPolicy: Always
         name: argocd-applicationset-controller
         ports:
@@ -26178,7 +26178,7 @@
         - -n
         - /usr/local/bin/argocd
         - /shared/argocd-dex
-        image: quay.io/argoproj/argocd:v3.1.0
+        image: quay.io/argoproj/argocd:v3.1.1
         imagePullPolicy: Always
         name: copyutil
         securityContext:
@@ -26274,7 +26274,7 @@
               key: notificationscontroller.repo.server.plaintext
               name: argocd-cmd-params-cm
               optional: true
-        image: quay.io/argoproj/argocd:v3.1.0
+        image: quay.io/argoproj/argocd:v3.1.1
         imagePullPolicy: Always
         livenessProbe:
           tcpSocket:
@@ -26398,7 +26398,7 @@
         - argocd
         - admin
         - redis-initial-password
-        image: quay.io/argoproj/argocd:v3.1.0
+        image: quay.io/argoproj/argocd:v3.1.1
         imagePullPolicy: IfNotPresent
         name: secret-init
         securityContext:
@@ -26655,6 +26655,24 @@
               key: reposerver.disable.helm.manifest.max.extracted.size
               name: argocd-cmd-params-cm
               optional: true
+        - name: ARGOCD_REPO_SERVER_OCI_MANIFEST_MAX_EXTRACTED_SIZE
+          valueFrom:
+            configMapKeyRef:
+              key: reposerver.oci.manifest.max.extracted.size
+              name: argocd-cmd-params-cm
+              optional: true
+        - name: ARGOCD_REPO_SERVER_DISABLE_OCI_MANIFEST_MAX_EXTRACTED_SIZE
+          valueFrom:
+            configMapKeyRef:
+              key: reposerver.disable.oci.manifest.max.extracted.size
+              name: argocd-cmd-params-cm
+              optional: true
+        - name: ARGOCD_REPO_SERVER_OCI_LAYER_MEDIA_TYPES
+          valueFrom:
+            configMapKeyRef:
+              key: reposerver.oci.layer.media.types
+              name: argocd-cmd-params-cm
+              optional: true
         - name: ARGOCD_REVISION_CACHE_LOCK_TIMEOUT
           valueFrom:
             configMapKeyRef:
@@ -26697,7 +26715,7 @@
           value: /helm-working-dir
         - name: HELM_DATA_HOME
           value: /helm-working-dir
-        image: quay.io/argoproj/argocd:v3.1.0
+        image: quay.io/argoproj/argocd:v3.1.1
         imagePullPolicy: Always
         livenessProbe:
           failureThreshold: 3
@@ -26749,7 +26767,7 @@
         - -n
         - /usr/local/bin/argocd
         - /var/run/argocd/argocd-cmp-server
-        image: quay.io/argoproj/argocd:v3.1.0
+        image: quay.io/argoproj/argocd:v3.1.1
         name: copyutil
         securityContext:
           allowPrivilegeEscalation: false
@@ -27123,7 +27141,7 @@
               key: server.sync.replace.allowed
               name: argocd-cmd-params-cm
               optional: true
-        image: quay.io/argoproj/argocd:v3.1.0
+        image: quay.io/argoproj/argocd:v3.1.1
         imagePullPolicy: Always
         livenessProbe:
           httpGet:
@@ -27501,7 +27519,7 @@
               optional: true
         - name: KUBECACHEDIR
           value: /tmp/kubecache
-        image: quay.io/argoproj/argocd:v3.1.0
+        image: quay.io/argoproj/argocd:v3.1.1
         imagePullPolicy: Always
         name: argocd-application-controller
         ports:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/argocd-cli-3.1.0/manifests/ha/namespace-install-with-hydrator.yaml 
new/argocd-cli-3.1.1/manifests/ha/namespace-install-with-hydrator.yaml
--- old/argocd-cli-3.1.0/manifests/ha/namespace-install-with-hydrator.yaml      
2025-08-13 22:36:22.000000000 +0200
+++ new/argocd-cli-3.1.1/manifests/ha/namespace-install-with-hydrator.yaml      
2025-08-25 17:30:18.000000000 +0200
@@ -1868,7 +1868,7 @@
               key: applicationsetcontroller.requeue.after
               name: argocd-cmd-params-cm
               optional: true
-        image: quay.io/argoproj/argocd:v3.1.0
+        image: quay.io/argoproj/argocd:v3.1.1
         imagePullPolicy: Always
         name: argocd-applicationset-controller
         ports:
@@ -1994,7 +1994,7 @@
               key: log.format.timestamp
               name: argocd-cmd-params-cm
               optional: true
-        image: quay.io/argoproj/argocd:v3.1.0
+        image: quay.io/argoproj/argocd:v3.1.1
         imagePullPolicy: Always
         livenessProbe:
           failureThreshold: 3
@@ -2145,7 +2145,7 @@
         - -n
         - /usr/local/bin/argocd
         - /shared/argocd-dex
-        image: quay.io/argoproj/argocd:v3.1.0
+        image: quay.io/argoproj/argocd:v3.1.1
         imagePullPolicy: Always
         name: copyutil
         securityContext:
@@ -2241,7 +2241,7 @@
               key: notificationscontroller.repo.server.plaintext
               name: argocd-cmd-params-cm
               optional: true
-        image: quay.io/argoproj/argocd:v3.1.0
+        image: quay.io/argoproj/argocd:v3.1.1
         imagePullPolicy: Always
         livenessProbe:
           tcpSocket:
@@ -2365,7 +2365,7 @@
         - argocd
         - admin
         - redis-initial-password
-        image: quay.io/argoproj/argocd:v3.1.0
+        image: quay.io/argoproj/argocd:v3.1.1
         imagePullPolicy: IfNotPresent
         name: secret-init
         securityContext:
@@ -2622,6 +2622,24 @@
               key: reposerver.disable.helm.manifest.max.extracted.size
               name: argocd-cmd-params-cm
               optional: true
+        - name: ARGOCD_REPO_SERVER_OCI_MANIFEST_MAX_EXTRACTED_SIZE
+          valueFrom:
+            configMapKeyRef:
+              key: reposerver.oci.manifest.max.extracted.size
+              name: argocd-cmd-params-cm
+              optional: true
+        - name: ARGOCD_REPO_SERVER_DISABLE_OCI_MANIFEST_MAX_EXTRACTED_SIZE
+          valueFrom:
+            configMapKeyRef:
+              key: reposerver.disable.oci.manifest.max.extracted.size
+              name: argocd-cmd-params-cm
+              optional: true
+        - name: ARGOCD_REPO_SERVER_OCI_LAYER_MEDIA_TYPES
+          valueFrom:
+            configMapKeyRef:
+              key: reposerver.oci.layer.media.types
+              name: argocd-cmd-params-cm
+              optional: true
         - name: ARGOCD_REVISION_CACHE_LOCK_TIMEOUT
           valueFrom:
             configMapKeyRef:
@@ -2664,7 +2682,7 @@
           value: /helm-working-dir
         - name: HELM_DATA_HOME
           value: /helm-working-dir
-        image: quay.io/argoproj/argocd:v3.1.0
+        image: quay.io/argoproj/argocd:v3.1.1
         imagePullPolicy: Always
         livenessProbe:
           failureThreshold: 3
@@ -2716,7 +2734,7 @@
         - -n
         - /usr/local/bin/argocd
         - /var/run/argocd/argocd-cmp-server
-        image: quay.io/argoproj/argocd:v3.1.0
+        image: quay.io/argoproj/argocd:v3.1.1
         name: copyutil
         securityContext:
           allowPrivilegeEscalation: false
@@ -3090,7 +3108,7 @@
               key: server.sync.replace.allowed
               name: argocd-cmd-params-cm
               optional: true
-        image: quay.io/argoproj/argocd:v3.1.0
+        image: quay.io/argoproj/argocd:v3.1.1
         imagePullPolicy: Always
         livenessProbe:
           httpGet:
@@ -3468,7 +3486,7 @@
               optional: true
         - name: KUBECACHEDIR
           value: /tmp/kubecache
-        image: quay.io/argoproj/argocd:v3.1.0
+        image: quay.io/argoproj/argocd:v3.1.1
         imagePullPolicy: Always
         name: argocd-application-controller
         ports:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/argocd-cli-3.1.0/manifests/ha/namespace-install.yaml 
new/argocd-cli-3.1.1/manifests/ha/namespace-install.yaml
--- old/argocd-cli-3.1.0/manifests/ha/namespace-install.yaml    2025-08-13 
22:36:22.000000000 +0200
+++ new/argocd-cli-3.1.1/manifests/ha/namespace-install.yaml    2025-08-25 
17:30:18.000000000 +0200
@@ -1838,7 +1838,7 @@
               key: applicationsetcontroller.requeue.after
               name: argocd-cmd-params-cm
               optional: true
-        image: quay.io/argoproj/argocd:v3.1.0
+        image: quay.io/argoproj/argocd:v3.1.1
         imagePullPolicy: Always
         name: argocd-applicationset-controller
         ports:
@@ -1981,7 +1981,7 @@
         - -n
         - /usr/local/bin/argocd
         - /shared/argocd-dex
-        image: quay.io/argoproj/argocd:v3.1.0
+        image: quay.io/argoproj/argocd:v3.1.1
         imagePullPolicy: Always
         name: copyutil
         securityContext:
@@ -2077,7 +2077,7 @@
               key: notificationscontroller.repo.server.plaintext
               name: argocd-cmd-params-cm
               optional: true
-        image: quay.io/argoproj/argocd:v3.1.0
+        image: quay.io/argoproj/argocd:v3.1.1
         imagePullPolicy: Always
         livenessProbe:
           tcpSocket:
@@ -2201,7 +2201,7 @@
         - argocd
         - admin
         - redis-initial-password
-        image: quay.io/argoproj/argocd:v3.1.0
+        image: quay.io/argoproj/argocd:v3.1.1
         imagePullPolicy: IfNotPresent
         name: secret-init
         securityContext:
@@ -2458,6 +2458,24 @@
               key: reposerver.disable.helm.manifest.max.extracted.size
               name: argocd-cmd-params-cm
               optional: true
+        - name: ARGOCD_REPO_SERVER_OCI_MANIFEST_MAX_EXTRACTED_SIZE
+          valueFrom:
+            configMapKeyRef:
+              key: reposerver.oci.manifest.max.extracted.size
+              name: argocd-cmd-params-cm
+              optional: true
+        - name: ARGOCD_REPO_SERVER_DISABLE_OCI_MANIFEST_MAX_EXTRACTED_SIZE
+          valueFrom:
+            configMapKeyRef:
+              key: reposerver.disable.oci.manifest.max.extracted.size
+              name: argocd-cmd-params-cm
+              optional: true
+        - name: ARGOCD_REPO_SERVER_OCI_LAYER_MEDIA_TYPES
+          valueFrom:
+            configMapKeyRef:
+              key: reposerver.oci.layer.media.types
+              name: argocd-cmd-params-cm
+              optional: true
         - name: ARGOCD_REVISION_CACHE_LOCK_TIMEOUT
           valueFrom:
             configMapKeyRef:
@@ -2500,7 +2518,7 @@
           value: /helm-working-dir
         - name: HELM_DATA_HOME
           value: /helm-working-dir
-        image: quay.io/argoproj/argocd:v3.1.0
+        image: quay.io/argoproj/argocd:v3.1.1
         imagePullPolicy: Always
         livenessProbe:
           failureThreshold: 3
@@ -2552,7 +2570,7 @@
         - -n
         - /usr/local/bin/argocd
         - /var/run/argocd/argocd-cmp-server
-        image: quay.io/argoproj/argocd:v3.1.0
+        image: quay.io/argoproj/argocd:v3.1.1
         name: copyutil
         securityContext:
           allowPrivilegeEscalation: false
@@ -2926,7 +2944,7 @@
               key: server.sync.replace.allowed
               name: argocd-cmd-params-cm
               optional: true
-        image: quay.io/argoproj/argocd:v3.1.0
+        image: quay.io/argoproj/argocd:v3.1.1
         imagePullPolicy: Always
         livenessProbe:
           httpGet:
@@ -3304,7 +3322,7 @@
               optional: true
         - name: KUBECACHEDIR
           value: /tmp/kubecache
-        image: quay.io/argoproj/argocd:v3.1.0
+        image: quay.io/argoproj/argocd:v3.1.1
         imagePullPolicy: Always
         name: argocd-application-controller
         ports:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/argocd-cli-3.1.0/manifests/install-with-hydrator.yaml 
new/argocd-cli-3.1.1/manifests/install-with-hydrator.yaml
--- old/argocd-cli-3.1.0/manifests/install-with-hydrator.yaml   2025-08-13 
22:36:22.000000000 +0200
+++ new/argocd-cli-3.1.1/manifests/install-with-hydrator.yaml   2025-08-25 
17:30:18.000000000 +0200
@@ -25159,7 +25159,7 @@
               key: applicationsetcontroller.requeue.after
               name: argocd-cmd-params-cm
               optional: true
-        image: quay.io/argoproj/argocd:v3.1.0
+        image: quay.io/argoproj/argocd:v3.1.1
         imagePullPolicy: Always
         name: argocd-applicationset-controller
         ports:
@@ -25285,7 +25285,7 @@
               key: log.format.timestamp
               name: argocd-cmd-params-cm
               optional: true
-        image: quay.io/argoproj/argocd:v3.1.0
+        image: quay.io/argoproj/argocd:v3.1.1
         imagePullPolicy: Always
         livenessProbe:
           failureThreshold: 3
@@ -25436,7 +25436,7 @@
         - -n
         - /usr/local/bin/argocd
         - /shared/argocd-dex
-        image: quay.io/argoproj/argocd:v3.1.0
+        image: quay.io/argoproj/argocd:v3.1.1
         imagePullPolicy: Always
         name: copyutil
         securityContext:
@@ -25532,7 +25532,7 @@
               key: notificationscontroller.repo.server.plaintext
               name: argocd-cmd-params-cm
               optional: true
-        image: quay.io/argoproj/argocd:v3.1.0
+        image: quay.io/argoproj/argocd:v3.1.1
         imagePullPolicy: Always
         livenessProbe:
           tcpSocket:
@@ -25634,7 +25634,7 @@
         - argocd
         - admin
         - redis-initial-password
-        image: quay.io/argoproj/argocd:v3.1.0
+        image: quay.io/argoproj/argocd:v3.1.1
         imagePullPolicy: IfNotPresent
         name: secret-init
         securityContext:
@@ -25865,6 +25865,24 @@
               key: reposerver.disable.helm.manifest.max.extracted.size
               name: argocd-cmd-params-cm
               optional: true
+        - name: ARGOCD_REPO_SERVER_OCI_MANIFEST_MAX_EXTRACTED_SIZE
+          valueFrom:
+            configMapKeyRef:
+              key: reposerver.oci.manifest.max.extracted.size
+              name: argocd-cmd-params-cm
+              optional: true
+        - name: ARGOCD_REPO_SERVER_DISABLE_OCI_MANIFEST_MAX_EXTRACTED_SIZE
+          valueFrom:
+            configMapKeyRef:
+              key: reposerver.disable.oci.manifest.max.extracted.size
+              name: argocd-cmd-params-cm
+              optional: true
+        - name: ARGOCD_REPO_SERVER_OCI_LAYER_MEDIA_TYPES
+          valueFrom:
+            configMapKeyRef:
+              key: reposerver.oci.layer.media.types
+              name: argocd-cmd-params-cm
+              optional: true
         - name: ARGOCD_REVISION_CACHE_LOCK_TIMEOUT
           valueFrom:
             configMapKeyRef:
@@ -25907,7 +25925,7 @@
           value: /helm-working-dir
         - name: HELM_DATA_HOME
           value: /helm-working-dir
-        image: quay.io/argoproj/argocd:v3.1.0
+        image: quay.io/argoproj/argocd:v3.1.1
         imagePullPolicy: Always
         livenessProbe:
           failureThreshold: 3
@@ -25959,7 +25977,7 @@
         - -n
         - /usr/local/bin/argocd
         - /var/run/argocd/argocd-cmp-server
-        image: quay.io/argoproj/argocd:v3.1.0
+        image: quay.io/argoproj/argocd:v3.1.1
         name: copyutil
         securityContext:
           allowPrivilegeEscalation: false
@@ -26331,7 +26349,7 @@
               key: server.sync.replace.allowed
               name: argocd-cmd-params-cm
               optional: true
-        image: quay.io/argoproj/argocd:v3.1.0
+        image: quay.io/argoproj/argocd:v3.1.1
         imagePullPolicy: Always
         livenessProbe:
           httpGet:
@@ -26709,7 +26727,7 @@
               optional: true
         - name: KUBECACHEDIR
           value: /tmp/kubecache
-        image: quay.io/argoproj/argocd:v3.1.0
+        image: quay.io/argoproj/argocd:v3.1.1
         imagePullPolicy: Always
         name: argocd-application-controller
         ports:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/argocd-cli-3.1.0/manifests/install.yaml 
new/argocd-cli-3.1.1/manifests/install.yaml
--- old/argocd-cli-3.1.0/manifests/install.yaml 2025-08-13 22:36:22.000000000 
+0200
+++ new/argocd-cli-3.1.1/manifests/install.yaml 2025-08-25 17:30:18.000000000 
+0200
@@ -25127,7 +25127,7 @@
               key: applicationsetcontroller.requeue.after
               name: argocd-cmd-params-cm
               optional: true
-        image: quay.io/argoproj/argocd:v3.1.0
+        image: quay.io/argoproj/argocd:v3.1.1
         imagePullPolicy: Always
         name: argocd-applicationset-controller
         ports:
@@ -25270,7 +25270,7 @@
         - -n
         - /usr/local/bin/argocd
         - /shared/argocd-dex
-        image: quay.io/argoproj/argocd:v3.1.0
+        image: quay.io/argoproj/argocd:v3.1.1
         imagePullPolicy: Always
         name: copyutil
         securityContext:
@@ -25366,7 +25366,7 @@
               key: notificationscontroller.repo.server.plaintext
               name: argocd-cmd-params-cm
               optional: true
-        image: quay.io/argoproj/argocd:v3.1.0
+        image: quay.io/argoproj/argocd:v3.1.1
         imagePullPolicy: Always
         livenessProbe:
           tcpSocket:
@@ -25468,7 +25468,7 @@
         - argocd
         - admin
         - redis-initial-password
-        image: quay.io/argoproj/argocd:v3.1.0
+        image: quay.io/argoproj/argocd:v3.1.1
         imagePullPolicy: IfNotPresent
         name: secret-init
         securityContext:
@@ -25699,6 +25699,24 @@
               key: reposerver.disable.helm.manifest.max.extracted.size
               name: argocd-cmd-params-cm
               optional: true
+        - name: ARGOCD_REPO_SERVER_OCI_MANIFEST_MAX_EXTRACTED_SIZE
+          valueFrom:
+            configMapKeyRef:
+              key: reposerver.oci.manifest.max.extracted.size
+              name: argocd-cmd-params-cm
+              optional: true
+        - name: ARGOCD_REPO_SERVER_DISABLE_OCI_MANIFEST_MAX_EXTRACTED_SIZE
+          valueFrom:
+            configMapKeyRef:
+              key: reposerver.disable.oci.manifest.max.extracted.size
+              name: argocd-cmd-params-cm
+              optional: true
+        - name: ARGOCD_REPO_SERVER_OCI_LAYER_MEDIA_TYPES
+          valueFrom:
+            configMapKeyRef:
+              key: reposerver.oci.layer.media.types
+              name: argocd-cmd-params-cm
+              optional: true
         - name: ARGOCD_REVISION_CACHE_LOCK_TIMEOUT
           valueFrom:
             configMapKeyRef:
@@ -25741,7 +25759,7 @@
           value: /helm-working-dir
         - name: HELM_DATA_HOME
           value: /helm-working-dir
-        image: quay.io/argoproj/argocd:v3.1.0
+        image: quay.io/argoproj/argocd:v3.1.1
         imagePullPolicy: Always
         livenessProbe:
           failureThreshold: 3
@@ -25793,7 +25811,7 @@
         - -n
         - /usr/local/bin/argocd
         - /var/run/argocd/argocd-cmp-server
-        image: quay.io/argoproj/argocd:v3.1.0
+        image: quay.io/argoproj/argocd:v3.1.1
         name: copyutil
         securityContext:
           allowPrivilegeEscalation: false
@@ -26165,7 +26183,7 @@
               key: server.sync.replace.allowed
               name: argocd-cmd-params-cm
               optional: true
-        image: quay.io/argoproj/argocd:v3.1.0
+        image: quay.io/argoproj/argocd:v3.1.1
         imagePullPolicy: Always
         livenessProbe:
           httpGet:
@@ -26543,7 +26561,7 @@
               optional: true
         - name: KUBECACHEDIR
           value: /tmp/kubecache
-        image: quay.io/argoproj/argocd:v3.1.0
+        image: quay.io/argoproj/argocd:v3.1.1
         imagePullPolicy: Always
         name: argocd-application-controller
         ports:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/argocd-cli-3.1.0/manifests/namespace-install-with-hydrator.yaml 
new/argocd-cli-3.1.1/manifests/namespace-install-with-hydrator.yaml
--- old/argocd-cli-3.1.0/manifests/namespace-install-with-hydrator.yaml 
2025-08-13 22:36:22.000000000 +0200
+++ new/argocd-cli-3.1.1/manifests/namespace-install-with-hydrator.yaml 
2025-08-25 17:30:18.000000000 +0200
@@ -962,7 +962,7 @@
               key: applicationsetcontroller.requeue.after
               name: argocd-cmd-params-cm
               optional: true
-        image: quay.io/argoproj/argocd:v3.1.0
+        image: quay.io/argoproj/argocd:v3.1.1
         imagePullPolicy: Always
         name: argocd-applicationset-controller
         ports:
@@ -1088,7 +1088,7 @@
               key: log.format.timestamp
               name: argocd-cmd-params-cm
               optional: true
-        image: quay.io/argoproj/argocd:v3.1.0
+        image: quay.io/argoproj/argocd:v3.1.1
         imagePullPolicy: Always
         livenessProbe:
           failureThreshold: 3
@@ -1239,7 +1239,7 @@
         - -n
         - /usr/local/bin/argocd
         - /shared/argocd-dex
-        image: quay.io/argoproj/argocd:v3.1.0
+        image: quay.io/argoproj/argocd:v3.1.1
         imagePullPolicy: Always
         name: copyutil
         securityContext:
@@ -1335,7 +1335,7 @@
               key: notificationscontroller.repo.server.plaintext
               name: argocd-cmd-params-cm
               optional: true
-        image: quay.io/argoproj/argocd:v3.1.0
+        image: quay.io/argoproj/argocd:v3.1.1
         imagePullPolicy: Always
         livenessProbe:
           tcpSocket:
@@ -1437,7 +1437,7 @@
         - argocd
         - admin
         - redis-initial-password
-        image: quay.io/argoproj/argocd:v3.1.0
+        image: quay.io/argoproj/argocd:v3.1.1
         imagePullPolicy: IfNotPresent
         name: secret-init
         securityContext:
@@ -1668,6 +1668,24 @@
               key: reposerver.disable.helm.manifest.max.extracted.size
               name: argocd-cmd-params-cm
               optional: true
+        - name: ARGOCD_REPO_SERVER_OCI_MANIFEST_MAX_EXTRACTED_SIZE
+          valueFrom:
+            configMapKeyRef:
+              key: reposerver.oci.manifest.max.extracted.size
+              name: argocd-cmd-params-cm
+              optional: true
+        - name: ARGOCD_REPO_SERVER_DISABLE_OCI_MANIFEST_MAX_EXTRACTED_SIZE
+          valueFrom:
+            configMapKeyRef:
+              key: reposerver.disable.oci.manifest.max.extracted.size
+              name: argocd-cmd-params-cm
+              optional: true
+        - name: ARGOCD_REPO_SERVER_OCI_LAYER_MEDIA_TYPES
+          valueFrom:
+            configMapKeyRef:
+              key: reposerver.oci.layer.media.types
+              name: argocd-cmd-params-cm
+              optional: true
         - name: ARGOCD_REVISION_CACHE_LOCK_TIMEOUT
           valueFrom:
             configMapKeyRef:
@@ -1710,7 +1728,7 @@
           value: /helm-working-dir
         - name: HELM_DATA_HOME
           value: /helm-working-dir
-        image: quay.io/argoproj/argocd:v3.1.0
+        image: quay.io/argoproj/argocd:v3.1.1
         imagePullPolicy: Always
         livenessProbe:
           failureThreshold: 3
@@ -1762,7 +1780,7 @@
         - -n
         - /usr/local/bin/argocd
         - /var/run/argocd/argocd-cmp-server
-        image: quay.io/argoproj/argocd:v3.1.0
+        image: quay.io/argoproj/argocd:v3.1.1
         name: copyutil
         securityContext:
           allowPrivilegeEscalation: false
@@ -2134,7 +2152,7 @@
               key: server.sync.replace.allowed
               name: argocd-cmd-params-cm
               optional: true
-        image: quay.io/argoproj/argocd:v3.1.0
+        image: quay.io/argoproj/argocd:v3.1.1
         imagePullPolicy: Always
         livenessProbe:
           httpGet:
@@ -2512,7 +2530,7 @@
               optional: true
         - name: KUBECACHEDIR
           value: /tmp/kubecache
-        image: quay.io/argoproj/argocd:v3.1.0
+        image: quay.io/argoproj/argocd:v3.1.1
         imagePullPolicy: Always
         name: argocd-application-controller
         ports:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/argocd-cli-3.1.0/manifests/namespace-install.yaml 
new/argocd-cli-3.1.1/manifests/namespace-install.yaml
--- old/argocd-cli-3.1.0/manifests/namespace-install.yaml       2025-08-13 
22:36:22.000000000 +0200
+++ new/argocd-cli-3.1.1/manifests/namespace-install.yaml       2025-08-25 
17:30:18.000000000 +0200
@@ -930,7 +930,7 @@
               key: applicationsetcontroller.requeue.after
               name: argocd-cmd-params-cm
               optional: true
-        image: quay.io/argoproj/argocd:v3.1.0
+        image: quay.io/argoproj/argocd:v3.1.1
         imagePullPolicy: Always
         name: argocd-applicationset-controller
         ports:
@@ -1073,7 +1073,7 @@
         - -n
         - /usr/local/bin/argocd
         - /shared/argocd-dex
-        image: quay.io/argoproj/argocd:v3.1.0
+        image: quay.io/argoproj/argocd:v3.1.1
         imagePullPolicy: Always
         name: copyutil
         securityContext:
@@ -1169,7 +1169,7 @@
               key: notificationscontroller.repo.server.plaintext
               name: argocd-cmd-params-cm
               optional: true
-        image: quay.io/argoproj/argocd:v3.1.0
+        image: quay.io/argoproj/argocd:v3.1.1
         imagePullPolicy: Always
         livenessProbe:
           tcpSocket:
@@ -1271,7 +1271,7 @@
         - argocd
         - admin
         - redis-initial-password
-        image: quay.io/argoproj/argocd:v3.1.0
+        image: quay.io/argoproj/argocd:v3.1.1
         imagePullPolicy: IfNotPresent
         name: secret-init
         securityContext:
@@ -1502,6 +1502,24 @@
               key: reposerver.disable.helm.manifest.max.extracted.size
               name: argocd-cmd-params-cm
               optional: true
+        - name: ARGOCD_REPO_SERVER_OCI_MANIFEST_MAX_EXTRACTED_SIZE
+          valueFrom:
+            configMapKeyRef:
+              key: reposerver.oci.manifest.max.extracted.size
+              name: argocd-cmd-params-cm
+              optional: true
+        - name: ARGOCD_REPO_SERVER_DISABLE_OCI_MANIFEST_MAX_EXTRACTED_SIZE
+          valueFrom:
+            configMapKeyRef:
+              key: reposerver.disable.oci.manifest.max.extracted.size
+              name: argocd-cmd-params-cm
+              optional: true
+        - name: ARGOCD_REPO_SERVER_OCI_LAYER_MEDIA_TYPES
+          valueFrom:
+            configMapKeyRef:
+              key: reposerver.oci.layer.media.types
+              name: argocd-cmd-params-cm
+              optional: true
         - name: ARGOCD_REVISION_CACHE_LOCK_TIMEOUT
           valueFrom:
             configMapKeyRef:
@@ -1544,7 +1562,7 @@
           value: /helm-working-dir
         - name: HELM_DATA_HOME
           value: /helm-working-dir
-        image: quay.io/argoproj/argocd:v3.1.0
+        image: quay.io/argoproj/argocd:v3.1.1
         imagePullPolicy: Always
         livenessProbe:
           failureThreshold: 3
@@ -1596,7 +1614,7 @@
         - -n
         - /usr/local/bin/argocd
         - /var/run/argocd/argocd-cmp-server
-        image: quay.io/argoproj/argocd:v3.1.0
+        image: quay.io/argoproj/argocd:v3.1.1
         name: copyutil
         securityContext:
           allowPrivilegeEscalation: false
@@ -1968,7 +1986,7 @@
               key: server.sync.replace.allowed
               name: argocd-cmd-params-cm
               optional: true
-        image: quay.io/argoproj/argocd:v3.1.0
+        image: quay.io/argoproj/argocd:v3.1.1
         imagePullPolicy: Always
         livenessProbe:
           httpGet:
@@ -2346,7 +2364,7 @@
               optional: true
         - name: KUBECACHEDIR
           value: /tmp/kubecache
-        image: quay.io/argoproj/argocd:v3.1.0
+        image: quay.io/argoproj/argocd:v3.1.1
         imagePullPolicy: Always
         name: argocd-application-controller
         ports:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/argocd-cli-3.1.0/resource_customizations/external-secrets.io/ExternalSecret/actions/action_test.yaml
 
new/argocd-cli-3.1.1/resource_customizations/external-secrets.io/ExternalSecret/actions/action_test.yaml
--- 
old/argocd-cli-3.1.0/resource_customizations/external-secrets.io/ExternalSecret/actions/action_test.yaml
    2025-08-13 22:36:22.000000000 +0200
+++ 
new/argocd-cli-3.1.1/resource_customizations/external-secrets.io/ExternalSecret/actions/action_test.yaml
    2025-08-25 17:30:18.000000000 +0200
@@ -2,3 +2,8 @@
   - action: refresh
     inputPath: testdata/external-secret.yaml
     expectedOutputPath: testdata/external-secret-updated.yaml
+
+discoveryTests:
+  - inputPath: testdata/external-secret.yaml
+    result:
+      - name: "refresh"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/argocd-cli-3.1.0/resource_customizations/external-secrets.io/ExternalSecret/actions/discovery.lua
 
new/argocd-cli-3.1.1/resource_customizations/external-secrets.io/ExternalSecret/actions/discovery.lua
--- 
old/argocd-cli-3.1.0/resource_customizations/external-secrets.io/ExternalSecret/actions/discovery.lua
       2025-08-13 22:36:22.000000000 +0200
+++ 
new/argocd-cli-3.1.1/resource_customizations/external-secrets.io/ExternalSecret/actions/discovery.lua
       2025-08-25 17:30:18.000000000 +0200
@@ -3,11 +3,13 @@
 local disable_refresh = false
 local time_units = {"ns", "us", "µs", "ms", "s", "m", "h"}
 local digits = obj.spec.refreshInterval
-for _, time_unit in ipairs(time_units) do
-  digits, _ = digits:gsub(time_unit, "")
-  if tonumber(digits) == 0 then
-    disable_refresh = true
-    break
+if digits ~= nil then
+  digits = tostring(digits)
+  for _, time_unit in ipairs(time_units) do
+    if digits == "0" or digits == "0" .. time_unit then
+      disable_refresh = true
+      break
+    end
   end
 end
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/argocd-cli-3.1.0/resource_customizations/external-secrets.io/PushSecret/actions/action_test.yaml
 
new/argocd-cli-3.1.1/resource_customizations/external-secrets.io/PushSecret/actions/action_test.yaml
--- 
old/argocd-cli-3.1.0/resource_customizations/external-secrets.io/PushSecret/actions/action_test.yaml
        2025-08-13 22:36:22.000000000 +0200
+++ 
new/argocd-cli-3.1.1/resource_customizations/external-secrets.io/PushSecret/actions/action_test.yaml
        2025-08-25 17:30:18.000000000 +0200
@@ -2,3 +2,8 @@
   - action: push
     inputPath: testdata/push-secret.yaml
     expectedOutputPath: testdata/push-secret-updated.yaml
+
+discoveryTests:
+  - inputPath: testdata/push-secret.yaml
+    result:
+      - name: "push"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/argocd-cli-3.1.0/resource_customizations/external-secrets.io/PushSecret/actions/discovery.lua
 
new/argocd-cli-3.1.1/resource_customizations/external-secrets.io/PushSecret/actions/discovery.lua
--- 
old/argocd-cli-3.1.0/resource_customizations/external-secrets.io/PushSecret/actions/discovery.lua
   2025-08-13 22:36:22.000000000 +0200
+++ 
new/argocd-cli-3.1.1/resource_customizations/external-secrets.io/PushSecret/actions/discovery.lua
   2025-08-25 17:30:18.000000000 +0200
@@ -3,11 +3,13 @@
 local disable_push = false
 local time_units = {"ns", "us", "µs", "ms", "s", "m", "h"}
 local digits = obj.spec.refreshInterval
-for _, time_unit in ipairs(time_units) do
-  digits, _ = digits:gsub(time_unit, "")
-  if tonumber(digits) == 0 then
-    disable_push = true
-    break
+if digits ~= nil then
+  digits = tostring(digits)
+  for _, time_unit in ipairs(time_units) do
+    if digits == "0" or digits == "0" .. time_unit then
+      disable_push = true
+      break
+    end
   end
 end
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/argocd-cli-3.1.0/util/db/cluster.go 
new/argocd-cli-3.1.1/util/db/cluster.go
--- old/argocd-cli-3.1.0/util/db/cluster.go     2025-08-13 22:36:22.000000000 
+0200
+++ new/argocd-cli-3.1.1/util/db/cluster.go     2025-08-25 17:30:18.000000000 
+0200
@@ -94,12 +94,14 @@
 
 // CreateCluster creates a cluster
 func (db *db) CreateCluster(ctx context.Context, c *appv1.Cluster) 
(*appv1.Cluster, error) {
-       settings, err := db.settingsMgr.GetSettings()
-       if err != nil {
-               return nil, err
-       }
-       if c.Server == appv1.KubernetesInternalAPIServerAddr && 
!settings.InClusterEnabled {
-               return nil, status.Errorf(codes.InvalidArgument, "cannot 
register cluster: in-cluster has been disabled")
+       if c.Server == appv1.KubernetesInternalAPIServerAddr {
+               settings, err := db.settingsMgr.GetSettings()
+               if err != nil {
+                       return nil, err
+               }
+               if !settings.InClusterEnabled {
+                       return nil, status.Errorf(codes.InvalidArgument, 
"cannot register cluster: in-cluster has been disabled")
+               }
        }
        secName, err := URIToSecretName("cluster", c.Server)
        if err != nil {
@@ -226,12 +228,14 @@
 
 // GetCluster returns a cluster from a query
 func (db *db) GetCluster(_ context.Context, server string) (*appv1.Cluster, 
error) {
-       argoSettings, err := db.settingsMgr.GetSettings()
-       if err != nil {
-               return nil, err
-       }
-       if server == appv1.KubernetesInternalAPIServerAddr && 
!argoSettings.InClusterEnabled {
-               return nil, status.Errorf(codes.NotFound, "cluster %q is 
disabled", server)
+       if server == appv1.KubernetesInternalAPIServerAddr {
+               argoSettings, err := db.settingsMgr.GetSettings()
+               if err != nil {
+                       return nil, err
+               }
+               if !argoSettings.InClusterEnabled {
+                       return nil, status.Errorf(codes.NotFound, "cluster %q 
is disabled", server)
+               }
        }
 
        informer, err := db.settingsMgr.GetSecretsInformer()
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/argocd-cli-3.1.0/util/git/creds.go 
new/argocd-cli-3.1.1/util/git/creds.go
--- old/argocd-cli-3.1.0/util/git/creds.go      2025-08-13 22:36:22.000000000 
+0200
+++ new/argocd-cli-3.1.1/util/git/creds.go      2025-08-25 17:30:18.000000000 
+0200
@@ -710,6 +710,7 @@
        }
        nonce := creds.store.Add("", token)
        env := creds.store.Environ(nonce)
+       env = append(env, fmt.Sprintf("%s=Authorization: Bearer %s", 
bearerAuthHeaderEnv, token))
 
        return utilio.NewCloser(func() error {
                creds.store.Remove(nonce)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/argocd-cli-3.1.0/util/git/creds_test.go 
new/argocd-cli-3.1.1/util/git/creds_test.go
--- old/argocd-cli-3.1.0/util/git/creds_test.go 2025-08-13 22:36:22.000000000 
+0200
+++ new/argocd-cli-3.1.1/util/git/creds_test.go 2025-08-25 17:30:18.000000000 
+0200
@@ -419,7 +419,7 @@
        workloadIdentityMock := new(mocks.TokenProvider)
        workloadIdentityMock.On("GetToken", 
azureDevopsEntraResourceId).Return(&workloadidentity.Token{AccessToken: 
"accessToken", ExpiresOn: time.Now().Add(time.Minute)}, nil)
        creds := AzureWorkloadIdentityCreds{store, workloadIdentityMock}
-       _, _, err := creds.Environ()
+       _, env, err := creds.Environ()
        require.NoError(t, err)
        assert.Len(t, store.creds, 1)
 
@@ -427,6 +427,9 @@
                assert.Empty(t, value.username)
                assert.Equal(t, "accessToken", value.password)
        }
+
+       require.Len(t, env, 1)
+       assert.Equal(t, "ARGOCD_GIT_BEARER_AUTH_HEADER=Authorization: Bearer 
accessToken", env[0], "ARGOCD_GIT_BEARER_AUTH_HEADER env var must be set")
 }
 
 func TestAzureWorkloadIdentityCreds_Environ_cleanup(t *testing.T) {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/argocd-cli-3.1.0/util/git/ssh.go 
new/argocd-cli-3.1.1/util/git/ssh.go
--- old/argocd-cli-3.1.0/util/git/ssh.go        2025-08-13 22:36:22.000000000 
+0200
+++ new/argocd-cli-3.1.1/util/git/ssh.go        2025-08-25 17:30:18.000000000 
+0200
@@ -1,13 +1,14 @@
 package git
 
 import (
+       "crypto/fips140"
        "fmt"
 
        gitssh "github.com/go-git/go-git/v5/plumbing/transport/ssh"
        "golang.org/x/crypto/ssh"
 )
 
-// List of all currently supported algorithms for SSH key exchange
+// SupportedSSHKeyExchangeAlgorithms is a list of all currently supported 
algorithms for SSH key exchange
 // Unfortunately, crypto/ssh does not offer public constants or list for
 // this.
 var SupportedSSHKeyExchangeAlgorithms = []string{
@@ -21,10 +22,15 @@
        "diffie-hellman-group14-sha1",
 }
 
-// List of default key exchange algorithms to use. We use those that are
-// available by default, we can become more opinionated later on (when
-// we support configuration of algorithms to use).
-var DefaultSSHKeyExchangeAlgorithms = SupportedSSHKeyExchangeAlgorithms
+// SupportedFIPSCompliantSSHKeyExchangeAlgorithms is a list of all currently 
supported algorithms for SSH key exchange
+// that are FIPS compliant
+var SupportedFIPSCompliantSSHKeyExchangeAlgorithms = []string{
+       "ecdh-sha2-nistp256",
+       "ecdh-sha2-nistp384",
+       "ecdh-sha2-nistp521",
+       "diffie-hellman-group-exchange-sha256",
+       "diffie-hellman-group14-sha256",
+}
 
 // PublicKeysWithOptions is an auth method for go-git's SSH client that
 // inherits from PublicKeys, but provides the possibility to override
@@ -51,9 +57,17 @@
        if len(a.KexAlgorithms) > 0 {
                kexAlgos = a.KexAlgorithms
        } else {
-               kexAlgos = DefaultSSHKeyExchangeAlgorithms
+               kexAlgos = getDefaultSSHKeyExchangeAlgorithms()
        }
        config := ssh.Config{KeyExchanges: kexAlgos}
        opts := &ssh.ClientConfig{Config: config, User: a.User, Auth: 
[]ssh.AuthMethod{ssh.PublicKeys(a.Signer)}}
        return a.SetHostKeyCallback(opts)
 }
+
+// getDefaultSSHKeyExchangeAlgorithms returns the default key exchange 
algorithms to be used
+func getDefaultSSHKeyExchangeAlgorithms() []string {
+       if fips140.Enabled() {
+               return SupportedFIPSCompliantSSHKeyExchangeAlgorithms
+       }
+       return SupportedSSHKeyExchangeAlgorithms
+}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/argocd-cli-3.1.0/util/lua/custom_actions_test.go 
new/argocd-cli-3.1.1/util/lua/custom_actions_test.go
--- old/argocd-cli-3.1.0/util/lua/custom_actions_test.go        2025-08-13 
22:36:22.000000000 +0200
+++ new/argocd-cli-3.1.1/util/lua/custom_actions_test.go        2025-08-25 
17:30:18.000000000 +0200
@@ -26,13 +26,9 @@
        if un == nil {
                return nil
        }
-       if un.GetKind() == "Job" {
-               err := unstructured.SetNestedField(un.Object, 
map[string]any{"name": "not sure why this works"}, "metadata")
-               if err != nil {
-                       return fmt.Errorf("failed to normalize Job: %w", err)
-               }
-       }
        switch un.GetKind() {
+       case "Job":
+               return t.normalizeJob(un)
        case "DaemonSet", "Deployment", "StatefulSet":
                err := unstructured.SetNestedStringMap(un.Object, 
map[string]string{"kubectl.kubernetes.io/restartedAt": "0001-01-01T00:00:00Z"}, 
"spec", "template", "metadata", "annotations")
                if err != nil {
@@ -85,6 +81,28 @@
        return nil
 }
 
+func (t testNormalizer) normalizeJob(un *unstructured.Unstructured) error {
+       if conditions, exist, err := unstructured.NestedSlice(un.Object, 
"status", "conditions"); err != nil {
+               return fmt.Errorf("failed to normalize %s: %w", un.GetKind(), 
err)
+       } else if exist {
+               changed := false
+               for i := range conditions {
+                       condition := conditions[i].(map[string]any)
+                       cType := condition["type"].(string)
+                       if cType == "FailureTarget" {
+                               condition["lastTransitionTime"] = 
"0001-01-01T00:00:00Z"
+                               changed = true
+                       }
+               }
+               if changed {
+                       if err := unstructured.SetNestedSlice(un.Object, 
conditions, "status", "conditions"); err != nil {
+                               return fmt.Errorf("failed to normalize %s: %w", 
un.GetKind(), err)
+                       }
+               }
+       }
+       return nil
+}
+
 type ActionTestStructure struct {
        DiscoveryTests []IndividualDiscoveryTest `yaml:"discoveryTests"`
        ActionTests    []IndividualActionTest    `yaml:"actionTests"`
@@ -208,8 +226,7 @@
                                                assert.Equal(t, 
sourceObj.GetNamespace(), result.GetNamespace())
                                        case CreateOperation:
                                                switch result.GetKind() {
-                                               case "Job":
-                                               case "Workflow":
+                                               case "Job", "Workflow":
                                                        // The name of the 
created resource is derived from the source object name, so the returned name 
is not actually equal to the testdata output name
                                                        
result.SetName(expectedObj.GetName())
                                                }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/argocd-cli-3.1.0/util/lua/lua.go 
new/argocd-cli-3.1.1/util/lua/lua.go
--- old/argocd-cli-3.1.0/util/lua/lua.go        2025-08-13 22:36:22.000000000 
+0200
+++ new/argocd-cli-3.1.1/util/lua/lua.go        2025-08-25 17:30:18.000000000 
+0200
@@ -290,7 +290,8 @@
                                switch oldValue := oldValueInterface.(type) {
                                case map[string]any:
                                        if len(newValue) == 0 {
-                                               mapToReturn[key] = oldValue
+                                               // Lua incorrectly decoded the 
empty object as an empty array, so set it to an empty object
+                                               mapToReturn[key] = 
map[string]any{}
                                        }
                                case []any:
                                        newArray := 
cleanReturnedArray(newValue, oldValue)
@@ -307,6 +308,10 @@
 func cleanReturnedArray(newObj, obj []any) []any {
        arrayToReturn := newObj
        for i := range newObj {
+               if i >= len(obj) {
+                       // If the new object is longer than the old one, we 
added an item to the array
+                       break
+               }
                switch newValue := newObj[i].(type) {
                case map[string]any:
                        if oldValue, ok := obj[i].(map[string]any); ok {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/argocd-cli-3.1.0/util/lua/lua_test.go 
new/argocd-cli-3.1.1/util/lua/lua_test.go
--- old/argocd-cli-3.1.0/util/lua/lua_test.go   2025-08-13 22:36:22.000000000 
+0200
+++ new/argocd-cli-3.1.1/util/lua/lua_test.go   2025-08-25 17:30:18.000000000 
+0200
@@ -707,7 +707,9 @@
        require.Error(t, err)
 }
 
-const objWithEmptyStruct = `
+func TestCleanPatch(t *testing.T) {
+       t.Run("Empty Struct preserved", func(t *testing.T) {
+               const obj = `
 apiVersion: argoproj.io/v1alpha1
 kind: Test
 metadata:
@@ -719,7 +721,8 @@
   resourceVersion: "123"
 spec:
   resources: {}
-  paused: true
+  updated:
+    something: true
   containers:
    - name: name1
      test: {}
@@ -727,8 +730,7 @@
      - name: name2
        test2: {}
 `
-
-const expectedUpdatedObjWithEmptyStruct = `
+               const expected = `
 apiVersion: argoproj.io/v1alpha1
 kind: Test
 metadata:
@@ -740,7 +742,7 @@
   resourceVersion: "123"
 spec:
   resources: {}
-  paused: false
+  updated: {}
   containers:
    - name: name1
      test: {}
@@ -748,21 +750,133 @@
      - name: name2
        test2: {}
 `
+               const luaAction = `
+obj.spec.updated = {}
+return obj
+`
+               testObj := StrToUnstructured(obj)
+               expectedObj := StrToUnstructured(expected)
+               vm := VM{}
+               newObjects, err := vm.ExecuteResourceAction(testObj, luaAction, 
nil)
+               require.NoError(t, err)
+               assert.Len(t, newObjects, 1)
+               assert.Equal(t, newObjects[0].K8SOperation, 
K8SOperation("patch"))
+               assert.Equal(t, expectedObj, newObjects[0].UnstructuredObj)
+       })
 
-const pausedToFalseLua = `
-obj.spec.paused = false
+       t.Run("New item added to array", func(t *testing.T) {
+               const obj = `
+apiVersion: argoproj.io/v1alpha1
+kind: Test
+metadata:
+  labels:
+    app.kubernetes.io/instance: helm-guestbook
+    test: test
+  name: helm-guestbook
+  namespace: default
+  resourceVersion: "123"
+spec:
+  containers:
+   - name: name1
+     test: {}
+     anotherList:
+     - name: name2
+       test2: {}
+`
+               const expected = `
+apiVersion: argoproj.io/v1alpha1
+kind: Test
+metadata:
+  labels:
+    app.kubernetes.io/instance: helm-guestbook
+    test: test
+  name: helm-guestbook
+  namespace: default
+  resourceVersion: "123"
+spec:
+  containers:
+   - name: name1
+     test: {}
+     anotherList:
+     - name: name2
+       test2: {}
+   - name: added
+     #test: {}       ### would be decoded as an empty array and is not 
supported. The type is unknown
+     testArray: []   ### works since it is decoded in the correct type
+     another:
+       supported: true
+`
+               // `test: {}` in new container would be decoded as an empty 
array and is not supported. The type is unknown
+               // `testArray: []` works since it is decoded in the correct type
+               const luaAction = `
+table.insert(obj.spec.containers, {name = "added", testArray = {}, another = 
{supported = true}})
 return obj
 `
+               testObj := StrToUnstructured(obj)
+               expectedObj := StrToUnstructured(expected)
+               vm := VM{}
+               newObjects, err := vm.ExecuteResourceAction(testObj, luaAction, 
nil)
+               require.NoError(t, err)
+               assert.Len(t, newObjects, 1)
+               assert.Equal(t, newObjects[0].K8SOperation, 
K8SOperation("patch"))
+               assert.Equal(t, expectedObj, newObjects[0].UnstructuredObj)
+       })
 
-func TestCleanPatch(t *testing.T) {
-       testObj := StrToUnstructured(objWithEmptyStruct)
-       expectedObj := StrToUnstructured(expectedUpdatedObjWithEmptyStruct)
-       vm := VM{}
-       newObjects, err := vm.ExecuteResourceAction(testObj, pausedToFalseLua, 
nil)
-       require.NoError(t, err)
-       assert.Len(t, newObjects, 1)
-       assert.Equal(t, newObjects[0].K8SOperation, K8SOperation("patch"))
-       assert.Equal(t, expectedObj, newObjects[0].UnstructuredObj)
+       t.Run("Last item removed from array", func(t *testing.T) {
+               const obj = `
+apiVersion: argoproj.io/v1alpha1
+kind: Test
+metadata:
+  labels:
+    app.kubernetes.io/instance: helm-guestbook
+    test: test
+  name: helm-guestbook
+  namespace: default
+  resourceVersion: "123"
+spec:
+  containers:
+   - name: name1
+     test: {}
+     anotherList:
+     - name: name2
+       test2: {}
+   - name: name3
+     test: {}
+     anotherList:
+     - name: name4
+       test2: {}
+`
+               const expected = `
+apiVersion: argoproj.io/v1alpha1
+kind: Test
+metadata:
+  labels:
+    app.kubernetes.io/instance: helm-guestbook
+    test: test
+  name: helm-guestbook
+  namespace: default
+  resourceVersion: "123"
+spec:
+  containers:
+   - name: name1
+     test: {}
+     anotherList:
+     - name: name2
+       test2: {}
+`
+               const luaAction = `
+table.remove(obj.spec.containers)
+return obj
+`
+               testObj := StrToUnstructured(obj)
+               expectedObj := StrToUnstructured(expected)
+               vm := VM{}
+               newObjects, err := vm.ExecuteResourceAction(testObj, luaAction, 
nil)
+               require.NoError(t, err)
+               assert.Len(t, newObjects, 1)
+               assert.Equal(t, newObjects[0].K8SOperation, 
K8SOperation("patch"))
+               assert.Equal(t, expectedObj, newObjects[0].UnstructuredObj)
+       })
 }
 
 func TestGetResourceHealth(t *testing.T) {

++++++ argocd-cli.obsinfo ++++++
--- /var/tmp/diff_new_pack.b3FAKl/_old  2025-08-26 14:57:30.295665695 +0200
+++ /var/tmp/diff_new_pack.b3FAKl/_new  2025-08-26 14:57:30.303666031 +0200
@@ -1,5 +1,5 @@
 name: argocd-cli
-version: 3.1.0
-mtime: 1755117382
-commit: 03c4ad854c1e6d922a121cd40f505d9bc6e402da
+version: 3.1.1
+mtime: 1756135818
+commit: fa342d153e0e7942938256aea491a68439a53c44
 

++++++ vendor.tar.gz ++++++
/work/SRC/openSUSE:Factory/argocd-cli/vendor.tar.gz 
/work/SRC/openSUSE:Factory/.argocd-cli.new.30751/vendor.tar.gz differ: char 
135, line 2

Reply via email to