Apply os-net-config with a script instead of element
authorDan Prince <dprince@redhat.com>
Wed, 23 Nov 2016 15:39:11 +0000 (10:39 -0500)
committerDan Prince <dprince@redhat.com>
Mon, 28 Nov 2016 19:23:11 +0000 (14:23 -0500)
commit2985cd9a3a04acfe069c063c65ebf487a1413388
treef92ed380008a0bc6a0bbd7536efc2bfa9139213e
parentd1deaae25f8583603c9a8d9394a81c12d5d1742c
Apply os-net-config with a script instead of element

Wire in os-net-config via a normal script heat deployment, which has the
following advantages:

1. Improved error path, currently o-a-c deployments don't report any
errors, thus hang and eventually the deployment times out

2. It's far more hackable from a deployer perspective, e.g it's
much easier to change the os-net-config options or include a
mapping file

3. Reduces our dependencies on o-a-c (it's only os-net-config and hiera
which requires it), although the script does currently still use oac to
get the metadata IP.

4. May enable passing os-net-config yaml via a json parameter in future,
reducing the need for resource_registry mappings (although we'll have to
support that for backwards compatibility)

The script used is based directly on 20-os-net-config (from t-i-e
at cf94c5e, we can probably improve this now that we have an error path,
but for this initial commit it's a straight copy other than the changes to
replace o-a-c for rendering the json config file.

Co-Authored-By: Steven Hardy <shardy@redhat.com>
Change-Id: I0ed08332cfc49a579de2e83960f0d8047690b97a
35 files changed:
net-config-bond.yaml
net-config-bridge.yaml
net-config-linux-bridge.yaml
net-config-static-bridge-with-external-dhcp.yaml
net-config-static-bridge.yaml
net-config-static.yaml
network/config/bond-with-vlans/ceph-storage.yaml
network/config/bond-with-vlans/cinder-storage.yaml
network/config/bond-with-vlans/compute-dpdk.yaml
network/config/bond-with-vlans/compute.yaml
network/config/bond-with-vlans/controller-no-external.yaml
network/config/bond-with-vlans/controller-v6.yaml
network/config/bond-with-vlans/controller.yaml
network/config/bond-with-vlans/swift-storage.yaml
network/config/multiple-nics/ceph-storage.yaml
network/config/multiple-nics/cinder-storage.yaml
network/config/multiple-nics/compute.yaml
network/config/multiple-nics/controller-v6.yaml
network/config/multiple-nics/controller.yaml
network/config/multiple-nics/swift-storage.yaml
network/config/single-nic-linux-bridge-vlans/ceph-storage.yaml
network/config/single-nic-linux-bridge-vlans/cinder-storage.yaml
network/config/single-nic-linux-bridge-vlans/compute.yaml
network/config/single-nic-linux-bridge-vlans/controller-v6.yaml
network/config/single-nic-linux-bridge-vlans/controller.yaml
network/config/single-nic-linux-bridge-vlans/swift-storage.yaml
network/config/single-nic-vlans/ceph-storage.yaml
network/config/single-nic-vlans/cinder-storage.yaml
network/config/single-nic-vlans/compute.yaml
network/config/single-nic-vlans/controller-no-external.yaml
network/config/single-nic-vlans/controller-v6.yaml
network/config/single-nic-vlans/controller.yaml
network/config/single-nic-vlans/swift-storage.yaml
network/scripts/run-os-net-config.sh [new file with mode: 0755]
tools/yaml-nic-config-2-script.py [new file with mode: 0755]