1
0
mirror of https://github.com/jcwimer/startup-infrastructure synced 2026-03-24 22:34:42 +00:00

Create client machine and set up ssh between nodes

This commit is contained in:
2018-10-09 20:04:57 -04:00
parent b671c192fb
commit 6f65d1782d
6 changed files with 84 additions and 25 deletions

15
Vagrantfile vendored
View File

@@ -4,20 +4,33 @@ Vagrant.configure("2") do |config|
bootstrap.vm.box = "ubuntu/bionic64"
bootstrap.vm.hostname = "bootstrap"
bootstrap.vm.network "private_network", ip: "192.168.254.2"
bootstrap.vm.provision :shell, path: "tests/files/provision-script.sh"
bootstrap.vm.provider "virtualbox" do |v|
v.memory = 1024
v.cpus = 1
end
end
config.vm.define "worker1" do |worker1|
worker1.vm.box = "ubuntu/bionic64"
worker1.vm.hostname = "worker1"
worker1.vm.network "private_network", ip: "192.168.254.3"
worker1.vm.provision :shell, path: "tests/files/provision-script.sh"
worker1.vm.provider "virtualbox" do |v|
v.memory = 1024
v.cpus = 1
end
end
config.vm.define "client" do |client|
client.vm.box = "ubuntu/bionic64"
client.vm.hostname = "client"
client.vm.network "private_network", ip: "192.168.254.4"
client.vm.provision :shell, path: "tests/files/install-pip.sh"
client.vm.provision :shell, path: "tests/files/provision-script.sh"
client.vm.provider "virtualbox" do |v|
v.memory = 512
v.cpus = 1
end
end
end

View File

@@ -0,0 +1,10 @@
#!/bin/bash
apt-get update -qq
apt-get install -y -qq \
python-dev \
python-pip \
python-setuptools
pip install --upgrade setuptools
pip install ez_setup
pip install pipenv

View File

@@ -0,0 +1,6 @@
#!/bin/bash
echo "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDYa9zstumlg7XkKoNrJMlIN/zteqMA9J4GjuZA7r0xfMPrz4CglxzYKd/BhBpwp/HhU+vSR6vBa15kRODHdPZ+T1oXzMXAmMT3R2ZJRqF280Hsx9sK0X+FZWM84e4a1zQUrxuWyWJ4kKIiaX6DBAmhy8zHNvQ0c4Nk1exfwRicojaze71qrexSas4FHWaI4usC/g3mMKfiML/QX0UWW/G+D8qrg3cK3zClG916XlY/p1h9SWantqz75ea33TtmDNW6iCraKSjVeDGfzhshJsmQ7+/Rr/L4/s7hdpwTqdjSlJTIi61eBxcpDfMWBmsHOMZgnsTZ3wrdYXo70k44moA7 vagrant@test" >> /home/vagrant/.ssh/authorized_keys
cp /vagrant/tests/files/test_rsa /home/vagrant/test_rsa
chmod 600 /home/vagrant/test_rsa
chown vagrant:vagrant /home/vagrant/test_rsa

27
tests/files/test_rsa Normal file
View File

@@ -0,0 +1,27 @@
-----BEGIN RSA PRIVATE KEY-----
MIIEowIBAAKCAQEA2Gvc7LbppYO15CqDayTJSDf87XqjAPSeBo7mQO69MXzD68+A
oJcc2CnfwYQacKfx4VPr0kerwWteZETgx3T2fk9aF8zFwJjE90dmSUahdvNB7Mfb
CtF/hWVjPOHuGtc0FK8blslieJCiIml+gwQJocvMxzb0NHODZNXsX8EYnKI2s3u9
aq3sUmrOBR1miOLrAv4N5jCn4jC/0F9FFlvxvg/Kq4N3Ct8wpRvdel5WP6dYfUlm
p7as++Xmt907ZgzVuogq2iko1Xgxn84bISbJkO/v0a/y+P7O4XacE6nY0pSUyIut
XgcXKQ3zFgZrBzjGYJ7E2d8K3WF6O9JOOJqAOwIDAQABAoIBAGYur1W4myKByHyd
MgWBjeOiQ7Jgp9vIo2AXUlGwJvXZoauSAnpQPtc1FieJVu5/7S1lcT+MhWTCbAPN
nY+vAr7qenAoR+pCdyUFuh640X2XJzZDuoEmHx59m1hgmApmN3nYn58XIH4qU9MJ
mikD3ARfdCVPJggpzgzrEDq5sgQpmEZnVhAj7j4pdwnbNgt7sTzpltiQvrdcUx/v
uUEoTRkdUJhwaJ8aItl958aGKq7wopd6c8zsuBLQlIDI1O/CNg7NrE47pvMkMpHo
eXXVGPA0wVHbDejhEKXnQCAW0W/k2J3BDJhoZG15FErDmRg25oInmT27U15LZ9YI
TKwzWqECgYEA9nuUL8RIkmTX+fJF3djfrKn4KWWF9qUbEHzx78byeK2WxP1magfZ
m4gVIbg+f6q6ix0/VvkA992kDTcnZGFi7iAWBi5j8XE8iDQCFvOdMXLDi9KqL/ID
XE2SbpwnKBZm1tf+a6U5nlHsZWkGn1qaESFqmSjJ0/lDeqdQ+bjTMusCgYEA4Mci
euHbIn8NoqE9UAbCmTVIrS2MbSYPUZZmh/GSaC70024nGjQVl3dQiYC7nTBrKfPC
H3CfcbHhUpqek+imLukaJdR7yAB5AJRE+hLcHR/0Zqe2JmgLZOK8ikPvdGzeY4Qb
wtKVDtPkW6HMT+p4lCleppJs+fyCOEG2oQO4c/ECgYAFJwwv+3Bw7v680N25B4GV
gHAZnW+xej4YmCQOmSAUebx/HbT4XnWkFLIsZEeaL516rv/V95qXk+CMDi0aohaJ
V85eDrY0I+PaDQxGIo2UrQt9bsfz/KEpWs3G1ijTY7R+pUFCSs/riVbhv9JNnn0+
Am7SCNI/RiSs+bZtofl4RQKBgC2yzqPE/1RIGHGT7m8ysKWNW7U5qW8Xac3gkf/Z
cTaVNVk27+Q36pvcuhb6gSo4CdGBqVnS/9eRnom4vby8c+zdn19Jj9Ddp7wiaNOe
ufmB4aJtPm8YgBiGsGY74Zb9+0ioNyyou31EPw0SHAOzW8hjkMa0xksctyzQz1x0
8S9BAoGBAKBt52EG2N5AdqAL2rFods7+J+wSZ09IOF4YVTMqDxow/QyHOPRB5tbk
p1TBlXb0p54A+C9cEKjT+/y5Bhf5sz1afUVlqkczcC2i5jiKW9A5dWCOQKe5C3nl
z4gkcWMFwz0PY60BCbdk13pKUcJX6M/Tluf7xuYl2t59C0CXN5WH
-----END RSA PRIVATE KEY-----

1
tests/files/test_rsa.pub Normal file
View File

@@ -0,0 +1 @@
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDYa9zstumlg7XkKoNrJMlIN/zteqMA9J4GjuZA7r0xfMPrz4CglxzYKd/BhBpwp/HhU+vSR6vBa15kRODHdPZ+T1oXzMXAmMT3R2ZJRqF280Hsx9sK0X+FZWM84e4a1zQUrxuWyWJ4kKIiaX6DBAmhy8zHNvQ0c4Nk1exfwRicojaze71qrexSas4FHWaI4usC/g3mMKfiML/QX0UWW/G+D8qrg3cK3zClG916XlY/p1h9SWantqz75ea33TtmDNW6iCraKSjVeDGfzhshJsmQ7+/Rr/L4/s7hdpwTqdjSlJTIi61eBxcpDfMWBmsHOMZgnsTZ3wrdYXo70k44moA7 vagrant@test

View File

@@ -11,11 +11,13 @@ function main {
function run-tests {
trap "destroy-infrastructure; exit 1" ERR
echo Building vagrant infrastructure
test "Building infrastructure with vagrant up should not fail." \
"vagrant up > /dev/null"
vagrant up
test "Running command on a vagrant node should not fail." \
vagrant ssh bootstrap -c ls
"vagrant ssh client -c 'ls /vagrant'"
test "Client vagrant machine can ssh into bootstrap." \
"vagrant ssh client -c 'ssh -o StrictHostKeyChecking=no -i /home/vagrant/test_rsa vagrant@192.168.254.2 ls'"
}
function destroy-infrastructure {