diff --git a/.gencode_hash.txt b/.gencode_hash.txt index 3d4553d880..28f2c21aff 100644 --- a/.gencode_hash.txt +++ b/.gencode_hash.txt @@ -3,7 +3,7 @@ fb876b8f7bfdccf156d751efddf2660a7a7ab5585e89be0f82c59f7a61e68d4c gencode/docs/config.html 22bfb3fd7c0e73dac4cbd830aa7983714917ec6da813f6bf5768ce3aa9786fb2 gencode/docs/config_mapping.html f9a67145928e192687c7984c82c2d39450bf6d0d4fd2f95f397e60e8ac619da2 gencode/docs/configuration_endpoint.html -b3090f5d6d61594eb61ce1e8c2a49001f19007ac2cedde54b7080ed24f8f47d2 gencode/docs/configuration_execution.html +8ac76a1b8c0c62f19be8cafa36b1f58bc03f3f129e10def91566d0b9172b0c82 gencode/docs/configuration_execution.html ed7a8b71e2a0b002151a1a5fa0c038f1af811f7567250c724ac3c4b245ccc6b4 gencode/docs/configuration_pod.html 1bcbfda7922a7c2d3aa17944b4637124d90940c0bc8db3d36995914873daa341 gencode/docs/configuration_pubber.html f24d15e549f1b143b50d6011f2f7fd03286e1cd128a3e25591195b25f8efc472 gencode/docs/data_template.html @@ -26,7 +26,7 @@ eeafb6e89a6c43816cfcb26244a95615a4ee75966e1c015cae5a13b6cfcb0078 gencode/docs/r 0f16008af7116a182322736046b05c2718ac8b1f2cd755a60d28c9cfaeb6a8a9 gencode/docs/site_metadata.html 12a32a1555e58e6ba35566e6613eea5f9b70f80a02d58146ad250acb830cf378 gencode/docs/state.html b2398e7f9e352c47867e38f97168f3eb88e23280c7dd576f13e038c8c3f714c9 gencode/docs/state_mapping.html -968f0198855b0b90a7fe812529ec6b8b8f651f792a07bb439a1ad5940f8e4076 gencode/docs/state_validation.html +b8ff4cdb4b79449166b1c6e09ac0e58273ae62865b47bf943fdd365739c62a4c gencode/docs/state_validation.html a9ac875562f5f5431e6f090cd63950e452c2fff43a221561929a0747e775964d gencode/java/udmi/schema/Adjunct.java 0e0d87fa6bc2f746eaacfbcd0f1258c9c6beee2b03d995868af9aafcbc4a88dc gencode/java/udmi/schema/Area.java 768d8b010bc90c5fbe198daf58f3847247ecc620a6fc046fffba877399cf1888 gencode/java/udmi/schema/Asset.java @@ -66,7 +66,7 @@ a83286d885ec79ccae1eea966e3b7caf99558c2f26165f207707ad4c5178acb4 gencode/java/u d2e7afd6e1a9250480144c114ee8877afb9b0dd7048495fe96a821d9e6c80475 gencode/java/udmi/schema/Entry.java e0ca9b52b4cfb4be9d6c911a549a9f2f69f5f948f05a9e3a7b224c988f932ae3 gencode/java/udmi/schema/Envelope.java 4163478ed17191461b0a65abd11c4ddf912cbc104f040a734efd290306fab7b7 gencode/java/udmi/schema/Events.java -5f48b9b3e602a1fab2e8b2956ff932ad65a04681ac7392e8f1b7c5afb4279609 gencode/java/udmi/schema/ExecutionConfiguration.java +1960750d0b8f2e18ea02230a51b6380cf555e21de46d6d38d649e626660ba0e2 gencode/java/udmi/schema/ExecutionConfiguration.java 40686ad8c86447e5f760b6503c26afb6c404950c4458272d9d3fb874ab8ee624 gencode/java/udmi/schema/FamilyDiscovery.java a4ba10a0c78ece12640e742d3d0e61ede88eddef9b13f9d1665012579082fbb6 gencode/java/udmi/schema/FamilyDiscoveryConfig.java dc1affcb39be03fc5b974aa5216d7d3b692d5bcea292724c33d3323dfe03b771 gencode/java/udmi/schema/FamilyDiscoveryModel.java @@ -119,8 +119,8 @@ d87deaba67bb3272c528e3491d378bde059b626964a4a2aed15f5643305c2463 gencode/java/u 14faa115d13ee46d10935b13753bff85758f3b64b5136a59f60d36b5b541687c gencode/java/udmi/schema/SchemaValidationState.java fadf083200e73d46cfdec2f710d40e3d2bc4dbf05196e4d0900186e72b62d95e gencode/java/udmi/schema/Scoring.java ad70168de2e1801e26f2c1a8c33a6169e236682de59fd3f6038a77ac264aca14 gencode/java/udmi/schema/SequenceValidationState.java -f1da39b7c8b9784e4ad51ef08dc73381cd8e0f4f7dcc903edcf0898c51d86d25 gencode/java/udmi/schema/SetupUdmiConfig.java -158ca584a225a422af3143b6db05b56e91bcf26a3a4a2d1d4efee53f935b9415 gencode/java/udmi/schema/SetupUdmiState.java +72e3a07ce890c73fccd3d0cf757d073746b60b722c94edd5425dc066951a048f gencode/java/udmi/schema/SetupUdmiConfig.java +600e2694a6eac8c63e37460f2522ef3b4d7745e5a67499bf7ad75746eb5a49a6 gencode/java/udmi/schema/SetupUdmiState.java 8fcb31df1070010da6d3ae61d741a77d2ce8b3757226bbe35ff9218a0581b1ec gencode/java/udmi/schema/SiteLinks.java a3dc7f14d4270ea370db2015785ad12d4bd61825213ab7ac4ee03dda21dde4f2 gencode/java/udmi/schema/SiteLocation.java d1effacea13d7a859f256c26fae214d959dca879b14ffba0d4af51dfa552152a gencode/java/udmi/schema/SiteMetadata.java @@ -166,9 +166,9 @@ ac3facbd96f7cb2f7e387e7497d6a36af379a2687329571f250c5670f9933244 gencode/python 5444c5eb6971addf729566e39e7eb13dd8b78dceeeab3ef8a6ec3d2a7f5ed25c gencode/python/udmi/schema/config_pointset_point.py 7da3bdb37f338260d5f3829fa5fcbb9bbf9f146b514a68319c314a96c6b8ac12 gencode/python/udmi/schema/config_system.py b15c649657d0fb2a102a3e1ff9653c9002715d3b412d44c544a080c37b6a9811 gencode/python/udmi/schema/config_system_testing.py -b35b27fc4908bf02bef530d58cc5f6991427f50a73b60174b6ffaecedbdb3ed9 gencode/python/udmi/schema/config_udmi.py +cb272fce7544ad1aadfdd221aa18190019f8a139059216593e7bf91aadd9e0db gencode/python/udmi/schema/config_udmi.py 51ced416a2ab41ec86d77550eb197ffb36291e259c25441d9f28b7714b9a61bd gencode/python/udmi/schema/configuration_endpoint.py -802e6433c9471cd1c0a67d44d31ab5991131965127569dff96328457a2f9eb3b gencode/python/udmi/schema/configuration_execution.py +ba429fac49fd57af7362418a29a8bde24f0dcb41ebcd9d2fada911218ba78ec4 gencode/python/udmi/schema/configuration_execution.py 8f65402ddb43815f4482b1c0c965d44c390dbe1561899b3d9df572458ceb97cc gencode/python/udmi/schema/configuration_pod.py c61ee66daa7e632850bc2705370baa8c057e7a34792c6a29b9e4ca00c0eb195b gencode/python/udmi/schema/configuration_pod_base.py ef61eea743cc2629893b18411636672cdfec0e209e58eb7918b33b43edab5196 gencode/python/udmi/schema/configuration_pod_bridge.py @@ -229,7 +229,7 @@ ee5cc804c59d8216cc3555741748c2d67e30ad5ac2a801ad18b44569835e4f75 gencode/python 1b313e7c02ed0af08db89453ec6acee7571f9a2af0e289ac6f3f9be3df6928f5 gencode/python/udmi/schema/state_system.py 8a0bf4294fb70533a056322a6bfc6f13a963381d2100d1468d8b6de757cd72e9 gencode/python/udmi/schema/state_system_hardware.py 37c55dce0e38dddad3cebb3d40270128a4dbb7b586657d1746bb96dac90e2ac1 gencode/python/udmi/schema/state_system_operation.py -63bd0332a5ee71a2070acb0087c7f4891e9d2fd8816668c2196478482a8a1d81 gencode/python/udmi/schema/state_udmi.py +538a92303b86873fcf31349ebcae27eecf4c674de4ad670327256447e6730795 gencode/python/udmi/schema/state_udmi.py ad977860afed7a2e7e895e3270350cdf847ffcd24d65d102ecefbdf100908987 gencode/python/udmi/schema/state_validation.py 69fd8989cff79d3dd1e0396993965112f4bc5d8fb1360e8477b433d202519f75 gencode/python/udmi/schema/state_validation_capability.py 5d24e4bf0fa0213d380e8058f562f6b9382041ade57cd7d6d9d38d84a68aa1fd gencode/python/udmi/schema/state_validation_feature.py diff --git a/.github/workflows/integration.yaml b/.github/workflows/integration.yaml index 51ead73060..31c501a0b3 100644 --- a/.github/workflows/integration.yaml +++ b/.github/workflows/integration.yaml @@ -133,7 +133,7 @@ jobs: SPECIFIC_TEST=${REF_NAME#test-} more site_model/out/devices/$DEVICE_ID/tests/$SPECIFIC_TEST/* else - [[ $(cat site_model/out/devices/$DEVICE_ID/results.md | egrep 'stable \| (pass|skip)' | wc -l) == 3 ]] + [[ $(cat site_model/out/devices/$DEVICE_ID/results.md | egrep 'stable \| [0-9]+ \| (pass|skip)' | wc -l) == 3 ]] fi - name: UDMIS logs if: ${{ !cancelled() }} diff --git a/.github/workflows/testing.yml b/.github/workflows/testing.yml index 5f9e1e95c0..ca679f1643 100644 --- a/.github/workflows/testing.yml +++ b/.github/workflows/testing.yml @@ -372,8 +372,8 @@ jobs: - name: Setup prerequisites run: | bin/setup_base - git clone https://github.com/faucetsdn/udmi_site_model.git - ln -s udmi_site_model/ site_model + bin/clone_model + ln -s sites/udmi_site_model/ site_model (cd site_model; git log -n 1) docker network create udminet --subnet 192.168.99.0/24 - name: Build UDMIS @@ -384,7 +384,7 @@ jobs: - name: Start UDMIS container run: | docker run -d --net udminet --name udmis -p 8883:8883 \ - -v $(realpath udmi_site_model):/root/site_model \ + -v $PWD/site_model:/root/site_model \ -v $PWD/var/tmp:/tmp \ -v $PWD/var/etcd:/root/udmi/var/etcd \ -v $PWD/var/mosquitto:/etc/mosquitto \ @@ -397,4 +397,4 @@ jobs: done ls -l var/tmp/pod_ready.txt 2>&1 - name: Run Tests - run: misc/discoverynode/testing/e2e/test_local $(realpath udmi_site_model) \ No newline at end of file + run: misc/discoverynode/testing/e2e/test_local site_model/ diff --git a/bin/sequencer_report b/bin/sequencer_report index ad5b6c2798..a9b4a79fb6 100755 --- a/bin/sequencer_report +++ b/bin/sequencer_report @@ -279,7 +279,7 @@ class TemplateHelper: @dataclass class FeatureStage: """Container for scored points and total points for a feature and stage. - + Arguments: scored: Number of points scored for a given feature at a given stage. total: Total points which could possibly have attained. @@ -433,8 +433,10 @@ class SequencerReport: score=result["scoring"]["value"], total=result["scoring"]["total"], ) - - features[feature][result["stage"]].add(test_score=result["scoring"]["value"], test_total=result["scoring"]["total"]) + + features[feature][result["stage"]].add( + test_score=result["scoring"]["value"], + test_total=result["scoring"]["total"]) features[feature][result["stage"]].tests.append(result) self.results = { diff --git a/bin/test_sequcheck b/bin/test_sequcheck index 8bfc3084ec..068f2a2f4f 100755 --- a/bin/test_sequcheck +++ b/bin/test_sequcheck @@ -44,9 +44,10 @@ diff -u out/generated${suffix}.out $UDMI_ROOT/docs/specs/sequences/generated.md echo '####################' Finished gencode_seq tests: $failures echo '####################' Starting expected tests -SAMPLE_TEST_ROW="| writeback | writeback_failure | alpha | pass | Sequence complete |" targets=sites/udmi_site_model*/out*/devices/AHU-1/results.md -echo "Searching results.md files for: $SAMPLE_TEST_ROW" +cat $targets > out/all_results.md +SAMPLE_TEST_ROW="| writeback | writeback_failure | alpha | 10 | pass | Sequence complete |" +echo "Searching out/all_results.md for: $SAMPLE_TEST_ROW" fgrep "$SAMPLE_TEST_ROW" $targets || failures+="expected " echo '####################' Finished expected tests: $failures diff --git a/gencode/docs/configuration_execution.html b/gencode/docs/configuration_execution.html index 8f7102db2f..88d54bf160 100644 --- a/gencode/docs/configuration_execution.html +++ b/gencode/docs/configuration_execution.html @@ -3301,8 +3301,111 @@

/> udmi_versionType: string
+

Semantic tagged version of udmis install

+
+ + + + + + + + + + +
+
+
+

+ +

+
+ +
+
+ + Type: string
+

Commit hash of this udmis install

+
+ + + + +
+
+
+
+
+
+
+

+ +

+
+ +
+
+ + Type: string
+

Complete reference of udmis install

+
+ + + + + + +
+
+
+
+
+
+
+

+ +

+
+ +
+
+ + Type: string
+

Timestamp version id of udmis install

+
+ diff --git a/gencode/docs/state_validation.html b/gencode/docs/state_validation.html index 082ead7c50..6c2958a2da 100644 --- a/gencode/docs/state_validation.html +++ b/gencode/docs/state_validation.html @@ -290,6 +290,47 @@

+

+
+
+
+
+
+
+

+ +

+
+ +
+
+ + Type: string
+

Commit hash of this udmis install

+
+ + + + + +
@@ -323,7 +364,7 @@

/> udmi_ref

Type: string
-

Exact reference hash of udmis install

+

Complete reference of udmis install

diff --git a/gencode/java/udmi/schema/ExecutionConfiguration.java b/gencode/java/udmi/schema/ExecutionConfiguration.java index e9ce9c17e5..c222d566a6 100644 --- a/gencode/java/udmi/schema/ExecutionConfiguration.java +++ b/gencode/java/udmi/schema/ExecutionConfiguration.java @@ -41,6 +41,9 @@ "log_level", "min_stage", "udmi_version", + "udmi_commit", + "udmi_ref", + "udmi_timever", "enforce_version", "udmi_root", "update_to", @@ -117,8 +120,34 @@ public class ExecutionConfiguration { public String log_level; @JsonProperty("min_stage") public String min_stage; + /** + * Semantic tagged version of udmis install + * + */ @JsonProperty("udmi_version") + @JsonPropertyDescription("Semantic tagged version of udmis install") public String udmi_version; + /** + * Commit hash of this udmis install + * + */ + @JsonProperty("udmi_commit") + @JsonPropertyDescription("Commit hash of this udmis install") + public String udmi_commit; + /** + * Complete reference of udmis install + * + */ + @JsonProperty("udmi_ref") + @JsonPropertyDescription("Complete reference of udmis install") + public String udmi_ref; + /** + * Timestamp version id of udmis install + * + */ + @JsonProperty("udmi_timever") + @JsonPropertyDescription("Timestamp version id of udmis install") + public String udmi_timever; @JsonProperty("enforce_version") public Boolean enforce_version; @JsonProperty("udmi_root") @@ -168,11 +197,14 @@ public int hashCode() { result = ((result* 31)+((this.udmi_version == null)? 0 :this.udmi_version.hashCode())); result = ((result* 31)+((this.udmi_namespace == null)? 0 :this.udmi_namespace.hashCode())); result = ((result* 31)+((this.log_level == null)? 0 :this.log_level.hashCode())); + result = ((result* 31)+((this.udmi_commit == null)? 0 :this.udmi_commit.hashCode())); result = ((result* 31)+((this.site_name == null)? 0 :this.site_name.hashCode())); result = ((result* 31)+((this.src_file == null)? 0 :this.src_file.hashCode())); result = ((result* 31)+((this.bridge_host == null)? 0 :this.bridge_host.hashCode())); + result = ((result* 31)+((this.udmi_ref == null)? 0 :this.udmi_ref.hashCode())); result = ((result* 31)+((this.shard_index == null)? 0 :this.shard_index.hashCode())); result = ((result* 31)+((this.serial_no == null)? 0 :this.serial_no.hashCode())); + result = ((result* 31)+((this.udmi_timever == null)? 0 :this.udmi_timever.hashCode())); return result; } @@ -185,7 +217,7 @@ public boolean equals(Object other) { return false; } ExecutionConfiguration rhs = ((ExecutionConfiguration) other); - return ((((((((((((((((((((((((((((((((this.alt_registry == rhs.alt_registry)||((this.alt_registry!= null)&&this.alt_registry.equals(rhs.alt_registry)))&&((this.min_stage == rhs.min_stage)||((this.min_stage!= null)&&this.min_stage.equals(rhs.min_stage))))&&((this.block_unknown == rhs.block_unknown)||((this.block_unknown!= null)&&this.block_unknown.equals(rhs.block_unknown))))&&((this.cloud_region == rhs.cloud_region)||((this.cloud_region!= null)&&this.cloud_region.equals(rhs.cloud_region))))&&((this.key_file == rhs.key_file)||((this.key_file!= null)&&this.key_file.equals(rhs.key_file))))&&((this.user_name == rhs.user_name)||((this.user_name!= null)&&this.user_name.equals(rhs.user_name))))&&((this.alt_project == rhs.alt_project)||((this.alt_project!= null)&&this.alt_project.equals(rhs.alt_project))))&&((this.reflector_endpoint == rhs.reflector_endpoint)||((this.reflector_endpoint!= null)&&this.reflector_endpoint.equals(rhs.reflector_endpoint))))&&((this.site_model == rhs.site_model)||((this.site_model!= null)&&this.site_model.equals(rhs.site_model))))&&((this.sequences == rhs.sequences)||((this.sequences!= null)&&this.sequences.equals(rhs.sequences))))&&((this.registry_id == rhs.registry_id)||((this.registry_id!= null)&&this.registry_id.equals(rhs.registry_id))))&&((this.feed_name == rhs.feed_name)||((this.feed_name!= null)&&this.feed_name.equals(rhs.feed_name))))&&((this.registry_suffix == rhs.registry_suffix)||((this.registry_suffix!= null)&&this.registry_suffix.equals(rhs.registry_suffix))))&&((this.device_endpoint == rhs.device_endpoint)||((this.device_endpoint!= null)&&this.device_endpoint.equals(rhs.device_endpoint))))&&((this.update_topic == rhs.update_topic)||((this.update_topic!= null)&&this.update_topic.equals(rhs.update_topic))))&&((this.iot_provider == rhs.iot_provider)||((this.iot_provider!= null)&&this.iot_provider.equals(rhs.iot_provider))))&&((this.project_id == rhs.project_id)||((this.project_id!= null)&&this.project_id.equals(rhs.project_id))))&&((this.udmi_root == rhs.udmi_root)||((this.udmi_root!= null)&&this.udmi_root.equals(rhs.udmi_root))))&&((this.shard_count == rhs.shard_count)||((this.shard_count!= null)&&this.shard_count.equals(rhs.shard_count))))&&((this.reflect_region == rhs.reflect_region)||((this.reflect_region!= null)&&this.reflect_region.equals(rhs.reflect_region))))&&((this.enforce_version == rhs.enforce_version)||((this.enforce_version!= null)&&this.enforce_version.equals(rhs.enforce_version))))&&((this.update_to == rhs.update_to)||((this.update_to!= null)&&this.update_to.equals(rhs.update_to))))&&((this.device_id == rhs.device_id)||((this.device_id!= null)&&this.device_id.equals(rhs.device_id))))&&((this.udmi_version == rhs.udmi_version)||((this.udmi_version!= null)&&this.udmi_version.equals(rhs.udmi_version))))&&((this.udmi_namespace == rhs.udmi_namespace)||((this.udmi_namespace!= null)&&this.udmi_namespace.equals(rhs.udmi_namespace))))&&((this.log_level == rhs.log_level)||((this.log_level!= null)&&this.log_level.equals(rhs.log_level))))&&((this.site_name == rhs.site_name)||((this.site_name!= null)&&this.site_name.equals(rhs.site_name))))&&((this.src_file == rhs.src_file)||((this.src_file!= null)&&this.src_file.equals(rhs.src_file))))&&((this.bridge_host == rhs.bridge_host)||((this.bridge_host!= null)&&this.bridge_host.equals(rhs.bridge_host))))&&((this.shard_index == rhs.shard_index)||((this.shard_index!= null)&&this.shard_index.equals(rhs.shard_index))))&&((this.serial_no == rhs.serial_no)||((this.serial_no!= null)&&this.serial_no.equals(rhs.serial_no)))); + return (((((((((((((((((((((((((((((((((((this.alt_registry == rhs.alt_registry)||((this.alt_registry!= null)&&this.alt_registry.equals(rhs.alt_registry)))&&((this.min_stage == rhs.min_stage)||((this.min_stage!= null)&&this.min_stage.equals(rhs.min_stage))))&&((this.block_unknown == rhs.block_unknown)||((this.block_unknown!= null)&&this.block_unknown.equals(rhs.block_unknown))))&&((this.cloud_region == rhs.cloud_region)||((this.cloud_region!= null)&&this.cloud_region.equals(rhs.cloud_region))))&&((this.key_file == rhs.key_file)||((this.key_file!= null)&&this.key_file.equals(rhs.key_file))))&&((this.user_name == rhs.user_name)||((this.user_name!= null)&&this.user_name.equals(rhs.user_name))))&&((this.alt_project == rhs.alt_project)||((this.alt_project!= null)&&this.alt_project.equals(rhs.alt_project))))&&((this.reflector_endpoint == rhs.reflector_endpoint)||((this.reflector_endpoint!= null)&&this.reflector_endpoint.equals(rhs.reflector_endpoint))))&&((this.site_model == rhs.site_model)||((this.site_model!= null)&&this.site_model.equals(rhs.site_model))))&&((this.sequences == rhs.sequences)||((this.sequences!= null)&&this.sequences.equals(rhs.sequences))))&&((this.registry_id == rhs.registry_id)||((this.registry_id!= null)&&this.registry_id.equals(rhs.registry_id))))&&((this.feed_name == rhs.feed_name)||((this.feed_name!= null)&&this.feed_name.equals(rhs.feed_name))))&&((this.registry_suffix == rhs.registry_suffix)||((this.registry_suffix!= null)&&this.registry_suffix.equals(rhs.registry_suffix))))&&((this.device_endpoint == rhs.device_endpoint)||((this.device_endpoint!= null)&&this.device_endpoint.equals(rhs.device_endpoint))))&&((this.update_topic == rhs.update_topic)||((this.update_topic!= null)&&this.update_topic.equals(rhs.update_topic))))&&((this.iot_provider == rhs.iot_provider)||((this.iot_provider!= null)&&this.iot_provider.equals(rhs.iot_provider))))&&((this.project_id == rhs.project_id)||((this.project_id!= null)&&this.project_id.equals(rhs.project_id))))&&((this.udmi_root == rhs.udmi_root)||((this.udmi_root!= null)&&this.udmi_root.equals(rhs.udmi_root))))&&((this.shard_count == rhs.shard_count)||((this.shard_count!= null)&&this.shard_count.equals(rhs.shard_count))))&&((this.reflect_region == rhs.reflect_region)||((this.reflect_region!= null)&&this.reflect_region.equals(rhs.reflect_region))))&&((this.enforce_version == rhs.enforce_version)||((this.enforce_version!= null)&&this.enforce_version.equals(rhs.enforce_version))))&&((this.update_to == rhs.update_to)||((this.update_to!= null)&&this.update_to.equals(rhs.update_to))))&&((this.device_id == rhs.device_id)||((this.device_id!= null)&&this.device_id.equals(rhs.device_id))))&&((this.udmi_version == rhs.udmi_version)||((this.udmi_version!= null)&&this.udmi_version.equals(rhs.udmi_version))))&&((this.udmi_namespace == rhs.udmi_namespace)||((this.udmi_namespace!= null)&&this.udmi_namespace.equals(rhs.udmi_namespace))))&&((this.log_level == rhs.log_level)||((this.log_level!= null)&&this.log_level.equals(rhs.log_level))))&&((this.udmi_commit == rhs.udmi_commit)||((this.udmi_commit!= null)&&this.udmi_commit.equals(rhs.udmi_commit))))&&((this.site_name == rhs.site_name)||((this.site_name!= null)&&this.site_name.equals(rhs.site_name))))&&((this.src_file == rhs.src_file)||((this.src_file!= null)&&this.src_file.equals(rhs.src_file))))&&((this.bridge_host == rhs.bridge_host)||((this.bridge_host!= null)&&this.bridge_host.equals(rhs.bridge_host))))&&((this.udmi_ref == rhs.udmi_ref)||((this.udmi_ref!= null)&&this.udmi_ref.equals(rhs.udmi_ref))))&&((this.shard_index == rhs.shard_index)||((this.shard_index!= null)&&this.shard_index.equals(rhs.shard_index))))&&((this.serial_no == rhs.serial_no)||((this.serial_no!= null)&&this.serial_no.equals(rhs.serial_no))))&&((this.udmi_timever == rhs.udmi_timever)||((this.udmi_timever!= null)&&this.udmi_timever.equals(rhs.udmi_timever)))); } } diff --git a/gencode/java/udmi/schema/SetupUdmiConfig.java b/gencode/java/udmi/schema/SetupUdmiConfig.java index d8ed30a093..1486c54f45 100644 --- a/gencode/java/udmi/schema/SetupUdmiConfig.java +++ b/gencode/java/udmi/schema/SetupUdmiConfig.java @@ -20,6 +20,7 @@ "functions_min", "functions_max", "udmi_version", + "udmi_commit", "udmi_ref", "udmi_timever", "built_at", @@ -43,11 +44,18 @@ public class SetupUdmiConfig { @JsonPropertyDescription("Semantic tagged version of udmis install") public String udmi_version; /** - * Exact reference hash of udmis install + * Commit hash of this udmis install + * + */ + @JsonProperty("udmi_commit") + @JsonPropertyDescription("Commit hash of this udmis install") + public String udmi_commit; + /** + * Complete reference of udmis install * */ @JsonProperty("udmi_ref") - @JsonPropertyDescription("Exact reference hash of udmis install") + @JsonPropertyDescription("Complete reference of udmis install") public String udmi_ref; /** * Timestamp version id of udmis install @@ -75,6 +83,7 @@ public int hashCode() { result = ((result* 31)+((this.functions_min == null)? 0 :this.functions_min.hashCode())); result = ((result* 31)+((this.deployed_at == null)? 0 :this.deployed_at.hashCode())); result = ((result* 31)+((this.functions_max == null)? 0 :this.functions_max.hashCode())); + result = ((result* 31)+((this.udmi_commit == null)? 0 :this.udmi_commit.hashCode())); result = ((result* 31)+((this.built_by == null)? 0 :this.built_by.hashCode())); result = ((result* 31)+((this.deployed_by == null)? 0 :this.deployed_by.hashCode())); result = ((result* 31)+((this.udmi_timever == null)? 0 :this.udmi_timever.hashCode())); @@ -90,7 +99,7 @@ public boolean equals(Object other) { return false; } SetupUdmiConfig rhs = ((SetupUdmiConfig) other); - return (((((((((((this.hostname == rhs.hostname)||((this.hostname!= null)&&this.hostname.equals(rhs.hostname)))&&((this.udmi_ref == rhs.udmi_ref)||((this.udmi_ref!= null)&&this.udmi_ref.equals(rhs.udmi_ref))))&&((this.udmi_version == rhs.udmi_version)||((this.udmi_version!= null)&&this.udmi_version.equals(rhs.udmi_version))))&&((this.built_at == rhs.built_at)||((this.built_at!= null)&&this.built_at.equals(rhs.built_at))))&&((this.functions_min == rhs.functions_min)||((this.functions_min!= null)&&this.functions_min.equals(rhs.functions_min))))&&((this.deployed_at == rhs.deployed_at)||((this.deployed_at!= null)&&this.deployed_at.equals(rhs.deployed_at))))&&((this.functions_max == rhs.functions_max)||((this.functions_max!= null)&&this.functions_max.equals(rhs.functions_max))))&&((this.built_by == rhs.built_by)||((this.built_by!= null)&&this.built_by.equals(rhs.built_by))))&&((this.deployed_by == rhs.deployed_by)||((this.deployed_by!= null)&&this.deployed_by.equals(rhs.deployed_by))))&&((this.udmi_timever == rhs.udmi_timever)||((this.udmi_timever!= null)&&this.udmi_timever.equals(rhs.udmi_timever)))); + return ((((((((((((this.hostname == rhs.hostname)||((this.hostname!= null)&&this.hostname.equals(rhs.hostname)))&&((this.udmi_ref == rhs.udmi_ref)||((this.udmi_ref!= null)&&this.udmi_ref.equals(rhs.udmi_ref))))&&((this.udmi_version == rhs.udmi_version)||((this.udmi_version!= null)&&this.udmi_version.equals(rhs.udmi_version))))&&((this.built_at == rhs.built_at)||((this.built_at!= null)&&this.built_at.equals(rhs.built_at))))&&((this.functions_min == rhs.functions_min)||((this.functions_min!= null)&&this.functions_min.equals(rhs.functions_min))))&&((this.deployed_at == rhs.deployed_at)||((this.deployed_at!= null)&&this.deployed_at.equals(rhs.deployed_at))))&&((this.functions_max == rhs.functions_max)||((this.functions_max!= null)&&this.functions_max.equals(rhs.functions_max))))&&((this.udmi_commit == rhs.udmi_commit)||((this.udmi_commit!= null)&&this.udmi_commit.equals(rhs.udmi_commit))))&&((this.built_by == rhs.built_by)||((this.built_by!= null)&&this.built_by.equals(rhs.built_by))))&&((this.deployed_by == rhs.deployed_by)||((this.deployed_by!= null)&&this.deployed_by.equals(rhs.deployed_by))))&&((this.udmi_timever == rhs.udmi_timever)||((this.udmi_timever!= null)&&this.udmi_timever.equals(rhs.udmi_timever)))); } } diff --git a/gencode/java/udmi/schema/SetupUdmiState.java b/gencode/java/udmi/schema/SetupUdmiState.java index f8da64e202..d1c8ca4ab5 100644 --- a/gencode/java/udmi/schema/SetupUdmiState.java +++ b/gencode/java/udmi/schema/SetupUdmiState.java @@ -16,6 +16,10 @@ @JsonInclude(JsonInclude.Include.NON_NULL) @JsonPropertyOrder({ "user", + "udmi_version", + "udmi_commit", + "udmi_ref", + "udmi_timever", "msg_source", "update_to", "tool_name", @@ -30,6 +34,34 @@ public class SetupUdmiState { @JsonProperty("user") @JsonPropertyDescription("User id of the person running the tool") public String user; + /** + * Semantic tagged version of udmis install + * + */ + @JsonProperty("udmi_version") + @JsonPropertyDescription("Semantic tagged version of udmis install") + public String udmi_version; + /** + * Commit hash of this udmis install + * + */ + @JsonProperty("udmi_commit") + @JsonPropertyDescription("Commit hash of this udmis install") + public String udmi_commit; + /** + * Complete reference of udmis install + * + */ + @JsonProperty("udmi_ref") + @JsonPropertyDescription("Complete reference of udmis install") + public String udmi_ref; + /** + * Timestamp version id of udmis install + * + */ + @JsonProperty("udmi_timever") + @JsonPropertyDescription("Timestamp version id of udmis install") + public String udmi_timever; /** * Source parameter to use for this connection stream * @@ -60,8 +92,12 @@ public int hashCode() { result = ((result* 31)+((this.update_to == null)? 0 :this.update_to.hashCode())); result = ((result* 31)+((this.tool_name == null)? 0 :this.tool_name.hashCode())); result = ((result* 31)+((this.transaction_id == null)? 0 :this.transaction_id.hashCode())); - result = ((result* 31)+((this.user == null)? 0 :this.user.hashCode())); + result = ((result* 31)+((this.udmi_ref == null)? 0 :this.udmi_ref.hashCode())); + result = ((result* 31)+((this.udmi_version == null)? 0 :this.udmi_version.hashCode())); result = ((result* 31)+((this.msg_source == null)? 0 :this.msg_source.hashCode())); + result = ((result* 31)+((this.udmi_commit == null)? 0 :this.udmi_commit.hashCode())); + result = ((result* 31)+((this.user == null)? 0 :this.user.hashCode())); + result = ((result* 31)+((this.udmi_timever == null)? 0 :this.udmi_timever.hashCode())); return result; } @@ -74,7 +110,7 @@ public boolean equals(Object other) { return false; } SetupUdmiState rhs = ((SetupUdmiState) other); - return ((((((this.update_to == rhs.update_to)||((this.update_to!= null)&&this.update_to.equals(rhs.update_to)))&&((this.tool_name == rhs.tool_name)||((this.tool_name!= null)&&this.tool_name.equals(rhs.tool_name))))&&((this.transaction_id == rhs.transaction_id)||((this.transaction_id!= null)&&this.transaction_id.equals(rhs.transaction_id))))&&((this.user == rhs.user)||((this.user!= null)&&this.user.equals(rhs.user))))&&((this.msg_source == rhs.msg_source)||((this.msg_source!= null)&&this.msg_source.equals(rhs.msg_source)))); + return ((((((((((this.update_to == rhs.update_to)||((this.update_to!= null)&&this.update_to.equals(rhs.update_to)))&&((this.tool_name == rhs.tool_name)||((this.tool_name!= null)&&this.tool_name.equals(rhs.tool_name))))&&((this.transaction_id == rhs.transaction_id)||((this.transaction_id!= null)&&this.transaction_id.equals(rhs.transaction_id))))&&((this.udmi_ref == rhs.udmi_ref)||((this.udmi_ref!= null)&&this.udmi_ref.equals(rhs.udmi_ref))))&&((this.udmi_version == rhs.udmi_version)||((this.udmi_version!= null)&&this.udmi_version.equals(rhs.udmi_version))))&&((this.msg_source == rhs.msg_source)||((this.msg_source!= null)&&this.msg_source.equals(rhs.msg_source))))&&((this.udmi_commit == rhs.udmi_commit)||((this.udmi_commit!= null)&&this.udmi_commit.equals(rhs.udmi_commit))))&&((this.user == rhs.user)||((this.user!= null)&&this.user.equals(rhs.user))))&&((this.udmi_timever == rhs.udmi_timever)||((this.udmi_timever!= null)&&this.udmi_timever.equals(rhs.udmi_timever)))); } } diff --git a/gencode/python/udmi/schema/config_udmi.py b/gencode/python/udmi/schema/config_udmi.py index 369d5cd1d0..85cb58c77f 100644 --- a/gencode/python/udmi/schema/config_udmi.py +++ b/gencode/python/udmi/schema/config_udmi.py @@ -10,6 +10,7 @@ def __init__(self): self.functions_min = None self.functions_max = None self.udmi_version = None + self.udmi_commit = None self.udmi_ref = None self.udmi_timever = None self.built_at = None @@ -26,6 +27,7 @@ def from_dict(source): result.functions_min = source.get('functions_min') result.functions_max = source.get('functions_max') result.udmi_version = source.get('udmi_version') + result.udmi_commit = source.get('udmi_commit') result.udmi_ref = source.get('udmi_ref') result.udmi_timever = source.get('udmi_timever') result.built_at = source.get('built_at') @@ -60,6 +62,8 @@ def to_dict(self): result['functions_max'] = self.functions_max # 5 if self.udmi_version: result['udmi_version'] = self.udmi_version # 5 + if self.udmi_commit: + result['udmi_commit'] = self.udmi_commit # 5 if self.udmi_ref: result['udmi_ref'] = self.udmi_ref # 5 if self.udmi_timever: diff --git a/gencode/python/udmi/schema/configuration_execution.py b/gencode/python/udmi/schema/configuration_execution.py index 48cb4b61eb..e828838469 100644 --- a/gencode/python/udmi/schema/configuration_execution.py +++ b/gencode/python/udmi/schema/configuration_execution.py @@ -31,6 +31,9 @@ def __init__(self): self.log_level = None self.min_stage = None self.udmi_version = None + self.udmi_commit = None + self.udmi_ref = None + self.udmi_timever = None self.enforce_version = None self.udmi_root = None self.update_to = None @@ -68,6 +71,9 @@ def from_dict(source): result.log_level = source.get('log_level') result.min_stage = source.get('min_stage') result.udmi_version = source.get('udmi_version') + result.udmi_commit = source.get('udmi_commit') + result.udmi_ref = source.get('udmi_ref') + result.udmi_timever = source.get('udmi_timever') result.enforce_version = source.get('enforce_version') result.udmi_root = source.get('udmi_root') result.update_to = source.get('update_to') @@ -143,6 +149,12 @@ def to_dict(self): result['min_stage'] = self.min_stage # 5 if self.udmi_version: result['udmi_version'] = self.udmi_version # 5 + if self.udmi_commit: + result['udmi_commit'] = self.udmi_commit # 5 + if self.udmi_ref: + result['udmi_ref'] = self.udmi_ref # 5 + if self.udmi_timever: + result['udmi_timever'] = self.udmi_timever # 5 if self.enforce_version: result['enforce_version'] = self.enforce_version # 5 if self.udmi_root: diff --git a/gencode/python/udmi/schema/state_udmi.py b/gencode/python/udmi/schema/state_udmi.py index 4c7703a621..de03bc0365 100644 --- a/gencode/python/udmi/schema/state_udmi.py +++ b/gencode/python/udmi/schema/state_udmi.py @@ -6,6 +6,10 @@ class SetupUdmiState: def __init__(self): self.user = None + self.udmi_version = None + self.udmi_commit = None + self.udmi_ref = None + self.udmi_timever = None self.msg_source = None self.update_to = None self.tool_name = None @@ -17,6 +21,10 @@ def from_dict(source): return None result = SetupUdmiState() result.user = source.get('user') + result.udmi_version = source.get('udmi_version') + result.udmi_commit = source.get('udmi_commit') + result.udmi_ref = source.get('udmi_ref') + result.udmi_timever = source.get('udmi_timever') result.msg_source = source.get('msg_source') result.update_to = source.get('update_to') result.tool_name = source.get('tool_name') @@ -43,6 +51,14 @@ def to_dict(self): result = {} if self.user: result['user'] = self.user # 5 + if self.udmi_version: + result['udmi_version'] = self.udmi_version # 5 + if self.udmi_commit: + result['udmi_commit'] = self.udmi_commit # 5 + if self.udmi_ref: + result['udmi_ref'] = self.udmi_ref # 5 + if self.udmi_timever: + result['udmi_timever'] = self.udmi_timever # 5 if self.msg_source: result['msg_source'] = self.msg_source # 5 if self.update_to: diff --git a/misc/discoverynode/testing/e2e/test_local b/misc/discoverynode/testing/e2e/test_local index ab51a2c727..5d74ed2c67 100755 --- a/misc/discoverynode/testing/e2e/test_local +++ b/misc/discoverynode/testing/e2e/test_local @@ -2,7 +2,7 @@ set -x ROOT_DIR=$(dirname $(realpath $0)) -export DN_SITE_PATH=$1 +export DN_SITE_PATH=$(realpath $1) export DN_TARGET=//mqtt/localhost if [[ -z $DN_SITE_PATH ]]; then diff --git a/schema/config_udmi.json b/schema/config_udmi.json index feb4d067bc..164ce11192 100644 --- a/schema/config_udmi.json +++ b/schema/config_udmi.json @@ -40,9 +40,13 @@ "type": "string", "description": "Semantic tagged version of udmis install" }, + "udmi_commit": { + "type": "string", + "description": "Commit hash of this udmis install" + }, "udmi_ref": { "type": "string", - "description": "Exact reference hash of udmis install" + "description": "Complete reference of udmis install" }, "udmi_timever": { "type": "string", diff --git a/schema/configuration_execution.json b/schema/configuration_execution.json index e004be4e02..d13e4245c7 100644 --- a/schema/configuration_execution.json +++ b/schema/configuration_execution.json @@ -77,7 +77,20 @@ "type": "string" }, "udmi_version": { - "type": "string" + "type": "string", + "description": "Semantic tagged version of udmis install" + }, + "udmi_commit": { + "type": "string", + "description": "Commit hash of this udmis install" + }, + "udmi_ref": { + "type": "string", + "description": "Complete reference of udmis install" + }, + "udmi_timever": { + "type": "string", + "description": "Timestamp version id of udmis install" }, "enforce_version": { "type": "boolean" diff --git a/schema/state_udmi.json b/schema/state_udmi.json index ea0aa7c874..3d3b98a0c4 100644 --- a/schema/state_udmi.json +++ b/schema/state_udmi.json @@ -39,6 +39,22 @@ "type": "string", "description": "User id of the person running the tool" }, + "udmi_version": { + "type": "string", + "description": "Semantic tagged version of udmis install" + }, + "udmi_commit": { + "type": "string", + "description": "Commit hash of this udmis install" + }, + "udmi_ref": { + "type": "string", + "description": "Complete reference of udmis install" + }, + "udmi_timever": { + "type": "string", + "description": "Timestamp version id of udmis install" + }, "msg_source": { "type": "string", "description": "Source parameter to use for this connection stream"