summaryrefslogtreecommitdiff
path: root/roles/install-cloud-init/tasks/main.yml
diff options
context:
space:
mode:
authorChristian Poessinger <christian@poessinger.com>2020-04-23 22:11:33 +0200
committerGitHub <noreply@github.com>2020-04-23 22:11:33 +0200
commit4e0f2e4c6a648343a8132f1eadc0cdb89bda8c4a (patch)
tree21b2dbe849d325099fd2e32418b56b7ddad23edc /roles/install-cloud-init/tasks/main.yml
parent88832a6324731f9357aa301adc70ef8448d6bc9f (diff)
parent6f037298fc0c48f2ffb4ba0780f1cfdbb1fa4acf (diff)
downloadvyos-vm-images-4e0f2e4c6a648343a8132f1eadc0cdb89bda8c4a.tar.gz
vyos-vm-images-4e0f2e4c6a648343a8132f1eadc0cdb89bda8c4a.zip
Merge pull request #4 from zdc/fix-qemu-01
Multiple fixes and improvements in QEMU image building
Diffstat (limited to 'roles/install-cloud-init/tasks/main.yml')
-rw-r--r--roles/install-cloud-init/tasks/main.yml42
1 files changed, 38 insertions, 4 deletions
diff --git a/roles/install-cloud-init/tasks/main.yml b/roles/install-cloud-init/tasks/main.yml
index c9d5d07..2ae314b 100644
--- a/roles/install-cloud-init/tasks/main.yml
+++ b/roles/install-cloud-init/tasks/main.yml
@@ -1,17 +1,36 @@
+- name: Get Debian version
+ become: true
+ command: chroot {{ vyos_install_root }} awk 'match($0, /VERSION=.*\((\w+)\)/, version) { print version[1] }' /etc/os-release
+ register: debian_version
+- name: Set VyOS branch name crux
+ set_fact:
+ vyos_branch: "crux"
+ when: vyos_version is regex("^1\.2.*$")
- name: Put debian.list
become: true
copy:
- src: files/debian.list
+ src: "files/debian.list.{{ debian_version.stdout }}"
dest: "{{ vyos_install_root }}/etc/apt/sources.list.d/debian.list"
+- name: backup resolv.conf
+ become: true
+ command: mv {{ vyos_install_root }}/etc/resolv.conf /tmp/resolv.conf
+- name: add nameserver settings to chroot
+ become: true
+ copy:
+ src: "files/resolv.conf"
+ dest: "{{ vyos_install_root }}/etc/resolv.conf"
- name: apt-get update
become: true
command: chroot {{ vyos_install_root }} apt-get update
- name: Install cloud-init
become: true
- command: chroot {{ vyos_install_root }} apt-get install -y cloud-init cloud-utils
+ command: chroot {{ vyos_install_root }} apt-get -t {{ vyos_branch | default('current') }} install -y cloud-init cloud-utils
- name: apt-get clean
become: true
command: chroot {{ vyos_install_root }} apt-get clean
+- name: delete apt lists from cache
+ become: true
+ command: chroot {{ vyos_install_root }} rm -rf /var/lib/apt/lists/
- name: Delete debian.list
become: true
file:
@@ -25,9 +44,24 @@
mode: 0755
- name: Put datasource_list.cfg
become: true
- copy:
- src: "files/{{ vyos_platform | lower }}.cfg"
+ template:
+ src: 90_dpkg.cfg.j2
dest: "{{ vyos_install_root }}/etc/cloud/cloud.cfg.d/90_dpkg.cfg"
- name: run dpkg-reconfigure cloud-init
become: true
command: chroot {{ vyos_install_root }} dpkg-reconfigure -f noninteractive cloud-init
+- name: Disable config-stage modules
+ become: true
+ copy:
+ src: "files/90_disable_config_stage.cfg"
+ dest: "{{ vyos_install_root }}/etc/cloud/cloud.cfg.d/90_disable_config_stage.cfg"
+ when:
+ - cloud_init_disable_config is defined
+ - cloud_init_disable_config == "true"
+- name: restore original resolv.conf
+ become: true
+ command: mv /tmp/resolv.conf {{ vyos_install_root }}/etc/resolv.conf
+- name: change /etc/network/interfaces to include config from Cloud-Init
+ become: true
+ command: chroot {{ vyos_install_root }} sed -i 's/source-directory \/etc\/network\/interfaces.d/source \/etc\/network\/interfaces.d\/*/g' /etc/network/interfaces
+ when: vyos_version is regex("^1\.2.*$")