6f294cea1c772f4a924cfe9f1f78058a78c021de
[fuel.git] / mcp / config / states / networks
1 #!/bin/bash
2
3 # Determine public network based on external IPs from compute node
4 # NOTE: mask currently hardcoded to /24
5 PUBLIC_NET=$(salt --out yaml 'cmp*' pillar.get _param:external_address | \
6   awk --re-interval '/[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}/{print $2; exit}')
7
8 [ -n "${PUBLIC_NET}" ] || PUBLIC_NET=$(salt --out yaml 'cmp*' \
9   pillar.get _param:openstack_compute_node01_external_address | \
10   awk --re-interval '/[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}/{print $2; exit}')
11
12 [ -n "${PUBLIC_NET}" ] && PUBLIC_NET="${PUBLIC_NET%.*}.0/24" || PUBLIC_NET="10.16.0.0/24"
13
14 salt 'ctl01*' cmd.run ". /root/keystonercv3; \
15   openstack compute service list; \
16   openstack network agent list; \
17   openstack stack list; \
18   openstack volume service list"
19 salt 'ctl01*' cmd.run ". /root/keystonercv3; \
20   openstack network create --external --default --provider-network-type flat \
21     --provider-physical-network physnet1 floating_net"
22 salt 'ctl01*' cmd.run ". /root/keystonercv3; \
23   openstack subnet create --gateway ${PUBLIC_NET%.*}.1 --no-dhcp \
24     --allocation-pool start=${PUBLIC_NET%.*}.130,end=${PUBLIC_NET%.*}.254 \
25     --network floating_net --subnet-range ${PUBLIC_NET} floating_subnet"