Changes for configuring Nuage
[apex-tripleo-heat-templates.git] / test_merge.bash
1 #!/bin/bash
2 set -ue
3 result=""
4 cleanup() {
5     if [ -n "$result" ] ; then
6         rm -f $result
7     fi
8 }
9 trap cleanup EXIT
10 run_test() {
11     local cmd=$1
12     local expected=$2
13     result=$(mktemp /tmp/test_merge.XXXXXX)
14     fail=0
15     $cmd --output $result
16     if ! cmp $result $expected ; then
17         diff -u $expected $result || :
18         echo FAIL - $cmd result does not match expected
19         fail=1
20     else
21         echo PASS - $cmd
22     fi
23     cleanup
24 }
25 echo
26 merge_py="./tripleo_heat_merge/merge.py"
27 run_test "python $merge_py examples/source.yaml" examples/source_lib_result.yaml
28 run_test "python $merge_py examples/source2.yaml" examples/source2_lib_result.yaml
29 run_test "python $merge_py examples/source_include_subkey.yaml" examples/source_include_subkey_result.yaml
30 run_test "python $merge_py examples/launchconfig1.yaml examples/launchconfig2.yaml" examples/launchconfig_result.yaml
31 run_test "python $merge_py --scale NovaCompute=3 examples/scale1.yaml" examples/scale_result.yaml
32 run_test "python $merge_py --scale NovaCompute=3 examples/scale_map.yaml" examples/scale_map_result.yaml
33 run_test "python $merge_py --hot examples/source_hot.yaml" examples/source_lib_result_hot.yaml
34 run_test "python $merge_py --hot examples/source2_hot.yaml" examples/source2_lib_result_hot.yaml
35 run_test "python $merge_py --hot examples/source_include_subkey_hot.yaml" examples/source_include_subkey_result_hot.yaml
36 run_test "python $merge_py --hot examples/launchconfig1_hot.yaml examples/launchconfig2_hot.yaml" examples/launchconfig_result_hot.yaml
37 run_test "python $merge_py --hot --scale NovaCompute=3 examples/scale1_hot.yaml" examples/scale_result_hot.yaml
38 run_test "python $merge_py --hot --scale NovaCompute=3 examples/scale_map_hot.yaml" examples/scale_map_result_hot.yaml
39 run_test "python $merge_py --hot --scale NovaCompute=5,1,2 examples/scale_map_hot.yaml" examples/scale_map_result_hot_blacklist.yaml
40 run_test "python $merge_py --hot --scale NovaCompute=3, examples/scale_map_hot.yaml" examples/scale_map_result_hot.yaml
41 echo
42 trap - EXIT
43 exit $fail