Skip to content

Commit d47395c

Browse files
author
Matthew Fisher
committed
make SSH key and host nodes dir available
The Vagrant provider requires an SSH key and the ability to read from a folder to get all nodes available in the cluster. Without it, it will fail to provision new nodes.
1 parent f7f490d commit d47395c

4 files changed

Lines changed: 58 additions & 4 deletions

File tree

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
Vagrant.configure("2") do |config|
2+
config.vm.box = "deis-server"
3+
4+
# The url from where the 'config.vm.box' box will be fetched if it
5+
# doesn't already exist on the user's system.
6+
config.vm.box_url = "https://s3-us-west-2.amazonaws.com/opdemand/ubuntu-12.04.3-amd64-vbox.box"
7+
8+
# Avahi-daemon will broadcast the node's address as $id.local
9+
config.vm.host_name = "$id"
10+
11+
# IP will be associated to '$id.local' using avahi-daemon
12+
config.vm.network :private_network, ip: "$ipaddress"
13+
14+
config.vm.provider :virtualbox do |vb|
15+
vb.customize ["modifyvm", :id, "--memory", "$memory"]
16+
end
17+
18+
# Enable [hostname].local autodiscovery between VMs
19+
config.vm.provision :shell, inline: <<-SCRIPT
20+
# Avahi-daemon broadcasts the machine's hostname to local DNS.
21+
# So $id.local in this case
22+
sudo apt-get install -yq avahi-daemon
23+
sudo service avahi-daemon restart
24+
echo "*.* @@192.168.61.100:514" > /etc/rsyslog.d/51-remote.conf
25+
SCRIPT
26+
end
Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
-----BEGIN RSA PRIVATE KEY-----
2+
MIIEogIBAAKCAQEA7Q2FVbhqSv0U1wH558Uv69sJhtFQCyjozTVCvTL8b6kh6jJL
3+
38lY2zjKIoB0XfDtv7HSwwMH1tBS0XLJt15qlA4MKTpxIcc1xoysF9n+QtqVFRGU
4+
ff1g6ed1bfZAADfEeZXGM4Y7aJUDyFjEqj5ubKjHONLVxSahUR2aSczKL5P0ahNc
5+
XwE51QR8xTqGum4GQDhoO/yGIngJW+oktCiGgbO0qaNjRP0MuXuGtIq1dzJGIInq
6+
GZrVHtasf9mNKBtNmE8vyKTlvVxcqiiGifR0/PfHN5fVmBFfDCw7pqp0djF7SZ/v
7+
jXY1gArgXqGMFxKxKU6h3mq++9JE5NOtmPNFowIDAQABAoIBAB2sr6BHcabpf45a
8+
xPnqiVExHkQuN6LuABaQMEaW91rTBVfX6/+bqO/ocAVZpzeLTXfNvuCCpJyTf4qQ
9+
oAfAXf8iswsGMdtUoLq2KWTi+R1NV5RHmxsaeONPAjg9t01Prdy6jxEsIIu6+7o8
10+
woG9Rv17M1U9r1z6tP7+ga3zYOwLj8PtjAGkSCCaT4jzlVhbmj7nAszOG4nWT8UD
11+
sP0OOLnASnhC/chsuVrZBZJyp5GSMVByc+EwhgwntPUC6pUM/C9unIZicuZy66oa
12+
9IFgCdqj5gov91TDuQtVgLsCcHOuJtJH62ySHDEM/diNZw+MiqVVNTr6bKmwa6zK
13+
lLT6soECgYEA9zR5DOFWW/0RjS3NjTJ88VIcMZPcGMdaLdAI5We+x0rzH/bC8+Ud
14+
RzrBnu3hndxcmTy2bGJiSA3U1+pbwkI6xG8KPfkR75Exc2265oTXL9/gIvb2Rqsk
15+
zfzdKnx89PaJx6hS3pZl/2X+UgSfB173Lf3aC07KHOyz8ujFH5vCuNMCgYEA9XyV
16+
Me89+Ibd1mbGRavcB/7r2yvnv9yefnQuclNNe5BW2pRAOxgmnLFz3q5QaLqbq481
17+
FoDJvLm0iKw2SPbdoF07FdoXOktwnjBdMUv+VuEAJ56uPgVq8zINqS0TDbldO4rf
18+
jGTaxAuIiK/IXZ8oDOjOwD6B0HzMhb7zbC1jPfECgYA8HT2GnVGD4yGehFHlES8C
19+
/CWxBLTULb5HP7y6FKV3D0naLwavirq49JfbDxv7aHf4J6Rw7Ofbf8mPjAUuUy65
20+
UAtckLIE4Pj2ieuWXR17HeUCe63d94ZmtSQPTeCRLVbJ/6vPRyGcnu/egBMwFq7j
21+
N0UL1OgfaoxD+Mje6+DJUwKBgEjLmspl8XCDPcFYVK9QWT0dwP8LM/vXBkDlXuiT
22+
/0QG91p1394mOTz5+iwscLe9rm/fVZTIuAn436ovtyFH40ysmNrQA1dMC6c9HEWE
23+
DXXh3tPg4DaQELjxPM/QB/hn4VfIxKWzOpQr/17ZEYeBrLS3TKgBYSlb+KIoj7Ki
24+
eu1hAoGARRno3TTabDYCYqOdTujjPoDPK0qSHoJSO4+s3oms44zRg7VgHH6f5Vfy
25+
a1rUhy2yzoK/CLx7mJZQhJZ/8wplJgf0wiShIJC2czKRa3duqGxOzwGFhuB0efl6
26+
53mWkd6uZFYEZKTII5YJd8S1OfKteh/9pE0hGHgjTtZVOHC/qgg=
27+
-----END RSA PRIVATE KEY-----
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDtDYVVuGpK/RTXAfnnxS/r2wmG0VALKOjNNUK9MvxvqSHqMkvfyVjbOMoigHRd8O2/sdLDAwfW0FLRcsm3XmqUDgwpOnEhxzXGjKwX2f5C2pUVEZR9/WDp53Vt9kAAN8R5lcYzhjtolQPIWMSqPm5sqMc40tXFJqFRHZpJzMovk/RqE1xfATnVBHzFOoa6bgZAOGg7/IYieAlb6iS0KIaBs7Spo2NE/Qy5e4a0irV3MkYgieoZmtUe1qx/2Y0oG02YTy/IpOW9XFyqKIaJ9HT898c3l9WYEV8MLDumqnR2MXtJn++NdjWACuBeoYwXErEpTqHear770kTk062Y80Wj vagrant@deis-controller

provider/vagrant.py

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -17,12 +17,12 @@
1717

1818
logger = logging.getLogger(__name__)
1919

20-
CONTRIB_PATH = '/app/deis/contrib/vagrant'
20+
VAGRANT_UTIL_PATH = '/app/provider/vagrant-util'
2121

2222
# Collect details for connecting to the host machine
2323
try:
24-
HOST_NODES_DIR = open('{}/.host_nodes_dir'.format(CONTRIB_PATH)).read().strip()
25-
PKEY = open('{}/util/ssh_keys/id_rsa_vagrant-deis-controller'.format(CONTRIB_PATH)).read()
24+
HOST_NODES_DIR = open('{}/.host_nodes_dir'.format(VAGRANT_UTIL_PATH)).read().strip()
25+
PKEY = open('{}/ssh_keys/id_rsa_vagrant-deis-controller'.format(VAGRANT_UTIL_PATH)).read()
2626
except IOError as err:
2727
logger.warn(err)
2828

@@ -79,7 +79,7 @@ def build_node(node):
7979

8080
# Create a new Vagrantfile from a template
8181
node['params'].setdefault('memory', '512')
82-
template = open('/app/deis/contrib/vagrant/util/nodes_vagrantfile_template.rb')
82+
template = open('{}/nodes_vagrantfile_template.rb'.format(VAGRANT_UTIL_PATH))
8383
raw = string.Template(template.read())
8484
ip_addr = '192.168.61.' + str(Node.objects.all().count() + 100)
8585
result = raw.substitute({

0 commit comments

Comments
 (0)