foreman_puppet 3.0.7 → 4.0.0

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 (58) hide show
  1. checksums.yaml +4 -4
  2. data/lib/foreman_puppet/register.rb +3 -4
  3. data/lib/foreman_puppet/version.rb +1 -1
  4. data/locale/en/foreman_puppet.edit.po +0 -998
  5. data/package.json +7 -7
  6. data/test/controllers/foreman_puppet/api/v2/override_values_controller_test.rb +6 -2
  7. data/test/models/foreman_puppet/host_test.rb +6 -0
  8. data/webpack/global_index.js +11 -0
  9. data/webpack/index.js +0 -7
  10. data/webpack/legacy.js +31 -0
  11. data/webpack/src/Extends/Fills/index.js +26 -0
  12. data/webpack/src/Extends/Host/PuppetTab/Routes.js +42 -0
  13. data/webpack/src/Extends/Host/PuppetTab/SubTabs/EmptyPage.js +19 -0
  14. data/webpack/src/Extends/Host/PuppetTab/SubTabs/Reports/components/DescriptionCard.js +71 -0
  15. data/webpack/src/Extends/Host/PuppetTab/SubTabs/Reports/index.js +45 -0
  16. data/webpack/src/Extends/Host/PuppetTab/SubTabs/Reports/styles.scss +7 -0
  17. data/webpack/src/Extends/Host/PuppetTab/constants.js +8 -0
  18. data/webpack/src/Extends/Host/PuppetTab/helpers.js +3 -0
  19. data/webpack/src/Extends/Host/PuppetTab/index.js +51 -0
  20. metadata +13 -40
  21. data/locale/ca/foreman_puppet.edit.po +0 -1221
  22. data/locale/ca/foreman_puppet.po.time_stamp +0 -0
  23. data/locale/cs_CZ/foreman_puppet.edit.po +0 -1208
  24. data/locale/cs_CZ/foreman_puppet.po.time_stamp +0 -0
  25. data/locale/de/foreman_puppet.edit.po +0 -1300
  26. data/locale/de/foreman_puppet.po.time_stamp +0 -0
  27. data/locale/en/foreman_puppet.po.time_stamp +0 -0
  28. data/locale/en/foreman_puppet.pox +0 -0
  29. data/locale/en_GB/foreman_puppet.edit.po +0 -1197
  30. data/locale/en_GB/foreman_puppet.po.time_stamp +0 -0
  31. data/locale/es/foreman_puppet.edit.po +0 -1275
  32. data/locale/es/foreman_puppet.po.time_stamp +0 -0
  33. data/locale/fr/foreman_puppet.edit.po +0 -1290
  34. data/locale/fr/foreman_puppet.po.time_stamp +0 -0
  35. data/locale/gl/foreman_puppet.edit.po +0 -1203
  36. data/locale/gl/foreman_puppet.po.time_stamp +0 -0
  37. data/locale/it/foreman_puppet.edit.po +0 -1233
  38. data/locale/it/foreman_puppet.po.time_stamp +0 -0
  39. data/locale/ja/foreman_puppet.edit.po +0 -1223
  40. data/locale/ja/foreman_puppet.po.time_stamp +0 -0
  41. data/locale/ko/foreman_puppet.edit.po +0 -1197
  42. data/locale/ko/foreman_puppet.po.time_stamp +0 -0
  43. data/locale/messages.mo +0 -0
  44. data/locale/nl_NL/foreman_puppet.edit.po +0 -1228
  45. data/locale/nl_NL/foreman_puppet.po.time_stamp +0 -0
  46. data/locale/pl/foreman_puppet.edit.po +0 -1238
  47. data/locale/pl/foreman_puppet.po.time_stamp +0 -0
  48. data/locale/pt_BR/foreman_puppet.edit.po +0 -1281
  49. data/locale/pt_BR/foreman_puppet.po.time_stamp +0 -0
  50. data/locale/ru/foreman_puppet.edit.po +0 -1240
  51. data/locale/ru/foreman_puppet.po.time_stamp +0 -0
  52. data/locale/sv_SE/foreman_puppet.edit.po +0 -1205
  53. data/locale/sv_SE/foreman_puppet.po.time_stamp +0 -0
  54. data/locale/zh_CN/foreman_puppet.edit.po +0 -1212
  55. data/locale/zh_CN/foreman_puppet.po.time_stamp +0 -0
  56. data/locale/zh_TW/foreman_puppet.edit.po +0 -1197
  57. data/locale/zh_TW/foreman_puppet.po.time_stamp +0 -0
  58. data/webpack/fills_index.js +0 -30
data/package.json CHANGED
@@ -21,17 +21,17 @@
21
21
  "url": "http://projects.theforeman.org/projects/foreman_puppet/issues"
22
22
  },
23
23
  "peerDependencies": {
24
- "@theforeman/vendor": "^8.15.0"
24
+ "@theforeman/vendor": "^10.1.0"
25
25
  },
26
26
  "devDependencies": {
27
27
  "@babel/core": "^7.7.0",
28
28
  "@sheerun/mutationobserver-shim": "^0.3.3",
29
- "@theforeman/builder": "^8.15.0",
30
- "@theforeman/eslint-plugin-foreman": "^8.15.0",
31
- "@theforeman/find-foreman": "^8.15.0",
32
- "@theforeman/stories": "^8.15.0",
33
- "@theforeman/test": "^8.15.0",
34
- "@theforeman/vendor-dev": "^8.15.0",
29
+ "@theforeman/builder": "^10.1.0",
30
+ "@theforeman/eslint-plugin-foreman": "^10.1.0",
31
+ "@theforeman/find-foreman": "^10.1.0",
32
+ "@theforeman/stories": "^10.1.0",
33
+ "@theforeman/test": "^10.1.0",
34
+ "@theforeman/vendor-dev": "^10.1.0",
35
35
  "babel-eslint": "^10.0.3",
36
36
  "eslint": "^6.7.2",
37
37
  "jed": "^1.1.1",
@@ -75,8 +75,12 @@ module ForemanPuppet
75
75
  post :create, params: { smart_class_parameter_id: lookup_key.id, override_value: override_value }
76
76
  end
77
77
  response = ActiveSupport::JSON.decode(@response.body)
78
- param_not_posted = (override_value.keys.first.to_s == 'match') ? 'Value' : 'Match' # The opposite of override_value is missing
79
- assert_match(/Validation failed: #{param_not_posted} can't be blank/, response['error']['message'])
78
+ if override_value.keys.first.to_s == 'match'
79
+ # The opposite of override_value is missing and should fail
80
+ assert_match(/Validation failed: Value can't be blank/, response['error']['message'])
81
+ else # match is missing
82
+ assert_match(/Failed to save the record/, response['error']['message'])
83
+ end
80
84
  assert_response :error
81
85
  end
82
86
  end
@@ -110,6 +110,12 @@ module ForemanPuppet
110
110
  end
111
111
 
112
112
  describe '#info puppet bits' do
113
+ test 'ENC YAML omits environment if no puppet facet' do
114
+ host = FactoryBot.build_stubbed(:host)
115
+ enc = host.info
116
+ assert_not_includes enc.keys, 'environment'
117
+ end
118
+
113
119
  test 'ENC YAML uses Classification::ClassParam for parameterized output' do
114
120
  skip 'No idea whats wrong here'
115
121
  host = FactoryBot.build_stubbed(:host, :with_environment)
@@ -0,0 +1,11 @@
1
+ import { registerReducer } from 'foremanReact/common/MountingService';
2
+ import reducers from './src/reducers';
3
+ import { registerFills } from './src/Extends/Fills';
4
+ import { registerLegacy } from './legacy';
5
+
6
+ // register reducers
7
+ registerReducer('puppet', reducers);
8
+ // add fills
9
+ registerFills();
10
+ // TODO: the checkForUnavailablePuppetclasses is very nasty
11
+ registerLegacy();
data/webpack/index.js CHANGED
@@ -2,16 +2,9 @@
2
2
  /* eslint-disable import/no-extraneous-dependencies */
3
3
  /* eslint-disable import/extensions */
4
4
  import componentRegistry from 'foremanReact/components/componentRegistry';
5
- import { registerReducer } from 'foremanReact/common/MountingService';
6
- import reducers from './src/reducers';
7
5
  import ForemanPuppet from './src/ForemanPuppet';
8
6
  import { WelcomeEnv } from './src/Components/Environments/Welcome';
9
7
 
10
- // register reducers
11
- Object.entries(reducers).forEach(([key, reducer]) =>
12
- registerReducer(key, reducer)
13
- );
14
-
15
8
  // register components for erb mounting
16
9
  componentRegistry.register({ name: 'WelcomeEnv', type: WelcomeEnv });
17
10
  componentRegistry.register({ name: 'ForemanPuppet', type: ForemanPuppet });
data/webpack/legacy.js ADDED
@@ -0,0 +1,31 @@
1
+ import $ from 'jquery';
2
+ import * as classEditor from './src/foreman_class_edit';
3
+ import * as hostForm from './src/foreman_puppet_host_form';
4
+
5
+ export const registerLegacy = () => {
6
+ window.tfm = Object.assign(window.tfm || {}, {
7
+ classEditor,
8
+ puppetEnc: {
9
+ hostForm,
10
+ },
11
+ });
12
+
13
+ // TODO: the checkForUnavailablePuppetclasses is very nasty
14
+ $(document)
15
+ .on('change', '.hostgroup-select', evt => {
16
+ const form = $('form.host-form')[0];
17
+ if (form && form.dataset.id) hostForm.updatePuppetclasses(evt.target);
18
+ })
19
+ .on('change', '.interface_domain', evt => {
20
+ hostForm.reloadPuppetclassParams();
21
+ })
22
+ .on('change', '.host-architecture-os-select', evt => {
23
+ hostForm.reloadPuppetclassParams();
24
+ })
25
+ .on('ContentLoad', evt => {
26
+ hostForm.checkForUnavailablePuppetclasses();
27
+ });
28
+ $(window).on('load', evt => {
29
+ hostForm.checkForUnavailablePuppetclasses();
30
+ });
31
+ };
@@ -0,0 +1,26 @@
1
+ import React from 'react';
2
+ import { translate as __ } from 'foremanReact/common/I18n';
3
+ import { addGlobalFill } from 'foremanReact/components/common/Fill/GlobalFill';
4
+ import PuppetTab from '../Host/PuppetTab';
5
+
6
+ const fills = [
7
+ {
8
+ slot: 'host-details-page-tabs',
9
+ name: 'Puppet',
10
+ component: props => <PuppetTab {...props} />,
11
+ weight: 500,
12
+ metadata: { title: __('Puppet') },
13
+ },
14
+ ];
15
+
16
+ export const registerFills = () => {
17
+ fills.forEach(({ slot, name, component: Component, weight, metadata }) =>
18
+ addGlobalFill(
19
+ slot,
20
+ name,
21
+ <Component key={`puppet-fill-${name}`} />,
22
+ weight,
23
+ metadata
24
+ )
25
+ );
26
+ };
@@ -0,0 +1,42 @@
1
+ import PropTypes from 'prop-types';
2
+ import React from 'react';
3
+ import { Route, Switch, Redirect } from 'react-router-dom';
4
+ import { route } from './helpers';
5
+ import EmptyPage from './SubTabs/EmptyPage';
6
+ import Reports from './SubTabs/Reports';
7
+
8
+ const SecondaryTabRoutes = ({ hostName, hostInfo, status }) => (
9
+ <Switch>
10
+ <Route path={route('reports')}>
11
+ {hostName ? (
12
+ <Reports hostName={hostName} hostInfo={hostInfo} status={status} />
13
+ ) : (
14
+ <EmptyPage header="Reports" />
15
+ )}
16
+ </Route>
17
+ <Route path={route('assigned')}>
18
+ <EmptyPage header="Assigned classes" />
19
+ </Route>
20
+ <Route path={route('smart-classes')}>
21
+ <EmptyPage header="Smart class parameters" />
22
+ </Route>
23
+ <Route path={route('yaml')}>
24
+ <EmptyPage header="YAML" />
25
+ </Route>
26
+ <Redirect to={route('reports')} />
27
+ </Switch>
28
+ );
29
+
30
+ SecondaryTabRoutes.propTypes = {
31
+ hostName: PropTypes.string,
32
+ hostInfo: PropTypes.object,
33
+ status: PropTypes.string,
34
+ };
35
+
36
+ SecondaryTabRoutes.defaultProps = {
37
+ hostName: '',
38
+ hostInfo: {},
39
+ status: undefined,
40
+ };
41
+
42
+ export default SecondaryTabRoutes;
@@ -0,0 +1,19 @@
1
+ import React from 'react';
2
+ import PropTypes from 'prop-types';
3
+ import PFEmptyPage from 'foremanReact/components/common/EmptyState/EmptyStatePattern';
4
+
5
+ const EmptyPage = ({ header }) => (
6
+ <div className="host-details-tab-item">
7
+ <PFEmptyPage
8
+ icon="enterprise"
9
+ header={header}
10
+ description="This is a demo for adding content to the new host page"
11
+ />
12
+ </div>
13
+ );
14
+
15
+ EmptyPage.propTypes = {
16
+ header: PropTypes.string.isRequired,
17
+ };
18
+
19
+ export default EmptyPage;
@@ -0,0 +1,71 @@
1
+ import PropTypes from 'prop-types';
2
+ import React from 'react';
3
+ import CardTemplate from 'foremanReact/components/HostDetails/Templates/CardItem/CardTemplate';
4
+ import {
5
+ DescriptionList,
6
+ DescriptionListTerm,
7
+ DescriptionListGroup,
8
+ DescriptionListDescription,
9
+ } from '@patternfly/react-core';
10
+ import SkeletonLoader from 'foremanReact/components/common/SkeletonLoader';
11
+ import DefaultLoaderEmptyState from 'foremanReact/components/HostDetails/DetailsCard/DefaultLoaderEmptyState';
12
+ import { STATUS } from 'foremanReact/constants';
13
+ import { translate as __ } from 'foremanReact/common/I18n';
14
+
15
+ const DescriptionCard = ({ proxyName, caProxy, env, status }) => (
16
+ <CardTemplate header={__('Puppet details')} expandable>
17
+ <DescriptionList isCompact>
18
+ <DescriptionListGroup>
19
+ <DescriptionListTerm>{__('Puppet environment')}</DescriptionListTerm>
20
+ <DescriptionListDescription>
21
+ <SkeletonLoader
22
+ emptyState={<DefaultLoaderEmptyState />}
23
+ status={status}
24
+ >
25
+ {env && (
26
+ <a href={`/foreman_puppet/environments/${env}/edit`}>{env}</a>
27
+ )}
28
+ </SkeletonLoader>
29
+ </DescriptionListDescription>
30
+ </DescriptionListGroup>
31
+ <DescriptionListGroup>
32
+ <DescriptionListTerm>{__('Puppet smart proxy')}</DescriptionListTerm>
33
+ <DescriptionListDescription>
34
+ <SkeletonLoader
35
+ emptyState={<DefaultLoaderEmptyState />}
36
+ status={status}
37
+ >
38
+ {proxyName}
39
+ </SkeletonLoader>
40
+ </DescriptionListDescription>
41
+ </DescriptionListGroup>
42
+ <DescriptionListGroup>
43
+ <DescriptionListTerm>{__('Puppet server CA')}</DescriptionListTerm>
44
+ <DescriptionListDescription>
45
+ <SkeletonLoader
46
+ emptyState={<DefaultLoaderEmptyState />}
47
+ status={status}
48
+ >
49
+ {caProxy}
50
+ </SkeletonLoader>
51
+ </DescriptionListDescription>
52
+ </DescriptionListGroup>
53
+ </DescriptionList>
54
+ </CardTemplate>
55
+ );
56
+
57
+ DescriptionCard.propTypes = {
58
+ caProxy: PropTypes.string,
59
+ env: PropTypes.string,
60
+ proxyName: PropTypes.string,
61
+ status: PropTypes.string,
62
+ };
63
+
64
+ DescriptionCard.defaultProps = {
65
+ caProxy: undefined,
66
+ env: undefined,
67
+ proxyName: undefined,
68
+ status: STATUS.PENDING,
69
+ };
70
+
71
+ export default DescriptionCard;
@@ -0,0 +1,45 @@
1
+ import PropTypes from 'prop-types';
2
+ import React from 'react';
3
+ import { Grid, GridItem } from '@patternfly/react-core';
4
+ import ReportsTab from 'foremanReact/components/HostDetails/Tabs/ReportsTab';
5
+ import DescriptionCard from './components/DescriptionCard';
6
+ import './styles.scss';
7
+
8
+ const Reports = ({
9
+ hostName,
10
+ status,
11
+ hostInfo: {
12
+ puppet_proxy_name: proxyName,
13
+ puppet_ca_proxy_name: caProxy,
14
+ environment_name: env,
15
+ },
16
+ }) => (
17
+ <div className="report-tab">
18
+ <Grid hasGutter>
19
+ <GridItem span={4}>
20
+ <DescriptionCard
21
+ proxyName={proxyName}
22
+ caProxy={caProxy}
23
+ env={env}
24
+ status={status}
25
+ />
26
+ </GridItem>
27
+ <GridItem span={12}>
28
+ <ReportsTab hostName={hostName} origin="Puppet" />
29
+ </GridItem>
30
+ </Grid>
31
+ </div>
32
+ );
33
+
34
+ Reports.propTypes = {
35
+ hostName: PropTypes.string.isRequired,
36
+ hostInfo: PropTypes.object,
37
+ status: PropTypes.string,
38
+ };
39
+
40
+ Reports.defaultProps = {
41
+ hostInfo: {},
42
+ status: undefined,
43
+ };
44
+
45
+ export default Reports;
@@ -0,0 +1,7 @@
1
+ .report-tab {
2
+ padding: 16px 24px;
3
+
4
+ .pf-c-card {
5
+ height: 100%;
6
+ }
7
+ }
@@ -0,0 +1,8 @@
1
+ import { translate as __ } from 'foremanReact/common/I18n';
2
+
3
+ export const SECONDARY_TABS = [
4
+ { key: 'reports', title: __('Reports') },
5
+ { key: 'assigned', title: __('Assigned classes') },
6
+ { key: 'smart-classes', title: __('Smart class parameters') },
7
+ { key: 'yaml', title: __('YAML') },
8
+ ];
@@ -0,0 +1,3 @@
1
+ export const hashRoute = subpath => `#/Puppet/${subpath}`;
2
+ export const route = subpath => hashRoute(subpath).substring(1);
3
+ export const activeTab = path => path.split('/')[2];
@@ -0,0 +1,51 @@
1
+ import React from 'react';
2
+ import PropTypes from 'prop-types';
3
+ import { useHistory } from 'react-router-dom';
4
+ import { Tabs, Tab, TabTitleText } from '@patternfly/react-core';
5
+ import { STATUS } from 'foremanReact/constants';
6
+
7
+ import SecondaryTabRoutes from './Routes';
8
+ import { activeTab } from './helpers';
9
+ import { SECONDARY_TABS } from './constants';
10
+
11
+ const PuppetTab = ({ response, status, location: { pathname } }) => {
12
+ const hashHistory = useHistory();
13
+ return (
14
+ <>
15
+ <Tabs
16
+ className="margin-0-24"
17
+ onSelect={(evt, subTab) => hashHistory.push(subTab)}
18
+ isSecondary
19
+ activeKey={activeTab(pathname)}
20
+ >
21
+ {SECONDARY_TABS.map(({ key, title }) => (
22
+ <Tab
23
+ key={key}
24
+ eventKey={key}
25
+ title={<TabTitleText>{title}</TabTitleText>}
26
+ />
27
+ ))}
28
+ </Tabs>
29
+ <SecondaryTabRoutes
30
+ hostName={response.name}
31
+ hostInfo={response}
32
+ status={status}
33
+ />
34
+ </>
35
+ );
36
+ };
37
+
38
+ PuppetTab.propTypes = {
39
+ response: PropTypes.object,
40
+ status: PropTypes.string,
41
+ location: PropTypes.shape({
42
+ pathname: PropTypes.string,
43
+ }),
44
+ };
45
+ PuppetTab.defaultProps = {
46
+ location: { pathname: '' },
47
+ response: { name: '' },
48
+ status: STATUS.PENDING,
49
+ };
50
+
51
+ export default PuppetTab;
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: foreman_puppet
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.0.7
4
+ version: 4.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ondřej Ezr
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2022-06-03 00:00:00.000000000 Z
12
+ date: 2022-05-25 00:00:00.000000000 Z
13
13
  dependencies: []
14
14
  description: Allow assigning Puppet environments and classes to the Foreman Hosts.
15
15
  email:
@@ -218,81 +218,44 @@ files:
218
218
  - locale/Makefile
219
219
  - locale/action_names.rb
220
220
  - locale/ca/LC_MESSAGES/foreman_puppet.mo
221
- - locale/ca/foreman_puppet.edit.po
222
221
  - locale/ca/foreman_puppet.po
223
- - locale/ca/foreman_puppet.po.time_stamp
224
222
  - locale/cs_CZ/LC_MESSAGES/foreman_puppet.mo
225
- - locale/cs_CZ/foreman_puppet.edit.po
226
223
  - locale/cs_CZ/foreman_puppet.po
227
- - locale/cs_CZ/foreman_puppet.po.time_stamp
228
224
  - locale/de/LC_MESSAGES/foreman_puppet.mo
229
- - locale/de/foreman_puppet.edit.po
230
225
  - locale/de/foreman_puppet.po
231
- - locale/de/foreman_puppet.po.time_stamp
232
226
  - locale/en/LC_MESSAGES/foreman_puppet.mo
233
227
  - locale/en/foreman_puppet.edit.po
234
228
  - locale/en/foreman_puppet.po
235
- - locale/en/foreman_puppet.po.time_stamp
236
- - locale/en/foreman_puppet.pox
237
229
  - locale/en_GB/LC_MESSAGES/foreman_puppet.mo
238
- - locale/en_GB/foreman_puppet.edit.po
239
230
  - locale/en_GB/foreman_puppet.po
240
- - locale/en_GB/foreman_puppet.po.time_stamp
241
231
  - locale/es/LC_MESSAGES/foreman_puppet.mo
242
- - locale/es/foreman_puppet.edit.po
243
232
  - locale/es/foreman_puppet.po
244
- - locale/es/foreman_puppet.po.time_stamp
245
233
  - locale/foreman_puppet.pot
246
234
  - locale/fr/LC_MESSAGES/foreman_puppet.mo
247
- - locale/fr/foreman_puppet.edit.po
248
235
  - locale/fr/foreman_puppet.po
249
- - locale/fr/foreman_puppet.po.time_stamp
250
236
  - locale/gemspec.rb
251
237
  - locale/gl/LC_MESSAGES/foreman_puppet.mo
252
- - locale/gl/foreman_puppet.edit.po
253
238
  - locale/gl/foreman_puppet.po
254
- - locale/gl/foreman_puppet.po.time_stamp
255
239
  - locale/it/LC_MESSAGES/foreman_puppet.mo
256
- - locale/it/foreman_puppet.edit.po
257
240
  - locale/it/foreman_puppet.po
258
- - locale/it/foreman_puppet.po.time_stamp
259
241
  - locale/ja/LC_MESSAGES/foreman_puppet.mo
260
- - locale/ja/foreman_puppet.edit.po
261
242
  - locale/ja/foreman_puppet.po
262
- - locale/ja/foreman_puppet.po.time_stamp
263
243
  - locale/ko/LC_MESSAGES/foreman_puppet.mo
264
- - locale/ko/foreman_puppet.edit.po
265
244
  - locale/ko/foreman_puppet.po
266
- - locale/ko/foreman_puppet.po.time_stamp
267
- - locale/messages.mo
268
245
  - locale/nl_NL/LC_MESSAGES/foreman_puppet.mo
269
- - locale/nl_NL/foreman_puppet.edit.po
270
246
  - locale/nl_NL/foreman_puppet.po
271
- - locale/nl_NL/foreman_puppet.po.time_stamp
272
247
  - locale/pl/LC_MESSAGES/foreman_puppet.mo
273
- - locale/pl/foreman_puppet.edit.po
274
248
  - locale/pl/foreman_puppet.po
275
- - locale/pl/foreman_puppet.po.time_stamp
276
249
  - locale/pt_BR/LC_MESSAGES/foreman_puppet.mo
277
- - locale/pt_BR/foreman_puppet.edit.po
278
250
  - locale/pt_BR/foreman_puppet.po
279
- - locale/pt_BR/foreman_puppet.po.time_stamp
280
251
  - locale/ru/LC_MESSAGES/foreman_puppet.mo
281
- - locale/ru/foreman_puppet.edit.po
282
252
  - locale/ru/foreman_puppet.po
283
- - locale/ru/foreman_puppet.po.time_stamp
284
253
  - locale/sv_SE/LC_MESSAGES/foreman_puppet.mo
285
- - locale/sv_SE/foreman_puppet.edit.po
286
254
  - locale/sv_SE/foreman_puppet.po
287
- - locale/sv_SE/foreman_puppet.po.time_stamp
288
255
  - locale/zh_CN/LC_MESSAGES/foreman_puppet.mo
289
- - locale/zh_CN/foreman_puppet.edit.po
290
256
  - locale/zh_CN/foreman_puppet.po
291
- - locale/zh_CN/foreman_puppet.po.time_stamp
292
257
  - locale/zh_TW/LC_MESSAGES/foreman_puppet.mo
293
- - locale/zh_TW/foreman_puppet.edit.po
294
258
  - locale/zh_TW/foreman_puppet.po
295
- - locale/zh_TW/foreman_puppet.po.time_stamp
296
259
  - package.json
297
260
  - test/controllers/foreman_puppet/api/v2/config_groups_controller_test.rb
298
261
  - test/controllers/foreman_puppet/api/v2/environments_controller_test.rb
@@ -369,9 +332,19 @@ files:
369
332
  - webpack/__mocks__/foremanReact/redux/actions/toasts.js
370
333
  - webpack/__mocks__/foremanReact/redux/index.js
371
334
  - webpack/__mocks__/foremanReact/redux/middlewares/IntervalMiddleware.js
372
- - webpack/fills_index.js
335
+ - webpack/global_index.js
373
336
  - webpack/index.js
337
+ - webpack/legacy.js
374
338
  - webpack/src/Components/Environments/Welcome.js
339
+ - webpack/src/Extends/Fills/index.js
340
+ - webpack/src/Extends/Host/PuppetTab/Routes.js
341
+ - webpack/src/Extends/Host/PuppetTab/SubTabs/EmptyPage.js
342
+ - webpack/src/Extends/Host/PuppetTab/SubTabs/Reports/components/DescriptionCard.js
343
+ - webpack/src/Extends/Host/PuppetTab/SubTabs/Reports/index.js
344
+ - webpack/src/Extends/Host/PuppetTab/SubTabs/Reports/styles.scss
345
+ - webpack/src/Extends/Host/PuppetTab/constants.js
346
+ - webpack/src/Extends/Host/PuppetTab/helpers.js
347
+ - webpack/src/Extends/Host/PuppetTab/index.js
375
348
  - webpack/src/ForemanPuppet.js
376
349
  - webpack/src/Router/__snapshots__/routes.test.js.snap
377
350
  - webpack/src/Router/index.js