@@ -18,8 +18,9 @@ in the editor will not be saved back to the repository._
18
18
19
19
## Installation
20
20
21
- * Install the appropriate version for your development platform of
21
+ * Install the appropriate version of
22
22
[ Azure Functions Core Tools version 2.x] ( https://docs.microsoft.com/en-us/azure/azure-functions/functions-run-local#install-the-azure-functions-core-tools )
23
+ for your development platform of choice
23
24
* Clone the repository - ` git clone https://github.com/nhsuk/cache-flush.git `
24
25
* Install npm dependencies - ` npm install `
25
26
* Rename [ example.local.settings.json] ( example.local.settings.json ) to
@@ -28,11 +29,45 @@ in the editor will not be saved back to the repository._
28
29
[ Akamai's documentation] ( https://developer.akamai.com/legacy/introduction/Prov_Creds.html )
29
30
provides details on how to setup API credentials.
30
31
31
-
32
32
## Run Azure Function App locally
33
33
34
34
* Start the Function app - ` func start `
35
35
36
+ ## Deployments and environments
37
+
38
+ Deployments to all environments are fully automated and are tested to confirm
39
+ the deployment has been successful as part of the deployment process.
40
+ Therefore, if the deployment job succeeds you can be confident the application
41
+ is working.
42
+
43
+ Deployments are configured via [ azure-pipelines.yml] ( ./azure-pipelines.yml ) and
44
+ run within the
45
+ [ nhsuk.utilities] ( https://dev.azure.com/nhsuk/nhsuk.utilities/_build?definitionId=323 )
46
+ project. The pipeline is not public. In order to view it a login is required.
47
+ The deployed applications are protected using the standard function app
48
+ authorisation mechanism i.e.
49
+ [ authorization keys] ( https://docs.microsoft.com/en-us/azure/azure-functions/functions-bindings-http-webhook#authorization-keys ) .
50
+ The keys are maintained as secrets to prevent abuse and unwanted use.
51
+
52
+ ### Review environments
53
+ Review environments are deployed for every PR and are available at
54
+ [ https://nhsuk-cache-flush-func-dev-uks-pr- <PR_NUMBER>.azurewebsites.net/] ( https://nhsuk-cache-flush-func-dev-uks-pr-XXX.azurewebsites.net/ ) .
55
+ When a PR is merged into ` master ` the review environment will be deleted.
56
+
57
+ ### [ Integration] ( https://nhsuk-cache-flush-func-int-uks.azurewebsites.net/ )
58
+ Merges to ` master ` generate a deployment to the integration environment.
59
+
60
+ ### [ Staging] ( https://nhsuk-cache-flush-func-stag-uks.azurewebsites.net/ )
61
+ The creation of a [ release] ( https://github.com/nhsuk/cache-flush/releases )
62
+ generates a deployment to the staging environment.
63
+
64
+ ### [ Production] ( https://nhsuk-cache-flush-func-prod-uks.azurewebsites.net/ )
65
+ Deployments to production are only possible if the change has been deployed to
66
+ the staging environment. The deployment to production must be
67
+ [ approved] ( https://docs.microsoft.com/en-us/azure/devops/pipelines/process/approvals?view=azure-devops#approvals ) .
68
+ Using approvals enables a pause between the deployment to staging and the
69
+ deployment to production. It is often necessary to seek a sign-off prior to
70
+ deploying to production and this setup allows that to happen.
36
71
37
72
## Environment variables
38
73
0 commit comments