Skip to content

Commit 29be816

Browse files
Merge branch 'main' into spike/Snapshot-tests
2 parents e0b7202 + 907a260 commit 29be816

File tree

464 files changed

+16371
-3398
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

464 files changed

+16371
-3398
lines changed

.azuredevops/pipelines/acr-image-promote-dev-to-nft.yaml

Lines changed: 45 additions & 54 deletions
Original file line numberDiff line numberDiff line change
@@ -9,47 +9,21 @@ resources:
99
- repository: dtos-devops-templates
1010
type: github
1111
name: NHSDigital/dtos-devops-templates
12-
ref: 7dd6e83de82475570a27e172b95be8d30f488695
12+
ref: dbb933e78adea035c494a4d6c081c39787533a30
1313
endpoint: NHSDigital
1414

15-
parameters:
16-
- name: destEnvironmentShortName
17-
displayName: Destination Environment Short Name
18-
type: string
19-
values:
20-
- dev
21-
default: dev
22-
15+
variables:
16+
- group: DEV_hub_backend_remote_state
2317
- name: sourceRegistry
24-
displayName: Source Container Registry
25-
type: string
26-
values:
27-
- acrukshubdevcohman
28-
default: acrukshubdevcohman
29-
18+
value: acrukshubdevcohman
3019
- name: selectImageTag
31-
displayName: Select Image Tag
32-
type: string
33-
values:
34-
- development
35-
default: development
36-
20+
value: development
3721
- name: destRegistry
38-
displayName: Destination Container Registry
39-
type: string
40-
values:
41-
- acrukshubdevcohman
42-
default: acrukshubdevcohman
43-
22+
value: acrukshubdevcohman
4423
- name: addImageTag
45-
displayName: Target Image Tag
46-
type: string
47-
values:
48-
- nft
49-
default: nft
50-
51-
variables:
52-
- group: DEV_hub_backend_remote_state
24+
value: nft
25+
- name: destEnvironmentShortName
26+
value: nft
5327

5428
stages:
5529
- stage: db_changes_stage
@@ -59,11 +33,22 @@ stages:
5933
pool:
6034
name: private-pool-dev-uks
6135
displayName: Apply database changes
36+
variables:
37+
- group: NFT_core_backend
6238
steps:
6339
- checkout: self
40+
- checkout: dtos-devops-templates
6441
- template: .azuredevops/templates/steps/apply-database-changes.yaml@dtos-devops-templates
6542
parameters:
66-
serviceConnection: sc-cohort-manager-dev
43+
serviceConnection: $(SERVICE_CONNECTION)
44+
resourceGroupSQL: rg-cohman-$(destEnvironmentShortName)-uks
45+
miNameACR: dtos-cohort-manager-acr-push
46+
miNameSQL: mi-cohort-manager-db-management-nft
47+
acrServerName: '$(sourceRegistry).azurecr.io'
48+
containerGroupName: 'acigrp-cohort-manager-db-migration'
49+
containerName: 'cohort-manager-db-migration'
50+
containerImageName: 'cohort-manager-database-db-migration:$(selectImageTag)'
51+
sqlConnectionString: '$(DTOS_DATABASE_CONNECTION_STRING)'
6752

6853
- stage: re_tag_stage
6954
displayName: ACR re-tag
@@ -73,44 +58,50 @@ stages:
7358
name: private-pool-prod-uks
7459
displayName: Update/copy Docker images with new tag
7560
variables:
76-
SRC_REGISTRY: ${{ parameters.sourceRegistry }}
77-
DEST_REGISTRY: ${{ parameters.destRegistry }}
78-
SELECT_IMAGE_TAG: ${{ parameters.selectImageTag }}
79-
ADD_IMAGE_TAG: ${{ parameters.addImageTag }}
61+
SRC_REGISTRY: $(sourceRegistry)
62+
DEST_REGISTRY: $(destRegistry)
63+
SELECT_IMAGE_TAG: $(selectImageTag)
64+
ADD_IMAGE_TAG: $(addImageTag)
8065
steps:
8166
- template: .azuredevops/templates/steps/acr-import-retag.yaml@dtos-devops-templates
8267
parameters:
83-
serviceConnection: sc-cohort-manager-dev
68+
serviceConnection: sc-cohort-manager-nft
8469

8570
- stage: deploy_image_stage
8671
displayName: Deploy images
8772
jobs:
8873
- job: deploy_images
8974
pool:
90-
name: private-pool-prod-uks
75+
name: private-pool-dev-uks
9176
displayName: Deploy Docker images to function apps
9277
variables:
93-
DEST_REGISTRY: ${{ parameters.destRegistry }}
94-
ADD_IMAGE_TAG: ${{ parameters.addImageTag }}
95-
FUNCTION_NAME_PREFIX: ${{ parameters.destEnvironmentShortName }}-uks
96-
FUNCTION_RESOURCE_GROUP: rg-cohort-manager-${{ parameters.destEnvironmentShortName }}-uks
78+
DEST_REGISTRY: $(destRegistry)
79+
ADD_IMAGE_TAG: $(addImageTag)
80+
FUNCTION_NAME_PREFIX: $(destEnvironmentShortName)-uks
81+
FUNCTION_RESOURCE_GROUP: rg-cohort-manager-$(destEnvironmentShortName)-uks
9782
PROJECT_NAME: cohort-manager
9883
steps:
9984
- template: .azuredevops/templates/steps/deploy-images-from-acr.yaml@dtos-devops-templates
10085
parameters:
101-
serviceConnection: sc-cohort-manager-dev
86+
serviceConnection: sc-cohort-manager-nft
10287

10388
- stage: post_deployment_tests_stage
10489
displayName: Post-deployment tests
90+
variables:
91+
- group: NFT_automation_testing_pipeline
10592
jobs:
10693
- job: post_deployment_tests
107-
pool:
108-
name: private-pool-prod-uks
10994
displayName: Run post-deployment tests
95+
pool:
96+
name: private-pool-dev-uks
11097
variables:
111-
TARGET_ENVIRONMENT: ${{ parameters.destEnvironmentShortName }}
98+
AppSettings.ConnectionStrings.DtOsDatabaseConnectionString: $(DTOS_DATABASE_CONNECTION_STRING)
99+
AppSettings.CloudFileStorageConnectionString: $(CAASFOLDER_STORAGE_CONNECTION_STRING)
100+
AppSettings.ManagedIdentityClientId: $(MANAGED_IDENTITY_CLIENT_ID)
101+
AppSettings.IsCloudEnvironment: $(Is_CloudEnvironment)
112102
steps:
113-
- checkout: self
114-
- template: .azuredevops/templates/steps/run-post-deployment-tests.yaml@dtos-devops-templates
115-
parameters:
116-
serviceConnection: sc-cohort-manager-dev
103+
- template: .azuredevops/templates/steps/run-post-deployment-tests.yaml@dtos-devops-templates
104+
parameters:
105+
serviceConnection: sc-cohort-manager-nft
106+
testProjectDirectory: 'tests/smoke-tests/NHS.CohortManager.SmokeTests'
107+
testProjectName: 'NHS.CohortManager.SmokeTests'

.azuredevops/pipelines/acr-image-promote-nft-to-integration.yaml

Lines changed: 45 additions & 54 deletions
Original file line numberDiff line numberDiff line change
@@ -9,47 +9,21 @@ resources:
99
- repository: dtos-devops-templates
1010
type: github
1111
name: NHSDigital/dtos-devops-templates
12-
ref: 7dd6e83de82475570a27e172b95be8d30f488695
12+
ref: dbb933e78adea035c494a4d6c081c39787533a30
1313
endpoint: NHSDigital
1414

15-
parameters:
16-
- name: destEnvironmentShortName
17-
displayName: Destination Environment Short Name
18-
type: string
19-
values:
20-
- int
21-
default: int
22-
15+
variables:
16+
- group: DEV_hub_backend_remote_state
2317
- name: sourceRegistry
24-
displayName: Source Container Registry
25-
type: string
26-
values:
27-
- acrukshubdevcohman
28-
default: acrukshubdevcohman
29-
18+
value: acrukshubdevcohman
3019
- name: selectImageTag
31-
displayName: Select Image Tag
32-
type: string
33-
values:
34-
- nft
35-
default: nft
36-
20+
value: nft
3721
- name: destRegistry
38-
displayName: Destination Container Registry
39-
type: string
40-
values:
41-
- acrukshubdevcohman
42-
default: acrukshubdevcohman
43-
22+
value: acrukshubdevcohman
4423
- name: addImageTag
45-
displayName: Target Image Tag
46-
type: string
47-
values:
48-
- integration
49-
default: integration
50-
51-
variables:
52-
- group: DEV_hub_backend_remote_state
24+
value: integration
25+
- name: destEnvironmentShortName
26+
value: int
5327

5428
stages:
5529
- stage: db_changes_stage
@@ -59,11 +33,22 @@ stages:
5933
pool:
6034
name: private-pool-dev-uks
6135
displayName: Apply database changes
36+
variables:
37+
- group: INT_core_backend
6238
steps:
6339
- checkout: self
40+
- checkout: dtos-devops-templates
6441
- template: .azuredevops/templates/steps/apply-database-changes.yaml@dtos-devops-templates
6542
parameters:
66-
serviceConnection: sc-cohort-manager-dev
43+
serviceConnection: $(SERVICE_CONNECTION)
44+
resourceGroupSQL: rg-cohman-$(destEnvironmentShortName)-uks
45+
miNameACR: dtos-cohort-manager-acr-push
46+
miNameSQL: mi-cohort-manager-db-management-int
47+
acrServerName: '$(sourceRegistry).azurecr.io'
48+
containerGroupName: 'acigrp-cohort-manager-db-migration'
49+
containerName: 'cohort-manager-db-migration'
50+
containerImageName: 'cohort-manager-database-db-migration:$(selectImageTag)'
51+
sqlConnectionString: '$(DTOS_DATABASE_CONNECTION_STRING)'
6752

6853
- stage: re_tag_stage
6954
displayName: ACR re-tag
@@ -73,44 +58,50 @@ stages:
7358
name: private-pool-prod-uks
7459
displayName: Update/copy Docker images with new tag
7560
variables:
76-
SRC_REGISTRY: ${{ parameters.sourceRegistry }}
77-
DEST_REGISTRY: ${{ parameters.destRegistry }}
78-
SELECT_IMAGE_TAG: ${{ parameters.selectImageTag }}
79-
ADD_IMAGE_TAG: ${{ parameters.addImageTag }}
61+
SRC_REGISTRY: $(sourceRegistry)
62+
DEST_REGISTRY: $(destRegistry)
63+
SELECT_IMAGE_TAG: $(selectImageTag)
64+
ADD_IMAGE_TAG: $(addImageTag)
8065
steps:
8166
- template: .azuredevops/templates/steps/acr-import-retag.yaml@dtos-devops-templates
8267
parameters:
83-
serviceConnection: sc-cohort-manager-dev
68+
serviceConnection: $(SERVICE_CONNECTION)
8469

8570
- stage: deploy_image_stage
8671
displayName: Deploy images
8772
jobs:
8873
- job: deploy_images
8974
pool:
90-
name: private-pool-prod-uks
75+
name: private-pool-dev-uks
9176
displayName: Deploy Docker images to function apps
9277
variables:
93-
DEST_REGISTRY: ${{ parameters.destRegistry }}
94-
ADD_IMAGE_TAG: ${{ parameters.addImageTag }}
95-
FUNCTION_NAME_PREFIX: ${{ parameters.destEnvironmentShortName }}-uks
96-
FUNCTION_RESOURCE_GROUP: rg-cohort-manager-${{ parameters.destEnvironmentShortName }}-uks
78+
DEST_REGISTRY: $(destRegistry)
79+
ADD_IMAGE_TAG: $(addImageTag)
80+
FUNCTION_NAME_PREFIX: $(destEnvironmentShortName)-uks
81+
FUNCTION_RESOURCE_GROUP: rg-cohort-manager-$(destEnvironmentShortName)-uks
9782
PROJECT_NAME: cohort-manager
9883
steps:
9984
- template: .azuredevops/templates/steps/deploy-images-from-acr.yaml@dtos-devops-templates
10085
parameters:
101-
serviceConnection: sc-cohort-manager-dev
86+
serviceConnection: $(SERVICE_CONNECTION)
10287

10388
- stage: post_deployment_tests_stage
10489
displayName: Post-deployment tests
90+
variables:
91+
- group: INT_automation_testing_pipeline
10592
jobs:
10693
- job: post_deployment_tests
107-
pool:
108-
name: private-pool-prod-uks
10994
displayName: Run post-deployment tests
95+
pool:
96+
name: private-pool-dev-uks
11097
variables:
111-
TARGET_ENVIRONMENT: ${{ parameters.destEnvironmentShortName }}
98+
AppSettings.ConnectionStrings.DtOsDatabaseConnectionString: $(DTOS_DATABASE_CONNECTION_STRING)
99+
AppSettings.CloudFileStorageConnectionString: $(CAASFOLDER_STORAGE_CONNECTION_STRING)
100+
AppSettings.ManagedIdentityClientId: $(MANAGED_IDENTITY_CLIENT_ID)
101+
AppSettings.IsCloudEnvironment: $(Is_CloudEnvironment)
112102
steps:
113-
- checkout: self
114-
- template: .azuredevops/templates/steps/run-post-deployment-tests.yaml@dtos-devops-templates
115-
parameters:
116-
serviceConnection: sc-cohort-manager-dev
103+
- template: .azuredevops/templates/steps/run-post-deployment-tests.yaml@dtos-devops-templates
104+
parameters:
105+
serviceConnection: $(SERVICE_CONNECTION)
106+
testProjectDirectory: 'tests/smoke-tests/NHS.CohortManager.SmokeTests'
107+
testProjectName: 'NHS.CohortManager.SmokeTests'
Lines changed: 86 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,86 @@
1+
---
2+
3+
name: $(Build.SourceBranchName)-$(Date:yyyyMMdd)_$(Rev:r)
4+
trigger: none
5+
pr: none
6+
7+
resources:
8+
repositories:
9+
- repository: dtos-devops-templates
10+
type: github
11+
name: NHSDigital/dtos-devops-templates
12+
ref: dbb933e78adea035c494a4d6c081c39787533a30
13+
endpoint: NHSDigital
14+
15+
variables:
16+
- group: DEV_hub_backend_remote_state
17+
- name: sourceRegistry
18+
value: acrukshubdevcohman
19+
- name: selectImageTag
20+
value: development
21+
- name: destEnvironmentShortName
22+
value: dev
23+
24+
stages:
25+
- stage: db_changes_stage
26+
displayName: Database changes
27+
jobs:
28+
- job: db_changes
29+
pool:
30+
name: private-pool-dev-uks
31+
displayName: Apply database changes
32+
variables:
33+
- group: DEV_core_backend
34+
steps:
35+
- checkout: self
36+
- checkout: dtos-devops-templates
37+
- template: .azuredevops/templates/steps/apply-database-changes.yaml@dtos-devops-templates
38+
parameters:
39+
serviceConnection: $(SERVICE_CONNECTION)
40+
resourceGroupSQL: rg-cohman-$(destEnvironmentShortName)-uks
41+
miNameACR: dtos-cohort-manager-acr-push
42+
miNameSQL: mi-cohort-manager-db-management-dev
43+
acrServerName: '$(sourceRegistry).azurecr.io'
44+
containerGroupName: 'acigrp-cohman-$(destEnvironmentShortName)-uks-db-migration'
45+
containerName: 'cohort-manager-db-migration'
46+
containerImageName: 'cohort-manager-database-db-migration:$(selectImageTag)'
47+
sqlConnectionString: '$(DTOS_DATABASE_CONNECTION_STRING)'
48+
49+
- stage: deploy_image_stage
50+
displayName: Deploy images
51+
jobs:
52+
- job: deploy_images
53+
pool:
54+
name: private-pool-dev-uks
55+
displayName: Deploy Docker images to function apps
56+
variables:
57+
DEST_REGISTRY: $(destRegistry)
58+
ADD_IMAGE_TAG: $(addImageTag)
59+
FUNCTION_NAME_PREFIX: $(destEnvironmentShortName)-uks
60+
FUNCTION_RESOURCE_GROUP: rg-cohort-manager-$(destEnvironmentShortName)-uks
61+
PROJECT_NAME: cohort-manager
62+
steps:
63+
- template: .azuredevops/templates/steps/deploy-images-from-acr.yaml@dtos-devops-templates
64+
parameters:
65+
serviceConnection: $(SERVICE_CONNECTION)
66+
67+
- stage: post_deployment_tests_stage
68+
displayName: Post-deployment tests
69+
variables:
70+
- group: DEV_automation_testing_pipeline
71+
jobs:
72+
- job: post_deployment_tests
73+
displayName: Run post-deployment tests
74+
pool:
75+
name: private-pool-dev-uks
76+
variables:
77+
AppSettings.ConnectionStrings.DtOsDatabaseConnectionString: $(DTOS_DATABASE_CONNECTION_STRING)
78+
AppSettings.CloudFileStorageConnectionString: $(CAASFOLDER_STORAGE_CONNECTION_STRING)
79+
AppSettings.ManagedIdentityClientId: $(MANAGED_IDENTITY_CLIENT_ID)
80+
AppSettings.IsCloudEnvironment: $(Is_CloudEnvironment)
81+
steps:
82+
- template: .azuredevops/templates/steps/run-post-deployment-tests.yaml@dtos-devops-templates
83+
parameters:
84+
serviceConnection: $(SERVICE_CONNECTION)
85+
testProjectDirectory: 'tests/smoke-tests/NHS.CohortManager.SmokeTests'
86+
testProjectName: 'NHS.CohortManager.SmokeTests'

0 commit comments

Comments
 (0)