I am in the process of deploying edge devices with greengrass v2 group. Here is a documentation of the process
https://catalog.us-east-1.prod.workshops.aws/workshops/8d1c3528-8abb-4674-a2b9-d15fa593c392/en-US/image-classification/deploy-em-agent#deploy-component
As you proceed, you deploy from the greengrass group and get an error like COMPONENT_VERSION_REQUIREMENTS_NOT_MET.
The components I am using are as follows. The problematic part of the list seems to be sagemaker edge manager. I think it's clear because there is no problem when I deploy without that component. So I checked the documentation...
aws.greengrass.Cli 2.9.6
aws.greengrass.Nucleus 2.9.6
aws.greengrass.SageMakerEdgeManager 1.3.2
aws.greengrass.TokenExchangeService 2.0.3
It says that the following conditions must be met However, I don't see anything wrong with the version I'm using. Do you have any idea how to fix this?
Greengrass Nucleus >=2.0.0 <3.0.0 soft
TokenExchangeService >=0.0.0 hard
I think I am experiencing a similar issue. In the greengrass log I have this message:
Component com.company.component version constraints: thing/ThingID requires =1.0.65, thinggroup/GROUP_CONTAINING_ThingID requires =1.0.66
I previously deployed com.company.component to core device ThingID (v1.0.65). I then wanted to add that component to a group and deploy it there (v1.0.66), but I get this version conflict. I have tried cancelling the deployment to the core device and deleting all revisions of that deployment but I always get the above message. Do you know what might be going wrong?
Update on the above: I was able to get it working by changing the first deployment to have a single basic component. This removed all of the other components that were on the device (and their dependencies) so I was able to do the group deployment. Would still like to know why it's not possible to override one deployment with another though