foreman_puppet 4.0.0 → 4.0.3

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 7761d1dddaf8e696fe6b367953ec5618ae906d369b56fe5b75dbfacb56c46b63
4
- data.tar.gz: 0ec6e1ba0db133d84b23b64d69b776671edf68ce26fff816d1b733e8e6ca685b
3
+ metadata.gz: 796b143175fddce006bbbca2b1cc835e53ef870b5efe03ace7d4826c7cf7a1da
4
+ data.tar.gz: 69dc252763e2625dbd25f6099b5474eea4ca566fa5a1b5161b780ff9c12b3b45
5
5
  SHA512:
6
- metadata.gz: 7114fbf6e9bd9743e7a5a61ccd1e5a83461e9ccbeb69b03173197be66cbca67a7269c108939c7d6b37624bee0bff21ea68d4a7126f7c9f706cee9be59dc4fdb7
7
- data.tar.gz: 6e66ddc14019c5c92c1ec53dd9fe00565e739ed0b61bc425c589594ce1542a3ad47d41b430b37957a4de995583e1bcbdc04c5191ac54b7da5452bb63f9ddc731
6
+ metadata.gz: bd64ee2f2f476cb19ec7bff88069d74a273ff7ba4035581ae197fda484f9fd42b9361fb5e1bade978201123b43ed09336e795af17455e44d5817fcf6570eedaa
7
+ data.tar.gz: 1ea07c0fd65f7b9d5a14ef2c8b4d6bd3b7c16ea1bc48edad123ba7acd5493891b879ad80ecf7fa8b40242c4114fdf48a4b1c8c9e6091928b8e286cfd90838609
data/README.md CHANGED
@@ -37,6 +37,7 @@ You can install it on Foreman 2.5 to prepare for the Foreman update.
37
37
 
38
38
  |Foreman version|Plugin version|Notes |
39
39
  |---------------|--------------|------------------------------------------|
40
+ | >= 3.3 | ~> 4.0 | Required |
40
41
  | >= 3.2 | ~> 3.0 | Required |
41
42
  | ~> 3.1 | ~> 2.0 | Required |
42
43
  | ~> 3.0 | ~> 1.0 | Required |
@@ -78,7 +79,7 @@ Fork and send a Pull Request. Thanks!
78
79
 
79
80
  ## Copyright
80
81
 
81
- Copyright (c) *2021* *The Foreman developers*
82
+ Copyright (c) *2022* *The Foreman developers*
82
83
 
83
84
  This program is free software: you can redistribute it and/or modify
84
85
  it under the terms of the GNU General Public License as published by
@@ -7,7 +7,8 @@ class MigrateEnvironmentIgnoreType < ActiveRecord::Migration[6.0]
7
7
  new_types = tax.ignore_types.reject { |type| type == 'Environment' }
8
8
  tax.update_columns(ignore_types: new_types)
9
9
  taxable_rows = environment_ids.map do |env_id|
10
- { taxable_id: env_id, taxable_type: 'ForemanPuppet::Environment', taxonomy_id: tax.id }
10
+ data = { taxable_id: env_id, taxable_type: 'ForemanPuppet::Environment', taxonomy_id: tax.id }
11
+ TaxableTaxonomy.column_names.include?('created_at') ? data.merge({ created_at: Time.zone.now, updated_at: Time.zone.now }) : data
11
12
  end
12
13
  TaxableTaxonomy.insert_all(taxable_rows) if taxable_rows.any?
13
14
  end
@@ -58,6 +58,7 @@ module ForemanPuppet
58
58
  ::Api::V2::TemplateCombinationsController.include ForemanPuppet::Extensions::ApiTemplateCombinationsController
59
59
  ::Api::V2::HostsController.include ForemanPuppet::Extensions::ParametersHost
60
60
  ::Api::V2::HostgroupsController.include ForemanPuppet::Extensions::ParametersHostgroup
61
+ ::ComputeResourcesVmsController.helper ForemanPuppet::HostsAndHostgroupsHelper
61
62
  ::OperatingsystemsController.prepend ForemanPuppet::Extensions::OperatingsystemsController
62
63
  ::HostsController.include ForemanPuppet::Extensions::HostsControllerExtensions
63
64
  ::HostsController.include ForemanPuppet::Extensions::ParametersHost
@@ -145,7 +145,8 @@ Foreman::Plugin.register :foreman_puppet do
145
145
  'foreman_puppet/api/v2/puppetclasses' => [:destroy] },
146
146
  resource_type: 'ForemanPuppet::Puppetclass'
147
147
  permission :import_puppetclasses, { 'foreman_puppet/puppetclasses' => %i[import_environments obsolete_and_new],
148
- 'foreman_puppet/api/v2/environments' => [:import_puppetclasses] },
148
+ 'foreman_puppet/api/v2/environments' => [:import_puppetclasses],
149
+ 'api/v2/smart_proxies' => [:import_puppetclasses] },
149
150
  resource_type: 'ForemanPuppet::Puppetclass'
150
151
  permission :edit_classes, { :host_editing => [:edit_classes],
151
152
  'foreman_puppet/api/v2/host_classes' => %i[index create destroy] },
@@ -1,3 +1,3 @@
1
1
  module ForemanPuppet
2
- VERSION = '4.0.0'.freeze
2
+ VERSION = '4.0.3'.freeze
3
3
  end
@@ -1,27 +1,31 @@
1
1
  import PropTypes from 'prop-types';
2
2
  import React from 'react';
3
3
  import { Route, Switch, Redirect } from 'react-router-dom';
4
+ import { translate as __ } from 'foremanReact/common/I18n';
4
5
  import { route } from './helpers';
5
6
  import EmptyPage from './SubTabs/EmptyPage';
6
7
  import Reports from './SubTabs/Reports';
8
+ import ENCPreview from './SubTabs/ENCPreview';
7
9
 
8
10
  const SecondaryTabRoutes = ({ hostName, hostInfo, status }) => (
9
11
  <Switch>
10
12
  <Route path={route('reports')}>
11
- {hostName ? (
12
- <Reports hostName={hostName} hostInfo={hostInfo} status={status} />
13
- ) : (
14
- <EmptyPage header="Reports" />
15
- )}
13
+ <Reports hostName={hostName} hostInfo={hostInfo} status={status} />
16
14
  </Route>
17
15
  <Route path={route('assigned')}>
18
- <EmptyPage header="Assigned classes" />
16
+ <EmptyPage
17
+ header={__('Assigned classes')}
18
+ description={__('This tab is still a work in progress')}
19
+ />
19
20
  </Route>
20
21
  <Route path={route('smart-classes')}>
21
- <EmptyPage header="Smart class parameters" />
22
+ <EmptyPage
23
+ header={__('Smart class parameters')}
24
+ description={__('This tab is still a work in progress')}
25
+ />
22
26
  </Route>
23
27
  <Route path={route('yaml')}>
24
- <EmptyPage header="YAML" />
28
+ <ENCPreview hostName={hostName} />
25
29
  </Route>
26
30
  <Redirect to={route('reports')} />
27
31
  </Switch>
@@ -0,0 +1,61 @@
1
+ import React from 'react';
2
+ import PropTypes from 'prop-types';
3
+ import {
4
+ CodeBlock,
5
+ CodeBlockAction,
6
+ CodeBlockCode,
7
+ ClipboardCopyButton,
8
+ } from '@patternfly/react-core';
9
+
10
+ export const ENCTab = ({ encData }) => {
11
+ const [copied, setCopied] = React.useState(false);
12
+
13
+ const code = `${encData}`;
14
+
15
+ const clipboardCopyFunc = (event, text) => {
16
+ const clipboard = event.currentTarget.parentElement;
17
+ const el = document.createElement('textarea');
18
+ el.value = text.toString();
19
+ clipboard.appendChild(el);
20
+ el.select();
21
+ document.execCommand('copy');
22
+ clipboard.removeChild(el);
23
+ };
24
+
25
+ const onClick = (event, text) => {
26
+ clipboardCopyFunc(event, text);
27
+ setCopied(true);
28
+ };
29
+
30
+ const actions = (
31
+ <CodeBlockAction>
32
+ <ClipboardCopyButton
33
+ id="copy-button"
34
+ textId="code-content"
35
+ aria-label="Copy to clipboard"
36
+ onClick={e => onClick(e, code)}
37
+ exitDelay={600}
38
+ maxWidth="110px"
39
+ variant="plain"
40
+ >
41
+ {copied ? 'Successfully copied to clipboard!' : 'Copy to clipboard'}
42
+ </ClipboardCopyButton>
43
+ </CodeBlockAction>
44
+ );
45
+
46
+ return (
47
+ <CodeBlock actions={actions}>
48
+ <CodeBlockCode id="code-content">{code}</CodeBlockCode>
49
+ </CodeBlock>
50
+ );
51
+ };
52
+
53
+ ENCTab.propTypes = {
54
+ encData: PropTypes.oneOfType([PropTypes.string, PropTypes.object]),
55
+ };
56
+
57
+ ENCTab.defaultProps = {
58
+ encData: undefined,
59
+ };
60
+
61
+ export default ENCTab;
@@ -0,0 +1,56 @@
1
+ import React from 'react';
2
+ import { useAPI } from 'foremanReact/common/hooks/API/APIHooks';
3
+ import PropTypes from 'prop-types';
4
+
5
+ import Skeleton from 'react-loading-skeleton';
6
+ import EmptyState from 'foremanReact/components/common/EmptyState/EmptyStatePattern';
7
+ import { STATUS } from 'foremanReact/constants';
8
+ import { EmptyStateIcon } from '@patternfly/react-core';
9
+ import { ExclamationCircleIcon } from '@patternfly/react-icons';
10
+ import { global_danger_color_200 as dangerColor } from '@patternfly/react-tokens';
11
+ import { translate as __ } from 'foremanReact/common/I18n';
12
+ import { ENCTab } from './ENCTab';
13
+
14
+ const ENCPreview = ({ hostName }) => {
15
+ const options = {
16
+ params: { name: hostName, format: 'yml' },
17
+ key: 'PUPPET_ENC_PREVIEW',
18
+ };
19
+ const url = `${window.location.origin.toString()}/foreman_puppet/hosts/${hostName}/externalNodes`;
20
+ const { response, status } = useAPI('get', url, options);
21
+
22
+ if (status === STATUS.PENDING) {
23
+ return <Skeleton count={5} />;
24
+ }
25
+
26
+ if (status === STATUS.ERROR || !hostName) {
27
+ const description = !hostName
28
+ ? __("Couldn't find any ENC data for this host")
29
+ : response?.response?.data?.message;
30
+ const icon = (
31
+ <EmptyStateIcon icon={ExclamationCircleIcon} color={dangerColor.value} />
32
+ );
33
+ return (
34
+ <EmptyState header={__('Error!')} icon={icon} description={description} />
35
+ );
36
+ }
37
+ if (response !== '' || response !== undefined) {
38
+ return (
39
+ <div className="enc-preview-tab" padding="16px 24px">
40
+ <ENCTab encData={response} />
41
+ </div>
42
+ );
43
+ }
44
+
45
+ return null;
46
+ };
47
+
48
+ ENCPreview.propTypes = {
49
+ hostName: PropTypes.string,
50
+ };
51
+
52
+ ENCPreview.defaultProps = {
53
+ hostName: undefined,
54
+ };
55
+
56
+ export default ENCPreview;
@@ -2,18 +2,19 @@ import React from 'react';
2
2
  import PropTypes from 'prop-types';
3
3
  import PFEmptyPage from 'foremanReact/components/common/EmptyState/EmptyStatePattern';
4
4
 
5
- const EmptyPage = ({ header }) => (
5
+ const EmptyPage = ({ header, description }) => (
6
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
- />
7
+ <PFEmptyPage icon="enterprise" header={header} description={description} />
12
8
  </div>
13
9
  );
14
10
 
15
11
  EmptyPage.propTypes = {
16
12
  header: PropTypes.string.isRequired,
13
+ description: PropTypes.string,
14
+ };
15
+
16
+ EmptyPage.defaultProps = {
17
+ description: null,
17
18
  };
18
19
 
19
20
  export default EmptyPage;
@@ -12,7 +12,14 @@ import DefaultLoaderEmptyState from 'foremanReact/components/HostDetails/Details
12
12
  import { STATUS } from 'foremanReact/constants';
13
13
  import { translate as __ } from 'foremanReact/common/I18n';
14
14
 
15
- const DescriptionCard = ({ proxyName, caProxy, env, status }) => (
15
+ const DescriptionCard = ({
16
+ proxyName,
17
+ caProxy,
18
+ proxyId,
19
+ caProxyId,
20
+ env,
21
+ status,
22
+ }) => (
16
23
  <CardTemplate header={__('Puppet details')} expandable>
17
24
  <DescriptionList isCompact>
18
25
  <DescriptionListGroup>
@@ -23,30 +30,36 @@ const DescriptionCard = ({ proxyName, caProxy, env, status }) => (
23
30
  status={status}
24
31
  >
25
32
  {env && (
26
- <a href={`/foreman_puppet/environments/${env}/edit`}>{env}</a>
33
+ <a href={`/foreman_puppet/environments/?search=name+%3D+${env}`}>
34
+ {env}
35
+ </a>
27
36
  )}
28
37
  </SkeletonLoader>
29
38
  </DescriptionListDescription>
30
39
  </DescriptionListGroup>
31
40
  <DescriptionListGroup>
32
- <DescriptionListTerm>{__('Puppet smart proxy')}</DescriptionListTerm>
41
+ <DescriptionListTerm>{__('Puppet Smart Proxy')}</DescriptionListTerm>
33
42
  <DescriptionListDescription>
34
43
  <SkeletonLoader
35
44
  emptyState={<DefaultLoaderEmptyState />}
36
45
  status={status}
37
46
  >
38
- {proxyName}
47
+ {proxyName && (
48
+ <a href={`/smart_proxies/${proxyId}#puppet`}>{proxyName}</a>
49
+ )}
39
50
  </SkeletonLoader>
40
51
  </DescriptionListDescription>
41
52
  </DescriptionListGroup>
42
53
  <DescriptionListGroup>
43
- <DescriptionListTerm>{__('Puppet server CA')}</DescriptionListTerm>
54
+ <DescriptionListTerm>{__('Puppet CA Smart Proxy')}</DescriptionListTerm>
44
55
  <DescriptionListDescription>
45
56
  <SkeletonLoader
46
57
  emptyState={<DefaultLoaderEmptyState />}
47
58
  status={status}
48
59
  >
49
- {caProxy}
60
+ {caProxy && (
61
+ <a href={`/smart_proxies/${caProxyId}#puppet-ca`}>{caProxy}</a>
62
+ )}
50
63
  </SkeletonLoader>
51
64
  </DescriptionListDescription>
52
65
  </DescriptionListGroup>
@@ -56,14 +69,18 @@ const DescriptionCard = ({ proxyName, caProxy, env, status }) => (
56
69
 
57
70
  DescriptionCard.propTypes = {
58
71
  caProxy: PropTypes.string,
72
+ caProxyId: PropTypes.number,
59
73
  env: PropTypes.string,
74
+ proxyId: PropTypes.number,
60
75
  proxyName: PropTypes.string,
61
76
  status: PropTypes.string,
62
77
  };
63
78
 
64
79
  DescriptionCard.defaultProps = {
65
80
  caProxy: undefined,
81
+ caProxyId: undefined,
66
82
  env: undefined,
83
+ proxyId: undefined,
67
84
  proxyName: undefined,
68
85
  status: STATUS.PENDING,
69
86
  };
@@ -12,6 +12,8 @@ const Reports = ({
12
12
  puppet_proxy_name: proxyName,
13
13
  puppet_ca_proxy_name: caProxy,
14
14
  environment_name: env,
15
+ puppet_proxy_id: proxyId,
16
+ puppet_ca_proxy_id: caProxyId,
15
17
  },
16
18
  }) => (
17
19
  <div className="report-tab">
@@ -20,6 +22,8 @@ const Reports = ({
20
22
  <DescriptionCard
21
23
  proxyName={proxyName}
22
24
  caProxy={caProxy}
25
+ proxyId={proxyId}
26
+ caProxyId={caProxyId}
23
27
  env={env}
24
28
  status={status}
25
29
  />
@@ -32,12 +36,13 @@ const Reports = ({
32
36
  );
33
37
 
34
38
  Reports.propTypes = {
35
- hostName: PropTypes.string.isRequired,
39
+ hostName: PropTypes.string,
36
40
  hostInfo: PropTypes.object,
37
41
  status: PropTypes.string,
38
42
  };
39
43
 
40
44
  Reports.defaultProps = {
45
+ hostName: undefined,
41
46
  hostInfo: {},
42
47
  status: undefined,
43
48
  };
@@ -4,5 +4,5 @@ export const SECONDARY_TABS = [
4
4
  { key: 'reports', title: __('Reports') },
5
5
  { key: 'assigned', title: __('Assigned classes') },
6
6
  { key: 'smart-classes', title: __('Smart class parameters') },
7
- { key: 'yaml', title: __('YAML') },
7
+ { key: 'yaml', title: __('ENC Preview') },
8
8
  ];
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: 4.0.0
4
+ version: 4.0.3
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-05-25 00:00:00.000000000 Z
12
+ date: 2022-08-31 00:00:00.000000000 Z
13
13
  dependencies: []
14
14
  description: Allow assigning Puppet environments and classes to the Foreman Hosts.
15
15
  email:
@@ -224,7 +224,6 @@ files:
224
224
  - locale/de/LC_MESSAGES/foreman_puppet.mo
225
225
  - locale/de/foreman_puppet.po
226
226
  - locale/en/LC_MESSAGES/foreman_puppet.mo
227
- - locale/en/foreman_puppet.edit.po
228
227
  - locale/en/foreman_puppet.po
229
228
  - locale/en_GB/LC_MESSAGES/foreman_puppet.mo
230
229
  - locale/en_GB/foreman_puppet.po
@@ -338,6 +337,8 @@ files:
338
337
  - webpack/src/Components/Environments/Welcome.js
339
338
  - webpack/src/Extends/Fills/index.js
340
339
  - webpack/src/Extends/Host/PuppetTab/Routes.js
340
+ - webpack/src/Extends/Host/PuppetTab/SubTabs/ENCPreview/ENCTab.js
341
+ - webpack/src/Extends/Host/PuppetTab/SubTabs/ENCPreview/index.js
341
342
  - webpack/src/Extends/Host/PuppetTab/SubTabs/EmptyPage.js
342
343
  - webpack/src/Extends/Host/PuppetTab/SubTabs/Reports/components/DescriptionCard.js
343
344
  - webpack/src/Extends/Host/PuppetTab/SubTabs/Reports/index.js
@@ -379,70 +380,70 @@ signing_key:
379
380
  specification_version: 4
380
381
  summary: Add Puppet features to Foreman
381
382
  test_files:
382
- - test/unit/foreman_puppet_test.rb
383
- - test/unit/foreman_puppet/puppet_class_importer_test.rb
384
- - test/unit/foreman_puppet/template_rendering_test.rb
385
- - test/unit/foreman_puppet/access_permissions_test.rb
386
- - test/helpers/foreman_puppet/puppetclass_lookup_keys_helper_test.rb
387
- - test/helpers/foreman_puppet/hosts_and_hostgroups_helper_test.rb
388
- - test/helpers/foreman_puppet/puppetclasses_helper_test.rb
389
- - test/integration/foreman_puppet/dashboard_js_test.rb
390
- - test/integration/foreman_puppet/host_js_test.rb
391
- - test/integration/foreman_puppet/hostgroup_js_test.rb
392
- - test/integration/foreman_puppet/smartclass_parameter_js_test.rb
393
- - test/integration/foreman_puppet/puppetclass_js_test.rb
394
- - test/integration/foreman_puppet/environment_js_test.rb
395
- - test/factories/foreman_puppet_factories.rb
396
- - test/factories/host_puppet_enhancements.rb
397
- - test/factories/proxy_puppet_enhancements.rb
398
- - test/integration_puppet_helper.rb
399
- - test/models/foreman_puppet/config_group_test.rb
383
+ - test/test_puppet_helper.rb
400
384
  - test/models/foreman_puppet/report_test.rb
401
- - test/models/foreman_puppet/host_puppet_facet_test.rb
402
385
  - test/models/foreman_puppet/host_test.rb
386
+ - test/models/foreman_puppet/smart_proxy_test.rb
403
387
  - test/models/foreman_puppet/user_test.rb
404
- - test/models/foreman_puppet/provisioning_template_test.rb
388
+ - test/models/foreman_puppet/config_group_class_test.rb
389
+ - test/models/foreman_puppet/config_group_test.rb
390
+ - test/models/foreman_puppet/host_puppet_facet_test.rb
405
391
  - test/models/foreman_puppet/host_config_group_test.rb
392
+ - test/models/foreman_puppet/puppetclass_test.rb
393
+ - test/models/foreman_puppet/provisioning_template_test.rb
406
394
  - test/models/foreman_puppet/lookup_value_test.rb
407
- - test/models/foreman_puppet/hostgroup_test.rb
408
- - test/models/foreman_puppet/hostgroup_puppet_facet_test.rb
409
395
  - test/models/foreman_puppet/puppetclass_lookup_key_test.rb
396
+ - test/models/foreman_puppet/hostgroup_puppet_facet_test.rb
410
397
  - test/models/foreman_puppet/environment_test.rb
411
- - test/models/foreman_puppet/puppetclass_test.rb
412
- - test/models/foreman_puppet/config_group_class_test.rb
413
- - test/models/foreman_puppet/smart_proxy_test.rb
414
- - test/graphql/queries/hostgroup_puppet_query_test.rb
415
- - test/graphql/queries/puppetclass_query_test.rb
398
+ - test/models/foreman_puppet/hostgroup_test.rb
399
+ - test/services/foreman_puppet/host_counter_test.rb
400
+ - test/services/foreman_puppet/host_info_providers/config_groups_info_test.rb
401
+ - test/services/foreman_puppet/host_info_providers/puppet_info_test.rb
402
+ - test/services/foreman_puppet/input_type/puppet_parameter_input_test.rb
403
+ - test/factories/foreman_puppet_factories.rb
404
+ - test/factories/host_puppet_enhancements.rb
405
+ - test/factories/proxy_puppet_enhancements.rb
406
+ - test/unit/foreman_puppet/access_permissions_test.rb
407
+ - test/unit/foreman_puppet/template_rendering_test.rb
408
+ - test/unit/foreman_puppet/puppet_class_importer_test.rb
409
+ - test/unit/foreman_puppet_test.rb
410
+ - test/graphql/mutations/hosts/create_mutation_test.rb
411
+ - test/graphql/queries/environments_query_test.rb
416
412
  - test/graphql/queries/location_query_test.rb
413
+ - test/graphql/queries/puppetclass_query_test.rb
417
414
  - test/graphql/queries/organization_query_test.rb
418
- - test/graphql/queries/puppetclasses_query_test.rb
419
- - test/graphql/queries/environment_query_test.rb
420
- - test/graphql/queries/environments_query_test.rb
421
415
  - test/graphql/queries/host_puppet_query_test.rb
422
- - test/graphql/mutations/hosts/create_mutation_test.rb
423
- - test/test_puppet_helper.rb
424
- - test/controllers/provisioning_templates_controller_test.rb
416
+ - test/graphql/queries/environment_query_test.rb
417
+ - test/graphql/queries/puppetclasses_query_test.rb
418
+ - test/graphql/queries/hostgroup_puppet_query_test.rb
425
419
  - test/controllers/foreman_puppet/hostgroups_controller_test.rb
420
+ - test/controllers/foreman_puppet/config_groups_controller_test.rb
426
421
  - test/controllers/foreman_puppet/puppetclass_lookup_keys_controller_test.rb
427
422
  - test/controllers/foreman_puppet/environments_controller_test.rb
428
423
  - test/controllers/foreman_puppet/puppet_smart_proxies_controller_test.rb
429
424
  - test/controllers/foreman_puppet/hosts_controller_test.rb
430
- - test/controllers/foreman_puppet/api/v2/template_combinations_controller_test.rb
431
- - test/controllers/foreman_puppet/api/v2/smart_class_parameters_controller_test.rb
432
- - test/controllers/foreman_puppet/api/v2/host_classes_controller_test.rb
433
425
  - test/controllers/foreman_puppet/api/v2/hostgroups_controller_test.rb
434
- - test/controllers/foreman_puppet/api/v2/lookups_common_controller_test.rb
435
- - test/controllers/foreman_puppet/api/v2/environments_controller_test.rb
436
- - test/controllers/foreman_puppet/api/v2/hosts_controller_test.rb
437
- - test/controllers/foreman_puppet/api/v2/hostgroup_classes_controller_test.rb
438
- - test/controllers/foreman_puppet/api/v2/puppetclasses_controller_test.rb
439
- - test/controllers/foreman_puppet/api/v2/smart_proxies_controller_test.rb
440
426
  - test/controllers/foreman_puppet/api/v2/override_values_controller_test.rb
441
427
  - test/controllers/foreman_puppet/api/v2/config_groups_controller_test.rb
428
+ - test/controllers/foreman_puppet/api/v2/smart_proxies_controller_test.rb
429
+ - test/controllers/foreman_puppet/api/v2/environments_controller_test.rb
430
+ - test/controllers/foreman_puppet/api/v2/hosts_controller_test.rb
431
+ - test/controllers/foreman_puppet/api/v2/lookups_common_controller_test.rb
432
+ - test/controllers/foreman_puppet/api/v2/smart_class_parameters_controller_test.rb
442
433
  - test/controllers/foreman_puppet/api/v2/provisioning_templates_controller_test.rb
434
+ - test/controllers/foreman_puppet/api/v2/template_combinations_controller_test.rb
435
+ - test/controllers/foreman_puppet/api/v2/host_classes_controller_test.rb
436
+ - test/controllers/foreman_puppet/api/v2/puppetclasses_controller_test.rb
437
+ - test/controllers/foreman_puppet/api/v2/hostgroup_classes_controller_test.rb
443
438
  - test/controllers/foreman_puppet/puppetclasses_controller_test.rb
444
- - test/controllers/foreman_puppet/config_groups_controller_test.rb
445
- - test/services/foreman_puppet/input_type/puppet_parameter_input_test.rb
446
- - test/services/foreman_puppet/host_counter_test.rb
447
- - test/services/foreman_puppet/host_info_providers/config_groups_info_test.rb
448
- - test/services/foreman_puppet/host_info_providers/puppet_info_test.rb
439
+ - test/controllers/provisioning_templates_controller_test.rb
440
+ - test/integration/foreman_puppet/puppetclass_js_test.rb
441
+ - test/integration/foreman_puppet/host_js_test.rb
442
+ - test/integration/foreman_puppet/environment_js_test.rb
443
+ - test/integration/foreman_puppet/dashboard_js_test.rb
444
+ - test/integration/foreman_puppet/smartclass_parameter_js_test.rb
445
+ - test/integration/foreman_puppet/hostgroup_js_test.rb
446
+ - test/helpers/foreman_puppet/puppetclass_lookup_keys_helper_test.rb
447
+ - test/helpers/foreman_puppet/puppetclasses_helper_test.rb
448
+ - test/helpers/foreman_puppet/hosts_and_hostgroups_helper_test.rb
449
+ - test/integration_puppet_helper.rb
File without changes