VOL-570 : Install Kubernetes in production and test modes
- Supports offline installation for k8s
- Configs and deploys voltha components
Change-Id: I29eb87c035cea1e86176bb2e30d36278760ece82
diff --git a/install/ansible/roles/voltha-k8s/tasks/config.yml b/install/ansible/roles/voltha-k8s/tasks/config.yml
new file mode 100644
index 0000000..c3bfe22
--- /dev/null
+++ b/install/ansible/roles/voltha-k8s/tasks/config.yml
@@ -0,0 +1,76 @@
+# Note: When the target == "cluster" the installer
+# is running to install voltha in the cluster hosts.
+# Whe the target == "installer" the installer is being
+# created.
+- name: VOLT-HA Config | The environment is properly set on login
+ template:
+ src: bashrc.j2
+ dest: "{{ target_voltha_home }}/.bashrc"
+ owner: voltha
+ group: voltha
+ mode: "u=rw,g=r,o=r"
+ when: target == "cluster"
+ tags: [voltha]
+
+- name: VOLT-HA Config | The .bashrc file is executed on ssh login
+ template:
+ src: bash_profile.j2
+ dest: "{{ target_voltha_home }}/.bash_profile"
+ owner: voltha
+ group: voltha
+ mode: "u=rw,g=r,o=r"
+ when: target == "cluster"
+ tags: [voltha]
+
+- name: VOLT-HA Config | Required directory exists
+ file:
+ path: "{{ target_voltha_home }}"
+ state: directory
+ owner: voltha
+ group: voltha
+ when: target == "cluster"
+ tags: [voltha]
+
+- name: VOLT-HA Config | Configuration files and directories are copied
+ synchronize:
+ src: "{{ install_source }}/{{ item }}"
+ dest: "{{ target_voltha_home }}"
+ archive: no
+ owner: no
+ perms: no
+ recursive: yes
+ links: yes
+ with_items:
+ - k8s
+ when: target == "cluster"
+ tags: [voltha]
+
+- name: VOLT-HA Config | Configuration directories are owned by voltha
+ file:
+ path: "{{ target_voltha_home }}/{{ item }}"
+ owner: voltha
+ group: voltha
+ recurse: yes
+ follow: no
+ with_items:
+ - k8s
+ when: target == "cluster"
+ tags: [voltha]
+
+- name: VOLT-HA Config | Docker containers for Voltha are pulled
+ command: docker pull {{ docker_registry }}/{{ item }}
+ with_items: "{{ voltha_containers }}"
+ when: target == "cluster"
+ tags: [voltha]
+
+- name: VOLT-HA Config | Docker images are re-tagged to expected names
+ command: docker tag {{ docker_registry }}/{{ item }} {{ item }}
+ with_items: "{{ voltha_containers }}"
+ when: target == "cluster"
+ tags: [voltha]
+
+- name: VOLT-HA Config | Docker images are re-tagged to cluster registry names
+ command: docker tag {{ docker_registry }}/{{ item }} {{ inventory_hostname }}:5001/{{ item }}
+ with_items: "{{ voltha_containers }}"
+ when: target == "cluster"
+ tags: [voltha]