why COMPONENT_VERSION_REQUIREMENTS_NOT_MET occured in iot greengrass v2 group

0

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

asked 2 years ago356 views
1 Answer
1

You can check in the /greengrass/v2/logs/greengrass.log which is the exact component that is creating the conflict. Check also that there is only 1 deployment targeting the core device by looking under the Deployments tab in the Core devices screen. If there are more than 1 deployment, check that the component's versions in the different deployments are not conflicting.

AWS
EXPERT
answered 2 years ago
  • 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

You are not logged in. Log in to post an answer.

A good answer clearly answers the question and provides constructive feedback and encourages professional growth in the question asker.

Guidelines for Answering Questions