This is an Azure Functions implementation of a CloudEvents Registry and a CloudEvent Subscription Manager that acts as a proxy to Azure Event Grid's subscription management API.
The service depends on an Azure CosmosDB instance. The "cosmosdb_armtemplate.json" ARM template allows setting up the required containers and partition keys.
You also need an Azure blob account with a container named "schemas" and an Azure Event Grid custom topic.
In addition to the common configuration parameters, the following app settings of the Azure Function deployment need to be configured:
BLOB_ACCOUNT
: Account name of an Azure Blob account where schema documents will storedBLOB_ENDPOINT
: Endpoint URI of the blob accountBLOB_KEY
: Access key of the blob accountCOSMOSDB_ENDPOINT
: Endpoint of the CosmosDB collection where the data is storedCOSMOSDB_KEY
: Access key for the CosmosDB collectionEVENTGRID_ENDPOINT
: The publishing endpoint of the Event Grid custom topic where state change events are raised toEVENTGRID_KEY
: The access key for the Event Grid topic