Allow deployments on Kubernetes version 1.16

This commit is contained in:
Ilija Matoski 2019-11-20 14:18:53 +01:00
parent 6f2b10daf5
commit e2cd86089b
No known key found for this signature in database
GPG Key ID: 0CF037AEA5ED29FC
2 changed files with 19 additions and 1 deletions

View File

@ -186,6 +186,19 @@
include_tasks: ssl_cert_gen.yml
when: "rabbitmq_use_ssl|default(False)|bool"
- name: Get Kubernetes API version
command: |
{{ kubectl_or_oc }} version -o json
register: kube_version
- name: Extract server version from command output
set_fact:
kube_api_version: "{{ (kube_version.stdout | from_json).serverVersion.gitVersion[1:] }}"
- name: Determine StatefulSet api version
set_fact:
kubernetes_statefulset_api_version: "{{ 'apps/v1' if kube_api_version is version('1.9', '>=') else 'apps/v1beta1' }}"
- name: Render deployment templates
set_fact:
"{{ item }}": "{{ lookup('template', item + '.yml.j2') }}"

View File

@ -131,7 +131,7 @@ userNames:
{% endif %}
---
apiVersion: apps/v1beta1
apiVersion: {{ kubernetes_statefulset_api_version }}
kind: StatefulSet
metadata:
name: {{ kubernetes_deployment_name }}
@ -139,6 +139,11 @@ metadata:
spec:
serviceName: {{ kubernetes_deployment_name }}
replicas: 1
{% if kubernetes_statefulset_api_version == "apps/v1" %}
selector:
matchLabels:
app: {{ kubernetes_deployment_name }}
{% endif %}
template:
metadata:
labels: