Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Adding basic onboarding capability and bitbox adapter #839

Merged
merged 71 commits into from
Mar 23, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
71 commits
Select commit Hold shift + click to select a range
9519a60
Baseline mapping agent
grafnu Mar 15, 2024
dedc535
Automatically created devices are blocked
grafnu Mar 15, 2024
39ccd6a
Unit test fixes
grafnu Mar 16, 2024
08d6dd9
Enumeration depth fixes
grafnu Mar 16, 2024
fa96302
Finish refactoring
grafnu Mar 16, 2024
593aac1
Fix pod definitions
grafnu Mar 16, 2024
ae39245
Fixing schema tests
grafnu Mar 16, 2024
4ce6fa7
Basic notworking bitbox adapeter
grafnu Mar 16, 2024
19b4e5f
Adding optional enable
grafnu Mar 17, 2024
09f6a73
Use BITBOX_DISCOVERY env
grafnu Mar 17, 2024
258318e
Fixing enumerate test
grafnu Mar 17, 2024
34560af
Fix linty
grafnu Mar 17, 2024
c8e86db
Fix unit tests
grafnu Mar 17, 2024
e5df0c1
Fix periodic enumeration scan
grafnu Mar 17, 2024
394a976
Fix test creation
grafnu Mar 17, 2024
c0c054a
Fix rawFolder message injection
grafnu Mar 17, 2024
604ba10
Fix testing infrastructure
grafnu Mar 17, 2024
8e877d5
Importing cache
grafnu Mar 17, 2024
1e53bfb
javadoc
grafnu Mar 17, 2024
5102d65
Updating generated.md
grafnu Mar 17, 2024
86e1d22
Tighten up unit tests
grafnu Mar 17, 2024
a041b32
CLeanup state testing
grafnu Mar 18, 2024
2eaf82a
Fix error handling when no distributor is active
grafnu Mar 18, 2024
52b895d
Updating binding
grafnu Mar 18, 2024
4173d84
Fix unit tests
grafnu Mar 18, 2024
11197c8
Update discovery path
grafnu Mar 18, 2024
fa88a92
Add ability to expunge unknown devices
grafnu Mar 18, 2024
ccaabae
Change config stuff
grafnu Mar 19, 2024
d372774
FIx raw folder handling
grafnu Mar 19, 2024
339235c
Fix env variable
grafnu Mar 19, 2024
da5fbce
Cleanup
grafnu Mar 19, 2024
cd40017
ADd more output detail
grafnu Mar 19, 2024
66d8598
Fix container dir
grafnu Mar 19, 2024
1299a68
Adding config back in
grafnu Mar 19, 2024
281b520
Add config namespacing
grafnu Mar 20, 2024
0e200bf
Check and ignore non-existent registries
grafnu Mar 20, 2024
1b4bca9
Fixing ignore logic
grafnu Mar 20, 2024
452cebd
Filter out incomplete discovery events
grafnu Mar 20, 2024
42d564d
Use iso in error
grafnu Mar 20, 2024
cd1d4ed
Fix MappingAgent NPEs
grafnu Mar 20, 2024
cbc9196
Fix unit tests
grafnu Mar 20, 2024
816b463
Fixing unit tests
grafnu Mar 20, 2024
d40b059
Fix UDMIS unit tests
grafnu Mar 20, 2024
5ed9a67
Add checks for missing gateway device entry
grafnu Mar 20, 2024
f949bec
Add checks for missing gateway device entry
grafnu Mar 20, 2024
28f5871
Tweaking logigng messages
grafnu Mar 20, 2024
2f8aebf
Adding onboard_until diagnostics
grafnu Mar 20, 2024
7ad356d
Add debugging
grafnu Mar 20, 2024
3b86b2c
Fix fake date generation
grafnu Mar 21, 2024
b69555e
Update generation to 60 min
grafnu Mar 21, 2024
968ad8a
Fix legacy conversion
grafnu Mar 21, 2024
073c1f7
Merge branch 'master' into magent
grafnu Mar 21, 2024
562e1bc
Merge branch 'master' into magent
grafnu Mar 21, 2024
47cef2a
More mapping
grafnu Mar 21, 2024
af29106
Change default query depth
grafnu Mar 21, 2024
a26bcf5
DOn't publish if null
grafnu Mar 22, 2024
4505be7
Reduce messages trace
grafnu Mar 22, 2024
09ebead
Adding adapter logging
grafnu Mar 22, 2024
03d9481
Print stack trace of badness
grafnu Mar 22, 2024
9fb04be
Handle no object-name case
grafnu Mar 22, 2024
9db7ab5
Fix some error reporting
grafnu Mar 22, 2024
994c7e4
Add explicit depth to cloud query
grafnu Mar 22, 2024
92cddaa
Fix unknown error check
grafnu Mar 22, 2024
a427b86
Fix single_scan_past
grafnu Mar 22, 2024
f909219
Fix point comparison
grafnu Mar 22, 2024
25bc381
Fix value_state output
grafnu Mar 22, 2024
b9ad298
Add matching subblocks capability
grafnu Mar 22, 2024
1b62f21
Fixing expected out
grafnu Mar 22, 2024
017dd6c
Fix capability scoring
grafnu Mar 22, 2024
ae93bd1
Fix itemized out
grafnu Mar 23, 2024
76bb9a6
Fix nostate out
grafnu Mar 23, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
40 changes: 20 additions & 20 deletions .gencode_hash.txt
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
433b3c972a2d4de6f54cf32f00f918fa7e3fd80d4bf29a2c7bee182f532bc660 gencode/docs/command_discovery.html
158e714e54b2a6d0b90bfca00d178369b04508dc4fa84a979690a813ca2dd724 gencode/docs/command_mapping.html
1c3be7dc1a31ead28993ceef4770da35f2735e9adb8e4ade796bc09592aa008a gencode/docs/config.html
60938a68f0a88f8d5191eaa5d383b2cf55f048ed59a6574ad7a35952b21ca975 gencode/docs/config.html
22bfb3fd7c0e73dac4cbd830aa7983714917ec6da813f6bf5768ce3aa9786fb2 gencode/docs/config_mapping.html
14058fe7266ccd7a5747f99485a212f57a08eaf70e082a0db42d228ebce78548 gencode/docs/configuration_endpoint.html
3a659e95751c0c1e48a60c117d25e783f8afc9c154fbcc7b56ffdc3322602b46 gencode/docs/configuration_execution.html
a76b0665d740b608d72bcbd6631ff1f35f4cb164af71fe7ed8c6018215319179 gencode/docs/configuration_pod.html
4c830ff76095aee3c1345757ec0b7931d32412442acb31ee8e97e581cbf9f8e3 gencode/docs/configuration_pubber.html
797b2f2102da26f3dee3c5d58cf8551a3da747703950f085f2e616af329affdb gencode/docs/configuration_endpoint.html
34096f9c6fd11d87f9ce33d8da00382e59e4b52136073b17c4d5469383beed66 gencode/docs/configuration_execution.html
0d5f584db584e499df039444f65fc4daac4c0d66c94b3073a277cddac196cf58 gencode/docs/configuration_pod.html
45db665fd1cffbdfc4cf51df7c324ff737ff5061f89291b6e2ea3ee16e5f1c28 gencode/docs/configuration_pubber.html
f24d15e549f1b143b50d6011f2f7fd03286e1cd128a3e25591195b25f8efc472 gencode/docs/data_template.html
5cdda4703458401acfe87f2dff822fa18accee40f3eaccfbf32d9222d718ede3 gencode/docs/event.html
27e0ae48c284becc25107d887bb09fdaee95f9e6c41626f3ead7b0ee466347d8 gencode/docs/event_discovery.html
Expand All @@ -14,10 +14,10 @@ f6ca85990e940f109a48e35b25102d8860e5707a7b2145412046f44d599ef635 gencode/docs/e
e702bedda9d2dd94dcbdaacff29972a8d130a5d85959896010b9cc8b0922132c gencode/docs/event_system.html
a4a99c4be9483e889c2d0d180d72d2ed332d587ac9305c7615da0e70fd55a56d gencode/docs/event_validation.html
d1d133e034b76721c4aca84b0e0a75403005ea23f6d466211c0b1674aa17f2b1 gencode/docs/metadata.html
73904167416e789e598d9060aaa109b903ac537598e9377f590426b2fd876af8 gencode/docs/monitoring.html
5973d5653584078a947b1cbfba0b2b9ab39881b63ecc66bae2a30d1a8eba28c4 gencode/docs/persistent_device.html
bdacad842fc2b5696045a353f4acb07ce9481dab5d6710c8efc39e808ea0a372 gencode/docs/monitoring.html
0c94d260b39463e8c98d281346a65bde7edfa86393ec1b3bafe1472c5749de75 gencode/docs/persistent_device.html
5d039d607af9ec75ee552dfe36b16c702687ea16f5663f41fc49b4533b86e00d gencode/docs/properties.html
17926cbeea31e21766680be7c6e503897929cdf3f779db3ada9e41f2cd765cdb gencode/docs/query_cloud.html
16512c8cc60e4f1a0e01555f3fb6c8a49d3f2b609275a8dc9e62f38fa7b404ca gencode/docs/query_cloud.html
55115bf72d62f7fc2f5deabc3133b7a2b39081c43ff2fa900029f6927597f70a gencode/docs/readme.md
741b880216be3743f6747800a042f2dbd89f3b0344c6b0a965f4bc010f03a930 gencode/docs/schema_doc.css
878ea88206c974f40643c3cc430875f9c4e8c5e3fd6bcd6358bd3eb6d48699a9 gencode/docs/schema_doc.min.js
Expand All @@ -41,28 +41,28 @@ fcbed49f1af8b791d8c52bcbe18f65521a79d9ac3eb33ec3afd9b342ab2bfc56 gencode/java/u
0c133f64013d5f2c4be203708def7ae11be631e90d5992222d6b4c97eef2573e gencode/java/udmi/schema/CapabilityValidationState.java
ec164962f2f00924ecb41ae07c2e01d6bf027951ccc605e0210988370b987973 gencode/java/udmi/schema/Category.java
0b7001efbd1729710f91f4feaaa7707bb39e3b5f4486d88fcbf9463597b0660b gencode/java/udmi/schema/CloudModel.java
5fe3c216af47f0dcfad7030280548de00859d1788233ccbbfd5bf1885c7ed973 gencode/java/udmi/schema/CloudQuery.java
06c8c3131f111e49e0d3e518603a3f66349d5dee1aee64a98659cb8703a8baa6 gencode/java/udmi/schema/CloudQuery.java
992fb7d6bb8ce9eaf7fdfe69af575e442214bb62f82f846987eee473e952e980 gencode/java/udmi/schema/Common.java
377eb78de936317676faaf7ec5a32ad17f2c2c54a3280df87f5fcc2d36c7014d gencode/java/udmi/schema/Config.java
cf9762392e02b5d04c6498963222cc0c00f7be6c3cd82bde3d063a5eceba2b65 gencode/java/udmi/schema/Connections.java
8164e93ccc76d78548d456890e064df8427a09bbcd50686b37a10d3ff5ad429f gencode/java/udmi/schema/Credential.java
f8e26ca82202194ba41c4e3d6b3792022c3b38e24af6dfbb6cfea692fc593da8 gencode/java/udmi/schema/Depths.java
10d67bf2080403fd196f63097e4ce2151edaafe3cf4ac77598ef83e06f94cb05 gencode/java/udmi/schema/DeviceMappingConfig.java
5ffb3bf92436c469eee16fe1e472efc89d1c466785be6ce30148188439314afe gencode/java/udmi/schema/DeviceMappingState.java
9b3e011019ecd3bd2c7b64714c6c30d765e879d7ab00f9cddb212dd3f51502eb gencode/java/udmi/schema/DevicePersistent.java
d4a82e132b2d223c4a82384d22455283c0b64aba3100fc210e72f9700b9df2d0 gencode/java/udmi/schema/DeviceValidationEvent.java
73399ed2459902c3d81e95fde2caa5033c76f8cfd89e96338c8923529763e52c gencode/java/udmi/schema/DiscoveryCommand.java
a1c85a3db330b226baa8e541b161f2f12942aba270b5f0b8241cb89ce8449a0a gencode/java/udmi/schema/DiscoveryConfig.java
074d60f04e924e1e9365acf401fb4af913daedd8aa14ec80dd41f04a29935872 gencode/java/udmi/schema/DiscoveryConfig.java
53765856531c0a65060b2633e06c701a5073ae72c4fbf5e27668ddb6c0dc7a1f gencode/java/udmi/schema/DiscoveryEvent.java
bb4509f13e30ebc9964e213eabf3e36f0c7d73a54a052fea281a484ad84c3596 gencode/java/udmi/schema/DiscoveryModel.java
fbe412e8c874139d828021a034cf6a6a6e1d35d01ccffe98ae35ac48187de753 gencode/java/udmi/schema/DiscoveryState.java
2c0dfcd05efc27247cd851121b267dbde1c956cda48d06b43e595f61f11034b0 gencode/java/udmi/schema/EndpointConfiguration.java
4089bbb80bf641c9845485bc9bccc1b69ffc8b84f64db86b067ee6560a1977a4 gencode/java/udmi/schema/EndpointConfiguration.java
dc25e685886e11a741418be9191a478e13c0244647b5a0cac65d6c1e55055578 gencode/java/udmi/schema/Entry.java
aa39553b6498bcc2876a525b24b7797c860a4d6deb5c3b4b48312383333d6270 gencode/java/udmi/schema/Enumerate.java
8a51984458d96d1798d067005902defa57410167a27dcfb0b730ea38a3326011 gencode/java/udmi/schema/Envelope.java
73a4f6023c715ecb06d14408efb2ee038015bc0db3262d139a3750801dfca1e3 gencode/java/udmi/schema/Envelope.java
c6cdc63b7044af906236f1ae545079dc07279adddd4d67ef98c595174a712e36 gencode/java/udmi/schema/Event.java
33dbb9485fe72ef64ad81f7427bbb41a6c323972b535c3f7124335d426603b29 gencode/java/udmi/schema/ExecutionConfiguration.java
25815abe54d4671858f55bd5d911292bd50f122b80878064b014afcfcbd86ea7 gencode/java/udmi/schema/FamilyDiscovery.java
2e77a29988e6c17875d3f781be931e3b835bb310639f60d3bb28f24405a86bed gencode/java/udmi/schema/FamilyDiscoveryConfig.java
2ecee68c28ee55cce63c21ff32b27d866accdd12c55f7fe894af854c5f56bb63 gencode/java/udmi/schema/FamilyDiscoveryConfig.java
5f50abca612a3ef122f76e07590ccd9f674698ebef63e4901d49a62a0382c957 gencode/java/udmi/schema/FamilyDiscoveryModel.java
03195fb6ea987e00907cd713d5ba7c3e8359a56f7ec70d869603448ee64c0a7f gencode/java/udmi/schema/FamilyDiscoveryState.java
bed3bfdd3ab6143620f799d3545cef8614dad236621ac4c798046e62474085c9 gencode/java/udmi/schema/FamilyLocalnetConfig.java
Expand Down Expand Up @@ -93,7 +93,7 @@ b3b7ef6cae004d5fdb4052f860df0aa583df87bb798a027fc769aeaf16489789 gencode/java/u
4e7fb33911cf11845d494a07502577647cb96e1196cb7b76553190d14b6ed099 gencode/java/udmi/schema/Operation.java
5e1c5411fae4d7c47391ceb5d19ae864fcd484df75ac6b6db39fd2d12647dec8 gencode/java/udmi/schema/Physical_tag.java
afd4e8dcf55ac7fd91a00bc5348efb7dfe7950037a0eae9365a27d24c4f2f2e9 gencode/java/udmi/schema/PodConfiguration.java
a6c694f877c3898bf315f90898a1e60f7ff4605d0f58fad4d87f11883c5b4772 gencode/java/udmi/schema/PointDiscovery.java
6346d4ff373e01c1f2df420ae5ef970e6af2f347db82ee3574eb3ccb8b7ba648 gencode/java/udmi/schema/PointDiscovery.java
468c2c95e9dcbaf4ff706fad7f168c14321eaa35b7fb190848ea8bfd86d981d7 gencode/java/udmi/schema/PointPointsetConfig.java
8f3fc1cdc2dcd3e524863f4675aebabc450a35f5fd1cdc3fd37289b5cab7f2ec gencode/java/udmi/schema/PointPointsetEvent.java
65337109653a93d873dae40eb517857149bae1b20c7b479f41b35c0822d94ba0 gencode/java/udmi/schema/PointPointsetModel.java
Expand All @@ -115,7 +115,7 @@ d67a313587648034d5423dc7ea0c6d6a46149a33086a4deec79ee3eb3af65410 gencode/java/u
47ad54328160a1aabce719a3263d4bfea903e8e8255e04a54ace86eb095b0f0c gencode/java/udmi/schema/StateSystemHardware.java
c9b920d355e5f6350fa6eb978afbfe55dd1438df171d2ea215845d5ac0b3e7e9 gencode/java/udmi/schema/StateSystemOperation.java
93d8e8acf53b3c84c8169003f405165893546ddb8ccf8750d061ecf3f9999b57 gencode/java/udmi/schema/SystemConfig.java
d7354f654c0735596ba27b0d0bccdf7a6e3f1aaac3cac3c5773268838427298b gencode/java/udmi/schema/SystemDiscoveryData.java
0797914b73ef17e5d7a54f7f27ab1838c9002ffe41d7145f6da54482bbd6e879 gencode/java/udmi/schema/SystemDiscoveryData.java
0f67f25404460b8dc39486bab8a538f362979e15ace015ca53a931d934f11c31 gencode/java/udmi/schema/SystemEvent.java
2cf23174ef4e2876511fb471d3f9fcb5cefe2fde324db844c2d0d505fd2c8844 gencode/java/udmi/schema/SystemHardware.java
e657fce78cbce01fa4747f1da62dc0442b20ec2d1c196b6e56f3dd465c078ad4 gencode/java/udmi/schema/SystemModel.java
Expand All @@ -140,8 +140,8 @@ dab4f5fca272ec48c2881bca2b6bc43786ada47fa1f6dd935c35f7ce0eb6b0f6 gencode/python
53961cd8a6ddd118143457ca60d765e12b21bcdf98fc2d648ebac0172ffca880 gencode/python/udmi/schema/config.py
79eb0299b3751d93c01a5de65eacc717283e99caf0996f3db48a15247f69c8eb gencode/python/udmi/schema/config_blobset.py
59039eaf2812392329c641ad387f7e27790cf804fc94a014626d2da5ab426e3d gencode/python/udmi/schema/config_blobset_blob.py
dd518169acd87b7c290fc5dae35780ffd86da41b9222550ae85336db47f518e5 gencode/python/udmi/schema/config_discovery.py
a5edb9ac5ecd5a4459f93ce613691735f299f35718f2e35410206fc91c263dd1 gencode/python/udmi/schema/config_discovery_family.py
d0eb9e61a4c3807d04973ceb83aa44ab8adbff6199c4c49823071f36c3fcbbd0 gencode/python/udmi/schema/config_discovery.py
a681af64599436e912aac1dcb5161a367d03b2af0756b612bf964f7209c21d6a gencode/python/udmi/schema/config_discovery_family.py
428c11f554390cf6f564a8195607458dec4fb9349b82259a4ca333d9a9b7aa7e gencode/python/udmi/schema/config_gateway.py
e2d63bfe79295a0075b9327f4b8a392716b635c5b827339877f3ce9d8480436b gencode/python/udmi/schema/config_localnet.py
326e1bf7ee95926e999d138849928aa2c71a9866ee2214fe63f5c31ad85e0bf4 gencode/python/udmi/schema/config_localnet_family.py
Expand All @@ -152,7 +152,7 @@ ac3facbd96f7cb2f7e387e7497d6a36af379a2687329571f250c5670f9933244 gencode/python
7da3bdb37f338260d5f3829fa5fcbb9bbf9f146b514a68319c314a96c6b8ac12 gencode/python/udmi/schema/config_system.py
cce623b34fd694880039a1c080214c33e00acaef5bc72276cf11a3bb2de40000 gencode/python/udmi/schema/config_system_testing.py
30b1809e364cb3f7070002bb4a9954b11b25543b099b4bbe450d280001e4de55 gencode/python/udmi/schema/config_udmi.py
f8c663748b6ea1c9542c789fed90a3b6d123dc20a35588da3f84545ab1908741 gencode/python/udmi/schema/configuration_endpoint.py
ef5efa8522340f44650566bd3c11a6710d014bd7d7a64cbdfc472adb6c9f16b3 gencode/python/udmi/schema/configuration_endpoint.py
093921954e26b1d6db16277ec9f87fddb85cc00f3bd3da32f998aa6148a0d9d9 gencode/python/udmi/schema/configuration_execution.py
afc89a204d7099791303cf9231b19cc6ba320d1de95a921381f5e47bbafac842 gencode/python/udmi/schema/configuration_pod.py
c61ee66daa7e632850bc2705370baa8c057e7a34792c6a29b9e4ca00c0eb195b gencode/python/udmi/schema/configuration_pod_base.py
Expand All @@ -163,7 +163,7 @@ b44731d5c3067577b3dfe941bd7d578b3c96aa36c7b55bdf4034a1e38d934317 gencode/python
eebb10ed73e4046ee2c5a271219b9547751835a15069968790ab44580a7225f7 gencode/python/udmi/schema/discovery_feature.py
bd132b930f41bbcfbb4726627d14361d4a73ecc3b44782b62c7940774a8095b7 gencode/python/udmi/schema/discovery_point.py
fbb4b2c04c170c0da5cdd868612429fe920e44b591fcad2522b2e047d580d537 gencode/python/udmi/schema/entry.py
5b9982e15ff770bc5af75b7891285aec956e873c9a855a29ea2122314a2b76c0 gencode/python/udmi/schema/envelope.py
488802e1b19cbe4e7e02e6ddfdcd0e0c0dbcb71f2439f76ac9bb63aa7c4ffca9 gencode/python/udmi/schema/envelope.py
ed8ace0196c5e99d20778cb4210aa88cfe44a5e4539af98a1e194b9a71fa538e gencode/python/udmi/schema/equipment_translation.py
1eb9019b9d0b4ff7de2df8beb625a4f89292d636ece0c02f160495c537bd6c2c gencode/python/udmi/schema/event.py
6f39279859a11162f1bbed2743793bc9c923b49b19e356d7f8f948a883f1767f gencode/python/udmi/schema/event_discovery.py
Expand Down
35 changes: 13 additions & 22 deletions bin/container
Original file line number Diff line number Diff line change
@@ -1,23 +1,13 @@
#!/bin/bash -e

ROOT=$(dirname $0)/..

function usage {
echo Error: $*
echo Usage: $0 target { prep, build, push, apply } [--no-check] [repo]
exit 1
}

function fail {
echo Error: $*
exit 1
}
UDMI_ROOT=$(dirname $0)/..

target=$1
cmd=$2
shift 2 || usage missing arguments
shift 2 || usage target { prep, build, push, apply } [--no-check] [repo]

cd ${ROOT}/${target}
source ${UDMI_ROOT}/etc/shell_common.sh
cd ${UDMI_ROOT}/${target}

git_branch=$(git rev-parse --abbrev-ref HEAD)
git_remote=$(git config --get branch.$git_branch.remote) || fail missing git remote
Expand Down Expand Up @@ -75,8 +65,6 @@ else
udmi_ref=$REPOSITORY:$udmi_tag
fi

version=`git describe`

RUNARGS="--rm -ti -v $PWD/var:/udmi -v $HOME/.config:/root/.config --tmpfs /tmp"

prep=
Expand Down Expand Up @@ -106,7 +94,7 @@ if [[ -n $prep ]]; then
build_time=`date --utc -Imin -r $LIBFILE`
cat <<EOF > var/deployed_version.json
{
"udmi_version": "$version",
"udmi_version": "$udmi_version",
"udmi_ref": "$udmi_ref",
"built_at": "$build_time",
"built_by": "$current_user"
Expand All @@ -126,16 +114,19 @@ if [[ -n $push ]]; then
hash=$(docker images --digests ${udmi_ref%:*} | fgrep $udmi_tag | awk '{print $3}')
ihash=$udmi_ref@$hash
for file in $TEMPLATES; do
cp etc/$file tmp/$file
sed -i tmp/$file \
out_file=tmp/$file
src_file=etc/$file
alt_file=etc/${UDMI_NAMESPACE}~$file
[[ -f $alt_file ]] && src_file=$alt_file
sed < $src_file > $out_file \
-e "s^@IMAGE@^$ihash^" \
-e "s^@TARGET@^$target^" \
-e "s^@UDMI_NAMESPACE@^$UDMI_NAMESPACE^" \
-e "s^@GCP_PROJECT@^$GCP_PROJECT^"
if diff etc/$file tmp/$file; then
rm tmp/$file
if diff $src_file $out_file; then
rm $out_file
else
echo Customized output in tmp/$file
echo Customized output in $out_file from $src_file
fi
done
echo Done with container build.
Expand Down
4 changes: 2 additions & 2 deletions bin/test_regclean
Original file line number Diff line number Diff line change
Expand Up @@ -113,8 +113,8 @@ rm -rf $fake_device && cp -a $clone_device $fake_device
jq ".localnet.families.vendor.addr = \"2183213\"" $fake_metadata | sponge $fake_metadata

echo Clean out the registry to make sure devices get removed...
echo bin/registrar $site_arg $registrar_project -d
bin/registrar $site_arg $registrar_project -d
echo bin/registrar $site_arg $registrar_project -d -x
bin/registrar $site_arg $registrar_project -d -x

echo Checking reported cloud version info
jq .cloud_version.udmi_ref $output_file
Expand Down
1 change: 1 addition & 0 deletions common/src/main/java/com/google/udmi/util/Common.java
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,7 @@ public abstract class Common {
public static final String CLOUD_VERSION_KEY = "cloud_version";
public static final String UDMI_VERSION_KEY = "udmi_version";
public static final String SUBTYPE_PROPERTY_KEY = "subType";
public static final String RAWFOLDER_PROPERTY_KEY = "rawFolder";
public static final String SUBFOLDER_PROPERTY_KEY = "subFolder";
public static final String PROJECT_ID_PROPERTY_KEY = "projectId";
public static final String REGISTRY_ID_PROPERTY_KEY = "deviceRegistryId";
Expand Down
43 changes: 39 additions & 4 deletions common/src/main/java/com/google/udmi/util/GeneralUtils.java
Original file line number Diff line number Diff line change
Expand Up @@ -49,6 +49,7 @@
import java.util.stream.Collector;
import java.util.stream.Collectors;
import org.apache.commons.io.FileUtils;
import udmi.schema.CloudModel;

public class GeneralUtils {

Expand Down Expand Up @@ -197,6 +198,10 @@ public static String compressJsonString(Object data, int lengthThreshold) {
}
}

public static Runnable ignoreValue(Object ignored) {
return () -> {};
}

public static Date toDate(Instant lastSeen) {
return ifNotNullGet(lastSeen, Date::from);
}
Expand Down Expand Up @@ -247,6 +252,10 @@ public static <T, V> V ifNotNullGet(T value, Function<T, V> converter, V elseRes
return value == null ? elseResult : converter.apply(value);
}

public static <T, V> V ifNullElse(T value, V elseResult, Function<T, V> converter) {
return value == null ? elseResult : converter.apply(value);
}

public static <T, V> V ifNotNullGet(T value, Supplier<V> converter) {
return value == null ? null : converter.get();
}
Expand Down Expand Up @@ -293,10 +302,7 @@ public static <T> T ifTrueGet(Boolean conditional, Supplier<T> action) {
}

public static <T> T ifTrueGet(Supplier<Boolean> conditional, Supplier<T> action) {
if (isTrue(conditional)) {
return action.get();
}
return null;
return isTrue(conditional) ? action.get() : null;
}

public static <T> T ifTrueGet(Object conditional, Supplier<T> action, Supplier<T> alternate) {
Expand All @@ -311,6 +317,10 @@ public static <T> T ifTrueGet(Object conditional, T value, Supplier<T> alternate
return isTrue(conditional) ? value : alternate.get();
}

public static <T> T ifTrueGet(Object conditional, T value, T alternate) {
return isTrue(conditional) ? value : alternate;
}

public static <T> void ifTrueThen(Object conditional, Runnable action) {
ifTrueThen(conditional, action, null);
}
Expand All @@ -327,10 +337,18 @@ public static <T> T ifNotTrueGet(Boolean conditional, Supplier<T> supplier) {
return isTrue(conditional) ? null : supplier.get();
}

public static <T> T ifNotTrueGet(Boolean conditional, T value) {
return isTrue(conditional) ? null : value;
}

public static <T> T ifNotTrueGet(Supplier<Boolean> conditional, Supplier<T> supplier) {
return isTrue(catchToNull(conditional)) ? null : supplier.get();
}

public static <T> T ifNotTrueGet(Supplier<Boolean> conditional, T value) {
return isTrue(catchToNull(conditional)) ? null : value;
}

public static boolean isNotTrue(Boolean value) {
return !isTrue(value);
}
Expand Down Expand Up @@ -375,6 +393,23 @@ public static <T> T catchToElse(Supplier<T> provider, Function<Exception, T> alt
}
}

public static <T> T catchToElse(Supplier<T> provider, Consumer<Exception> alternate) {
try {
return provider.get();
} catch (Exception e) {
alternate.accept(e);
return null;
}
}

public static void catchToElse(Runnable provider, Consumer<Exception> alternate) {
try {
provider.run();
} catch (Exception e) {
alternate.accept(e);
}
}

public static <T> T catchToElse(Supplier<T> provider, T alternate) {
try {
return provider.get();
Expand Down
Loading