aws-greengrass / aws-greengrass-nucleus

The Greengrass nucleus component provides functionality for device side orchestration of deployments and lifecycle management for execution of Greengrass components and applications. This includes features such as starting, stopping, and monitoring execution of components and apps, interprocess communication server for communication between components, component installation and configuration management.
Apache License 2.0
109 stars 45 forks source link

Recipe change not deploying #1626

Closed wills721 closed 5 months ago

wills721 commented 5 months ago

Describe the bug I have a change in the recipe of my green grass custom component part of my core device. Just the recipe. I revised and deployed however the change did not take effect on the core device. I can see in config.tlog as well it did not take effect -- it did not download to the core device. When I totally deleted green grass core device (in iOT and blowing away the folder) and reinstalled -- then it deployed the new recipe correctly. Any idea?

To Reproduce Change recipe and deploy

Expected behavior A change to receipt

Actual behavior Tell us what actually happened.

Environment

Additional context Add any other context about the problem here.

E.g. what is the impact of the bug?

jcosentino11 commented 5 months ago

It's really hard to say without logs. Aside from looking at config.tlog how else were you validating? Did the new component ever make its way to the device (one way to check would be to look for new component version via gg cli)? Any errors in greengrass.log?

tiancishen commented 5 months ago

What exactly were you trying to change in your recipe?

wills721 commented 5 months ago

Well, I'm changing it all from the console. If I change the DefaultConfiguration of the recipe (e.g. add a new version, change config) from the console under component it has no effect when deployed. However, if I modify the configuration during the Deploy phase (e.g. where the merge option comes up) this actually worked. Its odd that AWS lets you change the receipt default config in a new version but then just ignores it.

MikeDombo commented 5 months ago

Hello,

That's explained in the troubleshooting here: https://docs.aws.amazon.com/greengrass/v2/developerguide/troubleshooting.html#update-component-configuration-to-default-configuration.

Default configuration is only the default. Once you have deployed a component it now has configuration set on the device; updates to the default configuration will not apply. To apply the new defaults, you must use reset in the deployment.

wills721 commented 5 months ago

Yeah, I found this out the hard way. Thank you!