Greengrass
public struct Greengrass
Client object for interacting with AWS Greengrass service.
AWS IoT Greengrass seamlessly extends AWS onto physical devices so they can act locally on the data they generate, while still using the cloud for management, analytics, and durable storage. AWS IoT Greengrass ensures your devices can respond quickly to local events and operate with intermittent connectivity. AWS IoT Greengrass minimizes the cost of transmitting data to the cloud by allowing you to author AWS Lambda functions that execute locally.
-
Undocumented
Declaration
Swift
public let client: AWSClient
-
Initialize the Greengrass client
Declaration
Swift
public init(accessKeyId: String? = nil, secretAccessKey: String? = nil, sessionToken: String? = nil, region: AWSSDKSwiftCore.Region? = nil, endpoint: String? = nil, middlewares: [AWSServiceMiddleware] = [], eventLoopGroupProvider: AWSClient.EventLoopGroupProvider = .useAWSClientShared)
Parameters
accessKeyId
Public access key provided by AWS
secretAccessKey
Private access key provided by AWS
sessionToken
Token provided by STS.AssumeRole() which allows access to another AWS account
region
Region of server you want to communicate with
endpoint
Custom endpoint URL to use instead of standard AWS servers
middlewares
Array of middlewares to apply to requests and responses
eventLoopGroupProvider
EventLoopGroup to use. Use
useAWSClientShared
if the client shall manage its own EventLoopGroup.
-
Associates a role with a group. Your Greengrass core will use the role to access AWS cloud services. The role’s permissions should allow Greengrass core Lambda functions to perform actions against the cloud.
Declaration
Swift
public func associateRoleToGroup(_ input: AssociateRoleToGroupRequest) -> EventLoopFuture<AssociateRoleToGroupResponse>
-
Associates a role with your account. AWS IoT Greengrass will use the role to access your Lambda functions and AWS IoT resources. This is necessary for deployments to succeed. The role must have at least minimum permissions in the policy “AWSGreengrassResourceAccessRolePolicy”.
Declaration
Swift
public func associateServiceRoleToAccount(_ input: AssociateServiceRoleToAccountRequest) -> EventLoopFuture<AssociateServiceRoleToAccountResponse>
-
Creates a connector definition. You may provide the initial version of the connector definition now or use “CreateConnectorDefinitionVersion” at a later time.
Declaration
Swift
public func createConnectorDefinition(_ input: CreateConnectorDefinitionRequest) -> EventLoopFuture<CreateConnectorDefinitionResponse>
-
Creates a version of a connector definition which has already been defined.
Declaration
Swift
public func createConnectorDefinitionVersion(_ input: CreateConnectorDefinitionVersionRequest) -> EventLoopFuture<CreateConnectorDefinitionVersionResponse>
-
Creates a core definition. You may provide the initial version of the core definition now or use “CreateCoreDefinitionVersion” at a later time. Greengrass groups must each contain exactly one Greengrass core.
Declaration
Swift
public func createCoreDefinition(_ input: CreateCoreDefinitionRequest) -> EventLoopFuture<CreateCoreDefinitionResponse>
-
Creates a version of a core definition that has already been defined. Greengrass groups must each contain exactly one Greengrass core.
Declaration
Swift
public func createCoreDefinitionVersion(_ input: CreateCoreDefinitionVersionRequest) -> EventLoopFuture<CreateCoreDefinitionVersionResponse>
-
Creates a deployment. “CreateDeployment” requests are idempotent with respect to the “X-Amzn-Client-Token” token and the request parameters.
Declaration
Swift
public func createDeployment(_ input: CreateDeploymentRequest) -> EventLoopFuture<CreateDeploymentResponse>
-
Creates a device definition. You may provide the initial version of the device definition now or use “CreateDeviceDefinitionVersion” at a later time.
Declaration
Swift
public func createDeviceDefinition(_ input: CreateDeviceDefinitionRequest) -> EventLoopFuture<CreateDeviceDefinitionResponse>
-
Creates a version of a device definition that has already been defined.
Declaration
Swift
public func createDeviceDefinitionVersion(_ input: CreateDeviceDefinitionVersionRequest) -> EventLoopFuture<CreateDeviceDefinitionVersionResponse>
-
Creates a Lambda function definition which contains a list of Lambda functions and their configurations to be used in a group. You can create an initial version of the definition by providing a list of Lambda functions and their configurations now, or use “CreateFunctionDefinitionVersion” later.
Declaration
Swift
public func createFunctionDefinition(_ input: CreateFunctionDefinitionRequest) -> EventLoopFuture<CreateFunctionDefinitionResponse>
-
Creates a version of a Lambda function definition that has already been defined.
Declaration
Swift
public func createFunctionDefinitionVersion(_ input: CreateFunctionDefinitionVersionRequest) -> EventLoopFuture<CreateFunctionDefinitionVersionResponse>
-
Creates a group. You may provide the initial version of the group or use “CreateGroupVersion” at a later time. Tip: You can use the “gg_group_setup” package (https://github.com/awslabs/aws-greengrass-group-setup) as a library or command-line application to create and deploy Greengrass groups.
Declaration
Swift
public func createGroup(_ input: CreateGroupRequest) -> EventLoopFuture<CreateGroupResponse>
-
Creates a CA for the group. If a CA already exists, it will rotate the existing CA.
Declaration
Swift
public func createGroupCertificateAuthority(_ input: CreateGroupCertificateAuthorityRequest) -> EventLoopFuture<CreateGroupCertificateAuthorityResponse>
-
Creates a version of a group which has already been defined.
Declaration
Swift
public func createGroupVersion(_ input: CreateGroupVersionRequest) -> EventLoopFuture<CreateGroupVersionResponse>
-
Creates a logger definition. You may provide the initial version of the logger definition now or use “CreateLoggerDefinitionVersion” at a later time.
Declaration
Swift
public func createLoggerDefinition(_ input: CreateLoggerDefinitionRequest) -> EventLoopFuture<CreateLoggerDefinitionResponse>
-
Creates a version of a logger definition that has already been defined.
Declaration
Swift
public func createLoggerDefinitionVersion(_ input: CreateLoggerDefinitionVersionRequest) -> EventLoopFuture<CreateLoggerDefinitionVersionResponse>
-
Creates a resource definition which contains a list of resources to be used in a group. You can create an initial version of the definition by providing a list of resources now, or use “CreateResourceDefinitionVersion” later.
Declaration
Swift
public func createResourceDefinition(_ input: CreateResourceDefinitionRequest) -> EventLoopFuture<CreateResourceDefinitionResponse>
-
Creates a version of a resource definition that has already been defined.
Declaration
Swift
public func createResourceDefinitionVersion(_ input: CreateResourceDefinitionVersionRequest) -> EventLoopFuture<CreateResourceDefinitionVersionResponse>
-
Creates a software update for a core or group of cores (specified as an IoT thing group.) Use this to update the OTA Agent as well as the Greengrass core software. It makes use of the IoT Jobs feature which provides additional commands to manage a Greengrass core software update job.
Declaration
Swift
public func createSoftwareUpdateJob(_ input: CreateSoftwareUpdateJobRequest) -> EventLoopFuture<CreateSoftwareUpdateJobResponse>
-
Creates a subscription definition. You may provide the initial version of the subscription definition now or use “CreateSubscriptionDefinitionVersion” at a later time.
Declaration
Swift
public func createSubscriptionDefinition(_ input: CreateSubscriptionDefinitionRequest) -> EventLoopFuture<CreateSubscriptionDefinitionResponse>
-
Creates a version of a subscription definition which has already been defined.
Declaration
Swift
public func createSubscriptionDefinitionVersion(_ input: CreateSubscriptionDefinitionVersionRequest) -> EventLoopFuture<CreateSubscriptionDefinitionVersionResponse>
-
Deletes a connector definition.
Declaration
Swift
public func deleteConnectorDefinition(_ input: DeleteConnectorDefinitionRequest) -> EventLoopFuture<DeleteConnectorDefinitionResponse>
-
Deletes a core definition.
Declaration
Swift
public func deleteCoreDefinition(_ input: DeleteCoreDefinitionRequest) -> EventLoopFuture<DeleteCoreDefinitionResponse>
-
Deletes a device definition.
Declaration
Swift
public func deleteDeviceDefinition(_ input: DeleteDeviceDefinitionRequest) -> EventLoopFuture<DeleteDeviceDefinitionResponse>
-
Deletes a Lambda function definition.
Declaration
Swift
public func deleteFunctionDefinition(_ input: DeleteFunctionDefinitionRequest) -> EventLoopFuture<DeleteFunctionDefinitionResponse>
-
Deletes a group.
Declaration
Swift
public func deleteGroup(_ input: DeleteGroupRequest) -> EventLoopFuture<DeleteGroupResponse>
-
Deletes a logger definition.
Declaration
Swift
public func deleteLoggerDefinition(_ input: DeleteLoggerDefinitionRequest) -> EventLoopFuture<DeleteLoggerDefinitionResponse>
-
Deletes a resource definition.
Declaration
Swift
public func deleteResourceDefinition(_ input: DeleteResourceDefinitionRequest) -> EventLoopFuture<DeleteResourceDefinitionResponse>
-
Deletes a subscription definition.
Declaration
Swift
public func deleteSubscriptionDefinition(_ input: DeleteSubscriptionDefinitionRequest) -> EventLoopFuture<DeleteSubscriptionDefinitionResponse>
-
Disassociates the role from a group.
Declaration
Swift
public func disassociateRoleFromGroup(_ input: DisassociateRoleFromGroupRequest) -> EventLoopFuture<DisassociateRoleFromGroupResponse>
-
Disassociates the service role from your account. Without a service role, deployments will not work.
Declaration
Swift
public func disassociateServiceRoleFromAccount(_ input: DisassociateServiceRoleFromAccountRequest) -> EventLoopFuture<DisassociateServiceRoleFromAccountResponse>
-
Retrieves the role associated with a particular group.
Declaration
Swift
public func getAssociatedRole(_ input: GetAssociatedRoleRequest) -> EventLoopFuture<GetAssociatedRoleResponse>
-
Returns the status of a bulk deployment.
Declaration
Swift
public func getBulkDeploymentStatus(_ input: GetBulkDeploymentStatusRequest) -> EventLoopFuture<GetBulkDeploymentStatusResponse>
-
Retrieves the connectivity information for a core.
Declaration
Swift
public func getConnectivityInfo(_ input: GetConnectivityInfoRequest) -> EventLoopFuture<GetConnectivityInfoResponse>
-
Retrieves information about a connector definition.
Declaration
Swift
public func getConnectorDefinition(_ input: GetConnectorDefinitionRequest) -> EventLoopFuture<GetConnectorDefinitionResponse>
-
Retrieves information about a connector definition version, including the connectors that the version contains. Connectors are prebuilt modules that interact with local infrastructure, device protocols, AWS, and other cloud services.
Declaration
Swift
public func getConnectorDefinitionVersion(_ input: GetConnectorDefinitionVersionRequest) -> EventLoopFuture<GetConnectorDefinitionVersionResponse>
-
Retrieves information about a core definition version.
Declaration
Swift
public func getCoreDefinition(_ input: GetCoreDefinitionRequest) -> EventLoopFuture<GetCoreDefinitionResponse>
-
Retrieves information about a core definition version.
Declaration
Swift
public func getCoreDefinitionVersion(_ input: GetCoreDefinitionVersionRequest) -> EventLoopFuture<GetCoreDefinitionVersionResponse>
-
Returns the status of a deployment.
Declaration
Swift
public func getDeploymentStatus(_ input: GetDeploymentStatusRequest) -> EventLoopFuture<GetDeploymentStatusResponse>
-
Retrieves information about a device definition.
Declaration
Swift
public func getDeviceDefinition(_ input: GetDeviceDefinitionRequest) -> EventLoopFuture<GetDeviceDefinitionResponse>
-
Retrieves information about a device definition version.
Declaration
Swift
public func getDeviceDefinitionVersion(_ input: GetDeviceDefinitionVersionRequest) -> EventLoopFuture<GetDeviceDefinitionVersionResponse>
-
Retrieves information about a Lambda function definition, including its creation time and latest version.
Declaration
Swift
public func getFunctionDefinition(_ input: GetFunctionDefinitionRequest) -> EventLoopFuture<GetFunctionDefinitionResponse>
-
Retrieves information about a Lambda function definition version, including which Lambda functions are included in the version and their configurations.
Declaration
Swift
public func getFunctionDefinitionVersion(_ input: GetFunctionDefinitionVersionRequest) -> EventLoopFuture<GetFunctionDefinitionVersionResponse>
-
Retrieves information about a group.
Declaration
Swift
public func getGroup(_ input: GetGroupRequest) -> EventLoopFuture<GetGroupResponse>
-
Retreives the CA associated with a group. Returns the public key of the CA.
Declaration
Swift
public func getGroupCertificateAuthority(_ input: GetGroupCertificateAuthorityRequest) -> EventLoopFuture<GetGroupCertificateAuthorityResponse>
-
Retrieves the current configuration for the CA used by the group.
Declaration
Swift
public func getGroupCertificateConfiguration(_ input: GetGroupCertificateConfigurationRequest) -> EventLoopFuture<GetGroupCertificateConfigurationResponse>
-
Retrieves information about a group version.
Declaration
Swift
public func getGroupVersion(_ input: GetGroupVersionRequest) -> EventLoopFuture<GetGroupVersionResponse>
-
Retrieves information about a logger definition.
Declaration
Swift
public func getLoggerDefinition(_ input: GetLoggerDefinitionRequest) -> EventLoopFuture<GetLoggerDefinitionResponse>
-
Retrieves information about a logger definition version.
Declaration
Swift
public func getLoggerDefinitionVersion(_ input: GetLoggerDefinitionVersionRequest) -> EventLoopFuture<GetLoggerDefinitionVersionResponse>
-
Retrieves information about a resource definition, including its creation time and latest version.
Declaration
Swift
public func getResourceDefinition(_ input: GetResourceDefinitionRequest) -> EventLoopFuture<GetResourceDefinitionResponse>
-
Retrieves information about a resource definition version, including which resources are included in the version.
Declaration
Swift
public func getResourceDefinitionVersion(_ input: GetResourceDefinitionVersionRequest) -> EventLoopFuture<GetResourceDefinitionVersionResponse>
-
Retrieves the service role that is attached to your account.
Declaration
Swift
public func getServiceRoleForAccount(_ input: GetServiceRoleForAccountRequest) -> EventLoopFuture<GetServiceRoleForAccountResponse>
-
Retrieves information about a subscription definition.
Declaration
Swift
public func getSubscriptionDefinition(_ input: GetSubscriptionDefinitionRequest) -> EventLoopFuture<GetSubscriptionDefinitionResponse>
-
Retrieves information about a subscription definition version.
Declaration
Swift
public func getSubscriptionDefinitionVersion(_ input: GetSubscriptionDefinitionVersionRequest) -> EventLoopFuture<GetSubscriptionDefinitionVersionResponse>
-
Gets a paginated list of the deployments that have been started in a bulk deployment operation, and their current deployment status.
Declaration
Swift
public func listBulkDeploymentDetailedReports(_ input: ListBulkDeploymentDetailedReportsRequest) -> EventLoopFuture<ListBulkDeploymentDetailedReportsResponse>
-
Returns a list of bulk deployments.
Declaration
Swift
public func listBulkDeployments(_ input: ListBulkDeploymentsRequest) -> EventLoopFuture<ListBulkDeploymentsResponse>
-
Lists the versions of a connector definition, which are containers for connectors. Connectors run on the Greengrass core and contain built-in integration with local infrastructure, device protocols, AWS, and other cloud services.
Declaration
Swift
public func listConnectorDefinitionVersions(_ input: ListConnectorDefinitionVersionsRequest) -> EventLoopFuture<ListConnectorDefinitionVersionsResponse>
-
Retrieves a list of connector definitions.
Declaration
Swift
public func listConnectorDefinitions(_ input: ListConnectorDefinitionsRequest) -> EventLoopFuture<ListConnectorDefinitionsResponse>
-
Lists the versions of a core definition.
Declaration
Swift
public func listCoreDefinitionVersions(_ input: ListCoreDefinitionVersionsRequest) -> EventLoopFuture<ListCoreDefinitionVersionsResponse>
-
Retrieves a list of core definitions.
Declaration
Swift
public func listCoreDefinitions(_ input: ListCoreDefinitionsRequest) -> EventLoopFuture<ListCoreDefinitionsResponse>
-
Returns a history of deployments for the group.
Declaration
Swift
public func listDeployments(_ input: ListDeploymentsRequest) -> EventLoopFuture<ListDeploymentsResponse>
-
Lists the versions of a device definition.
Declaration
Swift
public func listDeviceDefinitionVersions(_ input: ListDeviceDefinitionVersionsRequest) -> EventLoopFuture<ListDeviceDefinitionVersionsResponse>
-
Retrieves a list of device definitions.
Declaration
Swift
public func listDeviceDefinitions(_ input: ListDeviceDefinitionsRequest) -> EventLoopFuture<ListDeviceDefinitionsResponse>
-
Lists the versions of a Lambda function definition.
Declaration
Swift
public func listFunctionDefinitionVersions(_ input: ListFunctionDefinitionVersionsRequest) -> EventLoopFuture<ListFunctionDefinitionVersionsResponse>
-
Retrieves a list of Lambda function definitions.
Declaration
Swift
public func listFunctionDefinitions(_ input: ListFunctionDefinitionsRequest) -> EventLoopFuture<ListFunctionDefinitionsResponse>
-
Retrieves the current CAs for a group.
Declaration
Swift
public func listGroupCertificateAuthorities(_ input: ListGroupCertificateAuthoritiesRequest) -> EventLoopFuture<ListGroupCertificateAuthoritiesResponse>
-
Lists the versions of a group.
Declaration
Swift
public func listGroupVersions(_ input: ListGroupVersionsRequest) -> EventLoopFuture<ListGroupVersionsResponse>
-
Retrieves a list of groups.
Declaration
Swift
public func listGroups(_ input: ListGroupsRequest) -> EventLoopFuture<ListGroupsResponse>
-
Lists the versions of a logger definition.
Declaration
Swift
public func listLoggerDefinitionVersions(_ input: ListLoggerDefinitionVersionsRequest) -> EventLoopFuture<ListLoggerDefinitionVersionsResponse>
-
Retrieves a list of logger definitions.
Declaration
Swift
public func listLoggerDefinitions(_ input: ListLoggerDefinitionsRequest) -> EventLoopFuture<ListLoggerDefinitionsResponse>
-
Lists the versions of a resource definition.
Declaration
Swift
public func listResourceDefinitionVersions(_ input: ListResourceDefinitionVersionsRequest) -> EventLoopFuture<ListResourceDefinitionVersionsResponse>
-
Retrieves a list of resource definitions.
Declaration
Swift
public func listResourceDefinitions(_ input: ListResourceDefinitionsRequest) -> EventLoopFuture<ListResourceDefinitionsResponse>
-
Lists the versions of a subscription definition.
Declaration
Swift
public func listSubscriptionDefinitionVersions(_ input: ListSubscriptionDefinitionVersionsRequest) -> EventLoopFuture<ListSubscriptionDefinitionVersionsResponse>
-
Retrieves a list of subscription definitions.
Declaration
Swift
public func listSubscriptionDefinitions(_ input: ListSubscriptionDefinitionsRequest) -> EventLoopFuture<ListSubscriptionDefinitionsResponse>
-
Retrieves a list of resource tags for a resource arn.
Declaration
Swift
public func listTagsForResource(_ input: ListTagsForResourceRequest) -> EventLoopFuture<ListTagsForResourceResponse>
-
Resets a group’s deployments.
Declaration
Swift
public func resetDeployments(_ input: ResetDeploymentsRequest) -> EventLoopFuture<ResetDeploymentsResponse>
-
Deploys multiple groups in one operation. This action starts the bulk deployment of a specified set of group versions. Each group version deployment will be triggered with an adaptive rate that has a fixed upper limit. We recommend that you include an “X-Amzn-Client-Token” token in every “StartBulkDeployment” request. These requests are idempotent with respect to the token and the request parameters.
Declaration
Swift
public func startBulkDeployment(_ input: StartBulkDeploymentRequest) -> EventLoopFuture<StartBulkDeploymentResponse>
-
Stops the execution of a bulk deployment. This action returns a status of “Stopping” until the deployment is stopped. You cannot start a new bulk deployment while a previous deployment is in the “Stopping” state. This action doesn’t rollback completed deployments or cancel pending deployments.
Declaration
Swift
public func stopBulkDeployment(_ input: StopBulkDeploymentRequest) -> EventLoopFuture<StopBulkDeploymentResponse>
-
Adds tags to a Greengrass resource. Valid resources are ‘Group’, ‘ConnectorDefinition’, ‘CoreDefinition’, ‘DeviceDefinition’, ‘FunctionDefinition’, ‘LoggerDefinition’, ‘SubscriptionDefinition’, ‘ResourceDefinition’, and ‘BulkDeployment’.
Declaration
Swift
@discardableResult public func tagResource(_ input: TagResourceRequest) -> EventLoopFuture<Void>
-
Remove resource tags from a Greengrass Resource.
Declaration
Swift
@discardableResult public func untagResource(_ input: UntagResourceRequest) -> EventLoopFuture<Void>
-
Updates the connectivity information for the core. Any devices that belong to the group which has this core will receive this information in order to find the location of the core and connect to it.
Declaration
Swift
public func updateConnectivityInfo(_ input: UpdateConnectivityInfoRequest) -> EventLoopFuture<UpdateConnectivityInfoResponse>
-
Updates a connector definition.
Declaration
Swift
public func updateConnectorDefinition(_ input: UpdateConnectorDefinitionRequest) -> EventLoopFuture<UpdateConnectorDefinitionResponse>
-
Updates a core definition.
Declaration
Swift
public func updateCoreDefinition(_ input: UpdateCoreDefinitionRequest) -> EventLoopFuture<UpdateCoreDefinitionResponse>
-
Updates a device definition.
Declaration
Swift
public func updateDeviceDefinition(_ input: UpdateDeviceDefinitionRequest) -> EventLoopFuture<UpdateDeviceDefinitionResponse>
-
Updates a Lambda function definition.
Declaration
Swift
public func updateFunctionDefinition(_ input: UpdateFunctionDefinitionRequest) -> EventLoopFuture<UpdateFunctionDefinitionResponse>
-
Updates a group.
Declaration
Swift
public func updateGroup(_ input: UpdateGroupRequest) -> EventLoopFuture<UpdateGroupResponse>
-
Updates the Certificate expiry time for a group.
Declaration
Swift
public func updateGroupCertificateConfiguration(_ input: UpdateGroupCertificateConfigurationRequest) -> EventLoopFuture<UpdateGroupCertificateConfigurationResponse>
-
Updates a logger definition.
Declaration
Swift
public func updateLoggerDefinition(_ input: UpdateLoggerDefinitionRequest) -> EventLoopFuture<UpdateLoggerDefinitionResponse>
-
Updates a resource definition.
Declaration
Swift
public func updateResourceDefinition(_ input: UpdateResourceDefinitionRequest) -> EventLoopFuture<UpdateResourceDefinitionResponse>
-
Updates a subscription definition.
Declaration
Swift
public func updateSubscriptionDefinition(_ input: UpdateSubscriptionDefinitionRequest) -> EventLoopFuture<UpdateSubscriptionDefinitionResponse>
-
Undocumented
See moreDeclaration
Swift
public enum BulkDeploymentStatus : String, CustomStringConvertible, Codable
-
Undocumented
See moreDeclaration
Swift
public enum DeploymentType : String, CustomStringConvertible, Codable
-
Undocumented
See moreDeclaration
Swift
public enum EncodingType : String, CustomStringConvertible, Codable
-
Undocumented
See moreDeclaration
Swift
public enum FunctionIsolationMode : String, CustomStringConvertible, Codable
-
Undocumented
See moreDeclaration
Swift
public enum LoggerComponent : String, CustomStringConvertible, Codable
-
Undocumented
See moreDeclaration
Swift
public enum LoggerLevel : String, CustomStringConvertible, Codable
-
Undocumented
See moreDeclaration
Swift
public enum LoggerType : String, CustomStringConvertible, Codable
-
Undocumented
See moreDeclaration
Swift
public enum Permission : String, CustomStringConvertible, Codable
-
Undocumented
See moreDeclaration
Swift
public enum SoftwareToUpdate : String, CustomStringConvertible, Codable
-
Undocumented
See moreDeclaration
Swift
public enum UpdateAgentLogLevel : String, CustomStringConvertible, Codable
-
Undocumented
See moreDeclaration
Swift
public enum UpdateTargetsArchitecture : String, CustomStringConvertible, Codable
-
Undocumented
See moreDeclaration
Swift
public enum UpdateTargetsOperatingSystem : String, CustomStringConvertible, Codable