There are more AWS SDK examples available in the AWS Doc SDK Examples
Use GetComponent with an AWS SDK or CLI
The following code examples show how to use GetComponent.
Action examples are code excerpts from larger programs and must be run in context. You can see this action in context in the following code example:
- CLI
-
- AWS CLI
-
Example 1: To download a component's recipe in YAML format (Linux, macOS, or Unix)
The following
get-componentexample downloads a Hello World component's recipe to a file in YAML format. This command does the following:Uses the
--outputand--queryparameters to control the command's output. These parameters extract the recipe blob from the command's output. For more information about controlling output, see Controlling Command Output in the AWS Command Line Interface User Guide.Uses thebase64utility. This utility decodes the extracted blob to the original text. The blob that is returned by a successfulget-componentcommand is base64-encoded text. You must decode this blob to obtain the original text.Saves the decoded text to a file. The final section of the command (> com.example.HelloWorld-1.0.0.json) saves the decoded text to a file.aws greengrassv2 get-component \ --arnarn:aws:greengrass:us-west-2:123456789012:components:com.example.HelloWorld:versions:1.0.0\ --recipe-output-formatYAML\ --queryrecipe\ --outputtext|base64--decode>com.example.HelloWorld-1.0.0.jsonFor more information, see Manage components in the AWS IoT Greengrass V2 Developer Guide.
Example 2: To download a component's recipe in YAML format (Windows CMD)
The following
get-componentexample downloads a Hello World component's recipe to a file in YAML format. This command uses thecertutilutility.aws greengrassv2 get-component^--arnarn:aws:greengrass:us-west-2:675946970638:components:com.example.HelloWorld:versions:1.0.0^--recipe-output-formatYAML^--queryrecipe^--outputtext>com.example.HelloWorld-1.0.0.yaml.b64certutil-decodecom.example.HelloWorld-1.0.0.yaml.b64com.example.HelloWorld-1.0.0.yamlFor more information, see Manage components in the AWS IoT Greengrass V2 Developer Guide.
Example 3: To download a component's recipe in YAML format (Windows PowerShell)
The following
get-componentexample downloads a Hello World component's recipe to a file in YAML format. This command uses thecertutilutility.aws greengrassv2 get-component`--arnarn:aws:greengrass:us-west-2:675946970638:components:com.example.HelloWorld:versions:1.0.0`--recipe-output-formatYAML`--queryrecipe`--outputtext>com.example.HelloWorld-1.0.0.yaml.b64certutil-decodecom.example.HelloWorld-1.0.0.yaml.b64com.example.HelloWorld-1.0.0.yamlFor more information, see Manage components in the AWS IoT Greengrass V2 Developer Guide.
-
For API details, see GetComponent
in AWS CLI Command Reference.
-
- Python
-
- SDK for Python (Boto3)
-
Note
There's more on GitHub. Find the complete example and learn how to set up and run in the AWS Code Examples Repository
. def get_component( self, component_version_arn: str, recipe_output_format: str = "JSON" ) -> dict[str, Any]: """ Gets the recipe for a specific component version. :param component_version_arn: The ARN of the specific component version. :param recipe_output_format: The format for the recipe ('JSON' or 'YAML'). :return: A dictionary containing the recipe and metadata. """ try: response = self.client.get_component( arn=component_version_arn, recipeOutputFormat=recipe_output_format, ) logger.info("Retrieved component recipe for %s.", component_version_arn) return response except ClientError as err: if err.response["Error"]["Code"] == "ResourceNotFoundException": logger.error( "Component version not found. Verify the component version ARN is correct. %s", err.response["Error"]["Message"], ) raise-
For API details, see GetComponent in AWS SDK for Python (Boto3) API Reference.
-