diff options
author | Fatih Degirmenci <fdegir@gmail.com> | 2019-08-31 18:50:05 +0200 |
---|---|---|
committer | Fatih Degirmenci <fdegir@gmail.com> | 2019-09-01 02:45:10 +0200 |
commit | 5ed2d835de246e3cfb0878d78b382115ec8f0987 (patch) | |
tree | f0c515ce1da4444eae0334cf73fcd99d8f9708d8 /xci/installer/kubespray/playbooks/configure-installer.yml | |
parent | 0326442e753be727c2342b7caf9606393f84d744 (diff) |
Refactor k8s scenario implementation
This change updates the scenario logic for basic k8s
scenarios that enables the use of various network plugins.
The change simply stops copying k8s-cluster.yml over but instead
operates on the existing/original k8s-cluster.yml and updates
kube_network_plugin in place.
This makes it easier to maintain the scenarios and more importantly
unblocks us from bumping kubespray and kubernetes versions.
Please note that opnfv-scenario-requirements.yml contains version and
the refspec of the corresponding change in releng-xci-scenarios repo
so this change must be verified properly and if it passes CI, it
needs to be amended, updating k8-calico-nofeature scenario's version
to master and submitted. And then the change in releng-xci-scenarios
can properly be verified.
https://gerrit.opnfv.org/gerrit/#/c/releng-xci-scenarios/+/68418/
installer-type:kubespray
deploy-scenario:k8-calico-nofeature
JIRA: XCI-20
Change-Id: I1f851d20f5f7bc256199303581b05659091fddf9
Signed-off-by: Fatih Degirmenci <fdegir@gmail.com>
Diffstat (limited to 'xci/installer/kubespray/playbooks/configure-installer.yml')
-rw-r--r-- | xci/installer/kubespray/playbooks/configure-installer.yml | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/xci/installer/kubespray/playbooks/configure-installer.yml b/xci/installer/kubespray/playbooks/configure-installer.yml new file mode 100644 index 00000000..1f3b3d6f --- /dev/null +++ b/xci/installer/kubespray/playbooks/configure-installer.yml @@ -0,0 +1,46 @@ +--- +# SPDX-license-identifier: Apache-2.0 +############################################################################## +# All rights reserved. This program and the accompanying materials +# are made available under the terms of the Apache License, Version 2.0 +# which accompanies this distribution, and is available at +# http://www.apache.org/licenses/LICENSE-2.0 +############################################################################## +- hosts: localhost + connection: local + vars_files: + - "{{ xci_path }}/xci/var/opnfv.yml" + + tasks: + - name: delete existing kubespray/inventory/opnfv directory + file: + path: "{{ xci_path }}/.cache/repos/kubespray/inventory/opnfv" + state: absent + + - name: copy kubespray/inventory/sample as kubespray/inventory/opnfv + copy: + src: "{{ xci_path }}/.cache/repos/kubespray/inventory/sample/" + dest: "{{ xci_path }}/.cache/repos/kubespray/inventory/opnfv" + + - name: update kubespray k8s-cluster.yml for xci + lineinfile: + path: "{{ xci_path }}/.cache/repos/kubespray/inventory/opnfv/group_vars/k8s-cluster/k8s-cluster.yml" + regexp: "{{ item.regexp }}" + line: "{{ item.line }}" + with_items: + - { regexp: "kube_version:.*", line: "kube_version: {{ kubernetes_version }}" } + - { regexp: "kubeconfig_localhost:.*", line: "kubeconfig_localhost: true" } + - { regexp: "kube_basic_auth:.*", line: "kube_basic_auth: true" } + - { regexp: "dashboard_enabled:.*", line: "dashboard_enabled: true" } + + - name: update kubespray artifacts_dir + lineinfile: + path: "{{ xci_path }}/.cache/repos/kubespray/inventory/opnfv/group_vars/k8s-cluster/k8s-cluster.yml" + regexp: "artifacts_dir:.*" + line: "artifacts_dir: '{{ '{{' }} ansible_env.HOME {{ '}}' }}'" + + - name: change dashboard server type to NodePort + lineinfile: + path: "{{ xci_path }}/.cache/repos/kubespray/roles/kubernetes-apps/ansible/templates/dashboard.yml.j2" + insertafter: 'targetPort' + line: " type: NodePort" |