From b6586d529188b4116cdce4dd7bd78777f328a28b Mon Sep 17 00:00:00 2001 From: Samuel Attwood Date: Fri, 3 Dec 2021 15:19:58 -0500 Subject: [PATCH 1/3] Adding assets --- assets/fpga-operator/fpga-operator-2.6.102.tgz | Bin 0 -> 8875 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 assets/fpga-operator/fpga-operator-2.6.102.tgz diff --git a/assets/fpga-operator/fpga-operator-2.6.102.tgz b/assets/fpga-operator/fpga-operator-2.6.102.tgz new file mode 100644 index 0000000000000000000000000000000000000000..36a709f99325d7c91b82e3a08a8db2ecde8d2a89 GIT binary patch literal 8875 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 Date: Fri, 3 Dec 2021 15:20:12 -0500 Subject: [PATCH 2/3] Adding charts --- .../fpga-operator/2.6.102/Chart.lock | 6 + .../fpga-operator/2.6.102/Chart.yaml | 36 +++ .../fpga-operator/2.6.102/README.md | 81 ++++++ .../fpga-operator/2.6.102/app-readme.md | 7 + .../charts/node-feature-discovery/.helmignore | 23 ++ .../charts/node-feature-discovery/Chart.yaml | 14 ++ .../charts/node-feature-discovery/README.md | 10 + .../templates/_helpers.tpl | 63 +++++ .../templates/clusterrole.yaml | 21 ++ .../templates/clusterrolebinding.yaml | 16 ++ .../templates/master.yaml | 100 ++++++++ .../templates/nfd-worker-conf.yaml | 9 + .../templates/service.yaml | 16 ++ .../templates/serviceaccount.yaml | 12 + .../templates/worker.yaml | 131 ++++++++++ .../charts/node-feature-discovery/values.yaml | 235 ++++++++++++++++++ .../fpga-operator/2.6.102/templates/NOTES.txt | 9 + .../2.6.102/templates/_helpers.tpl | 28 +++ .../templates/cluster-role-binding.yaml | 14 ++ .../2.6.102/templates/cluster-role.yaml | 13 + .../2.6.102/templates/csi-driver.yaml | 10 + .../2.6.102/templates/daemon-set.yaml | 185 ++++++++++++++ .../2.6.102/templates/deployment.yaml | 60 +++++ .../mutating-webhook-configuration.yaml | 17 ++ .../2.6.102/templates/secret.yaml | 12 + .../2.6.102/templates/service-account.yaml | 7 + .../2.6.102/templates/service.yaml | 14 ++ .../fpga-operator/2.6.102/values.yaml | 78 ++++++ 28 files changed, 1227 insertions(+) create mode 100644 charts/fpga-operator/fpga-operator/2.6.102/Chart.lock create mode 100644 charts/fpga-operator/fpga-operator/2.6.102/Chart.yaml create mode 100644 charts/fpga-operator/fpga-operator/2.6.102/README.md create mode 100644 charts/fpga-operator/fpga-operator/2.6.102/app-readme.md create mode 100644 charts/fpga-operator/fpga-operator/2.6.102/charts/node-feature-discovery/.helmignore create mode 100644 charts/fpga-operator/fpga-operator/2.6.102/charts/node-feature-discovery/Chart.yaml create mode 100644 charts/fpga-operator/fpga-operator/2.6.102/charts/node-feature-discovery/README.md create mode 100644 charts/fpga-operator/fpga-operator/2.6.102/charts/node-feature-discovery/templates/_helpers.tpl create mode 100644 charts/fpga-operator/fpga-operator/2.6.102/charts/node-feature-discovery/templates/clusterrole.yaml create mode 100644 charts/fpga-operator/fpga-operator/2.6.102/charts/node-feature-discovery/templates/clusterrolebinding.yaml create mode 100644 charts/fpga-operator/fpga-operator/2.6.102/charts/node-feature-discovery/templates/master.yaml create mode 100644 charts/fpga-operator/fpga-operator/2.6.102/charts/node-feature-discovery/templates/nfd-worker-conf.yaml create mode 100644 charts/fpga-operator/fpga-operator/2.6.102/charts/node-feature-discovery/templates/service.yaml create mode 100644 charts/fpga-operator/fpga-operator/2.6.102/charts/node-feature-discovery/templates/serviceaccount.yaml create mode 100644 charts/fpga-operator/fpga-operator/2.6.102/charts/node-feature-discovery/templates/worker.yaml create mode 100644 charts/fpga-operator/fpga-operator/2.6.102/charts/node-feature-discovery/values.yaml create mode 100644 charts/fpga-operator/fpga-operator/2.6.102/templates/NOTES.txt create mode 100644 charts/fpga-operator/fpga-operator/2.6.102/templates/_helpers.tpl create mode 100644 charts/fpga-operator/fpga-operator/2.6.102/templates/cluster-role-binding.yaml create mode 100644 charts/fpga-operator/fpga-operator/2.6.102/templates/cluster-role.yaml create mode 100644 charts/fpga-operator/fpga-operator/2.6.102/templates/csi-driver.yaml create mode 100644 charts/fpga-operator/fpga-operator/2.6.102/templates/daemon-set.yaml create mode 100644 charts/fpga-operator/fpga-operator/2.6.102/templates/deployment.yaml create mode 100644 charts/fpga-operator/fpga-operator/2.6.102/templates/mutating-webhook-configuration.yaml create mode 100644 charts/fpga-operator/fpga-operator/2.6.102/templates/secret.yaml create mode 100644 charts/fpga-operator/fpga-operator/2.6.102/templates/service-account.yaml create mode 100644 charts/fpga-operator/fpga-operator/2.6.102/templates/service.yaml create mode 100644 charts/fpga-operator/fpga-operator/2.6.102/values.yaml diff --git a/charts/fpga-operator/fpga-operator/2.6.102/Chart.lock b/charts/fpga-operator/fpga-operator/2.6.102/Chart.lock new file mode 100644 index 000000000..87b155b12 --- /dev/null +++ b/charts/fpga-operator/fpga-operator/2.6.102/Chart.lock @@ -0,0 +1,6 @@ +dependencies: +- name: node-feature-discovery + repository: https://kubernetes-sigs.github.io/node-feature-discovery/charts + version: 0.9.0 +digest: sha256:8a6feace87ead9cd3f93e78b26ba11a47bd7155f6e5fa7faeb6bdbaed50a18a5 +generated: "2021-11-16T21:35:13.145288325Z" diff --git a/charts/fpga-operator/fpga-operator/2.6.102/Chart.yaml b/charts/fpga-operator/fpga-operator/2.6.102/Chart.yaml new file mode 100644 index 000000000..22360b8bc --- /dev/null +++ b/charts/fpga-operator/fpga-operator/2.6.102/Chart.yaml @@ -0,0 +1,36 @@ +annotations: + artifacthub.io/license: Apache-2.0 + artifacthub.io/links: | + - name: Documentation + url: https://docs.inaccel.com + catalog.cattle.io/certified: partner + catalog.cattle.io/display-name: InAccel FPGA Operator + catalog.cattle.io/namespace: kube-system + catalog.cattle.io/os: linux + catalog.cattle.io/release-name: inaccel + catalog.cattle.io/scope: downstream + category: Infrastructure +apiVersion: v2 +appVersion: "2.1" +dependencies: +- alias: fpga-discovery + condition: fpga-discovery.enabled + name: node-feature-discovery + repository: file://./charts/node-feature-discovery + version: 0.9.0 +description: Simplifying FPGA management in Kubernetes +home: https://inaccel.com +icon: https://en.gravatar.com/userimage/147236320/2a11cd2992b4521ec287587f03fae35c.png?size=1250 +keywords: +- fpga +- infrastructure +kubeVersion: '>= 1.18.0-0' +maintainers: +- email: info@inaccel.com + name: InAccel +name: fpga-operator +sources: +- https://docs.inaccel.com +- https://github.com/inaccel/helm +type: application +version: 2.6.102 diff --git a/charts/fpga-operator/fpga-operator/2.6.102/README.md b/charts/fpga-operator/fpga-operator/2.6.102/README.md new file mode 100644 index 000000000..2ac3af228 --- /dev/null +++ b/charts/fpga-operator/fpga-operator/2.6.102/README.md @@ -0,0 +1,81 @@ +# InAccel FPGA Operator + +Simplifying FPGA management in Kubernetes + +## Installing the Chart + +To install the chart with the release name `my-fpga-operator`: + +```console +$ helm repo add inaccel https://setup.inaccel.com/helm +$ helm install my-fpga-operator inaccel/fpga-operator +``` + +These commands deploy InAccel FPGA Operator on the Kubernetes cluster in the +default configuration. + +> **Tip**: List all releases using `helm list` + +## Uninstalling the Chart + +To uninstall/delete the `my-fpga-operator` deployment: + +```console +$ helm uninstall my-fpga-operator +``` + +The command removes all the Kubernetes components associated with the chart and +deletes the release. + +## Parameters + +The following table lists the configurable parameters of the InAccel FPGA +Operator chart and their default values. + +| Parameter | Default | +| -------------------- | ------------------ | +| `coral.httpsProxy` | | +| `coral.image` | `inaccel/coral` | +| `coral.logLevel` | `info` | +| `coral.port` | | +| `coral.pullPolicy` | `Always` | +| `coral.resources` | | +| `coral.tag` | *APP VERSION* | +| `daemon.debug` | `false` | +| `daemon.image` | `inaccel/daemon` | +| `daemon.pullPolicy` | | +| `daemon.resources` | | +| `daemon.tag` | `latest` | +| `driver.enabled` | `true` | +| `driver.image` | `inaccel/driver` | +| `driver.pullPolicy` | | +| `driver.tag` | `latest` | +| `kubelet` | `/var/lib/kubelet` | +| `license` | | +| `mkrt.image` | `inaccel/mkrt` | +| `mkrt.pullPolicy` | | +| `mkrt.tag` | `latest` | +| `monitor.image` | `inaccel/monitor` | +| `monitor.port` | | +| `monitor.pullPolicy` | `Always` | +| `monitor.resources` | | +| `monitor.tag` | *APP VERSION* | +| `reef.debug` | `false` | +| `reef.image` | `inaccel/reef` | +| `reef.pullPolicy` | | +| `reef.resources` | | +| `reef.tag` | `latest` | +| `root.config` | `/etc/inaccel` | +| `root.state` | `/var/lib/inaccel` | + +Specify each parameter using the `--set key=value[,key=value]` argument to +`helm install`. + +Alternatively, a YAML file that specifies the values for the parameters can be +provided while installing the chart. For example, + +```console +$ helm install my-fpga-operator -f values.yaml inaccel/fpga-operator +``` + +> **Tip**: You can use the default `values.yaml` diff --git a/charts/fpga-operator/fpga-operator/2.6.102/app-readme.md b/charts/fpga-operator/fpga-operator/2.6.102/app-readme.md new file mode 100644 index 000000000..a8e24b3f9 --- /dev/null +++ b/charts/fpga-operator/fpga-operator/2.6.102/app-readme.md @@ -0,0 +1,7 @@ +### Documentation + +For detailed usage instructions visit: [docs.inaccel.com](https://docs.inaccel.com) + +### Support + +For more product information contact: info@inaccel.com diff --git a/charts/fpga-operator/fpga-operator/2.6.102/charts/node-feature-discovery/.helmignore b/charts/fpga-operator/fpga-operator/2.6.102/charts/node-feature-discovery/.helmignore new file mode 100644 index 000000000..0e8a0eb36 --- /dev/null +++ b/charts/fpga-operator/fpga-operator/2.6.102/charts/node-feature-discovery/.helmignore @@ -0,0 +1,23 @@ +# Patterns to ignore when building packages. +# This supports shell glob matching, relative path matching, and +# negation (prefixed with !). Only one pattern per line. +.DS_Store +# Common VCS dirs +.git/ +.gitignore +.bzr/ +.bzrignore +.hg/ +.hgignore +.svn/ +# Common backup files +*.swp +*.bak +*.tmp +*.orig +*~ +# Various IDEs +.project +.idea/ +*.tmproj +.vscode/ diff --git a/charts/fpga-operator/fpga-operator/2.6.102/charts/node-feature-discovery/Chart.yaml b/charts/fpga-operator/fpga-operator/2.6.102/charts/node-feature-discovery/Chart.yaml new file mode 100644 index 000000000..67df1d0ca --- /dev/null +++ b/charts/fpga-operator/fpga-operator/2.6.102/charts/node-feature-discovery/Chart.yaml @@ -0,0 +1,14 @@ +apiVersion: v2 +appVersion: v0.9.0 +description: 'Detects hardware features available on each node in a Kubernetes cluster, + and advertises those features using node labels. ' +home: https://github.com/kubernetes-sigs/node-feature-discovery +keywords: +- feature-discovery +- feature-detection +- node-labels +name: node-feature-discovery +sources: +- https://github.com/kubernetes-sigs/node-feature-discovery +type: application +version: 0.9.0 diff --git a/charts/fpga-operator/fpga-operator/2.6.102/charts/node-feature-discovery/README.md b/charts/fpga-operator/fpga-operator/2.6.102/charts/node-feature-discovery/README.md new file mode 100644 index 000000000..8ba72150a --- /dev/null +++ b/charts/fpga-operator/fpga-operator/2.6.102/charts/node-feature-discovery/README.md @@ -0,0 +1,10 @@ +# Node Feature Discovery + +Node Feature Discovery (NFD) is a Kubernetes add-on for detecting hardware +features and system configuration. Detected features are advertised as node +labels. NFD provides flexible configuration and extension points for a wide +range of vendor and application specific node labeling needs. + +See +[NFD documentation](https://kubernetes-sigs.github.io/node-feature-discovery/v0.9/get-started/deployment-and-usage.html#deployment-with-helm) +for deployment instructions. diff --git a/charts/fpga-operator/fpga-operator/2.6.102/charts/node-feature-discovery/templates/_helpers.tpl b/charts/fpga-operator/fpga-operator/2.6.102/charts/node-feature-discovery/templates/_helpers.tpl new file mode 100644 index 000000000..73784a547 --- /dev/null +++ b/charts/fpga-operator/fpga-operator/2.6.102/charts/node-feature-discovery/templates/_helpers.tpl @@ -0,0 +1,63 @@ +{{/* vim: set filetype=mustache: */}} +{{/* +Expand the name of the chart. +*/}} +{{- define "node-feature-discovery.name" -}} +{{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" -}} +{{- end -}} + +{{/* +Create a default fully qualified app name. +We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec). +If release name contains chart name it will be used as a full name. +*/}} +{{- define "node-feature-discovery.fullname" -}} +{{- if .Values.fullnameOverride -}} +{{- .Values.fullnameOverride | trunc 63 | trimSuffix "-" -}} +{{- else -}} +{{- $name := default .Chart.Name .Values.nameOverride -}} +{{- if contains $name .Release.Name -}} +{{- .Release.Name | trunc 63 | trimSuffix "-" -}} +{{- else -}} +{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" -}} +{{- end -}} +{{- end -}} +{{- end -}} + +{{/* +Create chart name and version as used by the chart label. +*/}} +{{- define "node-feature-discovery.chart" -}} +{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" -}} +{{- end -}} + +{{/* +Common labels +*/}} +{{- define "node-feature-discovery.labels" -}} +helm.sh/chart: {{ include "node-feature-discovery.chart" . }} +{{ include "node-feature-discovery.selectorLabels" . }} +{{- if .Chart.AppVersion }} +app.kubernetes.io/version: {{ .Chart.AppVersion | quote }} +{{- end }} +app.kubernetes.io/managed-by: {{ .Release.Service }} +{{- end -}} + +{{/* +Selector labels +*/}} +{{- define "node-feature-discovery.selectorLabels" -}} +app.kubernetes.io/name: {{ include "node-feature-discovery.name" . }} +app.kubernetes.io/instance: {{ .Release.Name }} +{{- end -}} + +{{/* +Create the name of the service account to use +*/}} +{{- define "node-feature-discovery.serviceAccountName" -}} +{{- if .Values.serviceAccount.create -}} + {{ default (include "node-feature-discovery.fullname" .) .Values.serviceAccount.name }} +{{- else -}} + {{ default "default" .Values.serviceAccount.name }} +{{- end -}} +{{- end -}} diff --git a/charts/fpga-operator/fpga-operator/2.6.102/charts/node-feature-discovery/templates/clusterrole.yaml b/charts/fpga-operator/fpga-operator/2.6.102/charts/node-feature-discovery/templates/clusterrole.yaml new file mode 100644 index 000000000..a4da2303d --- /dev/null +++ b/charts/fpga-operator/fpga-operator/2.6.102/charts/node-feature-discovery/templates/clusterrole.yaml @@ -0,0 +1,21 @@ +{{- if .Values.rbac.create }} +apiVersion: rbac.authorization.k8s.io/v1 +kind: ClusterRole +metadata: + name: {{ include "node-feature-discovery.fullname" . }} + labels: + {{- include "node-feature-discovery.labels" . | nindent 4 }} +rules: +- apiGroups: + - "" + resources: + - nodes + # when using command line flag --resource-labels to create extended resources + # you will need to uncomment "- nodes/status" + # - nodes/status + verbs: + - get + - patch + - update + - list +{{- end }} diff --git a/charts/fpga-operator/fpga-operator/2.6.102/charts/node-feature-discovery/templates/clusterrolebinding.yaml b/charts/fpga-operator/fpga-operator/2.6.102/charts/node-feature-discovery/templates/clusterrolebinding.yaml new file mode 100644 index 000000000..4766d9a1b --- /dev/null +++ b/charts/fpga-operator/fpga-operator/2.6.102/charts/node-feature-discovery/templates/clusterrolebinding.yaml @@ -0,0 +1,16 @@ +{{- if .Values.rbac.create }} +apiVersion: rbac.authorization.k8s.io/v1 +kind: ClusterRoleBinding +metadata: + name: {{ include "node-feature-discovery.fullname" . }} + labels: + {{- include "node-feature-discovery.labels" . | nindent 4 }} +roleRef: + apiGroup: rbac.authorization.k8s.io + kind: ClusterRole + name: {{ include "node-feature-discovery.fullname" . }} +subjects: +- kind: ServiceAccount + name: {{ include "node-feature-discovery.serviceAccountName" . }} + namespace: {{ $.Release.Namespace }} +{{- end }} diff --git a/charts/fpga-operator/fpga-operator/2.6.102/charts/node-feature-discovery/templates/master.yaml b/charts/fpga-operator/fpga-operator/2.6.102/charts/node-feature-discovery/templates/master.yaml new file mode 100644 index 000000000..63dea55d0 --- /dev/null +++ b/charts/fpga-operator/fpga-operator/2.6.102/charts/node-feature-discovery/templates/master.yaml @@ -0,0 +1,100 @@ +apiVersion: apps/v1 +kind: Deployment +metadata: + name: {{ include "node-feature-discovery.fullname" . }}-master + labels: + {{- include "node-feature-discovery.labels" . | nindent 4 }} + role: master +spec: + replicas: {{ .Values.master.replicaCount }} + selector: + matchLabels: + {{- include "node-feature-discovery.selectorLabels" . | nindent 6 }} + role: master + template: + metadata: + labels: + {{- include "node-feature-discovery.selectorLabels" . | nindent 8 }} + role: master + annotations: + {{- toYaml .Values.master.annotations | nindent 8 }} + spec: + {{- with .Values.imagePullSecrets }} + imagePullSecrets: + {{- toYaml . | nindent 8 }} + {{- end }} + serviceAccountName: {{ include "node-feature-discovery.serviceAccountName" . }} + securityContext: + {{- toYaml .Values.master.podSecurityContext | nindent 8 }} + containers: + - name: master + securityContext: + {{- toYaml .Values.master.securityContext | nindent 12 }} + image: "{{ .Values.image.repository }}:{{ .Values.image.tag | default .Chart.AppVersion }}" + imagePullPolicy: {{ .Values.image.pullPolicy }} + livenessProbe: + exec: + command: ["/usr/bin/grpc_health_probe", "-addr=:8080"] + initialDelaySeconds: 10 + periodSeconds: 10 + readinessProbe: + exec: + command: ["/usr/bin/grpc_health_probe", "-addr=:8080"] + initialDelaySeconds: 5 + periodSeconds: 10 + failureThreshold: 10 + ports: + - containerPort: 8080 + name: grpc + env: + - name: NODE_NAME + valueFrom: + fieldRef: + fieldPath: spec.nodeName + command: + - "nfd-master" + resources: + {{- toYaml .Values.master.resources | nindent 12 }} + args: + {{- if .Values.master.instance | empty | not }} + - "--instance={{ .Values.master.instance }}" + {{- end }} + {{- if .Values.master.extraLabelNs | empty | not }} + - "--extra-label-ns={{- join "," .Values.master.extraLabelNs }}" + {{- end }} +## Enable TLS authentication +## The example below assumes having the root certificate named ca.crt stored in +## a ConfigMap named nfd-ca-cert, and, the TLS authentication credentials stored +## in a TLS Secret named nfd-master-cert. +## Additional hardening can be enabled by specifying --verify-node-name in +## args, in which case node name will be checked against the worker's +## TLS certificate. +# - "--ca-file=/etc/kubernetes/node-feature-discovery/trust/ca.crt" +# - "--key-file=/etc/kubernetes/node-feature-discovery/certs/tls.key" +# - "--cert-file=/etc/kubernetes/node-feature-discovery/certs/tls.crt" +# volumeMounts: +# - name: nfd-ca-cert +# mountPath: "/etc/kubernetes/node-feature-discovery/trust" +# readOnly: true +# - name: nfd-master-cert +# mountPath: "/etc/kubernetes/node-feature-discovery/certs" +# readOnly: true +# volumes: +# - name: nfd-ca-cert +# configMap: +# name: nfd-ca-cert +# - name: nfd-master-cert +# secret: +# secretName: nfd-master-cert + {{- with .Values.master.nodeSelector }} + nodeSelector: + {{- toYaml . | nindent 8 }} + {{- end }} + {{- with .Values.master.affinity }} + affinity: + {{- toYaml . | nindent 8 }} + {{- end }} + {{- with .Values.master.tolerations }} + tolerations: + {{- toYaml . | nindent 8 }} + {{- end }} diff --git a/charts/fpga-operator/fpga-operator/2.6.102/charts/node-feature-discovery/templates/nfd-worker-conf.yaml b/charts/fpga-operator/fpga-operator/2.6.102/charts/node-feature-discovery/templates/nfd-worker-conf.yaml new file mode 100644 index 000000000..1d3ef4b45 --- /dev/null +++ b/charts/fpga-operator/fpga-operator/2.6.102/charts/node-feature-discovery/templates/nfd-worker-conf.yaml @@ -0,0 +1,9 @@ +apiVersion: v1 +kind: ConfigMap +metadata: + name: {{ .Values.worker.configmapName }} + labels: + {{- include "node-feature-discovery.labels" . | nindent 4 }} +data: + nfd-worker.conf: |- + {{- .Values.worker.config | nindent 4 }} diff --git a/charts/fpga-operator/fpga-operator/2.6.102/charts/node-feature-discovery/templates/service.yaml b/charts/fpga-operator/fpga-operator/2.6.102/charts/node-feature-discovery/templates/service.yaml new file mode 100644 index 000000000..97d0a5878 --- /dev/null +++ b/charts/fpga-operator/fpga-operator/2.6.102/charts/node-feature-discovery/templates/service.yaml @@ -0,0 +1,16 @@ +apiVersion: v1 +kind: Service +metadata: + name: {{ include "node-feature-discovery.fullname" . }}-master + labels: + {{- include "node-feature-discovery.labels" . | nindent 4 }} + role: master +spec: + type: {{ .Values.master.service.type }} + ports: + - port: {{ .Values.master.service.port }} + targetPort: grpc + protocol: TCP + name: grpc + selector: + {{- include "node-feature-discovery.selectorLabels" . | nindent 4 }} diff --git a/charts/fpga-operator/fpga-operator/2.6.102/charts/node-feature-discovery/templates/serviceaccount.yaml b/charts/fpga-operator/fpga-operator/2.6.102/charts/node-feature-discovery/templates/serviceaccount.yaml new file mode 100644 index 000000000..e4b09bad9 --- /dev/null +++ b/charts/fpga-operator/fpga-operator/2.6.102/charts/node-feature-discovery/templates/serviceaccount.yaml @@ -0,0 +1,12 @@ +{{- if .Values.serviceAccount.create -}} +apiVersion: v1 +kind: ServiceAccount +metadata: + name: {{ include "node-feature-discovery.serviceAccountName" . }} + labels: + {{- include "node-feature-discovery.labels" . | nindent 4 }} + {{- with .Values.serviceAccount.annotations }} + annotations: + {{- toYaml . | nindent 4 }} + {{- end }} +{{- end -}} diff --git a/charts/fpga-operator/fpga-operator/2.6.102/charts/node-feature-discovery/templates/worker.yaml b/charts/fpga-operator/fpga-operator/2.6.102/charts/node-feature-discovery/templates/worker.yaml new file mode 100644 index 000000000..f09a149b1 --- /dev/null +++ b/charts/fpga-operator/fpga-operator/2.6.102/charts/node-feature-discovery/templates/worker.yaml @@ -0,0 +1,131 @@ +apiVersion: apps/v1 +kind: DaemonSet +metadata: + name: {{ include "node-feature-discovery.fullname" . }}-worker + labels: + {{- include "node-feature-discovery.labels" . | nindent 4 }} + role: worker +spec: + selector: + matchLabels: + {{- include "node-feature-discovery.selectorLabels" . | nindent 6 }} + role: worker + template: + metadata: + labels: + {{- include "node-feature-discovery.selectorLabels" . | nindent 8 }} + role: worker + annotations: + {{- toYaml .Values.worker.annotations | nindent 8 }} + spec: + dnsPolicy: ClusterFirstWithHostNet + {{- with .Values.imagePullSecrets }} + imagePullSecrets: + {{- toYaml . | nindent 8 }} + {{- end }} + securityContext: + {{- toYaml .Values.worker.podSecurityContext | nindent 8 }} + containers: + - name: worker + securityContext: + {{- toYaml .Values.worker.securityContext | nindent 12 }} + image: "{{ .Values.image.repository }}:{{ .Values.image.tag | default .Chart.AppVersion }}" + imagePullPolicy: {{ .Values.image.pullPolicy }} + env: + - name: NODE_NAME + valueFrom: + fieldRef: + fieldPath: spec.nodeName + resources: + {{- toYaml .Values.worker.resources | nindent 12 }} + command: + - "nfd-worker" + args: + - "--sleep-interval=60s" + - "--server={{ include "node-feature-discovery.fullname" . }}-master:{{ .Values.master.service.port }}" +## Enable TLS authentication (1/3) +## The example below assumes having the root certificate named ca.crt stored in +## a ConfigMap named nfd-ca-cert, and, the TLS authentication credentials stored +## in a TLS Secret named nfd-worker-cert +# - "--ca-file=/etc/kubernetes/node-feature-discovery/trust/ca.crt" +# - "--key-file=/etc/kubernetes/node-feature-discovery/certs/tls.key" +# - "--cert-file=/etc/kubernetes/node-feature-discovery/certs/tls.crt" + volumeMounts: + - name: host-boot + mountPath: "/host-boot" + readOnly: true + - name: host-os-release + mountPath: "/host-etc/os-release" + readOnly: true + - name: host-sys + mountPath: "/host-sys" + readOnly: true + - name: host-usr-lib + mountPath: "/host-usr/lib" + readOnly: true + - name: host-usr-src + mountPath: "/host-usr/src" + readOnly: true + - name: source-d + mountPath: "/etc/kubernetes/node-feature-discovery/source.d/" + readOnly: true + - name: features-d + mountPath: "/etc/kubernetes/node-feature-discovery/features.d/" + readOnly: true + - name: nfd-worker-conf + mountPath: "/etc/kubernetes/node-feature-discovery" + readOnly: true +## Enable TLS authentication (2/3) +# - name: nfd-ca-cert +# mountPath: "/etc/kubernetes/node-feature-discovery/trust" +# readOnly: true +# - name: nfd-worker-cert +# mountPath: "/etc/kubernetes/node-feature-discovery/certs" +# readOnly: true + volumes: + - name: host-boot + hostPath: + path: "/boot" + - name: host-os-release + hostPath: + path: "/etc/os-release" + - name: host-sys + hostPath: + path: "/sys" + - name: host-usr-lib + hostPath: + path: "/usr/lib" + - name: host-usr-src + hostPath: + path: "/usr/src" + - name: source-d + hostPath: + path: "/etc/kubernetes/node-feature-discovery/source.d/" + - name: features-d + hostPath: + path: "/etc/kubernetes/node-feature-discovery/features.d/" + - name: nfd-worker-conf + configMap: + name: {{ .Values.worker.configmapName }} + items: + - key: nfd-worker.conf + path: nfd-worker.conf +## Enable TLS authentication (3/3) +# - name: nfd-ca-cert +# configMap: +# name: nfd-ca-cert +# - name: nfd-worker-cert +# secret: +# secretName: nfd-worker-cert + {{- with .Values.worker.nodeSelector }} + nodeSelector: + {{- toYaml . | nindent 8 }} + {{- end }} + {{- with .Values.worker.affinity }} + affinity: + {{- toYaml . | nindent 8 }} + {{- end }} + {{- with .Values.worker.tolerations }} + tolerations: + {{- toYaml . | nindent 8 }} + {{- end }} diff --git a/charts/fpga-operator/fpga-operator/2.6.102/charts/node-feature-discovery/values.yaml b/charts/fpga-operator/fpga-operator/2.6.102/charts/node-feature-discovery/values.yaml new file mode 100644 index 000000000..5b4c5ba20 --- /dev/null +++ b/charts/fpga-operator/fpga-operator/2.6.102/charts/node-feature-discovery/values.yaml @@ -0,0 +1,235 @@ +image: + repository: k8s.gcr.io/nfd/node-feature-discovery + # This should be set to 'IfNotPresent' for released version + pullPolicy: IfNotPresent + # tag, if defined will use the given image tag, else Chart.AppVersion will be used + # tag +imagePullSecrets: [] + +serviceAccount: + # Specifies whether a service account should be created + create: true + # Annotations to add to the service account + annotations: {} + # The name of the service account to use. + # If not set and create is true, a name is generated using the fullname template + name: + +nameOverride: "" +fullnameOverride: "" + +master: + instance: + extraLabelNs: [] + + replicaCount: 1 + + podSecurityContext: {} + # fsGroup: 2000 + + securityContext: + allowPrivilegeEscalation: false + capabilities: + drop: [ "ALL" ] + readOnlyRootFilesystem: true + runAsNonRoot: true + # runAsUser: 1000 + + service: + type: ClusterIP + port: 8080 + + resources: {} + # We usually recommend not to specify default resources and to leave this as a conscious + # choice for the user. This also increases chances charts run on environments with little + # resources, such as Minikube. If you do want to specify resources, uncomment the following + # lines, adjust them as necessary, and remove the curly braces after 'resources:'. + # limits: + # cpu: 100m + # memory: 128Mi + # requests: + # cpu: 100m + # memory: 128Mi + + nodeSelector: {} + + tolerations: + - key: "node-role.kubernetes.io/master" + operator: "Equal" + value: "" + effect: "NoSchedule" + - key: "node-role.kubernetes.io/control-plane" + operator: "Equal" + value: "" + effect: "NoSchedule" + + annotations: {} + + affinity: + nodeAffinity: + preferredDuringSchedulingIgnoredDuringExecution: + - weight: 1 + preference: + matchExpressions: + - key: "node-role.kubernetes.io/master" + operator: In + values: [""] + - weight: 1 + preference: + matchExpressions: + - key: "node-role.kubernetes.io/control-plane" + operator: In + values: [""] + +worker: + configmapName: nfd-worker-conf + config: |### + #core: + # labelWhiteList: + # noPublish: false + # sleepInterval: 60s + # sources: [all] + # klog: + # addDirHeader: false + # alsologtostderr: false + # logBacktraceAt: + # logtostderr: true + # skipHeaders: false + # stderrthreshold: 2 + # v: 0 + # vmodule: + ## NOTE: the following options are not dynamically run-time configurable + ## and require a nfd-worker restart to take effect after being changed + # logDir: + # logFile: + # logFileMaxSize: 1800 + # skipLogHeaders: false + #sources: + # cpu: + # cpuid: + ## NOTE: whitelist has priority over blacklist + # attributeBlacklist: + # - "BMI1" + # - "BMI2" + # - "CLMUL" + # - "CMOV" + # - "CX16" + # - "ERMS" + # - "F16C" + # - "HTT" + # - "LZCNT" + # - "MMX" + # - "MMXEXT" + # - "NX" + # - "POPCNT" + # - "RDRAND" + # - "RDSEED" + # - "RDTSCP" + # - "SGX" + # - "SSE" + # - "SSE2" + # - "SSE3" + # - "SSE4" + # - "SSE42" + # - "SSSE3" + # attributeWhitelist: + # kernel: + # kconfigFile: "/path/to/kconfig" + # configOpts: + # - "NO_HZ" + # - "X86" + # - "DMI" + # pci: + # deviceClassWhitelist: + # - "0200" + # - "03" + # - "12" + # deviceLabelFields: + # - "class" + # - "vendor" + # - "device" + # - "subsystem_vendor" + # - "subsystem_device" + # usb: + # deviceClassWhitelist: + # - "0e" + # - "ef" + # - "fe" + # - "ff" + # deviceLabelFields: + # - "class" + # - "vendor" + # - "device" + # custom: + # - name: "my.kernel.feature" + # matchOn: + # - loadedKMod: ["example_kmod1", "example_kmod2"] + # - name: "my.pci.feature" + # matchOn: + # - pciId: + # class: ["0200"] + # vendor: ["15b3"] + # device: ["1014", "1017"] + # - pciId : + # vendor: ["8086"] + # device: ["1000", "1100"] + # - name: "my.usb.feature" + # matchOn: + # - usbId: + # class: ["ff"] + # vendor: ["03e7"] + # device: ["2485"] + # - usbId: + # class: ["fe"] + # vendor: ["1a6e"] + # device: ["089a"] + # - name: "my.combined.feature" + # matchOn: + # - pciId: + # vendor: ["15b3"] + # device: ["1014", "1017"] + # loadedKMod : ["vendor_kmod1", "vendor_kmod2"] + # - name: "feature.by.nodename" + # value: customValue + # matchOn: + # - nodename: ["worker-0", "my-.*-node"] +### + + podSecurityContext: {} + # fsGroup: 2000 + + securityContext: + allowPrivilegeEscalation: false + capabilities: + drop: [ "ALL" ] + readOnlyRootFilesystem: true + runAsNonRoot: true + # runAsUser: 1000 + + resources: {} + # We usually recommend not to specify default resources and to leave this as a conscious + # choice for the user. This also increases chances charts run on environments with little + # resources, such as Minikube. If you do want to specify resources, uncomment the following + # lines, adjust them as necessary, and remove the curly braces after 'resources:'. + # limits: + # cpu: 100m + # memory: 128Mi + # requests: + # cpu: 100m + # memory: 128Mi + + nodeSelector: {} + + tolerations: [] + + annotations: {} + +## RBAC parameteres +## https://kubernetes.io/docs/reference/access-authn-authz/rbac/ +## +rbac: + create: true + serviceAccountName: + ## Annotations for the Service Account + ## + serviceAccountAnnotations: {} diff --git a/charts/fpga-operator/fpga-operator/2.6.102/templates/NOTES.txt b/charts/fpga-operator/fpga-operator/2.6.102/templates/NOTES.txt new file mode 100644 index 000000000..1a8980c78 --- /dev/null +++ b/charts/fpga-operator/fpga-operator/2.6.102/templates/NOTES.txt @@ -0,0 +1,9 @@ +{{- if .Release.IsInstall -}} +Install +{{- end -}} +{{- if .Release.IsUpgrade -}} +Upgrad +{{- end -}} +ing {{ ( index .Chart.Maintainers 0 ).Name }} [{{ include "chart" . }}] {{ .Release.Service }} chart. +For detailed usage instructions visit: {{ index .Chart.Sources 0 }} +For more product information contact: {{ ( index .Chart.Maintainers 0 ).Email }} diff --git a/charts/fpga-operator/fpga-operator/2.6.102/templates/_helpers.tpl b/charts/fpga-operator/fpga-operator/2.6.102/templates/_helpers.tpl new file mode 100644 index 000000000..66cb16648 --- /dev/null +++ b/charts/fpga-operator/fpga-operator/2.6.102/templates/_helpers.tpl @@ -0,0 +1,28 @@ +{{/* vim: set filetype=mustache: */}} + +{{/* +Create chart name and version as used by the chart label. +*/}} +{{- define "chart" -}} +{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" -}} +{{- end -}} + +{{/* +Common labels +*/}} +{{- define "labels" -}} +helm.sh/chart: {{ include "chart" . }} +{{ include "selectorLabels" . }} +{{- if .Chart.AppVersion }} +app.kubernetes.io/version: {{ .Chart.AppVersion | quote }} +{{- end }} +app.kubernetes.io/managed-by: {{ .Release.Service }} +{{- end -}} + +{{/* +Selector labels +*/}} +{{- define "selectorLabels" -}} +app.kubernetes.io/name: {{ .Chart.Name }} +app.kubernetes.io/instance: {{ .Release.Name }} +{{- end -}} diff --git a/charts/fpga-operator/fpga-operator/2.6.102/templates/cluster-role-binding.yaml b/charts/fpga-operator/fpga-operator/2.6.102/templates/cluster-role-binding.yaml new file mode 100644 index 000000000..175ab082c --- /dev/null +++ b/charts/fpga-operator/fpga-operator/2.6.102/templates/cluster-role-binding.yaml @@ -0,0 +1,14 @@ +apiVersion: rbac.authorization.k8s.io/v1 +kind: ClusterRoleBinding +metadata: + labels: + {{- include "labels" . | nindent 4 }} + name: {{ .Chart.Name }} +roleRef: + apiGroup: rbac.authorization.k8s.io + kind: ClusterRole + name: {{ .Chart.Name }} +subjects: +- kind: ServiceAccount + name: {{ .Chart.Name }} + namespace: {{ .Release.Namespace }} diff --git a/charts/fpga-operator/fpga-operator/2.6.102/templates/cluster-role.yaml b/charts/fpga-operator/fpga-operator/2.6.102/templates/cluster-role.yaml new file mode 100644 index 000000000..4eeec48b1 --- /dev/null +++ b/charts/fpga-operator/fpga-operator/2.6.102/templates/cluster-role.yaml @@ -0,0 +1,13 @@ +apiVersion: rbac.authorization.k8s.io/v1 +kind: ClusterRole +metadata: + labels: + {{- include "labels" . | nindent 4 }} + name: {{ .Chart.Name }} +rules: +- apiGroups: [""] + resources: ["nodes"] + verbs: ["patch"] +- apiGroups: ["admissionregistration.k8s.io"] + resources: ["mutatingwebhookconfigurations"] + verbs: ["get", "update"] diff --git a/charts/fpga-operator/fpga-operator/2.6.102/templates/csi-driver.yaml b/charts/fpga-operator/fpga-operator/2.6.102/templates/csi-driver.yaml new file mode 100644 index 000000000..a6e62c662 --- /dev/null +++ b/charts/fpga-operator/fpga-operator/2.6.102/templates/csi-driver.yaml @@ -0,0 +1,10 @@ +apiVersion: storage.k8s.io/v1 +kind: CSIDriver +metadata: + labels: + {{- include "labels" . | nindent 4 }} + name: inaccel +spec: + attachRequired: false + volumeLifecycleModes: + - Ephemeral diff --git a/charts/fpga-operator/fpga-operator/2.6.102/templates/daemon-set.yaml b/charts/fpga-operator/fpga-operator/2.6.102/templates/daemon-set.yaml new file mode 100644 index 000000000..2032fb700 --- /dev/null +++ b/charts/fpga-operator/fpga-operator/2.6.102/templates/daemon-set.yaml @@ -0,0 +1,185 @@ +apiVersion: apps/v1 +kind: DaemonSet +metadata: + labels: + {{- include "labels" . | nindent 4 }} + name: {{ .Chart.Name }} + namespace: {{ .Release.Namespace }} +spec: + selector: + matchLabels: + kind: DaemonSet + {{- include "selectorLabels" . | nindent 6 }} + template: + metadata: + annotations: + kubectl.kubernetes.io/default-container: coral + labels: + kind: DaemonSet + {{- include "labels" . | nindent 8 }} + spec: + containers: + - env: + {{- if .Values.coral.httpsProxy }} + - name: HTTPS_PROXY + value: {{ .Values.coral.httpsProxy }} + {{- end }} + {{- if .Values.license }} + - name: LICENSE + valueFrom: + secretKeyRef: + key: license + name: {{ .Chart.Name }} + {{- end }} + {{- if .Values.coral.logLevel }} + - name: LOG_LEVEL + value: {{ .Values.coral.logLevel }} + {{- end }} + - name: NODE_NAME + valueFrom: + fieldRef: + fieldPath: spec.nodeName + image: {{ .Values.coral.image }}:{{ default .Chart.AppVersion .Values.coral.tag }} + {{- if .Values.coral.pullPolicy }} + imagePullPolicy: {{ .Values.coral.pullPolicy }} + {{- end }} + name: coral + ports: + - containerPort: 55677 + {{- if .Values.coral.port }} + hostPort: {{ .Values.coral.port }} + {{- end }} + readinessProbe: + exec: + command: + - get + - coral + {{- if .Values.coral.resources }} + resources: + {{- .Values.coral.resources | toYaml | nindent 10 }} + {{- end }} + securityContext: + privileged: true + volumeMounts: + - mountPath: /etc/localtime + name: localtime + readOnly: true + - mountPath: /sys + name: sys + - mountPath: /var/lib/inaccel + mountPropagation: HostToContainer + name: state-root + - mountPath: /var/lib/kubelet/plugins_registry + name: kubelet + subPath: plugins_registry + - mountPath: /var/opt/inaccel/runtimes + name: data-root + readOnly: true + subPath: runtimes + - args: + - --debug={{ .Values.daemon.debug }} + env: + - name: DOCKER + value: disabled + - name: NODE_NAME + valueFrom: + fieldRef: + fieldPath: spec.nodeName + image: {{ .Values.daemon.image }}:{{ .Values.daemon.tag }} + {{- if .Values.daemon.pullPolicy }} + imagePullPolicy: {{ .Values.daemon.pullPolicy }} + {{- end }} + name: daemon + {{- if .Values.daemon.resources }} + resources: + {{- .Values.daemon.resources | toYaml | nindent 10 }} + {{- end }} + securityContext: + privileged: true + volumeMounts: + - mountPath: /var/lib/inaccel + mountPropagation: Bidirectional + name: state-root + - mountPath: /var/lib/kubelet/plugins_registry + name: kubelet + subPath: plugins_registry + - mountPath: {{ .Values.kubelet }} + mountPropagation: Bidirectional + name: kubelet + - image: {{ .Values.monitor.image }}:{{ default .Chart.AppVersion .Values.monitor.tag }} + {{- if .Values.monitor.pullPolicy }} + imagePullPolicy: {{ .Values.monitor.pullPolicy }} + {{- end }} + name: monitor + ports: + - containerPort: 19999 + {{- if .Values.monitor.port }} + hostPort: {{ .Values.monitor.port }} + {{- end }} + {{- if .Values.monitor.resources }} + resources: + {{- .Values.monitor.resources | toYaml | nindent 10 }} + {{- end }} + hostAliases: + - hostnames: + - coral + - daemon + - monitor + ip: 127.0.0.1 + hostPID: {{ .Values.driver.enabled }} + initContainers: + {{- if .Values.driver.enabled }} + - env: + - name: DRIVER_SYSROOT_DIR + value: /host + image: {{ .Values.driver.image }}:{{ .Values.driver.tag }} + {{- if .Values.driver.pullPolicy }} + imagePullPolicy: {{ .Values.driver.pullPolicy }} + {{- end }} + name: driver + securityContext: + privileged: true + volumeMounts: + - mountPath: /host + name: host + {{- end }} + - env: + - name: MKRT_CONFIG_PATH + value: {{ .Values.root.config }}/runtimes + - name: MKRT_SYSROOT_DIR + value: /host + image: {{ .Values.mkrt.image }}:{{ .Values.mkrt.tag }} + {{- if .Values.mkrt.pullPolicy }} + imagePullPolicy: {{ .Values.mkrt.pullPolicy }} + {{- end }} + name: mkrt + volumeMounts: + - mountPath: /host + name: host + readOnly: true + - mountPath: /var/opt/inaccel/runtimes + name: data-root + subPath: runtimes + nodeSelector: + inaccel/fpga: enabled + priorityClassName: system-node-critical + serviceAccountName: {{ .Chart.Name }} + volumes: + - emptyDir: {} + name: data-root + - hostPath: + path: / + name: host + - hostPath: + path: {{ .Values.kubelet }} + name: kubelet + - hostPath: + path: /etc/localtime + name: localtime + - hostPath: + path: {{ .Values.root.state }} + type: DirectoryOrCreate + name: state-root + - hostPath: + path: /sys + name: sys diff --git a/charts/fpga-operator/fpga-operator/2.6.102/templates/deployment.yaml b/charts/fpga-operator/fpga-operator/2.6.102/templates/deployment.yaml new file mode 100644 index 000000000..cec964bcd --- /dev/null +++ b/charts/fpga-operator/fpga-operator/2.6.102/templates/deployment.yaml @@ -0,0 +1,60 @@ +apiVersion: apps/v1 +kind: Deployment +metadata: + labels: + {{- include "labels" . | nindent 4 }} + name: {{ .Chart.Name }} + namespace: {{ .Release.Namespace }} +spec: + replicas: 1 + selector: + matchLabels: + kind: Deployment + {{- include "selectorLabels" . | nindent 6 }} + template: + metadata: + annotations: + kubectl.kubernetes.io/default-container: reef + labels: + kind: Deployment + {{- include "labels" . | nindent 8 }} + spec: + containers: + - args: + - --debug={{ .Values.reef.debug }} + image: {{ .Values.reef.image }}:{{ .Values.reef.tag }} + {{- if .Values.reef.pullPolicy }} + imagePullPolicy: {{ .Values.reef.pullPolicy }} + {{- end }} + name: reef + {{- if .Values.reef.resources }} + resources: + {{- .Values.reef.resources | toYaml | nindent 10 }} + {{- end }} + volumeMounts: + - mountPath: /etc/inaccel + name: config-root + readOnly: true + hostAliases: + - hostnames: + - reef + ip: 127.0.0.1 + initContainers: + - args: + - init + env: + - name: MUTATING_WEBHOOK_CONFIGURATION_NAME + value: {{ .Chart.Name }} + image: {{ .Values.reef.image }}:{{ .Values.reef.tag }} + {{- if .Values.reef.pullPolicy }} + imagePullPolicy: {{ .Values.reef.pullPolicy }} + {{- end }} + name: reef-init + volumeMounts: + - mountPath: /etc/inaccel + name: config-root + priorityClassName: system-cluster-critical + serviceAccountName: {{ .Chart.Name }} + volumes: + - emptyDir: {} + name: config-root diff --git a/charts/fpga-operator/fpga-operator/2.6.102/templates/mutating-webhook-configuration.yaml b/charts/fpga-operator/fpga-operator/2.6.102/templates/mutating-webhook-configuration.yaml new file mode 100644 index 000000000..46ed851df --- /dev/null +++ b/charts/fpga-operator/fpga-operator/2.6.102/templates/mutating-webhook-configuration.yaml @@ -0,0 +1,17 @@ +apiVersion: admissionregistration.k8s.io/v1 +kind: MutatingWebhookConfiguration +metadata: + labels: + {{- include "labels" . | nindent 4 }} + name: {{ .Chart.Name }} +webhooks: +- admissionReviewVersions: ["v1"] + clientConfig: + service: + name: {{ .Chart.Name }} + namespace: {{ .Release.Namespace }} + name: reef.inaccel.com + objectSelector: + matchLabels: + inaccel/fpga: enabled + sideEffects: None diff --git a/charts/fpga-operator/fpga-operator/2.6.102/templates/secret.yaml b/charts/fpga-operator/fpga-operator/2.6.102/templates/secret.yaml new file mode 100644 index 000000000..0c79454cd --- /dev/null +++ b/charts/fpga-operator/fpga-operator/2.6.102/templates/secret.yaml @@ -0,0 +1,12 @@ +apiVersion: v1 +kind: Secret +metadata: + labels: + {{- include "labels" . | nindent 4 }} + name: {{ .Chart.Name }} + namespace: {{ .Release.Namespace }} +stringData: + {{- if .Values.license }} + license: {{ .Values.license }} + {{- end }} +type: Opaque diff --git a/charts/fpga-operator/fpga-operator/2.6.102/templates/service-account.yaml b/charts/fpga-operator/fpga-operator/2.6.102/templates/service-account.yaml new file mode 100644 index 000000000..44def7030 --- /dev/null +++ b/charts/fpga-operator/fpga-operator/2.6.102/templates/service-account.yaml @@ -0,0 +1,7 @@ +apiVersion: v1 +kind: ServiceAccount +metadata: + labels: + {{- include "labels" . | nindent 4 }} + name: {{ .Chart.Name }} + namespace: {{ .Release.Namespace }} diff --git a/charts/fpga-operator/fpga-operator/2.6.102/templates/service.yaml b/charts/fpga-operator/fpga-operator/2.6.102/templates/service.yaml new file mode 100644 index 000000000..af9e38fdb --- /dev/null +++ b/charts/fpga-operator/fpga-operator/2.6.102/templates/service.yaml @@ -0,0 +1,14 @@ +apiVersion: v1 +kind: Service +metadata: + labels: + {{- include "labels" . | nindent 4 }} + name: {{ .Chart.Name }} + namespace: {{ .Release.Namespace }} +spec: + ports: + - port: 443 + publishNotReadyAddresses: true + selector: + kind: Deployment + {{- include "selectorLabels" . | nindent 4 }} diff --git a/charts/fpga-operator/fpga-operator/2.6.102/values.yaml b/charts/fpga-operator/fpga-operator/2.6.102/values.yaml new file mode 100644 index 000000000..37d427420 --- /dev/null +++ b/charts/fpga-operator/fpga-operator/2.6.102/values.yaml @@ -0,0 +1,78 @@ +coral: + # httpsProxy: ... + image: inaccel/coral + logLevel: info + # port: ... + pullPolicy: Always + # resources: ... + # tag: ... + +daemon: + debug: false + image: inaccel/daemon + # pullPolicy: ... + # resources: ... + tag: latest + +driver: + enabled: true + image: inaccel/driver + # pullPolicy: ... + tag: latest + +fpga-discovery: + enabled: true + fullnameOverride: fpga-discovery + image: + tag: v0.9.0-minimal + master: + extraLabelNs: + - inaccel + worker: + config: | + core: + sources: + - custom + sources: + custom: + - matchOn: + # intel-fpga + - pciId: + device: ["09c4", "0b2b"] + vendor: ["8086"] + # xilinx-fpga + - pciId: + vendor: ["10ee"] + - pciId: + device: ["1042", "f010"] + vendor: ["1d0f"] + name: inaccel/fpga + value: enabled + configmapName: fpga-discovery + +kubelet: /var/lib/kubelet + +# license: ... + +mkrt: + image: inaccel/mkrt + # pullPolicy: ... + tag: latest + +monitor: + image: inaccel/monitor + # port: ... + pullPolicy: Always + # resources: ... + # tag: ... + +reef: + debug: false + image: inaccel/reef + # pullPolicy: ... + # resources: ... + tag: latest + +root: + config: /etc/inaccel + state: /var/lib/inaccel From 020b7cef6db1cac3819a075301279b0dc782f18f Mon Sep 17 00:00:00 2001 From: Samuel Attwood Date: Fri, 3 Dec 2021 15:20:30 -0500 Subject: [PATCH 3/3] Adding index.yaml --- index.yaml | 40 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 40 insertions(+) diff --git a/index.yaml b/index.yaml index 4f8159ed1..96f90cfb9 100755 --- a/index.yaml +++ b/index.yaml @@ -1083,6 +1083,46 @@ entries: - assets/federatorai/federatorai-4.5.100.tgz version: 4.5.100 fpga-operator: + - annotations: + artifacthub.io/license: Apache-2.0 + artifacthub.io/links: | + - name: Documentation + url: https://docs.inaccel.com + catalog.cattle.io/certified: partner + catalog.cattle.io/display-name: InAccel FPGA Operator + catalog.cattle.io/namespace: kube-system + catalog.cattle.io/os: linux + catalog.cattle.io/release-name: inaccel + catalog.cattle.io/scope: downstream + category: Infrastructure + apiVersion: v2 + appVersion: "2.1" + created: "2021-11-26T11:45:47.154900272+02:00" + dependencies: + - alias: fpga-discovery + condition: fpga-discovery.enabled + name: node-feature-discovery + repository: file://./charts/node-feature-discovery + version: 0.9.0 + description: Simplifying FPGA management in Kubernetes + digest: 7b0c8f9a3fbb867e0339d127d6c4414577e882eecc3da0417c08a52de662f804 + home: https://inaccel.com + icon: https://en.gravatar.com/userimage/147236320/2a11cd2992b4521ec287587f03fae35c.png?size=1250 + keywords: + - fpga + - infrastructure + kubeVersion: '>= 1.18.0-0' + maintainers: + - email: info@inaccel.com + name: InAccel + name: fpga-operator + sources: + - https://docs.inaccel.com + - https://github.com/inaccel/helm + type: application + urls: + - assets/fpga-operator/fpga-operator-2.6.102.tgz + version: 2.6.102 - annotations: artifacthub.io/license: Apache-2.0 artifacthub.io/links: |