The Document Schema Job Runner Function is an Azure Function app that runs on a timer trigger. Its primary function is to execute a set of tasks, retrieving and updating records from various databases within the EPR system.
In order to run the service you will need the following dependencies
- .NET 8
- Azure CLI
Go to EPR.DocumentSchemaJobRunner/EPR.DocumentSchemaJobRunner.Function
directory and execute:
func start
Run in terminal at the solution source root:
docker build -t document-schema-job-runner -f EPR.DocumentSchemaJobRunner.Function/Dockerfile .
Fill out the environment variables and run the following command:
docker run -e AzureWebJobsStorage="X" -e AccountsDatabase:ConnectionString="X" -e SubmissionsDatabase:ConnectionString="X" -e SubmissionsDatabase:AccountKey="X" -e SubmissionsDatabase:Name="X" -e ScheduleExpression="X" document-schema-job-runner
On root directory EPR.DocumentSchemaJobRunner
, execute:
dotnet test
N/A
N/A
The structure of the app-settings can be found in the repository. Example configurations for the different environments can be found in epr-app-config-settings.
Variable Name | Description |
---|---|
AzureWebJobsStorage | The connection string for the Azure Web Jobs Storage |
AccountsDatabase__ConnectionString | The connection string for the Accounts SQL database |
SubmissionsDatabase__ConnectionString | The connection string for the Submissions Cosmos database |
SubmissionsDatabase__AccountKey | The account key for the Submissions Cosmos database |
SubmissionsDatabase__Name | The name of the Submissions Cosmos database |
ScheduleExpression | The schedule expression on which the function will execute |
See ADR-059: CosmosDB Schema Migrations
Enable Health Check in the Azure portal and set the URL path to TimerTrigger
EPR.DocumentSchemaJobRunner.Application
- Application .NET source filesEPR.DocumentSchemaJobRunner.Data
- Data .NET source filesEPR.DocumentSchemaJobRunner.Function
- Function .NET source filesEPR.DocumentSchemaJobRunner.UnitTests
- .NET unit test files
Please read the contribution guidelines before submitting a pull request.