mirror of
https://github.com/hanzoai/deploy.git
synced 2026-10-07 08:44:50 +00:00
Two corrections on top of the naming pass, both found by checking the live cluster rather than the source. The rename had silently changed the user-facing annotation key from argocd.argoproj.io/sync-wave to cd.argoproj.io/sync-wave — 63 live Applications carry the old key, so deploying that would have ignored every sync-wave and broken fleet deploy ordering. The key is now cd.hanzo.ai/*, and universe 575650286 moves the ApplicationSet template that stamps it, so the controller regenerates all 63 consistently. The API group in code said argoproj.io/v1alpha1 in 157 places while the cluster has served apps.hanzo.ai/v1alpha1 since 2026-07-23 (the CRDs are applications.apps.hanzo.ai). Code now matches what is actually served. The legacy applications.argoproj.io/app-name label had ZERO live users, so it went with the rest. foo.argoproj.io test fixtures became foo.example.com — arbitrary test domains should not carry a vendor name. go build ./... exit 0. Co-authored-by: Hanzo Dev <[email protected]>
2.8 KiB
2.8 KiB
Failed to parse new settings
error converting YAML to JSON
YAML syntax is incorrect.
incorrect:
apiVersion: v1
kind: ConfigMap
metadata:
name: cd-notifications-cm
data:
service.slack: |
token: $slack-token
icon: :rocket:
correct:
apiVersion: v1
kind: ConfigMap
metadata:
name: cd-notifications-cm
data:
service.slack: |
token: $slack-token
icon: ":rocket:" # <- diff here
service type 'xxxx' is not supported
Check the cd-notifications controller version. For example, the Teams integration support started in v1.1.0.
Failed to notify recipient
notification service 'xxxx' is not supported
You have not defined xxxx in cd-notifications-cm or parsing failed.
GitHub.repoURL (\u003cno value\u003e) does not have a / using the configuration
Likely caused by an Application with multiple sources:
spec:
sources: # <- multiple sources
- repoURL: https://github.com/exampleOrg/first.git
path: sources/example
- repoURL: https://github.com/exampleOrg/second.git
targetRevision: "{{branch}}"
The standard notification template only supports a single source ({{.app.spec.source.repoURL}}). Use an index to specify the source in the array:
template.example: |
github:
repoURLPath: "{{ (index .app.spec.sources 0).repoURL }}"
Error message POST https://api.github.com/repos/xxxx/yyyy/statuses/: 404 Not Found
This case is similar to the previous one, you have multiple sources in the Application manifest.
Default revisionPath template {{.app.status.operationState.syncResult.revision}} is for an Application with single source.
Multi-source applications report application statuses in an array:
status:
operationState:
syncResult:
revisions:
- 38cfa22edf9148caabfecb288bfb47dc4352dfc6
- 38cfa22edf9148caabfecb288bfb47dc4352dfc6
Quick fix for this is to use `index` function to get the first revision:
```yaml
template.example: |
github:
revisionPath: "{{index .app.status.operationState.syncResult.revisions 0}}"
config referenced xxx, but key does not exist in secret
- If you are using a custom secret, check that the secret is in the same namespace
- You have added the label:
app.kubernetes.io/part-of: cdto the secret - You have tried restarting
cd-notificationscontroller
Example:
Secret:
apiVersion: v1
kind: Secret
metadata:
name: cd-slackbot
namespace: <the namespace where cd is installed>
labels:
app.kubernetes.io/part-of: cd
type: Opaque
data:
slack-token: <base64encryptedtoken>
ConfigMap
apiVersion: v1
kind: ConfigMap
metadata:
name: cd-notifications-cm
data:
service.slack: |
token: $cd-slackbot:slack-token