summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--subplot.yaml18
-rw-r--r--vmdb2.yaml17
-rw-r--r--worker-subplot.vmdb46
-rw-r--r--worker-subplot.yml72
-rw-r--r--worker-vmdb2.vmdb46
-rw-r--r--worker-vmdb2.yml73
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