summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLars Wirzenius <liw@liw.fi>2020-04-18 06:39:03 +0000
committerLars Wirzenius <liw@liw.fi>2020-04-18 06:39:03 +0000
commit31ce65505a4d8551d3c5a3da3a9fd6719a0e3e72 (patch)
tree41270aa7c8072d1dd4780da7f0c60cf767cd74d8
parent3a872d545763758796cea3a917725745b8b4e457 (diff)
parent0b02e3cdc5bfb107f368a9d88bf166016d855dd1 (diff)
downloadick-contractor-31ce65505a4d8551d3c5a3da3a9fd6719a0e3e72.tar.gz
Merge branch 'fixes' into 'master'
Various fixes and cleanups See merge request larswirzenius/contractor!1
-rwxr-xr-xcheck5
-rwxr-xr-xcontractor3
-rwxr-xr-xvm.sh13
-rw-r--r--vm.vmdb3
-rw-r--r--worker-scap.vmdb4
-rw-r--r--worker-scap.yml11
-rw-r--r--worker-subplot.vmdb7
-rw-r--r--worker-subplot.yml23
-rw-r--r--worker-vmdb2.vmdb9
-rw-r--r--worker-vmdb2.yml11
-rw-r--r--worker.vmdb7
-rw-r--r--worker.yml12
12 files changed, 44 insertions, 64 deletions
diff --git a/check b/check
new file mode 100755
index 0000000..4e4f4d0
--- /dev/null
+++ b/check
@@ -0,0 +1,5 @@
+#!/bin/sh
+
+set -eu
+
+CONTRACTOR_ADDRESS="$1" sp-codegen contractor.md -o test.py --run
diff --git a/contractor b/contractor
index e3475f3..43fdc43 100755
--- a/contractor
+++ b/contractor
@@ -119,7 +119,7 @@ class ContractorApplication(cliapp.Application):
worker = OnWorker(
dest, 'worker@{}'.format(worker_ip), verbose=self.verbose)
- self.exec_sequence(worker, MountWSonWorker())
+ self.exec_sequence(worker, Mkdir('/workspace'), MountWSonWorker())
execs = []
install = bs.install()
@@ -451,6 +451,7 @@ class Mkdir(RemoteExecution):
def __init__(self, pathname, owner='root', group='root', mode=0o755):
self._argv = [
+ 'sudo',
'install', '-d',
'-o', str(owner),
'-g', str(group),
diff --git a/vm.sh b/vm.sh
index 8abdd36..566f208 100755
--- a/vm.sh
+++ b/vm.sh
@@ -2,7 +2,12 @@
set -eu
-vmdb2 worker.vmdb --output worker.img --rootfs-tarball vm.tar.gz -v
-vmdb2 worker-subplot.vmdb --output worker-subplot.img --rootfs-tarball vm.tar.gz -v
-vmdb2 worker-vmdb2.vmdb --output worker-vmdb2.img --rootfs-tarball vm.tar.gz -v
-vmdb2 vm.vmdb --output vm.img --rootfs-tarball vm.tar.gz -v
+build() {
+ vmdb2 "$1" --output "$2" --rootfs-tarball vm.tar.gz -v --log vmdb2.log
+}
+
+build vm.vmdb vm.img
+build worker.vmdb worker.img
+build worker-subplot.vmdb worker-subplot.img
+build worker-vmdb2.vmdb worker-vmdb2.img
+build worker-scap.vmdb worker-scap.img
diff --git a/vm.vmdb b/vm.vmdb
index 7f207d6..82b0ab6 100644
--- a/vm.vmdb
+++ b/vm.vmdb
@@ -30,7 +30,10 @@ steps:
- apt: install
packages:
- linux-image-amd64
+ - locales-all
- python3
+ - sudo
+ - ssh
tag: /
unless: rootfs_unpacked
diff --git a/worker-scap.vmdb b/worker-scap.vmdb
index 2467378..a0b7a68 100644
--- a/worker-scap.vmdb
+++ b/worker-scap.vmdb
@@ -30,8 +30,10 @@ steps:
- apt: install
packages:
- linux-image-amd64
- - python
+ - locales-all
- openssh-server
+ - python3
+ - sudo
tag: /
unless: rootfs_unpacked
diff --git a/worker-scap.yml b/worker-scap.yml
index 7387483..1003b77 100644
--- a/worker-scap.yml
+++ b/worker-scap.yml
@@ -75,18 +75,9 @@
owner: root
group: root
mode: 0600
- - file:
- state: directory
- path: /workspace
- - lineinfile:
- path: /etc/fstab
- regexp: '^/dev/vdb'
- line: '/dev/vdb /workspace ext4 defaults 0 2'
vars:
host: worker
- ansible_python_interpreter: /usr/bin/python
- 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
+ ansible_python_interpreter: /usr/bin/python3
ci_prod_signing_key: |
-----BEGIN PGP PUBLIC KEY BLOCK-----
diff --git a/worker-subplot.vmdb b/worker-subplot.vmdb
index a96dbc7..3ff1d1c 100644
--- a/worker-subplot.vmdb
+++ b/worker-subplot.vmdb
@@ -1,8 +1,6 @@
-# An image for running the Ick contractor inner VM.
-
steps:
- mkimg: "{{ output }}"
- size: 10G
+ size: 4G
- mklabel: msdos
device: "{{ output }}"
@@ -32,7 +30,10 @@ steps:
- apt: install
packages:
- linux-image-amd64
+ - locales-all
+ - openssh-server
- python3
+ - sudo
tag: /
unless: rootfs_unpacked
diff --git a/worker-subplot.yml b/worker-subplot.yml
index 5e4c1dc..8cf09ec 100644
--- a/worker-subplot.yml
+++ b/worker-subplot.yml
@@ -15,19 +15,17 @@
dest: /etc/network/interfaces
- apt:
name:
- - openssh-server
- - sudo
- build-essential
+ - cargo
+ - graphviz
+ - librsvg2-bin
+ - locales-all
- pandoc
- pandoc-citeproc
+ - plantuml
+ - texlive-fonts-recommended
- texlive-latex-base
- texlive-latex-recommended
- - texlive-fonts-recommended
- - librsvg2-bin
- - graphviz
- - plantuml
- - cargo
- - locales-all
- user:
comment: "Worker"
name: worker
@@ -51,15 +49,6 @@
owner: root
group: root
mode: 0600
- - file:
- state: directory
- path: /workspace
- - lineinfile:
- path: /etc/fstab
- regexp: '^/dev/vdb'
- line: '/dev/vdb /workspace ext4 defaults 0 2'
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
index f91a353..be9ab2d 100644
--- a/worker-vmdb2.vmdb
+++ b/worker-vmdb2.vmdb
@@ -1,8 +1,6 @@
-# An image for running the Ick contractor inner VM.
-
steps:
- mkimg: "{{ output }}"
- size: 10G
+ size: 4G
- mklabel: msdos
device: "{{ output }}"
@@ -20,6 +18,8 @@ steps:
- mount: /
+ - virtual-filesystems: /
+
- unpack-rootfs: /
- debootstrap: buster
@@ -30,7 +30,10 @@ steps:
- apt: install
packages:
- linux-image-amd64
+ - locales-all
+ - openssh-server
- python3
+ - sudo
tag: /
unless: rootfs_unpacked
diff --git a/worker-vmdb2.yml b/worker-vmdb2.yml
index 45b26ae..a202e15 100644
--- a/worker-vmdb2.yml
+++ b/worker-vmdb2.yml
@@ -24,7 +24,6 @@
- kpartx
- locales-all
- moreutils
- - openssh-server
- pandoc
- parted
- python3-all
@@ -33,7 +32,6 @@
- python3-jinja2
- python3-yaml
- qemu-utils
- - sudo
- user:
comment: "Worker"
name: worker
@@ -57,15 +55,6 @@
owner: root
group: root
mode: 0600
- - file:
- state: directory
- path: /workspace
- - lineinfile:
- path: /etc/fstab
- regexp: '^/dev/vdb'
- line: '/dev/vdb /workspace ext4 defaults 0 2'
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.vmdb b/worker.vmdb
index 56218ae..264f7b8 100644
--- a/worker.vmdb
+++ b/worker.vmdb
@@ -1,5 +1,3 @@
-# An image for running the Ick contractor inner VM.
-
steps:
- mkimg: "{{ output }}"
size: 4G
@@ -20,6 +18,8 @@ steps:
- mount: /
+ - virtual-filesystems: /
+
- unpack-rootfs: /
- debootstrap: buster
@@ -30,7 +30,10 @@ steps:
- apt: install
packages:
- linux-image-amd64
+ - locales-all
+ - openssh-server
- python3
+ - sudo
tag: /
unless: rootfs_unpacked
diff --git a/worker.yml b/worker.yml
index 7551a56..8d94f28 100644
--- a/worker.yml
+++ b/worker.yml
@@ -15,10 +15,7 @@
dest: /etc/network/interfaces
- apt:
name:
- - openssh-server
- - sudo
- build-essential
- - locales-all
- user:
comment: "Worker"
name: worker
@@ -42,15 +39,6 @@
owner: root
group: root
mode: 0600
- - file:
- state: directory
- path: /workspace
- # - lineinfile:
- # path: /etc/fstab
- # regexp: '^/dev/vdb'
- # line: '/dev/vdb /workspace ext4 defaults 0 2'
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