openstudio-analysis 0.3.6 → 0.3.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +5 -0
- data/README.md +2 -4
- data/Rakefile +9 -38
- data/lib/openstudio-analysis.rb +6 -4
- data/lib/openstudio/analysis/server_api.rb +8 -9
- data/lib/openstudio/analysis/translator/excel.rb +114 -14
- data/lib/openstudio/analysis/version.rb +1 -1
- data/lib/openstudio/templates/discrete_uncertain_variable.json.erb +2 -2
- data/lib/openstudio/templates/pivot_variable.json.erb +2 -2
- data/lib/openstudio/templates/uncertain_variable.json.erb +2 -2
- data/lib/openstudio/templates/workflow_item.json.erb +4 -4
- data/spec/files/0_1_09_small_list_incomplete.xlsx +0 -0
- data/spec/files/0_3_5_multiple_measure_paths.xlsx +0 -0
- data/spec/files/0_3_7_unique_measure_names.xlsx +0 -0
- data/spec/files/0_3_7_worker_init_final.xlsx +0 -0
- data/spec/files/analysis/medium_office.json +88 -88
- data/spec/files/analysis/medium_office.zip +0 -0
- data/spec/files/export/analysis/0_1_09_outputvars.json +38 -38
- data/spec/files/export/analysis/0_1_09_outputvars.zip +0 -0
- data/spec/files/export/analysis/0_1_11_discrete_variables.json +40 -40
- data/spec/files/export/analysis/0_1_11_discrete_variables.zip +0 -0
- data/spec/files/export/analysis/0_1_12_discrete_dynamic_columns.json +8 -8
- data/spec/files/export/analysis/0_1_12_discrete_dynamic_columns.zip +0 -0
- data/spec/files/export/analysis/0_2_0_template_simpletest.json +12 -12
- data/spec/files/export/analysis/0_2_0_template_simpletest.zip +0 -0
- data/spec/files/export/analysis/0_3_0_outputs.json +6 -6
- data/spec/files/export/analysis/0_3_0_outputs.zip +0 -0
- data/spec/files/export/analysis/{aaef4bf0-2fc0-0132-c71b-14109fdf0b37.json → 10c791ce-cba7-4506-a863-3fb15703889b.json} +6 -6
- data/spec/files/export/analysis/{aaef4bf0-2fc0-0132-c71b-14109fdf0b37.zip → 10c791ce-cba7-4506-a863-3fb15703889b.zip} +0 -0
- data/spec/files/export/analysis/{abce96f0-2fc0-0132-c72d-14109fdf0b37.json → 55086845-70cf-487f-87f6-7a147cbf1e72.json} +14 -14
- data/spec/files/export/analysis/{abce96f0-2fc0-0132-c72d-14109fdf0b37.zip → 55086845-70cf-487f-87f6-7a147cbf1e72.zip} +0 -0
- data/spec/files/export/analysis/{ab594800-2fc0-0132-c722-14109fdf0b37.json → 6d6a08db-fdf8-4bb5-8ad3-18c471418c72.json} +10 -10
- data/spec/files/export/analysis/{ab594800-2fc0-0132-c722-14109fdf0b37.zip → 6d6a08db-fdf8-4bb5-8ad3-18c471418c72.zip} +0 -0
- data/spec/files/export/analysis/f028bfbe-e30e-488d-adad-a60a62bbf7e0.json +1443 -0
- data/spec/files/export/analysis/f028bfbe-e30e-488d-adad-a60a62bbf7e0.zip +0 -0
- data/spec/files/export/analysis/small_seed.json +38 -38
- data/spec/files/export/analysis/small_seed.zip +0 -0
- data/spec/files/worker_init/first_file.rb +15 -0
- data/spec/files/worker_init/second_file.rb +15 -0
- data/spec/openstudio/excel_spec.rb +55 -3
- data/spec/reports/SPEC-OpenStudio-Analysis-ServerApi-create-a-new-object-instance.xml +2 -6
- data/spec/reports/SPEC-OpenStudio-Analysis-ServerApi-test-not-localhost.xml +2 -6
- data/spec/reports/SPEC-OpenStudio-Analysis-ServerApi.xml +1 -5
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-discrete-variables.xml +3 -5
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-discrete-with-dynamic-columns.xml +3 -5
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-no-variables-defined.xml +6 -10
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-proxy-setup-with-user.xml +2 -6
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-proxy-setup.xml +2 -6
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-setup-output-variables.xml +8 -10
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-setup-version-0-1-9.xml +5 -9
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-small-list-of-incomplete-variables.xml +2 -6
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-small-list-of-variables-should-not-validate.xml +2 -6
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-small-list-of-variables.xml +5 -7
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-small-list-with-with-repeated-variable-names.xml +2 -6
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-version-0-1-10.xml +3 -5
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-version-0-2-0-simple.xml +5 -7
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-version-0-2-0.xml +5 -7
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-version-0-3-0-dynamic-uuid-assignments.xml +4 -6
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-version-0-3-0-measure-existence-checks.xml +3 -5
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-version-0-3-0-objective-functions.xml +5 -7
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-version-0-3-3-and-short-display-names.xml +4 -6
- data/spec/reports/{SPEC-OpenStudio-Analysis-Translator-Excel-version-0-3-3-and-short-display-names.12.xml → SPEC-OpenStudio-Analysis-Translator-Excel-version-0-3-5-and-measure-paths.xml} +4 -6
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-version-0-3-7-and-worker-init-final-scripts.0.xml +5 -0
- data/spec/reports/{SPEC-OpenStudio-Analysis-Translator-Excel-version-0-3-3-and-short-display-names.14.xml → SPEC-OpenStudio-Analysis-Translator-Excel-version-0-3-7-and-worker-init-final-scripts.xml} +4 -6
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel.xml +1 -5
- metadata +32 -494
- data/spec/reports/SPEC-OpenStudio-Analysis-ServerApi-create-a-new-object-instance.0.xml +0 -9
- data/spec/reports/SPEC-OpenStudio-Analysis-ServerApi-create-a-new-object-instance.1.xml +0 -9
- data/spec/reports/SPEC-OpenStudio-Analysis-ServerApi-create-a-new-object-instance.2.xml +0 -9
- data/spec/reports/SPEC-OpenStudio-Analysis-ServerApi-create-a-new-object-instance.3.xml +0 -9
- data/spec/reports/SPEC-OpenStudio-Analysis-ServerApi-create-a-new-object-instance.4.xml +0 -9
- data/spec/reports/SPEC-OpenStudio-Analysis-ServerApi-create-a-new-object-instance.5.xml +0 -9
- data/spec/reports/SPEC-OpenStudio-Analysis-ServerApi-create-a-new-object-instance.6.xml +0 -9
- data/spec/reports/SPEC-OpenStudio-Analysis-ServerApi-create-a-new-object-instance.7.xml +0 -9
- data/spec/reports/SPEC-OpenStudio-Analysis-ServerApi-create-a-new-object-instance.8.xml +0 -9
- data/spec/reports/SPEC-OpenStudio-Analysis-ServerApi-create-a-new-object-instance.9.xml +0 -9
- data/spec/reports/SPEC-OpenStudio-Analysis-ServerApi-test-not-localhost.0.xml +0 -9
- data/spec/reports/SPEC-OpenStudio-Analysis-ServerApi-test-not-localhost.1.xml +0 -9
- data/spec/reports/SPEC-OpenStudio-Analysis-ServerApi-test-not-localhost.2.xml +0 -9
- data/spec/reports/SPEC-OpenStudio-Analysis-ServerApi-test-not-localhost.3.xml +0 -9
- data/spec/reports/SPEC-OpenStudio-Analysis-ServerApi-test-not-localhost.4.xml +0 -9
- data/spec/reports/SPEC-OpenStudio-Analysis-ServerApi-test-not-localhost.5.xml +0 -9
- data/spec/reports/SPEC-OpenStudio-Analysis-ServerApi-test-not-localhost.6.xml +0 -9
- data/spec/reports/SPEC-OpenStudio-Analysis-ServerApi-test-not-localhost.7.xml +0 -9
- data/spec/reports/SPEC-OpenStudio-Analysis-ServerApi-test-not-localhost.8.xml +0 -9
- data/spec/reports/SPEC-OpenStudio-Analysis-ServerApi-test-not-localhost.9.xml +0 -9
- data/spec/reports/SPEC-OpenStudio-Analysis-ServerApi.0.xml +0 -7
- data/spec/reports/SPEC-OpenStudio-Analysis-ServerApi.1.xml +0 -7
- data/spec/reports/SPEC-OpenStudio-Analysis-ServerApi.2.xml +0 -7
- data/spec/reports/SPEC-OpenStudio-Analysis-ServerApi.3.xml +0 -7
- data/spec/reports/SPEC-OpenStudio-Analysis-ServerApi.4.xml +0 -7
- data/spec/reports/SPEC-OpenStudio-Analysis-ServerApi.5.xml +0 -7
- data/spec/reports/SPEC-OpenStudio-Analysis-ServerApi.6.xml +0 -7
- data/spec/reports/SPEC-OpenStudio-Analysis-ServerApi.7.xml +0 -7
- data/spec/reports/SPEC-OpenStudio-Analysis-ServerApi.8.xml +0 -7
- data/spec/reports/SPEC-OpenStudio-Analysis-ServerApi.9.xml +0 -7
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-discrete-variables.0.xml +0 -15
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-discrete-variables.1.xml +0 -15
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-discrete-variables.2.xml +0 -15
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-discrete-variables.3.xml +0 -15
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-discrete-variables.4.xml +0 -15
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-discrete-variables.5.xml +0 -15
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-discrete-variables.6.xml +0 -15
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-discrete-variables.7.xml +0 -15
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-discrete-variables.8.xml +0 -15
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-discrete-variables.9.xml +0 -15
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-discrete-with-dynamic-columns.0.xml +0 -13
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-discrete-with-dynamic-columns.1.xml +0 -13
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-discrete-with-dynamic-columns.2.xml +0 -13
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-discrete-with-dynamic-columns.3.xml +0 -13
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-discrete-with-dynamic-columns.4.xml +0 -13
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-discrete-with-dynamic-columns.5.xml +0 -13
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-discrete-with-dynamic-columns.6.xml +0 -13
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-discrete-with-dynamic-columns.7.xml +0 -13
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-discrete-with-dynamic-columns.8.xml +0 -13
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-discrete-with-dynamic-columns.9.xml +0 -13
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-no-variables-defined.0.xml +0 -18
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-no-variables-defined.1.xml +0 -18
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-no-variables-defined.10.xml +0 -16
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-no-variables-defined.2.xml +0 -18
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-no-variables-defined.3.xml +0 -18
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-no-variables-defined.4.xml +0 -18
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-no-variables-defined.5.xml +0 -18
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-no-variables-defined.6.xml +0 -46
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-no-variables-defined.7.xml +0 -46
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-no-variables-defined.8.xml +0 -37
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-no-variables-defined.9.xml +0 -16
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-proxy-setup-with-user.0.xml +0 -9
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-proxy-setup-with-user.1.xml +0 -9
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-proxy-setup-with-user.2.xml +0 -9
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-proxy-setup-with-user.3.xml +0 -9
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-proxy-setup-with-user.4.xml +0 -9
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-proxy-setup-with-user.5.xml +0 -9
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-proxy-setup-with-user.6.xml +0 -9
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-proxy-setup-with-user.7.xml +0 -9
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-proxy-setup-with-user.8.xml +0 -9
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-proxy-setup-with-user.9.xml +0 -9
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-proxy-setup.0.xml +0 -9
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-proxy-setup.1.xml +0 -9
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-proxy-setup.2.xml +0 -9
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-proxy-setup.3.xml +0 -9
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-proxy-setup.4.xml +0 -9
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-proxy-setup.5.xml +0 -9
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-proxy-setup.6.xml +0 -9
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-proxy-setup.7.xml +0 -9
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-proxy-setup.8.xml +0 -9
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-proxy-setup.9.xml +0 -9
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-setup-output-variables.0.xml +0 -25
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-setup-output-variables.1.xml +0 -25
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-setup-output-variables.2.xml +0 -25
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-setup-output-variables.3.xml +0 -25
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-setup-output-variables.4.xml +0 -25
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-setup-output-variables.5.xml +0 -25
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-setup-output-variables.6.xml +0 -25
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-setup-output-variables.7.xml +0 -25
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-setup-output-variables.8.xml +0 -25
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-setup-output-variables.9.xml +0 -25
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-setup-version-0-1-9.0.xml +0 -15
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-setup-version-0-1-9.1.xml +0 -15
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-setup-version-0-1-9.2.xml +0 -15
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-setup-version-0-1-9.3.xml +0 -15
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-setup-version-0-1-9.4.xml +0 -15
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-setup-version-0-1-9.5.xml +0 -15
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-setup-version-0-1-9.6.xml +0 -15
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-setup-version-0-1-9.7.xml +0 -15
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-setup-version-0-1-9.8.xml +0 -15
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-setup-version-0-1-9.9.xml +0 -15
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-small-list-of-incomplete-variables.0.xml +0 -9
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-small-list-of-incomplete-variables.1.xml +0 -9
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-small-list-of-incomplete-variables.10.xml +0 -9
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-small-list-of-incomplete-variables.2.xml +0 -9
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-small-list-of-incomplete-variables.3.xml +0 -9
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-small-list-of-incomplete-variables.4.xml +0 -9
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-small-list-of-incomplete-variables.5.xml +0 -9
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-small-list-of-incomplete-variables.6.xml +0 -9
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-small-list-of-incomplete-variables.7.xml +0 -9
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-small-list-of-incomplete-variables.8.xml +0 -9
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-small-list-of-incomplete-variables.9.xml +0 -9
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-small-list-of-variables-should-not-validate.0.xml +0 -9
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-small-list-of-variables-should-not-validate.1.xml +0 -9
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-small-list-of-variables-should-not-validate.10.xml +0 -9
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-small-list-of-variables-should-not-validate.2.xml +0 -9
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-small-list-of-variables-should-not-validate.3.xml +0 -9
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-small-list-of-variables-should-not-validate.4.xml +0 -9
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-small-list-of-variables-should-not-validate.5.xml +0 -9
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-small-list-of-variables-should-not-validate.6.xml +0 -9
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-small-list-of-variables-should-not-validate.7.xml +0 -9
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-small-list-of-variables-should-not-validate.8.xml +0 -9
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-small-list-of-variables-should-not-validate.9.xml +0 -9
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-small-list-of-variables.0.xml +0 -19
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-small-list-of-variables.1.xml +0 -19
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-small-list-of-variables.10.xml +0 -19
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-small-list-of-variables.2.xml +0 -19
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-small-list-of-variables.3.xml +0 -7
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-small-list-of-variables.4.xml +0 -19
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-small-list-of-variables.5.xml +0 -19
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-small-list-of-variables.6.xml +0 -19
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-small-list-of-variables.7.xml +0 -19
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-small-list-of-variables.8.xml +0 -19
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-small-list-of-variables.9.xml +0 -19
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-small-list-with-with-repeated-variable-names.0.xml +0 -9
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-small-list-with-with-repeated-variable-names.1.xml +0 -9
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-small-list-with-with-repeated-variable-names.10.xml +0 -9
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-small-list-with-with-repeated-variable-names.2.xml +0 -9
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-small-list-with-with-repeated-variable-names.3.xml +0 -9
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-small-list-with-with-repeated-variable-names.4.xml +0 -9
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-small-list-with-with-repeated-variable-names.5.xml +0 -9
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-small-list-with-with-repeated-variable-names.6.xml +0 -9
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-small-list-with-with-repeated-variable-names.7.xml +0 -9
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-small-list-with-with-repeated-variable-names.8.xml +0 -9
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-small-list-with-with-repeated-variable-names.9.xml +0 -9
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-version-0-1-10.0.xml +0 -13
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-version-0-1-10.1.xml +0 -13
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-version-0-1-10.2.xml +0 -13
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-version-0-1-10.3.xml +0 -13
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-version-0-1-10.4.xml +0 -13
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-version-0-1-10.5.xml +0 -13
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-version-0-1-10.6.xml +0 -13
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-version-0-1-10.7.xml +0 -13
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-version-0-1-10.8.xml +0 -13
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-version-0-1-10.9.xml +0 -13
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-version-0-2-0-simple.0.xml +0 -20
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-version-0-2-0-simple.1.xml +0 -20
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-version-0-2-0-simple.2.xml +0 -20
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-version-0-2-0-simple.3.xml +0 -20
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-version-0-2-0-simple.4.xml +0 -20
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-version-0-2-0-simple.5.xml +0 -20
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-version-0-2-0-simple.6.xml +0 -20
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-version-0-2-0-simple.7.xml +0 -20
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-version-0-2-0-simple.8.xml +0 -20
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-version-0-2-0-simple.9.xml +0 -20
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-version-0-2-0.0.xml +0 -20
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-version-0-2-0.1.xml +0 -20
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-version-0-2-0.2.xml +0 -20
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-version-0-2-0.3.xml +0 -20
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-version-0-2-0.4.xml +0 -20
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-version-0-2-0.5.xml +0 -20
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-version-0-2-0.6.xml +0 -20
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-version-0-2-0.7.xml +0 -20
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-version-0-2-0.8.xml +0 -20
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-version-0-2-0.9.xml +0 -20
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-version-0-3-0-dynamic-uuid-assignments.0.xml +0 -13
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-version-0-3-0-dynamic-uuid-assignments.1.xml +0 -13
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-version-0-3-0-dynamic-uuid-assignments.2.xml +0 -13
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-version-0-3-0-dynamic-uuid-assignments.3.xml +0 -13
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-version-0-3-0-dynamic-uuid-assignments.4.xml +0 -13
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-version-0-3-0-dynamic-uuid-assignments.5.xml +0 -13
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-version-0-3-0-dynamic-uuid-assignments.6.xml +0 -13
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-version-0-3-0-dynamic-uuid-assignments.7.xml +0 -13
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-version-0-3-0-dynamic-uuid-assignments.8.xml +0 -13
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-version-0-3-0-dynamic-uuid-assignments.9.xml +0 -13
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-version-0-3-0-measure-existence-checks.0.xml +0 -12
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-version-0-3-0-measure-existence-checks.1.xml +0 -12
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-version-0-3-0-measure-existence-checks.2.xml +0 -12
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-version-0-3-0-measure-existence-checks.3.xml +0 -12
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-version-0-3-0-measure-existence-checks.4.xml +0 -12
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-version-0-3-0-measure-existence-checks.5.xml +0 -12
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-version-0-3-0-measure-existence-checks.6.xml +0 -12
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-version-0-3-0-measure-existence-checks.7.xml +0 -12
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-version-0-3-0-measure-existence-checks.8.xml +0 -12
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-version-0-3-0-measure-existence-checks.9.xml +0 -12
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-version-0-3-0-objective-functions.0.xml +0 -19
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-version-0-3-0-objective-functions.1.xml +0 -19
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-version-0-3-0-objective-functions.2.xml +0 -19
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-version-0-3-0-objective-functions.3.xml +0 -19
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-version-0-3-0-objective-functions.4.xml +0 -19
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-version-0-3-0-objective-functions.5.xml +0 -19
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-version-0-3-0-objective-functions.6.xml +0 -19
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-version-0-3-0-objective-functions.7.xml +0 -19
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-version-0-3-0-objective-functions.8.xml +0 -19
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-version-0-3-0-objective-functions.9.xml +0 -19
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-version-0-3-3-and-short-display-names.0.xml +0 -14
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-version-0-3-3-and-short-display-names.1.xml +0 -14
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-version-0-3-3-and-short-display-names.10.xml +0 -15
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-version-0-3-3-and-short-display-names.11.xml +0 -14
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-version-0-3-3-and-short-display-names.13.xml +0 -14
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-version-0-3-3-and-short-display-names.15.xml +0 -14
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-version-0-3-3-and-short-display-names.16.xml +0 -15
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-version-0-3-3-and-short-display-names.2.xml +0 -14
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-version-0-3-3-and-short-display-names.3.xml +0 -14
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-version-0-3-3-and-short-display-names.4.xml +0 -16
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-version-0-3-3-and-short-display-names.5.xml +0 -14
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-version-0-3-3-and-short-display-names.6.xml +0 -24
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-version-0-3-3-and-short-display-names.7.xml +0 -14
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-version-0-3-3-and-short-display-names.8.xml +0 -15
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-version-0-3-3-and-short-display-names.9.xml +0 -14
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel.0.xml +0 -7
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel.1.xml +0 -7
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel.10.xml +0 -7
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel.2.xml +0 -7
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel.3.xml +0 -7
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel.4.xml +0 -7
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel.5.xml +0 -7
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel.6.xml +0 -7
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel.7.xml +0 -7
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel.8.xml +0 -7
- data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel.9.xml +0 -7
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 9d66a0d90f0f410e7db18fbdc523c191991d5d20
|
4
|
+
data.tar.gz: da6f448c4902518e932ad8a17dd183be1d6ff8d7
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: d5440d40d0d9bcaf5d0d07e4f8a88471df0d8063b88c2fd2da335b5d48fd3900fe39c72045b398d8929f594ee5fb40fb3038c96bb9896bfef83e0c55f8c489cb
|
7
|
+
data.tar.gz: 22f2c7ab4cc3bae5e0bccda01921f95c22c7ee3b6bd221e0e75950cc79b760e5ccda9aaf1d660c6d5a249f16fbaf159c3c04e76cbc2fd43285d114353ad871b4
|
data/CHANGELOG.md
CHANGED
@@ -1,6 +1,11 @@
|
|
1
1
|
OpenStudio Analysis Gem Change Log
|
2
2
|
==================================
|
3
3
|
|
4
|
+
Version 0.3.7 (Unreleased)
|
5
|
+
-------------
|
6
|
+
* Worker initilization and finalization scripts
|
7
|
+
* Do not allow the file to proccess if the Measure Display Names are not unique
|
8
|
+
|
4
9
|
Version 0.3.6
|
5
10
|
-------------
|
6
11
|
* Allow multiple measure paths. Will search by order for the measure.
|
data/README.md
CHANGED
@@ -4,7 +4,7 @@ OpenStudio Analysis Gem
|
|
4
4
|
|
5
5
|
The OpenStudio Analysis Gem is used to communicate files to the OpenStudio Distributed Analysis.
|
6
6
|
|
7
|
-
The purpose of this gem is to generate the analysis.json file, analysis.zip, and communicate with the server to upload
|
7
|
+
The purpose of this gem is to generate the analysis.json file, analysis.zip, and communicate with the server to upload
|
8
8
|
the simulations.
|
9
9
|
|
10
10
|
The gem does not create the cluster. Currently the only supported Cloud platform is
|
@@ -16,6 +16,4 @@ Instructions
|
|
16
16
|
Testing
|
17
17
|
-------
|
18
18
|
|
19
|
-
This gem used RSpec for testing. To test
|
20
|
-
|
21
|
-
|
19
|
+
This gem used RSpec for testing. To test simply run `rspec` at the command line.
|
data/Rakefile
CHANGED
@@ -1,54 +1,25 @@
|
|
1
1
|
require 'bundler'
|
2
2
|
Bundler.setup
|
3
3
|
|
4
|
-
require 'rake'
|
5
4
|
require 'rspec/core/rake_task'
|
6
5
|
|
7
|
-
|
8
|
-
require '
|
6
|
+
# Always create spec reports
|
7
|
+
require 'ci/reporter/rake/rspec'
|
9
8
|
|
10
|
-
|
11
|
-
|
12
|
-
task :build do
|
13
|
-
system 'gem build openstudio-analysis.gemspec'
|
14
|
-
end
|
15
|
-
|
16
|
-
desc 'build and install gem locally'
|
17
|
-
task install: :build do
|
18
|
-
system "gem install openstudio-analysis-#{OpenStudio::Analysis::VERSION}.gem --no-ri --no-rdoc"
|
19
|
-
end
|
20
|
-
|
21
|
-
desc 'release gem (this builds, pushes to rubygems, and tags in github'
|
22
|
-
task release: :build do
|
23
|
-
# add catch if there are local changes not committed to crash
|
24
|
-
system "git tag -a v#{OpenStudio::Analysis::VERSION} -m 'Tagging #{OpenStudio::Analysis::VERSION}'"
|
25
|
-
system 'git push --tags'
|
26
|
-
system "gem push openstudio-analysis-#{OpenStudio::Analysis::VERSION}.gem"
|
27
|
-
system "rm openstudio-analysis-#{OpenStudio::Analysis::VERSION}.gem"
|
28
|
-
end
|
9
|
+
# Gem tasks
|
10
|
+
require 'bundler/gem_tasks'
|
29
11
|
|
30
12
|
RSpec::Core::RakeTask.new('spec:unit') do |spec|
|
31
|
-
spec.rspec_opts = %w(--format progress
|
13
|
+
spec.rspec_opts = %w(--format progress)
|
32
14
|
spec.pattern = FileList['spec/openstudio/**/*_spec.rb']
|
33
15
|
end
|
34
16
|
|
35
17
|
RSpec::Core::RakeTask.new('spec:integration') do |spec|
|
36
|
-
spec.rspec_opts = %w(--format progress
|
18
|
+
spec.rspec_opts = %w(--format progress)
|
37
19
|
spec.pattern = FileList['spec/integration/**/*_spec.rb']
|
38
20
|
end
|
39
21
|
|
40
|
-
task
|
41
|
-
|
42
|
-
desc 'import files from other repos'
|
43
|
-
task :import_files do
|
44
|
-
# tbd
|
45
|
-
end
|
46
|
-
|
47
|
-
desc 'uninstall all openstudio-analysis gems'
|
48
|
-
task :uninstall do
|
22
|
+
task 'spec:unit' => 'ci:setup:rspec'
|
23
|
+
task 'spec:integration' => 'ci:setup:rspec'
|
49
24
|
|
50
|
-
|
51
|
-
end
|
52
|
-
|
53
|
-
desc 'reinstall the gem (uninstall, build, and reinstall'
|
54
|
-
task reinstall: [:uninstall, :install]
|
25
|
+
task default: 'spec:unit'
|
data/lib/openstudio-analysis.rb
CHANGED
@@ -1,14 +1,16 @@
|
|
1
|
+
# Ruby libraries to include
|
1
2
|
require 'json'
|
3
|
+
require 'securerandom'
|
4
|
+
require 'logger'
|
5
|
+
require 'pathname'
|
6
|
+
|
7
|
+
# gems to always include
|
2
8
|
require 'faraday'
|
3
|
-
require 'uuid'
|
4
9
|
require 'roo'
|
5
10
|
require 'erb'
|
6
11
|
require 'zip'
|
7
12
|
require 'semantic'
|
8
13
|
require 'semantic/core_ext'
|
9
|
-
require 'logger'
|
10
|
-
require 'pp'
|
11
|
-
require 'pathname'
|
12
14
|
|
13
15
|
# core
|
14
16
|
require 'openstudio/analysis/server_api'
|
@@ -269,7 +269,7 @@ module OpenStudio
|
|
269
269
|
file_path_and_name = nil
|
270
270
|
|
271
271
|
response = @conn.get do |r|
|
272
|
-
r.url
|
272
|
+
r.url '/admin/backup_database?full_backup=true'
|
273
273
|
r.options.timeout = 3600 # 60 minutes
|
274
274
|
end
|
275
275
|
|
@@ -379,20 +379,20 @@ module OpenStudio
|
|
379
379
|
analysis_id = nil
|
380
380
|
if formulation_json
|
381
381
|
if options[:reset_uuids]
|
382
|
-
analysis_id =
|
382
|
+
analysis_id = SecureRandom.uuid
|
383
383
|
formulation_json[:analysis][:uuid] = analysis_id
|
384
384
|
|
385
385
|
formulation_json[:analysis][:problem][:workflow].each do |wf|
|
386
|
-
wf[:uuid] =
|
386
|
+
wf[:uuid] = SecureRandom.uuid
|
387
387
|
if wf[:arguments]
|
388
388
|
wf[:arguments].each do |arg|
|
389
|
-
arg[:uuid] =
|
389
|
+
arg[:uuid] = SecureRandom.uuid
|
390
390
|
end
|
391
391
|
end
|
392
392
|
if wf[:variables]
|
393
393
|
wf[:variables].each do |var|
|
394
|
-
var[:uuid] =
|
395
|
-
var[:argument][:uuid] =
|
394
|
+
var[:uuid] = SecureRandom.uuid
|
395
|
+
var[:argument][:uuid] = SecureRandom.uuid if var[:argument]
|
396
396
|
end
|
397
397
|
end
|
398
398
|
end
|
@@ -407,7 +407,7 @@ module OpenStudio
|
|
407
407
|
analysis: options
|
408
408
|
}
|
409
409
|
puts formulation_json
|
410
|
-
analysis_id =
|
410
|
+
analysis_id = SecureRandom.uuid
|
411
411
|
formulation_json[:analysis][:uuid] = analysis_id
|
412
412
|
end
|
413
413
|
fail "No analysis id defined in analyis.json #{options[:formulation_file]}" if analysis_id.nil?
|
@@ -440,7 +440,6 @@ module OpenStudio
|
|
440
440
|
req.options[:timeout] = 1800 # seconds
|
441
441
|
end
|
442
442
|
|
443
|
-
|
444
443
|
if response.status == 201
|
445
444
|
puts 'Successfully uploaded ZIP file'
|
446
445
|
else
|
@@ -463,7 +462,7 @@ module OpenStudio
|
|
463
462
|
|
464
463
|
if options[:reset_uuids]
|
465
464
|
dp_hash[:analysis_uuid] = analysis_id
|
466
|
-
dp_hash[:uuid] =
|
465
|
+
dp_hash[:uuid] = SecureRandom.uuid
|
467
466
|
end
|
468
467
|
|
469
468
|
# merge in the analysis_id as it has to be what is in the database
|
@@ -9,6 +9,8 @@ module OpenStudio
|
|
9
9
|
attr_reader :models
|
10
10
|
attr_reader :weather_files
|
11
11
|
attr_reader :measure_paths
|
12
|
+
attr_reader :worker_inits
|
13
|
+
attr_reader :worker_finals
|
12
14
|
attr_reader :export_path
|
13
15
|
attr_reader :cluster_name
|
14
16
|
attr_reader :variables
|
@@ -46,6 +48,8 @@ module OpenStudio
|
|
46
48
|
@weather_files = []
|
47
49
|
@models = []
|
48
50
|
@other_files = []
|
51
|
+
@worker_inits = []
|
52
|
+
@worker_finals = []
|
49
53
|
@export_path = './export'
|
50
54
|
@measure_paths = []
|
51
55
|
@number_of_samples = 0 # todo: remove this
|
@@ -98,7 +102,6 @@ module OpenStudio
|
|
98
102
|
fail "Measures directory '#{mp}' does not exist" unless Dir.exist?(mp)
|
99
103
|
end
|
100
104
|
|
101
|
-
|
102
105
|
@models.uniq!
|
103
106
|
fail 'No seed models defined in spreadsheet' if @models.empty?
|
104
107
|
|
@@ -114,12 +117,28 @@ module OpenStudio
|
|
114
117
|
end
|
115
118
|
|
116
119
|
# This can be a directory as well
|
117
|
-
@other_files.each do |
|
118
|
-
fail "Other files do not exist for: #{
|
120
|
+
@other_files.each do |f|
|
121
|
+
fail "Other files do not exist for: #{f[:path]}" unless File.exist?(f[:path])
|
122
|
+
end
|
123
|
+
|
124
|
+
@worker_inits.each do |f|
|
125
|
+
fail "Worker initialization file does not exist for: #{f[:path]}" unless File.exist?(f[:path])
|
126
|
+
end
|
127
|
+
|
128
|
+
@worker_finals.each do |f|
|
129
|
+
fail "Worker finalization file does not exist for: #{f[:path]}" unless File.exist?(f[:path])
|
119
130
|
end
|
120
131
|
|
121
132
|
FileUtils.mkdir_p(@export_path)
|
122
133
|
|
134
|
+
# verify that the measure display names are unique
|
135
|
+
# puts @variables.inspect
|
136
|
+
measure_display_names = @variables['data'].map { |m| m['enabled'] ? m['display_name'] : nil }.compact
|
137
|
+
measure_display_names_mult = measure_display_names.select { |m| measure_display_names.count(m) > 1 }.uniq
|
138
|
+
if measure_display_names_mult && !measure_display_names_mult.empty?
|
139
|
+
fail "Measure Display Names are not unique for '#{measure_display_names_mult.join('\', \'')}'"
|
140
|
+
end
|
141
|
+
|
123
142
|
# verify that all continuous variables have all the data needed and create a name maps
|
124
143
|
variable_names = []
|
125
144
|
@variables['data'].each do |measure|
|
@@ -349,9 +368,9 @@ module OpenStudio
|
|
349
368
|
# Package up the seed, weather files, and measures
|
350
369
|
def save_analysis_zip(model)
|
351
370
|
def add_directory_to_zip(zipfile, local_directory, relative_zip_directory)
|
352
|
-
#
|
371
|
+
# puts "Add Directory #{local_directory}"
|
353
372
|
Dir[File.join("#{local_directory}", '**', '**')].each do |file|
|
354
|
-
#
|
373
|
+
# puts "Adding File #{file}"
|
355
374
|
zipfile.add(file.sub(local_directory, relative_zip_directory), file)
|
356
375
|
end
|
357
376
|
zipfile
|
@@ -371,7 +390,7 @@ module OpenStudio
|
|
371
390
|
|
372
391
|
# Convert this into a hash which looks like {name: measure_name}. This will allow us to add more
|
373
392
|
# fields to the measure, such as which directory is the measure.
|
374
|
-
required_measures = required_measures.map { |value| {name: value} }
|
393
|
+
required_measures = required_measures.map { |value| { name: value } }
|
375
394
|
|
376
395
|
# first validate that all the measures exist
|
377
396
|
errors = []
|
@@ -408,10 +427,10 @@ module OpenStudio
|
|
408
427
|
if File.basename(file) == 'resources' || File.basename(file) == 'lib'
|
409
428
|
add_directory_to_zip(zipfile, file, "./measures/#{measure[:name]}/#{File.basename(file)}")
|
410
429
|
else
|
411
|
-
#
|
430
|
+
# puts "Skipping Directory #{File.basename(file)}"
|
412
431
|
end
|
413
432
|
else
|
414
|
-
#
|
433
|
+
# puts "Adding File #{file}"
|
415
434
|
# added_measures << measure_dir unless added_measures.include? measure_dir
|
416
435
|
zipfile.add(file.sub(measure_dir_to_add, "./measures/#{measure[:name]}/"), file)
|
417
436
|
end
|
@@ -427,6 +446,34 @@ module OpenStudio
|
|
427
446
|
zipfile.add(file.sub(others[:path], "./lib/#{others[:lib_zip_name]}/"), file)
|
428
447
|
end
|
429
448
|
end
|
449
|
+
|
450
|
+
# puts "Adding in Worker initialize scripts #{@worker_inits}"
|
451
|
+
@worker_inits.each_with_index do |f, index|
|
452
|
+
# this is ordered
|
453
|
+
f[:ordered_file_name] = "#{index.to_s.rjust(2, '0')}_#{File.basename(f[:path])}"
|
454
|
+
f[:index] = index
|
455
|
+
|
456
|
+
zipfile.add(f[:path].sub(f[:path], "./lib/worker_initialize/#{f[:ordered_file_name]}"), f[:path])
|
457
|
+
arg_file = "#{File.basename(f[:ordered_file_name], '.*')}.args"
|
458
|
+
file = Tempfile.new('arg')
|
459
|
+
file.write(f[:args])
|
460
|
+
zipfile.add("./lib/worker_initialize/#{arg_file}", file)
|
461
|
+
file.close
|
462
|
+
end
|
463
|
+
|
464
|
+
# puts "Adding in Worker finalize scripts #{@worker_finals}"
|
465
|
+
@worker_finals.each_with_index do |f, index|
|
466
|
+
# this is ordered
|
467
|
+
f[:ordered_file_name] = "#{index.to_s.rjust(2, '0')}_#{File.basename(f[:path])}"
|
468
|
+
f[:index] = index
|
469
|
+
|
470
|
+
zipfile.add(f[:path].sub(f[:path], "./lib/worker_finalize/#{f[:ordered_file_name]}"), f[:path])
|
471
|
+
arg_file = "#{File.basename(f[:ordered_file_name], '.*')}.args"
|
472
|
+
file = Tempfile.new('arg')
|
473
|
+
file.write(f[:args])
|
474
|
+
zipfile.add("./lib/worker_finalize/#{arg_file}", file)
|
475
|
+
file.close
|
476
|
+
end
|
430
477
|
end
|
431
478
|
end
|
432
479
|
|
@@ -474,6 +521,8 @@ module OpenStudio
|
|
474
521
|
b_weather_files = false
|
475
522
|
b_models = false
|
476
523
|
b_other_libs = false
|
524
|
+
b_worker_init = false
|
525
|
+
b_worker_final = false
|
477
526
|
|
478
527
|
rows.each do |row|
|
479
528
|
if row[0] == 'Settings'
|
@@ -484,6 +533,8 @@ module OpenStudio
|
|
484
533
|
b_weather_files = false
|
485
534
|
b_models = false
|
486
535
|
b_other_libs = false
|
536
|
+
b_worker_init = false
|
537
|
+
b_worker_final = false
|
487
538
|
next
|
488
539
|
elsif row[0] == 'Running Setup'
|
489
540
|
b_settings = false
|
@@ -493,6 +544,8 @@ module OpenStudio
|
|
493
544
|
b_weather_files = false
|
494
545
|
b_models = false
|
495
546
|
b_other_libs = false
|
547
|
+
b_worker_init = false
|
548
|
+
b_worker_final = false
|
496
549
|
next
|
497
550
|
elsif row[0] == 'Problem Definition'
|
498
551
|
b_settings = false
|
@@ -502,6 +555,8 @@ module OpenStudio
|
|
502
555
|
b_weather_files = false
|
503
556
|
b_models = false
|
504
557
|
b_other_libs = false
|
558
|
+
b_worker_init = false
|
559
|
+
b_worker_final = false
|
505
560
|
next
|
506
561
|
elsif row[0] == 'Algorithm Setup'
|
507
562
|
b_settings = false
|
@@ -511,6 +566,8 @@ module OpenStudio
|
|
511
566
|
b_weather_files = false
|
512
567
|
b_models = false
|
513
568
|
b_other_libs = false
|
569
|
+
b_worker_init = false
|
570
|
+
b_worker_final = false
|
514
571
|
next
|
515
572
|
elsif row[0] == 'Weather Files'
|
516
573
|
b_settings = false
|
@@ -520,6 +577,8 @@ module OpenStudio
|
|
520
577
|
b_weather_files = true
|
521
578
|
b_models = false
|
522
579
|
b_other_libs = false
|
580
|
+
b_worker_init = false
|
581
|
+
b_worker_final = false
|
523
582
|
next
|
524
583
|
elsif row[0] == 'Models'
|
525
584
|
b_settings = false
|
@@ -529,6 +588,8 @@ module OpenStudio
|
|
529
588
|
b_weather_files = false
|
530
589
|
b_models = true
|
531
590
|
b_other_libs = false
|
591
|
+
b_worker_init = false
|
592
|
+
b_worker_final = false
|
532
593
|
next
|
533
594
|
elsif row[0] == 'Other Library Files'
|
534
595
|
b_settings = false
|
@@ -538,6 +599,30 @@ module OpenStudio
|
|
538
599
|
b_weather_files = false
|
539
600
|
b_models = false
|
540
601
|
b_other_libs = true
|
602
|
+
b_worker_init = false
|
603
|
+
b_worker_final = false
|
604
|
+
next
|
605
|
+
elsif row[0] =~ /Worker Initialization Scripts/
|
606
|
+
b_settings = false
|
607
|
+
b_run_setup = false
|
608
|
+
b_problem_setup = false
|
609
|
+
b_algorithm_setup = false
|
610
|
+
b_weather_files = false
|
611
|
+
b_models = false
|
612
|
+
b_other_libs = false
|
613
|
+
b_worker_init = true
|
614
|
+
b_worker_final = false
|
615
|
+
next
|
616
|
+
elsif row[0] =~ /Worker Finalization Scripts/
|
617
|
+
b_settings = false
|
618
|
+
b_run_setup = false
|
619
|
+
b_problem_setup = false
|
620
|
+
b_algorithm_setup = false
|
621
|
+
b_weather_files = false
|
622
|
+
b_models = false
|
623
|
+
b_other_libs = false
|
624
|
+
b_worker_init = false
|
625
|
+
b_worker_final = true
|
541
626
|
next
|
542
627
|
end
|
543
628
|
|
@@ -555,13 +640,12 @@ module OpenStudio
|
|
555
640
|
# type some of the values that we know
|
556
641
|
@settings['proxy_port'] = @settings['proxy_port'].to_i if @settings['proxy_port']
|
557
642
|
|
558
|
-
|
559
643
|
elsif b_run_setup
|
560
644
|
if row[0] == 'Analysis Name'
|
561
645
|
if row[1]
|
562
646
|
@name = row[1]
|
563
647
|
else
|
564
|
-
@name =
|
648
|
+
@name = SecureRandom.uuid
|
565
649
|
end
|
566
650
|
@analysis_name = @name.snake_case
|
567
651
|
end
|
@@ -611,7 +695,7 @@ module OpenStudio
|
|
611
695
|
if row[1]
|
612
696
|
tmp_m_name = row[1]
|
613
697
|
else
|
614
|
-
tmp_m_name =
|
698
|
+
tmp_m_name = SecureRandom.uuid
|
615
699
|
end
|
616
700
|
# Only add models if the row is flagged
|
617
701
|
if row[0] && row[0].downcase == 'model'
|
@@ -629,7 +713,23 @@ module OpenStudio
|
|
629
713
|
end
|
630
714
|
|
631
715
|
@other_files << { lib_zip_name: row[1], path: other_path }
|
716
|
+
elsif b_worker_init
|
717
|
+
worker_init_path = row[1]
|
718
|
+
unless (Pathname.new worker_init_path).absolute?
|
719
|
+
worker_init_path = File.expand_path(File.join(@root_path, worker_init_path))
|
720
|
+
end
|
721
|
+
|
722
|
+
@worker_inits << { name: row[0], path: worker_init_path, args: row[2] }
|
723
|
+
elsif b_worker_final
|
724
|
+
worker_final_path = row[1]
|
725
|
+
unless (Pathname.new worker_final_path).absolute?
|
726
|
+
worker_final_path = File.expand_path(File.join(@root_path, worker_final_path))
|
727
|
+
end
|
728
|
+
|
729
|
+
@worker_finals << { name: row[0], path: worker_final_path, args: row[2] }
|
632
730
|
end
|
731
|
+
|
732
|
+
next
|
633
733
|
end
|
634
734
|
|
635
735
|
# do some last checks
|
@@ -639,7 +739,7 @@ module OpenStudio
|
|
639
739
|
# parse_variables will parse the XLS spreadsheet and save the data into
|
640
740
|
# a higher level JSON file. The JSON file is historic and it should really
|
641
741
|
# be omitted as an intermediate step
|
642
|
-
def
|
742
|
+
def parse_variables
|
643
743
|
# clean remove whitespace and unicode chars
|
644
744
|
# The parse is a unique format (https://github.com/Empact/roo/blob/master/lib/roo/base.rb#L444)
|
645
745
|
# If you add a new column and you want that variable in the hash, then you must add it here.
|
@@ -818,7 +918,7 @@ module OpenStudio
|
|
818
918
|
|
819
919
|
# parse the choices/enums
|
820
920
|
if var['type'] == 'enum' || var['type'] == 'choice' # this is now a choice
|
821
|
-
var['distribution']['enumerations'] = row[:enums].gsub('|', '').split(',').map
|
921
|
+
var['distribution']['enumerations'] = row[:enums].gsub('|', '').split(',').map(&:strip)
|
822
922
|
elsif var['type'] == 'bool'
|
823
923
|
var['distribution']['enumerations'] = []
|
824
924
|
var['distribution']['enumerations'] << 'true' # TODO: should this be a real bool?
|
@@ -848,7 +948,7 @@ module OpenStudio
|
|
848
948
|
# generate name id
|
849
949
|
# TODO: put this into a logger. puts "Parsing measure #{row[1]}"
|
850
950
|
display_name = row[:measure_name_or_var_type]
|
851
|
-
measure_name = display_name.downcase.strip.gsub('-', '_').gsub(' ', '_')
|
951
|
+
measure_name = display_name.downcase.strip.gsub('-', '_').gsub(' ', '_').gsub('__', '_')
|
852
952
|
data['data'][measure_index]['display_name'] = display_name
|
853
953
|
data['data'][measure_index]['name'] = measure_name
|
854
954
|
data['data'][measure_index]['enabled'] = row[:enabled] == 'TRUE' ? true : false
|