foreman_bootdisk 17.1.0 → 19.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (109) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +2 -3
  3. data/app/controllers/foreman_bootdisk/api/v2/disks_controller.rb +7 -2
  4. data/app/controllers/foreman_bootdisk/disks_controller.rb +70 -21
  5. data/app/controllers/foreman_bootdisk/subnet_disks_controller.rb +41 -0
  6. data/app/helpers/bootdisk_links_helper.rb +46 -0
  7. data/app/helpers/concerns/foreman_bootdisk/hosts_helper_ext.rb +30 -42
  8. data/app/helpers/concerns/foreman_bootdisk/pretty_error.rb +13 -0
  9. data/app/helpers/concerns/foreman_bootdisk/subnets_helper_ext.rb +45 -0
  10. data/app/helpers/disk_helper.rb +8 -0
  11. data/app/views/foreman_bootdisk/disks/help.html.erb +16 -4
  12. data/app/views/subnets/_bootdisk_action_buttons.erb +1 -0
  13. data/app/views/subnets/_bootdisk_title_buttons.erb +1 -0
  14. data/config/routes.rb +2 -1
  15. data/db/migrate/20140522185700_change_templatekind_to_bootdisk.rb +3 -3
  16. data/lib/foreman_bootdisk/engine.rb +11 -2
  17. data/lib/foreman_bootdisk/version.rb +1 -1
  18. data/locale/action_names.rb +2 -4
  19. data/locale/ca/LC_MESSAGES/foreman_bootdisk.mo +0 -0
  20. data/locale/ca/foreman_bootdisk.edit.po +393 -0
  21. data/locale/ca/foreman_bootdisk.po +47 -11
  22. data/locale/ca/foreman_bootdisk.po.time_stamp +0 -0
  23. data/locale/de/LC_MESSAGES/foreman_bootdisk.mo +0 -0
  24. data/locale/de/foreman_bootdisk.edit.po +398 -0
  25. data/locale/de/foreman_bootdisk.po +63 -26
  26. data/locale/de/foreman_bootdisk.po.time_stamp +0 -0
  27. data/locale/en/LC_MESSAGES/foreman_bootdisk.mo +0 -0
  28. data/locale/en/foreman_bootdisk.edit.po +388 -0
  29. data/locale/en/foreman_bootdisk.po +45 -9
  30. data/locale/en/foreman_bootdisk.po.time_stamp +0 -0
  31. data/locale/en_GB/LC_MESSAGES/foreman_bootdisk.mo +0 -0
  32. data/locale/en_GB/foreman_bootdisk.edit.po +394 -0
  33. data/locale/en_GB/foreman_bootdisk.po +47 -11
  34. data/locale/en_GB/foreman_bootdisk.po.time_stamp +0 -0
  35. data/locale/es/LC_MESSAGES/foreman_bootdisk.mo +0 -0
  36. data/locale/es/foreman_bootdisk.edit.po +394 -0
  37. data/locale/es/foreman_bootdisk.po +69 -32
  38. data/locale/es/foreman_bootdisk.po.time_stamp +0 -0
  39. data/locale/foreman_bootdisk.pot +121 -63
  40. data/locale/fr/LC_MESSAGES/foreman_bootdisk.mo +0 -0
  41. data/locale/fr/foreman_bootdisk.edit.po +394 -0
  42. data/locale/fr/foreman_bootdisk.po +80 -43
  43. data/locale/fr/foreman_bootdisk.po.time_stamp +0 -0
  44. data/locale/it/LC_MESSAGES/foreman_bootdisk.mo +0 -0
  45. data/locale/it/foreman_bootdisk.edit.po +391 -0
  46. data/locale/it/foreman_bootdisk.po +47 -11
  47. data/locale/it/foreman_bootdisk.po.time_stamp +0 -0
  48. data/locale/ja/LC_MESSAGES/foreman_bootdisk.mo +0 -0
  49. data/locale/ja/foreman_bootdisk.edit.po +393 -0
  50. data/locale/ja/foreman_bootdisk.po +70 -33
  51. data/locale/ja/foreman_bootdisk.po.time_stamp +0 -0
  52. data/locale/ko/LC_MESSAGES/foreman_bootdisk.mo +0 -0
  53. data/locale/ko/foreman_bootdisk.edit.po +390 -0
  54. data/locale/ko/foreman_bootdisk.po +47 -11
  55. data/locale/ko/foreman_bootdisk.po.time_stamp +0 -0
  56. data/locale/pt_BR/LC_MESSAGES/foreman_bootdisk.mo +0 -0
  57. data/locale/pt_BR/foreman_bootdisk.edit.po +394 -0
  58. data/locale/pt_BR/foreman_bootdisk.po +79 -43
  59. data/locale/pt_BR/foreman_bootdisk.po.time_stamp +0 -0
  60. data/locale/ru/LC_MESSAGES/foreman_bootdisk.mo +0 -0
  61. data/locale/ru/foreman_bootdisk.edit.po +395 -0
  62. data/locale/ru/foreman_bootdisk.po +47 -11
  63. data/locale/ru/foreman_bootdisk.po.time_stamp +0 -0
  64. data/locale/sv_SE/LC_MESSAGES/foreman_bootdisk.mo +0 -0
  65. data/locale/sv_SE/foreman_bootdisk.edit.po +392 -0
  66. data/locale/sv_SE/foreman_bootdisk.po +47 -11
  67. data/locale/sv_SE/foreman_bootdisk.po.time_stamp +0 -0
  68. data/locale/zh_CN/LC_MESSAGES/foreman_bootdisk.mo +0 -0
  69. data/locale/zh_CN/foreman_bootdisk.edit.po +391 -0
  70. data/locale/zh_CN/foreman_bootdisk.po +113 -77
  71. data/locale/zh_CN/foreman_bootdisk.po.time_stamp +0 -0
  72. data/locale/zh_TW/LC_MESSAGES/foreman_bootdisk.mo +0 -0
  73. data/locale/zh_TW/foreman_bootdisk.edit.po +391 -0
  74. data/locale/zh_TW/foreman_bootdisk.po +47 -11
  75. data/locale/zh_TW/foreman_bootdisk.po.time_stamp +0 -0
  76. data/package.json +42 -0
  77. data/webpack/__mocks__/foremanReact/common/HOC.js +30 -0
  78. data/webpack/__mocks__/foremanReact/common/I18n.js +7 -0
  79. data/webpack/__mocks__/foremanReact/common/helpers.js +7 -0
  80. data/webpack/__mocks__/foremanReact/common/urlHelpers.js +8 -0
  81. data/webpack/__mocks__/foremanReact/constants.js +24 -0
  82. data/webpack/__mocks__/foremanReact/redux/API/APISelectors.js +6 -0
  83. data/webpack/__mocks__/foremanReact/redux/API/index.js +10 -0
  84. data/webpack/global_index.js +12 -0
  85. data/webpack/global_test_setup.js +11 -0
  86. data/webpack/index.js +0 -0
  87. data/webpack/src/extensions/constants.js +2 -0
  88. data/webpack/src/extensions/host/HostBootdiskButtons.js +71 -0
  89. data/webpack/src/extensions/host/HostBootdiskButtonsSelectors.js +27 -0
  90. data/webpack/src/extensions/host/__tests__/HostBootdiskButtonsSelectors.test.js +66 -0
  91. data/webpack/src/extensions/host/__tests__/__snapshots__/HostBootdiskButtonsSelectors.test.js.snap +30 -0
  92. metadata +54 -20
  93. data/.github/workflows/rubocop.yaml +0 -19
  94. data/.tx/config +0 -8
  95. data/AUTHORS +0 -34
  96. data/release-gem +0 -84
  97. data/test/functional/foreman_bootdisk/api/v2/disks_controller_test.rb +0 -97
  98. data/test/functional/foreman_bootdisk/api/v2/subnet_disks_controller_test.rb +0 -37
  99. data/test/functional/foreman_bootdisk/disks_controller_test.rb +0 -107
  100. data/test/models/host/managed_test.rb +0 -26
  101. data/test/test_plugin_helper.rb +0 -72
  102. data/test/unit/access_permissions_test.rb +0 -10
  103. data/test/unit/concerns/compute_resources/vmware_test.rb +0 -83
  104. data/test/unit/concerns/host_test.rb +0 -84
  105. data/test/unit/concerns/orchestration/compute_test.rb +0 -69
  106. data/test/unit/foreman_bootdisk/renderer_test.rb +0 -36
  107. data/test/unit/foreman_bootdisk/scope/bootdisk_test.rb +0 -31
  108. data/test/unit/foreman_bootdisk/scope/full_host_bootdisk_test.rb +0 -30
  109. data/test/unit/iso_generator_test.rb +0 -74
@@ -0,0 +1,6 @@
1
+ export const selectAPIResponse = (state, key) =>
2
+ selectAPIByKey(state, key).response;
3
+
4
+ export const selectAPIStatus = (state, key) => 'PENDING';
5
+ export const selectAPIByKey = (state, key) => state.API[key];
6
+ export const selectAPIError = (state, key) => ({ error: `${key} ERRROR` });
@@ -0,0 +1,10 @@
1
+ export const API = {
2
+ get: jest.fn(),
3
+ put: jest.fn(),
4
+ post: jest.fn(),
5
+ delete: jest.fn(),
6
+ patch: jest.fn(),
7
+ };
8
+
9
+ export const get = data => ({ type: 'get-some-type', ...data });
10
+ export const post = data => ({ type: 'post-some-type', ...data });
@@ -0,0 +1,12 @@
1
+ import React from 'react';
2
+
3
+ import { addGlobalFill } from 'foremanReact/components/common/Fill/GlobalFill';
4
+
5
+ import HostBootdiskButtons from './src/extensions/host/HostBootdiskButtons';
6
+
7
+ addGlobalFill(
8
+ 'host-details-kebab',
9
+ 'host-bootdisk-buttons',
10
+ <HostBootdiskButtons key="host-bootdisk-buttons" />,
11
+ 300
12
+ );
@@ -0,0 +1,11 @@
1
+ // runs before each test to make sure console.error output will
2
+ // fail a test (i.e. default PropType missing). Check the error
3
+ // output and traceback for actual error.
4
+ global.console.error = (error, stack) => {
5
+ /* eslint-disable-next-line no-console */
6
+ if (stack) console.log(stack); // Prints out original stack trace
7
+ throw new Error(error);
8
+ };
9
+
10
+ // Increase jest timeout as some tests using multiple http mocks can time out on CI systems.
11
+ jest.setTimeout(10000);
data/webpack/index.js ADDED
File without changes
@@ -0,0 +1,2 @@
1
+ export const HOST_BOOTDISK_BUTTONS_REQUEST_KEY = 'HOST_BOOTDISK_BUTTONS';
2
+ export const HOST_DETAILS_REQUEST_KEY = 'HOST_DETAILS';
@@ -0,0 +1,71 @@
1
+ import React, { useEffect } from 'react';
2
+ import { useSelector, useDispatch } from 'react-redux';
3
+
4
+ import { DropdownItem, DropdownGroup } from '@patternfly/react-core';
5
+
6
+ import { get } from 'foremanReact/redux/API';
7
+ import { foremanUrl } from 'foremanReact/common/helpers';
8
+ import { sprintf, translate as __ } from 'foremanReact/common/I18n';
9
+
10
+ import Loading from 'foremanReact/components/Loading';
11
+
12
+ import { HOST_BOOTDISK_BUTTONS_REQUEST_KEY } from '../constants';
13
+
14
+ import {
15
+ selectHostId,
16
+ selectIsLoading,
17
+ selectBootdiskOptions,
18
+ } from './HostBootdiskButtonsSelectors';
19
+
20
+ const HostBootdiskButtons = () => {
21
+ const dispatch = useDispatch();
22
+ const hostId = useSelector(selectHostId);
23
+ const isLoading = useSelector(selectIsLoading);
24
+ const options = useSelector(selectBootdiskOptions);
25
+
26
+ useEffect(() => {
27
+ dispatch(
28
+ get({
29
+ key: HOST_BOOTDISK_BUTTONS_REQUEST_KEY,
30
+ url: foremanUrl(`/bootdisk/disks/bootdisk_options/${hostId}`),
31
+ })
32
+ );
33
+ }, [dispatch, hostId]);
34
+
35
+ let content = null;
36
+ if (options.bootdiskDownloadable) {
37
+ content = options.actions.map((action, i) => (
38
+ <DropdownItem
39
+ key={`bootdisk-${i}`}
40
+ href={foremanUrl(action.link)}
41
+ isDisabled={action.disabled}
42
+ description={action.description}
43
+ >
44
+ {action.title}
45
+ </DropdownItem>
46
+ ));
47
+ } else {
48
+ content = (
49
+ <DropdownItem
50
+ key="bootdisk-unavailable"
51
+ component="button"
52
+ href="#"
53
+ tooltip={sprintf(
54
+ __('Boot disk download not available for %s architecture'),
55
+ options.architectureName
56
+ )}
57
+ tooltipProps={{ entryDelay: 0, exitDelay: 0 }}
58
+ >
59
+ {__('Not available')}
60
+ </DropdownItem>
61
+ );
62
+ }
63
+
64
+ return (
65
+ <DropdownGroup label={__('Boot disk')} key="bootdisk-group">
66
+ {isLoading ? <Loading showText={false} /> : content}
67
+ </DropdownGroup>
68
+ );
69
+ };
70
+
71
+ export default HostBootdiskButtons;
@@ -0,0 +1,27 @@
1
+ import { STATUS } from 'foremanReact/constants';
2
+ import {
3
+ selectAPIStatus,
4
+ selectAPIResponse,
5
+ } from 'foremanReact/redux/API/APISelectors';
6
+
7
+ import {
8
+ HOST_BOOTDISK_BUTTONS_REQUEST_KEY,
9
+ HOST_DETAILS_REQUEST_KEY,
10
+ } from '../constants';
11
+
12
+ const selectHostButtonsResponse = state =>
13
+ selectAPIResponse(state, HOST_BOOTDISK_BUTTONS_REQUEST_KEY) || {};
14
+
15
+ export const selectBootdiskOptions = state =>
16
+ selectHostButtonsResponse(state).bootdiskOptions || {};
17
+
18
+ const selectHostButtonsStatus = state =>
19
+ selectAPIStatus(state, HOST_BOOTDISK_BUTTONS_REQUEST_KEY);
20
+
21
+ export const selectIsLoading = state => {
22
+ const status = selectHostButtonsStatus(state);
23
+ return !status || status === STATUS.PENDING;
24
+ };
25
+
26
+ export const selectHostId = state =>
27
+ selectAPIResponse(state, HOST_DETAILS_REQUEST_KEY).id;
@@ -0,0 +1,66 @@
1
+ import { testSelectorsSnapshotWithFixtures } from '@theforeman/test';
2
+
3
+ import {
4
+ selectHostId,
5
+ selectIsLoading,
6
+ selectBootdiskOptions,
7
+ } from '../HostBootdiskButtonsSelectors';
8
+
9
+ import {
10
+ HOST_DETAILS_REQUEST_KEY,
11
+ HOST_BOOTDISK_BUTTONS_REQUEST_KEY,
12
+ } from '../../constants';
13
+
14
+ const stateFactory = (bootdiskState, hostState) => ({
15
+ API: {
16
+ [HOST_DETAILS_REQUEST_KEY]: {
17
+ response: {
18
+ ...hostState,
19
+ },
20
+ },
21
+ [HOST_BOOTDISK_BUTTONS_REQUEST_KEY]: {
22
+ response: {
23
+ ...bootdiskState,
24
+ },
25
+ },
26
+ },
27
+ });
28
+
29
+ const state = stateFactory(
30
+ {
31
+ bootdiskOptions: {
32
+ bootdiskDownloadable: true,
33
+ architectureName: 'x86_64',
34
+ actions: [
35
+ {
36
+ title: "Host 'sppup' image",
37
+ link: '/bootdisk/disks/hosts/8',
38
+ disabled: false,
39
+ description: null,
40
+ },
41
+ {
42
+ title: "Full host 'sppup' image",
43
+ link: '/bootdisk/disks/full_hosts/8',
44
+ disabled: true,
45
+ description: 'Host is not in build mode',
46
+ },
47
+ {
48
+ title: 'Boot disk help',
49
+ link: '/bootdisk/disks/help',
50
+ },
51
+ ],
52
+ },
53
+ },
54
+ {
55
+ id: 8,
56
+ }
57
+ );
58
+
59
+ const fixtures = {
60
+ 'should return options': () => selectBootdiskOptions(state),
61
+ 'should return isLoading': () => selectIsLoading(state),
62
+ 'should return hostId': () => selectHostId(state),
63
+ };
64
+
65
+ describe('HostBootdiskButtons selectors', () =>
66
+ testSelectorsSnapshotWithFixtures(fixtures));
@@ -0,0 +1,30 @@
1
+ // Jest Snapshot v1, https://goo.gl/fbAQLP
2
+
3
+ exports[`HostBootdiskButtons selectors should return hostId 1`] = `8`;
4
+
5
+ exports[`HostBootdiskButtons selectors should return isLoading 1`] = `true`;
6
+
7
+ exports[`HostBootdiskButtons selectors should return options 1`] = `
8
+ Object {
9
+ "actions": Array [
10
+ Object {
11
+ "description": null,
12
+ "disabled": false,
13
+ "link": "/bootdisk/disks/hosts/8",
14
+ "title": "Host 'sppup' image",
15
+ },
16
+ Object {
17
+ "description": "Host is not in build mode",
18
+ "disabled": true,
19
+ "link": "/bootdisk/disks/full_hosts/8",
20
+ "title": "Full host 'sppup' image",
21
+ },
22
+ Object {
23
+ "link": "/bootdisk/disks/help",
24
+ "title": "Boot disk help",
25
+ },
26
+ ],
27
+ "architectureName": "x86_64",
28
+ "bootdiskDownloadable": true,
29
+ }
30
+ `;
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: foreman_bootdisk
3
3
  version: !ruby/object:Gem::Version
4
- version: 17.1.0
4
+ version: 19.0.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Dominic Cleal
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-04-27 00:00:00.000000000 Z
11
+ date: 2022-01-12 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: theforeman-rubocop
@@ -48,9 +48,6 @@ extra_rdoc_files:
48
48
  - LICENSE
49
49
  - README.md
50
50
  files:
51
- - ".github/workflows/rubocop.yaml"
52
- - ".tx/config"
53
- - AUTHORS
54
51
  - CHANGES.md
55
52
  - LICENSE
56
53
  - README.md
@@ -59,7 +56,12 @@ files:
59
56
  - app/controllers/foreman_bootdisk/api/v2/disks_controller.rb
60
57
  - app/controllers/foreman_bootdisk/api/v2/subnet_disks_controller.rb
61
58
  - app/controllers/foreman_bootdisk/disks_controller.rb
59
+ - app/controllers/foreman_bootdisk/subnet_disks_controller.rb
60
+ - app/helpers/bootdisk_links_helper.rb
62
61
  - app/helpers/concerns/foreman_bootdisk/hosts_helper_ext.rb
62
+ - app/helpers/concerns/foreman_bootdisk/pretty_error.rb
63
+ - app/helpers/concerns/foreman_bootdisk/subnets_helper_ext.rb
64
+ - app/helpers/disk_helper.rb
63
65
  - app/lib/foreman_bootdisk/scope/bootdisk.rb
64
66
  - app/lib/foreman_bootdisk/scope/full_host_bootdisk.rb
65
67
  - app/lib/foreman_bootdisk/scope/full_host_bootdisk_efi.rb
@@ -75,6 +77,8 @@ files:
75
77
  - app/views/foreman_bootdisk/generic_static_host.erb
76
78
  - app/views/foreman_bootdisk/host.erb
77
79
  - app/views/hosts/provision_method/bootdisk/_form.html.erb
80
+ - app/views/subnets/_bootdisk_action_buttons.erb
81
+ - app/views/subnets/_bootdisk_title_buttons.erb
78
82
  - config/routes.rb
79
83
  - config/routes/mount_engine.rb
80
84
  - db/migrate/20130914211030_create_host_bootdisk_template.rb
@@ -92,51 +96,81 @@ files:
92
96
  - locale/Makefile
93
97
  - locale/action_names.rb
94
98
  - locale/ca/LC_MESSAGES/foreman_bootdisk.mo
99
+ - locale/ca/foreman_bootdisk.edit.po
95
100
  - locale/ca/foreman_bootdisk.po
101
+ - locale/ca/foreman_bootdisk.po.time_stamp
96
102
  - locale/de/LC_MESSAGES/foreman_bootdisk.mo
103
+ - locale/de/foreman_bootdisk.edit.po
97
104
  - locale/de/foreman_bootdisk.po
105
+ - locale/de/foreman_bootdisk.po.time_stamp
98
106
  - locale/en/LC_MESSAGES/foreman_bootdisk.mo
107
+ - locale/en/foreman_bootdisk.edit.po
99
108
  - locale/en/foreman_bootdisk.po
109
+ - locale/en/foreman_bootdisk.po.time_stamp
100
110
  - locale/en_GB/LC_MESSAGES/foreman_bootdisk.mo
111
+ - locale/en_GB/foreman_bootdisk.edit.po
101
112
  - locale/en_GB/foreman_bootdisk.po
113
+ - locale/en_GB/foreman_bootdisk.po.time_stamp
102
114
  - locale/es/LC_MESSAGES/foreman_bootdisk.mo
115
+ - locale/es/foreman_bootdisk.edit.po
103
116
  - locale/es/foreman_bootdisk.po
117
+ - locale/es/foreman_bootdisk.po.time_stamp
104
118
  - locale/foreman_bootdisk.pot
105
119
  - locale/fr/LC_MESSAGES/foreman_bootdisk.mo
120
+ - locale/fr/foreman_bootdisk.edit.po
106
121
  - locale/fr/foreman_bootdisk.po
122
+ - locale/fr/foreman_bootdisk.po.time_stamp
107
123
  - locale/gemspec.rb
108
124
  - locale/it/LC_MESSAGES/foreman_bootdisk.mo
125
+ - locale/it/foreman_bootdisk.edit.po
109
126
  - locale/it/foreman_bootdisk.po
127
+ - locale/it/foreman_bootdisk.po.time_stamp
110
128
  - locale/ja/LC_MESSAGES/foreman_bootdisk.mo
129
+ - locale/ja/foreman_bootdisk.edit.po
111
130
  - locale/ja/foreman_bootdisk.po
131
+ - locale/ja/foreman_bootdisk.po.time_stamp
112
132
  - locale/ko/LC_MESSAGES/foreman_bootdisk.mo
133
+ - locale/ko/foreman_bootdisk.edit.po
113
134
  - locale/ko/foreman_bootdisk.po
135
+ - locale/ko/foreman_bootdisk.po.time_stamp
114
136
  - locale/pt_BR/LC_MESSAGES/foreman_bootdisk.mo
137
+ - locale/pt_BR/foreman_bootdisk.edit.po
115
138
  - locale/pt_BR/foreman_bootdisk.po
139
+ - locale/pt_BR/foreman_bootdisk.po.time_stamp
116
140
  - locale/ru/LC_MESSAGES/foreman_bootdisk.mo
141
+ - locale/ru/foreman_bootdisk.edit.po
117
142
  - locale/ru/foreman_bootdisk.po
143
+ - locale/ru/foreman_bootdisk.po.time_stamp
118
144
  - locale/sv_SE/LC_MESSAGES/foreman_bootdisk.mo
145
+ - locale/sv_SE/foreman_bootdisk.edit.po
119
146
  - locale/sv_SE/foreman_bootdisk.po
147
+ - locale/sv_SE/foreman_bootdisk.po.time_stamp
120
148
  - locale/zanata.xml
121
149
  - locale/zh_CN/LC_MESSAGES/foreman_bootdisk.mo
150
+ - locale/zh_CN/foreman_bootdisk.edit.po
122
151
  - locale/zh_CN/foreman_bootdisk.po
152
+ - locale/zh_CN/foreman_bootdisk.po.time_stamp
123
153
  - locale/zh_TW/LC_MESSAGES/foreman_bootdisk.mo
154
+ - locale/zh_TW/foreman_bootdisk.edit.po
124
155
  - locale/zh_TW/foreman_bootdisk.po
125
- - release-gem
126
- - test/functional/foreman_bootdisk/api/v2/disks_controller_test.rb
127
- - test/functional/foreman_bootdisk/api/v2/subnet_disks_controller_test.rb
128
- - test/functional/foreman_bootdisk/disks_controller_test.rb
129
- - test/models/host/managed_test.rb
130
- - test/test_plugin_helper.rb
131
- - test/unit/access_permissions_test.rb
132
- - test/unit/concerns/compute_resources/vmware_test.rb
133
- - test/unit/concerns/host_test.rb
134
- - test/unit/concerns/orchestration/compute_test.rb
135
- - test/unit/foreman_bootdisk/renderer_test.rb
136
- - test/unit/foreman_bootdisk/scope/bootdisk_test.rb
137
- - test/unit/foreman_bootdisk/scope/full_host_bootdisk_test.rb
138
- - test/unit/iso_generator_test.rb
139
- homepage: http://github.com/theforeman/foreman_bootdisk
156
+ - locale/zh_TW/foreman_bootdisk.po.time_stamp
157
+ - package.json
158
+ - webpack/__mocks__/foremanReact/common/HOC.js
159
+ - webpack/__mocks__/foremanReact/common/I18n.js
160
+ - webpack/__mocks__/foremanReact/common/helpers.js
161
+ - webpack/__mocks__/foremanReact/common/urlHelpers.js
162
+ - webpack/__mocks__/foremanReact/constants.js
163
+ - webpack/__mocks__/foremanReact/redux/API/APISelectors.js
164
+ - webpack/__mocks__/foremanReact/redux/API/index.js
165
+ - webpack/global_index.js
166
+ - webpack/global_test_setup.js
167
+ - webpack/index.js
168
+ - webpack/src/extensions/constants.js
169
+ - webpack/src/extensions/host/HostBootdiskButtons.js
170
+ - webpack/src/extensions/host/HostBootdiskButtonsSelectors.js
171
+ - webpack/src/extensions/host/__tests__/HostBootdiskButtonsSelectors.test.js
172
+ - webpack/src/extensions/host/__tests__/__snapshots__/HostBootdiskButtonsSelectors.test.js.snap
173
+ homepage: https://github.com/theforeman/foreman_bootdisk
140
174
  licenses:
141
175
  - GPL-3.0
142
176
  metadata: {}
@@ -1,19 +0,0 @@
1
- name: Rubocop
2
-
3
- on: [pull_request]
4
-
5
- jobs:
6
- rubocop:
7
- runs-on: ubuntu-latest
8
- env:
9
- BUNDLE_FOREMAN: '0'
10
- BUNDLE_WITHOUT: development:test
11
- steps:
12
- - uses: actions/checkout@v2
13
- - name: Setup Ruby
14
- uses: ruby/setup-ruby@v1
15
- with:
16
- ruby-version: 2.5
17
- bundler-cache: true
18
- - name: Run rubocop
19
- run: bundle exec rubocop -P --format github
data/.tx/config DELETED
@@ -1,8 +0,0 @@
1
- [main]
2
- host = https://www.transifex.com
3
-
4
- [foreman.foreman_bootdisk]
5
- file_filter = locale/<lang>/foreman_bootdisk.edit.po
6
- source_file = locale/foreman_bootdisk.pot
7
- source_lang = en
8
- type = PO
data/AUTHORS DELETED
@@ -1,34 +0,0 @@
1
- Adam Ruzicka
2
- Bernhard Suttner
3
- Bryan Kearney
4
- crito
5
- Damon Maria
6
- Dominic Cleal
7
- Dominik Matoulek
8
- Greg Sutcliffe
9
- Ido Kanner
10
- Jon Fautley
11
- Justin Sherrill
12
- Leos Stejskal
13
- Lukas Zapletal
14
- Lukáš Zapletal
15
- Marek Hulan
16
- Marek Hulán
17
- Markus Bucher
18
- Martin Bačovský
19
- Michael Hofer
20
- Michael Moll
21
- Ohad Levy
22
- Oleh Fedorenko
23
- Ondrej Prazak
24
- Ondřej Ezr
25
- Ondřej Pražák
26
- Pat Riehecky
27
- Robert Antoni Buj Gelonch
28
- Rohan21Lobo
29
- Ronald van Zantvoort
30
- Sam Kottler
31
- Sean O'Keeffe
32
- Stephen Benjamin
33
- Swapnil Abnave
34
- Timo Goebel
data/release-gem DELETED
@@ -1,84 +0,0 @@
1
- #!/bin/env ruby
2
- # frozen_string_literal: true
3
- # rubocop:disable all
4
-
5
- $plugin_name = "foreman_bootdisk"
6
- RUBY_VERSION_FILE = "lib/#{$plugin_name}/version.rb"
7
-
8
- def die(msg)
9
- STDERR.puts msg; exit 1
10
- end
11
-
12
- def run(cmd)
13
- puts `#{cmd}`
14
- die("Command #{cmd} failed with #{$?}!") if $?.to_i != 0
15
- true
16
- end
17
-
18
- def action(question)
19
- puts "#{question} ? [Y/n]"
20
- die("Aborted.") if STDIN.gets.chomp.match(/^(n|no|nope)$/i)
21
- die("Check failed, exiting.") if block_given? && ! yield
22
- end
23
-
24
- action "Extracted strings with: rake plugin:gettext[#{$plugin_name}] (Foreman dir)"
25
-
26
- action "Pulled updates with: make -C locale tx-update"
27
-
28
- action "Merged the updates with: rake plugin:gettext[#{$plugin_name}] (Foreman dir)"
29
-
30
- action "Rebuilt the MO files with: make -C locale mo-files" do
31
- Dir["locale/**/*.po"].each do |po|
32
- mo = po.sub(/#{$plugin_name}\.po$/, "LC_MESSAGES/#{$plugin_name}.mo")
33
- puts("Warning, file #{mo} does not exist!") unless File.exist?(mo)
34
- puts("Warning, file #{mo} outdated!") if File.mtime(po) > File.mtime(mo)
35
- end
36
- end
37
-
38
- action "Want me to update AUTHORS file" do
39
- run "git log --pretty=format:'%an' | sort -u > AUTHORS"
40
- end
41
-
42
- action "Modified lib/#{$plugin_name}/engine.rb to match minimum Foreman core version"
43
-
44
- action "Modified #{RUBY_VERSION_FILE} to match desired version"
45
-
46
- action "Created 'Version X.Y' commit with engine.rb/version.rb change"
47
-
48
- action "Created git tag" do
49
- $git_version = `git describe --abbrev=0 --tags`.chomp.sub("v", "")
50
- $git_version == File.read(RUBY_VERSION_FILE).match(/VERSION\s*=\s'([0-9\.]+)'/)[1]
51
- end
52
-
53
- action "Is version #{$git_version} the one to be released"
54
-
55
- $gem_filename = "#{$plugin_name}-#{$git_version}.gem"
56
- action "Shall I build the #{$gem_filename} now" do
57
- run "gem build #{$plugin_name}.gemspec"
58
- end
59
-
60
- action "Investigated the #{$gem_filename} via gem compare -k -b #{$plugin_name} OLD #{$git_version} -k" do
61
- run "tar -xOf #{$gem_filename} data.tar.gz | tar -z -list | sort"
62
- end
63
-
64
- action "Created and built OS distribution packages"
65
-
66
- action "Updated dependencies in both RPM and DEB spec files"
67
-
68
- action "All commits and *tags* pushed to origin"
69
-
70
- action "Shell I push the #{$gem_filename} to rubygems.org now" do
71
- run "gem push #{$gem_filename}"
72
- end
73
-
74
- action "Is https://rubygems.org/gems/#{$plugin_name} looking good"
75
-
76
- action "Created new stable branch and pushed to origin"
77
-
78
- action "Updated documentation at www.theforeman.org?"
79
-
80
- action "Updated jenkins_job_builder http://bit.ly/2iZKR3B branch"
81
-
82
- puts "Well done! Go ahead and create documentation and changelog:"
83
- puts " git log --pretty=format:'%s' develop...X.Y.Z"
84
- puts " git log --pretty=format:'%an' develop...X.Y.Z | sort -u"
@@ -1,97 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'test_plugin_helper'
4
-
5
- class ForemanBootdisk::Api::V2::DisksControllerTest < ActionController::TestCase
6
- include ForemanBootdiskTestHelper
7
- setup :setup_bootdisk
8
- setup :setup_referer
9
- setup :setup_org_loc
10
-
11
- def perform_generic_generate
12
- tmp = create_tempfile
13
- ForemanBootdisk::ISOGenerator.expects(:generate).yields(create_tempfile.path)
14
- get :generic
15
- assert_response :success
16
- ensure
17
- tmp.unlink
18
- end
19
-
20
- def perform_host_generate
21
- tmp = create_tempfile
22
- ForemanBootdisk::ISOGenerator.expects(:generate).yields(create_tempfile.path)
23
- get :host, params: { id: @host.name }
24
- assert_response :success
25
- ensure
26
- tmp.unlink
27
- end
28
-
29
- def perform_full_host_generate
30
- tmp = create_tempfile
31
- ForemanBootdisk::ISOGenerator.expects(:generate_full_host).yields(create_tempfile.path)
32
- get :host, params: { id: @host.name, full: true }
33
- assert_response :success
34
- ensure
35
- tmp.unlink
36
- end
37
-
38
- describe '#generic with TFTP' do
39
- setup :setup_subnet_with_tftp
40
- setup :setup_host
41
-
42
- test 'should generate generic image' do
43
- perform_generic_generate
44
- end
45
-
46
- test 'should generate host image' do
47
- perform_host_generate
48
- end
49
-
50
- test 'should generate full host image' do
51
- perform_full_host_generate
52
- end
53
- end
54
-
55
- describe '#subnet_host with TFTP and HTTPBOOT' do
56
- setup :setup_subnet_with_tftp_httpboot_template
57
- setup :setup_host
58
-
59
- test 'should generate generic image' do
60
- perform_generic_generate
61
- end
62
-
63
- test 'should generate host image' do
64
- perform_host_generate
65
- end
66
-
67
- test 'should generate full host image' do
68
- perform_full_host_generate
69
- end
70
- end
71
-
72
- describe 'default API version 2' do
73
- setup :setup_host_env
74
-
75
- test 'path - /api/hosts/:host_id routes to #host' do
76
- expected_path = if Rails::VERSION::MAJOR >= 5
77
- "/api/v2/hosts/#{@host.id}"
78
- else
79
- "/api/hosts/#{@host.id}"
80
- end
81
- assert_routing expected_path,
82
- format: 'json',
83
- apiv: 'v2',
84
- controller: 'foreman_bootdisk/api/v2/disks',
85
- action: 'host',
86
- id: @host.id.to_s
87
- end
88
-
89
- test 'path - /api/generic routes to #generic' do
90
- assert_routing '/api/generic',
91
- format: 'json',
92
- apiv: 'v2',
93
- controller: 'foreman_bootdisk/api/v2/disks',
94
- action: 'generic'
95
- end
96
- end
97
- end
@@ -1,37 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'test_plugin_helper'
4
-
5
- class ForemanBootdisk::Api::V2::SubnetDisksControllerTest < ActionController::TestCase
6
- include ForemanBootdiskTestHelper
7
- setup :setup_bootdisk
8
- setup :setup_referer
9
- setup :setup_org_loc
10
-
11
- def perform_subnet_generate
12
- tmp = create_tempfile
13
- ForemanBootdisk::ISOGenerator.expects(:generate).yields(create_tempfile.path)
14
- get :subnet, params: { id: @host.subnet.id }
15
- assert_response :success
16
- ensure
17
- tmp.unlink
18
- end
19
-
20
- describe '#subnet_host with TFTP' do
21
- setup :setup_subnet_with_tftp
22
- setup :setup_host
23
-
24
- test 'should generate subnet generic host image' do
25
- perform_subnet_generate
26
- end
27
- end
28
-
29
- describe '#subnet_host with TFTP and HTTPBOOT' do
30
- setup :setup_subnet_with_tftp_httpboot_template
31
- setup :setup_host
32
-
33
- test 'should generate subnet generic host image' do
34
- perform_subnet_generate
35
- end
36
- end
37
- end