generated from hmcts/expressjs-template
-
Notifications
You must be signed in to change notification settings - Fork 5
/
Copy pathJenkinsfile_CNP
135 lines (121 loc) · 5.75 KB
/
Jenkinsfile_CNP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
#!groovy
@Library("Infrastructure") _
def yarnBuilder = new uk.gov.hmcts.contino.YarnBuilder(this)
def type = "nodejs"
def product = "pip"
def component = "frontend"
def setupTestSecrets() {
def bootstrap_env = env.ENV == "prod" || env.ENV == "demo" || env.ENV == "sbox" ? env.ENV : "stg"
azureKeyVault(
keyVaultURL: "https://pip-bootstrap-${bootstrap_env}-kv.vault.azure.net/",
secrets: [
secret('b2c-test-account', 'B2C_USERNAME'),
secret('b2c-test-account-pwd', 'B2C_PASSWORD'),
secret('b2c-test-admin-account', 'B2C_ADMIN_USERNAME'),
secret('b2c-test-admin-account-pwd', 'B2C_ADMIN_PASSWORD'),
secret('cft-valid-test-account', 'CFT_VALID_USERNAME'),
secret('cft-valid-test-account-password', 'CFT_VALID_PASSWORD'),
secret('cft-invalid-test-account', 'CFT_INVALID_USERNAME'),
secret('cft-invalid-test-account-password', 'CFT_INVALID_PASSWORD'),
secret('b2c-test-system-admin-account', 'B2C_SYSTEM_ADMIN_USERNAME'),
secret('b2c-test-system-admin-account-pwd', 'B2C_SYSTEM_ADMIN_PASSWORD'),
secret('app-pip-data-management-scope', 'DATA_MANAGEMENT_AZ_API'),
secret('app-pip-subscription-management-scope', 'SUBSCRIPTION_MANAGEMENT_AZ_API'),
secret('app-pip-account-management-scope', 'ACCOUNT_MANAGEMENT_AZ_API'),
secret('b2c-test-system-admin-account-provenance-id', 'SYSTEM_ADMIN_PROVENANCE_ID'),
secret('test-user-id', 'VERIFIED_USER_ID'),
secret('test-system-admin-id', 'SYSTEM_ADMIN_USER_ID'),
secret('app-tenant', 'TENANT_ID'),
secret('app-pip-frontend-id', 'CLIENT_ID_INTERNAL'),
secret('app-pip-frontend-pwd', 'CLIENT_SECRET_INTERNAL'),
secret('auto-generated-test-user-pwd','TEST_USER_PASSWORD'),
secret('sso-test-admin-account-ctsc-user', 'SSO_TEST_ADMIN_CTSC_USER'),
secret('sso-test-admin-account-ctsc-pwd', 'SSO_TEST_ADMIN_CTSC_PWD'),
secret('sso-test-admin-local-account-user', 'SSO_TEST_ADMIN_LOCAL_USER'),
secret('sso-test-admin-local-account-pwd','SSO_TEST_ADMIN_LOCAL_PWD'),
secret('sso-test-system-admin-account-user','SSO_TEST_SYSTEM_ADMIN_USER'),
secret('sso-test-system-admin-account-pwd', 'SSO_TEST_SYSTEM_ADMIN_PWD'),
secret('sso-test-system-admin-user-id', 'SSO_SYSTEM_ADMIN_USER_ID'),
secret('sso-test-no-roles-account-user','SSO_TEST_NO_ROLES_USER'),
secret('sso-test-no-roles-account-pwd', 'SSO_TEST_NO_ROLES_PWD'),
]) {
env.B2C_USERNAME = "${B2C_USERNAME}"
env.B2C_PASSWORD = "${B2C_PASSWORD}"
env.B2C_ADMIN_USERNAME = "${B2C_ADMIN_USERNAME}"
env.B2C_ADMIN_PASSWORD = "${B2C_ADMIN_PASSWORD}"
env.CFT_VALID_USERNAME = "${CFT_VALID_USERNAME}"
env.CFT_VALID_PASSWORD = "${CFT_VALID_PASSWORD}"
env.CFT_INVALID_USERNAME = "${CFT_INVALID_USERNAME}"
env.CFT_INVALID_PASSWORD = "${CFT_INVALID_PASSWORD}"
env.B2C_SYSTEM_ADMIN_USERNAME = "${B2C_SYSTEM_ADMIN_USERNAME}"
env.B2C_SYSTEM_ADMIN_PASSWORD = "${B2C_SYSTEM_ADMIN_PASSWORD}"
env.DATA_MANAGEMENT_AZ_API = "${DATA_MANAGEMENT_AZ_API}"
env.SUBSCRIPTION_MANAGEMENT_AZ_API = "${SUBSCRIPTION_MANAGEMENT_AZ_API}"
env.ACCOUNT_MANAGEMENT_AZ_API = "${ACCOUNT_MANAGEMENT_AZ_API}"
env.SYSTEM_ADMIN_PROVENANCE_ID = "${SYSTEM_ADMIN_PROVENANCE_ID}"
env.VERIFIED_USER_ID = "${VERIFIED_USER_ID}"
env.SYSTEM_ADMIN_USER_ID = "${SYSTEM_ADMIN_USER_ID}"
env.TENANT_ID = "${TENANT_ID}"
env.CLIENT_ID_INTERNAL = "${CLIENT_ID_INTERNAL}"
env.CLIENT_SECRET_INTERNAL = "${CLIENT_SECRET_INTERNAL}"
env.TEST_USER_PASSWORD = "${TEST_USER_PASSWORD}"
env.SSO_TEST_ADMIN_CTSC_USER = "${SSO_TEST_ADMIN_CTSC_USER}"
env.SSO_TEST_ADMIN_CTSC_PWD = "${SSO_TEST_ADMIN_CTSC_PWD}"
env.SSO_TEST_ADMIN_LOCAL_USER = "${SSO_TEST_ADMIN_LOCAL_USER}"
env.SSO_TEST_ADMIN_LOCAL_PWD = "${SSO_TEST_ADMIN_LOCAL_PWD}"
env.SSO_TEST_SYSTEM_ADMIN_USER = "${SSO_TEST_SYSTEM_ADMIN_USER}"
env.SSO_TEST_SYSTEM_ADMIN_PWD = "${SSO_TEST_SYSTEM_ADMIN_PWD}"
env.SSO_SYSTEM_ADMIN_USER_ID = "${SSO_SYSTEM_ADMIN_USER_ID}"
env.SSO_TEST_NO_ROLES_USER = "${SSO_TEST_NO_ROLES_USER}"
env.SSO_TEST_NO_ROLES_PWD = "${SSO_TEST_NO_ROLES_PWD}"
}
}
static Map<String, Object> secret(String secretName, String envVariable) {
[
$class : 'AzureKeyVaultSecret',
secretType : 'Secret',
name : secretName,
envVariable: envVariable
]
}
withPipeline(type, product, component) {
disableLegacyDeployment()
afterAlways('build') {
yarnBuilder.yarn('build')
}
enableSlackNotifications('#pip-build-notices')
setupTestSecrets()
onMaster() {
env.ENV = 'stg'
}
onPR() {
env.ENV = 'dev'
}
onDemo {
env.ENV = 'demo'
}
onPerftest {
env.ENV = 'perftest'
}
onIthc {
env.ENV = 'ithc'
}
afterAlways('functionalTest') {
publishHTML target: [
allowMissing : true,
alwaysLinkToLastBuild: true,
keepAll : true,
reportDir : "functional-output/functional/allure",
reportFiles : "index.html",
reportName : "Functional Test Report"
]
publishHTML target: [
allowMissing : true,
alwaysLinkToLastBuild: true,
keepAll : true,
reportDir : "functional-output/accessibility",
reportFiles : "all_results.html",
reportName : "Accessibility Test Report"
]
}
}