|
@@ -1,101 +0,0 @@
|
|
|
----
|
|
|
-
|
|
|
-- hosts: nessi.verchow.egs
|
|
|
- tags: create_kvm
|
|
|
- vars:
|
|
|
- kvm_alias: lx-builder
|
|
|
- kvm_install_iso: /media0/software-images/debian-9.1.0-amd64-netinst.iso
|
|
|
-# if you skip the 'rebuild' tag
|
|
|
- kvm:
|
|
|
- uuid: '...'
|
|
|
- pre_tasks:
|
|
|
- - name: destroy current kvm
|
|
|
- vmadm:
|
|
|
- alias: "{{ kvm_alias }}"
|
|
|
- state: absent
|
|
|
- tasks:
|
|
|
- - name: create kvm
|
|
|
- vmadm:
|
|
|
- alias: "{{ kvm_alias }}"
|
|
|
- autoboot: false
|
|
|
- brand: kvm
|
|
|
- disks:
|
|
|
- - boot: true
|
|
|
- model: virtio
|
|
|
- size: 8192
|
|
|
- nics:
|
|
|
- - nic_tag: admin
|
|
|
- ip: dhcp
|
|
|
- primary: true
|
|
|
- model: virtio
|
|
|
- ram: 4096
|
|
|
- state: stopped
|
|
|
- vcpus: 2
|
|
|
- register: kvm
|
|
|
-
|
|
|
- - debug: var=kvm
|
|
|
-
|
|
|
- - name: copy install iso to zone
|
|
|
- copy:
|
|
|
- remote_src: true
|
|
|
- src: "{{ kvm_install_iso }}"
|
|
|
- dest: "/zones/{{ kvm.uuid }}/root/install.iso"
|
|
|
-
|
|
|
- - name: boot from iso
|
|
|
- shell: "vmadm boot {{ kvm.uuid }} order=cd,once=d cdrom=/install.iso,ide"
|
|
|
-
|
|
|
- - name: get vnc infos
|
|
|
- shell: "vmadm info {{ kvm.uuid }} | json vnc.port"
|
|
|
- register: kvm_vnc_port
|
|
|
-
|
|
|
- - debug: var=kvm_info.stdout
|
|
|
- - debug:
|
|
|
- msg: "vncviewer {{ ansible_hostname }}:{{ kvm_vnc_port.stdout }}"
|
|
|
-
|
|
|
-- hosts: lx-builder
|
|
|
- gather_facts: no
|
|
|
- roles:
|
|
|
- - debian-ansible-target
|
|
|
- tasks:
|
|
|
-
|
|
|
-- hosts: lx-builder
|
|
|
- pre_tasks:
|
|
|
- - name: create .ssh folder
|
|
|
- file:
|
|
|
- path: /root/.ssh
|
|
|
- mode: 0700
|
|
|
- state: directory
|
|
|
- - name: copy ssh-id
|
|
|
- copy:
|
|
|
- src: /home/trv/.ssh/id_rsa.pub
|
|
|
- dest: /root/.ssh/authorized_keys
|
|
|
- mode: 0600
|
|
|
- tasks:
|
|
|
- - name: install packages
|
|
|
- apt:
|
|
|
- name:
|
|
|
- - debootstrap
|
|
|
- - git
|
|
|
-
|
|
|
- - name: git checkout lx-brand image builder
|
|
|
- git:
|
|
|
- repo: https://github.com/joyent/debian-lx-brand-image-builder.git
|
|
|
- dest: /root/debian-lx-brand-image-builder/
|
|
|
-
|
|
|
- - name: chmod scripte
|
|
|
- file:
|
|
|
- dest: /root/debian-lx-brand-image-builder/install
|
|
|
- mode: 0750
|
|
|
-
|
|
|
- - set_fact:
|
|
|
- release: "stretch"
|
|
|
- install_dir: /root/lx/
|
|
|
- archive_mirror: "http://ftp.de.debian.org/debian/"
|
|
|
- image_name_short: "debian-9"
|
|
|
- image_name_full: "Debian 9.1"
|
|
|
- image_description: "Container-native Debian 9.1 (stretch) 64-bit image."
|
|
|
-
|
|
|
- - name: build lx
|
|
|
- command: "./install -r {{ release }} -d {{ install_dir }} -m {{ archive_mirror }} -i {{ image_name_short }} -p {{ image_name_full }} -D {{ image_description }}"
|
|
|
- args:
|
|
|
- chdir: /root/debian-lx-brand-image-builder/
|