forked from hmcts/rpx-xui-webapp
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Jenkinsfile_nightly
133 lines (116 loc) · 4.09 KB
/
Jenkinsfile_nightly
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
#!groovy
properties([
[
$class : 'GithubProjectProperty',
displayName : 'Expert UI Webapp',
projectUrlStr: 'https://github.com/hmcts/rpx-xui-webapp/'
],
pipelineTriggers([
cron('H 07 * * *')
])
])
@Library("Infrastructure")
def type = "nodejs"
def product = "xui"
def component = "webapp"
def channel = '#xui-pipeline'
def yarnBuilder = new uk.gov.hmcts.contino.YarnBuilder(this)
withNightlyPipeline(type, product, component) {
enableSlackNotifications(channel)
enableFortifyScan('rpx-aat')
enableFullFunctionalTest(120)
//enableSecurityScan()
//enableMutationTest()
enableCrossBrowserTest()
env.TEST_URL = 'https://manage-case.aat.platform.hmcts.net/'
afterSuccess('checkout') {
yarnBuilder.yarn('cache clean')
}
afterSuccess('build') {
yarnBuilder.yarn('build')
publishHTML([
allowMissing : true,
alwaysLinkToLastBuild: true,
keepAll : true,
reportDir : "test/reports/lint/node/",
reportFiles : 'index.html',
reportName : 'node lint Report'
])
publishHTML([
allowMissing : true,
alwaysLinkToLastBuild: true,
keepAll : true,
reportDir : "test/reports/lint/ng/",
reportFiles : 'index.html',
reportName : 'ng lint Report'
])
// yarnBuilder.yarn('test:a11y')
// publishHTML([
// allowMissing : true,
// alwaysLinkToLastBuild: true,
// keepAll : true,
// reportDir : "reports/tests/a11y/",
// reportFiles : 'Report.html',
// reportName : 'Manage Cases a11y Test Report'
// ])
}
afterSuccess('fortify-scan') {
steps.archiveArtifacts allowEmptyArchive: true, artifacts: '**/Fortify Scan/**/*'
}
afterSuccess('fullFunctionalTest') {
publishHTML([
allowMissing : true,
alwaysLinkToLastBuild: true,
keepAll : true,
reportDir : "reports/tests/functional/",
reportFiles : 'index.html',
reportName : 'XUI Manage Cases Full functional Tests'
])
publishHTML([
allowMissing : true,
alwaysLinkToLastBuild: true,
keepAll : true,
reportDir : "reports/tests/api_functional/",
reportFiles : 'mochawesome.html',
reportName : 'API Functional Test'
])
publishHTML([
allowMissing : true,
alwaysLinkToLastBuild: true,
keepAll : true,
reportDir : "reports/tests/ngIntegration/",
reportFiles : 'index.html',
reportName : 'AAT NG Integration Test'
])
}
afterSuccess('mutationTest') {
publishHTML([
allowMissing : true,
alwaysLinkToLastBuild: true,
keepAll : true,
reportDir : "reports/tests/mutation/node/",
reportFiles : 'index.html',
reportName : 'XUI Manage Cases Mutation tests'
])
}
afterSuccess('crossBrowserTest') {
publishHTML([
allowMissing : true,
alwaysLinkToLastBuild: true,
keepAll : true,
reportDir : "reports/tests/crossbrowser/",
reportFiles : 'index.html',
reportName : 'XUI Manage Cases Cross Browser Tests'
])
}
afterSuccess('securityScan') {
publishHTML([
allowMissing : true,
alwaysLinkToLastBuild: true,
keepAll : true,
reportDir : "reports/tests/",
reportFiles : 'activescan.html',
reportName : 'XUIMC ZAP Security Scan Report'
])
}
}