Use pod dependencies in nova chart

Changes nova chart to depend on neutron pod labels instead of daemonsets
in order to prepare for utilizing daemonset overrides in neutron chart,
Utilizes a new feature of kubernetes-entrypoint, pod dependencies, added
to kubernetes-entrypoint in v0.3.0.

Change-Id: Ic79ddc1b7f477195c5b3dfd630df4d78d7589030
This commit is contained in:
Sean Eagan 2018-03-13 11:28:58 -05:00
parent 0c7b6e01a3
commit 6d0a0fc0c3
4 changed files with 24 additions and 10 deletions

View File

@ -34,6 +34,8 @@ limitations under the License.
fieldPath: metadata.namespace
- name: INTERFACE_NAME
value: eth0
- name: PATH
value: /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/
- name: DEPENDENCY_SERVICE
value: "{{ tuple $deps.services $envAll | include "helm-toolkit.utils.comma_joined_service_list" }}"
- name: DEPENDENCY_JOBS
@ -42,6 +44,8 @@ limitations under the License.
value: "{{ include "helm-toolkit.utils.joinListWithComma" $deps.daemonset }}"
- name: DEPENDENCY_CONTAINER
value: "{{ include "helm-toolkit.utils.joinListWithComma" $deps.container }}"
- name: DEPENDENCY_POD
value: {{ if $deps.pod }}{{ toJson $deps.pod | quote }}{{ else }}""{{ end }}
- name: COMMAND
value: "echo done"
command:

View File

@ -57,7 +57,7 @@ rules:
{{ if eq $v "jobs" }}
- jobs
{{- end -}}
{{ if or (eq $v "daemonsets") (eq $v "jobs") }}
{{ if or (eq $v "pods") (eq $v "daemonsets") (eq $v "jobs") }}
- pods
{{- end -}}
{{ if eq $v "services" }}

View File

@ -40,6 +40,8 @@ metadata:
{{- $_ := set $allNamespace $saNamespace (printf "%s%s" "jobs," ((index $allNamespace $saNamespace) | default "")) }}
{{- else if and (eq $k "daemonset") $v }}
{{- $_ := set $allNamespace $saNamespace (printf "%s%s" "daemonsets," ((index $allNamespace $saNamespace) | default "")) }}
{{- else if and (eq $k "pod") $v }}
{{- $_ := set $allNamespace $saNamespace (printf "%s%s" "pods," ((index $allNamespace $saNamespace) | default "")) }}
{{- end -}}
{{- end -}}
{{- $_ := unset $allNamespace $randomKey }}

View File

@ -64,7 +64,7 @@ images:
bootstrap: docker.io/openstackhelm/heat:newton
db_drop: docker.io/openstackhelm/heat:newton
db_init: docker.io/openstackhelm/heat:newton
dep_check: 'quay.io/stackanetes/kubernetes-entrypoint:v0.2.1'
dep_check: 'quay.io/stackanetes/kubernetes-entrypoint:v0.3.0'
rabbit_init: docker.io/rabbitmq:3.7-management
ks_user: docker.io/openstackhelm/heat:newton
ks_service: docker.io/openstackhelm/heat:newton
@ -185,16 +185,22 @@ dependencies:
targeted:
openvswitch:
compute:
daemonset:
- neutron-ovs-agent
pod:
- labels:
application: neutron
component: neutron-ovs-agent
linuxbridge:
compute:
daemonset:
- neutron-lb-agent
pod:
- labels:
application: neutron
component: neutron-lb-agent
sriov:
compute:
daemonset:
- neutron-sriov-agent
pod:
- labels:
application: neutron
component: neutron-sriov-agent
static:
api:
jobs:
@ -231,8 +237,10 @@ dependencies:
- endpoint: internal
service: compute
compute:
daemonset:
- libvirt
pod:
- labels:
application: libvirt
component: libvirt
jobs:
- nova-db-sync
- nova-rabbit-init