foreman_leapp 0.0.5 → 0.0.6
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/app/views/foreman_leapp/job_templates/upgrade.erb +12 -4
- data/app/views/job_invocations/_leapp_preupgrade_report.html.erb +2 -1
- data/lib/foreman_leapp/version.rb +1 -1
- data/webpack/__mocks__/foremanReact/Root/Context/ForemanContext.js +4 -0
- data/webpack/__mocks__/foremanReact/components/Pagination/PaginationWrapper.js +2 -0
- data/webpack/components/PreupgradeReports/PreupgradeReports.js +32 -4
- data/webpack/components/PreupgradeReports/PreupgradeReportsHelpers.js +35 -0
- data/webpack/components/PreupgradeReports/PreupgradeReportsSelectors.js +1 -0
- data/webpack/components/PreupgradeReports/__tests__/PreupgradeReports.fixtures.js +34 -2
- data/webpack/components/PreupgradeReports/__tests__/PreupgradeReports.test.js +9 -0
- data/webpack/components/PreupgradeReports/__tests__/PreupgradeReportsHelpers.test.js +38 -0
- data/webpack/components/PreupgradeReports/__tests__/__snapshots__/PreupgradeReports.test.js.snap +131 -24
- data/webpack/components/PreupgradeReports/__tests__/__snapshots__/PreupgradeReportsHelpers.test.js.snap +82 -0
- data/webpack/components/PreupgradeReports/__tests__/__snapshots__/PreupgradeReportsReducer.test.js.snap +19 -0
- data/webpack/components/PreupgradeReports/__tests__/__snapshots__/PreupgradeReportsSelectors.test.js.snap +19 -0
- data/webpack/components/PreupgradeReports/components/FixAllButton.js +37 -0
- data/webpack/components/PreupgradeReports/components/FixAllButton.test.js +18 -0
- data/webpack/components/PreupgradeReports/components/__snapshots__/FixAllButton.test.js.snap +34 -0
- data/webpack/components/PreupgradeReports/index.js +7 -2
- data/webpack/components/PreupgradeReportsList/__tests__/PreupgradeReportsList.test.js +12 -2
- data/webpack/components/PreupgradeReportsList/__tests__/__snapshots__/PreupgradeReportsList.test.js.snap +81 -0
- data/webpack/components/PreupgradeReportsList/components/PreupgradeReportEntry.js +39 -5
- data/webpack/components/PreupgradeReportsList/components/__tests__/PreupgradeReportEntry.fixtures.js +38 -0
- data/webpack/components/PreupgradeReportsList/components/__tests__/__snapshots__/PreupgradeReportEntry.test.js.snap +97 -22
- data/webpack/components/PreupgradeReportsList/components/__tests__/__snapshots__/helpers.test.js.snap +196 -28
- data/webpack/components/PreupgradeReportsList/components/__tests__/helpers.test.js +21 -8
- data/webpack/components/PreupgradeReportsList/components/foreman_leapp.scss +9 -0
- data/webpack/components/PreupgradeReportsList/components/helpers.js +149 -21
- data/webpack/components/PreupgradeReportsList/index.js +21 -8
- data/webpack/csrf.js +4 -0
- metadata +27 -5
- data/webpack/components/PreupgradeReportsList/components/StringInfoItem.js +0 -49
- data/webpack/components/PreupgradeReportsList/components/__tests__/StringInfoItem.test.js +0 -13
- data/webpack/components/PreupgradeReportsList/components/__tests__/__snapshots__/StringInfoItem.test.js.snap +0 -12
data/webpack/components/PreupgradeReportsList/components/__tests__/PreupgradeReportEntry.fixtures.js
ADDED
@@ -0,0 +1,38 @@
|
|
1
|
+
export const reportEntry = {
|
2
|
+
hostname: 'leapp-20200407164551',
|
3
|
+
severity: 'high',
|
4
|
+
title: 'Difference in Python versions and support in RHEL 8',
|
5
|
+
timeStamp: '2020-04-08T16:49:34.453295Z',
|
6
|
+
tags: ['python'],
|
7
|
+
summary: 'This checks difference in python versions',
|
8
|
+
detail: {
|
9
|
+
related_resources: [
|
10
|
+
{
|
11
|
+
scheme: 'package',
|
12
|
+
title: 'python',
|
13
|
+
},
|
14
|
+
{
|
15
|
+
scheme: 'package',
|
16
|
+
title: 'python2',
|
17
|
+
},
|
18
|
+
{
|
19
|
+
scheme: 'package',
|
20
|
+
title: 'python3',
|
21
|
+
},
|
22
|
+
],
|
23
|
+
external: [
|
24
|
+
{
|
25
|
+
url:
|
26
|
+
'https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/8/html-single/configuring_basic_system_settings/#using-python3',
|
27
|
+
title: 'Difference in Python versions and support in RHEL 8',
|
28
|
+
},
|
29
|
+
],
|
30
|
+
remediations: [
|
31
|
+
{
|
32
|
+
type: 'hint',
|
33
|
+
context:
|
34
|
+
'Please run "alternatives --set python /usr/bin/python3" after upgrade',
|
35
|
+
},
|
36
|
+
],
|
37
|
+
},
|
38
|
+
};
|
@@ -5,23 +5,33 @@ exports[`PreupgradeReportEntry should render 1`] = `
|
|
5
5
|
actions={null}
|
6
6
|
additionalInfo={
|
7
7
|
Array [
|
8
|
-
<
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
8
|
+
<ListViewInfoItem
|
9
|
+
className=""
|
10
|
+
stacked={false}
|
11
|
+
>
|
12
|
+
<Icon
|
13
|
+
name="cluster"
|
14
|
+
type="pf"
|
15
|
+
/>
|
16
|
+
|
17
|
+
</ListViewInfoItem>,
|
18
|
+
<ListViewInfoItem
|
19
|
+
className=""
|
20
|
+
stacked={false}
|
21
|
+
>
|
22
|
+
<Icon
|
23
|
+
name="resources-full"
|
24
|
+
style={
|
25
|
+
Object {
|
26
|
+
"color": "#39a5dc",
|
27
|
+
}
|
17
28
|
}
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
<
|
23
|
-
attr="
|
24
|
-
elipsed={false}
|
29
|
+
type="pf"
|
30
|
+
/>
|
31
|
+
low
|
32
|
+
</ListViewInfoItem>,
|
33
|
+
<EmptyInfoItem
|
34
|
+
attr="remediation"
|
25
35
|
entry={
|
26
36
|
Object {
|
27
37
|
"id": 5,
|
@@ -30,16 +40,17 @@ exports[`PreupgradeReportEntry should render 1`] = `
|
|
30
40
|
"title": "no title",
|
31
41
|
}
|
32
42
|
}
|
33
|
-
mapAttr={[Function]}
|
34
|
-
translate={false}
|
35
43
|
/>,
|
36
44
|
]
|
37
45
|
}
|
38
|
-
checkboxInput={
|
39
|
-
|
46
|
+
checkboxInput={
|
47
|
+
<input
|
48
|
+
type="checkbox"
|
49
|
+
/>
|
50
|
+
}
|
40
51
|
compoundExpand={false}
|
41
52
|
compoundExpanded={false}
|
42
|
-
description=
|
53
|
+
description="no title"
|
43
54
|
heading={null}
|
44
55
|
hideCloseIcon={false}
|
45
56
|
initExpanded={false}
|
@@ -49,5 +60,69 @@ exports[`PreupgradeReportEntry should render 1`] = `
|
|
49
60
|
onExpand={[Function]}
|
50
61
|
onExpandClose={[Function]}
|
51
62
|
stacked={true}
|
52
|
-
|
63
|
+
>
|
64
|
+
<Grid
|
65
|
+
bsClass="container"
|
66
|
+
componentClass="div"
|
67
|
+
fluid={true}
|
68
|
+
>
|
69
|
+
<Row
|
70
|
+
bsClass="row"
|
71
|
+
componentClass="div"
|
72
|
+
>
|
73
|
+
<Col
|
74
|
+
bsClass="col"
|
75
|
+
componentClass="div"
|
76
|
+
md={1}
|
77
|
+
>
|
78
|
+
<strong>
|
79
|
+
Title
|
80
|
+
</strong>
|
81
|
+
</Col>
|
82
|
+
<Col
|
83
|
+
bsClass="col"
|
84
|
+
componentClass="div"
|
85
|
+
md={8}
|
86
|
+
>
|
87
|
+
no title
|
88
|
+
</Col>
|
89
|
+
</Row>
|
90
|
+
<Row
|
91
|
+
bsClass="row"
|
92
|
+
className="top-padded"
|
93
|
+
componentClass="div"
|
94
|
+
>
|
95
|
+
<Col
|
96
|
+
bsClass="col"
|
97
|
+
componentClass="div"
|
98
|
+
md={1}
|
99
|
+
>
|
100
|
+
<strong>
|
101
|
+
Risk Factor
|
102
|
+
</strong>
|
103
|
+
</Col>
|
104
|
+
<Col
|
105
|
+
bsClass="col"
|
106
|
+
componentClass="div"
|
107
|
+
md={8}
|
108
|
+
>
|
109
|
+
<Icon
|
110
|
+
name="resources-full"
|
111
|
+
style={
|
112
|
+
Object {
|
113
|
+
"color": "#39a5dc",
|
114
|
+
}
|
115
|
+
}
|
116
|
+
type="pf"
|
117
|
+
/>
|
118
|
+
|
119
|
+
low
|
120
|
+
</Col>
|
121
|
+
</Row>
|
122
|
+
<div />
|
123
|
+
<div />
|
124
|
+
<div />
|
125
|
+
<div />
|
126
|
+
</Grid>
|
127
|
+
</ListViewItem>
|
53
128
|
`;
|
@@ -1,34 +1,202 @@
|
|
1
1
|
// Jest Snapshot v1, https://goo.gl/fbAQLP
|
2
2
|
|
3
|
-
exports[`PreupgradeReportList/helpers should
|
3
|
+
exports[`PreupgradeReportList/helpers should detect if has remediations 1`] = `
|
4
|
+
<ListViewInfoItem
|
5
|
+
className=""
|
6
|
+
stacked={false}
|
7
|
+
>
|
8
|
+
<Icon
|
9
|
+
name="warning-triangle-o"
|
10
|
+
type="pf"
|
11
|
+
/>
|
12
|
+
Has Remediation
|
13
|
+
</ListViewInfoItem>
|
14
|
+
`;
|
15
|
+
|
16
|
+
exports[`PreupgradeReportList/helpers should return externals 1`] = `
|
4
17
|
Array [
|
5
|
-
<
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
"
|
26
|
-
|
27
|
-
|
18
|
+
<Row
|
19
|
+
bsClass="row"
|
20
|
+
className="top-padded"
|
21
|
+
componentClass="div"
|
22
|
+
>
|
23
|
+
<Col
|
24
|
+
bsClass="col"
|
25
|
+
componentClass="div"
|
26
|
+
md={1}
|
27
|
+
>
|
28
|
+
<strong>
|
29
|
+
Links
|
30
|
+
</strong>
|
31
|
+
</Col>
|
32
|
+
<Col
|
33
|
+
bsClass="col"
|
34
|
+
componentClass="div"
|
35
|
+
md={8}
|
36
|
+
>
|
37
|
+
<a
|
38
|
+
href="https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/8/html-single/configuring_basic_system_settings/#using-python3"
|
39
|
+
>
|
40
|
+
Difference in Python versions and support in RHEL 8
|
41
|
+
</a>
|
42
|
+
</Col>
|
43
|
+
</Row>,
|
44
|
+
]
|
45
|
+
`;
|
46
|
+
|
47
|
+
exports[`PreupgradeReportList/helpers should return hex for severity 1`] = `"#39a5dc"`;
|
48
|
+
|
49
|
+
exports[`PreupgradeReportList/helpers should return remediations 1`] = `
|
50
|
+
Array [
|
51
|
+
<Row
|
52
|
+
bsClass="row"
|
53
|
+
className="top-padded"
|
54
|
+
componentClass="div"
|
55
|
+
>
|
56
|
+
<Col
|
57
|
+
bsClass="col"
|
58
|
+
componentClass="div"
|
59
|
+
md={1}
|
60
|
+
>
|
61
|
+
<strong>
|
62
|
+
Hint
|
63
|
+
</strong>
|
64
|
+
</Col>
|
65
|
+
<Col
|
66
|
+
bsClass="col"
|
67
|
+
componentClass="div"
|
68
|
+
md={8}
|
69
|
+
>
|
70
|
+
Please run "alternatives --set python /usr/bin/python3" after upgrade
|
71
|
+
</Col>
|
72
|
+
</Row>,
|
73
|
+
]
|
74
|
+
`;
|
75
|
+
|
76
|
+
exports[`PreupgradeReportList/helpers should return severity 1`] = `
|
77
|
+
<Row
|
78
|
+
bsClass="row"
|
79
|
+
className="top-padded"
|
80
|
+
componentClass="div"
|
81
|
+
>
|
82
|
+
<Col
|
83
|
+
bsClass="col"
|
84
|
+
componentClass="div"
|
85
|
+
md={1}
|
86
|
+
>
|
87
|
+
<strong>
|
88
|
+
Risk Factor
|
89
|
+
</strong>
|
90
|
+
</Col>
|
91
|
+
<Col
|
92
|
+
bsClass="col"
|
93
|
+
componentClass="div"
|
94
|
+
md={8}
|
95
|
+
>
|
96
|
+
<Icon
|
97
|
+
name="resources-full"
|
98
|
+
style={
|
99
|
+
Object {
|
100
|
+
"color": "#cc0000",
|
101
|
+
}
|
28
102
|
}
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
103
|
+
type="pf"
|
104
|
+
/>
|
105
|
+
|
106
|
+
high
|
107
|
+
</Col>
|
108
|
+
</Row>
|
109
|
+
`;
|
110
|
+
|
111
|
+
exports[`PreupgradeReportList/helpers should return summary 1`] = `
|
112
|
+
<Row
|
113
|
+
bsClass="row"
|
114
|
+
className="top-padded"
|
115
|
+
componentClass="div"
|
116
|
+
>
|
117
|
+
<Col
|
118
|
+
bsClass="col"
|
119
|
+
componentClass="div"
|
120
|
+
md={1}
|
121
|
+
>
|
122
|
+
<strong>
|
123
|
+
Summary
|
124
|
+
</strong>
|
125
|
+
</Col>
|
126
|
+
<Col
|
127
|
+
bsClass="col"
|
128
|
+
className="pre-wrap"
|
129
|
+
componentClass="div"
|
130
|
+
md={8}
|
131
|
+
>
|
132
|
+
This checks difference in python versions
|
133
|
+
</Col>
|
134
|
+
</Row>
|
135
|
+
`;
|
136
|
+
|
137
|
+
exports[`PreupgradeReportList/helpers should return tag info 1`] = `
|
138
|
+
Array [
|
139
|
+
<Badge
|
140
|
+
bsClass="badge"
|
141
|
+
pullRight={false}
|
142
|
+
variant="pill primary"
|
143
|
+
>
|
144
|
+
python
|
145
|
+
</Badge>,
|
33
146
|
]
|
34
147
|
`;
|
148
|
+
|
149
|
+
exports[`PreupgradeReportList/helpers should return tags 1`] = `
|
150
|
+
<Row
|
151
|
+
bsClass="row"
|
152
|
+
className="top-padded"
|
153
|
+
componentClass="div"
|
154
|
+
>
|
155
|
+
<Col
|
156
|
+
bsClass="col"
|
157
|
+
componentClass="div"
|
158
|
+
md={1}
|
159
|
+
>
|
160
|
+
<strong>
|
161
|
+
Tags
|
162
|
+
</strong>
|
163
|
+
</Col>
|
164
|
+
<Col
|
165
|
+
bsClass="col"
|
166
|
+
componentClass="div"
|
167
|
+
md={8}
|
168
|
+
>
|
169
|
+
<Badge
|
170
|
+
bsClass="badge"
|
171
|
+
pullRight={false}
|
172
|
+
variant="pill primary"
|
173
|
+
>
|
174
|
+
python
|
175
|
+
</Badge>
|
176
|
+
</Col>
|
177
|
+
</Row>
|
178
|
+
`;
|
179
|
+
|
180
|
+
exports[`PreupgradeReportList/helpers should return title 1`] = `
|
181
|
+
<Row
|
182
|
+
bsClass="row"
|
183
|
+
componentClass="div"
|
184
|
+
>
|
185
|
+
<Col
|
186
|
+
bsClass="col"
|
187
|
+
componentClass="div"
|
188
|
+
md={1}
|
189
|
+
>
|
190
|
+
<strong>
|
191
|
+
Title
|
192
|
+
</strong>
|
193
|
+
</Col>
|
194
|
+
<Col
|
195
|
+
bsClass="col"
|
196
|
+
componentClass="div"
|
197
|
+
md={8}
|
198
|
+
>
|
199
|
+
Difference in Python versions and support in RHEL 8
|
200
|
+
</Col>
|
201
|
+
</Row>
|
202
|
+
`;
|
@@ -1,16 +1,29 @@
|
|
1
1
|
import { testSelectorsSnapshotWithFixtures } from '@theforeman/test';
|
2
2
|
|
3
|
-
import {
|
3
|
+
import {
|
4
|
+
presentSeverity,
|
5
|
+
tagInfo,
|
6
|
+
hasRemediations,
|
7
|
+
getTitle,
|
8
|
+
getSeverity,
|
9
|
+
getSummary,
|
10
|
+
getTags,
|
11
|
+
getExternals,
|
12
|
+
getRemediations,
|
13
|
+
} from '../helpers';
|
4
14
|
|
5
|
-
|
6
|
-
title: 'This is title',
|
7
|
-
severity: 'low',
|
8
|
-
id: 5,
|
9
|
-
preupgradeReportId: 6,
|
10
|
-
};
|
15
|
+
import { reportEntry } from './PreupgradeReportEntry.fixtures';
|
11
16
|
|
12
17
|
const fixtures = {
|
13
|
-
'should return
|
18
|
+
'should return hex for severity': () => presentSeverity('low'),
|
19
|
+
'should return tag info': () => tagInfo(reportEntry.tags),
|
20
|
+
'should detect if has remediations': () => hasRemediations(reportEntry),
|
21
|
+
'should return title': () => getTitle(reportEntry),
|
22
|
+
'should return severity': () => getSeverity(reportEntry),
|
23
|
+
'should return summary': () => getSummary(reportEntry),
|
24
|
+
'should return tags': () => getTags(reportEntry),
|
25
|
+
'should return externals': () => getExternals(reportEntry),
|
26
|
+
'should return remediations': () => getRemediations(reportEntry),
|
14
27
|
};
|
15
28
|
|
16
29
|
describe('PreupgradeReportList/helpers', () =>
|