Closed ghost closed 10 months ago
This test has failed:
UnhappyUpdateIPCTest.GIVEN_non_default_max_shadow_size_WHEN_update_shadow_document_size_and_update_shadow_THEN_throws_invalid_arguments_error(ExtensionContext) » TLSAuth
com.aws.greengrass.util.exceptions.TLSAuthException: Error during getting key managers
Caused by: java.io.IOException: Is a directory
at com.aws.greengrass.util.EncryptionUtils.loadPrivateKeyPair(EncryptionUtils.java:79)
at com.aws.greengrass.security.SecurityService$DefaultCryptoKeyProvider.getKeyPair(SecurityService.java:333)
Description of changes: This commit introduces a new feature "add shadow on interaction". When this feature is enabled, ShadowManager adds things shadows to synchronize configuration once it receives a GetThingShadow / UpdateThingShadow request. Similarly, the shadows, which were added on interaction, will be removed from the configuration if there is a DeleteThingShadowRequest.
Why is this change necessary: This change is necessary to allow other components to dynamically add and remove thing shadows to/from sync configuration without Nucleus restart.
How was this change tested:
Checklist:
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.