From 2a390de7ea55a11a43b61223a7de6ac34f242970 Mon Sep 17 00:00:00 2001 From: Steve Wilkerson Date: Tue, 4 Sep 2018 12:47:09 -0500 Subject: [PATCH] Libvirt: Move chart to openstack-helm-infra This moves the libvirt chart to openstack-helm-infra as part of the effort to move charts to their appropriate repositories Depends-On: https://review.openstack.org/#/c/599715/ Change-Id: I50850725604c3fc9d5dfd04a40c95d3346ccae34 Story: 2002204 Task: 21723 --- libvirt/Chart.yaml | 24 -- libvirt/requirements.yaml | 18 -- .../templates/bin/_ceph-admin-keyring.sh.tpl | 31 --- libvirt/templates/bin/_ceph-keyring.sh.tpl | 39 --- libvirt/templates/bin/_libvirt.sh.tpl | 144 ----------- libvirt/templates/configmap-bin.yaml | 37 --- libvirt/templates/configmap-etc.yaml | 28 --- libvirt/templates/daemonset-libvirt.yaml | 231 ------------------ libvirt/templates/job-image-repo-sync.yaml | 20 -- libvirt/templates/utils/_to_libvirt_conf.tpl | 53 ---- libvirt/values.yaml | 165 ------------- .../armada/multinode/armada-osh.yaml | 2 +- tools/deployment/baremetal/005-setup-nodes.sh | 3 +- .../deployment/developer/ceph/150-libvirt.sh | 3 +- tools/deployment/developer/nfs/150-libvirt.sh | 3 +- tools/deployment/multinode/130-libvirt.sh | 3 +- 16 files changed, 9 insertions(+), 795 deletions(-) delete mode 100644 libvirt/Chart.yaml delete mode 100644 libvirt/requirements.yaml delete mode 100644 libvirt/templates/bin/_ceph-admin-keyring.sh.tpl delete mode 100644 libvirt/templates/bin/_ceph-keyring.sh.tpl delete mode 100644 libvirt/templates/bin/_libvirt.sh.tpl delete mode 100644 libvirt/templates/configmap-bin.yaml delete mode 100644 libvirt/templates/configmap-etc.yaml delete mode 100644 libvirt/templates/daemonset-libvirt.yaml delete mode 100644 libvirt/templates/job-image-repo-sync.yaml delete mode 100644 libvirt/templates/utils/_to_libvirt_conf.tpl delete mode 100644 libvirt/values.yaml diff --git a/libvirt/Chart.yaml b/libvirt/Chart.yaml deleted file mode 100644 index 8dc577baa7..0000000000 --- a/libvirt/Chart.yaml +++ /dev/null @@ -1,24 +0,0 @@ -# Copyright 2017 The Openstack-Helm Authors. -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not 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 -description: OpenStack-Helm libvirt -name: libvirt -version: 0.1.0 -home: https://libvirt.org -sources: - - https://libvirt.org/git/?p=libvirt.git;a=summary - - https://git.openstack.org/cgit/openstack/openstack-helm -maintainers: - - name: OpenStack-Helm Authors diff --git a/libvirt/requirements.yaml b/libvirt/requirements.yaml deleted file mode 100644 index 53782e69b2..0000000000 --- a/libvirt/requirements.yaml +++ /dev/null @@ -1,18 +0,0 @@ -# Copyright 2017 The Openstack-Helm Authors. -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not 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. - -dependencies: - - name: helm-toolkit - repository: http://localhost:8879/charts - version: 0.1.0 diff --git a/libvirt/templates/bin/_ceph-admin-keyring.sh.tpl b/libvirt/templates/bin/_ceph-admin-keyring.sh.tpl deleted file mode 100644 index fa416c05d2..0000000000 --- a/libvirt/templates/bin/_ceph-admin-keyring.sh.tpl +++ /dev/null @@ -1,31 +0,0 @@ -#!/bin/bash - -{{/* -Copyright 2017 The Openstack-Helm Authors. - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not 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. -*/}} - -set -ex -export HOME=/tmp - -cat > /etc/ceph/ceph.client.admin.keyring << EOF -[client.admin] -{{- if .Values.conf.ceph.admin_keyring }} - key = {{ .Values.conf.ceph.admin_keyring }} -{{- else }} - key = $(cat /tmp/client-keyring) -{{- end }} -EOF - -exit 0 diff --git a/libvirt/templates/bin/_ceph-keyring.sh.tpl b/libvirt/templates/bin/_ceph-keyring.sh.tpl deleted file mode 100644 index 418a40c27d..0000000000 --- a/libvirt/templates/bin/_ceph-keyring.sh.tpl +++ /dev/null @@ -1,39 +0,0 @@ -#!/bin/bash - -{{/* -Copyright 2017 The Openstack-Helm Authors. - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not 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. -*/}} - -set -ex -export HOME=/tmp - -KEYRING=/etc/ceph/ceph.client.${CEPH_CINDER_USER}.keyring -{{- if .Values.conf.ceph.cinder.keyring }} -cat > ${KEYRING} </dev/null | grep libvirtd)" ]; then - echo "ERROR: libvirtd daemon already running on host" 1>&2 - exit 1 -fi - -rm -f /var/run/libvirtd.pid - -if [[ -c /dev/kvm ]]; then - chmod 660 /dev/kvm - chown root:kvm /dev/kvm -fi - -# We assume that if hugepage count > 0, then hugepages should be exposed to libvirt/qemu -hp_count="$(cat /proc/meminfo | grep HugePages_Total | tr -cd '[:digit:]')" -if [ 0"$hp_count" -gt 0 ]; then - - echo "INFO: Detected hugepage count of '$hp_count'. Enabling hugepage settings for libvirt/qemu." - - # Enable KVM hugepages for QEMU - if [ -n "$(grep KVM_HUGEPAGES=0 /etc/default/qemu-kvm)" ]; then - sed -i 's/.*KVM_HUGEPAGES=0.*/KVM_HUGEPAGES=1/g' /etc/default/qemu-kvm - else - echo KVM_HUGEPAGES=1 >> /etc/default/qemu-kvm - fi - - # Ensure that the hugepage mount location is available/mapped inside the - # container. This assumes use of the default ubuntu dev-hugepages.mount - # systemd unit which mounts hugepages at this location. - if [ ! -d /dev/hugepages ]; then - echo "ERROR: Hugepages configured in kernel, but libvirtd container cannot access /dev/hugepages" - exit 1 - fi - - # Kubernetes 1.10.x introduced cgroup changes that caused the container's - # hugepage byte limit quota to zero out. This workaround sets that pod limit - # back to the total number of hugepage bytes available to the baremetal host. - if [ -d /sys/fs/cgroup/hugetlb ]; then - # NOTE(portdirect): Kubelet will always create pod specific cgroups for - # hugetables so if the hugetlb cgroup is enabled, when k8s removes the pod - # it will also remove the hugetlb cgroup for the pod, taking any qemu - # processes with it. - echo "WARN: As the hugetlb cgroup is enabled, it will not be possible to restart the libvirt pod via k8s, without killing VMs." - for limit in $(ls /sys/fs/cgroup/hugetlb/kubepods/hugetlb.*.limit_in_bytes); do - target="/sys/fs/cgroup/hugetlb/$(dirname $(awk -F: '($2~/hugetlb/){print $3}' /proc/self/cgroup))/$(basename $limit)" - # Ensure the write target for the hugepage limit for the pod exists - if [ ! -f "$target" ]; then - echo "ERROR: Could not find write target for hugepage limit: $target" - fi - - # Write hugetable limit for pod - echo "$(cat $limit)" > "$target" - done - fi - - # Determine OS default hugepage size to use for the hugepage write test - default_hp_kb="$(cat /proc/meminfo | grep Hugepagesize | tr -cd '[:digit:]')" - - # Attempt to write to the hugepage mount to ensure it is operational, but only - # if we have at least 1 free page. - num_free_pages="$(cat /sys/kernel/mm/hugepages/hugepages-${default_hp_kb}kB/free_hugepages | tr -cd '[:digit:]')" - echo "INFO: '$num_free_pages' free hugepages of size ${default_hp_kb}kB" - if [ 0"$num_free_pages" -gt 0 ]; then - (fallocate -o0 -l "$default_hp_kb" /dev/hugepages/foo && rm /dev/hugepages/foo) || \ - (echo "ERROR: fallocate failed test at /dev/hugepages with size ${default_hp_kb}kB" - rm /dev/hugepages/foo - exit 1) - fi -fi - -if [ -n "${LIBVIRT_CEPH_CINDER_SECRET_UUID}" ] ; then - libvirtd --listen & - - tmpsecret=$(mktemp --suffix .xml) - function cleanup { - rm -f "${tmpsecret}" - } - trap cleanup EXIT - - # Wait for the libvirtd is up - TIMEOUT=60 - while [[ ! -f /var/run/libvirtd.pid ]]; do - if [[ ${TIMEOUT} -gt 0 ]]; then - let TIMEOUT-=1 - sleep 1 - else - echo "ERROR: libvirt did not start in time (pid file missing)" - exit 1 - fi - done - - # Even though we see the pid file the socket immediately (this is - # needed for virsh) - TIMEOUT=10 - while [[ ! -e /var/run/libvirt/libvirt-sock ]]; do - if [[ ${TIMEOUT} -gt 0 ]]; then - let TIMEOUT-=1 - sleep 1 - else - echo "ERROR: libvirt did not start in time (socket missing)" - exit 1 - fi - done - - if [ -z "${CEPH_CINDER_KEYRING}" ] ; then - CEPH_CINDER_KEYRING=$(sed -n 's/^[[:space:]]*key[[:blank:]]\+=[[:space:]]\(.*\)/\1/p' /etc/ceph/ceph.client.${CEPH_CINDER_USER}.keyring) - fi - - cat > ${tmpsecret} < - ${LIBVIRT_CEPH_CINDER_SECRET_UUID} - - client.${CEPH_CINDER_USER}. secret - - -EOF - - virsh secret-define --file ${tmpsecret} - virsh secret-set-value --secret "${LIBVIRT_CEPH_CINDER_SECRET_UUID}" --base64 "${CEPH_CINDER_KEYRING}" - - # rejoin libvirtd - wait -else - exec libvirtd --listen -fi diff --git a/libvirt/templates/configmap-bin.yaml b/libvirt/templates/configmap-bin.yaml deleted file mode 100644 index ffe7a0d202..0000000000 --- a/libvirt/templates/configmap-bin.yaml +++ /dev/null @@ -1,37 +0,0 @@ -{{/* -Copyright 2017 The Openstack-Helm Authors. - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not 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. -*/}} - -{{- if .Values.manifests.configmap_bin }} -{{- $envAll := . }} ---- -apiVersion: v1 -kind: ConfigMap -metadata: - name: libvirt-bin -data: -{{- if .Values.images.local_registry.active }} - image-repo-sync.sh: | -{{- include "helm-toolkit.scripts.image_repo_sync" . | indent 4 }} -{{- end }} - libvirt.sh: | -{{ tuple "bin/_libvirt.sh.tpl" . | include "helm-toolkit.utils.template" | indent 4 }} -{{- if .Values.conf.ceph.enabled }} - ceph-keyring.sh: | -{{ tuple "bin/_ceph-keyring.sh.tpl" . | include "helm-toolkit.utils.template" | indent 4 }} - ceph-admin-keyring.sh: | -{{ tuple "bin/_ceph-admin-keyring.sh.tpl" . | include "helm-toolkit.utils.template" | indent 4 }} -{{- end }} -{{- end }} diff --git a/libvirt/templates/configmap-etc.yaml b/libvirt/templates/configmap-etc.yaml deleted file mode 100644 index cab19942f7..0000000000 --- a/libvirt/templates/configmap-etc.yaml +++ /dev/null @@ -1,28 +0,0 @@ -{{/* -Copyright 2017 The Openstack-Helm Authors. - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not 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. -*/}} - -{{- if .Values.manifests.configmap_etc }} ---- -apiVersion: v1 -kind: ConfigMap -metadata: - name: libvirt-etc -data: - libvirtd.conf: | -{{- include "libvirt.utils.to_libvirt_conf" .Values.conf.libvirt | indent 4 }} - qemu.conf: | -{{- include "libvirt.utils.to_libvirt_conf" .Values.conf.qemu | indent 4 }} -{{- end }} diff --git a/libvirt/templates/daemonset-libvirt.yaml b/libvirt/templates/daemonset-libvirt.yaml deleted file mode 100644 index 5bfdd5329f..0000000000 --- a/libvirt/templates/daemonset-libvirt.yaml +++ /dev/null @@ -1,231 +0,0 @@ -{{/* -Copyright 2017 The Openstack-Helm Authors. - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not 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. -*/}} - -{{- if .Values.manifests.daemonset_libvirt }} -{{- $envAll := . }} -{{- $dependencyOpts := dict "envAll" $envAll "dependencyMixinParam" $envAll.Values.network.backend "dependencyKey" "libvirt" -}} -{{- $_ := include "helm-toolkit.utils.dependency_resolver" $dependencyOpts | toString | fromYaml }} - -{{- $mounts_libvirt := .Values.pod.mounts.libvirt.libvirt }} -{{- $mounts_libvirt_init := .Values.pod.mounts.libvirt.init_container }} - -{{- $serviceAccountName := "libvirt" }} -{{ tuple $envAll "pod_dependency" $serviceAccountName | include "helm-toolkit.snippets.kubernetes_pod_rbac_serviceaccount" }} ---- -apiVersion: apps/v1 -kind: DaemonSet -metadata: - name: libvirt - labels: -{{ tuple $envAll "libvirt" "libvirt" | include "helm-toolkit.snippets.kubernetes_metadata_labels" | indent 4 }} -spec: - selector: - matchLabels: -{{ tuple $envAll "libvirt" "libvirt" | include "helm-toolkit.snippets.kubernetes_metadata_labels" | indent 6 }} -{{ tuple $envAll "libvirt" | include "helm-toolkit.snippets.kubernetes_upgrades_daemonset" | indent 2 }} - template: - metadata: - labels: -{{ tuple $envAll "libvirt" "libvirt" | include "helm-toolkit.snippets.kubernetes_metadata_labels" | indent 8 }} - annotations: - configmap-bin-hash: {{ tuple "configmap-bin.yaml" . | include "helm-toolkit.utils.hash" }} - configmap-etc-hash: {{ tuple "configmap-etc.yaml" . | include "helm-toolkit.utils.hash" }} - spec: - serviceAccountName: {{ $serviceAccountName }} - nodeSelector: - {{ .Values.labels.agent.libvirt.node_selector_key }}: {{ .Values.labels.agent.libvirt.node_selector_value }} - hostNetwork: true - hostPID: true - dnsPolicy: ClusterFirstWithHostNet - initContainers: -{{ tuple $envAll "pod_dependency" $mounts_libvirt_init | include "helm-toolkit.snippets.kubernetes_entrypoint_init_container" | indent 8 }} -{{- if .Values.conf.ceph.enabled }} - {{- if empty .Values.conf.ceph.cinder.keyring }} - - name: ceph-admin-keyring-placement -{{ tuple $envAll "libvirt" | include "helm-toolkit.snippets.image" | indent 10 }} - securityContext: - runAsUser: 0 - command: - - /tmp/ceph-admin-keyring.sh - volumeMounts: - - name: etcceph - mountPath: /etc/ceph - - name: libvirt-bin - mountPath: /tmp/ceph-admin-keyring.sh - subPath: ceph-admin-keyring.sh - readOnly: true - {{- if empty .Values.conf.ceph.admin_keyring }} - - name: ceph-keyring - mountPath: /tmp/client-keyring - subPath: key - readOnly: true - {{ end }} - {{ end }} - - name: ceph-keyring-placement -{{ tuple $envAll "libvirt" | include "helm-toolkit.snippets.image" | indent 10 }} - securityContext: - runAsUser: 0 - env: - - name: CEPH_CINDER_USER - value: "{{ .Values.conf.ceph.cinder.user }}" - {{- if .Values.conf.ceph.cinder.keyring }} - - name: CEPH_CINDER_KEYRING - value: "{{ .Values.conf.ceph.cinder.keyring }}" - {{ end }} - - name: LIBVIRT_CEPH_CINDER_SECRET_UUID - value: "{{ .Values.conf.ceph.cinder.secret_uuid }}" - command: - - /tmp/ceph-keyring.sh - volumeMounts: - - name: etcceph - mountPath: /etc/ceph - - name: libvirt-bin - mountPath: /tmp/ceph-keyring.sh - subPath: ceph-keyring.sh - readOnly: true - - name: ceph-etc - mountPath: /etc/ceph/ceph.conf - subPath: ceph.conf - readOnly: true -{{- end }} - containers: - - name: libvirt -{{ tuple $envAll "libvirt" | include "helm-toolkit.snippets.image" | indent 10 }} -{{ tuple $envAll $envAll.Values.pod.resources.libvirt | include "helm-toolkit.snippets.kubernetes_resources" | indent 10 }} - securityContext: - privileged: true - runAsUser: 0 - {{- if .Values.conf.ceph.enabled }} - env: - - name: CEPH_CINDER_USER - value: "{{ .Values.conf.ceph.cinder.user }}" - {{- if .Values.conf.ceph.cinder.keyring }} - - name: CEPH_CINDER_KEYRING - value: "{{ .Values.conf.ceph.cinder.keyring }}" - {{ end }} - - name: LIBVIRT_CEPH_CINDER_SECRET_UUID - value: "{{ .Values.conf.ceph.cinder.secret_uuid }}" - {{ end }} - command: - - /tmp/libvirt.sh - lifecycle: - preStop: - exec: - command: - - bash - - -c - - |- - kill $(cat /var/run/libvirtd.pid) - volumeMounts: - - name: libvirt-bin - mountPath: /tmp/libvirt.sh - subPath: libvirt.sh - readOnly: true - - name: libvirt-etc - mountPath: /etc/libvirt/libvirtd.conf - subPath: libvirtd.conf - readOnly: true - - name: libvirt-etc - mountPath: /etc/libvirt/qemu.conf - subPath: qemu.conf - readOnly: true - - name: etc-libvirt-qemu - mountPath: /etc/libvirt/qemu - - mountPath: /lib/modules - name: libmodules - readOnly: true - - name: var-lib-libvirt - mountPath: /var/lib/libvirt - {{- if or ( gt .Capabilities.KubeVersion.Major "1" ) ( ge .Capabilities.KubeVersion.Minor "10" ) }} - mountPropagation: Bidirectional - {{- end }} - - name: var-lib-nova - mountPath: /var/lib/nova - {{- if or ( gt .Capabilities.KubeVersion.Major "1" ) ( ge .Capabilities.KubeVersion.Minor "10" ) }} - mountPropagation: Bidirectional - {{- end }} - - name: run - mountPath: /run - - name: dev - mountPath: /dev - - name: cgroup - mountPath: /sys/fs/cgroup - - name: machine-id - mountPath: /etc/machine-id - readOnly: true - {{- if .Values.conf.ceph.enabled }} - - name: etcceph - mountPath: /etc/ceph - - name: ceph-etc - mountPath: /etc/ceph/ceph.conf - subPath: ceph.conf - readOnly: true - {{- if empty .Values.conf.ceph.cinder.keyring }} - - name: ceph-keyring - mountPath: /tmp/client-keyring - subPath: key - readOnly: true - {{- end }} - {{- end }} -{{ if $mounts_libvirt.volumeMounts }}{{ toYaml $mounts_libvirt.volumeMounts | indent 12 }}{{ end }} - volumes: - - name: libvirt-bin - configMap: - name: libvirt-bin - defaultMode: 0555 - - name: libvirt-etc - configMap: - name: libvirt-etc - defaultMode: 0444 - {{- if .Values.conf.ceph.enabled }} - - name: etcceph - emptyDir: {} - - name: ceph-etc - configMap: - name: {{ .Values.ceph_client.configmap }} - defaultMode: 0444 - {{- if empty .Values.conf.ceph.cinder.keyring }} - - name: ceph-keyring - secret: - secretName: {{ .Values.ceph_client.user_secret_name }} - {{ end }} - {{ end }} - - name: libmodules - hostPath: - path: /lib/modules - - name: var-lib-libvirt - hostPath: - path: /var/lib/libvirt - - name: var-lib-nova - hostPath: - path: /var/lib/nova - - name: run - hostPath: - path: /run - - name: dev - hostPath: - path: /dev - - name: cgroup - hostPath: - path: /sys/fs/cgroup - - name: machine-id - hostPath: - path: /etc/machine-id - - name: etc-libvirt-qemu - hostPath: - path: /etc/libvirt/qemu -{{ if $mounts_libvirt.volumes }}{{ toYaml $mounts_libvirt.volumes | indent 8 }}{{ end }} -{{- end }} diff --git a/libvirt/templates/job-image-repo-sync.yaml b/libvirt/templates/job-image-repo-sync.yaml deleted file mode 100644 index c24dd75cc3..0000000000 --- a/libvirt/templates/job-image-repo-sync.yaml +++ /dev/null @@ -1,20 +0,0 @@ -{{/* -Copyright 2017 The Openstack-Helm Authors. - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not 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. -*/}} - -{{- if and .Values.manifests.job_image_repo_sync .Values.images.local_registry.active }} -{{- $imageRepoSyncJob := dict "envAll" . "serviceName" "libvirt" -}} -{{ $imageRepoSyncJob | include "helm-toolkit.manifests.job_image_repo_sync" }} -{{- end }} diff --git a/libvirt/templates/utils/_to_libvirt_conf.tpl b/libvirt/templates/utils/_to_libvirt_conf.tpl deleted file mode 100644 index 8d7c712a41..0000000000 --- a/libvirt/templates/utils/_to_libvirt_conf.tpl +++ /dev/null @@ -1,53 +0,0 @@ -{{/* -Copyright 2017 The Openstack-Helm Authors. - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not 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. -*/}} - -{{/* -abstract: | - Builds a libvirt compatible config file. -values: | - conf: - libvirt: - log_level: 3 - cgroup_controllers: - - cpu - - cpuacct -usage: | - {{ include "libvirt.utils.to_libvirt_conf" .Values.conf.libvirt }} -return: | - cgroup_controllers = [ "cpu", "cpuacct" ] - log_level = 3 -*/}} - -{{- define "libvirt.utils._to_libvirt_conf.list_to_string" -}} -{{- $local := dict "first" true -}} -{{- range $k, $v := . -}}{{- if not $local.first -}}, {{ end -}}{{- $v | quote -}}{{- $_ := set $local "first" false -}}{{- end -}} -{{- end -}} - -{{- define "libvirt.utils.to_libvirt_conf" -}} -{{- range $key, $value := . -}} -{{- if kindIs "slice" $value }} -{{ $key }} = [ {{ include "libvirt.utils._to_libvirt_conf.list_to_string" $value }} ] -{{- else if kindIs "string" $value }} -{{- if regexMatch "^[0-9]+$" $value }} -{{ $key }} = {{ $value }} -{{- else }} -{{ $key }} = {{ $value | quote }} -{{- end }} -{{- else }} -{{ $key }} = {{ $value }} -{{- end }} -{{- end -}} -{{- end -}} diff --git a/libvirt/values.yaml b/libvirt/values.yaml deleted file mode 100644 index 6ab6b7282f..0000000000 --- a/libvirt/values.yaml +++ /dev/null @@ -1,165 +0,0 @@ -# Copyright 2017 The Openstack-Helm Authors. -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not 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. - -# Default values for libvirt. -# This is a YAML-formatted file. -# Declare name/value pairs to be passed into your templates. -# name: value - -release_group: null - -labels: - agent: - libvirt: - node_selector_key: openstack-compute-node - node_selector_value: enabled - -images: - tags: - libvirt: docker.io/openstackhelm/libvirt:ubuntu-xenial-1.3.1 - dep_check: quay.io/stackanetes/kubernetes-entrypoint:v0.3.1 - image_repo_sync: docker.io/docker:17.07.0 - pull_policy: "IfNotPresent" - local_registry: - active: false - exclude: - - dep_check - - image_repo_sync - -network: - # provide what type of network wiring will be used - # possible options: openvswitch, linuxbridge, sriov - backend: - - openvswitch - -endpoints: - cluster_domain_suffix: cluster.local - local_image_registry: - name: docker-registry - namespace: docker-registry - hosts: - default: localhost - internal: docker-registry - node: localhost - host_fqdn_override: - default: null - port: - registry: - node: 5000 - -ceph_client: - configmap: ceph-etc - user_secret_name: pvc-ceph-client-key - -conf: - ceph: - enabled: true - admin_keyring: null - cinder: - user: "cinder" - keyring: null - secret_uuid: 457eb676-33da-42ec-9a8c-9293d545c337 - libvirt: - listen_tcp: "1" - listen_tls: "0" - auth_tcp: "none" - ca_file: "" - listen_addr: 127.0.0.1 - log_level: "3" - qemu: - stdio_handler: "file" - user: "nova" - group: "kvm" - -pod: - affinity: - anti: - type: - default: preferredDuringSchedulingIgnoredDuringExecution - topologyKey: - default: kubernetes.io/hostname - mounts: - libvirt: - init_container: null - libvirt: - lifecycle: - upgrades: - daemonsets: - pod_replacement_strategy: RollingUpdate - libvirt: - enabled: true - min_ready_seconds: 0 - max_unavailable: 1 - resources: - enabled: false - libvirt: - requests: - memory: "128Mi" - cpu: "100m" - limits: - memory: "1024Mi" - cpu: "2000m" - jobs: - image_repo_sync: - requests: - memory: "128Mi" - cpu: "100m" - limits: - memory: "1024Mi" - cpu: "2000m" - -dependencies: - dynamic: - common: - local_image_registry: - jobs: - - libvirt-image-repo-sync - services: - - endpoint: node - service: local_image_registry - targeted: - openvswitch: - libvirt: - pod: - - requireSameNode: true - labels: - application: neutron - component: neutron-ovs-agent - linuxbridge: - libvirt: - pod: - - requireSameNode: true - labels: - application: neutron - component: neutron-lb-agent - sriov: - libvirt: - pod: - - requireSameNode: true - labels: - application: neutron - component: neutron-sriov-agent - static: - libvirt: - services: null - image_repo_sync: - services: - - endpoint: internal - service: local_image_registry - -manifests: - configmap_bin: true - configmap_etc: true - daemonset_libvirt: true - job_image_repo_sync: true diff --git a/tools/deployment/armada/multinode/armada-osh.yaml b/tools/deployment/armada/multinode/armada-osh.yaml index 24171e73b9..406b7a93f4 100644 --- a/tools/deployment/armada/multinode/armada-osh.yaml +++ b/tools/deployment/armada/multinode/armada-osh.yaml @@ -737,7 +737,7 @@ data: node_selector_value: enabled source: type: local - location: ${OSH_PATH} + location: ${OSH_INFRA_PATH} subpath: libvirt reference: master dependencies: diff --git a/tools/deployment/baremetal/005-setup-nodes.sh b/tools/deployment/baremetal/005-setup-nodes.sh index 05e43e58aa..a2b8406146 100755 --- a/tools/deployment/baremetal/005-setup-nodes.sh +++ b/tools/deployment/baremetal/005-setup-nodes.sh @@ -27,7 +27,8 @@ done make all #NOTE: Deploy libvirt with vbmc then define domains to use as baremetal nodes -helm install ./libvirt \ +: ${OSH_INFRA_PATH:="../openstack-helm-infra"} +helm install ${OSH_INFRA_PATH}/libvirt \ --namespace=libvirt \ --name=libvirt \ --set network.backend=null \ diff --git a/tools/deployment/developer/ceph/150-libvirt.sh b/tools/deployment/developer/ceph/150-libvirt.sh index 5196ac2b5b..71514dd884 100755 --- a/tools/deployment/developer/ceph/150-libvirt.sh +++ b/tools/deployment/developer/ceph/150-libvirt.sh @@ -19,8 +19,9 @@ set -xe make libvirt #NOTE: Deploy command +: ${OSH_INFRA_PATH:="../openstack-helm-infra"} : ${OSH_EXTRA_HELM_ARGS:=""} -helm upgrade --install libvirt ./libvirt \ +helm upgrade --install libvirt ${OSH_INFRA_PATH}/libvirt \ --namespace=openstack \ ${OSH_EXTRA_HELM_ARGS} \ ${OSH_EXTRA_HELM_ARGS_LIBVIRT} diff --git a/tools/deployment/developer/nfs/150-libvirt.sh b/tools/deployment/developer/nfs/150-libvirt.sh index 04adb7fbca..c3420ae4e3 100755 --- a/tools/deployment/developer/nfs/150-libvirt.sh +++ b/tools/deployment/developer/nfs/150-libvirt.sh @@ -19,8 +19,9 @@ set -xe make libvirt #NOTE: Deploy command +: ${OSH_INFRA_PATH:="../openstack-helm-infra"} : ${OSH_EXTRA_HELM_ARGS:=""} -helm upgrade --install libvirt ./libvirt \ +helm upgrade --install libvirt ${OSH_INFRA_PATH}/libvirt \ --namespace=openstack \ --set conf.ceph.enabled=false \ ${OSH_EXTRA_HELM_ARGS} \ diff --git a/tools/deployment/multinode/130-libvirt.sh b/tools/deployment/multinode/130-libvirt.sh index 434b094718..26d1859196 100755 --- a/tools/deployment/multinode/130-libvirt.sh +++ b/tools/deployment/multinode/130-libvirt.sh @@ -16,7 +16,8 @@ set -xe #NOTE: Deploy libvirt -helm upgrade --install libvirt ./libvirt \ +: ${OSH_INFRA_PATH:="../openstack-helm-infra"} +helm upgrade --install libvirt ${OSH_INFRA_PATH}/libvirt \ --namespace=openstack \ ${OSH_EXTRA_HELM_ARGS} \ ${OSH_EXTRA_HELM_ARGS_LIBVIRT}