--- apiVersion: v1 kind: Namespace metadata: name: knative-build --- apiVersion: rbac.authorization.k8s.io/v1 kind: ClusterRole metadata: name: knative-build-admin rules: - apiGroups: - "" resources: - pods - namespaces - secrets - events - serviceaccounts - configmaps verbs: - get - list - create - update - delete - patch - watch - apiGroups: - extensions resources: - deployments verbs: - get - list - create - update - delete - patch - watch - apiGroups: - admissionregistration.k8s.io resources: - mutatingwebhookconfigurations verbs: - get - list - create - update - delete - patch - watch - apiGroups: - apiextensions.k8s.io resources: - customresourcedefinitions verbs: - get - list - create - update - delete - patch - watch - apiGroups: - build.knative.dev resources: - builds - buildtemplates - clusterbuildtemplates verbs: - get - list - create - update - delete - patch - watch - apiGroups: - caching.internal.knative.dev resources: - images verbs: - get - list - create - update - delete - deletecollection - patch - watch --- apiVersion: v1 kind: ServiceAccount metadata: name: build-controller namespace: knative-build --- apiVersion: rbac.authorization.k8s.io/v1beta1 kind: ClusterRoleBinding metadata: name: build-controller-admin roleRef: apiGroup: rbac.authorization.k8s.io kind: ClusterRole name: knative-build-admin subjects: - kind: ServiceAccount name: build-controller namespace: knative-build --- apiVersion: apiextensions.k8s.io/v1beta1 kind: CustomResourceDefinition metadata: name: builds.build.knative.dev spec: additionalPrinterColumns: - JSONPath: .status.conditions[?(@.type=="Succeeded")].status name: Succeeded type: string - JSONPath: .status.conditions[?(@.type=="Succeeded")].reason name: Reason type: string - JSONPath: .status.startTime name: StartTime type: date - JSONPath: .status.completionTime name: CompletionTime type: date group: build.knative.dev names: categories: - all - knative kind: Build plural: builds scope: Namespaced version: v1alpha1 --- apiVersion: apiextensions.k8s.io/v1beta1 kind: CustomResourceDefinition metadata: name: buildtemplates.build.knative.dev spec: additionalPrinterColumns: - JSONPath: .metadata.creationTimestamp name: Age type: date group: build.knative.dev names: categories: - all - knative kind: BuildTemplate plural: buildtemplates scope: Namespaced version: v1alpha1 --- apiVersion: apiextensions.k8s.io/v1beta1 kind: CustomResourceDefinition metadata: name: clusterbuildtemplates.build.knative.dev spec: additionalPrinterColumns: - JSONPath: .metadata.creationTimestamp name: Age type: date group: build.knative.dev names: categories: - all - knative kind: ClusterBuildTemplate plural: clusterbuildtemplates scope: Cluster version: v1alpha1 --- apiVersion: apiextensions.k8s.io/v1beta1 kind: CustomResourceDefinition metadata: name: images.caching.internal.knative.dev spec: group: caching.internal.knative.dev names: categories: - all - knative-internal - caching kind: Image plural: images shortNames: - img singular: image scope: Namespaced version: v1alpha1 --- apiVersion: v1 kind: Service metadata: labels: app: build-controller name: build-controller namespace: knative-build spec: ports: - name: metrics port: 9090 protocol: TCP targetPort: 9090 selector: app: build-controller --- apiVersion: v1 kind: Service metadata: labels: role: build-webhook name: build-webhook namespace: knative-build spec: ports: - port: 443 targetPort: 443 selector: role: build-webhook --- apiVersion: caching.internal.knative.dev/v1alpha1 kind: Image metadata: name: creds-init namespace: knative-build spec: image: gcr.io/knative-releases/github.com/knative/build/cmd/creds-init@sha256:c1c11fafd337f62eea18a1f02b78e6ae6949779bed72d53d19b2870723a8f104 --- apiVersion: caching.internal.knative.dev/v1alpha1 kind: Image metadata: name: git-init namespace: knative-build spec: image: gcr.io/knative-releases/github.com/knative/build/cmd/git-init@sha256:6fa8043ed114920cd61e28db3c942647ba48415fe1208acde2fb2ac0746c9164 --- apiVersion: caching.internal.knative.dev/v1alpha1 kind: Image metadata: name: gcs-fetcher namespace: knative-build spec: image: gcr.io/cloud-builders/gcs-fetcher --- apiVersion: caching.internal.knative.dev/v1alpha1 kind: Image metadata: name: nop namespace: knative-build spec: image: gcr.io/knative-releases/github.com/knative/build/cmd/nop@sha256:f94e6413749759bc3f80d33e76c36509d6a63f7b206d2ca8fff167a0bb9c77f2 --- apiVersion: v1 data: loglevel.controller: info loglevel.creds-init: info loglevel.git-init: info loglevel.webhook: info zap-logger-config: | { "level": "info", "development": false, "sampling": { "initial": 100, "thereafter": 100 }, "outputPaths": ["stdout"], "errorOutputPaths": ["stderr"], "encoding": "json", "encoderConfig": { "timeKey": "", "levelKey": "level", "nameKey": "logger", "callerKey": "caller", "messageKey": "msg", "stacktraceKey": "stacktrace", "lineEnding": "", "levelEncoder": "", "timeEncoder": "", "durationEncoder": "", "callerEncoder": "" } } kind: ConfigMap metadata: name: config-logging namespace: knative-build --- apiVersion: apps/v1 kind: Deployment metadata: name: build-controller namespace: knative-build spec: replicas: 1 selector: matchLabels: app: build-controller template: metadata: labels: app: build-controller spec: containers: - args: - -logtostderr - -stderrthreshold - INFO - -creds-image - gcr.io/knative-releases/github.com/knative/build/cmd/creds-init@sha256:c1c11fafd337f62eea18a1f02b78e6ae6949779bed72d53d19b2870723a8f104 - -git-image - gcr.io/knative-releases/github.com/knative/build/cmd/git-init@sha256:6fa8043ed114920cd61e28db3c942647ba48415fe1208acde2fb2ac0746c9164 - -nop-image - gcr.io/knative-releases/github.com/knative/build/cmd/nop@sha256:f94e6413749759bc3f80d33e76c36509d6a63f7b206d2ca8fff167a0bb9c77f2 env: - name: SYSTEM_NAMESPACE valueFrom: fieldRef: fieldPath: metadata.namespace image: gcr.io/knative-releases/github.com/knative/build/cmd/controller@sha256:2667d0ff68a406e0103c58145edef916edc1b41695b38964dc6ccb0b38c0aedf name: build-controller volumeMounts: - mountPath: /etc/config-logging name: config-logging serviceAccountName: build-controller volumes: - configMap: name: config-logging name: config-logging --- apiVersion: apps/v1 kind: Deployment metadata: name: build-webhook namespace: knative-build spec: replicas: 1 selector: matchLabels: app: build-webhook template: metadata: labels: app: build-webhook role: build-webhook spec: containers: - args: - -logtostderr - -stderrthreshold - INFO env: - name: SYSTEM_NAMESPACE valueFrom: fieldRef: fieldPath: metadata.namespace image: gcr.io/knative-releases/github.com/knative/build/cmd/webhook@sha256:58775663a5bc0d782c8505a28cc88616a5e08115959dc62fa07af5ad76c54a97 name: build-webhook volumeMounts: - mountPath: /etc/config-logging name: config-logging serviceAccountName: build-controller volumes: - configMap: name: config-logging name: config-logging