diff --git a/Documentation/RELEASE_NOTES.md b/Documentation/RELEASE_NOTES.md index 047d61a391..36eda13937 100644 --- a/Documentation/RELEASE_NOTES.md +++ b/Documentation/RELEASE_NOTES.md @@ -1,5 +1,15 @@ # Metro Automation Engine Release Notes +## Release 3.0.1 + +### Resolved Issues +* Add double jinja2 substitution to build_vars.yml conversion script +* Support unicode characters when converting from build_vars.yml +* Require VSC TIM file only for upgrade, not install +* Add license +* Remove verbosity from documentation examples +* Remove 'install_everything' error message when running `./metroae help` + ## Release 3.0.0 ### New Features and Enhancements diff --git a/LICENSE.md b/LICENSE.md new file mode 100644 index 0000000000..0c6c00e3d2 --- /dev/null +++ b/LICENSE.md @@ -0,0 +1,13 @@ +Copyright 2016 Nuage Networks + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. diff --git a/README.md b/README.md index abafabd73e..8bf323195b 100644 --- a/README.md +++ b/README.md @@ -1,7 +1,7 @@ # Nuage Networks Metro Automation Engine (MetroÆ) (4 minute read) -Version: 3.0.0 +Version: 3.0.1 MetroÆ is an automation engine that deploys and upgrades Nuage Networks components. You specify the individual details of your target platform, then let MetroÆ install, upgrade, destroy, or health-check the environment for you. @@ -134,4 +134,4 @@ Report bugs you find and suggest new features and enhancements via the [GitHub I You may also [contribute](CONTRIBUTING.md) to MetroÆ by submitting your own code to the project. ## License -Apache License 2.0 +[LICENSE.md](LICENSE.md) diff --git a/convert_build_vars_to_deployment.py b/convert_build_vars_to_deployment.py index c26bb5cdc6..bfda70e13d 100755 --- a/convert_build_vars_to_deployment.py +++ b/convert_build_vars_to_deployment.py @@ -28,11 +28,26 @@ def read_build_vars(build_vars_file): substitutions = yaml.safe_load(build_var_contents) - build_vars_template = jinja2.Template(build_var_contents, - autoescape=False, - undefined=jinja2.StrictUndefined) + try: + build_vars_template = jinja2.Template(build_var_contents, + autoescape=False, + undefined=jinja2.StrictUndefined) - resolved_yaml = build_vars_template.render(substitutions) + resolved_yaml = build_vars_template.render(substitutions) + + substitutions = yaml.safe_load(resolved_yaml) + + # Do template resolution a second time to resolve nested substitution + build_vars_template = jinja2.Template(resolved_yaml, + autoescape=False, + undefined=jinja2.StrictUndefined) + + resolved_yaml = build_vars_template.render(substitutions) + except jinja2.exceptions.UndefinedError as e: + print str(e) + print ("The above variable is missing from build_vars, please define " + "it in the build_vars file.") + exit(1) var_dict = yaml.safe_load(resolved_yaml) diff --git a/metroae b/metroae index 03dd668f9e..301caf67e0 100755 --- a/metroae +++ b/metroae @@ -4,7 +4,7 @@ set -e # Wrapper around ansible-playbook for the installation of Nuage components # -METROAE_VERSION="v3.0.0" +METROAE_VERSION="v3.0.1" CURRENT_DIR=`pwd` PLAYBOOK_DIR=$CURRENT_DIR/src/playbooks diff --git a/src/roles/common/tasks/check-predeploy-prereq.yml b/src/roles/common/tasks/check-predeploy-prereq.yml index de81eb405c..2c8dbb673c 100644 --- a/src/roles/common/tasks/check-predeploy-prereq.yml +++ b/src/roles/common/tasks/check-predeploy-prereq.yml @@ -25,12 +25,6 @@ when: component_type | default("NONE") != 'vrs' -- name: Check that TIM file was found - assert: - that: "vsc_tim_path is defined and vsc_tim_file_name is defined" - msg: "Missing VSC TIM image file for {{ hostname }} under the unzipped file directory, please unzip it and issue reset_build" - when: component_type | default("NONE") == 'vsc' - - block: - name: Check that VRS package files were found diff --git a/src/roles/common/tasks/check-upgrade-prereq.yml b/src/roles/common/tasks/check-upgrade-prereq.yml index 3ac737bf03..3ed531530d 100644 --- a/src/roles/common/tasks/check-upgrade-prereq.yml +++ b/src/roles/common/tasks/check-upgrade-prereq.yml @@ -37,3 +37,9 @@ msg: "vstat_upgrade_scripts_file is missing" when: component_type | default("NONE") == 'vstat' + +- name: Check that TIM file was found for VSC + assert: + that: "vsc_tim_path is defined and vsc_tim_file_name is defined" + msg: "Missing VSC TIM image file for {{ hostname }} under the unzipped file directory, please unzip it and issue reset_build" + when: component_type | default("NONE") == 'vsc' diff --git a/src/roles/vnsutil-postdeploy/tasks/main.yml b/src/roles/vnsutil-postdeploy/tasks/main.yml index 57d5b4471b..4fefbfb10c 100644 --- a/src/roles/vnsutil-postdeploy/tasks/main.yml +++ b/src/roles/vnsutil-postdeploy/tasks/main.yml @@ -7,18 +7,18 @@ state: directory - name: Create and transfer certs - include_role: + include_role: name: common tasks_from: vsd-generate-transfer-certificates - vars: + vars: certificate_password: "{{ vnsutil_default_password }}" certificate_username: proxy commonName: proxy certificate_type: server scp_user: "{{ vnsutil_default_username }}" scp_location: /opt/proxy/config/keys - additional_parameters: -d {{ inventory_hostname }} - + additional_parameters: -d {{ data_fqdn | default(inventory_hostname) }} + - name: Install supervisord and haproxy command: "{{ install_cmd }}"