Actual fixtures for VMware and up generate script
- provide actual yaml fixtures for VMware (iso 452) - add VMware case for generate_yamls.sh - fix clean_env, list_free_nodes, store_yamls functions - add id_of_role, fix_node_names Change-Id: I68c01122ac62c04321972feef443df8da546ea83 Partial-Bug: 1541849 Related-Bug: 1535339
This commit is contained in:
parent
ec1ab31199
commit
590aa167dd
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
|
@ -5,9 +5,54 @@
|
|||
# and unused (not assigned to any env) nodes.
|
||||
#
|
||||
|
||||
mkdir ./yamls
|
||||
mkdir -p ./yamls
|
||||
rm -f ./yamls/*
|
||||
|
||||
function id_of_role {
|
||||
env=$1
|
||||
role=$2
|
||||
yaml=`grep -rl node_roles: deployment_$env/*yaml | head -n1`
|
||||
ruby -ryaml -e '
|
||||
astute = YAML.load(File.read(ARGV[0]))
|
||||
role = ARGV[1]
|
||||
node = astute["network_metadata"]["nodes"].find{|key, hash| hash["node_roles"].include?("#{role}") }
|
||||
puts node.last["uid"]
|
||||
' $yaml $role
|
||||
}
|
||||
|
||||
function fix_node_names {
|
||||
file=$1
|
||||
ruby -ryaml -e '
|
||||
astute = YAML.load(File.read(ARGV[0]))
|
||||
astute["network_metadata"]["nodes"].each do |key, hash|
|
||||
wrong = hash["name"]
|
||||
puts "\"s/#{wrong}/#{key}/g\""
|
||||
end
|
||||
' $file | xargs -I {} sed -e {} -i $file
|
||||
}
|
||||
|
||||
function list_free_nodes {
|
||||
fuel2 node list 2>/dev/null | grep discover | grep None | awk '{print $2}'
|
||||
}
|
||||
|
||||
function save_yamls {
|
||||
envid=`fuel env | grep $1 | awk '{print $1}'`
|
||||
fuel deployment --default --env $envid 2>/dev/null
|
||||
}
|
||||
|
||||
function envid {
|
||||
fuel env 2>/dev/null | grep $1 | awk '{print $1}'
|
||||
}
|
||||
|
||||
function store_yamls {
|
||||
for role in $3 ; do
|
||||
id=`id_of_role $1 $role`
|
||||
src="deployment_$1/${id}.yaml"
|
||||
cp $src ./yamls/$2-$role.yaml
|
||||
fix_node_names ./yamls/$2-$role.yaml
|
||||
done
|
||||
}
|
||||
|
||||
function enable_ceph {
|
||||
fuel env --attributes --env $1 --download
|
||||
ruby -ryaml -e '
|
||||
|
@ -20,7 +65,6 @@ function enable_ceph {
|
|||
attr["editable"]["storage"]["osd_pool_size"]["value"] = "2"
|
||||
File.open(ARGV[0], "w").write(attr.to_yaml)' "cluster_$1/attributes.yaml"
|
||||
fuel env --attributes --env $1 --upload
|
||||
rm -rf "cluster_$1"
|
||||
}
|
||||
|
||||
function enable_murano_sahara_ceilometer {
|
||||
|
@ -61,6 +105,74 @@ function enable_neutron_dvr {
|
|||
fuel env --attributes --env $1 --upload
|
||||
}
|
||||
|
||||
function enable_vcenter {
|
||||
fuel env --attributes --env $1 --download
|
||||
ruby -ryaml -e '
|
||||
attr = YAML.load(File.read(ARGV[0]))
|
||||
attr["editable"]["common"]["use_vcenter"]["value"] = true
|
||||
File.open(ARGV[0], "w").write(attr.to_yaml)' "cluster_$1/attributes.yaml"
|
||||
fuel env --attributes --env $1 --upload
|
||||
}
|
||||
|
||||
function enable_vcenter_glance {
|
||||
fuel env --attributes --env $1 --download
|
||||
ruby -ryaml -e '
|
||||
attr = YAML.load(File.read(ARGV[0]))
|
||||
attr["editable"]["storage"]["images_vcenter"]["value"] = true
|
||||
File.open(ARGV[0], "w").write(attr.to_yaml)' "cluster_$1/attributes.yaml"
|
||||
fuel env --attributes --env $1 --upload
|
||||
}
|
||||
|
||||
function vmware_settings {
|
||||
compute_vmware=$2
|
||||
fuel --env $1 vmware-settings --download
|
||||
ruby -ryaml -e '
|
||||
vmware = YAML.load(File.read(ARGV[0]))
|
||||
vcenter_cred = {
|
||||
"vcenter_host"=>"172.16.0.254", "vcenter_password"=>"Qwer!1234",
|
||||
"vcenter_username"=>"administrator@vsphere.local"
|
||||
}
|
||||
vmware["editable"]["value"]["availability_zones"][0].merge! vcenter_cred
|
||||
File.open(ARGV[0], "w").write(vmware.to_yaml)' "vmware_settings_$1.yaml"
|
||||
if [ "$compute_vmware" = "compute-vmware" ]; then
|
||||
env_id=`envid $1`
|
||||
node_id=$(list_free_nodes | sed -n '1p')
|
||||
fuel --env $env_id node set --node $node_id --role compute-vmware
|
||||
ruby -ryaml -e '
|
||||
$compute_vmware_node = ARGV[1]
|
||||
puts $compute_vmware_node
|
||||
vmware = YAML.load(File.read(ARGV[0]))
|
||||
vmware_computes = {
|
||||
"datastore_regex"=>".*", "service_name"=>"vm_cluster1",
|
||||
"target_node"=>{"current"=>{"id"=>$compute_vmware_node,
|
||||
"label"=>$compute_vmware_node}, "options"=>[{"id"=>"controllers",
|
||||
"label"=>"controllers"}, {"id"=>$compute_vmware_node,
|
||||
"label"=>$compute_vmware_node}]}, "vsphere_cluster"=>"Cluster1"
|
||||
}
|
||||
vmware["editable"]["value"]["availability_zones"][0]["nova_computes"][0].merge! vmware_computes
|
||||
File.open(ARGV[0], "w").write(vmware.to_yaml)' "vmware_settings_$1.yaml" "node-$node_id"
|
||||
else
|
||||
ruby -ryaml -e '
|
||||
vmware = YAML.load(File.read(ARGV[0]))
|
||||
vmware_computes = {
|
||||
"datastore_regex"=>".*", "service_name"=>"vm_cluster1",
|
||||
"target_node"=>{"current"=>{"id"=>"controllers",
|
||||
"label"=>"controllers"}, "options"=>[{"id"=>"controllers",
|
||||
"label"=>"controllers"}]}, "vsphere_cluster"=>"Cluster1"
|
||||
}
|
||||
vmware_glance = {
|
||||
"ca_file"=>{"content"=>"RSA", "name"=>"vcenter-ca.pem"},
|
||||
"datacenter"=>"Datacenter", "datastore"=>"nfs",
|
||||
"vcenter_host"=>"172.16.0.254", "vcenter_password"=>"Qwer!1234",
|
||||
"vcenter_username"=>"administrator@vsphere.local"
|
||||
}
|
||||
vmware["editable"]["value"]["availability_zones"][0]["nova_computes"][0].merge! vmware_computes
|
||||
vmware["editable"]["value"]["glance"].merge! vmware_glance
|
||||
File.open(ARGV[0], "w").write(vmware.to_yaml)' "vmware_settings_$1.yaml"
|
||||
fi
|
||||
fuel --env $1 vmware-settings --upload
|
||||
}
|
||||
|
||||
function enable_vms_conf {
|
||||
virt_node_ids=`fuel nodes --env $1 2>/dev/null | grep virt | awk '{print $1}'`
|
||||
for id in $virt_node_ids ; do
|
||||
|
@ -68,26 +180,6 @@ function enable_vms_conf {
|
|||
done
|
||||
}
|
||||
|
||||
function list_free_nodes {
|
||||
fuel nodes 2>/dev/null | grep discover | grep None | awk '{print $1}'
|
||||
}
|
||||
|
||||
function save_yamls {
|
||||
envid=`fuel env | grep $1 | awk '{print $1}'`
|
||||
fuel deployment --default --env $envid 2>/dev/null
|
||||
}
|
||||
|
||||
function envid {
|
||||
fuel env 2>/dev/null | grep $1 | awk '{print $1}'
|
||||
}
|
||||
|
||||
function store_yamls {
|
||||
for role in $3 ; do
|
||||
src=`ls deployment_$1/${role}_*.yaml | head -n1`
|
||||
cp $src ./yamls/$2-$role.yaml
|
||||
done
|
||||
}
|
||||
|
||||
function generate_yamls {
|
||||
env=`envid $1`
|
||||
name=$2
|
||||
|
@ -108,6 +200,15 @@ function generate_yamls {
|
|||
if [ "${name/dvr}" != "$name" ] ; then
|
||||
enable_neutron_dvr $env
|
||||
fi
|
||||
if [ "${name/vmware.glance}" != "$name" ] ; then
|
||||
enable_vcenter $env
|
||||
enable_vcenter_glance $env
|
||||
vmware_settings $env
|
||||
fi
|
||||
if [ "${name/vmware.cinder-vmware.compute-vmware}" != "$name" ] ; then
|
||||
enable_vcenter $env
|
||||
vmware_settings $env compute-vmware
|
||||
fi
|
||||
|
||||
for id in `list_free_nodes` ; do
|
||||
if ! [ -z "${roles[0]}" ] ; then
|
||||
|
@ -128,10 +229,13 @@ function generate_yamls {
|
|||
|
||||
function clean_env {
|
||||
env=`envid $1`
|
||||
fuel env --delete --env $env
|
||||
rm -rf "cluster_$1"
|
||||
rm -rf "deployment_$env"
|
||||
sleep 80
|
||||
if fuel env --env $env | grep $1 ; then
|
||||
fuel env --delete --env $env
|
||||
rm -rf "cluster_$env"
|
||||
rm -rf "deployment_$env"
|
||||
rm -rf "vmware_settings_$env.yaml"
|
||||
sleep 60
|
||||
fi
|
||||
}
|
||||
|
||||
# Neutron vlan ceph
|
||||
|
@ -149,6 +253,16 @@ fuel env --create --name test_neutron_vlan --rel 2 --net vlan
|
|||
generate_yamls 'test_neutron_vlan' 'neut_vlan.dvr' 'controller controller controller' 'primary-controller'
|
||||
clean_env 'test_neutron_vlan'
|
||||
|
||||
# Neutron vlan VMware vCenter + VMware Glance
|
||||
fuel env --create --name test_neutron_vlan --rel 2 --net vlan
|
||||
generate_yamls 'test_neutron_vlan' 'neut_vlan.vmware.glance' 'controller controller controller' 'primary-controller'
|
||||
clean_env 'test_neutron_vlan'
|
||||
|
||||
# Neutron vlan VMware vCenter + cinder-vmware + compute-vmware
|
||||
fuel env --create --name test_neutron_vlan --rel 2 --net vlan
|
||||
generate_yamls 'test_neutron_vlan' 'neut_vlan.vmware.cinder-vmware.compute-vmware' 'controller controller controller cinder-vmware' 'primary-controller compute-vmware cinder-vmware'
|
||||
clean_env 'test_neutron_vlan'
|
||||
|
||||
# Neutron tun addons + ceph
|
||||
fuel env --create --name test_neutron_tun --rel 2 --net tun
|
||||
generate_yamls 'test_neutron_tun' 'neut_tun.ceph.murano.sahara.ceil' 'controller controller compute ceph-osd ceph-osd mongo mongo' 'primary-controller controller compute ceph-osd primary-mongo mongo'
|
||||
|
|
Loading…
Reference in New Issue