--- /dev/null
+##############################################################################
+# Copyright (c) 2019 AT&T Intellectual Property. #
+# Copyright (c) 2019 Nokia. #
+# #
+# Licensed under the Apache License, Version 2.0 (the "License"); #
+# you maynot use this file except in compliance with the License. #
+# #
+# You may obtain a copy of the License at #
+# http://www.apache.org/licenses/LICENSE-2.0 #
+# #
+# Unless required by applicable law or agreed to in writing, software #
+# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT #
+# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. #
+# See the License for the specific language governing permissions and #
+# limitations under the License. #
+##############################################################################
+
+---
+apiVersion: v1
+kind: Namespace
+metadata:
+ name: heptio-sonobuoy
+---
+apiVersion: v1
+kind: ServiceAccount
+metadata:
+ labels:
+ component: sonobuoy
+ name: sonobuoy-serviceaccount
+ namespace: heptio-sonobuoy
+---
+apiVersion: rbac.authorization.k8s.io/v1
+kind: ClusterRoleBinding
+metadata:
+ labels:
+ component: sonobuoy
+ name: sonobuoy-serviceaccount-heptio-sonobuoy
+roleRef:
+ apiGroup: rbac.authorization.k8s.io
+ kind: ClusterRole
+ name: sonobuoy-serviceaccount
+subjects:
+- kind: ServiceAccount
+ name: sonobuoy-serviceaccount
+ namespace: heptio-sonobuoy
+---
+apiVersion: rbac.authorization.k8s.io/v1
+kind: ClusterRole
+metadata:
+ labels:
+ component: sonobuoy
+ name: sonobuoy-serviceaccount
+rules:
+- apiGroups:
+ - '*'
+ resources:
+ - '*'
+ verbs:
+ - '*'
+- nonResourceURLs:
+ - '/metrics'
+ - '/logs'
+ - '/logs/*'
+ verbs:
+ - 'get'
+---
+apiVersion: v1
+data:
+ config.json: |
+ {"Description":"DEFAULT","UUID":"376a4ddc-4498-49fc-af2e-999242c4c245","Version":"v0.13.0","ResultsDir":"/tmp/sonobuoy","Resources":["CertificateSigningRequests","ClusterRoleBindings","ClusterRoles","ComponentStatuses","CustomResourceDefinitions","Nodes","PersistentVolumes","PodSecurityPolicies","ServerGroups","ServerVersion","StorageClasses","ConfigMaps","ControllerRevisions","CronJobs","DaemonSets","Deployments","Endpoints","Ingresses","Jobs","LimitRanges","NetworkPolicies","PersistentVolumeClaims","PodDisruptionBudgets","PodTemplates","Pods","ReplicaSets","ReplicationControllers","ResourceQuotas","RoleBindings","Roles","ServiceAccounts","Services","StatefulSets"],"Filters":{"Namespaces":".*","LabelSelector":""},"Limits":{"PodLogs":{"LimitSize":"","LimitTime":""}},"Server":{"bindaddress":"0.0.0.0","bindport":8080,"advertiseaddress":"","timeoutseconds":10800},"Plugins":[{"name":"e2e"},{"name":"systemd-logs"}],"PluginSearchPath":["./plugins.d","/etc/sonobuoy/plugins.d","~/sonobuoy/plugins.d"],"Namespace":"heptio-sonobuoy","LoadedPlugins":null,"WorkerImage":"gcr.io/heptio-images/sonobuoy:latest","ImagePullPolicy":"Always"}
+kind: ConfigMap
+metadata:
+ labels:
+ component: sonobuoy
+ name: sonobuoy-config-cm
+ namespace: heptio-sonobuoy
+---
+apiVersion: v1
+data:
+ e2e.yaml: |
+ sonobuoy-config:
+ driver: Job
+ plugin-name: e2e
+ result-type: e2e
+ spec:
+ env:
+ - name: E2E_FOCUS
+ value: '\[Conformance\]'
+ - name: E2E_SKIP
+ value: 'Alpha|\[(Disruptive|Feature:[^\]]+|Flaky)\]'
+ - name: E2E_PARALLEL
+ value: '1'
+ command: ["/run_e2e.sh"]
+ image: gcr.io/heptio-images/kube-conformance:v1.11
+ imagePullPolicy: Always
+ name: e2e
+ volumeMounts:
+ - mountPath: /tmp/results
+ name: results
+ readOnly: false
+ tolerations:
+ - operator: "Exists"
+ systemd-logs.yaml: |
+ sonobuoy-config:
+ driver: DaemonSet
+ plugin-name: systemd-logs
+ result-type: systemd_logs
+ spec:
+ command: ["/bin/sh", "-c", "/get_systemd_logs.sh && sleep 3600"]
+ env:
+ - name: NODE_NAME
+ valueFrom:
+ fieldRef:
+ fieldPath: spec.nodeName
+ - name: RESULTS_DIR
+ value: /tmp/results
+ - name: CHROOT_DIR
+ value: /node
+ image: gcr.io/heptio-images/sonobuoy-plugin-systemd-logs:latest
+ imagePullPolicy: Always
+ name: sonobuoy-systemd-logs-config
+ securityContext:
+ privileged: true
+ volumeMounts:
+ - mountPath: /tmp/results
+ name: results
+ readOnly: false
+ - mountPath: /node
+ name: root
+ readOnly: false
+kind: ConfigMap
+metadata:
+ labels:
+ component: sonobuoy
+ name: sonobuoy-plugins-cm
+ namespace: heptio-sonobuoy
+---
+apiVersion: v1
+kind: Pod
+metadata:
+ labels:
+ component: sonobuoy
+ run: sonobuoy-master
+ tier: analysis
+ name: sonobuoy
+ namespace: heptio-sonobuoy
+spec:
+ containers:
+ - command:
+ - /bin/bash
+ - -c
+ - /sonobuoy master --no-exit=true -v 3 --logtostderr
+ env:
+ - name: SONOBUOY_ADVERTISE_IP
+ valueFrom:
+ fieldRef:
+ fieldPath: status.podIP
+ image: gcr.io/heptio-images/sonobuoy:v0.13.0
+ imagePullPolicy: Always
+ name: kube-sonobuoy
+ volumeMounts:
+ - mountPath: /etc/sonobuoy
+ name: sonobuoy-config-volume
+ - mountPath: /plugins.d
+ name: sonobuoy-plugins-volume
+ - mountPath: /tmp/sonobuoy
+ name: output-volume
+ restartPolicy: Never
+ serviceAccountName: sonobuoy-serviceaccount
+ volumes:
+ - configMap:
+ name: sonobuoy-config-cm
+ name: sonobuoy-config-volume
+ - configMap:
+ name: sonobuoy-plugins-cm
+ name: sonobuoy-plugins-volume
+ - emptyDir: {}
+ name: output-volume
+---
+apiVersion: v1
+kind: Service
+metadata:
+ labels:
+ component: sonobuoy
+ run: sonobuoy-master
+ name: sonobuoy-master
+ namespace: heptio-sonobuoy
+spec:
+ ports:
+ - port: 8080
+ protocol: TCP
+ targetPort: 8080
+ selector:
+ run: sonobuoy-master
+ type: ClusterIP
+