CoreDefinition ​
The CoreDefinition resource lets you manage AWS Greengrass CoreDefinitions which define the core devices in your Greengrass group.
Minimal Example ​
Create a basic CoreDefinition with required properties and an optional initial version.
ts
import AWS from "alchemy/aws/control";
const coreDefinition = await AWS.Greengrass.CoreDefinition("myCoreDefinition", {
name: "MyCoreDefinition",
initialVersion: {
cores: [{
id: "myCoreDevice",
certificateArn: "arn:aws:iot:us-west-2:123456789012:cert/abcd1234efgh5678ijkl9012mnop3456qrst7890uvwx",
idCertificateArn: "arn:aws:iot:us-west-2:123456789012:cert/abcd1234efgh5678ijkl9012mnop3456qrst7890uvwx",
thingArn: "arn:aws:iot:us-west-2:123456789012:thing/MyCoreDevice"
}]
},
tags: {
Environment: "Production",
Team: "IoT"
}
});
Advanced Configuration ​
Configure a CoreDefinition with multiple core devices and additional settings.
ts
const advancedCoreDefinition = await AWS.Greengrass.CoreDefinition("advancedCoreDefinition", {
name: "AdvancedCoreDefinition",
initialVersion: {
cores: [{
id: "coreDevice1",
certificateArn: "arn:aws:iot:us-west-2:123456789012:cert/abcd1234efgh5678ijkl9012mnop3456qrst7890uvwx",
idCertificateArn: "arn:aws:iot:us-west-2:123456789012:cert/abcd1234efgh5678ijkl9012mnop3456qrst7890uvwx",
thingArn: "arn:aws:iot:us-west-2:123456789012:thing/CoreDevice1"
},
{
id: "coreDevice2",
certificateArn: "arn:aws:iot:us-west-2:123456789012:cert/wxyz9876mnop1234ijkl5678efgh9012qrst3456uvwx",
idCertificateArn: "arn:aws:iot:us-west-2:123456789012:cert/wxyz9876mnop1234ijkl5678efgh9012qrst3456uvwx",
thingArn: "arn:aws:iot:us-west-2:123456789012:thing/CoreDevice2"
}]
},
tags: {
Environment: "Development",
Team: "IoT"
},
adopt: true // Allow adoption of existing CoreDefinition if it already exists
});
Custom Core Device Configuration ​
Create a CoreDefinition that includes specific configurations for a core device.
ts
const customCoreDefinition = await AWS.Greengrass.CoreDefinition("customCoreDefinition", {
name: "CustomCoreDefinition",
initialVersion: {
cores: [{
id: "customCoreDevice",
certificateArn: "arn:aws:iot:us-west-2:123456789012:cert/abcd1234efgh5678ijkl9012mnop3456qrst7890uvwx",
idCertificateArn: "arn:aws:iot:us-west-2:123456789012:cert/abcd1234efgh5678ijkl9012mnop3456qrst7890uvwx",
thingArn: "arn:aws:iot:us-west-2:123456789012:thing/CustomCoreDevice",
// Additional properties can be added if needed
}]
}
});
This demonstrates how to create a CoreDefinition resource in AWS Greengrass using Alchemy, allowing you to manage your IoT devices effectively.