diff options
author | Lars Wirzenius <liw@liw.fi> | 2020-04-08 11:58:29 +0300 |
---|---|---|
committer | Lars Wirzenius <liw@liw.fi> | 2020-04-08 11:58:29 +0300 |
commit | 1981433f6bc348800994be7f83dde7edc6e70a16 (patch) | |
tree | 1a153eb3a5cffd6be8a2b4c9bf816a46bf9970b4 | |
parent | bfa6e29d4b6f6c9690e8619bb95615a94eabd733 (diff) | |
download | ick-contractor-1981433f6bc348800994be7f83dde7edc6e70a16.tar.gz |
Add: VM and build specs for Subplot, vmdb2
-rw-r--r-- | subplot.yaml | 18 | ||||
-rw-r--r-- | vmdb2.yaml | 17 | ||||
-rw-r--r-- | worker-subplot.vmdb | 46 | ||||
-rw-r--r-- | worker-subplot.yml | 72 | ||||
-rw-r--r-- | worker-vmdb2.vmdb | 46 | ||||
-rw-r--r-- | worker-vmdb2.yml | 73 |
6 files changed, 272 insertions, 0 deletions
diff --git a/subplot.yaml b/subplot.yaml new file mode 100644 index 0000000..1b307ff --- /dev/null +++ b/subplot.yaml @@ -0,0 +1,18 @@ +worker-image: worker-subplot.img +install: + - build-essential + - python3 + - pandoc + - pandoc-citeproc + - texlive-latex-base + - texlive-latex-recommended + - texlive-fonts-recommended + - librsvg2-bin + - graphviz + - plantuml + - cargo + +source: ~/code/subplot/subplot +workspace: ~/tmp/contractor/subplot +build: | + ./check diff --git a/vmdb2.yaml b/vmdb2.yaml new file mode 100644 index 0000000..f5d728a --- /dev/null +++ b/vmdb2.yaml @@ -0,0 +1,17 @@ +worker-image: worker.img +install: + - build-essential + - python3-all + - python3-coverage-test-runner + - python3-cliapp + - python3-jinja2 + - python3-yaml + - qemu-utils + - parted + - kpartx + - debootstrap +source: ~/code/vmdb2 +workspace: ~/tmp/contractor/vmdb2 +build: | + ./check + ./check-all /workspace/buster.tar.gz diff --git a/worker-subplot.vmdb b/worker-subplot.vmdb new file mode 100644 index 0000000..8f667e7 --- /dev/null +++ b/worker-subplot.vmdb @@ -0,0 +1,46 @@ +# An image for running the Ick contractor inner VM. + +steps: + - mkimg: "{{ output }}" + size: 10G + + - mklabel: msdos + device: "{{ output }}" + + - mkpart: primary + device: "{{ output }}" + start: 0% + end: 100% + tag: / + + - kpartx: "{{ output }}" + + - mkfs: ext4 + partition: / + + - mount: / + + - unpack-rootfs: / + + - debootstrap: buster + mirror: http://deb.debian.org/debian + target: / + unless: rootfs_unpacked + + - apt: install + packages: + - linux-image-amd64 + - python3 + tag: / + unless: rootfs_unpacked + + - cache-rootfs: / + unless: rootfs_unpacked + + - fstab: / + + - ansible: / + playbook: worker-subplot.yml + + - grub: bios + tag: / diff --git a/worker-subplot.yml b/worker-subplot.yml new file mode 100644 index 0000000..27cff48 --- /dev/null +++ b/worker-subplot.yml @@ -0,0 +1,72 @@ +- hosts: image + tasks: + - shell: | + echo "{{ host }}" > /etc/hostname + sed -i '/^127\.0\.0.*localhost.*/s/.*/127.0.0.1 localhost {{ host }}/' \ + /etc/hosts + sed -i '/^root:[^:]:/s//root::/' /etc/passwd + - copy: + content: | + auto lo + iface lo inet loopback + + auto eth0 + iface eth0 inet dhcp + dest: /etc/network/interfaces + - apt: + name: + - openssh-server + - sudo + - build-essential + - pandoc + - pandoc-citeproc + - texlive-latex-base + - texlive-latex-recommended + - texlive-fonts-recommended + - librsvg2-bin + - graphviz + - cargo + - user: + comment: "Worker" + name: worker + shell: /bin/bash + - file: + state: directory + path: /home/worker/.ssh + owner: worker + group: worker + mode: 0700 + - copy: + src: manager.key.pub + dest: /home/worker/.ssh/authorized_keys + owner: worker + group: worker + mode: 0600 + - user: + comment: "Manager" + name: manager + shell: /bin/bash + - file: + state: directory + path: /home/manager/.ssh + owner: manager + group: manager + mode: 0700 + - copy: + src: manager.key.pub + dest: /home/manager/.ssh/authorized_keys + owner: manager + group: manager + mode: 0600 + - copy: + content: | + manager ALL=(ALL:ALL) NOPASSWD: ALL + dest: /etc/sudoers.d/manager + owner: root + group: root + mode: 0600 + vars: + host: worker + ansible_python_interpreter: /usr/bin/python3 + user_pub: | + ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQDAlECa3tbFGXhB3Zh/4/GhM11THOThVfiuLqqJ2dpWHEClzpKJHpzzwWt7g9z/MMQNMsUJLy+okz+De6hdjjmYJ9kG9Sr3H4YKq6itGQMj7L/cH3WS3ynp0uy0oW3hf932vDZKQ8iy9vczXH+ERYl+4TYae1Jp4Hyf4/2IYxEfuhKctvSvqySST3Qk9JNZ71HFGOWhjH/MmoCLoT1v+HkqmHdYf/GMKGRo3gqCEGgCgNErYYIyKm3OF3dHXK+hyGLE/cZNu6fU5woW3rvtUCFt08Ri2pm0cnXXJn9jQIMxfS5Kkf64svwgzKmPqgX1f4flopYPlsBXduCgzbJvj+lpgauAk/i1A5B01CFa9sI4C6pHZmwk1qxRwN+4IXL2CQt+tDgYC84ZDDd8R7cNyL22a3KhMQmdHtvog1beAa3Ab+J+cafkXXN+Es9f1wQjzk7DiHupmJIVofBvPP+cRcB46rwha6ati8Fa5QkT9rXFNqQsKk7jq8TIi54Bm15OOa0jInGG3TM17b9Ftu2WTJSAaqgBnDfZiInK7HEvC6K/IBljrN3oGagmFZPrAvzw7d6C2/nKFAQtfoMcE5oWVDrJyjsmJ8oaru0E8rwj7mMvyKPgEMnXTGXLWDgEo50+i291m4bkCxVwiOPbPRvdMll1Y8qfBAPT76sY4Ikgcw/2iw== openpgp:0xBBE80E50 diff --git a/worker-vmdb2.vmdb b/worker-vmdb2.vmdb new file mode 100644 index 0000000..f91a353 --- /dev/null +++ b/worker-vmdb2.vmdb @@ -0,0 +1,46 @@ +# An image for running the Ick contractor inner VM. + +steps: + - mkimg: "{{ output }}" + size: 10G + + - mklabel: msdos + device: "{{ output }}" + + - mkpart: primary + device: "{{ output }}" + start: 0% + end: 100% + tag: / + + - kpartx: "{{ output }}" + + - mkfs: ext4 + partition: / + + - mount: / + + - unpack-rootfs: / + + - debootstrap: buster + mirror: http://deb.debian.org/debian + target: / + unless: rootfs_unpacked + + - apt: install + packages: + - linux-image-amd64 + - python3 + tag: / + unless: rootfs_unpacked + + - cache-rootfs: / + unless: rootfs_unpacked + + - fstab: / + + - ansible: / + playbook: worker-vmdb2.yml + + - grub: bios + tag: / diff --git a/worker-vmdb2.yml b/worker-vmdb2.yml new file mode 100644 index 0000000..a05e678 --- /dev/null +++ b/worker-vmdb2.yml @@ -0,0 +1,73 @@ +- hosts: image + tasks: + - shell: | + echo "{{ host }}" > /etc/hostname + sed -i '/^127\.0\.0.*localhost.*/s/.*/127.0.0.1 localhost {{ host }}/' \ + /etc/hosts + sed -i '/^root:[^:]:/s//root::/' /etc/passwd + - copy: + content: | + auto lo + iface lo inet loopback + + auto eth0 + iface eth0 inet dhcp + dest: /etc/network/interfaces + - apt: + name: + - openssh-server + - sudo + - build-essential + - python3-all + - python3-coverage-test-runner + - python3-cliapp + - python3-jinja2 + - python3-yaml + - qemu-utils + - parted + - kpartx + - debootstrap + - user: + comment: "Worker" + name: worker + shell: /bin/bash + - file: + state: directory + path: /home/worker/.ssh + owner: worker + group: worker + mode: 0700 + - copy: + src: manager.key.pub + dest: /home/worker/.ssh/authorized_keys + owner: worker + group: worker + mode: 0600 + - user: + comment: "Manager" + name: manager + shell: /bin/bash + - file: + state: directory + path: /home/manager/.ssh + owner: manager + group: manager + mode: 0700 + - copy: + src: manager.key.pub + dest: /home/manager/.ssh/authorized_keys + owner: manager + group: manager + mode: 0600 + - copy: + content: | + manager ALL=(ALL:ALL) NOPASSWD: ALL + dest: /etc/sudoers.d/manager + owner: root + group: root + mode: 0600 + vars: + host: worker + ansible_python_interpreter: /usr/bin/python3 + user_pub: | + ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQDAlECa3tbFGXhB3Zh/4/GhM11THOThVfiuLqqJ2dpWHEClzpKJHpzzwWt7g9z/MMQNMsUJLy+okz+De6hdjjmYJ9kG9Sr3H4YKq6itGQMj7L/cH3WS3ynp0uy0oW3hf932vDZKQ8iy9vczXH+ERYl+4TYae1Jp4Hyf4/2IYxEfuhKctvSvqySST3Qk9JNZ71HFGOWhjH/MmoCLoT1v+HkqmHdYf/GMKGRo3gqCEGgCgNErYYIyKm3OF3dHXK+hyGLE/cZNu6fU5woW3rvtUCFt08Ri2pm0cnXXJn9jQIMxfS5Kkf64svwgzKmPqgX1f4flopYPlsBXduCgzbJvj+lpgauAk/i1A5B01CFa9sI4C6pHZmwk1qxRwN+4IXL2CQt+tDgYC84ZDDd8R7cNyL22a3KhMQmdHtvog1beAa3Ab+J+cafkXXN+Es9f1wQjzk7DiHupmJIVofBvPP+cRcB46rwha6ati8Fa5QkT9rXFNqQsKk7jq8TIi54Bm15OOa0jInGG3TM17b9Ftu2WTJSAaqgBnDfZiInK7HEvC6K/IBljrN3oGagmFZPrAvzw7d6C2/nKFAQtfoMcE5oWVDrJyjsmJ8oaru0E8rwj7mMvyKPgEMnXTGXLWDgEo50+i291m4bkCxVwiOPbPRvdMll1Y8qfBAPT76sY4Ikgcw/2iw== openpgp:0xBBE80E50 |