Files
deploy/manifests/base/applicationset-controller/hanzocd-applicationset-controller-deployment.yaml
zeekayandHanzo Dev 1ab6e799c1 cd: the module is github.com/hanzoai/cd, where it is actually hosted
go.mod still declared `module github.com/hanzoai/deploy` after the repo was
renamed. A Go module path is not cosmetic — it is the resolvable location. So
`go get github.com/hanzoai/cd` could not work, and anything importing this
module had to spell a name that no longer exists at that address. The build log
of v3.6.0 is where it surfaced: the compiler was still emitting
github.com/hanzoai/deploy/cmd/cd/commands.

3541 import paths across 690 .go, 19 .proto, 4 .yaml, 3 .sh, 2 .mod, Procfile
and Makefile. Plus the 62 ghcr.io/hanzoai/deploy image references, moved to
ghcr.io/hanzoai/cd to match hanzo.yml's build target — a distinct string from
the module path, replaced separately so neither could clobber the other.

go mod tidy clean, CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build ./... clean.

Co-authored-by: Hanzo Dev <[email protected]>
2026-07-28 21:16:24 -07:00

334 lines
13 KiB
YAML

apiVersion: apps/v1
kind: Deployment
metadata:
labels:
app.kubernetes.io/name: hanzocd-applicationset-controller
app.kubernetes.io/part-of: hanzocd
app.kubernetes.io/component: applicationset-controller
name: hanzocd-applicationset-controller
spec:
selector:
matchLabels:
app.kubernetes.io/name: hanzocd-applicationset-controller
template:
metadata:
labels:
app.kubernetes.io/name: hanzocd-applicationset-controller
spec:
containers:
- args:
- /usr/local/bin/hanzocd-applicationset-controller
image: ghcr.io/hanzoai/cd:latest
imagePullPolicy: Always
name: hanzocd-applicationset-controller
ports:
- containerPort: 7000
name: webhook
- containerPort: 8080
name: metrics
env:
- name: GRPC_ENABLE_TXT_SERVICE_CONFIG
valueFrom:
configMapKeyRef:
name: hanzocd-cmd-params-cm
key: applicationsetcontroller.grpc.enable.txt.service.config
optional: true
- name: CD_APPLICATIONSET_CONTROLLER_GLOBAL_PRESERVED_ANNOTATIONS
valueFrom:
configMapKeyRef:
key: applicationsetcontroller.global.preserved.annotations
name: hanzocd-cmd-params-cm
optional: true
- name: CD_APPLICATIONSET_CONTROLLER_GLOBAL_PRESERVED_LABELS
valueFrom:
configMapKeyRef:
key: applicationsetcontroller.global.preserved.labels
name: hanzocd-cmd-params-cm
optional: true
- name: NAMESPACE
valueFrom:
fieldRef:
fieldPath: metadata.namespace
- name: CD_APPLICATIONSET_CONTROLLER_ENABLE_LEADER_ELECTION
valueFrom:
configMapKeyRef:
key: applicationsetcontroller.enable.leader.election
name: hanzocd-cmd-params-cm
optional: true
- name: CD_APPLICATIONSET_CONTROLLER_REPO_SERVER
valueFrom:
configMapKeyRef:
key: repo.server
name: hanzocd-cmd-params-cm
optional: true
- name: CD_APPLICATIONSET_CONTROLLER_POLICY
valueFrom:
configMapKeyRef:
key: applicationsetcontroller.policy
name: hanzocd-cmd-params-cm
optional: true
- name: CD_APPLICATIONSET_CONTROLLER_ENABLE_POLICY_OVERRIDE
valueFrom:
configMapKeyRef:
key: applicationsetcontroller.enable.policy.override
name: hanzocd-cmd-params-cm
optional: true
- name: CD_APPLICATIONSET_CONTROLLER_DEBUG
valueFrom:
configMapKeyRef:
key: applicationsetcontroller.debug
name: hanzocd-cmd-params-cm
optional: true
- name: CD_APPLICATIONSET_CONTROLLER_LOGFORMAT
valueFrom:
configMapKeyRef:
key: applicationsetcontroller.log.format
name: hanzocd-cmd-params-cm
optional: true
- name: CD_APPLICATIONSET_CONTROLLER_LOGLEVEL
valueFrom:
configMapKeyRef:
key: applicationsetcontroller.log.level
name: hanzocd-cmd-params-cm
optional: true
- name: CD_LOG_FORMAT_TIMESTAMP
valueFrom:
configMapKeyRef:
name: hanzocd-cmd-params-cm
key: log.format.timestamp
optional: true
- name: CD_K8S_CLIENT_QPS
valueFrom:
configMapKeyRef:
name: hanzocd-cmd-params-cm
key: applicationsetcontroller.k8s.client.qps
optional: true
- name: CD_K8S_CLIENT_BURST
valueFrom:
configMapKeyRef:
name: hanzocd-cmd-params-cm
key: applicationsetcontroller.k8s.client.burst
optional: true
- name: CD_K8S_CLIENT_MAX_IDLE_CONNECTIONS
valueFrom:
configMapKeyRef:
name: hanzocd-cmd-params-cm
key: applicationsetcontroller.k8s.client.max.idle.connections
optional: true
- name: CD_K8S_TCP_TIMEOUT
valueFrom:
configMapKeyRef:
name: hanzocd-cmd-params-cm
key: applicationsetcontroller.k8s.tcp.timeout
optional: true
- name: CD_K8S_TCP_KEEPALIVE
valueFrom:
configMapKeyRef:
name: hanzocd-cmd-params-cm
key: applicationsetcontroller.k8s.tcp.keepalive
optional: true
- name: CD_K8S_TLS_HANDSHAKE_TIMEOUT
valueFrom:
configMapKeyRef:
name: hanzocd-cmd-params-cm
key: applicationsetcontroller.k8s.tls.handshake.timeout
optional: true
- name: CD_K8S_TCP_IDLE_TIMEOUT
valueFrom:
configMapKeyRef:
name: hanzocd-cmd-params-cm
key: applicationsetcontroller.k8s.tcp.idle.timeout
optional: true
- name: CD_APPLICATIONSET_CONTROLLER_DRY_RUN
valueFrom:
configMapKeyRef:
key: applicationsetcontroller.dryrun
name: hanzocd-cmd-params-cm
optional: true
- name: CD_GIT_MODULES_ENABLED
valueFrom:
configMapKeyRef:
key: applicationsetcontroller.enable.git.submodule
name: hanzocd-cmd-params-cm
optional: true
- name: CD_APPLICATIONSET_CONTROLLER_ENABLE_PROGRESSIVE_SYNCS
valueFrom:
configMapKeyRef:
key: applicationsetcontroller.enable.progressive.syncs
name: hanzocd-cmd-params-cm
optional: true
- name: CD_APPLICATIONSET_CONTROLLER_TOKENREF_STRICT_MODE
valueFrom:
configMapKeyRef:
key: applicationsetcontroller.enable.tokenref.strict.mode
name: hanzocd-cmd-params-cm
optional: true
- name: CD_APPLICATIONSET_CONTROLLER_ENABLE_NEW_GIT_FILE_GLOBBING
valueFrom:
configMapKeyRef:
key: applicationsetcontroller.enable.new.git.file.globbing
name: hanzocd-cmd-params-cm
optional: true
- name: CD_APPLICATIONSET_CONTROLLER_REPO_SERVER_PLAINTEXT
valueFrom:
configMapKeyRef:
name: hanzocd-cmd-params-cm
key: applicationsetcontroller.repo.server.plaintext
optional: true
- name: CD_APPLICATIONSET_CONTROLLER_REPO_SERVER_STRICT_TLS
valueFrom:
configMapKeyRef:
name: hanzocd-cmd-params-cm
key: applicationsetcontroller.repo.server.strict.tls
optional: true
- name: CD_APPLICATIONSET_CONTROLLER_REPO_SERVER_CA_CERT_PATH
valueFrom:
configMapKeyRef:
name: hanzocd-cmd-params-cm
key: applicationsetcontroller.repo.server.ca.cert.path
optional: true
- name: CD_APPLICATIONSET_CONTROLLER_REPO_SERVER_CLIENT_CERT_PATH
valueFrom:
configMapKeyRef:
name: hanzocd-cmd-params-cm
key: applicationsetcontroller.repo.server.client.cert.path
optional: true
- name: CD_APPLICATIONSET_CONTROLLER_REPO_SERVER_CLIENT_CERT_KEY_PATH
valueFrom:
configMapKeyRef:
name: hanzocd-cmd-params-cm
key: applicationsetcontroller.repo.server.client.cert.key.path
optional: true
- name: CD_APPLICATIONSET_CONTROLLER_REPO_SERVER_TIMEOUT_SECONDS
valueFrom:
configMapKeyRef:
name: hanzocd-cmd-params-cm
key: applicationsetcontroller.repo.server.timeout.seconds
optional: true
- name: CD_APPLICATIONSET_CONTROLLER_CONCURRENT_RECONCILIATIONS
valueFrom:
configMapKeyRef:
name: hanzocd-cmd-params-cm
key: applicationsetcontroller.concurrent.reconciliations.max
optional: true
- name: CD_APPLICATIONSET_CONTROLLER_NAMESPACES
valueFrom:
configMapKeyRef:
key: applicationsetcontroller.namespaces
name: hanzocd-cmd-params-cm
optional: true
- name: CD_APPLICATIONSET_CONTROLLER_SCM_ROOT_CA_PATH
valueFrom:
configMapKeyRef:
key: applicationsetcontroller.scm.root.ca.path
name: hanzocd-cmd-params-cm
optional: true
- name: CD_APPLICATIONSET_CONTROLLER_ALLOWED_SCM_PROVIDERS
valueFrom:
configMapKeyRef:
name: hanzocd-cmd-params-cm
key: applicationsetcontroller.allowed.scm.providers
optional: true
- name: CD_APPLICATIONSET_CONTROLLER_ENABLE_SCM_PROVIDERS
valueFrom:
configMapKeyRef:
name: hanzocd-cmd-params-cm
key: applicationsetcontroller.enable.scm.providers
optional: true
- name: CD_APPLICATIONSET_CONTROLLER_ENABLE_GITHUB_API_METRICS
valueFrom:
configMapKeyRef:
name: hanzocd-cmd-params-cm
key: applicationsetcontroller.enable.github.api.metrics
optional: true
- name: CD_APPLICATIONSET_CONTROLLER_WEBHOOK_PARALLELISM_LIMIT
valueFrom:
configMapKeyRef:
name: hanzocd-cmd-params-cm
key: applicationsetcontroller.webhook.parallelism.limit
optional: true
- name: CD_APPLICATIONSET_CONTROLLER_REQUEUE_AFTER
valueFrom:
configMapKeyRef:
name: hanzocd-cmd-params-cm
key: applicationsetcontroller.requeue.after
optional: true
- name: CD_APPLICATIONSET_CONTROLLER_MAX_RESOURCES_STATUS_COUNT
valueFrom:
configMapKeyRef:
name: hanzocd-cmd-params-cm
key: applicationsetcontroller.status.max.resources.count
optional: true
volumeMounts:
- mountPath: /app/config/ssh
name: ssh-known-hosts
- mountPath: /app/config/tls
name: tls-certs
- mountPath: /app/config/gpg/source
name: gpg-keys
- mountPath: /app/config/gpg/keys
name: gpg-keyring
- mountPath: /tmp
name: tmp
- name: hanzocd-repo-server-tls
mountPath: /app/config/reposerver/tls
- name: hanzocd-repo-server-mtls
mountPath: /app/config/reposerver/mtls
- name: hanzocd-cmd-params-cm
mountPath: /home/cd/params
securityContext:
capabilities:
drop:
- ALL
allowPrivilegeEscalation: false
readOnlyRootFilesystem: true
runAsNonRoot: true
seccompProfile:
type: RuntimeDefault
serviceAccountName: hanzocd-applicationset-controller
volumes:
- configMap:
name: hanzocd-ssh-known-hosts-cm
name: ssh-known-hosts
- configMap:
name: hanzocd-tls-certs-cm
name: tls-certs
- configMap:
name: hanzocd-gpg-keys-cm
name: gpg-keys
- emptyDir: { }
name: gpg-keyring
- emptyDir: { }
name: tmp
- name: hanzocd-repo-server-tls
secret:
secretName: hanzocd-repo-server-tls
optional: true
items:
- key: tls.crt
path: tls.crt
- key: tls.key
path: tls.key
- key: ca.crt
path: ca.crt
- name: hanzocd-repo-server-mtls
secret:
secretName: hanzocd-repo-server-mtls
optional: true
items:
- key: client.crt
path: client.crt
- key: client.key
path: client.key
- key: server-ca.crt
path: server-ca.crt
- name: hanzocd-cmd-params-cm
configMap:
optional: true
name: hanzocd-cmd-params-cm
items:
- key: applicationsetcontroller.profile.enabled
path: profiler.enabled
nodeSelector:
kubernetes.io/os: linux