4105 lines
230 KiB
TypeScript
4105 lines
230 KiB
TypeScript
import * as cdk from "../../core/lib";
|
||
import * as constructs from "constructs";
|
||
import * as cfn_parse from "../../core/lib/helpers-internal";
|
||
import { ConnectorDefinitionReference, ConnectorDefinitionVersionReference, CoreDefinitionReference, CoreDefinitionVersionReference, DeviceDefinitionReference, DeviceDefinitionVersionReference, FunctionDefinitionReference, FunctionDefinitionVersionReference, GroupReference, GroupVersionReference, IConnectorDefinitionRef, IConnectorDefinitionVersionRef, ICoreDefinitionRef, ICoreDefinitionVersionRef, IDeviceDefinitionRef, IDeviceDefinitionVersionRef, IFunctionDefinitionRef, IFunctionDefinitionVersionRef, IGroupRef, IGroupVersionRef, ILoggerDefinitionRef, ILoggerDefinitionVersionRef, IResourceDefinitionRef, IResourceDefinitionVersionRef, ISubscriptionDefinitionRef, ISubscriptionDefinitionVersionRef, LoggerDefinitionReference, LoggerDefinitionVersionReference, ResourceDefinitionReference, ResourceDefinitionVersionReference, SubscriptionDefinitionReference, SubscriptionDefinitionVersionReference } from "../../interfaces/generated/aws-greengrass-interfaces.generated";
|
||
/**
|
||
* The `AWS::Greengrass::ConnectorDefinition` resource represents a connector definition for AWS IoT Greengrass .
|
||
*
|
||
* Connector definitions are used to organize your connector definition versions.
|
||
*
|
||
* Connector definitions can reference multiple connector definition versions. All connector definition versions must be associated with a connector definition. Each connector definition version can contain one or more connectors.
|
||
*
|
||
* > When you create a connector definition, you can optionally include an initial connector definition version. To associate a connector definition version later, create an [`AWS::Greengrass::ConnectorDefinitionVersion`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-connectordefinitionversion.html) resource and specify the ID of this connector definition.
|
||
* >
|
||
* > After you create the connector definition version that contains the connectors you want to deploy, you must add it to your group version. For more information, see [`AWS::Greengrass::Group`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-group.html) .
|
||
*
|
||
* @cloudformationResource AWS::Greengrass::ConnectorDefinition
|
||
* @stability external
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-connectordefinition.html
|
||
*/
|
||
export declare class CfnConnectorDefinition extends cdk.CfnResource implements cdk.IInspectable, IConnectorDefinitionRef, cdk.ITaggable {
|
||
/**
|
||
* The CloudFormation resource type name for this resource class.
|
||
*/
|
||
static readonly CFN_RESOURCE_TYPE_NAME: string;
|
||
/**
|
||
* Build a CfnConnectorDefinition from CloudFormation properties
|
||
*
|
||
* A factory method that creates a new instance of this class from an object
|
||
* containing the CloudFormation properties of this resource.
|
||
* Used in the @aws-cdk/cloudformation-include module.
|
||
*
|
||
* @internal
|
||
*/
|
||
static _fromCloudFormation(scope: constructs.Construct, id: string, resourceAttributes: any, options: cfn_parse.FromCloudFormationOptions): CfnConnectorDefinition;
|
||
/**
|
||
* Checks whether the given object is a CfnConnectorDefinition
|
||
*/
|
||
static isCfnConnectorDefinition(x: any): x is CfnConnectorDefinition;
|
||
/**
|
||
* Creates a new IConnectorDefinitionRef from an ARN
|
||
*/
|
||
static fromConnectorDefinitionArn(scope: constructs.Construct, id: string, arn: string): IConnectorDefinitionRef;
|
||
/**
|
||
* Creates a new IConnectorDefinitionRef from a connectorDefinitionId
|
||
*/
|
||
static fromConnectorDefinitionId(scope: constructs.Construct, id: string, connectorDefinitionId: string): IConnectorDefinitionRef;
|
||
static arnForConnectorDefinition(resource: IConnectorDefinitionRef): string;
|
||
/**
|
||
* The connector definition version to include when the connector definition is created.
|
||
*/
|
||
private _initialVersion?;
|
||
/**
|
||
* The name of the connector definition.
|
||
*/
|
||
private _name;
|
||
/**
|
||
* Tag Manager which manages the tags for this resource
|
||
*/
|
||
readonly tags: cdk.TagManager;
|
||
/**
|
||
* Application-specific metadata to attach to the connector definition.
|
||
*/
|
||
private _tagsRaw?;
|
||
protected readonly cfnPropertyNames: Record<string, string>;
|
||
/**
|
||
* Create a new `AWS::Greengrass::ConnectorDefinition`.
|
||
*
|
||
* @param scope Scope in which this resource is defined
|
||
* @param id Construct identifier for this resource (unique in its scope)
|
||
* @param props Resource properties
|
||
*/
|
||
constructor(scope: constructs.Construct, id: string, props: CfnConnectorDefinitionProps);
|
||
get connectorDefinitionRef(): ConnectorDefinitionReference;
|
||
/**
|
||
* The connector definition version to include when the connector definition is created.
|
||
*/
|
||
get initialVersion(): CfnConnectorDefinition.ConnectorDefinitionVersionProperty | cdk.IResolvable | undefined;
|
||
/**
|
||
* The connector definition version to include when the connector definition is created.
|
||
*/
|
||
set initialVersion(value: CfnConnectorDefinition.ConnectorDefinitionVersionProperty | cdk.IResolvable | undefined);
|
||
/**
|
||
* The name of the connector definition.
|
||
*/
|
||
get name(): string;
|
||
/**
|
||
* The name of the connector definition.
|
||
*/
|
||
set name(value: string);
|
||
/**
|
||
* Application-specific metadata to attach to the connector definition.
|
||
*/
|
||
get tagsRaw(): any | undefined;
|
||
/**
|
||
* Application-specific metadata to attach to the connector definition.
|
||
*/
|
||
set tagsRaw(value: any | undefined);
|
||
/**
|
||
* The Amazon Resource Name (ARN) of the `ConnectorDefinition` , such as `arn:aws:greengrass:us-east-1: :/greengrass/definition/connectors/1234a5b6-78cd-901e-2fgh-3i45j6k178l9` .
|
||
*
|
||
* @cloudformationAttribute Arn
|
||
*/
|
||
get attrArn(): string;
|
||
/**
|
||
* The ID of the `ConnectorDefinition` , such as `1234a5b6-78cd-901e-2fgh-3i45j6k178l9` .
|
||
*
|
||
* @cloudformationAttribute Id
|
||
*/
|
||
get attrId(): string;
|
||
/**
|
||
* The ARN of the last `ConnectorDefinitionVersion` that was added to the `ConnectorDefinition` , such as `arn:aws:greengrass:us-east-1: :/greengrass/definition/connectors/1234a5b6-78cd-901e-2fgh-3i45j6k178l9/versions/9876ac30-4bdb-4f9d-95af-b5fdb66be1a2` .
|
||
*
|
||
* @cloudformationAttribute LatestVersionArn
|
||
*/
|
||
get attrLatestVersionArn(): string;
|
||
/**
|
||
* The name of the `ConnectorDefinition` , such as `MyConnectorDefinition` .
|
||
*
|
||
* @cloudformationAttribute Name
|
||
*/
|
||
get attrName(): string;
|
||
protected get cfnProperties(): Record<string, any>;
|
||
/**
|
||
* Examines the CloudFormation resource and discloses attributes
|
||
*
|
||
* @param inspector tree inspector to collect and process attributes
|
||
*/
|
||
inspect(inspector: cdk.TreeInspector): void;
|
||
protected renderProperties(props: Record<string, any>): Record<string, any>;
|
||
}
|
||
export declare namespace CfnConnectorDefinition {
|
||
/**
|
||
* A connector definition version contains a list of connectors.
|
||
*
|
||
* > After you create a connector definition version that contains the connectors you want to deploy, you must add it to your group version. For more information, see [`AWS::Greengrass::Group`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-group.html) .
|
||
*
|
||
* In an CloudFormation template, `ConnectorDefinitionVersion` is the property type of the `InitialVersion` property in the [`AWS::Greengrass::ConnectorDefinition`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-connectordefinition.html) resource.
|
||
*
|
||
* @struct
|
||
* @stability external
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-connectordefinition-connectordefinitionversion.html
|
||
*/
|
||
interface ConnectorDefinitionVersionProperty {
|
||
/**
|
||
* The connectors in this version.
|
||
*
|
||
* Only one instance of a given connector can be added to a connector definition version at a time.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-connectordefinition-connectordefinitionversion.html#cfn-greengrass-connectordefinition-connectordefinitionversion-connectors
|
||
*/
|
||
readonly connectors: Array<CfnConnectorDefinition.ConnectorProperty | cdk.IResolvable> | cdk.IResolvable;
|
||
}
|
||
/**
|
||
* Connectors are modules that provide built-in integration with local infrastructure, device protocols, AWS , and other cloud services.
|
||
*
|
||
* For more information, see [Integrate with Services and Protocols Using Greengrass Connectors](https://docs.aws.amazon.com/greengrass/v1/developerguide/connectors.html) in the *Developer Guide* .
|
||
*
|
||
* In an CloudFormation template, the `Connectors` property of the [`ConnectorDefinitionVersion`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-connectordefinition-connectordefinitionversion.html) property type contains a list of `Connector` property types.
|
||
*
|
||
* @struct
|
||
* @stability external
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-connectordefinition-connector.html
|
||
*/
|
||
interface ConnectorProperty {
|
||
/**
|
||
* The Amazon Resource Name (ARN) of the connector.
|
||
*
|
||
* For more information about connectors provided by AWS , see [Greengrass Connectors Provided by AWS](https://docs.aws.amazon.com/greengrass/v1/developerguide/connectors-list.html) .
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-connectordefinition-connector.html#cfn-greengrass-connectordefinition-connector-connectorarn
|
||
*/
|
||
readonly connectorArn: string;
|
||
/**
|
||
* A descriptive or arbitrary ID for the connector.
|
||
*
|
||
* This value must be unique within the connector definition version. Maximum length is 128 characters with pattern `[a-zA-Z0-9:_-]+` .
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-connectordefinition-connector.html#cfn-greengrass-connectordefinition-connector-id
|
||
*/
|
||
readonly id: string;
|
||
/**
|
||
* The parameters or configuration used by the connector.
|
||
*
|
||
* For more information about connectors provided by AWS , see [Greengrass Connectors Provided by AWS](https://docs.aws.amazon.com/greengrass/v1/developerguide/connectors-list.html) .
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-connectordefinition-connector.html#cfn-greengrass-connectordefinition-connector-parameters
|
||
*/
|
||
readonly parameters?: any | cdk.IResolvable;
|
||
}
|
||
}
|
||
/**
|
||
* Properties for defining a `CfnConnectorDefinition`
|
||
*
|
||
* @struct
|
||
* @stability external
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-connectordefinition.html
|
||
*/
|
||
export interface CfnConnectorDefinitionProps {
|
||
/**
|
||
* The connector definition version to include when the connector definition is created.
|
||
*
|
||
* A connector definition version contains a list of [`connector`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-connectordefinition-connector.html) property types.
|
||
*
|
||
* > To associate a connector definition version after the connector definition is created, create an [`AWS::Greengrass::ConnectorDefinitionVersion`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-connectordefinitionversion.html) resource and specify the ID of this connector definition.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-connectordefinition.html#cfn-greengrass-connectordefinition-initialversion
|
||
*/
|
||
readonly initialVersion?: CfnConnectorDefinition.ConnectorDefinitionVersionProperty | cdk.IResolvable;
|
||
/**
|
||
* The name of the connector definition.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-connectordefinition.html#cfn-greengrass-connectordefinition-name
|
||
*/
|
||
readonly name: string;
|
||
/**
|
||
* Application-specific metadata to attach to the connector definition.
|
||
*
|
||
* You can use tags in IAM policies to control access to AWS IoT Greengrass resources. You can also use tags to categorize your resources. For more information, see [Tagging Your AWS IoT Greengrass Resources](https://docs.aws.amazon.com/greengrass/v1/developerguide/tagging.html) in the *Developer Guide* .
|
||
*
|
||
* This `Json` property type is processed as a map of key-value pairs. It uses the following format, which is different from most `Tags` implementations in CloudFormation templates.
|
||
*
|
||
* ```json
|
||
* "Tags": { "KeyName0": "value", "KeyName1": "value", "KeyName2": "value"
|
||
* }
|
||
* ```
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-connectordefinition.html#cfn-greengrass-connectordefinition-tags
|
||
*/
|
||
readonly tags?: any;
|
||
}
|
||
/**
|
||
* The `AWS::Greengrass::ConnectorDefinitionVersion` resource represents a connector definition version for AWS IoT Greengrass .
|
||
*
|
||
* A connector definition version contains a list of connectors.
|
||
*
|
||
* > To create a connector definition version, you must specify the ID of the connector definition that you want to associate with the version. For information about creating a connector definition, see [`AWS::Greengrass::ConnectorDefinition`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-connectordefinition.html) .
|
||
* >
|
||
* > After you create a connector definition version that contains the connectors you want to deploy, you must add it to your group version. For more information, see [`AWS::Greengrass::Group`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-group.html) .
|
||
*
|
||
* @cloudformationResource AWS::Greengrass::ConnectorDefinitionVersion
|
||
* @stability external
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-connectordefinitionversion.html
|
||
*/
|
||
export declare class CfnConnectorDefinitionVersion extends cdk.CfnResource implements cdk.IInspectable, IConnectorDefinitionVersionRef {
|
||
/**
|
||
* The CloudFormation resource type name for this resource class.
|
||
*/
|
||
static readonly CFN_RESOURCE_TYPE_NAME: string;
|
||
/**
|
||
* Build a CfnConnectorDefinitionVersion from CloudFormation properties
|
||
*
|
||
* A factory method that creates a new instance of this class from an object
|
||
* containing the CloudFormation properties of this resource.
|
||
* Used in the @aws-cdk/cloudformation-include module.
|
||
*
|
||
* @internal
|
||
*/
|
||
static _fromCloudFormation(scope: constructs.Construct, id: string, resourceAttributes: any, options: cfn_parse.FromCloudFormationOptions): CfnConnectorDefinitionVersion;
|
||
/**
|
||
* Checks whether the given object is a CfnConnectorDefinitionVersion
|
||
*/
|
||
static isCfnConnectorDefinitionVersion(x: any): x is CfnConnectorDefinitionVersion;
|
||
/**
|
||
* The ID of the connector definition associated with this version.
|
||
*/
|
||
private _connectorDefinitionId;
|
||
/**
|
||
* The connectors in this version.
|
||
*/
|
||
private _connectors;
|
||
protected readonly cfnPropertyNames: Record<string, string>;
|
||
/**
|
||
* Create a new `AWS::Greengrass::ConnectorDefinitionVersion`.
|
||
*
|
||
* @param scope Scope in which this resource is defined
|
||
* @param id Construct identifier for this resource (unique in its scope)
|
||
* @param props Resource properties
|
||
*/
|
||
constructor(scope: constructs.Construct, id: string, props: CfnConnectorDefinitionVersionProps);
|
||
get connectorDefinitionVersionRef(): ConnectorDefinitionVersionReference;
|
||
/**
|
||
* The ID of the connector definition associated with this version.
|
||
*/
|
||
get connectorDefinitionId(): string;
|
||
/**
|
||
* The ID of the connector definition associated with this version.
|
||
*/
|
||
set connectorDefinitionId(value: string);
|
||
/**
|
||
* The connectors in this version.
|
||
*/
|
||
get connectors(): Array<CfnConnectorDefinitionVersion.ConnectorProperty | cdk.IResolvable> | cdk.IResolvable;
|
||
/**
|
||
* The connectors in this version.
|
||
*/
|
||
set connectors(value: Array<CfnConnectorDefinitionVersion.ConnectorProperty | cdk.IResolvable> | cdk.IResolvable);
|
||
/**
|
||
* @cloudformationAttribute Id
|
||
*/
|
||
get attrId(): string;
|
||
protected get cfnProperties(): Record<string, any>;
|
||
/**
|
||
* Examines the CloudFormation resource and discloses attributes
|
||
*
|
||
* @param inspector tree inspector to collect and process attributes
|
||
*/
|
||
inspect(inspector: cdk.TreeInspector): void;
|
||
protected renderProperties(props: Record<string, any>): Record<string, any>;
|
||
}
|
||
export declare namespace CfnConnectorDefinitionVersion {
|
||
/**
|
||
* Connectors are modules that provide built-in integration with local infrastructure, device protocols, AWS , and other cloud services.
|
||
*
|
||
* For more information, see [Integrate with Services and Protocols Using Greengrass Connectors](https://docs.aws.amazon.com/greengrass/v1/developerguide/connectors.html) in the *Developer Guide* .
|
||
*
|
||
* In an CloudFormation template, the `Connectors` property of the [`AWS::Greengrass::ConnectorDefinitionVersion`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-connectordefinitionversion.html) resource contains a list of `Connector` property types.
|
||
*
|
||
* @struct
|
||
* @stability external
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-connectordefinitionversion-connector.html
|
||
*/
|
||
interface ConnectorProperty {
|
||
/**
|
||
* The Amazon Resource Name (ARN) of the connector.
|
||
*
|
||
* For more information about connectors provided by AWS , see [Greengrass Connectors Provided by AWS](https://docs.aws.amazon.com/greengrass/v1/developerguide/connectors-list.html) .
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-connectordefinitionversion-connector.html#cfn-greengrass-connectordefinitionversion-connector-connectorarn
|
||
*/
|
||
readonly connectorArn: string;
|
||
/**
|
||
* A descriptive or arbitrary ID for the connector.
|
||
*
|
||
* This value must be unique within the connector definition version. Maximum length is 128 characters with pattern `[a-zA-Z0-9:_-]+` .
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-connectordefinitionversion-connector.html#cfn-greengrass-connectordefinitionversion-connector-id
|
||
*/
|
||
readonly id: string;
|
||
/**
|
||
* The parameters or configuration that the connector uses.
|
||
*
|
||
* For more information about connectors provided by AWS , see [Greengrass Connectors Provided by AWS](https://docs.aws.amazon.com/greengrass/v1/developerguide/connectors-list.html) .
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-connectordefinitionversion-connector.html#cfn-greengrass-connectordefinitionversion-connector-parameters
|
||
*/
|
||
readonly parameters?: any | cdk.IResolvable;
|
||
}
|
||
}
|
||
/**
|
||
* Properties for defining a `CfnConnectorDefinitionVersion`
|
||
*
|
||
* @struct
|
||
* @stability external
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-connectordefinitionversion.html
|
||
*/
|
||
export interface CfnConnectorDefinitionVersionProps {
|
||
/**
|
||
* The ID of the connector definition associated with this version.
|
||
*
|
||
* This value is a GUID.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-connectordefinitionversion.html#cfn-greengrass-connectordefinitionversion-connectordefinitionid
|
||
*/
|
||
readonly connectorDefinitionId: string;
|
||
/**
|
||
* The connectors in this version.
|
||
*
|
||
* Only one instance of a given connector can be added to the connector definition version at a time.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-connectordefinitionversion.html#cfn-greengrass-connectordefinitionversion-connectors
|
||
*/
|
||
readonly connectors: Array<CfnConnectorDefinitionVersion.ConnectorProperty | cdk.IResolvable> | cdk.IResolvable;
|
||
}
|
||
/**
|
||
* The `AWS::Greengrass::CoreDefinition` resource represents a core definition for AWS IoT Greengrass .
|
||
*
|
||
* Core definitions are used to organize your core definition versions.
|
||
*
|
||
* Core definitions can reference multiple core definition versions. All core definition versions must be associated with a core definition. Each core definition version can contain one Greengrass core.
|
||
*
|
||
* > When you create a core definition, you can optionally include an initial core definition version. To associate a core definition version later, create an [`AWS::Greengrass::CoreDefinitionVersion`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-coredefinitionversion.html) resource and specify the ID of this core definition.
|
||
* >
|
||
* > After you create the core definition version that contains the core you want to deploy, you must add it to your group version. For more information, see [`AWS::Greengrass::Group`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-group.html) .
|
||
*
|
||
* @cloudformationResource AWS::Greengrass::CoreDefinition
|
||
* @stability external
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-coredefinition.html
|
||
*/
|
||
export declare class CfnCoreDefinition extends cdk.CfnResource implements cdk.IInspectable, ICoreDefinitionRef, cdk.ITaggable {
|
||
/**
|
||
* The CloudFormation resource type name for this resource class.
|
||
*/
|
||
static readonly CFN_RESOURCE_TYPE_NAME: string;
|
||
/**
|
||
* Build a CfnCoreDefinition from CloudFormation properties
|
||
*
|
||
* A factory method that creates a new instance of this class from an object
|
||
* containing the CloudFormation properties of this resource.
|
||
* Used in the @aws-cdk/cloudformation-include module.
|
||
*
|
||
* @internal
|
||
*/
|
||
static _fromCloudFormation(scope: constructs.Construct, id: string, resourceAttributes: any, options: cfn_parse.FromCloudFormationOptions): CfnCoreDefinition;
|
||
/**
|
||
* Checks whether the given object is a CfnCoreDefinition
|
||
*/
|
||
static isCfnCoreDefinition(x: any): x is CfnCoreDefinition;
|
||
/**
|
||
* Creates a new ICoreDefinitionRef from an ARN
|
||
*/
|
||
static fromCoreDefinitionArn(scope: constructs.Construct, id: string, arn: string): ICoreDefinitionRef;
|
||
/**
|
||
* Creates a new ICoreDefinitionRef from a coreDefinitionId
|
||
*/
|
||
static fromCoreDefinitionId(scope: constructs.Construct, id: string, coreDefinitionId: string): ICoreDefinitionRef;
|
||
static arnForCoreDefinition(resource: ICoreDefinitionRef): string;
|
||
/**
|
||
* The core definition version to include when the core definition is created.
|
||
*/
|
||
private _initialVersion?;
|
||
/**
|
||
* The name of the core definition.
|
||
*/
|
||
private _name;
|
||
/**
|
||
* Tag Manager which manages the tags for this resource
|
||
*/
|
||
readonly tags: cdk.TagManager;
|
||
/**
|
||
* Application-specific metadata to attach to the core definition.
|
||
*/
|
||
private _tagsRaw?;
|
||
protected readonly cfnPropertyNames: Record<string, string>;
|
||
/**
|
||
* Create a new `AWS::Greengrass::CoreDefinition`.
|
||
*
|
||
* @param scope Scope in which this resource is defined
|
||
* @param id Construct identifier for this resource (unique in its scope)
|
||
* @param props Resource properties
|
||
*/
|
||
constructor(scope: constructs.Construct, id: string, props: CfnCoreDefinitionProps);
|
||
get coreDefinitionRef(): CoreDefinitionReference;
|
||
/**
|
||
* The core definition version to include when the core definition is created.
|
||
*/
|
||
get initialVersion(): CfnCoreDefinition.CoreDefinitionVersionProperty | cdk.IResolvable | undefined;
|
||
/**
|
||
* The core definition version to include when the core definition is created.
|
||
*/
|
||
set initialVersion(value: CfnCoreDefinition.CoreDefinitionVersionProperty | cdk.IResolvable | undefined);
|
||
/**
|
||
* The name of the core definition.
|
||
*/
|
||
get name(): string;
|
||
/**
|
||
* The name of the core definition.
|
||
*/
|
||
set name(value: string);
|
||
/**
|
||
* Application-specific metadata to attach to the core definition.
|
||
*/
|
||
get tagsRaw(): any | undefined;
|
||
/**
|
||
* Application-specific metadata to attach to the core definition.
|
||
*/
|
||
set tagsRaw(value: any | undefined);
|
||
/**
|
||
* The Amazon Resource Name (ARN) of the `CoreDefinition` , such as `arn:aws:greengrass:us-east-1: :/greengrass/definition/cores/1234a5b6-78cd-901e-2fgh-3i45j6k178l9` .
|
||
*
|
||
* @cloudformationAttribute Arn
|
||
*/
|
||
get attrArn(): string;
|
||
/**
|
||
* The ID of the `CoreDefinition` , such as `1234a5b6-78cd-901e-2fgh-3i45j6k178l9` .
|
||
*
|
||
* @cloudformationAttribute Id
|
||
*/
|
||
get attrId(): string;
|
||
/**
|
||
* The ARN of the last `CoreDefinitionVersion` that was added to the `CoreDefinition` , such as `arn:aws:greengrass:us-east-1: :/greengrass/definition/cores/1234a5b6-78cd-901e-2fgh-3i45j6k178l9/versions/9876ac30-4bdb-4f9d-95af-b5fdb66be1a2` .
|
||
*
|
||
* @cloudformationAttribute LatestVersionArn
|
||
*/
|
||
get attrLatestVersionArn(): string;
|
||
/**
|
||
* The name of the `CoreDefinition` , such as `MyCoreDefinition` .
|
||
*
|
||
* @cloudformationAttribute Name
|
||
*/
|
||
get attrName(): string;
|
||
protected get cfnProperties(): Record<string, any>;
|
||
/**
|
||
* Examines the CloudFormation resource and discloses attributes
|
||
*
|
||
* @param inspector tree inspector to collect and process attributes
|
||
*/
|
||
inspect(inspector: cdk.TreeInspector): void;
|
||
protected renderProperties(props: Record<string, any>): Record<string, any>;
|
||
}
|
||
export declare namespace CfnCoreDefinition {
|
||
/**
|
||
* A core definition version contains a Greengrass [core](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-coredefinition-core.html) .
|
||
*
|
||
* > After you create a core definition version that contains the core you want to deploy, you must add it to your group version. For more information, see [`AWS::Greengrass::Group`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-group.html) .
|
||
*
|
||
* In an CloudFormation template, `CoreDefinitionVersion` is the property type of the `InitialVersion` property in the [`AWS::Greengrass::CoreDefinition`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-coredefinition.html) resource.
|
||
*
|
||
* @struct
|
||
* @stability external
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-coredefinition-coredefinitionversion.html
|
||
*/
|
||
interface CoreDefinitionVersionProperty {
|
||
/**
|
||
* The Greengrass core in this version.
|
||
*
|
||
* Currently, the `Cores` property for a core definition version can contain only one core.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-coredefinition-coredefinitionversion.html#cfn-greengrass-coredefinition-coredefinitionversion-cores
|
||
*/
|
||
readonly cores: Array<CfnCoreDefinition.CoreProperty | cdk.IResolvable> | cdk.IResolvable;
|
||
}
|
||
/**
|
||
* A core is an AWS IoT device that runs the AWS IoT Greengrass core software and manages local processes for a Greengrass group.
|
||
*
|
||
* For more information, see [What Is AWS IoT Greengrass ?](https://docs.aws.amazon.com/greengrass/v1/developerguide/what-is-gg.html) in the *Developer Guide* .
|
||
*
|
||
* In an CloudFormation template, the `Cores` property of the [`CoreDefinitionVersion`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-coredefinition-coredefinitionversion.html) property type contains a list of `Core` property types. Currently, the list can contain only one core.
|
||
*
|
||
* @struct
|
||
* @stability external
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-coredefinition-core.html
|
||
*/
|
||
interface CoreProperty {
|
||
/**
|
||
* The Amazon Resource Name (ARN) of the device certificate for the core.
|
||
*
|
||
* This X.509 certificate is used to authenticate the core with AWS IoT and AWS IoT Greengrass services.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-coredefinition-core.html#cfn-greengrass-coredefinition-core-certificatearn
|
||
*/
|
||
readonly certificateArn: string;
|
||
/**
|
||
* A descriptive or arbitrary ID for the core.
|
||
*
|
||
* This value must be unique within the core definition version. Maximum length is 128 characters with pattern `[a-zA-Z0-9:_-]+` .
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-coredefinition-core.html#cfn-greengrass-coredefinition-core-id
|
||
*/
|
||
readonly id: string;
|
||
/**
|
||
* Indicates whether the core's local shadow is synced with the cloud automatically.
|
||
*
|
||
* The default is false.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-coredefinition-core.html#cfn-greengrass-coredefinition-core-syncshadow
|
||
*/
|
||
readonly syncShadow?: boolean | cdk.IResolvable;
|
||
/**
|
||
* The ARN of the core, which is an AWS IoT device (thing).
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-coredefinition-core.html#cfn-greengrass-coredefinition-core-thingarn
|
||
*/
|
||
readonly thingArn: string;
|
||
}
|
||
}
|
||
/**
|
||
* Properties for defining a `CfnCoreDefinition`
|
||
*
|
||
* @struct
|
||
* @stability external
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-coredefinition.html
|
||
*/
|
||
export interface CfnCoreDefinitionProps {
|
||
/**
|
||
* The core definition version to include when the core definition is created.
|
||
*
|
||
* Currently, a core definition version can contain only one [`core`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-coredefinition-core.html) .
|
||
*
|
||
* > To associate a core definition version after the core definition is created, create an [`AWS::Greengrass::CoreDefinitionVersion`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-coredefinitionversion.html) resource and specify the ID of this core definition.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-coredefinition.html#cfn-greengrass-coredefinition-initialversion
|
||
*/
|
||
readonly initialVersion?: CfnCoreDefinition.CoreDefinitionVersionProperty | cdk.IResolvable;
|
||
/**
|
||
* The name of the core definition.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-coredefinition.html#cfn-greengrass-coredefinition-name
|
||
*/
|
||
readonly name: string;
|
||
/**
|
||
* Application-specific metadata to attach to the core definition.
|
||
*
|
||
* You can use tags in IAM policies to control access to AWS IoT Greengrass resources. You can also use tags to categorize your resources. For more information, see [Tagging Your AWS IoT Greengrass Resources](https://docs.aws.amazon.com/greengrass/v1/developerguide/tagging.html) in the *Developer Guide* .
|
||
*
|
||
* This `Json` property type is processed as a map of key-value pairs. It uses the following format, which is different from most `Tags` implementations in CloudFormation templates.
|
||
*
|
||
* ```json
|
||
* "Tags": { "KeyName0": "value", "KeyName1": "value", "KeyName2": "value"
|
||
* }
|
||
* ```
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-coredefinition.html#cfn-greengrass-coredefinition-tags
|
||
*/
|
||
readonly tags?: any;
|
||
}
|
||
/**
|
||
* The `AWS::Greengrass::CoreDefinitionVersion` resource represents a core definition version for AWS IoT Greengrass .
|
||
*
|
||
* A core definition version contains a Greengrass core.
|
||
*
|
||
* > To create a core definition version, you must specify the ID of the core definition that you want to associate with the version. For information about creating a core definition, see [`AWS::Greengrass::CoreDefinition`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-coredefinition.html) .
|
||
* >
|
||
* > After you create a core definition version that contains the core you want to deploy, you must add it to your group version. For more information, see [`AWS::Greengrass::Group`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-group.html) .
|
||
*
|
||
* @cloudformationResource AWS::Greengrass::CoreDefinitionVersion
|
||
* @stability external
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-coredefinitionversion.html
|
||
*/
|
||
export declare class CfnCoreDefinitionVersion extends cdk.CfnResource implements cdk.IInspectable, ICoreDefinitionVersionRef {
|
||
/**
|
||
* The CloudFormation resource type name for this resource class.
|
||
*/
|
||
static readonly CFN_RESOURCE_TYPE_NAME: string;
|
||
/**
|
||
* Build a CfnCoreDefinitionVersion from CloudFormation properties
|
||
*
|
||
* A factory method that creates a new instance of this class from an object
|
||
* containing the CloudFormation properties of this resource.
|
||
* Used in the @aws-cdk/cloudformation-include module.
|
||
*
|
||
* @internal
|
||
*/
|
||
static _fromCloudFormation(scope: constructs.Construct, id: string, resourceAttributes: any, options: cfn_parse.FromCloudFormationOptions): CfnCoreDefinitionVersion;
|
||
/**
|
||
* Checks whether the given object is a CfnCoreDefinitionVersion
|
||
*/
|
||
static isCfnCoreDefinitionVersion(x: any): x is CfnCoreDefinitionVersion;
|
||
/**
|
||
* The ID of the core definition associated with this version.
|
||
*/
|
||
private _coreDefinitionId;
|
||
/**
|
||
* The Greengrass core in this version.
|
||
*/
|
||
private _cores;
|
||
protected readonly cfnPropertyNames: Record<string, string>;
|
||
/**
|
||
* Create a new `AWS::Greengrass::CoreDefinitionVersion`.
|
||
*
|
||
* @param scope Scope in which this resource is defined
|
||
* @param id Construct identifier for this resource (unique in its scope)
|
||
* @param props Resource properties
|
||
*/
|
||
constructor(scope: constructs.Construct, id: string, props: CfnCoreDefinitionVersionProps);
|
||
get coreDefinitionVersionRef(): CoreDefinitionVersionReference;
|
||
/**
|
||
* The ID of the core definition associated with this version.
|
||
*/
|
||
get coreDefinitionId(): string;
|
||
/**
|
||
* The ID of the core definition associated with this version.
|
||
*/
|
||
set coreDefinitionId(value: string);
|
||
/**
|
||
* The Greengrass core in this version.
|
||
*/
|
||
get cores(): Array<CfnCoreDefinitionVersion.CoreProperty | cdk.IResolvable> | cdk.IResolvable;
|
||
/**
|
||
* The Greengrass core in this version.
|
||
*/
|
||
set cores(value: Array<CfnCoreDefinitionVersion.CoreProperty | cdk.IResolvable> | cdk.IResolvable);
|
||
/**
|
||
* @cloudformationAttribute Id
|
||
*/
|
||
get attrId(): string;
|
||
protected get cfnProperties(): Record<string, any>;
|
||
/**
|
||
* Examines the CloudFormation resource and discloses attributes
|
||
*
|
||
* @param inspector tree inspector to collect and process attributes
|
||
*/
|
||
inspect(inspector: cdk.TreeInspector): void;
|
||
protected renderProperties(props: Record<string, any>): Record<string, any>;
|
||
}
|
||
export declare namespace CfnCoreDefinitionVersion {
|
||
/**
|
||
* A core is an AWS IoT device that runs the AWS IoT Greengrass core software and manages local processes for a Greengrass group.
|
||
*
|
||
* For more information, see [What Is AWS IoT Greengrass ?](https://docs.aws.amazon.com/greengrass/v1/developerguide/what-is-gg.html) in the *Developer Guide* .
|
||
*
|
||
* In an CloudFormation template, the `Cores` property of the [`AWS::Greengrass::CoreDefinitionVersion`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-coredefinitionversion.html) resource contains a list of `Core` property types. Currently, the list can contain only one core.
|
||
*
|
||
* @struct
|
||
* @stability external
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-coredefinitionversion-core.html
|
||
*/
|
||
interface CoreProperty {
|
||
/**
|
||
* The ARN of the device certificate for the core.
|
||
*
|
||
* This X.509 certificate is used to authenticate the core with AWS IoT and AWS IoT Greengrass services.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-coredefinitionversion-core.html#cfn-greengrass-coredefinitionversion-core-certificatearn
|
||
*/
|
||
readonly certificateArn: string;
|
||
/**
|
||
* A descriptive or arbitrary ID for the core.
|
||
*
|
||
* This value must be unique within the core definition version. Maximum length is 128 characters with pattern `[a-zA-Z0-9:_-]+` .
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-coredefinitionversion-core.html#cfn-greengrass-coredefinitionversion-core-id
|
||
*/
|
||
readonly id: string;
|
||
/**
|
||
* Indicates whether the core's local shadow is synced with the cloud automatically.
|
||
*
|
||
* The default is false.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-coredefinitionversion-core.html#cfn-greengrass-coredefinitionversion-core-syncshadow
|
||
*/
|
||
readonly syncShadow?: boolean | cdk.IResolvable;
|
||
/**
|
||
* The Amazon Resource Name (ARN) of the core, which is an AWS IoT device (thing).
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-coredefinitionversion-core.html#cfn-greengrass-coredefinitionversion-core-thingarn
|
||
*/
|
||
readonly thingArn: string;
|
||
}
|
||
}
|
||
/**
|
||
* Properties for defining a `CfnCoreDefinitionVersion`
|
||
*
|
||
* @struct
|
||
* @stability external
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-coredefinitionversion.html
|
||
*/
|
||
export interface CfnCoreDefinitionVersionProps {
|
||
/**
|
||
* The ID of the core definition associated with this version.
|
||
*
|
||
* This value is a GUID.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-coredefinitionversion.html#cfn-greengrass-coredefinitionversion-coredefinitionid
|
||
*/
|
||
readonly coreDefinitionId: string;
|
||
/**
|
||
* The Greengrass core in this version.
|
||
*
|
||
* Currently, the `Cores` property for a core definition version can contain only one core.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-coredefinitionversion.html#cfn-greengrass-coredefinitionversion-cores
|
||
*/
|
||
readonly cores: Array<CfnCoreDefinitionVersion.CoreProperty | cdk.IResolvable> | cdk.IResolvable;
|
||
}
|
||
/**
|
||
* The `AWS::Greengrass::DeviceDefinition` resource represents a device definition for AWS IoT Greengrass .
|
||
*
|
||
* Device definitions are used to organize your device definition versions.
|
||
*
|
||
* Device definitions can reference multiple device definition versions. All device definition versions must be associated with a device definition. Each device definition version can contain one or more devices.
|
||
*
|
||
* > When you create a device definition, you can optionally include an initial device definition version. To associate a device definition version later, create an [`AWS::Greengrass::DeviceDefinitionVersion`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-devicedefinitionversion.html) resource and specify the ID of this device definition.
|
||
* >
|
||
* > After you create the device definition version that contains the devices you want to deploy, you must add it to your group version. For more information, see [`AWS::Greengrass::Group`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-group.html) .
|
||
*
|
||
* @cloudformationResource AWS::Greengrass::DeviceDefinition
|
||
* @stability external
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-devicedefinition.html
|
||
*/
|
||
export declare class CfnDeviceDefinition extends cdk.CfnResource implements cdk.IInspectable, IDeviceDefinitionRef, cdk.ITaggable {
|
||
/**
|
||
* The CloudFormation resource type name for this resource class.
|
||
*/
|
||
static readonly CFN_RESOURCE_TYPE_NAME: string;
|
||
/**
|
||
* Build a CfnDeviceDefinition from CloudFormation properties
|
||
*
|
||
* A factory method that creates a new instance of this class from an object
|
||
* containing the CloudFormation properties of this resource.
|
||
* Used in the @aws-cdk/cloudformation-include module.
|
||
*
|
||
* @internal
|
||
*/
|
||
static _fromCloudFormation(scope: constructs.Construct, id: string, resourceAttributes: any, options: cfn_parse.FromCloudFormationOptions): CfnDeviceDefinition;
|
||
/**
|
||
* Checks whether the given object is a CfnDeviceDefinition
|
||
*/
|
||
static isCfnDeviceDefinition(x: any): x is CfnDeviceDefinition;
|
||
/**
|
||
* Creates a new IDeviceDefinitionRef from an ARN
|
||
*/
|
||
static fromDeviceDefinitionArn(scope: constructs.Construct, id: string, arn: string): IDeviceDefinitionRef;
|
||
/**
|
||
* Creates a new IDeviceDefinitionRef from a deviceDefinitionId
|
||
*/
|
||
static fromDeviceDefinitionId(scope: constructs.Construct, id: string, deviceDefinitionId: string): IDeviceDefinitionRef;
|
||
static arnForDeviceDefinition(resource: IDeviceDefinitionRef): string;
|
||
/**
|
||
* The device definition version to include when the device definition is created.
|
||
*/
|
||
private _initialVersion?;
|
||
/**
|
||
* The name of the device definition.
|
||
*/
|
||
private _name;
|
||
/**
|
||
* Tag Manager which manages the tags for this resource
|
||
*/
|
||
readonly tags: cdk.TagManager;
|
||
/**
|
||
* Application-specific metadata to attach to the device definition.
|
||
*/
|
||
private _tagsRaw?;
|
||
protected readonly cfnPropertyNames: Record<string, string>;
|
||
/**
|
||
* Create a new `AWS::Greengrass::DeviceDefinition`.
|
||
*
|
||
* @param scope Scope in which this resource is defined
|
||
* @param id Construct identifier for this resource (unique in its scope)
|
||
* @param props Resource properties
|
||
*/
|
||
constructor(scope: constructs.Construct, id: string, props: CfnDeviceDefinitionProps);
|
||
get deviceDefinitionRef(): DeviceDefinitionReference;
|
||
/**
|
||
* The device definition version to include when the device definition is created.
|
||
*/
|
||
get initialVersion(): CfnDeviceDefinition.DeviceDefinitionVersionProperty | cdk.IResolvable | undefined;
|
||
/**
|
||
* The device definition version to include when the device definition is created.
|
||
*/
|
||
set initialVersion(value: CfnDeviceDefinition.DeviceDefinitionVersionProperty | cdk.IResolvable | undefined);
|
||
/**
|
||
* The name of the device definition.
|
||
*/
|
||
get name(): string;
|
||
/**
|
||
* The name of the device definition.
|
||
*/
|
||
set name(value: string);
|
||
/**
|
||
* Application-specific metadata to attach to the device definition.
|
||
*/
|
||
get tagsRaw(): any | undefined;
|
||
/**
|
||
* Application-specific metadata to attach to the device definition.
|
||
*/
|
||
set tagsRaw(value: any | undefined);
|
||
/**
|
||
* The Amazon Resource Name (ARN) of the `DeviceDefinition` , such as `arn:aws:greengrass:us-east-1: :/greengrass/definition/devices/1234a5b6-78cd-901e-2fgh-3i45j6k178l9` .
|
||
*
|
||
* @cloudformationAttribute Arn
|
||
*/
|
||
get attrArn(): string;
|
||
/**
|
||
* The ID of the `DeviceDefinition` , such as `1234a5b6-78cd-901e-2fgh-3i45j6k178l9` .
|
||
*
|
||
* @cloudformationAttribute Id
|
||
*/
|
||
get attrId(): string;
|
||
/**
|
||
* The ARN of the last `DeviceDefinitionVersion` that was added to the `DeviceDefinition` , such as `arn:aws:greengrass:us-east-1: :/greengrass/definition/devices/1234a5b6-78cd-901e-2fgh-3i45j6k178l9/versions/9876ac30-4bdb-4f9d-95af-b5fdb66be1a2` .
|
||
*
|
||
* @cloudformationAttribute LatestVersionArn
|
||
*/
|
||
get attrLatestVersionArn(): string;
|
||
/**
|
||
* The name of the device definition.
|
||
*
|
||
* @cloudformationAttribute Name
|
||
*/
|
||
get attrName(): string;
|
||
protected get cfnProperties(): Record<string, any>;
|
||
/**
|
||
* Examines the CloudFormation resource and discloses attributes
|
||
*
|
||
* @param inspector tree inspector to collect and process attributes
|
||
*/
|
||
inspect(inspector: cdk.TreeInspector): void;
|
||
protected renderProperties(props: Record<string, any>): Record<string, any>;
|
||
}
|
||
export declare namespace CfnDeviceDefinition {
|
||
/**
|
||
* A device definition version contains a list of [devices](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-devicedefinition-device.html) .
|
||
*
|
||
* > After you create a device definition version that contains the devices you want to deploy, you must add it to your group version. For more information, see [`AWS::Greengrass::Group`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-group.html) .
|
||
*
|
||
* In an CloudFormation template, `DeviceDefinitionVersion` is the property type of the `InitialVersion` property in the [`AWS::Greengrass::DeviceDefinition`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-devicedefinition.html) resource.
|
||
*
|
||
* @struct
|
||
* @stability external
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-devicedefinition-devicedefinitionversion.html
|
||
*/
|
||
interface DeviceDefinitionVersionProperty {
|
||
/**
|
||
* The devices in this version.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-devicedefinition-devicedefinitionversion.html#cfn-greengrass-devicedefinition-devicedefinitionversion-devices
|
||
*/
|
||
readonly devices: Array<CfnDeviceDefinition.DeviceProperty | cdk.IResolvable> | cdk.IResolvable;
|
||
}
|
||
/**
|
||
* A device is an AWS IoT device (thing) that's added to a Greengrass group.
|
||
*
|
||
* Greengrass devices can communicate with the Greengrass core in the same group. For more information, see [What Is AWS IoT Greengrass ?](https://docs.aws.amazon.com/greengrass/v1/developerguide/what-is-gg.html) in the *Developer Guide* .
|
||
*
|
||
* In an CloudFormation template, the `Devices` property of the [`DeviceDefinitionVersion`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-devicedefinition-devicedefinitionversion.html) property type contains a list of `Device` property types.
|
||
*
|
||
* @struct
|
||
* @stability external
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-devicedefinition-device.html
|
||
*/
|
||
interface DeviceProperty {
|
||
/**
|
||
* The Amazon Resource Name (ARN) of the device certificate for the device.
|
||
*
|
||
* This X.509 certificate is used to authenticate the device with AWS IoT and AWS IoT Greengrass services.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-devicedefinition-device.html#cfn-greengrass-devicedefinition-device-certificatearn
|
||
*/
|
||
readonly certificateArn: string;
|
||
/**
|
||
* A descriptive or arbitrary ID for the device.
|
||
*
|
||
* This value must be unique within the device definition version. Maximum length is 128 characters with pattern `[a-zA-Z0-9:_-]+` .
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-devicedefinition-device.html#cfn-greengrass-devicedefinition-device-id
|
||
*/
|
||
readonly id: string;
|
||
/**
|
||
* Indicates whether the device's local shadow is synced with the cloud automatically.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-devicedefinition-device.html#cfn-greengrass-devicedefinition-device-syncshadow
|
||
*/
|
||
readonly syncShadow?: boolean | cdk.IResolvable;
|
||
/**
|
||
* The ARN of the device, which is an AWS IoT device (thing).
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-devicedefinition-device.html#cfn-greengrass-devicedefinition-device-thingarn
|
||
*/
|
||
readonly thingArn: string;
|
||
}
|
||
}
|
||
/**
|
||
* Properties for defining a `CfnDeviceDefinition`
|
||
*
|
||
* @struct
|
||
* @stability external
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-devicedefinition.html
|
||
*/
|
||
export interface CfnDeviceDefinitionProps {
|
||
/**
|
||
* The device definition version to include when the device definition is created.
|
||
*
|
||
* A device definition version contains a list of [`device`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-devicedefinition-device.html) property types.
|
||
*
|
||
* > To associate a device definition version after the device definition is created, create an [`AWS::Greengrass::DeviceDefinitionVersion`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-devicedefinitionversion.html) resource and specify the ID of this device definition.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-devicedefinition.html#cfn-greengrass-devicedefinition-initialversion
|
||
*/
|
||
readonly initialVersion?: CfnDeviceDefinition.DeviceDefinitionVersionProperty | cdk.IResolvable;
|
||
/**
|
||
* The name of the device definition.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-devicedefinition.html#cfn-greengrass-devicedefinition-name
|
||
*/
|
||
readonly name: string;
|
||
/**
|
||
* Application-specific metadata to attach to the device definition.
|
||
*
|
||
* You can use tags in IAM policies to control access to AWS IoT Greengrass resources. You can also use tags to categorize your resources. For more information, see [Tagging Your AWS IoT Greengrass Resources](https://docs.aws.amazon.com/greengrass/v1/developerguide/tagging.html) in the *Developer Guide* .
|
||
*
|
||
* This `Json` property type is processed as a map of key-value pairs. It uses the following format, which is different from most `Tags` implementations in CloudFormation templates.
|
||
*
|
||
* ```json
|
||
* "Tags": { "KeyName0": "value", "KeyName1": "value", "KeyName2": "value"
|
||
* }
|
||
* ```
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-devicedefinition.html#cfn-greengrass-devicedefinition-tags
|
||
*/
|
||
readonly tags?: any;
|
||
}
|
||
/**
|
||
* The `AWS::Greengrass::DeviceDefinitionVersion` resource represents a device definition version for AWS IoT Greengrass .
|
||
*
|
||
* A device definition version contains a list of devices.
|
||
*
|
||
* > To create a device definition version, you must specify the ID of the device definition that you want to associate with the version. For information about creating a device definition, see [`AWS::Greengrass::DeviceDefinition`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-devicedefinition.html) .
|
||
* >
|
||
* > After you create a device definition version that contains the devices you want to deploy, you must add it to your group version. For more information, see [`AWS::Greengrass::Group`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-group.html) .
|
||
*
|
||
* @cloudformationResource AWS::Greengrass::DeviceDefinitionVersion
|
||
* @stability external
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-devicedefinitionversion.html
|
||
*/
|
||
export declare class CfnDeviceDefinitionVersion extends cdk.CfnResource implements cdk.IInspectable, IDeviceDefinitionVersionRef {
|
||
/**
|
||
* The CloudFormation resource type name for this resource class.
|
||
*/
|
||
static readonly CFN_RESOURCE_TYPE_NAME: string;
|
||
/**
|
||
* Build a CfnDeviceDefinitionVersion from CloudFormation properties
|
||
*
|
||
* A factory method that creates a new instance of this class from an object
|
||
* containing the CloudFormation properties of this resource.
|
||
* Used in the @aws-cdk/cloudformation-include module.
|
||
*
|
||
* @internal
|
||
*/
|
||
static _fromCloudFormation(scope: constructs.Construct, id: string, resourceAttributes: any, options: cfn_parse.FromCloudFormationOptions): CfnDeviceDefinitionVersion;
|
||
/**
|
||
* Checks whether the given object is a CfnDeviceDefinitionVersion
|
||
*/
|
||
static isCfnDeviceDefinitionVersion(x: any): x is CfnDeviceDefinitionVersion;
|
||
/**
|
||
* The ID of the device definition associated with this version.
|
||
*/
|
||
private _deviceDefinitionId;
|
||
/**
|
||
* The devices in this version.
|
||
*/
|
||
private _devices;
|
||
protected readonly cfnPropertyNames: Record<string, string>;
|
||
/**
|
||
* Create a new `AWS::Greengrass::DeviceDefinitionVersion`.
|
||
*
|
||
* @param scope Scope in which this resource is defined
|
||
* @param id Construct identifier for this resource (unique in its scope)
|
||
* @param props Resource properties
|
||
*/
|
||
constructor(scope: constructs.Construct, id: string, props: CfnDeviceDefinitionVersionProps);
|
||
get deviceDefinitionVersionRef(): DeviceDefinitionVersionReference;
|
||
/**
|
||
* The ID of the device definition associated with this version.
|
||
*/
|
||
get deviceDefinitionId(): string;
|
||
/**
|
||
* The ID of the device definition associated with this version.
|
||
*/
|
||
set deviceDefinitionId(value: string);
|
||
/**
|
||
* The devices in this version.
|
||
*/
|
||
get devices(): Array<CfnDeviceDefinitionVersion.DeviceProperty | cdk.IResolvable> | cdk.IResolvable;
|
||
/**
|
||
* The devices in this version.
|
||
*/
|
||
set devices(value: Array<CfnDeviceDefinitionVersion.DeviceProperty | cdk.IResolvable> | cdk.IResolvable);
|
||
/**
|
||
* @cloudformationAttribute Id
|
||
*/
|
||
get attrId(): string;
|
||
protected get cfnProperties(): Record<string, any>;
|
||
/**
|
||
* Examines the CloudFormation resource and discloses attributes
|
||
*
|
||
* @param inspector tree inspector to collect and process attributes
|
||
*/
|
||
inspect(inspector: cdk.TreeInspector): void;
|
||
protected renderProperties(props: Record<string, any>): Record<string, any>;
|
||
}
|
||
export declare namespace CfnDeviceDefinitionVersion {
|
||
/**
|
||
* A device is an AWS IoT device (thing) that's added to a Greengrass group.
|
||
*
|
||
* Greengrass devices can communicate with the Greengrass core in the same group. For more information, see [What Is AWS IoT Greengrass ?](https://docs.aws.amazon.com/greengrass/v1/developerguide/what-is-gg.html) in the *Developer Guide* .
|
||
*
|
||
* In an CloudFormation template, the `Devices` property of the [`AWS::Greengrass::DeviceDefinitionVersion`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-devicedefinitionversion.html) resource contains a list of `Device` property types.
|
||
*
|
||
* @struct
|
||
* @stability external
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-devicedefinitionversion-device.html
|
||
*/
|
||
interface DeviceProperty {
|
||
/**
|
||
* The ARN of the device certificate for the device.
|
||
*
|
||
* This X.509 certificate is used to authenticate the device with AWS IoT and AWS IoT Greengrass services.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-devicedefinitionversion-device.html#cfn-greengrass-devicedefinitionversion-device-certificatearn
|
||
*/
|
||
readonly certificateArn: string;
|
||
/**
|
||
* A descriptive or arbitrary ID for the device.
|
||
*
|
||
* This value must be unique within the device definition version. Maximum length is 128 characters with pattern `[a-zA-Z0-9:_-]+` .
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-devicedefinitionversion-device.html#cfn-greengrass-devicedefinitionversion-device-id
|
||
*/
|
||
readonly id: string;
|
||
/**
|
||
* Indicates whether the device's local shadow is synced with the cloud automatically.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-devicedefinitionversion-device.html#cfn-greengrass-devicedefinitionversion-device-syncshadow
|
||
*/
|
||
readonly syncShadow?: boolean | cdk.IResolvable;
|
||
/**
|
||
* The Amazon Resource Name (ARN) of the device, which is an AWS IoT device (thing).
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-devicedefinitionversion-device.html#cfn-greengrass-devicedefinitionversion-device-thingarn
|
||
*/
|
||
readonly thingArn: string;
|
||
}
|
||
}
|
||
/**
|
||
* Properties for defining a `CfnDeviceDefinitionVersion`
|
||
*
|
||
* @struct
|
||
* @stability external
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-devicedefinitionversion.html
|
||
*/
|
||
export interface CfnDeviceDefinitionVersionProps {
|
||
/**
|
||
* The ID of the device definition associated with this version.
|
||
*
|
||
* This value is a GUID.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-devicedefinitionversion.html#cfn-greengrass-devicedefinitionversion-devicedefinitionid
|
||
*/
|
||
readonly deviceDefinitionId: string;
|
||
/**
|
||
* The devices in this version.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-devicedefinitionversion.html#cfn-greengrass-devicedefinitionversion-devices
|
||
*/
|
||
readonly devices: Array<CfnDeviceDefinitionVersion.DeviceProperty | cdk.IResolvable> | cdk.IResolvable;
|
||
}
|
||
/**
|
||
* The `AWS::Greengrass::FunctionDefinition` resource represents a function definition for AWS IoT Greengrass .
|
||
*
|
||
* Function definitions are used to organize your function definition versions.
|
||
*
|
||
* Function definitions can reference multiple function definition versions. All function definition versions must be associated with a function definition. Each function definition version can contain one or more functions.
|
||
*
|
||
* > When you create a function definition, you can optionally include an initial function definition version. To associate a function definition version later, create an [`AWS::Greengrass::FunctionDefinitionVersion`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-functiondefinitionversion.html) resource and specify the ID of this function definition.
|
||
* >
|
||
* > After you create the function definition version that contains the functions you want to deploy, you must add it to your group version. For more information, see [`AWS::Greengrass::Group`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-group.html) .
|
||
*
|
||
* @cloudformationResource AWS::Greengrass::FunctionDefinition
|
||
* @stability external
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-functiondefinition.html
|
||
*/
|
||
export declare class CfnFunctionDefinition extends cdk.CfnResource implements cdk.IInspectable, IFunctionDefinitionRef, cdk.ITaggable {
|
||
/**
|
||
* The CloudFormation resource type name for this resource class.
|
||
*/
|
||
static readonly CFN_RESOURCE_TYPE_NAME: string;
|
||
/**
|
||
* Build a CfnFunctionDefinition from CloudFormation properties
|
||
*
|
||
* A factory method that creates a new instance of this class from an object
|
||
* containing the CloudFormation properties of this resource.
|
||
* Used in the @aws-cdk/cloudformation-include module.
|
||
*
|
||
* @internal
|
||
*/
|
||
static _fromCloudFormation(scope: constructs.Construct, id: string, resourceAttributes: any, options: cfn_parse.FromCloudFormationOptions): CfnFunctionDefinition;
|
||
/**
|
||
* Checks whether the given object is a CfnFunctionDefinition
|
||
*/
|
||
static isCfnFunctionDefinition(x: any): x is CfnFunctionDefinition;
|
||
/**
|
||
* Creates a new IFunctionDefinitionRef from an ARN
|
||
*/
|
||
static fromFunctionDefinitionArn(scope: constructs.Construct, id: string, arn: string): IFunctionDefinitionRef;
|
||
/**
|
||
* Creates a new IFunctionDefinitionRef from a functionDefinitionId
|
||
*/
|
||
static fromFunctionDefinitionId(scope: constructs.Construct, id: string, functionDefinitionId: string): IFunctionDefinitionRef;
|
||
static arnForFunctionDefinition(resource: IFunctionDefinitionRef): string;
|
||
/**
|
||
* The function definition version to include when the function definition is created.
|
||
*/
|
||
private _initialVersion?;
|
||
/**
|
||
* The name of the function definition.
|
||
*/
|
||
private _name;
|
||
/**
|
||
* Tag Manager which manages the tags for this resource
|
||
*/
|
||
readonly tags: cdk.TagManager;
|
||
/**
|
||
* Application-specific metadata to attach to the function definition.
|
||
*/
|
||
private _tagsRaw?;
|
||
protected readonly cfnPropertyNames: Record<string, string>;
|
||
/**
|
||
* Create a new `AWS::Greengrass::FunctionDefinition`.
|
||
*
|
||
* @param scope Scope in which this resource is defined
|
||
* @param id Construct identifier for this resource (unique in its scope)
|
||
* @param props Resource properties
|
||
*/
|
||
constructor(scope: constructs.Construct, id: string, props: CfnFunctionDefinitionProps);
|
||
get functionDefinitionRef(): FunctionDefinitionReference;
|
||
/**
|
||
* The function definition version to include when the function definition is created.
|
||
*/
|
||
get initialVersion(): CfnFunctionDefinition.FunctionDefinitionVersionProperty | cdk.IResolvable | undefined;
|
||
/**
|
||
* The function definition version to include when the function definition is created.
|
||
*/
|
||
set initialVersion(value: CfnFunctionDefinition.FunctionDefinitionVersionProperty | cdk.IResolvable | undefined);
|
||
/**
|
||
* The name of the function definition.
|
||
*/
|
||
get name(): string;
|
||
/**
|
||
* The name of the function definition.
|
||
*/
|
||
set name(value: string);
|
||
/**
|
||
* Application-specific metadata to attach to the function definition.
|
||
*/
|
||
get tagsRaw(): any | undefined;
|
||
/**
|
||
* Application-specific metadata to attach to the function definition.
|
||
*/
|
||
set tagsRaw(value: any | undefined);
|
||
/**
|
||
* The Amazon Resource Name (ARN) of the `FunctionDefinition` , such as `arn:aws:greengrass:us-east-1: :/greengrass/definition/functions/1234a5b6-78cd-901e-2fgh-3i45j6k178l9` .
|
||
*
|
||
* @cloudformationAttribute Arn
|
||
*/
|
||
get attrArn(): string;
|
||
/**
|
||
* The ID of the `FunctionDefinition` , such as `1234a5b6-78cd-901e-2fgh-3i45j6k178l9` .
|
||
*
|
||
* @cloudformationAttribute Id
|
||
*/
|
||
get attrId(): string;
|
||
/**
|
||
* The ARN of the last `FunctionDefinitionVersion` that was added to the `FunctionDefinition` , such as `arn:aws:greengrass:us-east-1: :/greengrass/definition/functions/1234a5b6-78cd-901e-2fgh-3i45j6k178l9/versions/9876ac30-4bdb-4f9d-95af-b5fdb66be1a2` .
|
||
*
|
||
* @cloudformationAttribute LatestVersionArn
|
||
*/
|
||
get attrLatestVersionArn(): string;
|
||
/**
|
||
* The name of the `FunctionDefinition` , such as `MyFunctionDefinition` .
|
||
*
|
||
* @cloudformationAttribute Name
|
||
*/
|
||
get attrName(): string;
|
||
protected get cfnProperties(): Record<string, any>;
|
||
/**
|
||
* Examines the CloudFormation resource and discloses attributes
|
||
*
|
||
* @param inspector tree inspector to collect and process attributes
|
||
*/
|
||
inspect(inspector: cdk.TreeInspector): void;
|
||
protected renderProperties(props: Record<string, any>): Record<string, any>;
|
||
}
|
||
export declare namespace CfnFunctionDefinition {
|
||
/**
|
||
* A function definition version contains a list of functions.
|
||
*
|
||
* > After you create a function definition version that contains the functions you want to deploy, you must add it to your group version. For more information, see [`AWS::Greengrass::Group`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-group.html) .
|
||
*
|
||
* In an CloudFormation template, `FunctionDefinitionVersion` is the property type of the `InitialVersion` property in the [`AWS::Greengrass::FunctionDefinition`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-functiondefinition.html) resource.
|
||
*
|
||
* @struct
|
||
* @stability external
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-functiondefinitionversion.html
|
||
*/
|
||
interface FunctionDefinitionVersionProperty {
|
||
/**
|
||
* The default configuration that applies to all Lambda functions in the group.
|
||
*
|
||
* Individual Lambda functions can override these settings.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-functiondefinitionversion.html#cfn-greengrass-functiondefinition-functiondefinitionversion-defaultconfig
|
||
*/
|
||
readonly defaultConfig?: CfnFunctionDefinition.DefaultConfigProperty | cdk.IResolvable;
|
||
/**
|
||
* The functions in this version.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-functiondefinitionversion.html#cfn-greengrass-functiondefinition-functiondefinitionversion-functions
|
||
*/
|
||
readonly functions: Array<CfnFunctionDefinition.FunctionProperty | cdk.IResolvable> | cdk.IResolvable;
|
||
}
|
||
/**
|
||
* The default configuration that applies to all Lambda functions in the function definition version.
|
||
*
|
||
* Individual Lambda functions can override these settings.
|
||
*
|
||
* In an CloudFormation template, `DefaultConfig` is a property of the [`FunctionDefinitionVersion`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-functiondefinitionversion.html) property type.
|
||
*
|
||
* @struct
|
||
* @stability external
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-defaultconfig.html
|
||
*/
|
||
interface DefaultConfigProperty {
|
||
/**
|
||
* Configuration settings for the Lambda execution environment on the AWS IoT Greengrass core.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-defaultconfig.html#cfn-greengrass-functiondefinition-defaultconfig-execution
|
||
*/
|
||
readonly execution: CfnFunctionDefinition.ExecutionProperty | cdk.IResolvable;
|
||
}
|
||
/**
|
||
* Configuration settings for the Lambda execution environment on the AWS IoT Greengrass core.
|
||
*
|
||
* In an CloudFormation template, `Execution` is a property of the [`DefaultConfig`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-defaultconfig.html) property type for a function definition version and the [`Environment`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-environment.html) property type for a function.
|
||
*
|
||
* @struct
|
||
* @stability external
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-execution.html
|
||
*/
|
||
interface ExecutionProperty {
|
||
/**
|
||
* The containerization that the Lambda function runs in.
|
||
*
|
||
* Valid values are `GreengrassContainer` or `NoContainer` . Typically, this is `GreengrassContainer` . For more information, see [Containerization](https://docs.aws.amazon.com/greengrass/v1/developerguide/lambda-group-config.html#lambda-function-containerization) in the *Developer Guide* .
|
||
*
|
||
* - When set on the [`DefaultConfig`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-defaultconfig.html) property of a function definition version, this setting is used as the default containerization for all Lambda functions in the function definition version.
|
||
* - When set on the [`Environment`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-environment.html) property of a function, this setting applies to the individual function and overrides the default. Omit this value to run the function with the default containerization.
|
||
*
|
||
* > We recommend that you run in a Greengrass container unless your business case requires that you run without containerization.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-execution.html#cfn-greengrass-functiondefinition-execution-isolationmode
|
||
*/
|
||
readonly isolationMode?: string;
|
||
/**
|
||
* The user and group permissions used to run the Lambda function.
|
||
*
|
||
* Typically, this is the ggc_user and ggc_group. For more information, see [Run as](https://docs.aws.amazon.com/greengrass/v1/developerguide/lambda-group-config.html#lambda-access-identity.html) in the *Developer Guide* .
|
||
*
|
||
* - When set on the [`DefaultConfig`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-defaultconfig.html) property of a function definition version, this setting is used as the default access identity for all Lambda functions in the function definition version.
|
||
* - When set on the [`Environment`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-environment.html) property of a function, this setting applies to the individual function and overrides the default. You can override the user, group, or both. Omit this value to run the function with the default permissions.
|
||
*
|
||
* > Running as the root user increases risks to your data and device. Do not run as root (UID/GID=0) unless your business case requires it. For more information and requirements, see [Running a Lambda Function as Root](https://docs.aws.amazon.com/greengrass/v1/developerguide/lambda-group-config.html#lambda-running-as-root) .
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-execution.html#cfn-greengrass-functiondefinition-execution-runas
|
||
*/
|
||
readonly runAs?: cdk.IResolvable | CfnFunctionDefinition.RunAsProperty;
|
||
}
|
||
/**
|
||
* The access identity whose permissions are used to run the Lambda function.
|
||
*
|
||
* This setting overrides the default access identity that's specified for the group (by default, ggc_user and ggc_group). You can override the user, group, or both. For more information, see [Run as](https://docs.aws.amazon.com/greengrass/v1/developerguide/lambda-group-config.html#lambda-access-identity.html) in the *Developer Guide* .
|
||
*
|
||
* > Running as the root user increases risks to your data and device. Do not run as root (UID/GID=0) unless your business case requires it. For more information and requirements, see [Running a Lambda Function as Root](https://docs.aws.amazon.com/greengrass/v1/developerguide/lambda-group-config.html#lambda-running-as-root) .
|
||
*
|
||
* In an CloudFormation template, `RunAs` is a property of the [`Execution`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-execution.html) property type.
|
||
*
|
||
* @struct
|
||
* @stability external
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-runas.html
|
||
*/
|
||
interface RunAsProperty {
|
||
/**
|
||
* The group ID whose permissions are used to run the Lambda function.
|
||
*
|
||
* You can use the `getent group` command on your core device to look up the group ID.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-runas.html#cfn-greengrass-functiondefinition-runas-gid
|
||
*/
|
||
readonly gid?: number;
|
||
/**
|
||
* The user ID whose permissions are used to run the Lambda function.
|
||
*
|
||
* You can use the `getent passwd` command on your core device to look up the user ID.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-runas.html#cfn-greengrass-functiondefinition-runas-uid
|
||
*/
|
||
readonly uid?: number;
|
||
}
|
||
/**
|
||
* A function is a Lambda function that's referenced from an AWS IoT Greengrass group.
|
||
*
|
||
* The function is deployed to a Greengrass core where it runs locally. For more information, see [Run Lambda Functions on the AWS IoT Greengrass Core](https://docs.aws.amazon.com/greengrass/v1/developerguide/lambda-functions.html) in the *Developer Guide* .
|
||
*
|
||
* In an CloudFormation template, the `Functions` property of the [`FunctionDefinitionVersion`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-functiondefinitionversion.html) property type contains a list of `Function` property types.
|
||
*
|
||
* @struct
|
||
* @stability external
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-function.html
|
||
*/
|
||
interface FunctionProperty {
|
||
/**
|
||
* The Amazon Resource Name (ARN) of the alias (recommended) or version of the referenced Lambda function.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-function.html#cfn-greengrass-functiondefinition-function-functionarn
|
||
*/
|
||
readonly functionArn: string;
|
||
/**
|
||
* The group-specific settings of the Lambda function.
|
||
*
|
||
* These settings configure the function's behavior in the Greengrass group.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-function.html#cfn-greengrass-functiondefinition-function-functionconfiguration
|
||
*/
|
||
readonly functionConfiguration: CfnFunctionDefinition.FunctionConfigurationProperty | cdk.IResolvable;
|
||
/**
|
||
* A descriptive or arbitrary ID for the function.
|
||
*
|
||
* This value must be unique within the function definition version. Maximum length is 128 characters with pattern `[a-zA-Z0-9:_-]+` .
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-function.html#cfn-greengrass-functiondefinition-function-id
|
||
*/
|
||
readonly id: string;
|
||
}
|
||
/**
|
||
* The group-specific configuration settings for a Lambda function.
|
||
*
|
||
* These settings configure the function's behavior in the Greengrass group. For more information, see [Controlling Execution of Greengrass Lambda Functions by Using Group-Specific Configuration](https://docs.aws.amazon.com/greengrass/v1/developerguide/lambda-group-config.html) in the *Developer Guide* .
|
||
*
|
||
* In an CloudFormation template, `FunctionConfiguration` is a property of the [`Function`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-function.html) property type.
|
||
*
|
||
* @struct
|
||
* @stability external
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-functionconfiguration.html
|
||
*/
|
||
interface FunctionConfigurationProperty {
|
||
/**
|
||
* The expected encoding type of the input payload for the function.
|
||
*
|
||
* Valid values are `json` (default) and `binary` .
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-functionconfiguration.html#cfn-greengrass-functiondefinition-functionconfiguration-encodingtype
|
||
*/
|
||
readonly encodingType?: string;
|
||
/**
|
||
* The environment configuration of the function.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-functionconfiguration.html#cfn-greengrass-functiondefinition-functionconfiguration-environment
|
||
*/
|
||
readonly environment?: CfnFunctionDefinition.EnvironmentProperty | cdk.IResolvable;
|
||
/**
|
||
* The execution arguments.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-functionconfiguration.html#cfn-greengrass-functiondefinition-functionconfiguration-execargs
|
||
*/
|
||
readonly execArgs?: string;
|
||
/**
|
||
* The name of the function executable.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-functionconfiguration.html#cfn-greengrass-functiondefinition-functionconfiguration-executable
|
||
*/
|
||
readonly executable?: string;
|
||
/**
|
||
* The memory size (in KB) required by the function.
|
||
*
|
||
* > This property applies only to Lambda functions that run in a Greengrass container.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-functionconfiguration.html#cfn-greengrass-functiondefinition-functionconfiguration-memorysize
|
||
*/
|
||
readonly memorySize?: number;
|
||
/**
|
||
* Indicates whether the function is pinned (or *long-lived* ).
|
||
*
|
||
* Pinned functions start when the core starts and process all requests in the same container. The default value is false.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-functionconfiguration.html#cfn-greengrass-functiondefinition-functionconfiguration-pinned
|
||
*/
|
||
readonly pinned?: boolean | cdk.IResolvable;
|
||
/**
|
||
* The allowed execution time (in seconds) after which the function should terminate.
|
||
*
|
||
* For pinned functions, this timeout applies for each request.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-functionconfiguration.html#cfn-greengrass-functiondefinition-functionconfiguration-timeout
|
||
*/
|
||
readonly timeout?: number;
|
||
}
|
||
/**
|
||
* The environment configuration for a Lambda function on the AWS IoT Greengrass core.
|
||
*
|
||
* In an CloudFormation template, `Environment` is a property of the [`FunctionConfiguration`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-functionconfiguration.html) property type.
|
||
*
|
||
* @struct
|
||
* @stability external
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-environment.html
|
||
*/
|
||
interface EnvironmentProperty {
|
||
/**
|
||
* Indicates whether the function is allowed to access the `/sys` directory on the core device, which allows the read device information from `/sys` .
|
||
*
|
||
* > This property applies only to Lambda functions that run in a Greengrass container.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-environment.html#cfn-greengrass-functiondefinition-environment-accesssysfs
|
||
*/
|
||
readonly accessSysfs?: boolean | cdk.IResolvable;
|
||
/**
|
||
* Settings for the Lambda execution environment in AWS IoT Greengrass .
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-environment.html#cfn-greengrass-functiondefinition-environment-execution
|
||
*/
|
||
readonly execution?: CfnFunctionDefinition.ExecutionProperty | cdk.IResolvable;
|
||
/**
|
||
* A list of the [resources](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-resourceinstance.html) in the group that the function can access, with the corresponding read-only or read-write permissions. The maximum is 10 resources.
|
||
*
|
||
* > This property applies only for Lambda functions that run in a Greengrass container.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-environment.html#cfn-greengrass-functiondefinition-environment-resourceaccesspolicies
|
||
*/
|
||
readonly resourceAccessPolicies?: Array<cdk.IResolvable | CfnFunctionDefinition.ResourceAccessPolicyProperty> | cdk.IResolvable;
|
||
/**
|
||
* Environment variables for the Lambda function.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-environment.html#cfn-greengrass-functiondefinition-environment-variables
|
||
*/
|
||
readonly variables?: any | cdk.IResolvable;
|
||
}
|
||
/**
|
||
* A list of the [resources](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-resourceinstance.html) in the group that the function can access, with the corresponding read-only or read-write permissions. The maximum is 10 resources.
|
||
*
|
||
* > This property applies only to Lambda functions that run in a Greengrass container.
|
||
*
|
||
* In an CloudFormation template, `ResourceAccessPolicy` is a property of the [`Environment`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-environment.html) property type.
|
||
*
|
||
* @struct
|
||
* @stability external
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-resourceaccesspolicy.html
|
||
*/
|
||
interface ResourceAccessPolicyProperty {
|
||
/**
|
||
* The read-only or read-write access that the Lambda function has to the resource.
|
||
*
|
||
* Valid values are `ro` or `rw` .
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-resourceaccesspolicy.html#cfn-greengrass-functiondefinition-resourceaccesspolicy-permission
|
||
*/
|
||
readonly permission?: string;
|
||
/**
|
||
* The ID of the resource.
|
||
*
|
||
* This ID is assigned to the resource when you create the resource definition.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-resourceaccesspolicy.html#cfn-greengrass-functiondefinition-resourceaccesspolicy-resourceid
|
||
*/
|
||
readonly resourceId: string;
|
||
}
|
||
}
|
||
/**
|
||
* Properties for defining a `CfnFunctionDefinition`
|
||
*
|
||
* @struct
|
||
* @stability external
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-functiondefinition.html
|
||
*/
|
||
export interface CfnFunctionDefinitionProps {
|
||
/**
|
||
* The function definition version to include when the function definition is created.
|
||
*
|
||
* A function definition version contains a list of [`function`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-function.html) property types.
|
||
*
|
||
* > To associate a function definition version after the function definition is created, create an [`AWS::Greengrass::FunctionDefinitionVersion`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-functiondefinitionversion.html) resource and specify the ID of this function definition.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-functiondefinition.html#cfn-greengrass-functiondefinition-initialversion
|
||
*/
|
||
readonly initialVersion?: CfnFunctionDefinition.FunctionDefinitionVersionProperty | cdk.IResolvable;
|
||
/**
|
||
* The name of the function definition.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-functiondefinition.html#cfn-greengrass-functiondefinition-name
|
||
*/
|
||
readonly name: string;
|
||
/**
|
||
* Application-specific metadata to attach to the function definition.
|
||
*
|
||
* You can use tags in IAM policies to control access to AWS IoT Greengrass resources. You can also use tags to categorize your resources. For more information, see [Tagging Your AWS IoT Greengrass Resources](https://docs.aws.amazon.com/greengrass/v1/developerguide/tagging.html) in the *Developer Guide* .
|
||
*
|
||
* This `Json` property type is processed as a map of key-value pairs. It uses the following format, which is different from most `Tags` implementations in CloudFormation templates.
|
||
*
|
||
* ```json
|
||
* "Tags": { "KeyName0": "value", "KeyName1": "value", "KeyName2": "value"
|
||
* }
|
||
* ```
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-functiondefinition.html#cfn-greengrass-functiondefinition-tags
|
||
*/
|
||
readonly tags?: any;
|
||
}
|
||
/**
|
||
* The `AWS::Greengrass::FunctionDefinitionVersion` resource represents a function definition version for AWS IoT Greengrass .
|
||
*
|
||
* A function definition version contains contain a list of functions.
|
||
*
|
||
* > To create a function definition version, you must specify the ID of the function definition that you want to associate with the version. For information about creating a function definition, see [`AWS::Greengrass::FunctionDefinition`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-functiondefinition.html) .
|
||
* >
|
||
* > After you create a function definition version that contains the functions you want to deploy, you must add it to your group version. For more information, see [`AWS::Greengrass::Group`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-group.html) .
|
||
*
|
||
* @cloudformationResource AWS::Greengrass::FunctionDefinitionVersion
|
||
* @stability external
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-functiondefinitionversion.html
|
||
*/
|
||
export declare class CfnFunctionDefinitionVersion extends cdk.CfnResource implements cdk.IInspectable, IFunctionDefinitionVersionRef {
|
||
/**
|
||
* The CloudFormation resource type name for this resource class.
|
||
*/
|
||
static readonly CFN_RESOURCE_TYPE_NAME: string;
|
||
/**
|
||
* Build a CfnFunctionDefinitionVersion from CloudFormation properties
|
||
*
|
||
* A factory method that creates a new instance of this class from an object
|
||
* containing the CloudFormation properties of this resource.
|
||
* Used in the @aws-cdk/cloudformation-include module.
|
||
*
|
||
* @internal
|
||
*/
|
||
static _fromCloudFormation(scope: constructs.Construct, id: string, resourceAttributes: any, options: cfn_parse.FromCloudFormationOptions): CfnFunctionDefinitionVersion;
|
||
/**
|
||
* Checks whether the given object is a CfnFunctionDefinitionVersion
|
||
*/
|
||
static isCfnFunctionDefinitionVersion(x: any): x is CfnFunctionDefinitionVersion;
|
||
/**
|
||
* The default configuration that applies to all Lambda functions in the group.
|
||
*/
|
||
private _defaultConfig?;
|
||
/**
|
||
* The ID of the function definition associated with this version.
|
||
*/
|
||
private _functionDefinitionId;
|
||
/**
|
||
* The functions in this version.
|
||
*/
|
||
private _functions;
|
||
protected readonly cfnPropertyNames: Record<string, string>;
|
||
/**
|
||
* Create a new `AWS::Greengrass::FunctionDefinitionVersion`.
|
||
*
|
||
* @param scope Scope in which this resource is defined
|
||
* @param id Construct identifier for this resource (unique in its scope)
|
||
* @param props Resource properties
|
||
*/
|
||
constructor(scope: constructs.Construct, id: string, props: CfnFunctionDefinitionVersionProps);
|
||
get functionDefinitionVersionRef(): FunctionDefinitionVersionReference;
|
||
/**
|
||
* The default configuration that applies to all Lambda functions in the group.
|
||
*/
|
||
get defaultConfig(): CfnFunctionDefinitionVersion.DefaultConfigProperty | cdk.IResolvable | undefined;
|
||
/**
|
||
* The default configuration that applies to all Lambda functions in the group.
|
||
*/
|
||
set defaultConfig(value: CfnFunctionDefinitionVersion.DefaultConfigProperty | cdk.IResolvable | undefined);
|
||
/**
|
||
* The ID of the function definition associated with this version.
|
||
*/
|
||
get functionDefinitionId(): string;
|
||
/**
|
||
* The ID of the function definition associated with this version.
|
||
*/
|
||
set functionDefinitionId(value: string);
|
||
/**
|
||
* The functions in this version.
|
||
*/
|
||
get functions(): Array<CfnFunctionDefinitionVersion.FunctionProperty | cdk.IResolvable> | cdk.IResolvable;
|
||
/**
|
||
* The functions in this version.
|
||
*/
|
||
set functions(value: Array<CfnFunctionDefinitionVersion.FunctionProperty | cdk.IResolvable> | cdk.IResolvable);
|
||
/**
|
||
* @cloudformationAttribute Id
|
||
*/
|
||
get attrId(): string;
|
||
protected get cfnProperties(): Record<string, any>;
|
||
/**
|
||
* Examines the CloudFormation resource and discloses attributes
|
||
*
|
||
* @param inspector tree inspector to collect and process attributes
|
||
*/
|
||
inspect(inspector: cdk.TreeInspector): void;
|
||
protected renderProperties(props: Record<string, any>): Record<string, any>;
|
||
}
|
||
export declare namespace CfnFunctionDefinitionVersion {
|
||
/**
|
||
* The default configuration that applies to all Lambda functions in the function definition version.
|
||
*
|
||
* Individual Lambda functions can override these settings.
|
||
*
|
||
* In an CloudFormation template, `DefaultConfig` is a property of the [`AWS::Greengrass::FunctionDefinitionVersion`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-functiondefinitionversion.html) resource.
|
||
*
|
||
* @struct
|
||
* @stability external
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-defaultconfig.html
|
||
*/
|
||
interface DefaultConfigProperty {
|
||
/**
|
||
* Configuration settings for the Lambda execution environment on the AWS IoT Greengrass core.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-defaultconfig.html#cfn-greengrass-functiondefinitionversion-defaultconfig-execution
|
||
*/
|
||
readonly execution: CfnFunctionDefinitionVersion.ExecutionProperty | cdk.IResolvable;
|
||
}
|
||
/**
|
||
* Configuration settings for the Lambda execution environment on the AWS IoT Greengrass core.
|
||
*
|
||
* In an CloudFormation template, `Execution` is a property of the [`DefaultConfig`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-defaultconfig.html) property type for a function definition version and the [`Environment`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-environment.html) property type for a function.
|
||
*
|
||
* @struct
|
||
* @stability external
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-execution.html
|
||
*/
|
||
interface ExecutionProperty {
|
||
/**
|
||
* The containerization that the Lambda function runs in.
|
||
*
|
||
* Valid values are `GreengrassContainer` or `NoContainer` . Typically, this is `GreengrassContainer` . For more information, see [Containerization](https://docs.aws.amazon.com/greengrass/v1/developerguide/lambda-group-config.html#lambda-function-containerization) in the *Developer Guide* .
|
||
*
|
||
* - When set on the [`DefaultConfig`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-defaultconfig.html) property of a function definition version, this setting is used as the default containerization for all Lambda functions in the function definition version.
|
||
* - When set on the [`Environment`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-environment.html) property of a function, this setting applies to the individual function and overrides the default. Omit this value to run the function with the default containerization.
|
||
*
|
||
* > We recommend that you run in a Greengrass container unless your business case requires that you run without containerization.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-execution.html#cfn-greengrass-functiondefinitionversion-execution-isolationmode
|
||
*/
|
||
readonly isolationMode?: string;
|
||
/**
|
||
* The user and group permissions used to run the Lambda function.
|
||
*
|
||
* Typically, this is the ggc_user and ggc_group. For more information, see [Run as](https://docs.aws.amazon.com/greengrass/v1/developerguide/lambda-group-config.html#lambda-access-identity.html) in the *Developer Guide* .
|
||
*
|
||
* - When set on the [`DefaultConfig`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-defaultconfig.html) property of a function definition version, this setting is used as the default access identity for all Lambda functions in the function definition version.
|
||
* - When set on the [`Environment`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-environment.html) property of a function, this setting applies to the individual function and overrides the default. You can override the user, group, or both. Omit this value to run the function with the default permissions.
|
||
*
|
||
* > Running as the root user increases risks to your data and device. Do not run as root (UID/GID=0) unless your business case requires it. For more information and requirements, see [Running a Lambda Function as Root](https://docs.aws.amazon.com/greengrass/v1/developerguide/lambda-group-config.html#lambda-running-as-root) .
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-execution.html#cfn-greengrass-functiondefinitionversion-execution-runas
|
||
*/
|
||
readonly runAs?: cdk.IResolvable | CfnFunctionDefinitionVersion.RunAsProperty;
|
||
}
|
||
/**
|
||
* The user and group permissions used to run the Lambda function.
|
||
*
|
||
* This setting overrides the default access identity that's specified for the group (by default, ggc_user and ggc_group). You can override the user, group, or both. For more information, see [Run as](https://docs.aws.amazon.com/greengrass/v1/developerguide/lambda-group-config.html#lambda-access-identity.html) in the *Developer Guide* .
|
||
*
|
||
* > Running as the root user increases risks to your data and device. Do not run as root (UID/GID=0) unless your business case requires it. For more information and requirements, see [Running a Lambda Function as Root](https://docs.aws.amazon.com/greengrass/v1/developerguide/lambda-group-config.html#lambda-running-as-root) .
|
||
*
|
||
* In an CloudFormation template, `RunAs` is a property of the [`Execution`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-execution.html) property type.
|
||
*
|
||
* @struct
|
||
* @stability external
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-runas.html
|
||
*/
|
||
interface RunAsProperty {
|
||
/**
|
||
* The group ID whose permissions are used to run the Lambda function.
|
||
*
|
||
* You can use the `getent group` command on your core device to look up the group ID.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-runas.html#cfn-greengrass-functiondefinitionversion-runas-gid
|
||
*/
|
||
readonly gid?: number;
|
||
/**
|
||
* The user ID whose permissions are used to run the Lambda function.
|
||
*
|
||
* You can use the `getent passwd` command on your core device to look up the user ID.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-runas.html#cfn-greengrass-functiondefinitionversion-runas-uid
|
||
*/
|
||
readonly uid?: number;
|
||
}
|
||
/**
|
||
* A function is a Lambda function that's referenced from an AWS IoT Greengrass group.
|
||
*
|
||
* The function is deployed to a Greengrass core where it runs locally. For more information, see [Run Lambda Functions on the AWS IoT Greengrass Core](https://docs.aws.amazon.com/greengrass/v1/developerguide/lambda-functions.html) in the *Developer Guide* .
|
||
*
|
||
* In an CloudFormation template, the `Functions` property of the [`AWS::Greengrass::FunctionDefinitionVersion`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-functiondefinitionversion.html) resource contains a list of `Function` property types.
|
||
*
|
||
* @struct
|
||
* @stability external
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-function.html
|
||
*/
|
||
interface FunctionProperty {
|
||
/**
|
||
* The Amazon Resource Name (ARN) of the alias (recommended) or version of the referenced Lambda function.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-function.html#cfn-greengrass-functiondefinitionversion-function-functionarn
|
||
*/
|
||
readonly functionArn: string;
|
||
/**
|
||
* The group-specific settings of the Lambda function.
|
||
*
|
||
* These settings configure the function's behavior in the Greengrass group.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-function.html#cfn-greengrass-functiondefinitionversion-function-functionconfiguration
|
||
*/
|
||
readonly functionConfiguration: CfnFunctionDefinitionVersion.FunctionConfigurationProperty | cdk.IResolvable;
|
||
/**
|
||
* A descriptive or arbitrary ID for the function.
|
||
*
|
||
* This value must be unique within the function definition version. Maximum length is 128 characters with pattern `[a-zA-Z0-9:_-]+` .
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-function.html#cfn-greengrass-functiondefinitionversion-function-id
|
||
*/
|
||
readonly id: string;
|
||
}
|
||
/**
|
||
* The group-specific configuration settings for a Lambda function.
|
||
*
|
||
* These settings configure the function's behavior in the Greengrass group. For more information, see [Controlling Execution of Greengrass Lambda Functions by Using Group-Specific Configuration](https://docs.aws.amazon.com/greengrass/v1/developerguide/lambda-group-config.html) in the *Developer Guide* .
|
||
*
|
||
* In an CloudFormation template, `FunctionConfiguration` is a property of the [`Function`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-function.html) property type.
|
||
*
|
||
* @struct
|
||
* @stability external
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-functionconfiguration.html
|
||
*/
|
||
interface FunctionConfigurationProperty {
|
||
/**
|
||
* The expected encoding type of the input payload for the function.
|
||
*
|
||
* Valid values are `json` (default) and `binary` .
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-functionconfiguration.html#cfn-greengrass-functiondefinitionversion-functionconfiguration-encodingtype
|
||
*/
|
||
readonly encodingType?: string;
|
||
/**
|
||
* The environment configuration of the function.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-functionconfiguration.html#cfn-greengrass-functiondefinitionversion-functionconfiguration-environment
|
||
*/
|
||
readonly environment?: CfnFunctionDefinitionVersion.EnvironmentProperty | cdk.IResolvable;
|
||
/**
|
||
* The execution arguments.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-functionconfiguration.html#cfn-greengrass-functiondefinitionversion-functionconfiguration-execargs
|
||
*/
|
||
readonly execArgs?: string;
|
||
/**
|
||
* The name of the function executable.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-functionconfiguration.html#cfn-greengrass-functiondefinitionversion-functionconfiguration-executable
|
||
*/
|
||
readonly executable?: string;
|
||
/**
|
||
* The memory size (in KB) required by the function.
|
||
*
|
||
* > This property applies only to Lambda functions that run in a Greengrass container.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-functionconfiguration.html#cfn-greengrass-functiondefinitionversion-functionconfiguration-memorysize
|
||
*/
|
||
readonly memorySize?: number;
|
||
/**
|
||
* Indicates whether the function is pinned (or *long-lived* ).
|
||
*
|
||
* Pinned functions start when the core starts and process all requests in the same container. The default value is false.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-functionconfiguration.html#cfn-greengrass-functiondefinitionversion-functionconfiguration-pinned
|
||
*/
|
||
readonly pinned?: boolean | cdk.IResolvable;
|
||
/**
|
||
* The allowed execution time (in seconds) after which the function should terminate.
|
||
*
|
||
* For pinned functions, this timeout applies for each request.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-functionconfiguration.html#cfn-greengrass-functiondefinitionversion-functionconfiguration-timeout
|
||
*/
|
||
readonly timeout?: number;
|
||
}
|
||
/**
|
||
* The environment configuration for a Lambda function on the AWS IoT Greengrass core.
|
||
*
|
||
* In an CloudFormation template, `Environment` is a property of the [`FunctionConfiguration`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-functionconfiguration.html) property type.
|
||
*
|
||
* @struct
|
||
* @stability external
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-environment.html
|
||
*/
|
||
interface EnvironmentProperty {
|
||
/**
|
||
* Indicates whether the function is allowed to access the `/sys` directory on the core device, which allows the read device information from `/sys` .
|
||
*
|
||
* > This property applies only to Lambda functions that run in a Greengrass container.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-environment.html#cfn-greengrass-functiondefinitionversion-environment-accesssysfs
|
||
*/
|
||
readonly accessSysfs?: boolean | cdk.IResolvable;
|
||
/**
|
||
* Settings for the Lambda execution environment in AWS IoT Greengrass .
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-environment.html#cfn-greengrass-functiondefinitionversion-environment-execution
|
||
*/
|
||
readonly execution?: CfnFunctionDefinitionVersion.ExecutionProperty | cdk.IResolvable;
|
||
/**
|
||
* A list of the [resources](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-resourceinstance.html) in the group that the function can access, with the corresponding read-only or read-write permissions. The maximum is 10 resources.
|
||
*
|
||
* > This property applies only to Lambda functions that run in a Greengrass container.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-environment.html#cfn-greengrass-functiondefinitionversion-environment-resourceaccesspolicies
|
||
*/
|
||
readonly resourceAccessPolicies?: Array<cdk.IResolvable | CfnFunctionDefinitionVersion.ResourceAccessPolicyProperty> | cdk.IResolvable;
|
||
/**
|
||
* Environment variables for the Lambda function.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-environment.html#cfn-greengrass-functiondefinitionversion-environment-variables
|
||
*/
|
||
readonly variables?: any | cdk.IResolvable;
|
||
}
|
||
/**
|
||
* A list of the [resources](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-resourceinstance.html) in the group that the function can access, with the corresponding read-only or read-write permissions. The maximum is 10 resources.
|
||
*
|
||
* > This property applies only to Lambda functions that run in a Greengrass container.
|
||
*
|
||
* In an CloudFormation template, `ResourceAccessPolicy` is a property of the [`Environment`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-environment.html) property type.
|
||
*
|
||
* @struct
|
||
* @stability external
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-resourceaccesspolicy.html
|
||
*/
|
||
interface ResourceAccessPolicyProperty {
|
||
/**
|
||
* The read-only or read-write access that the Lambda function has to the resource.
|
||
*
|
||
* Valid values are `ro` or `rw` .
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-resourceaccesspolicy.html#cfn-greengrass-functiondefinitionversion-resourceaccesspolicy-permission
|
||
*/
|
||
readonly permission?: string;
|
||
/**
|
||
* The ID of the resource.
|
||
*
|
||
* This ID is assigned to the resource when you create the resource definition.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-resourceaccesspolicy.html#cfn-greengrass-functiondefinitionversion-resourceaccesspolicy-resourceid
|
||
*/
|
||
readonly resourceId: string;
|
||
}
|
||
}
|
||
/**
|
||
* Properties for defining a `CfnFunctionDefinitionVersion`
|
||
*
|
||
* @struct
|
||
* @stability external
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-functiondefinitionversion.html
|
||
*/
|
||
export interface CfnFunctionDefinitionVersionProps {
|
||
/**
|
||
* The default configuration that applies to all Lambda functions in the group.
|
||
*
|
||
* Individual Lambda functions can override these settings.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-functiondefinitionversion.html#cfn-greengrass-functiondefinitionversion-defaultconfig
|
||
*/
|
||
readonly defaultConfig?: CfnFunctionDefinitionVersion.DefaultConfigProperty | cdk.IResolvable;
|
||
/**
|
||
* The ID of the function definition associated with this version.
|
||
*
|
||
* This value is a GUID.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-functiondefinitionversion.html#cfn-greengrass-functiondefinitionversion-functiondefinitionid
|
||
*/
|
||
readonly functionDefinitionId: string;
|
||
/**
|
||
* The functions in this version.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-functiondefinitionversion.html#cfn-greengrass-functiondefinitionversion-functions
|
||
*/
|
||
readonly functions: Array<CfnFunctionDefinitionVersion.FunctionProperty | cdk.IResolvable> | cdk.IResolvable;
|
||
}
|
||
/**
|
||
* AWS IoT Greengrass seamlessly extends AWS to edge devices so they can act locally on the data they generate, while still using the cloud for management, analytics, and durable storage.
|
||
*
|
||
* With AWS IoT Greengrass , connected devices can run AWS Lambda functions, execute predictions based on machine learning models, keep device data in sync, and communicate with other devices securely – even when not connected to the internet. For more information, see the [Developer Guide](https://docs.aws.amazon.com/greengrass/v1/developerguide/what-is-gg.html) .
|
||
*
|
||
* > For AWS Region support, see [CloudFormation Support for AWS IoT Greengrass](https://docs.aws.amazon.com/greengrass/v1/developerguide/cloudformation-support.html) in the *Developer Guide* .
|
||
*
|
||
* The `AWS::Greengrass::Group` resource represents a group in AWS IoT Greengrass . In the AWS IoT Greengrass API, groups are used to organize your group versions.
|
||
*
|
||
* Groups can reference multiple group versions. All group versions must be associated with a group. A group version references a device definition version, subscription definition version, and other version types that contain the components you want to deploy to a Greengrass core device.
|
||
*
|
||
* To deploy a group version, the group version must reference a core definition version that contains one core. Other version types are optionally included, depending on your business need.
|
||
*
|
||
* > When you create a group, you can optionally include an initial group version. To associate a group version later, create a [`AWS::Greengrass::GroupVersion`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-groupversion.html) resource and specify the ID of this group.
|
||
* >
|
||
* > To change group components (such as devices, subscriptions, or functions), you must create new versions. This is because versions are immutable. For example, to add a function, you create a function definition version that contains the new function (and all other functions that you want to deploy). Then you create a group version that references the new function definition version (and all other version types that you want to deploy).
|
||
*
|
||
* *Deploying a Group Version*
|
||
*
|
||
* After you create the group version in your CloudFormation template, you can deploy it using the [`aws greengrass create-deployment`](https://docs.aws.amazon.com/greengrass/v1/apireference/createdeployment-post.html) command in the AWS CLI or from the *Greengrass* node in the AWS IoT console. To deploy a group version, you must have a Greengrass service role associated with your AWS account . For more information, see [CloudFormation Support for AWS IoT Greengrass](https://docs.aws.amazon.com/greengrass/v1/developerguide/cloudformation-support.html) in the *Developer Guide* .
|
||
*
|
||
* @cloudformationResource AWS::Greengrass::Group
|
||
* @stability external
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-group.html
|
||
*/
|
||
export declare class CfnGroup extends cdk.CfnResource implements cdk.IInspectable, IGroupRef, cdk.ITaggable {
|
||
/**
|
||
* The CloudFormation resource type name for this resource class.
|
||
*/
|
||
static readonly CFN_RESOURCE_TYPE_NAME: string;
|
||
/**
|
||
* Build a CfnGroup from CloudFormation properties
|
||
*
|
||
* A factory method that creates a new instance of this class from an object
|
||
* containing the CloudFormation properties of this resource.
|
||
* Used in the @aws-cdk/cloudformation-include module.
|
||
*
|
||
* @internal
|
||
*/
|
||
static _fromCloudFormation(scope: constructs.Construct, id: string, resourceAttributes: any, options: cfn_parse.FromCloudFormationOptions): CfnGroup;
|
||
/**
|
||
* Checks whether the given object is a CfnGroup
|
||
*/
|
||
static isCfnGroup(x: any): x is CfnGroup;
|
||
/**
|
||
* Creates a new IGroupRef from an ARN
|
||
*/
|
||
static fromGroupArn(scope: constructs.Construct, id: string, arn: string): IGroupRef;
|
||
/**
|
||
* Creates a new IGroupRef from a groupId
|
||
*/
|
||
static fromGroupId(scope: constructs.Construct, id: string, groupId: string): IGroupRef;
|
||
static arnForGroup(resource: IGroupRef): string;
|
||
/**
|
||
* The group version to include when the group is created.
|
||
*/
|
||
private _initialVersion?;
|
||
/**
|
||
* The name of the group.
|
||
*/
|
||
private _name;
|
||
/**
|
||
* The Amazon Resource Name (ARN) of the IAM role attached to the group.
|
||
*/
|
||
private _roleArn?;
|
||
/**
|
||
* Tag Manager which manages the tags for this resource
|
||
*/
|
||
readonly tags: cdk.TagManager;
|
||
/**
|
||
* Application-specific metadata to attach to the group.
|
||
*/
|
||
private _tagsRaw?;
|
||
protected readonly cfnPropertyNames: Record<string, string>;
|
||
/**
|
||
* Create a new `AWS::Greengrass::Group`.
|
||
*
|
||
* @param scope Scope in which this resource is defined
|
||
* @param id Construct identifier for this resource (unique in its scope)
|
||
* @param props Resource properties
|
||
*/
|
||
constructor(scope: constructs.Construct, id: string, props: CfnGroupProps);
|
||
get groupRef(): GroupReference;
|
||
/**
|
||
* The group version to include when the group is created.
|
||
*/
|
||
get initialVersion(): CfnGroup.GroupVersionProperty | cdk.IResolvable | undefined;
|
||
/**
|
||
* The group version to include when the group is created.
|
||
*/
|
||
set initialVersion(value: CfnGroup.GroupVersionProperty | cdk.IResolvable | undefined);
|
||
/**
|
||
* The name of the group.
|
||
*/
|
||
get name(): string;
|
||
/**
|
||
* The name of the group.
|
||
*/
|
||
set name(value: string);
|
||
/**
|
||
* The Amazon Resource Name (ARN) of the IAM role attached to the group.
|
||
*/
|
||
get roleArn(): string | undefined;
|
||
/**
|
||
* The Amazon Resource Name (ARN) of the IAM role attached to the group.
|
||
*/
|
||
set roleArn(value: string | undefined);
|
||
/**
|
||
* Application-specific metadata to attach to the group.
|
||
*/
|
||
get tagsRaw(): any | undefined;
|
||
/**
|
||
* Application-specific metadata to attach to the group.
|
||
*/
|
||
set tagsRaw(value: any | undefined);
|
||
/**
|
||
* The ARN of the `Group` , such as `arn:aws:greengrass:us-east-1: :/greengrass/definition/groups/1234a5b6-78cd-901e-2fgh-3i45j6k178l9` .
|
||
*
|
||
* @cloudformationAttribute Arn
|
||
*/
|
||
get attrArn(): string;
|
||
/**
|
||
* The ID of the `Group` , such as `1234a5b6-78cd-901e-2fgh-3i45j6k178l9` .
|
||
*
|
||
* @cloudformationAttribute Id
|
||
*/
|
||
get attrId(): string;
|
||
/**
|
||
* The ARN of the last `GroupVersion` that was added to the `Group` , such as `arn:aws:greengrass:us-east-1: :/greengrass/definition/groups/1234a5b6-78cd-901e-2fgh-3i45j6k178l9/versions/9876ac30-4bdb-4f9d-95af-b5fdb66be1a2` .
|
||
*
|
||
* @cloudformationAttribute LatestVersionArn
|
||
*/
|
||
get attrLatestVersionArn(): string;
|
||
/**
|
||
* The name of the `Group` , such as `MyGroup` .
|
||
*
|
||
* @cloudformationAttribute Name
|
||
*/
|
||
get attrName(): string;
|
||
/**
|
||
* The ARN of the IAM role that's attached to the `Group` , such as `arn:aws:iam:: :role/role-name` .
|
||
*
|
||
* @cloudformationAttribute RoleArn
|
||
*/
|
||
get attrRoleArn(): string;
|
||
/**
|
||
* The time (in milliseconds since the epoch) when the group role was attached to the `Group` .
|
||
*
|
||
* @cloudformationAttribute RoleAttachedAt
|
||
*/
|
||
get attrRoleAttachedAt(): string;
|
||
protected get cfnProperties(): Record<string, any>;
|
||
/**
|
||
* Examines the CloudFormation resource and discloses attributes
|
||
*
|
||
* @param inspector tree inspector to collect and process attributes
|
||
*/
|
||
inspect(inspector: cdk.TreeInspector): void;
|
||
protected renderProperties(props: Record<string, any>): Record<string, any>;
|
||
}
|
||
export declare namespace CfnGroup {
|
||
/**
|
||
* A group version in AWS IoT Greengrass , which references of a core definition version, device definition version, subscription definition version, and other version types that contain the components you want to deploy to a Greengrass core device.
|
||
*
|
||
* The group version must reference a core definition version that contains one core. Other version types are optionally included, depending on your business need.
|
||
*
|
||
* In an CloudFormation template, `GroupVersion` is the property type of the `InitialVersion` property in the [`AWS::Greengrass::Group`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-group.html) resource.
|
||
*
|
||
* @struct
|
||
* @stability external
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-group-groupversion.html
|
||
*/
|
||
interface GroupVersionProperty {
|
||
/**
|
||
* The Amazon Resource Name (ARN) of the connector definition version that contains the connectors you want to deploy with the group version.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-group-groupversion.html#cfn-greengrass-group-groupversion-connectordefinitionversionarn
|
||
*/
|
||
readonly connectorDefinitionVersionArn?: string;
|
||
/**
|
||
* The ARN of the core definition version that contains the core you want to deploy with the group version.
|
||
*
|
||
* Currently, the core definition version can contain only one core.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-group-groupversion.html#cfn-greengrass-group-groupversion-coredefinitionversionarn
|
||
*/
|
||
readonly coreDefinitionVersionArn?: string;
|
||
/**
|
||
* The ARN of the device definition version that contains the devices you want to deploy with the group version.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-group-groupversion.html#cfn-greengrass-group-groupversion-devicedefinitionversionarn
|
||
*/
|
||
readonly deviceDefinitionVersionArn?: string;
|
||
/**
|
||
* The ARN of the function definition version that contains the functions you want to deploy with the group version.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-group-groupversion.html#cfn-greengrass-group-groupversion-functiondefinitionversionarn
|
||
*/
|
||
readonly functionDefinitionVersionArn?: string;
|
||
/**
|
||
* The ARN of the logger definition version that contains the loggers you want to deploy with the group version.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-group-groupversion.html#cfn-greengrass-group-groupversion-loggerdefinitionversionarn
|
||
*/
|
||
readonly loggerDefinitionVersionArn?: string;
|
||
/**
|
||
* The ARN of the resource definition version that contains the resources you want to deploy with the group version.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-group-groupversion.html#cfn-greengrass-group-groupversion-resourcedefinitionversionarn
|
||
*/
|
||
readonly resourceDefinitionVersionArn?: string;
|
||
/**
|
||
* The ARN of the subscription definition version that contains the subscriptions you want to deploy with the group version.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-group-groupversion.html#cfn-greengrass-group-groupversion-subscriptiondefinitionversionarn
|
||
*/
|
||
readonly subscriptionDefinitionVersionArn?: string;
|
||
}
|
||
}
|
||
/**
|
||
* Properties for defining a `CfnGroup`
|
||
*
|
||
* @struct
|
||
* @stability external
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-group.html
|
||
*/
|
||
export interface CfnGroupProps {
|
||
/**
|
||
* The group version to include when the group is created.
|
||
*
|
||
* A group version references the Amazon Resource Name (ARN) of a core definition version, device definition version, subscription definition version, and other version types. The group version must reference a core definition version that contains one core. Other version types are optionally included, depending on your business need.
|
||
*
|
||
* > To associate a group version after the group is created, create an [`AWS::Greengrass::GroupVersion`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-groupversion.html) resource and specify the ID of this group.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-group.html#cfn-greengrass-group-initialversion
|
||
*/
|
||
readonly initialVersion?: CfnGroup.GroupVersionProperty | cdk.IResolvable;
|
||
/**
|
||
* The name of the group.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-group.html#cfn-greengrass-group-name
|
||
*/
|
||
readonly name: string;
|
||
/**
|
||
* The Amazon Resource Name (ARN) of the IAM role attached to the group.
|
||
*
|
||
* This role contains the permissions that Lambda functions and connectors use to interact with other AWS services.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-group.html#cfn-greengrass-group-rolearn
|
||
*/
|
||
readonly roleArn?: string;
|
||
/**
|
||
* Application-specific metadata to attach to the group.
|
||
*
|
||
* You can use tags in IAM policies to control access to AWS IoT Greengrass resources. You can also use tags to categorize your resources. For more information, see [Tagging Your AWS IoT Greengrass Resources](https://docs.aws.amazon.com/greengrass/v1/developerguide/tagging.html) in the *Developer Guide* .
|
||
*
|
||
* This `Json` property type is processed as a map of key-value pairs. It uses the following format, which is different from most `Tags` implementations in CloudFormation templates.
|
||
*
|
||
* ```json
|
||
* "Tags": { "KeyName0": "value", "KeyName1": "value", "KeyName2": "value"
|
||
* }
|
||
* ```
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-group.html#cfn-greengrass-group-tags
|
||
*/
|
||
readonly tags?: any;
|
||
}
|
||
/**
|
||
* The `AWS::Greengrass::GroupVersion` resource represents a group version in AWS IoT Greengrass .
|
||
*
|
||
* A group version references a core definition version, device definition version, subscription definition version, and other version types that contain the components you want to deploy to a Greengrass core device. The group version must reference a core definition version that contains one core. Other version types are optionally included, depending on your business need.
|
||
*
|
||
* > To create a group version, you must specify the ID of the group that you want to associate with the version. For information about creating a group, see [`AWS::Greengrass::Group`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-group.html) .
|
||
*
|
||
* @cloudformationResource AWS::Greengrass::GroupVersion
|
||
* @stability external
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-groupversion.html
|
||
*/
|
||
export declare class CfnGroupVersion extends cdk.CfnResource implements cdk.IInspectable, IGroupVersionRef {
|
||
/**
|
||
* The CloudFormation resource type name for this resource class.
|
||
*/
|
||
static readonly CFN_RESOURCE_TYPE_NAME: string;
|
||
/**
|
||
* Build a CfnGroupVersion from CloudFormation properties
|
||
*
|
||
* A factory method that creates a new instance of this class from an object
|
||
* containing the CloudFormation properties of this resource.
|
||
* Used in the @aws-cdk/cloudformation-include module.
|
||
*
|
||
* @internal
|
||
*/
|
||
static _fromCloudFormation(scope: constructs.Construct, id: string, resourceAttributes: any, options: cfn_parse.FromCloudFormationOptions): CfnGroupVersion;
|
||
/**
|
||
* Checks whether the given object is a CfnGroupVersion
|
||
*/
|
||
static isCfnGroupVersion(x: any): x is CfnGroupVersion;
|
||
/**
|
||
* The Amazon Resource Name (ARN) of the connector definition version that contains the connectors you want to deploy with the group version.
|
||
*/
|
||
private _connectorDefinitionVersionArn?;
|
||
/**
|
||
* The ARN of the core definition version that contains the core you want to deploy with the group version.
|
||
*/
|
||
private _coreDefinitionVersionArn?;
|
||
/**
|
||
* The ARN of the device definition version that contains the devices you want to deploy with the group version.
|
||
*/
|
||
private _deviceDefinitionVersionArn?;
|
||
/**
|
||
* The ARN of the function definition version that contains the functions you want to deploy with the group version.
|
||
*/
|
||
private _functionDefinitionVersionArn?;
|
||
/**
|
||
* The ID of the group associated with this version.
|
||
*/
|
||
private _groupId;
|
||
/**
|
||
* The ARN of the logger definition version that contains the loggers you want to deploy with the group version.
|
||
*/
|
||
private _loggerDefinitionVersionArn?;
|
||
/**
|
||
* The ARN of the resource definition version that contains the resources you want to deploy with the group version.
|
||
*/
|
||
private _resourceDefinitionVersionArn?;
|
||
/**
|
||
* The ARN of the subscription definition version that contains the subscriptions you want to deploy with the group version.
|
||
*/
|
||
private _subscriptionDefinitionVersionArn?;
|
||
protected readonly cfnPropertyNames: Record<string, string>;
|
||
/**
|
||
* Create a new `AWS::Greengrass::GroupVersion`.
|
||
*
|
||
* @param scope Scope in which this resource is defined
|
||
* @param id Construct identifier for this resource (unique in its scope)
|
||
* @param props Resource properties
|
||
*/
|
||
constructor(scope: constructs.Construct, id: string, props: CfnGroupVersionProps);
|
||
get groupVersionRef(): GroupVersionReference;
|
||
/**
|
||
* The Amazon Resource Name (ARN) of the connector definition version that contains the connectors you want to deploy with the group version.
|
||
*/
|
||
get connectorDefinitionVersionArn(): string | undefined;
|
||
/**
|
||
* The Amazon Resource Name (ARN) of the connector definition version that contains the connectors you want to deploy with the group version.
|
||
*/
|
||
set connectorDefinitionVersionArn(value: string | undefined);
|
||
/**
|
||
* The ARN of the core definition version that contains the core you want to deploy with the group version.
|
||
*/
|
||
get coreDefinitionVersionArn(): string | undefined;
|
||
/**
|
||
* The ARN of the core definition version that contains the core you want to deploy with the group version.
|
||
*/
|
||
set coreDefinitionVersionArn(value: string | undefined);
|
||
/**
|
||
* The ARN of the device definition version that contains the devices you want to deploy with the group version.
|
||
*/
|
||
get deviceDefinitionVersionArn(): string | undefined;
|
||
/**
|
||
* The ARN of the device definition version that contains the devices you want to deploy with the group version.
|
||
*/
|
||
set deviceDefinitionVersionArn(value: string | undefined);
|
||
/**
|
||
* The ARN of the function definition version that contains the functions you want to deploy with the group version.
|
||
*/
|
||
get functionDefinitionVersionArn(): string | undefined;
|
||
/**
|
||
* The ARN of the function definition version that contains the functions you want to deploy with the group version.
|
||
*/
|
||
set functionDefinitionVersionArn(value: string | undefined);
|
||
/**
|
||
* The ID of the group associated with this version.
|
||
*/
|
||
get groupId(): string;
|
||
/**
|
||
* The ID of the group associated with this version.
|
||
*/
|
||
set groupId(value: string);
|
||
/**
|
||
* The ARN of the logger definition version that contains the loggers you want to deploy with the group version.
|
||
*/
|
||
get loggerDefinitionVersionArn(): string | undefined;
|
||
/**
|
||
* The ARN of the logger definition version that contains the loggers you want to deploy with the group version.
|
||
*/
|
||
set loggerDefinitionVersionArn(value: string | undefined);
|
||
/**
|
||
* The ARN of the resource definition version that contains the resources you want to deploy with the group version.
|
||
*/
|
||
get resourceDefinitionVersionArn(): string | undefined;
|
||
/**
|
||
* The ARN of the resource definition version that contains the resources you want to deploy with the group version.
|
||
*/
|
||
set resourceDefinitionVersionArn(value: string | undefined);
|
||
/**
|
||
* The ARN of the subscription definition version that contains the subscriptions you want to deploy with the group version.
|
||
*/
|
||
get subscriptionDefinitionVersionArn(): string | undefined;
|
||
/**
|
||
* The ARN of the subscription definition version that contains the subscriptions you want to deploy with the group version.
|
||
*/
|
||
set subscriptionDefinitionVersionArn(value: string | undefined);
|
||
/**
|
||
* @cloudformationAttribute Id
|
||
*/
|
||
get attrId(): string;
|
||
protected get cfnProperties(): Record<string, any>;
|
||
/**
|
||
* Examines the CloudFormation resource and discloses attributes
|
||
*
|
||
* @param inspector tree inspector to collect and process attributes
|
||
*/
|
||
inspect(inspector: cdk.TreeInspector): void;
|
||
protected renderProperties(props: Record<string, any>): Record<string, any>;
|
||
}
|
||
/**
|
||
* Properties for defining a `CfnGroupVersion`
|
||
*
|
||
* @struct
|
||
* @stability external
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-groupversion.html
|
||
*/
|
||
export interface CfnGroupVersionProps {
|
||
/**
|
||
* The Amazon Resource Name (ARN) of the connector definition version that contains the connectors you want to deploy with the group version.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-groupversion.html#cfn-greengrass-groupversion-connectordefinitionversionarn
|
||
*/
|
||
readonly connectorDefinitionVersionArn?: string;
|
||
/**
|
||
* The ARN of the core definition version that contains the core you want to deploy with the group version.
|
||
*
|
||
* Currently, the core definition version can contain only one core.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-groupversion.html#cfn-greengrass-groupversion-coredefinitionversionarn
|
||
*/
|
||
readonly coreDefinitionVersionArn?: string;
|
||
/**
|
||
* The ARN of the device definition version that contains the devices you want to deploy with the group version.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-groupversion.html#cfn-greengrass-groupversion-devicedefinitionversionarn
|
||
*/
|
||
readonly deviceDefinitionVersionArn?: string;
|
||
/**
|
||
* The ARN of the function definition version that contains the functions you want to deploy with the group version.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-groupversion.html#cfn-greengrass-groupversion-functiondefinitionversionarn
|
||
*/
|
||
readonly functionDefinitionVersionArn?: string;
|
||
/**
|
||
* The ID of the group associated with this version.
|
||
*
|
||
* This value is a GUID.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-groupversion.html#cfn-greengrass-groupversion-groupid
|
||
*/
|
||
readonly groupId: string;
|
||
/**
|
||
* The ARN of the logger definition version that contains the loggers you want to deploy with the group version.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-groupversion.html#cfn-greengrass-groupversion-loggerdefinitionversionarn
|
||
*/
|
||
readonly loggerDefinitionVersionArn?: string;
|
||
/**
|
||
* The ARN of the resource definition version that contains the resources you want to deploy with the group version.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-groupversion.html#cfn-greengrass-groupversion-resourcedefinitionversionarn
|
||
*/
|
||
readonly resourceDefinitionVersionArn?: string;
|
||
/**
|
||
* The ARN of the subscription definition version that contains the subscriptions you want to deploy with the group version.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-groupversion.html#cfn-greengrass-groupversion-subscriptiondefinitionversionarn
|
||
*/
|
||
readonly subscriptionDefinitionVersionArn?: string;
|
||
}
|
||
/**
|
||
* The `AWS::Greengrass::LoggerDefinition` resource represents a logger definition for AWS IoT Greengrass .
|
||
*
|
||
* Logger definitions are used to organize your logger definition versions.
|
||
*
|
||
* Logger definitions can reference multiple logger definition versions. All logger definition versions must be associated with a logger definition. Each logger definition version can contain one or more loggers.
|
||
*
|
||
* > When you create a logger definition, you can optionally include an initial logger definition version. To associate a logger definition version later, create an [`AWS::Greengrass::LoggerDefinitionVersion`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-loggerdefinitionversion.html) resource and specify the ID of this logger definition.
|
||
* >
|
||
* > After you create the logger definition version that contains the loggers you want to deploy, you must add it to your group version. For more information, see [`AWS::Greengrass::Group`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-group.html) .
|
||
*
|
||
* @cloudformationResource AWS::Greengrass::LoggerDefinition
|
||
* @stability external
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-loggerdefinition.html
|
||
*/
|
||
export declare class CfnLoggerDefinition extends cdk.CfnResource implements cdk.IInspectable, ILoggerDefinitionRef, cdk.ITaggable {
|
||
/**
|
||
* The CloudFormation resource type name for this resource class.
|
||
*/
|
||
static readonly CFN_RESOURCE_TYPE_NAME: string;
|
||
/**
|
||
* Build a CfnLoggerDefinition from CloudFormation properties
|
||
*
|
||
* A factory method that creates a new instance of this class from an object
|
||
* containing the CloudFormation properties of this resource.
|
||
* Used in the @aws-cdk/cloudformation-include module.
|
||
*
|
||
* @internal
|
||
*/
|
||
static _fromCloudFormation(scope: constructs.Construct, id: string, resourceAttributes: any, options: cfn_parse.FromCloudFormationOptions): CfnLoggerDefinition;
|
||
/**
|
||
* Checks whether the given object is a CfnLoggerDefinition
|
||
*/
|
||
static isCfnLoggerDefinition(x: any): x is CfnLoggerDefinition;
|
||
/**
|
||
* Creates a new ILoggerDefinitionRef from an ARN
|
||
*/
|
||
static fromLoggerDefinitionArn(scope: constructs.Construct, id: string, arn: string): ILoggerDefinitionRef;
|
||
/**
|
||
* Creates a new ILoggerDefinitionRef from a loggerDefinitionId
|
||
*/
|
||
static fromLoggerDefinitionId(scope: constructs.Construct, id: string, loggerDefinitionId: string): ILoggerDefinitionRef;
|
||
static arnForLoggerDefinition(resource: ILoggerDefinitionRef): string;
|
||
/**
|
||
* The logger definition version to include when the logger definition is created.
|
||
*/
|
||
private _initialVersion?;
|
||
/**
|
||
* The name of the logger definition.
|
||
*/
|
||
private _name;
|
||
/**
|
||
* Tag Manager which manages the tags for this resource
|
||
*/
|
||
readonly tags: cdk.TagManager;
|
||
/**
|
||
* Application-specific metadata to attach to the logger definition.
|
||
*/
|
||
private _tagsRaw?;
|
||
protected readonly cfnPropertyNames: Record<string, string>;
|
||
/**
|
||
* Create a new `AWS::Greengrass::LoggerDefinition`.
|
||
*
|
||
* @param scope Scope in which this resource is defined
|
||
* @param id Construct identifier for this resource (unique in its scope)
|
||
* @param props Resource properties
|
||
*/
|
||
constructor(scope: constructs.Construct, id: string, props: CfnLoggerDefinitionProps);
|
||
get loggerDefinitionRef(): LoggerDefinitionReference;
|
||
/**
|
||
* The logger definition version to include when the logger definition is created.
|
||
*/
|
||
get initialVersion(): cdk.IResolvable | CfnLoggerDefinition.LoggerDefinitionVersionProperty | undefined;
|
||
/**
|
||
* The logger definition version to include when the logger definition is created.
|
||
*/
|
||
set initialVersion(value: cdk.IResolvable | CfnLoggerDefinition.LoggerDefinitionVersionProperty | undefined);
|
||
/**
|
||
* The name of the logger definition.
|
||
*/
|
||
get name(): string;
|
||
/**
|
||
* The name of the logger definition.
|
||
*/
|
||
set name(value: string);
|
||
/**
|
||
* Application-specific metadata to attach to the logger definition.
|
||
*/
|
||
get tagsRaw(): any | undefined;
|
||
/**
|
||
* Application-specific metadata to attach to the logger definition.
|
||
*/
|
||
set tagsRaw(value: any | undefined);
|
||
/**
|
||
* The Amazon Resource Name (ARN) of the `LoggerDefinition` , such as `arn:aws:greengrass:us-east-1: :/greengrass/definition/loggers/1234a5b6-78cd-901e-2fgh-3i45j6k178l9` .
|
||
*
|
||
* @cloudformationAttribute Arn
|
||
*/
|
||
get attrArn(): string;
|
||
/**
|
||
* The ID of the `LoggerDefinition` , such as `1234a5b6-78cd-901e-2fgh-3i45j6k178l9` .
|
||
*
|
||
* @cloudformationAttribute Id
|
||
*/
|
||
get attrId(): string;
|
||
/**
|
||
* The ARN of the last `LoggerDefinitionVersion` that was added to the `LoggerDefinition` , such as `arn:aws:greengrass:us-east-1: :/greengrass/definition/loggers/1234a5b6-78cd-901e-2fgh-3i45j6k178l9/versions/9876ac30-4bdb-4f9d-95af-b5fdb66be1a2` .
|
||
*
|
||
* @cloudformationAttribute LatestVersionArn
|
||
*/
|
||
get attrLatestVersionArn(): string;
|
||
/**
|
||
* The name of the `LoggerDefinition` , such as `MyLoggerDefinition` .
|
||
*
|
||
* @cloudformationAttribute Name
|
||
*/
|
||
get attrName(): string;
|
||
protected get cfnProperties(): Record<string, any>;
|
||
/**
|
||
* Examines the CloudFormation resource and discloses attributes
|
||
*
|
||
* @param inspector tree inspector to collect and process attributes
|
||
*/
|
||
inspect(inspector: cdk.TreeInspector): void;
|
||
protected renderProperties(props: Record<string, any>): Record<string, any>;
|
||
}
|
||
export declare namespace CfnLoggerDefinition {
|
||
/**
|
||
* A logger definition version contains a list of [loggers](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-loggerdefinition-logger.html) .
|
||
*
|
||
* > After you create a logger definition version that contains the loggers you want to deploy, you must add it to your group version. For more information, see [`AWS::Greengrass::Group`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-group.html) .
|
||
*
|
||
* In an CloudFormation template, `LoggerDefinitionVersion` is the property type of the `InitialVersion` property in the [`AWS::Greengrass::LoggerDefinition`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-loggerdefinition.html) resource.
|
||
*
|
||
* @struct
|
||
* @stability external
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-loggerdefinition-loggerdefinitionversion.html
|
||
*/
|
||
interface LoggerDefinitionVersionProperty {
|
||
/**
|
||
* The loggers in this version.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-loggerdefinition-loggerdefinitionversion.html#cfn-greengrass-loggerdefinition-loggerdefinitionversion-loggers
|
||
*/
|
||
readonly loggers: Array<cdk.IResolvable | CfnLoggerDefinition.LoggerProperty> | cdk.IResolvable;
|
||
}
|
||
/**
|
||
* A logger represents logging settings for the AWS IoT Greengrass group, which can be stored in CloudWatch and the local file system of your core device.
|
||
*
|
||
* All log entries include a timestamp, log level, and information about the event. For more information, see [Monitoring with AWS IoT Greengrass Logs](https://docs.aws.amazon.com/greengrass/v1/developerguide/greengrass-logs-overview.html) in the *Developer Guide* .
|
||
*
|
||
* In an CloudFormation template, the `Loggers` property of the [`LoggerDefinitionVersion`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-loggerdefinition-loggerdefinitionversion.html) property type contains a list of `Logger` property types.
|
||
*
|
||
* @struct
|
||
* @stability external
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-loggerdefinition-logger.html
|
||
*/
|
||
interface LoggerProperty {
|
||
/**
|
||
* The source of the log event.
|
||
*
|
||
* Valid values are `GreengrassSystem` or `Lambda` . When `GreengrassSystem` is used, events from Greengrass system components are logged. When `Lambda` is used, events from user-defined Lambda functions are logged.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-loggerdefinition-logger.html#cfn-greengrass-loggerdefinition-logger-component
|
||
*/
|
||
readonly component: string;
|
||
/**
|
||
* A descriptive or arbitrary ID for the logger.
|
||
*
|
||
* This value must be unique within the logger definition version. Maximum length is 128 characters with pattern `[a-zA-Z0-9:_-]+` .
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-loggerdefinition-logger.html#cfn-greengrass-loggerdefinition-logger-id
|
||
*/
|
||
readonly id: string;
|
||
/**
|
||
* The log-level threshold.
|
||
*
|
||
* Log events below this threshold are filtered out and aren't stored. Valid values are `DEBUG` , `INFO` (recommended), `WARN` , `ERROR` , or `FATAL` .
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-loggerdefinition-logger.html#cfn-greengrass-loggerdefinition-logger-level
|
||
*/
|
||
readonly level: string;
|
||
/**
|
||
* The amount of file space (in KB) to use when writing logs to the local file system.
|
||
*
|
||
* This property does not apply for CloudWatch Logs .
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-loggerdefinition-logger.html#cfn-greengrass-loggerdefinition-logger-space
|
||
*/
|
||
readonly space?: number;
|
||
/**
|
||
* The storage mechanism for log events.
|
||
*
|
||
* Valid values are `FileSystem` or `AWSCloudWatch` . When `AWSCloudWatch` is used, log events are sent to CloudWatch Logs . When `FileSystem` is used, log events are stored on the local file system.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-loggerdefinition-logger.html#cfn-greengrass-loggerdefinition-logger-type
|
||
*/
|
||
readonly type: string;
|
||
}
|
||
}
|
||
/**
|
||
* Properties for defining a `CfnLoggerDefinition`
|
||
*
|
||
* @struct
|
||
* @stability external
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-loggerdefinition.html
|
||
*/
|
||
export interface CfnLoggerDefinitionProps {
|
||
/**
|
||
* The logger definition version to include when the logger definition is created.
|
||
*
|
||
* A logger definition version contains a list of [`logger`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-loggerdefinition-logger.html) property types.
|
||
*
|
||
* > To associate a logger definition version after the logger definition is created, create an [`AWS::Greengrass::LoggerDefinitionVersion`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-loggerdefinitionversion.html) resource and specify the ID of this logger definition.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-loggerdefinition.html#cfn-greengrass-loggerdefinition-initialversion
|
||
*/
|
||
readonly initialVersion?: cdk.IResolvable | CfnLoggerDefinition.LoggerDefinitionVersionProperty;
|
||
/**
|
||
* The name of the logger definition.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-loggerdefinition.html#cfn-greengrass-loggerdefinition-name
|
||
*/
|
||
readonly name: string;
|
||
/**
|
||
* Application-specific metadata to attach to the logger definition.
|
||
*
|
||
* You can use tags in IAM policies to control access to AWS IoT Greengrass resources. You can also use tags to categorize your resources. For more information, see [Tagging Your AWS IoT Greengrass Resources](https://docs.aws.amazon.com/greengrass/v1/developerguide/tagging.html) in the *Developer Guide* .
|
||
*
|
||
* This `Json` property type is processed as a map of key-value pairs. It uses the following format, which is different from most `Tags` implementations in CloudFormation templates.
|
||
*
|
||
* ```json
|
||
* "Tags": { "KeyName0": "value", "KeyName1": "value", "KeyName2": "value"
|
||
* }
|
||
* ```
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-loggerdefinition.html#cfn-greengrass-loggerdefinition-tags
|
||
*/
|
||
readonly tags?: any;
|
||
}
|
||
/**
|
||
* The `AWS::Greengrass::LoggerDefinitionVersion` resource represents a logger definition version for AWS IoT Greengrass .
|
||
*
|
||
* A logger definition version contains a list of loggers.
|
||
*
|
||
* > To create a logger definition version, you must specify the ID of the logger definition that you want to associate with the version. For information about creating a logger definition, see [`AWS::Greengrass::LoggerDefinition`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-loggerdefinition.html) .
|
||
* >
|
||
* > After you create a logger definition version that contains the loggers you want to deploy, you must add it to your group version. For more information, see [`AWS::Greengrass::Group`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-group.html) .
|
||
*
|
||
* @cloudformationResource AWS::Greengrass::LoggerDefinitionVersion
|
||
* @stability external
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-loggerdefinitionversion.html
|
||
*/
|
||
export declare class CfnLoggerDefinitionVersion extends cdk.CfnResource implements cdk.IInspectable, ILoggerDefinitionVersionRef {
|
||
/**
|
||
* The CloudFormation resource type name for this resource class.
|
||
*/
|
||
static readonly CFN_RESOURCE_TYPE_NAME: string;
|
||
/**
|
||
* Build a CfnLoggerDefinitionVersion from CloudFormation properties
|
||
*
|
||
* A factory method that creates a new instance of this class from an object
|
||
* containing the CloudFormation properties of this resource.
|
||
* Used in the @aws-cdk/cloudformation-include module.
|
||
*
|
||
* @internal
|
||
*/
|
||
static _fromCloudFormation(scope: constructs.Construct, id: string, resourceAttributes: any, options: cfn_parse.FromCloudFormationOptions): CfnLoggerDefinitionVersion;
|
||
/**
|
||
* Checks whether the given object is a CfnLoggerDefinitionVersion
|
||
*/
|
||
static isCfnLoggerDefinitionVersion(x: any): x is CfnLoggerDefinitionVersion;
|
||
/**
|
||
* The ID of the logger definition associated with this version.
|
||
*/
|
||
private _loggerDefinitionId;
|
||
/**
|
||
* The loggers in this version.
|
||
*/
|
||
private _loggers;
|
||
protected readonly cfnPropertyNames: Record<string, string>;
|
||
/**
|
||
* Create a new `AWS::Greengrass::LoggerDefinitionVersion`.
|
||
*
|
||
* @param scope Scope in which this resource is defined
|
||
* @param id Construct identifier for this resource (unique in its scope)
|
||
* @param props Resource properties
|
||
*/
|
||
constructor(scope: constructs.Construct, id: string, props: CfnLoggerDefinitionVersionProps);
|
||
get loggerDefinitionVersionRef(): LoggerDefinitionVersionReference;
|
||
/**
|
||
* The ID of the logger definition associated with this version.
|
||
*/
|
||
get loggerDefinitionId(): string;
|
||
/**
|
||
* The ID of the logger definition associated with this version.
|
||
*/
|
||
set loggerDefinitionId(value: string);
|
||
/**
|
||
* The loggers in this version.
|
||
*/
|
||
get loggers(): Array<cdk.IResolvable | CfnLoggerDefinitionVersion.LoggerProperty> | cdk.IResolvable;
|
||
/**
|
||
* The loggers in this version.
|
||
*/
|
||
set loggers(value: Array<cdk.IResolvable | CfnLoggerDefinitionVersion.LoggerProperty> | cdk.IResolvable);
|
||
/**
|
||
* @cloudformationAttribute Id
|
||
*/
|
||
get attrId(): string;
|
||
protected get cfnProperties(): Record<string, any>;
|
||
/**
|
||
* Examines the CloudFormation resource and discloses attributes
|
||
*
|
||
* @param inspector tree inspector to collect and process attributes
|
||
*/
|
||
inspect(inspector: cdk.TreeInspector): void;
|
||
protected renderProperties(props: Record<string, any>): Record<string, any>;
|
||
}
|
||
export declare namespace CfnLoggerDefinitionVersion {
|
||
/**
|
||
* A logger represents logging settings for the AWS IoT Greengrass group, which can be stored in CloudWatch and the local file system of your core device.
|
||
*
|
||
* All log entries include a timestamp, log level, and information about the event. For more information, see [Monitoring with AWS IoT Greengrass Logs](https://docs.aws.amazon.com/greengrass/v1/developerguide/greengrass-logs-overview.html) in the *Developer Guide* .
|
||
*
|
||
* In an CloudFormation template, the `Loggers` property of the [`AWS::Greengrass::LoggerDefinitionVersion`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-loggerdefinitionversion.html) resource contains a list of `Logger` property types.
|
||
*
|
||
* @struct
|
||
* @stability external
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-loggerdefinitionversion-logger.html
|
||
*/
|
||
interface LoggerProperty {
|
||
/**
|
||
* The source of the log event.
|
||
*
|
||
* Valid values are `GreengrassSystem` or `Lambda` . When `GreengrassSystem` is used, events from Greengrass system components are logged. When `Lambda` is used, events from user-defined Lambda functions are logged.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-loggerdefinitionversion-logger.html#cfn-greengrass-loggerdefinitionversion-logger-component
|
||
*/
|
||
readonly component: string;
|
||
/**
|
||
* A descriptive or arbitrary ID for the logger.
|
||
*
|
||
* This value must be unique within the logger definition version. Maximum length is 128 characters with pattern `[a-zA-Z0-9:_-]+` .
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-loggerdefinitionversion-logger.html#cfn-greengrass-loggerdefinitionversion-logger-id
|
||
*/
|
||
readonly id: string;
|
||
/**
|
||
* The log-level threshold.
|
||
*
|
||
* Log events below this threshold are filtered out and aren't stored. Valid values are `DEBUG` , `INFO` (recommended), `WARN` , `ERROR` , or `FATAL` .
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-loggerdefinitionversion-logger.html#cfn-greengrass-loggerdefinitionversion-logger-level
|
||
*/
|
||
readonly level: string;
|
||
/**
|
||
* The amount of file space (in KB) to use when writing logs to the local file system.
|
||
*
|
||
* This property does not apply for CloudWatch Logs .
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-loggerdefinitionversion-logger.html#cfn-greengrass-loggerdefinitionversion-logger-space
|
||
*/
|
||
readonly space?: number;
|
||
/**
|
||
* The storage mechanism for log events.
|
||
*
|
||
* Valid values are `FileSystem` or `AWSCloudWatch` . When `AWSCloudWatch` is used, log events are sent to CloudWatch Logs . When `FileSystem` is used, log events are stored on the local file system.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-loggerdefinitionversion-logger.html#cfn-greengrass-loggerdefinitionversion-logger-type
|
||
*/
|
||
readonly type: string;
|
||
}
|
||
}
|
||
/**
|
||
* Properties for defining a `CfnLoggerDefinitionVersion`
|
||
*
|
||
* @struct
|
||
* @stability external
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-loggerdefinitionversion.html
|
||
*/
|
||
export interface CfnLoggerDefinitionVersionProps {
|
||
/**
|
||
* The ID of the logger definition associated with this version.
|
||
*
|
||
* This value is a GUID.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-loggerdefinitionversion.html#cfn-greengrass-loggerdefinitionversion-loggerdefinitionid
|
||
*/
|
||
readonly loggerDefinitionId: string;
|
||
/**
|
||
* The loggers in this version.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-loggerdefinitionversion.html#cfn-greengrass-loggerdefinitionversion-loggers
|
||
*/
|
||
readonly loggers: Array<cdk.IResolvable | CfnLoggerDefinitionVersion.LoggerProperty> | cdk.IResolvable;
|
||
}
|
||
/**
|
||
* The `AWS::Greengrass::ResourceDefinition` resource represents a resource definition for AWS IoT Greengrass .
|
||
*
|
||
* Resource definitions are used to organize your resource definition versions.
|
||
*
|
||
* Resource definitions can reference multiple resource definition versions. All resource definition versions must be associated with a resource definition. Each resource definition version can contain one or more resources. (In CloudFormation , resources are named *resource instances* .)
|
||
*
|
||
* > When you create a resource definition, you can optionally include an initial resource definition version. To associate a resource definition version later, create an [`AWS::Greengrass::ResourceDefinitionVersion`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-resourcedefinitionversion.html) resource and specify the ID of this resource definition.
|
||
* >
|
||
* > After you create the resource definition version that contains the resources you want to deploy, you must add it to your group version. For more information, see [`AWS::Greengrass::Group`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-group.html) .
|
||
*
|
||
* @cloudformationResource AWS::Greengrass::ResourceDefinition
|
||
* @stability external
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-resourcedefinition.html
|
||
*/
|
||
export declare class CfnResourceDefinition extends cdk.CfnResource implements cdk.IInspectable, IResourceDefinitionRef, cdk.ITaggable {
|
||
/**
|
||
* The CloudFormation resource type name for this resource class.
|
||
*/
|
||
static readonly CFN_RESOURCE_TYPE_NAME: string;
|
||
/**
|
||
* Build a CfnResourceDefinition from CloudFormation properties
|
||
*
|
||
* A factory method that creates a new instance of this class from an object
|
||
* containing the CloudFormation properties of this resource.
|
||
* Used in the @aws-cdk/cloudformation-include module.
|
||
*
|
||
* @internal
|
||
*/
|
||
static _fromCloudFormation(scope: constructs.Construct, id: string, resourceAttributes: any, options: cfn_parse.FromCloudFormationOptions): CfnResourceDefinition;
|
||
/**
|
||
* Checks whether the given object is a CfnResourceDefinition
|
||
*/
|
||
static isCfnResourceDefinition(x: any): x is CfnResourceDefinition;
|
||
/**
|
||
* Creates a new IResourceDefinitionRef from an ARN
|
||
*/
|
||
static fromResourceDefinitionArn(scope: constructs.Construct, id: string, arn: string): IResourceDefinitionRef;
|
||
/**
|
||
* Creates a new IResourceDefinitionRef from a resourceDefinitionId
|
||
*/
|
||
static fromResourceDefinitionId(scope: constructs.Construct, id: string, resourceDefinitionId: string): IResourceDefinitionRef;
|
||
static arnForResourceDefinition(resource: IResourceDefinitionRef): string;
|
||
/**
|
||
* The resource definition version to include when the resource definition is created.
|
||
*/
|
||
private _initialVersion?;
|
||
/**
|
||
* The name of the resource definition.
|
||
*/
|
||
private _name;
|
||
/**
|
||
* Tag Manager which manages the tags for this resource
|
||
*/
|
||
readonly tags: cdk.TagManager;
|
||
/**
|
||
* Application-specific metadata to attach to the resource definition.
|
||
*/
|
||
private _tagsRaw?;
|
||
protected readonly cfnPropertyNames: Record<string, string>;
|
||
/**
|
||
* Create a new `AWS::Greengrass::ResourceDefinition`.
|
||
*
|
||
* @param scope Scope in which this resource is defined
|
||
* @param id Construct identifier for this resource (unique in its scope)
|
||
* @param props Resource properties
|
||
*/
|
||
constructor(scope: constructs.Construct, id: string, props: CfnResourceDefinitionProps);
|
||
get resourceDefinitionRef(): ResourceDefinitionReference;
|
||
/**
|
||
* The resource definition version to include when the resource definition is created.
|
||
*/
|
||
get initialVersion(): cdk.IResolvable | CfnResourceDefinition.ResourceDefinitionVersionProperty | undefined;
|
||
/**
|
||
* The resource definition version to include when the resource definition is created.
|
||
*/
|
||
set initialVersion(value: cdk.IResolvable | CfnResourceDefinition.ResourceDefinitionVersionProperty | undefined);
|
||
/**
|
||
* The name of the resource definition.
|
||
*/
|
||
get name(): string;
|
||
/**
|
||
* The name of the resource definition.
|
||
*/
|
||
set name(value: string);
|
||
/**
|
||
* Application-specific metadata to attach to the resource definition.
|
||
*/
|
||
get tagsRaw(): any | undefined;
|
||
/**
|
||
* Application-specific metadata to attach to the resource definition.
|
||
*/
|
||
set tagsRaw(value: any | undefined);
|
||
/**
|
||
* The Amazon Resource Name (ARN) of the `ResourceDefinition` , such as `arn:aws:greengrass:us-east-1: :/greengrass/definition/resources/1234a5b6-78cd-901e-2fgh-3i45j6k178l9` .
|
||
*
|
||
* @cloudformationAttribute Arn
|
||
*/
|
||
get attrArn(): string;
|
||
/**
|
||
* The ID of the `ResourceDefinition` , such as `1234a5b6-78cd-901e-2fgh-3i45j6k178l9` .
|
||
*
|
||
* @cloudformationAttribute Id
|
||
*/
|
||
get attrId(): string;
|
||
/**
|
||
* The ARN of the last `ResourceDefinitionVersion` that was added to the `ResourceDefinition` , such as `arn:aws:greengrass:us-east-1: :/greengrass/definition/resources/1234a5b6-78cd-901e-2fgh-3i45j6k178l9/versions/9876ac30-4bdb-4f9d-95af-b5fdb66be1a2` .
|
||
*
|
||
* @cloudformationAttribute LatestVersionArn
|
||
*/
|
||
get attrLatestVersionArn(): string;
|
||
/**
|
||
* The name of the `ResourceDefinition` , such as `MyResourceDefinition` .
|
||
*
|
||
* @cloudformationAttribute Name
|
||
*/
|
||
get attrName(): string;
|
||
protected get cfnProperties(): Record<string, any>;
|
||
/**
|
||
* Examines the CloudFormation resource and discloses attributes
|
||
*
|
||
* @param inspector tree inspector to collect and process attributes
|
||
*/
|
||
inspect(inspector: cdk.TreeInspector): void;
|
||
protected renderProperties(props: Record<string, any>): Record<string, any>;
|
||
}
|
||
export declare namespace CfnResourceDefinition {
|
||
/**
|
||
* A resource definition version contains a list of resources. (In CloudFormation , resources are named *resource instances* .).
|
||
*
|
||
* > After you create a resource definition version that contains the resources you want to deploy, you must add it to your group version. For more information, see [`AWS::Greengrass::Group`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-group.html) .
|
||
*
|
||
* In an CloudFormation template, `ResourceDefinitionVersion` is the property type of the `InitialVersion` property in the [`AWS::Greengrass::ResourceDefinition`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-resourcedefinition.html) resource.
|
||
*
|
||
* @struct
|
||
* @stability external
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-resourcedefinitionversion.html
|
||
*/
|
||
interface ResourceDefinitionVersionProperty {
|
||
/**
|
||
* The resources in this version.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-resourcedefinitionversion.html#cfn-greengrass-resourcedefinition-resourcedefinitionversion-resources
|
||
*/
|
||
readonly resources: Array<cdk.IResolvable | CfnResourceDefinition.ResourceInstanceProperty> | cdk.IResolvable;
|
||
}
|
||
/**
|
||
* A local resource, machine learning resource, or secret resource.
|
||
*
|
||
* For more information, see [Access Local Resources with Lambda Functions](https://docs.aws.amazon.com/greengrass/v1/developerguide/access-local-resources.html) , [Perform Machine Learning Inference](https://docs.aws.amazon.com/greengrass/v1/developerguide/ml-inference.html) , and [Deploy Secrets to the AWS IoT Greengrass Core](https://docs.aws.amazon.com/greengrass/v1/developerguide/secrets.html) in the *Developer Guide* .
|
||
*
|
||
* In an CloudFormation template, the `Resources` property of the [`AWS::Greengrass::ResourceDefinition`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-resourcedefinition.html) resource contains a list of `ResourceInstance` property types.
|
||
*
|
||
* @struct
|
||
* @stability external
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-resourceinstance.html
|
||
*/
|
||
interface ResourceInstanceProperty {
|
||
/**
|
||
* A descriptive or arbitrary ID for the resource.
|
||
*
|
||
* This value must be unique within the resource definition version. Maximum length is 128 characters with pattern `[a-zA-Z0-9:_-]+` .
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-resourceinstance.html#cfn-greengrass-resourcedefinition-resourceinstance-id
|
||
*/
|
||
readonly id: string;
|
||
/**
|
||
* The descriptive resource name, which is displayed on the AWS IoT Greengrass console.
|
||
*
|
||
* Maximum length 128 characters with pattern [a-zA-Z0-9:_-]+. This must be unique within a Greengrass group.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-resourceinstance.html#cfn-greengrass-resourcedefinition-resourceinstance-name
|
||
*/
|
||
readonly name: string;
|
||
/**
|
||
* A container for resource data.
|
||
*
|
||
* The container takes only one of the following supported resource data types: `LocalDeviceResourceData` , `LocalVolumeResourceData` , `SageMakerMachineLearningModelResourceData` , `S3MachineLearningModelResourceData` , or `SecretsManagerSecretResourceData` .
|
||
*
|
||
* > Only one resource type can be defined for a `ResourceDataContainer` instance.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-resourceinstance.html#cfn-greengrass-resourcedefinition-resourceinstance-resourcedatacontainer
|
||
*/
|
||
readonly resourceDataContainer: cdk.IResolvable | CfnResourceDefinition.ResourceDataContainerProperty;
|
||
}
|
||
/**
|
||
* A container for resource data, which defines the resource type.
|
||
*
|
||
* The container takes only one of the following supported resource data types: `LocalDeviceResourceData` , `LocalVolumeResourceData` , `SageMakerMachineLearningModelResourceData` , `S3MachineLearningModelResourceData` , or `SecretsManagerSecretResourceData` .
|
||
*
|
||
* > Only one resource type can be defined for a `ResourceDataContainer` instance.
|
||
*
|
||
* In an CloudFormation template, `ResourceDataContainer` is a property of the [`ResourceInstance`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-resourceinstance.html) property type.
|
||
*
|
||
* @struct
|
||
* @stability external
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-resourcedatacontainer.html
|
||
*/
|
||
interface ResourceDataContainerProperty {
|
||
/**
|
||
* Settings for a local device resource.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-resourcedatacontainer.html#cfn-greengrass-resourcedefinition-resourcedatacontainer-localdeviceresourcedata
|
||
*/
|
||
readonly localDeviceResourceData?: cdk.IResolvable | CfnResourceDefinition.LocalDeviceResourceDataProperty;
|
||
/**
|
||
* Settings for a local volume resource.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-resourcedatacontainer.html#cfn-greengrass-resourcedefinition-resourcedatacontainer-localvolumeresourcedata
|
||
*/
|
||
readonly localVolumeResourceData?: cdk.IResolvable | CfnResourceDefinition.LocalVolumeResourceDataProperty;
|
||
/**
|
||
* Settings for a machine learning resource stored in Amazon S3 .
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-resourcedatacontainer.html#cfn-greengrass-resourcedefinition-resourcedatacontainer-s3machinelearningmodelresourcedata
|
||
*/
|
||
readonly s3MachineLearningModelResourceData?: cdk.IResolvable | CfnResourceDefinition.S3MachineLearningModelResourceDataProperty;
|
||
/**
|
||
* Settings for a machine learning resource saved as an SageMaker AI training job.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-resourcedatacontainer.html#cfn-greengrass-resourcedefinition-resourcedatacontainer-sagemakermachinelearningmodelresourcedata
|
||
*/
|
||
readonly sageMakerMachineLearningModelResourceData?: cdk.IResolvable | CfnResourceDefinition.SageMakerMachineLearningModelResourceDataProperty;
|
||
/**
|
||
* Settings for a secret resource.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-resourcedatacontainer.html#cfn-greengrass-resourcedefinition-resourcedatacontainer-secretsmanagersecretresourcedata
|
||
*/
|
||
readonly secretsManagerSecretResourceData?: cdk.IResolvable | CfnResourceDefinition.SecretsManagerSecretResourceDataProperty;
|
||
}
|
||
/**
|
||
* Settings for a secret resource, which references a secret from AWS Secrets Manager .
|
||
*
|
||
* AWS IoT Greengrass stores a local, encrypted copy of the secret on the Greengrass core, where it can be securely accessed by connectors and Lambda functions. For more information, see [Deploy Secrets to the AWS IoT Greengrass Core](https://docs.aws.amazon.com/greengrass/v1/developerguide/secrets.html) in the *Developer Guide* .
|
||
*
|
||
* In an CloudFormation template, `SecretsManagerSecretResourceData` can be used in the [`ResourceDataContainer`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-resourcedatacontainer.html) property type.
|
||
*
|
||
* @struct
|
||
* @stability external
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-secretsmanagersecretresourcedata.html
|
||
*/
|
||
interface SecretsManagerSecretResourceDataProperty {
|
||
/**
|
||
* The staging labels whose values you want to make available on the core, in addition to `AWSCURRENT` .
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-secretsmanagersecretresourcedata.html#cfn-greengrass-resourcedefinition-secretsmanagersecretresourcedata-additionalstaginglabelstodownload
|
||
*/
|
||
readonly additionalStagingLabelsToDownload?: Array<string>;
|
||
/**
|
||
* The Amazon Resource Name (ARN) of the Secrets Manager secret to make available on the core.
|
||
*
|
||
* The value of the secret's latest version (represented by the `AWSCURRENT` staging label) is included by default.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-secretsmanagersecretresourcedata.html#cfn-greengrass-resourcedefinition-secretsmanagersecretresourcedata-arn
|
||
*/
|
||
readonly arn: string;
|
||
}
|
||
/**
|
||
* Settings for an Secrets Manager machine learning resource.
|
||
*
|
||
* For more information, see [Perform Machine Learning Inference](https://docs.aws.amazon.com/greengrass/v1/developerguide/ml-inference.html) in the *Developer Guide* .
|
||
*
|
||
* In an CloudFormation template, `SageMakerMachineLearningModelResourceData` can be used in the [`ResourceDataContainer`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-resourcedatacontainer.html) property type.
|
||
*
|
||
* @struct
|
||
* @stability external
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-sagemakermachinelearningmodelresourcedata.html
|
||
*/
|
||
interface SageMakerMachineLearningModelResourceDataProperty {
|
||
/**
|
||
* The absolute local path of the resource inside the Lambda environment.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-sagemakermachinelearningmodelresourcedata.html#cfn-greengrass-resourcedefinition-sagemakermachinelearningmodelresourcedata-destinationpath
|
||
*/
|
||
readonly destinationPath: string;
|
||
/**
|
||
* The owner setting for the downloaded machine learning resource.
|
||
*
|
||
* For more information, see [Access Machine Learning Resources from Lambda Functions](https://docs.aws.amazon.com/greengrass/v1/developerguide/access-ml-resources.html) in the *Developer Guide* .
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-sagemakermachinelearningmodelresourcedata.html#cfn-greengrass-resourcedefinition-sagemakermachinelearningmodelresourcedata-ownersetting
|
||
*/
|
||
readonly ownerSetting?: cdk.IResolvable | CfnResourceDefinition.ResourceDownloadOwnerSettingProperty;
|
||
/**
|
||
* The Amazon Resource Name (ARN) of the Amazon SageMaker AI training job that represents the source model.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-sagemakermachinelearningmodelresourcedata.html#cfn-greengrass-resourcedefinition-sagemakermachinelearningmodelresourcedata-sagemakerjobarn
|
||
*/
|
||
readonly sageMakerJobArn: string;
|
||
}
|
||
/**
|
||
* The owner setting for a downloaded machine learning resource.
|
||
*
|
||
* For more information, see [Access Machine Learning Resources from Lambda Functions](https://docs.aws.amazon.com/greengrass/v1/developerguide/access-ml-resources.html) in the *Developer Guide* .
|
||
*
|
||
* In an CloudFormation template, `ResourceDownloadOwnerSetting` is the property type of the `OwnerSetting` property for the [`S3MachineLearningModelResourceData`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-s3machinelearningmodelresourcedata.html) and [`SageMakerMachineLearningModelResourceData`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-sagemakermachinelearningmodelresourcedata.html) property types.
|
||
*
|
||
* @struct
|
||
* @stability external
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-resourcedownloadownersetting.html
|
||
*/
|
||
interface ResourceDownloadOwnerSettingProperty {
|
||
/**
|
||
* The group owner of the machine learning resource.
|
||
*
|
||
* This is the group ID (GID) of an existing Linux OS group on the system. The group's permissions are added to the Lambda process.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-resourcedownloadownersetting.html#cfn-greengrass-resourcedefinition-resourcedownloadownersetting-groupowner
|
||
*/
|
||
readonly groupOwner: string;
|
||
/**
|
||
* The permissions that the group owner has to the machine learning resource.
|
||
*
|
||
* Valid values are `rw` (read-write) or `ro` (read-only).
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-resourcedownloadownersetting.html#cfn-greengrass-resourcedefinition-resourcedownloadownersetting-grouppermission
|
||
*/
|
||
readonly groupPermission: string;
|
||
}
|
||
/**
|
||
* Settings for a local volume resource, which represents a file or directory on the root file system.
|
||
*
|
||
* For more information, see [Access Local Resources with Lambda Functions](https://docs.aws.amazon.com/greengrass/v1/developerguide/access-local-resources.html) in the *Developer Guide* .
|
||
*
|
||
* In an CloudFormation template, `LocalVolumeResourceData` can be used in the [`ResourceDataContainer`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-resourcedatacontainer.html) property type.
|
||
*
|
||
* @struct
|
||
* @stability external
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-localvolumeresourcedata.html
|
||
*/
|
||
interface LocalVolumeResourceDataProperty {
|
||
/**
|
||
* The absolute local path of the resource in the Lambda environment.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-localvolumeresourcedata.html#cfn-greengrass-resourcedefinition-localvolumeresourcedata-destinationpath
|
||
*/
|
||
readonly destinationPath: string;
|
||
/**
|
||
* Settings that define additional Linux OS group permissions to give to the Lambda function process.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-localvolumeresourcedata.html#cfn-greengrass-resourcedefinition-localvolumeresourcedata-groupownersetting
|
||
*/
|
||
readonly groupOwnerSetting?: CfnResourceDefinition.GroupOwnerSettingProperty | cdk.IResolvable;
|
||
/**
|
||
* The local absolute path of the volume resource on the host.
|
||
*
|
||
* The source path for a volume resource type cannot start with `/sys` .
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-localvolumeresourcedata.html#cfn-greengrass-resourcedefinition-localvolumeresourcedata-sourcepath
|
||
*/
|
||
readonly sourcePath: string;
|
||
}
|
||
/**
|
||
* Settings that define additional Linux OS group permissions to give to the Lambda function process.
|
||
*
|
||
* You can give the permissions of the Linux group that owns the resource or choose another Linux group. These permissions are in addition to the function's `RunAs` permissions.
|
||
*
|
||
* In an CloudFormation template, `GroupOwnerSetting` is a property of the [`LocalDeviceResourceData`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-localdeviceresourcedata.html) and [`LocalVolumeResourceData`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-localvolumeresourcedata.html) property types.
|
||
*
|
||
* @struct
|
||
* @stability external
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-groupownersetting.html
|
||
*/
|
||
interface GroupOwnerSettingProperty {
|
||
/**
|
||
* Indicates whether to give the privileges of the Linux group that owns the resource to the Lambda process.
|
||
*
|
||
* This gives the Lambda process the file access permissions of the Linux group.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-groupownersetting.html#cfn-greengrass-resourcedefinition-groupownersetting-autoaddgroupowner
|
||
*/
|
||
readonly autoAddGroupOwner: boolean | cdk.IResolvable;
|
||
/**
|
||
* The name of the Linux group whose privileges you want to add to the Lambda process.
|
||
*
|
||
* This value is ignored if `AutoAddGroupOwner` is true.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-groupownersetting.html#cfn-greengrass-resourcedefinition-groupownersetting-groupowner
|
||
*/
|
||
readonly groupOwner?: string;
|
||
}
|
||
/**
|
||
* Settings for a local device resource, which represents a file under `/dev` .
|
||
*
|
||
* For more information, see [Access Local Resources with Lambda Functions](https://docs.aws.amazon.com/greengrass/v1/developerguide/access-local-resources.html) in the *Developer Guide* .
|
||
*
|
||
* In an CloudFormation template, `LocalDeviceResourceData` can be used in the [`ResourceDataContainer`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-resourcedatacontainer.html) property type.
|
||
*
|
||
* @struct
|
||
* @stability external
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-localdeviceresourcedata.html
|
||
*/
|
||
interface LocalDeviceResourceDataProperty {
|
||
/**
|
||
* Settings that define additional Linux OS group permissions to give to the Lambda function process.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-localdeviceresourcedata.html#cfn-greengrass-resourcedefinition-localdeviceresourcedata-groupownersetting
|
||
*/
|
||
readonly groupOwnerSetting?: CfnResourceDefinition.GroupOwnerSettingProperty | cdk.IResolvable;
|
||
/**
|
||
* The local absolute path of the device resource.
|
||
*
|
||
* The source path for a device resource can refer only to a character device or block device under `/dev` .
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-localdeviceresourcedata.html#cfn-greengrass-resourcedefinition-localdeviceresourcedata-sourcepath
|
||
*/
|
||
readonly sourcePath: string;
|
||
}
|
||
/**
|
||
* Settings for an Amazon S3 machine learning resource.
|
||
*
|
||
* For more information, see [Perform Machine Learning Inference](https://docs.aws.amazon.com/greengrass/v1/developerguide/ml-inference.html) in the *Developer Guide* .
|
||
*
|
||
* In an CloudFormation template, `S3MachineLearningModelResourceData` can be used in the [`ResourceDataContainer`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-resourcedatacontainer.html) property type.
|
||
*
|
||
* @struct
|
||
* @stability external
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-s3machinelearningmodelresourcedata.html
|
||
*/
|
||
interface S3MachineLearningModelResourceDataProperty {
|
||
/**
|
||
* The absolute local path of the resource inside the Lambda environment.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-s3machinelearningmodelresourcedata.html#cfn-greengrass-resourcedefinition-s3machinelearningmodelresourcedata-destinationpath
|
||
*/
|
||
readonly destinationPath: string;
|
||
/**
|
||
* The owner setting for the downloaded machine learning resource.
|
||
*
|
||
* For more information, see [Access Machine Learning Resources from Lambda Functions](https://docs.aws.amazon.com/greengrass/v1/developerguide/access-ml-resources.html) in the *Developer Guide* .
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-s3machinelearningmodelresourcedata.html#cfn-greengrass-resourcedefinition-s3machinelearningmodelresourcedata-ownersetting
|
||
*/
|
||
readonly ownerSetting?: cdk.IResolvable | CfnResourceDefinition.ResourceDownloadOwnerSettingProperty;
|
||
/**
|
||
* The URI of the source model in an Amazon S3 bucket.
|
||
*
|
||
* The model package must be in `tar.gz` or `.zip` format.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-s3machinelearningmodelresourcedata.html#cfn-greengrass-resourcedefinition-s3machinelearningmodelresourcedata-s3uri
|
||
*/
|
||
readonly s3Uri: string;
|
||
}
|
||
}
|
||
/**
|
||
* Properties for defining a `CfnResourceDefinition`
|
||
*
|
||
* @struct
|
||
* @stability external
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-resourcedefinition.html
|
||
*/
|
||
export interface CfnResourceDefinitionProps {
|
||
/**
|
||
* The resource definition version to include when the resource definition is created.
|
||
*
|
||
* A resource definition version contains a list of [`resource instance`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-resourceinstance.html) property types.
|
||
*
|
||
* > To associate a resource definition version after the resource definition is created, create an [`AWS::Greengrass::ResourceDefinitionVersion`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-resourcedefinitionversion.html) resource and specify the ID of this resource definition.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-resourcedefinition.html#cfn-greengrass-resourcedefinition-initialversion
|
||
*/
|
||
readonly initialVersion?: cdk.IResolvable | CfnResourceDefinition.ResourceDefinitionVersionProperty;
|
||
/**
|
||
* The name of the resource definition.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-resourcedefinition.html#cfn-greengrass-resourcedefinition-name
|
||
*/
|
||
readonly name: string;
|
||
/**
|
||
* Application-specific metadata to attach to the resource definition.
|
||
*
|
||
* You can use tags in IAM policies to control access to AWS IoT Greengrass resources. You can also use tags to categorize your resources. For more information, see [Tagging Your AWS IoT Greengrass Resources](https://docs.aws.amazon.com/greengrass/v1/developerguide/tagging.html) in the *Developer Guide* .
|
||
*
|
||
* This `Json` property type is processed as a map of key-value pairs. It uses the following format, which is different from most `Tags` implementations in CloudFormation templates.
|
||
*
|
||
* ```json
|
||
* "Tags": { "KeyName0": "value", "KeyName1": "value", "KeyName2": "value"
|
||
* }
|
||
* ```
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-resourcedefinition.html#cfn-greengrass-resourcedefinition-tags
|
||
*/
|
||
readonly tags?: any;
|
||
}
|
||
/**
|
||
* The `AWS::Greengrass::ResourceDefinitionVersion` resource represents a resource definition version for AWS IoT Greengrass .
|
||
*
|
||
* A resource definition version contains a list of resources. (In CloudFormation , resources are named *resource instances* .)
|
||
*
|
||
* > To create a resource definition version, you must specify the ID of the resource definition that you want to associate with the version. For information about creating a resource definition, see [`AWS::Greengrass::ResourceDefinition`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-resourcedefinition.html) .
|
||
* >
|
||
* > After you create a resource definition version that contains the resources you want to deploy, you must add it to your group version. For more information, see [`AWS::Greengrass::Group`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-group.html) .
|
||
*
|
||
* @cloudformationResource AWS::Greengrass::ResourceDefinitionVersion
|
||
* @stability external
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-resourcedefinitionversion.html
|
||
*/
|
||
export declare class CfnResourceDefinitionVersion extends cdk.CfnResource implements cdk.IInspectable, IResourceDefinitionVersionRef {
|
||
/**
|
||
* The CloudFormation resource type name for this resource class.
|
||
*/
|
||
static readonly CFN_RESOURCE_TYPE_NAME: string;
|
||
/**
|
||
* Build a CfnResourceDefinitionVersion from CloudFormation properties
|
||
*
|
||
* A factory method that creates a new instance of this class from an object
|
||
* containing the CloudFormation properties of this resource.
|
||
* Used in the @aws-cdk/cloudformation-include module.
|
||
*
|
||
* @internal
|
||
*/
|
||
static _fromCloudFormation(scope: constructs.Construct, id: string, resourceAttributes: any, options: cfn_parse.FromCloudFormationOptions): CfnResourceDefinitionVersion;
|
||
/**
|
||
* Checks whether the given object is a CfnResourceDefinitionVersion
|
||
*/
|
||
static isCfnResourceDefinitionVersion(x: any): x is CfnResourceDefinitionVersion;
|
||
/**
|
||
* The ID of the resource definition associated with this version.
|
||
*/
|
||
private _resourceDefinitionId;
|
||
/**
|
||
* The resources in this version.
|
||
*/
|
||
private _resources;
|
||
protected readonly cfnPropertyNames: Record<string, string>;
|
||
/**
|
||
* Create a new `AWS::Greengrass::ResourceDefinitionVersion`.
|
||
*
|
||
* @param scope Scope in which this resource is defined
|
||
* @param id Construct identifier for this resource (unique in its scope)
|
||
* @param props Resource properties
|
||
*/
|
||
constructor(scope: constructs.Construct, id: string, props: CfnResourceDefinitionVersionProps);
|
||
get resourceDefinitionVersionRef(): ResourceDefinitionVersionReference;
|
||
/**
|
||
* The ID of the resource definition associated with this version.
|
||
*/
|
||
get resourceDefinitionId(): string;
|
||
/**
|
||
* The ID of the resource definition associated with this version.
|
||
*/
|
||
set resourceDefinitionId(value: string);
|
||
/**
|
||
* The resources in this version.
|
||
*/
|
||
get resources(): Array<cdk.IResolvable | CfnResourceDefinitionVersion.ResourceInstanceProperty> | cdk.IResolvable;
|
||
/**
|
||
* The resources in this version.
|
||
*/
|
||
set resources(value: Array<cdk.IResolvable | CfnResourceDefinitionVersion.ResourceInstanceProperty> | cdk.IResolvable);
|
||
/**
|
||
* @cloudformationAttribute Id
|
||
*/
|
||
get attrId(): string;
|
||
protected get cfnProperties(): Record<string, any>;
|
||
/**
|
||
* Examines the CloudFormation resource and discloses attributes
|
||
*
|
||
* @param inspector tree inspector to collect and process attributes
|
||
*/
|
||
inspect(inspector: cdk.TreeInspector): void;
|
||
protected renderProperties(props: Record<string, any>): Record<string, any>;
|
||
}
|
||
export declare namespace CfnResourceDefinitionVersion {
|
||
/**
|
||
* A local resource, machine learning resource, or secret resource.
|
||
*
|
||
* For more information, see [Access Local Resources with Lambda Functions](https://docs.aws.amazon.com/greengrass/v1/developerguide/access-local-resources.html) , [Perform Machine Learning Inference](https://docs.aws.amazon.com/greengrass/v1/developerguide/ml-inference.html) , and [Deploy Secrets to the AWS IoT Greengrass Core](https://docs.aws.amazon.com/greengrass/v1/developerguide/secrets.html) in the *Developer Guide* .
|
||
*
|
||
* In an CloudFormation template, the `Resources` property of the [`AWS::Greengrass::ResourceDefinitionVersion`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-resourcedefinitionversion.html) resource contains a list of `ResourceInstance` property types.
|
||
*
|
||
* @struct
|
||
* @stability external
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-resourceinstance.html
|
||
*/
|
||
interface ResourceInstanceProperty {
|
||
/**
|
||
* A descriptive or arbitrary ID for the resource.
|
||
*
|
||
* This value must be unique within the resource definition version. Maximum length is 128 characters with pattern `[a-zA-Z0-9:_-]+` .
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-resourceinstance.html#cfn-greengrass-resourcedefinitionversion-resourceinstance-id
|
||
*/
|
||
readonly id: string;
|
||
/**
|
||
* The descriptive resource name, which is displayed on the AWS IoT Greengrass console.
|
||
*
|
||
* Maximum length 128 characters with pattern [a-zA-Z0-9:_-]+. This must be unique within a Greengrass group.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-resourceinstance.html#cfn-greengrass-resourcedefinitionversion-resourceinstance-name
|
||
*/
|
||
readonly name: string;
|
||
/**
|
||
* A container for resource data.
|
||
*
|
||
* The container takes only one of the following supported resource data types: `LocalDeviceResourceData` , `LocalVolumeResourceData` , `SageMakerMachineLearningModelResourceData` , `S3MachineLearningModelResourceData` , or `SecretsManagerSecretResourceData` .
|
||
*
|
||
* > Only one resource type can be defined for a `ResourceDataContainer` instance.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-resourceinstance.html#cfn-greengrass-resourcedefinitionversion-resourceinstance-resourcedatacontainer
|
||
*/
|
||
readonly resourceDataContainer: cdk.IResolvable | CfnResourceDefinitionVersion.ResourceDataContainerProperty;
|
||
}
|
||
/**
|
||
* A container for resource data, which defines the resource type.
|
||
*
|
||
* The container takes only one of the following supported resource data types: `LocalDeviceResourceData` , `LocalVolumeResourceData` , `SageMakerMachineLearningModelResourceData` , `S3MachineLearningModelResourceData` , or `SecretsManagerSecretResourceData` .
|
||
*
|
||
* > Only one resource type can be defined for a `ResourceDataContainer` instance.
|
||
*
|
||
* In an CloudFormation template, `ResourceDataContainer` is a property of the [`ResourceInstance`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-resourceinstance.html) property type.
|
||
*
|
||
* @struct
|
||
* @stability external
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-resourcedatacontainer.html
|
||
*/
|
||
interface ResourceDataContainerProperty {
|
||
/**
|
||
* Settings for a local device resource.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-resourcedatacontainer.html#cfn-greengrass-resourcedefinitionversion-resourcedatacontainer-localdeviceresourcedata
|
||
*/
|
||
readonly localDeviceResourceData?: cdk.IResolvable | CfnResourceDefinitionVersion.LocalDeviceResourceDataProperty;
|
||
/**
|
||
* Settings for a local volume resource.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-resourcedatacontainer.html#cfn-greengrass-resourcedefinitionversion-resourcedatacontainer-localvolumeresourcedata
|
||
*/
|
||
readonly localVolumeResourceData?: cdk.IResolvable | CfnResourceDefinitionVersion.LocalVolumeResourceDataProperty;
|
||
/**
|
||
* Settings for a machine learning resource stored in Amazon S3 .
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-resourcedatacontainer.html#cfn-greengrass-resourcedefinitionversion-resourcedatacontainer-s3machinelearningmodelresourcedata
|
||
*/
|
||
readonly s3MachineLearningModelResourceData?: cdk.IResolvable | CfnResourceDefinitionVersion.S3MachineLearningModelResourceDataProperty;
|
||
/**
|
||
* Settings for a machine learning resource saved as an SageMaker AI training job.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-resourcedatacontainer.html#cfn-greengrass-resourcedefinitionversion-resourcedatacontainer-sagemakermachinelearningmodelresourcedata
|
||
*/
|
||
readonly sageMakerMachineLearningModelResourceData?: cdk.IResolvable | CfnResourceDefinitionVersion.SageMakerMachineLearningModelResourceDataProperty;
|
||
/**
|
||
* Settings for a secret resource.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-resourcedatacontainer.html#cfn-greengrass-resourcedefinitionversion-resourcedatacontainer-secretsmanagersecretresourcedata
|
||
*/
|
||
readonly secretsManagerSecretResourceData?: cdk.IResolvable | CfnResourceDefinitionVersion.SecretsManagerSecretResourceDataProperty;
|
||
}
|
||
/**
|
||
* Settings for a secret resource, which references a secret from AWS Secrets Manager .
|
||
*
|
||
* AWS IoT Greengrass stores a local, encrypted copy of the secret on the Greengrass core, where it can be securely accessed by connectors and Lambda functions. For more information, see [Deploy Secrets to the AWS IoT Greengrass Core](https://docs.aws.amazon.com/greengrass/v1/developerguide/secrets.html) in the *Developer Guide* .
|
||
*
|
||
* In an CloudFormation template, `SecretsManagerSecretResourceData` can be used in the [`ResourceDataContainer`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-resourcedatacontainer.html) property type.
|
||
*
|
||
* @struct
|
||
* @stability external
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-secretsmanagersecretresourcedata.html
|
||
*/
|
||
interface SecretsManagerSecretResourceDataProperty {
|
||
/**
|
||
* The staging labels whose values you want to make available on the core, in addition to `AWSCURRENT` .
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-secretsmanagersecretresourcedata.html#cfn-greengrass-resourcedefinitionversion-secretsmanagersecretresourcedata-additionalstaginglabelstodownload
|
||
*/
|
||
readonly additionalStagingLabelsToDownload?: Array<string>;
|
||
/**
|
||
* The Amazon Resource Name (ARN) of the Secrets Manager secret to make available on the core.
|
||
*
|
||
* The value of the secret's latest version (represented by the `AWSCURRENT` staging label) is included by default.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-secretsmanagersecretresourcedata.html#cfn-greengrass-resourcedefinitionversion-secretsmanagersecretresourcedata-arn
|
||
*/
|
||
readonly arn: string;
|
||
}
|
||
/**
|
||
* Settings for an Secrets Manager machine learning resource.
|
||
*
|
||
* For more information, see [Perform Machine Learning Inference](https://docs.aws.amazon.com/greengrass/v1/developerguide/ml-inference.html) in the *Developer Guide* .
|
||
*
|
||
* In an CloudFormation template, `SageMakerMachineLearningModelResourceData` can be used in the [`ResourceDataContainer`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-resourcedatacontainer.html) property type.
|
||
*
|
||
* @struct
|
||
* @stability external
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-sagemakermachinelearningmodelresourcedata.html
|
||
*/
|
||
interface SageMakerMachineLearningModelResourceDataProperty {
|
||
/**
|
||
* The absolute local path of the resource inside the Lambda environment.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-sagemakermachinelearningmodelresourcedata.html#cfn-greengrass-resourcedefinitionversion-sagemakermachinelearningmodelresourcedata-destinationpath
|
||
*/
|
||
readonly destinationPath: string;
|
||
/**
|
||
* The owner setting for the downloaded machine learning resource.
|
||
*
|
||
* For more information, see [Access Machine Learning Resources from Lambda Functions](https://docs.aws.amazon.com/greengrass/v1/developerguide/access-ml-resources.html) in the *Developer Guide* .
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-sagemakermachinelearningmodelresourcedata.html#cfn-greengrass-resourcedefinitionversion-sagemakermachinelearningmodelresourcedata-ownersetting
|
||
*/
|
||
readonly ownerSetting?: cdk.IResolvable | CfnResourceDefinitionVersion.ResourceDownloadOwnerSettingProperty;
|
||
/**
|
||
* The Amazon Resource Name (ARN) of the Amazon SageMaker AI training job that represents the source model.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-sagemakermachinelearningmodelresourcedata.html#cfn-greengrass-resourcedefinitionversion-sagemakermachinelearningmodelresourcedata-sagemakerjobarn
|
||
*/
|
||
readonly sageMakerJobArn: string;
|
||
}
|
||
/**
|
||
* The owner setting for a downloaded machine learning resource.
|
||
*
|
||
* For more information, see [Access Machine Learning Resources from Lambda Functions](https://docs.aws.amazon.com/greengrass/v1/developerguide/access-ml-resources.html) in the *Developer Guide* .
|
||
*
|
||
* In an CloudFormation template, `ResourceDownloadOwnerSetting` is the property type of the `OwnerSetting` property for the [`S3MachineLearningModelResourceData`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-s3machinelearningmodelresourcedata.html) and [`SageMakerMachineLearningModelResourceData`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-sagemakermachinelearningmodelresourcedata.html) property types.
|
||
*
|
||
* @struct
|
||
* @stability external
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-resourcedownloadownersetting.html
|
||
*/
|
||
interface ResourceDownloadOwnerSettingProperty {
|
||
/**
|
||
* The group owner of the machine learning resource.
|
||
*
|
||
* This is the group ID (GID) of an existing Linux OS group on the system. The group's permissions are added to the Lambda process.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-resourcedownloadownersetting.html#cfn-greengrass-resourcedefinitionversion-resourcedownloadownersetting-groupowner
|
||
*/
|
||
readonly groupOwner: string;
|
||
/**
|
||
* The permissions that the group owner has to the machine learning resource.
|
||
*
|
||
* Valid values are `rw` (read-write) or `ro` (read-only).
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-resourcedownloadownersetting.html#cfn-greengrass-resourcedefinitionversion-resourcedownloadownersetting-grouppermission
|
||
*/
|
||
readonly groupPermission: string;
|
||
}
|
||
/**
|
||
* Settings for a local volume resource, which represents a file or directory on the root file system.
|
||
*
|
||
* For more information, see [Access Local Resources with Lambda Functions](https://docs.aws.amazon.com/greengrass/v1/developerguide/access-local-resources.html) in the *Developer Guide* .
|
||
*
|
||
* In an CloudFormation template, `LocalVolumeResourceData` can be used in the [`ResourceDataContainer`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-resourcedatacontainer.html) property type.
|
||
*
|
||
* @struct
|
||
* @stability external
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-localvolumeresourcedata.html
|
||
*/
|
||
interface LocalVolumeResourceDataProperty {
|
||
/**
|
||
* The absolute local path of the resource in the Lambda environment.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-localvolumeresourcedata.html#cfn-greengrass-resourcedefinitionversion-localvolumeresourcedata-destinationpath
|
||
*/
|
||
readonly destinationPath: string;
|
||
/**
|
||
* Settings that define additional Linux OS group permissions to give to the Lambda function process.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-localvolumeresourcedata.html#cfn-greengrass-resourcedefinitionversion-localvolumeresourcedata-groupownersetting
|
||
*/
|
||
readonly groupOwnerSetting?: CfnResourceDefinitionVersion.GroupOwnerSettingProperty | cdk.IResolvable;
|
||
/**
|
||
* The local absolute path of the volume resource on the host.
|
||
*
|
||
* The source path for a volume resource type cannot start with `/sys` .
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-localvolumeresourcedata.html#cfn-greengrass-resourcedefinitionversion-localvolumeresourcedata-sourcepath
|
||
*/
|
||
readonly sourcePath: string;
|
||
}
|
||
/**
|
||
* Settings that define additional Linux OS group permissions to give to the Lambda function process.
|
||
*
|
||
* You can give the permissions of the Linux group that owns the resource or choose another Linux group. These permissions are in addition to the function's `RunAs` permissions.
|
||
*
|
||
* In an CloudFormation template, `GroupOwnerSetting` is a property of the [`LocalDeviceResourceData`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-localdeviceresourcedata.html) and [`LocalVolumeResourceData`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-localvolumeresourcedata.html) property types.
|
||
*
|
||
* @struct
|
||
* @stability external
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-groupownersetting.html
|
||
*/
|
||
interface GroupOwnerSettingProperty {
|
||
/**
|
||
* Indicates whether to give the privileges of the Linux group that owns the resource to the Lambda process.
|
||
*
|
||
* This gives the Lambda process the file access permissions of the Linux group.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-groupownersetting.html#cfn-greengrass-resourcedefinitionversion-groupownersetting-autoaddgroupowner
|
||
*/
|
||
readonly autoAddGroupOwner: boolean | cdk.IResolvable;
|
||
/**
|
||
* The name of the Linux group whose privileges you want to add to the Lambda process.
|
||
*
|
||
* This value is ignored if `AutoAddGroupOwner` is true.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-groupownersetting.html#cfn-greengrass-resourcedefinitionversion-groupownersetting-groupowner
|
||
*/
|
||
readonly groupOwner?: string;
|
||
}
|
||
/**
|
||
* Settings for a local device resource, which represents a file under `/dev` .
|
||
*
|
||
* For more information, see [Access Local Resources with Lambda Functions](https://docs.aws.amazon.com/greengrass/v1/developerguide/access-local-resources.html) in the *Developer Guide* .
|
||
*
|
||
* In an CloudFormation template, `LocalDeviceResourceData` can be used in the [`ResourceDataContainer`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-resourcedatacontainer.html) property type.
|
||
*
|
||
* @struct
|
||
* @stability external
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-localdeviceresourcedata.html
|
||
*/
|
||
interface LocalDeviceResourceDataProperty {
|
||
/**
|
||
* Settings that define additional Linux OS group permissions to give to the Lambda function process.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-localdeviceresourcedata.html#cfn-greengrass-resourcedefinitionversion-localdeviceresourcedata-groupownersetting
|
||
*/
|
||
readonly groupOwnerSetting?: CfnResourceDefinitionVersion.GroupOwnerSettingProperty | cdk.IResolvable;
|
||
/**
|
||
* The local absolute path of the device resource.
|
||
*
|
||
* The source path for a device resource can refer only to a character device or block device under `/dev` .
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-localdeviceresourcedata.html#cfn-greengrass-resourcedefinitionversion-localdeviceresourcedata-sourcepath
|
||
*/
|
||
readonly sourcePath: string;
|
||
}
|
||
/**
|
||
* Settings for an Amazon S3 machine learning resource.
|
||
*
|
||
* For more information, see [Perform Machine Learning Inference](https://docs.aws.amazon.com/greengrass/v1/developerguide/ml-inference.html) in the *Developer Guide* .
|
||
*
|
||
* In an CloudFormation template, `S3MachineLearningModelResourceData` can be used in the [`ResourceDataContainer`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-resourcedatacontainer.html) property type.
|
||
*
|
||
* @struct
|
||
* @stability external
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-s3machinelearningmodelresourcedata.html
|
||
*/
|
||
interface S3MachineLearningModelResourceDataProperty {
|
||
/**
|
||
* The absolute local path of the resource inside the Lambda environment.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-s3machinelearningmodelresourcedata.html#cfn-greengrass-resourcedefinitionversion-s3machinelearningmodelresourcedata-destinationpath
|
||
*/
|
||
readonly destinationPath: string;
|
||
/**
|
||
* The owner setting for the downloaded machine learning resource.
|
||
*
|
||
* For more information, see [Access Machine Learning Resources from Lambda Functions](https://docs.aws.amazon.com/greengrass/v1/developerguide/access-ml-resources.html) in the *Developer Guide* .
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-s3machinelearningmodelresourcedata.html#cfn-greengrass-resourcedefinitionversion-s3machinelearningmodelresourcedata-ownersetting
|
||
*/
|
||
readonly ownerSetting?: cdk.IResolvable | CfnResourceDefinitionVersion.ResourceDownloadOwnerSettingProperty;
|
||
/**
|
||
* The URI of the source model in an Amazon S3 bucket.
|
||
*
|
||
* The model package must be in `tar.gz` or `.zip` format.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-s3machinelearningmodelresourcedata.html#cfn-greengrass-resourcedefinitionversion-s3machinelearningmodelresourcedata-s3uri
|
||
*/
|
||
readonly s3Uri: string;
|
||
}
|
||
}
|
||
/**
|
||
* Properties for defining a `CfnResourceDefinitionVersion`
|
||
*
|
||
* @struct
|
||
* @stability external
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-resourcedefinitionversion.html
|
||
*/
|
||
export interface CfnResourceDefinitionVersionProps {
|
||
/**
|
||
* The ID of the resource definition associated with this version.
|
||
*
|
||
* This value is a GUID.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-resourcedefinitionversion.html#cfn-greengrass-resourcedefinitionversion-resourcedefinitionid
|
||
*/
|
||
readonly resourceDefinitionId: string;
|
||
/**
|
||
* The resources in this version.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-resourcedefinitionversion.html#cfn-greengrass-resourcedefinitionversion-resources
|
||
*/
|
||
readonly resources: Array<cdk.IResolvable | CfnResourceDefinitionVersion.ResourceInstanceProperty> | cdk.IResolvable;
|
||
}
|
||
/**
|
||
* The `AWS::Greengrass::SubscriptionDefinition` resource represents a subscription definition for AWS IoT Greengrass .
|
||
*
|
||
* Subscription definitions are used to organize your subscription definition versions.
|
||
*
|
||
* Subscription definitions can reference multiple subscription definition versions. All subscription definition versions must be associated with a subscription definition. Each subscription definition version can contain one or more subscriptions.
|
||
*
|
||
* > When you create a subscription definition, you can optionally include an initial subscription definition version. To associate a subscription definition version later, create an [`AWS::Greengrass::SubscriptionDefinitionVersion`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-subscriptiondefinitionversion.html) resource and specify the ID of this subscription definition.
|
||
* >
|
||
* > After you create the subscription definition version that contains the subscriptions you want to deploy, you must add it to your group version. For more information, see [`AWS::Greengrass::Group`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-group.html) .
|
||
*
|
||
* @cloudformationResource AWS::Greengrass::SubscriptionDefinition
|
||
* @stability external
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-subscriptiondefinition.html
|
||
*/
|
||
export declare class CfnSubscriptionDefinition extends cdk.CfnResource implements cdk.IInspectable, ISubscriptionDefinitionRef, cdk.ITaggable {
|
||
/**
|
||
* The CloudFormation resource type name for this resource class.
|
||
*/
|
||
static readonly CFN_RESOURCE_TYPE_NAME: string;
|
||
/**
|
||
* Build a CfnSubscriptionDefinition from CloudFormation properties
|
||
*
|
||
* A factory method that creates a new instance of this class from an object
|
||
* containing the CloudFormation properties of this resource.
|
||
* Used in the @aws-cdk/cloudformation-include module.
|
||
*
|
||
* @internal
|
||
*/
|
||
static _fromCloudFormation(scope: constructs.Construct, id: string, resourceAttributes: any, options: cfn_parse.FromCloudFormationOptions): CfnSubscriptionDefinition;
|
||
/**
|
||
* Checks whether the given object is a CfnSubscriptionDefinition
|
||
*/
|
||
static isCfnSubscriptionDefinition(x: any): x is CfnSubscriptionDefinition;
|
||
/**
|
||
* Creates a new ISubscriptionDefinitionRef from an ARN
|
||
*/
|
||
static fromSubscriptionDefinitionArn(scope: constructs.Construct, id: string, arn: string): ISubscriptionDefinitionRef;
|
||
/**
|
||
* Creates a new ISubscriptionDefinitionRef from a subscriptionDefinitionId
|
||
*/
|
||
static fromSubscriptionDefinitionId(scope: constructs.Construct, id: string, subscriptionDefinitionId: string): ISubscriptionDefinitionRef;
|
||
static arnForSubscriptionDefinition(resource: ISubscriptionDefinitionRef): string;
|
||
/**
|
||
* The subscription definition version to include when the subscription definition is created.
|
||
*/
|
||
private _initialVersion?;
|
||
/**
|
||
* The name of the subscription definition.
|
||
*/
|
||
private _name;
|
||
/**
|
||
* Tag Manager which manages the tags for this resource
|
||
*/
|
||
readonly tags: cdk.TagManager;
|
||
/**
|
||
* Application-specific metadata to attach to the subscription definition.
|
||
*/
|
||
private _tagsRaw?;
|
||
protected readonly cfnPropertyNames: Record<string, string>;
|
||
/**
|
||
* Create a new `AWS::Greengrass::SubscriptionDefinition`.
|
||
*
|
||
* @param scope Scope in which this resource is defined
|
||
* @param id Construct identifier for this resource (unique in its scope)
|
||
* @param props Resource properties
|
||
*/
|
||
constructor(scope: constructs.Construct, id: string, props: CfnSubscriptionDefinitionProps);
|
||
get subscriptionDefinitionRef(): SubscriptionDefinitionReference;
|
||
/**
|
||
* The subscription definition version to include when the subscription definition is created.
|
||
*/
|
||
get initialVersion(): cdk.IResolvable | CfnSubscriptionDefinition.SubscriptionDefinitionVersionProperty | undefined;
|
||
/**
|
||
* The subscription definition version to include when the subscription definition is created.
|
||
*/
|
||
set initialVersion(value: cdk.IResolvable | CfnSubscriptionDefinition.SubscriptionDefinitionVersionProperty | undefined);
|
||
/**
|
||
* The name of the subscription definition.
|
||
*/
|
||
get name(): string;
|
||
/**
|
||
* The name of the subscription definition.
|
||
*/
|
||
set name(value: string);
|
||
/**
|
||
* Application-specific metadata to attach to the subscription definition.
|
||
*/
|
||
get tagsRaw(): any | undefined;
|
||
/**
|
||
* Application-specific metadata to attach to the subscription definition.
|
||
*/
|
||
set tagsRaw(value: any | undefined);
|
||
/**
|
||
* The Amazon Resource Name (ARN) of the `SubscriptionDefinition` , such as `arn:aws:greengrass:us-east-1: :/greengrass/definition/subscriptions/1234a5b6-78cd-901e-2fgh-3i45j6k178l9` .
|
||
*
|
||
* @cloudformationAttribute Arn
|
||
*/
|
||
get attrArn(): string;
|
||
/**
|
||
* The ID of the `SubscriptionDefinition` , such as `1234a5b6-78cd-901e-2fgh-3i45j6k178l9` .
|
||
*
|
||
* @cloudformationAttribute Id
|
||
*/
|
||
get attrId(): string;
|
||
/**
|
||
* The ARN of the last `SubscriptionDefinitionVersion` that was added to the `SubscriptionDefinition` , such as `arn:aws:greengrass:us-east-1: :/greengrass/definition/subscriptions/1234a5b6-78cd-901e-2fgh-3i45j6k178l9/versions/9876ac30-4bdb-4f9d-95af-b5fdb66be1a2` .
|
||
*
|
||
* @cloudformationAttribute LatestVersionArn
|
||
*/
|
||
get attrLatestVersionArn(): string;
|
||
/**
|
||
* The name of the `SubscriptionDefinition` , such as `MySubscriptionDefinition` .
|
||
*
|
||
* @cloudformationAttribute Name
|
||
*/
|
||
get attrName(): string;
|
||
protected get cfnProperties(): Record<string, any>;
|
||
/**
|
||
* Examines the CloudFormation resource and discloses attributes
|
||
*
|
||
* @param inspector tree inspector to collect and process attributes
|
||
*/
|
||
inspect(inspector: cdk.TreeInspector): void;
|
||
protected renderProperties(props: Record<string, any>): Record<string, any>;
|
||
}
|
||
export declare namespace CfnSubscriptionDefinition {
|
||
/**
|
||
* A subscription definition version contains a list of [subscriptions](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-subscriptiondefinition-subscription.html) .
|
||
*
|
||
* > After you create a subscription definition version that contains the subscriptions you want to deploy, you must add it to your group version. For more information, see [`AWS::Greengrass::Group`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-group.html) .
|
||
*
|
||
* In an CloudFormation template, `SubscriptionDefinitionVersion` is the property type of the `InitialVersion` property in the [`AWS::Greengrass::SubscriptionDefinition`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-subscriptiondefinition.html) resource.
|
||
*
|
||
* @struct
|
||
* @stability external
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-subscriptiondefinition-subscriptiondefinitionversion.html
|
||
*/
|
||
interface SubscriptionDefinitionVersionProperty {
|
||
/**
|
||
* The subscriptions in this version.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-subscriptiondefinition-subscriptiondefinitionversion.html#cfn-greengrass-subscriptiondefinition-subscriptiondefinitionversion-subscriptions
|
||
*/
|
||
readonly subscriptions: Array<cdk.IResolvable | CfnSubscriptionDefinition.SubscriptionProperty> | cdk.IResolvable;
|
||
}
|
||
/**
|
||
* Subscriptions define how MQTT messages can be exchanged between devices, functions, and connectors in the group, and with AWS IoT or the local shadow service.
|
||
*
|
||
* A subscription defines a message source, message target, and a topic (or subject) that's used to route messages from the source to the target. A subscription defines the message flow in one direction, from the source to the target. For two-way communication, you must set up two subscriptions, one for each direction.
|
||
*
|
||
* In an CloudFormation template, the `Subscriptions` property of the [`SubscriptionDefinitionVersion`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-subscriptiondefinition-subscriptiondefinitionversion.html) property type contains a list of `Subscription` property types.
|
||
*
|
||
* @struct
|
||
* @stability external
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-subscriptiondefinition-subscription.html
|
||
*/
|
||
interface SubscriptionProperty {
|
||
/**
|
||
* A descriptive or arbitrary ID for the subscription.
|
||
*
|
||
* This value must be unique within the subscription definition version. Maximum length is 128 characters with pattern `[a-zA-Z0-9:_-]+` .
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-subscriptiondefinition-subscription.html#cfn-greengrass-subscriptiondefinition-subscription-id
|
||
*/
|
||
readonly id: string;
|
||
/**
|
||
* The originator of the message.
|
||
*
|
||
* The value can be a thing ARN, the ARN of a Lambda function alias (recommended) or version, a connector ARN, `cloud` (which represents the AWS IoT cloud), or `GGShadowService` .
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-subscriptiondefinition-subscription.html#cfn-greengrass-subscriptiondefinition-subscription-source
|
||
*/
|
||
readonly source: string;
|
||
/**
|
||
* The MQTT topic used to route the message.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-subscriptiondefinition-subscription.html#cfn-greengrass-subscriptiondefinition-subscription-subject
|
||
*/
|
||
readonly subject: string;
|
||
/**
|
||
* The destination of the message.
|
||
*
|
||
* The value can be a thing ARN, the ARN of a Lambda function alias (recommended) or version, a connector ARN, `cloud` (which represents the AWS IoT cloud), or `GGShadowService` .
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-subscriptiondefinition-subscription.html#cfn-greengrass-subscriptiondefinition-subscription-target
|
||
*/
|
||
readonly target: string;
|
||
}
|
||
}
|
||
/**
|
||
* Properties for defining a `CfnSubscriptionDefinition`
|
||
*
|
||
* @struct
|
||
* @stability external
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-subscriptiondefinition.html
|
||
*/
|
||
export interface CfnSubscriptionDefinitionProps {
|
||
/**
|
||
* The subscription definition version to include when the subscription definition is created.
|
||
*
|
||
* A subscription definition version contains a list of [`subscription`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-subscriptiondefinition-subscription.html) property types.
|
||
*
|
||
* > To associate a subscription definition version after the subscription definition is created, create an [`AWS::Greengrass::SubscriptionDefinitionVersion`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-subscriptiondefinitionversion.html) resource and specify the ID of this subscription definition.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-subscriptiondefinition.html#cfn-greengrass-subscriptiondefinition-initialversion
|
||
*/
|
||
readonly initialVersion?: cdk.IResolvable | CfnSubscriptionDefinition.SubscriptionDefinitionVersionProperty;
|
||
/**
|
||
* The name of the subscription definition.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-subscriptiondefinition.html#cfn-greengrass-subscriptiondefinition-name
|
||
*/
|
||
readonly name: string;
|
||
/**
|
||
* Application-specific metadata to attach to the subscription definition.
|
||
*
|
||
* You can use tags in IAM policies to control access to AWS IoT Greengrass resources. You can also use tags to categorize your resources. For more information, see [Tagging Your AWS IoT Greengrass Resources](https://docs.aws.amazon.com/greengrass/v1/developerguide/tagging.html) in the *Developer Guide* .
|
||
*
|
||
* This `Json` property type is processed as a map of key-value pairs. It uses the following format, which is different from most `Tags` implementations in CloudFormation templates.
|
||
*
|
||
* ```json
|
||
* "Tags": { "KeyName0": "value", "KeyName1": "value", "KeyName2": "value"
|
||
* }
|
||
* ```
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-subscriptiondefinition.html#cfn-greengrass-subscriptiondefinition-tags
|
||
*/
|
||
readonly tags?: any;
|
||
}
|
||
/**
|
||
* The `AWS::Greengrass::SubscriptionDefinitionVersion` resource represents a subscription definition version for AWS IoT Greengrass .
|
||
*
|
||
* A subscription definition version contains a list of subscriptions.
|
||
*
|
||
* > To create a subscription definition version, you must specify the ID of the subscription definition that you want to associate with the version. For information about creating a subscription definition, see [`AWS::Greengrass::SubscriptionDefinition`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-subscriptiondefinition.html) .
|
||
* >
|
||
* > After you create a subscription definition version that contains the subscriptions you want to deploy, you must add it to your group version. For more information, see [`AWS::Greengrass::Group`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-group.html) .
|
||
*
|
||
* @cloudformationResource AWS::Greengrass::SubscriptionDefinitionVersion
|
||
* @stability external
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-subscriptiondefinitionversion.html
|
||
*/
|
||
export declare class CfnSubscriptionDefinitionVersion extends cdk.CfnResource implements cdk.IInspectable, ISubscriptionDefinitionVersionRef {
|
||
/**
|
||
* The CloudFormation resource type name for this resource class.
|
||
*/
|
||
static readonly CFN_RESOURCE_TYPE_NAME: string;
|
||
/**
|
||
* Build a CfnSubscriptionDefinitionVersion from CloudFormation properties
|
||
*
|
||
* A factory method that creates a new instance of this class from an object
|
||
* containing the CloudFormation properties of this resource.
|
||
* Used in the @aws-cdk/cloudformation-include module.
|
||
*
|
||
* @internal
|
||
*/
|
||
static _fromCloudFormation(scope: constructs.Construct, id: string, resourceAttributes: any, options: cfn_parse.FromCloudFormationOptions): CfnSubscriptionDefinitionVersion;
|
||
/**
|
||
* Checks whether the given object is a CfnSubscriptionDefinitionVersion
|
||
*/
|
||
static isCfnSubscriptionDefinitionVersion(x: any): x is CfnSubscriptionDefinitionVersion;
|
||
/**
|
||
* The ID of the subscription definition associated with this version.
|
||
*/
|
||
private _subscriptionDefinitionId;
|
||
/**
|
||
* The subscriptions in this version.
|
||
*/
|
||
private _subscriptions;
|
||
protected readonly cfnPropertyNames: Record<string, string>;
|
||
/**
|
||
* Create a new `AWS::Greengrass::SubscriptionDefinitionVersion`.
|
||
*
|
||
* @param scope Scope in which this resource is defined
|
||
* @param id Construct identifier for this resource (unique in its scope)
|
||
* @param props Resource properties
|
||
*/
|
||
constructor(scope: constructs.Construct, id: string, props: CfnSubscriptionDefinitionVersionProps);
|
||
get subscriptionDefinitionVersionRef(): SubscriptionDefinitionVersionReference;
|
||
/**
|
||
* The ID of the subscription definition associated with this version.
|
||
*/
|
||
get subscriptionDefinitionId(): string;
|
||
/**
|
||
* The ID of the subscription definition associated with this version.
|
||
*/
|
||
set subscriptionDefinitionId(value: string);
|
||
/**
|
||
* The subscriptions in this version.
|
||
*/
|
||
get subscriptions(): Array<cdk.IResolvable | CfnSubscriptionDefinitionVersion.SubscriptionProperty> | cdk.IResolvable;
|
||
/**
|
||
* The subscriptions in this version.
|
||
*/
|
||
set subscriptions(value: Array<cdk.IResolvable | CfnSubscriptionDefinitionVersion.SubscriptionProperty> | cdk.IResolvable);
|
||
/**
|
||
* @cloudformationAttribute Id
|
||
*/
|
||
get attrId(): string;
|
||
protected get cfnProperties(): Record<string, any>;
|
||
/**
|
||
* Examines the CloudFormation resource and discloses attributes
|
||
*
|
||
* @param inspector tree inspector to collect and process attributes
|
||
*/
|
||
inspect(inspector: cdk.TreeInspector): void;
|
||
protected renderProperties(props: Record<string, any>): Record<string, any>;
|
||
}
|
||
export declare namespace CfnSubscriptionDefinitionVersion {
|
||
/**
|
||
* Subscriptions define how MQTT messages can be exchanged between devices, functions, and connectors in the group, and with AWS IoT or the local shadow service.
|
||
*
|
||
* A subscription defines a message source, message target, and a topic (or subject) that's used to route messages from the source to the target. A subscription defines the message flow in one direction, from the source to the target. For two-way communication, you must set up two subscriptions, one for each direction.
|
||
*
|
||
* In an CloudFormation template, the `Subscriptions` property of the [`AWS::Greengrass::SubscriptionDefinitionVersion`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-subscriptiondefinitionversion.html) resource contains a list of `Subscription` property types.
|
||
*
|
||
* @struct
|
||
* @stability external
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-subscriptiondefinitionversion-subscription.html
|
||
*/
|
||
interface SubscriptionProperty {
|
||
/**
|
||
* A descriptive or arbitrary ID for the subscription.
|
||
*
|
||
* This value must be unique within the subscription definition version. Maximum length is 128 characters with pattern `[a-zA-Z0-9:_-]+` .
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-subscriptiondefinitionversion-subscription.html#cfn-greengrass-subscriptiondefinitionversion-subscription-id
|
||
*/
|
||
readonly id: string;
|
||
/**
|
||
* The originator of the message.
|
||
*
|
||
* The value can be a thing ARN, the ARN of a Lambda function alias (recommended) or version, a connector ARN, `cloud` (which represents the AWS IoT cloud), or `GGShadowService` .
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-subscriptiondefinitionversion-subscription.html#cfn-greengrass-subscriptiondefinitionversion-subscription-source
|
||
*/
|
||
readonly source: string;
|
||
/**
|
||
* The MQTT topic used to route the message.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-subscriptiondefinitionversion-subscription.html#cfn-greengrass-subscriptiondefinitionversion-subscription-subject
|
||
*/
|
||
readonly subject: string;
|
||
/**
|
||
* The destination of the message.
|
||
*
|
||
* The value can be a thing ARN, the ARN of a Lambda function alias (recommended) or version, a connector ARN, `cloud` (which represents the AWS IoT cloud), or `GGShadowService` .
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-subscriptiondefinitionversion-subscription.html#cfn-greengrass-subscriptiondefinitionversion-subscription-target
|
||
*/
|
||
readonly target: string;
|
||
}
|
||
}
|
||
/**
|
||
* Properties for defining a `CfnSubscriptionDefinitionVersion`
|
||
*
|
||
* @struct
|
||
* @stability external
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-subscriptiondefinitionversion.html
|
||
*/
|
||
export interface CfnSubscriptionDefinitionVersionProps {
|
||
/**
|
||
* The ID of the subscription definition associated with this version.
|
||
*
|
||
* This value is a GUID.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-subscriptiondefinitionversion.html#cfn-greengrass-subscriptiondefinitionversion-subscriptiondefinitionid
|
||
*/
|
||
readonly subscriptionDefinitionId: string;
|
||
/**
|
||
* The subscriptions in this version.
|
||
*
|
||
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-subscriptiondefinitionversion.html#cfn-greengrass-subscriptiondefinitionversion-subscriptions
|
||
*/
|
||
readonly subscriptions: Array<cdk.IResolvable | CfnSubscriptionDefinitionVersion.SubscriptionProperty> | cdk.IResolvable;
|
||
}
|
||
export type { IConnectorDefinitionRef, ConnectorDefinitionReference };
|
||
export type { IConnectorDefinitionVersionRef, ConnectorDefinitionVersionReference };
|
||
export type { ICoreDefinitionRef, CoreDefinitionReference };
|
||
export type { ICoreDefinitionVersionRef, CoreDefinitionVersionReference };
|
||
export type { IDeviceDefinitionRef, DeviceDefinitionReference };
|
||
export type { IDeviceDefinitionVersionRef, DeviceDefinitionVersionReference };
|
||
export type { IFunctionDefinitionRef, FunctionDefinitionReference };
|
||
export type { IFunctionDefinitionVersionRef, FunctionDefinitionVersionReference };
|
||
export type { IGroupRef, GroupReference };
|
||
export type { IGroupVersionRef, GroupVersionReference };
|
||
export type { ILoggerDefinitionRef, LoggerDefinitionReference };
|
||
export type { ILoggerDefinitionVersionRef, LoggerDefinitionVersionReference };
|
||
export type { IResourceDefinitionRef, ResourceDefinitionReference };
|
||
export type { IResourceDefinitionVersionRef, ResourceDefinitionVersionReference };
|
||
export type { ISubscriptionDefinitionRef, SubscriptionDefinitionReference };
|
||
export type { ISubscriptionDefinitionVersionRef, SubscriptionDefinitionVersionReference };
|