-
Story
-
Resolution: Done
-
Normal
-
None
-
None
-
8
-
False
-
-
False
-
-
-
GitOps Tangerine Sprint 27
The text below was created with the help of AI
-
-
- Example
-
*ApplicationSet templates Applications with EXISTING legacy annotations:*
```yaml
apiVersion: argoproj.io/v1alpha1
kind: Application
metadata:
name: us-east-app-1
labels:
image-updater: my-image-updater # For CR to select
annotations:
- EXISTING legacy annotations - no changes needed!
argocd-image-updater.argoproj.io/image-list: 'app=nexus.company.domain/myapp:develop'
argocd-image-updater.argoproj.io/app.update-strategy: digest
argocd-image-updater.argoproj.io/app.helm.image-tag: mychart.image.tag
spec: ...
—
apiVersion: argoproj.io/v1alpha1
kind: Application
metadata:
name: eu-west-app-1
labels:
image-updater: my-image-updater
annotations: - Different tag for this app!
argocd-image-updater.argoproj.io/image-list: 'app=nexus.company.domain/myapp:main'
argocd-image-updater.argoproj.io/app.update-strategy: digest
argocd-image-updater.argoproj.io/app.helm.image-tag: mychart.image.tag
spec: ...
```
*One ImageUpdater CR for the entire ApplicationSet:*
```yaml
apiVersion: argocd-image-updater.argoproj.io/v1alpha1
kind: ImageUpdater
metadata:
name: my-image-updater
spec:
namespace: argocd
applicationRefs:
- namePattern: "*" # Wildcard - rely on labelSelectors
labelSelectors:
matchLabels:
image-updater: my-image-updater
readFromApplicationAnnotations: true # NEW FIELD - read legacy annotations!
```
-
-
- CRD Change Required
-
*Add ONE new field to `ApplicationRef`:*
```go
type ApplicationRef struct
```