katello 3.15.0.rc1.1 → 3.15.0.rc1.2
Sign up to get free protection for your applications and to get access to all the features.
Potentially problematic release.
This version of katello might be problematic. Click here for more details.
- checksums.yaml +4 -4
- data/app/assets/javascripts/katello/hosts/activation_key_edit.js +32 -54
- data/app/controllers/katello/api/rhsm/candlepin_proxies_controller.rb +1 -1
- data/app/controllers/katello/api/v2/hosts_bulk_actions_controller.rb +11 -4
- data/app/controllers/katello/api/v2/repositories_controller.rb +7 -3
- data/app/controllers/katello/api/v2/subscriptions_controller.rb +2 -3
- data/app/lib/actions/katello/content_view/incremental_updates.rb +1 -1
- data/app/lib/actions/katello/host/erratum/applicable_errata_install.rb +6 -2
- data/app/lib/actions/pulp3/content_migration.rb +5 -5
- data/app/lib/actions/pulp3/import_migration.rb +3 -3
- data/app/lib/actions/pulp3/orchestration/repository/import_upload.rb +1 -1
- data/app/lib/katello/concerns/base_template_scope_extensions.rb +1 -1
- data/app/models/katello/authorization/pool.rb +5 -1
- data/app/models/katello/authorization/subscription.rb +3 -1
- data/app/models/katello/candlepin/repository_mapper.rb +5 -1
- data/app/models/katello/concerns/host_managed_extensions.rb +17 -8
- data/app/models/katello/concerns/pulp_database_unit.rb +1 -1
- data/app/models/katello/content_view.rb +4 -0
- data/app/models/katello/glue/candlepin/candlepin_object.rb +0 -6
- data/app/models/katello/glue/candlepin/owner.rb +1 -1
- data/app/models/katello/glue/candlepin/repository.rb +0 -8
- data/app/models/katello/glue/pulp/repos.rb +41 -1
- data/app/models/katello/installed_package.rb +5 -4
- data/app/models/katello/pool.rb +1 -1
- data/app/services/katello/pulp/repository/docker.rb +12 -2
- data/app/services/katello/pulp/simple_package.rb +6 -2
- data/app/services/katello/pulp3/erratum.rb +4 -0
- data/app/services/katello/pulp3/migration.rb +61 -8
- data/app/services/katello/pulp3/migration_plan.rb +79 -5
- data/app/views/dashboard/_subscription_widget.html.erb +1 -1
- data/app/views/katello/api/v2/organizations/show.json.rabl +3 -0
- data/app/views/katello/api/v2/packages/backend.json.rabl +4 -0
- data/app/views/katello/api/v2/products/show.json.rabl +2 -0
- data/app/views/overrides/activation_keys/_host_tab_pane.html.erb +10 -2
- data/app/views/smart_proxies/plugins/{_pulp3.html.erb → _pulpcore.html.erb} +0 -0
- data/config/katello.yaml.example +0 -6
- data/db/migrate/20200121213430_katello_repository_rpms_id_big_int.rb +5 -0
- data/db/migrate/20200129172534_add_epoch_version_release_arch_to_katello_installed_packages.rb +40 -0
- data/engines/bastion/app/views/bastion/layouts/assets.html.erb +1 -1
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/bulk/content-hosts-bulk-errata-modal.controller.js +9 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/bulk/content-hosts-bulk-subscriptions-modal.controller.js +4 -4
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/bulk/views/content-hosts-bulk-errata-modal.html +2 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/bulk/views/content-hosts-bulk-subscriptions-modal.html +3 -3
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/content-host-modal-helper.service.js +1 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/details/content-host-details.controller.js +4 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/details/content-host-subscriptions.controller.js +4 -2
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/details/views/content-host-info.html +2 -2
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/details/views/content-host-subscriptions.html +15 -10
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/packages/details/views/package-info.html +1 -1
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/subscriptions/content-access-mode-banner.directive.js +4 -4
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/subscriptions/views/content-access-mode-banner.html +1 -1
- data/lib/katello/tasks/pulp3_migration.rake +1 -1
- data/lib/katello/tasks/pulp3_post_migration_check.rake +32 -0
- data/lib/katello/tasks/repository.rake +10 -7
- data/lib/katello/version.rb +1 -1
- data/webpack/__mocks__/foremanReact/components/ForemanModal/ForemanModalActions.js +2 -0
- data/webpack/__mocks__/foremanReact/components/ForemanModal/ForemanModalSelectors.js +2 -0
- data/webpack/__mocks__/foremanReact/components/ForemanModal/index.js +4 -0
- data/webpack/scenes/Organizations/OrganizationSelectors.js +4 -0
- data/webpack/scenes/Subscriptions/Manifest/DeleteManifestModalText.js +14 -9
- data/webpack/scenes/Subscriptions/Manifest/ManageManifestModal.js +183 -169
- data/webpack/scenes/Subscriptions/Manifest/ManageManifestModal.scss +12 -0
- data/webpack/scenes/Subscriptions/Manifest/ManifestConstants.js +4 -0
- data/webpack/scenes/Subscriptions/Manifest/__tests__/ManageManifestModal.test.js +5 -3
- data/webpack/scenes/Subscriptions/Manifest/__tests__/__snapshots__/ManageManifestModal.test.js.snap +130 -181
- data/webpack/scenes/Subscriptions/Manifest/index.js +10 -1
- data/webpack/scenes/Subscriptions/SubscriptionActions.js +4 -9
- data/webpack/scenes/Subscriptions/SubscriptionConstants.js +0 -3
- data/webpack/scenes/Subscriptions/SubscriptionReducer.js +3 -11
- data/webpack/scenes/Subscriptions/SubscriptionsPage.js +33 -13
- data/webpack/scenes/Subscriptions/SubscriptionsSelectors.js +2 -5
- data/webpack/scenes/Subscriptions/__tests__/SubscriptionsActions.test.js +0 -7
- data/webpack/scenes/Subscriptions/__tests__/SubscriptionsPage.test.js +5 -0
- data/webpack/scenes/Subscriptions/__tests__/SubscriptionsReducer.test.js +0 -12
- data/webpack/scenes/Subscriptions/__tests__/SubscriptionsSelectors.test.js +0 -3
- data/webpack/scenes/Subscriptions/__tests__/__snapshots__/SubscriptionsActions.test.js.snap +0 -12
- data/webpack/scenes/Subscriptions/__tests__/__snapshots__/SubscriptionsPage.test.js.snap +2 -3
- data/webpack/scenes/Subscriptions/__tests__/__snapshots__/SubscriptionsReducer.test.js.snap +0 -73
- data/webpack/scenes/Subscriptions/__tests__/__snapshots__/SubscriptionsSelectors.test.js.snap +0 -3
- data/webpack/scenes/Subscriptions/__tests__/subscriptions.fixtures.js +0 -4
- data/webpack/scenes/Subscriptions/components/SubscriptionsTable/SubscriptionsTable.js +13 -22
- data/webpack/scenes/Subscriptions/components/SubscriptionsTable/__tests__/SubscriptionsTable.test.js +10 -0
- data/webpack/scenes/Subscriptions/components/SubscriptionsTable/__tests__/__snapshots__/SubscriptionsTable.test.js.snap +2 -1
- data/webpack/scenes/Subscriptions/index.js +4 -3
- data/webpack/scenes/Tasks/TaskConstants.js +1 -0
- metadata +41 -18
- data/app/assets/javascripts/katello/widgets/auto_complete.js +0 -183
- data/db/seeds.d/115-http_proxy.rb +0 -25
- data/vendor/assets/stylesheets/katello/jquery.jnotify.css +0 -98
data/webpack/scenes/Subscriptions/__tests__/__snapshots__/SubscriptionsSelectors.test.js.snap
CHANGED
@@ -4,8 +4,6 @@ exports[`Subscriptions selectors should select delete-button-disabled 1`] = `tru
|
|
4
4
|
|
5
5
|
exports[`Subscriptions selectors should select delete-modal-opened 1`] = `false`;
|
6
6
|
|
7
|
-
exports[`Subscriptions selectors should select manifest-modal-opened 1`] = `false`;
|
8
|
-
|
9
7
|
exports[`Subscriptions selectors should select search-query 1`] = `"some-query"`;
|
10
8
|
|
11
9
|
exports[`Subscriptions selectors should select subscriptions tasks 1`] = `
|
@@ -21,7 +19,6 @@ exports[`Subscriptions selectors should select the subscriptions state 1`] = `
|
|
21
19
|
Object {
|
22
20
|
"deleteButtonDisabled": true,
|
23
21
|
"deleteModalOpened": false,
|
24
|
-
"manifestModalOpened": false,
|
25
22
|
"searchQuery": "some-query",
|
26
23
|
"taskModalOpened": false,
|
27
24
|
"tasks": Array [
|
@@ -3,7 +3,6 @@ import { toastErrorAction, failureAction } from '../../../services/api/testHelpe
|
|
3
3
|
|
4
4
|
export const initialState = Immutable({
|
5
5
|
loading: true,
|
6
|
-
manifestModalOpened: false,
|
7
6
|
results: [],
|
8
7
|
pagination: {
|
9
8
|
page: 0,
|
@@ -256,7 +255,6 @@ export const groupedSubscriptions = Immutable({
|
|
256
255
|
|
257
256
|
export const successState = Immutable({
|
258
257
|
loading: false,
|
259
|
-
manifestModalOpened: false,
|
260
258
|
results: [
|
261
259
|
{
|
262
260
|
id: 3,
|
@@ -326,7 +324,6 @@ export const successState = Immutable({
|
|
326
324
|
});
|
327
325
|
export const permissionDeniedState = Immutable({
|
328
326
|
loading: false,
|
329
|
-
manifestModalOpened: false,
|
330
327
|
results: [],
|
331
328
|
searchIsActive: false,
|
332
329
|
search: undefined,
|
@@ -361,7 +358,6 @@ export const settingsSuccessState = Immutable({
|
|
361
358
|
|
362
359
|
export const errorState = Immutable({
|
363
360
|
loading: false,
|
364
|
-
manifestModalOpened: false,
|
365
361
|
pagination: {
|
366
362
|
page: 0,
|
367
363
|
perPage: 20,
|
@@ -21,7 +21,6 @@ class SubscriptionsTable extends Component {
|
|
21
21
|
showUpdateConfirmDialog: false,
|
22
22
|
showCancelConfirmDialog: false,
|
23
23
|
showErrorDialog: false,
|
24
|
-
selectedRows: [],
|
25
24
|
};
|
26
25
|
}
|
27
26
|
|
@@ -78,40 +77,30 @@ class SubscriptionsTable extends Component {
|
|
78
77
|
const allSubscriptionResults = this.props.subscriptions.results;
|
79
78
|
|
80
79
|
const checkAllRowsSelected = () =>
|
81
|
-
allSubscriptionResults.length === this.
|
80
|
+
allSubscriptionResults.length === this.props.selectedRows.length;
|
82
81
|
|
83
|
-
const updateDeleteButton = () => {
|
84
|
-
this.props.toggleDeleteButton(this.state.selectedRows.length > 0);
|
85
|
-
};
|
86
82
|
return ({
|
87
83
|
allRowsSelected: () => checkAllRowsSelected(),
|
88
84
|
selectAllRows: () => {
|
89
85
|
if (checkAllRowsSelected()) {
|
90
|
-
this.
|
91
|
-
|
92
|
-
updateDeleteButton,
|
93
|
-
);
|
86
|
+
this.props.onSelectedRowsChange([]);
|
87
|
+
this.props.toggleDeleteButton(false);
|
94
88
|
} else {
|
95
|
-
this.
|
96
|
-
|
97
|
-
updateDeleteButton,
|
98
|
-
);
|
89
|
+
this.props.onSelectedRowsChange(allSubscriptionResults.map(row => row.id));
|
90
|
+
this.props.toggleDeleteButton(true);
|
99
91
|
}
|
100
92
|
},
|
101
93
|
selectRow: ({ rowData }) => {
|
102
|
-
let { selectedRows } = this.
|
94
|
+
let { selectedRows } = this.props;
|
103
95
|
if (selectedRows.includes(rowData.id)) {
|
104
96
|
selectedRows = selectedRows.filter(e => e !== rowData.id);
|
105
97
|
} else {
|
106
|
-
selectedRows.
|
98
|
+
selectedRows = selectedRows.concat(rowData.id);
|
107
99
|
}
|
108
|
-
|
109
|
-
this.
|
110
|
-
{ selectedRows },
|
111
|
-
updateDeleteButton,
|
112
|
-
);
|
100
|
+
this.props.onSelectedRowsChange(selectedRows);
|
101
|
+
this.props.toggleDeleteButton(selectedRows.length > 0);
|
113
102
|
},
|
114
|
-
isSelected: ({ rowData }) => this.
|
103
|
+
isSelected: ({ rowData }) => this.props.selectedRows.includes(rowData.id),
|
115
104
|
});
|
116
105
|
};
|
117
106
|
|
@@ -177,7 +166,7 @@ class SubscriptionsTable extends Component {
|
|
177
166
|
onDeleteSubscriptions,
|
178
167
|
onSubscriptionDeleteModalClose,
|
179
168
|
} = this.props;
|
180
|
-
const { selectedRows } = this.
|
169
|
+
const { selectedRows } = this.props;
|
181
170
|
return {
|
182
171
|
show,
|
183
172
|
selectedRows,
|
@@ -305,6 +294,8 @@ SubscriptionsTable.propTypes = {
|
|
305
294
|
displayName: PropTypes.string,
|
306
295
|
}),
|
307
296
|
}),
|
297
|
+
selectedRows: PropTypes.instanceOf(Array).isRequired,
|
298
|
+
onSelectedRowsChange: PropTypes.func.isRequired,
|
308
299
|
};
|
309
300
|
|
310
301
|
SubscriptionsTable.defaultProps = {
|
data/webpack/scenes/Subscriptions/components/SubscriptionsTable/__tests__/SubscriptionsTable.test.js
CHANGED
@@ -33,6 +33,8 @@ describe('subscriptions table', () => {
|
|
33
33
|
onSubscriptionDeleteModalClose={() => { }}
|
34
34
|
toggleDeleteButton={() => {}}
|
35
35
|
emptyState={{}}
|
36
|
+
selectedRows={[]}
|
37
|
+
onSelectedRowsChange={() => {}}
|
36
38
|
/>
|
37
39
|
</MemoryRouter>);
|
38
40
|
expect(toJson(page)).toMatchSnapshot();
|
@@ -54,6 +56,8 @@ describe('subscriptions table', () => {
|
|
54
56
|
onDeleteSubscriptions={() => {}}
|
55
57
|
toggleDeleteButton={() => {}}
|
56
58
|
emptyState={{}}
|
59
|
+
selectedRows={[]}
|
60
|
+
onSelectedRowsChange={() => {}}
|
57
61
|
/>
|
58
62
|
</MemoryRouter>);
|
59
63
|
expect(toJson(page)).toMatchSnapshot();
|
@@ -72,6 +76,8 @@ describe('subscriptions table', () => {
|
|
72
76
|
onDeleteSubscriptions={() => {}}
|
73
77
|
toggleDeleteButton={() => {}}
|
74
78
|
emptyState={{}}
|
79
|
+
selectedRows={[]}
|
80
|
+
onSelectedRowsChange={() => {}}
|
75
81
|
/>
|
76
82
|
</MemoryRouter>);
|
77
83
|
expect(page.find('#select1').is('[disabled]')).toBe(true);
|
@@ -95,6 +101,8 @@ describe('subscriptions table', () => {
|
|
95
101
|
onDeleteSubscriptions={() => {}}
|
96
102
|
toggleDeleteButton={() => {}}
|
97
103
|
tableColumns={[]}
|
104
|
+
selectedRows={[]}
|
105
|
+
onSelectedRowsChange={() => {}}
|
98
106
|
/>
|
99
107
|
</MemoryRouter>);
|
100
108
|
expect(toJson(page)).toMatchSnapshot();
|
@@ -112,6 +120,8 @@ describe('subscriptions table', () => {
|
|
112
120
|
onDeleteSubscriptions={() => {}}
|
113
121
|
toggleDeleteButton={() => {}}
|
114
122
|
emptyState={{}}
|
123
|
+
selectedRows={[]}
|
124
|
+
onSelectedRowsChange={() => {}}
|
115
125
|
/>);
|
116
126
|
jest.runAllTimers();
|
117
127
|
page.update();
|
@@ -6,14 +6,15 @@ exports[`subscriptions table should render a loading state 1`] = `
|
|
6
6
|
emptyState={Object {}}
|
7
7
|
loadSubscriptions={[Function]}
|
8
8
|
onDeleteSubscriptions={[Function]}
|
9
|
+
onSelectedRowsChange={[Function]}
|
9
10
|
onSubscriptionDeleteModalClose={[Function]}
|
11
|
+
selectedRows={Array []}
|
10
12
|
subscriptionDeleteModalOpen={false}
|
11
13
|
subscriptions={
|
12
14
|
Object {
|
13
15
|
"availableQuantities": null,
|
14
16
|
"itemCount": 0,
|
15
17
|
"loading": true,
|
16
|
-
"manifestModalOpened": false,
|
17
18
|
"pagination": Object {
|
18
19
|
"page": 0,
|
19
20
|
"perPage": 20,
|
@@ -1,7 +1,7 @@
|
|
1
1
|
import { bindActionCreators } from 'redux';
|
2
2
|
import { connect } from 'react-redux';
|
3
3
|
import * as settingActions from 'foremanReact/components/Settings/SettingsActions';
|
4
|
-
|
4
|
+
import * as foremanModalActions from 'foremanReact/components/ForemanModal/ForemanModalActions';
|
5
5
|
import * as subscriptionActions from './SubscriptionActions';
|
6
6
|
import * as taskActions from '../Tasks/TaskActions';
|
7
7
|
import * as tableActions from '../Settings/Tables/TableActions';
|
@@ -10,7 +10,6 @@ import * as manifestActions from './Manifest/ManifestActions';
|
|
10
10
|
import {
|
11
11
|
selectSubscriptionsState,
|
12
12
|
selectSearchQuery,
|
13
|
-
selectManifestModalOpened,
|
14
13
|
selectDeleteModalOpened,
|
15
14
|
selectTaskModalOpened,
|
16
15
|
selectDeleteButtonDisabled,
|
@@ -18,6 +17,7 @@ import {
|
|
18
17
|
selectActivePermissions,
|
19
18
|
selectTableSettings,
|
20
19
|
} from './SubscriptionsSelectors';
|
20
|
+
import { selectSimpleContentAccessEnabled } from '../Organizations/OrganizationSelectors';
|
21
21
|
|
22
22
|
import reducer from './SubscriptionReducer';
|
23
23
|
import { SUBSCRIPTION_TABLE_NAME } from './SubscriptionConstants';
|
@@ -32,9 +32,9 @@ const mapStateToProps = (state) => {
|
|
32
32
|
subscriptions,
|
33
33
|
subscriptionTableSettings,
|
34
34
|
activePermissions: selectActivePermissions(state),
|
35
|
+
simpleContentAccess: selectSimpleContentAccessEnabled(state),
|
35
36
|
tasks: selectSubscriptionsTasks(state),
|
36
37
|
searchQuery: selectSearchQuery(state),
|
37
|
-
manifestModalOpened: selectManifestModalOpened(state),
|
38
38
|
deleteModalOpened: selectDeleteModalOpened(state),
|
39
39
|
taskModalOpened: selectTaskModalOpened(state),
|
40
40
|
deleteButtonDisabled: selectDeleteButtonDisabled(state),
|
@@ -50,6 +50,7 @@ const actions = {
|
|
50
50
|
...settingActions,
|
51
51
|
...tableActions,
|
52
52
|
...manifestActions,
|
53
|
+
...foremanModalActions,
|
53
54
|
};
|
54
55
|
|
55
56
|
const mapDispatchToProps = dispatch => bindActionCreators(actions, dispatch);
|
@@ -6,3 +6,4 @@ export const TASK_BULK_SEARCH_REQUEST = 'TASK_BULK_SEARCH_REQUEST';
|
|
6
6
|
export const TASK_BULK_SEARCH_SUCCESS = 'TASK_BULK_SEARCH_SUCCESS';
|
7
7
|
export const TASK_BULK_SEARCH_FAILURE = 'TASK_BULK_SEARCH_FAILURE';
|
8
8
|
export const RESET_TASKS = 'RESET_TASKS';
|
9
|
+
export const POLL_TASK_INTERVAL = 5000;
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: katello
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 3.15.0.rc1.
|
4
|
+
version: 3.15.0.rc1.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- N/A
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2020-02-
|
11
|
+
date: 2020-02-28 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rails
|
@@ -202,30 +202,42 @@ dependencies:
|
|
202
202
|
name: pulpcore_client
|
203
203
|
requirement: !ruby/object:Gem::Requirement
|
204
204
|
requirements:
|
205
|
-
- - "
|
205
|
+
- - ">="
|
206
206
|
- !ruby/object:Gem::Version
|
207
|
-
version: 3.
|
207
|
+
version: 3.0.0
|
208
|
+
- - "<"
|
209
|
+
- !ruby/object:Gem::Version
|
210
|
+
version: 3.1.0
|
208
211
|
type: :runtime
|
209
212
|
prerelease: false
|
210
213
|
version_requirements: !ruby/object:Gem::Requirement
|
211
214
|
requirements:
|
212
|
-
- - "
|
215
|
+
- - ">="
|
213
216
|
- !ruby/object:Gem::Version
|
214
|
-
version: 3.
|
217
|
+
version: 3.0.0
|
218
|
+
- - "<"
|
219
|
+
- !ruby/object:Gem::Version
|
220
|
+
version: 3.1.0
|
215
221
|
- !ruby/object:Gem::Dependency
|
216
222
|
name: pulp_file_client
|
217
223
|
requirement: !ruby/object:Gem::Requirement
|
218
224
|
requirements:
|
219
|
-
- - "
|
225
|
+
- - ">="
|
226
|
+
- !ruby/object:Gem::Version
|
227
|
+
version: 0.1.0
|
228
|
+
- - "<"
|
220
229
|
- !ruby/object:Gem::Version
|
221
|
-
version: 0.2.0
|
230
|
+
version: 0.2.0
|
222
231
|
type: :runtime
|
223
232
|
prerelease: false
|
224
233
|
version_requirements: !ruby/object:Gem::Requirement
|
225
234
|
requirements:
|
226
|
-
- - "
|
235
|
+
- - ">="
|
227
236
|
- !ruby/object:Gem::Version
|
228
|
-
version: 0.
|
237
|
+
version: 0.1.0
|
238
|
+
- - "<"
|
239
|
+
- !ruby/object:Gem::Version
|
240
|
+
version: 0.2.0
|
229
241
|
- !ruby/object:Gem::Dependency
|
230
242
|
name: pulp_ansible_client
|
231
243
|
requirement: !ruby/object:Gem::Requirement
|
@@ -244,16 +256,22 @@ dependencies:
|
|
244
256
|
name: pulp_container_client
|
245
257
|
requirement: !ruby/object:Gem::Requirement
|
246
258
|
requirements:
|
247
|
-
- - "
|
259
|
+
- - ">="
|
248
260
|
- !ruby/object:Gem::Version
|
249
|
-
version: 1.
|
261
|
+
version: 1.0.0
|
262
|
+
- - "<"
|
263
|
+
- !ruby/object:Gem::Version
|
264
|
+
version: 1.1.0
|
250
265
|
type: :runtime
|
251
266
|
prerelease: false
|
252
267
|
version_requirements: !ruby/object:Gem::Requirement
|
253
268
|
requirements:
|
254
|
-
- - "
|
269
|
+
- - ">="
|
270
|
+
- !ruby/object:Gem::Version
|
271
|
+
version: 1.0.0
|
272
|
+
- - "<"
|
255
273
|
- !ruby/object:Gem::Version
|
256
|
-
version: 1.1.0
|
274
|
+
version: 1.1.0
|
257
275
|
- !ruby/object:Gem::Dependency
|
258
276
|
name: pulp_rpm_client
|
259
277
|
requirement: !ruby/object:Gem::Requirement
|
@@ -557,7 +575,6 @@ files:
|
|
557
575
|
- app/assets/javascripts/katello/organizations/download_certificate.js
|
558
576
|
- app/assets/javascripts/katello/sync_management/index.js
|
559
577
|
- app/assets/javascripts/katello/sync_management/sync_management.js
|
560
|
-
- app/assets/javascripts/katello/widgets/auto_complete.js
|
561
578
|
- app/assets/javascripts/katello/widgets/env_content_view_selector.js
|
562
579
|
- app/assets/javascripts/katello/widgets/path_selector.js
|
563
580
|
- app/assets/javascripts/katello/widgets/subpanel_new.js
|
@@ -1587,8 +1604,8 @@ files:
|
|
1587
1604
|
- app/views/overrides/taxonomies/_action_buttons.html.erb
|
1588
1605
|
- app/views/smart_proxies/_disk_usage.html.erb
|
1589
1606
|
- app/views/smart_proxies/plugins/_pulp.html.erb
|
1590
|
-
- app/views/smart_proxies/plugins/_pulp3.html.erb
|
1591
1607
|
- app/views/smart_proxies/plugins/_pulp_node.html.erb
|
1608
|
+
- app/views/smart_proxies/plugins/_pulpcore.html.erb
|
1592
1609
|
- app/views/smart_proxies/pulp_status.html.erb
|
1593
1610
|
- app/views/smart_proxies/pulp_storage.html.erb
|
1594
1611
|
- app/views/smart_proxies/show/_storage.html.erb
|
@@ -1871,6 +1888,8 @@ files:
|
|
1871
1888
|
- db/migrate/20191204214919_add_content_view_version_counts.rb
|
1872
1889
|
- db/migrate/20191213161248_add_dmi_uuid_to_katello_subscription_facets.rb
|
1873
1890
|
- db/migrate/20200109162354_drop_host_update_lock_setting.rb
|
1891
|
+
- db/migrate/20200121213430_katello_repository_rpms_id_big_int.rb
|
1892
|
+
- db/migrate/20200129172534_add_epoch_version_release_arch_to_katello_installed_packages.rb
|
1874
1893
|
- db/seeds.d/101-locations.rb
|
1875
1894
|
- db/seeds.d/102-organizations.rb
|
1876
1895
|
- db/seeds.d/104-proxy.rb
|
@@ -1881,7 +1900,6 @@ files:
|
|
1881
1900
|
- db/seeds.d/110-content-view-autopublish.rb
|
1882
1901
|
- db/seeds.d/111-container-image-bookmarks.rb
|
1883
1902
|
- db/seeds.d/111-upgrade_tasks.rb
|
1884
|
-
- db/seeds.d/115-http_proxy.rb
|
1885
1903
|
- db/seeds.d/150-module_job_templates.rb
|
1886
1904
|
- db/seeds.d/75-job_templates.rb
|
1887
1905
|
- engines/bastion/README.md
|
@@ -4107,6 +4125,7 @@ files:
|
|
4107
4125
|
- lib/katello/tasks/job_templates.rake
|
4108
4126
|
- lib/katello/tasks/pulp3_content_switchover.rake
|
4109
4127
|
- lib/katello/tasks/pulp3_migration.rake
|
4128
|
+
- lib/katello/tasks/pulp3_post_migration_check.rake
|
4110
4129
|
- lib/katello/tasks/regenerate_ueber_certs.rake
|
4111
4130
|
- lib/katello/tasks/reimport.rake
|
4112
4131
|
- lib/katello/tasks/repository.rake
|
@@ -4215,7 +4234,6 @@ files:
|
|
4215
4234
|
- vendor/assets/javascripts/katello/jquery.trunk8.js
|
4216
4235
|
- vendor/assets/stylesheets/katello/facebox.css
|
4217
4236
|
- vendor/assets/stylesheets/katello/jquery-ui-1.8.11.custom.css.scss
|
4218
|
-
- vendor/assets/stylesheets/katello/jquery.jnotify.css
|
4219
4237
|
- vendor/assets/stylesheets/katello/jquery.loadmask.css.scss
|
4220
4238
|
- vendor/assets/stylesheets/katello/jquery.multiselect.css
|
4221
4239
|
- vendor/assets/stylesheets/katello/jquery.multiselect.filter.css
|
@@ -4227,6 +4245,9 @@ files:
|
|
4227
4245
|
- webpack/__mocks__/foremanReact/common/keyCodes.js
|
4228
4246
|
- webpack/__mocks__/foremanReact/common/urlHelpers.js
|
4229
4247
|
- webpack/__mocks__/foremanReact/components/BreadcrumbBar.js
|
4248
|
+
- webpack/__mocks__/foremanReact/components/ForemanModal/ForemanModalActions.js
|
4249
|
+
- webpack/__mocks__/foremanReact/components/ForemanModal/ForemanModalSelectors.js
|
4250
|
+
- webpack/__mocks__/foremanReact/components/ForemanModal/index.js
|
4230
4251
|
- webpack/__mocks__/foremanReact/components/Pagination/PaginationWrapper.js
|
4231
4252
|
- webpack/__mocks__/foremanReact/components/PermissionDenied/index.js
|
4232
4253
|
- webpack/__mocks__/foremanReact/components/Settings/SettingsActions.js
|
@@ -4442,6 +4463,7 @@ files:
|
|
4442
4463
|
- webpack/scenes/Organizations/OrganizationActions.js
|
4443
4464
|
- webpack/scenes/Organizations/OrganizationConstants.js
|
4444
4465
|
- webpack/scenes/Organizations/OrganizationReducer.js
|
4466
|
+
- webpack/scenes/Organizations/OrganizationSelectors.js
|
4445
4467
|
- webpack/scenes/Organizations/__tests__/OrganizationActions.test.js
|
4446
4468
|
- webpack/scenes/Organizations/__tests__/OrganizationReducer.test.js
|
4447
4469
|
- webpack/scenes/Organizations/__tests__/organizations.fixtures.js
|
@@ -4520,6 +4542,7 @@ files:
|
|
4520
4542
|
- webpack/scenes/Subscriptions/Details/index.js
|
4521
4543
|
- webpack/scenes/Subscriptions/Manifest/DeleteManifestModalText.js
|
4522
4544
|
- webpack/scenes/Subscriptions/Manifest/ManageManifestModal.js
|
4545
|
+
- webpack/scenes/Subscriptions/Manifest/ManageManifestModal.scss
|
4523
4546
|
- webpack/scenes/Subscriptions/Manifest/Manifest.scss
|
4524
4547
|
- webpack/scenes/Subscriptions/Manifest/ManifestActions.js
|
4525
4548
|
- webpack/scenes/Subscriptions/Manifest/ManifestConstants.js
|
@@ -1,183 +0,0 @@
|
|
1
|
-
KT.auto_complete_box = function(params) {
|
2
|
-
|
3
|
-
var settings = {
|
4
|
-
values: undefined, //either a url, an array, or a callback of items for auto_completion
|
5
|
-
default_text: undefined, //default text to go into the search box if desired
|
6
|
-
comma_separated_input: false,
|
7
|
-
input_id: undefined,
|
8
|
-
input: undefined,
|
9
|
-
selected_input_id: undefined,
|
10
|
-
selected_input: undefined,
|
11
|
-
form_id: undefined,
|
12
|
-
add_btn_id: undefined,
|
13
|
-
add_btn: undefined,
|
14
|
-
add_text: katelloI18n.add_plus,
|
15
|
-
require_select: false, //disable the add button if proper autocompleted item isn't selected
|
16
|
-
add_cb: function(item, item_id, cb){cb();}
|
17
|
-
};
|
18
|
-
$.extend( settings, params );
|
19
|
-
|
20
|
-
var add_item_from_input = function(e) {
|
21
|
-
var item = get_input().attr("value"),
|
22
|
-
item_id = get_selected_input().val();
|
23
|
-
|
24
|
-
|
25
|
-
e.preventDefault();
|
26
|
-
if (item.length === 0 || item === settings.default_text){
|
27
|
-
return;
|
28
|
-
}
|
29
|
-
get_add_btn().addClass("working");
|
30
|
-
add_item_base(item, item_id, true);
|
31
|
-
},
|
32
|
-
get_input = function(){
|
33
|
-
return settings.input || $("#" + settings.input_id);
|
34
|
-
},
|
35
|
-
get_selected_input = function(){
|
36
|
-
return settings.selected_input || $("#" + settings.selected_input_id);
|
37
|
-
},
|
38
|
-
get_add_btn = function(){
|
39
|
-
return settings.add_btn || $("#" + settings.add_btn_id);
|
40
|
-
},
|
41
|
-
add_item_base = function(item, item_id, focus) {
|
42
|
-
var input = get_input(),
|
43
|
-
add_btn = get_add_btn();
|
44
|
-
|
45
|
-
input.removeClass("input_error");
|
46
|
-
add_btn.addClass("working");
|
47
|
-
add_btn.html("<img src='" + KT.common.spinner_path() + "'>");
|
48
|
-
input.attr("disabled", "disabled");
|
49
|
-
input.autocomplete('disable');
|
50
|
-
input.autocomplete('close');
|
51
|
-
|
52
|
-
if (settings.comma_separated_input) {
|
53
|
-
// convert the item string to an array
|
54
|
-
item = split(item);
|
55
|
-
}
|
56
|
-
settings.add_cb(item, item_id, function(){
|
57
|
-
reset_input();
|
58
|
-
if (focus) {
|
59
|
-
get_input().focus();
|
60
|
-
}
|
61
|
-
});
|
62
|
-
},
|
63
|
-
reset_input = function() {
|
64
|
-
//re-lookup all items, since a redraw may have happened
|
65
|
-
var input = get_input(),
|
66
|
-
add_btn = get_add_btn();
|
67
|
-
add_btn.removeClass('working');
|
68
|
-
if (add_btn.text() === "") {
|
69
|
-
add_btn.html(settings.add_text);
|
70
|
-
}
|
71
|
-
input.removeAttr('disabled');
|
72
|
-
input.autocomplete('enable');
|
73
|
-
input.val('');
|
74
|
-
},
|
75
|
-
manually_add = function(item, item_id) {
|
76
|
-
add_item_base(item, item_id, false);
|
77
|
-
},
|
78
|
-
error = function() {
|
79
|
-
var input = get_input();
|
80
|
-
input.addClass("input_error");
|
81
|
-
},
|
82
|
-
split = function(val) {
|
83
|
-
return val.split(/,\s*/);
|
84
|
-
},
|
85
|
-
extractLast = function(term) {
|
86
|
-
return split(term).pop();
|
87
|
-
};
|
88
|
-
|
89
|
-
//initialization
|
90
|
-
var input = get_input(),
|
91
|
-
form = $("#" + settings.form_id),
|
92
|
-
add_btn = get_add_btn();
|
93
|
-
|
94
|
-
if (settings.default_text) {
|
95
|
-
input.val(settings.default_text);
|
96
|
-
input.focus(function() {
|
97
|
-
if (input.val() === settings.default_text) {
|
98
|
-
input.val("");
|
99
|
-
}
|
100
|
-
});
|
101
|
-
input.blur(function() {
|
102
|
-
if(input.val() === "") {
|
103
|
-
input.val(settings.default_text);
|
104
|
-
}
|
105
|
-
});
|
106
|
-
}
|
107
|
-
|
108
|
-
if (!settings.comma_separated_input) {
|
109
|
-
input.autocomplete({
|
110
|
-
source: function (request, response) {
|
111
|
-
$.ajax({
|
112
|
-
url: settings.values,
|
113
|
-
data: request,
|
114
|
-
dataType: 'json',
|
115
|
-
success: function (data) {
|
116
|
-
response(data);
|
117
|
-
KT.utils.each(data, function(item){
|
118
|
-
if(request.term === item.value ||
|
119
|
-
request.term === item.label)
|
120
|
-
{
|
121
|
-
get_selected_input().val(item.id);
|
122
|
-
add_btn.removeAttr("disabled");
|
123
|
-
}
|
124
|
-
});
|
125
|
-
},
|
126
|
-
error: function () {
|
127
|
-
response([]);
|
128
|
-
}
|
129
|
-
});
|
130
|
-
},
|
131
|
-
search: function(){
|
132
|
-
get_selected_input().val('');
|
133
|
-
if(settings.require_select){
|
134
|
-
add_btn.attr("disabled", "disabled");
|
135
|
-
}
|
136
|
-
},
|
137
|
-
select: function (event, ui) {
|
138
|
-
get_input().val(ui.item.value);
|
139
|
-
get_selected_input().val(ui.item.id);
|
140
|
-
add_btn.removeAttr("disabled");
|
141
|
-
return false;
|
142
|
-
}
|
143
|
-
});
|
144
|
-
} else {
|
145
|
-
input.autocomplete({
|
146
|
-
source: function(request, response) {
|
147
|
-
$.getJSON( settings.values, {
|
148
|
-
term: extractLast(request.term)
|
149
|
-
}, response);
|
150
|
-
},
|
151
|
-
search: function () {
|
152
|
-
// custom minLength
|
153
|
-
var term = extractLast(this.value);
|
154
|
-
if (term.length < 1) {
|
155
|
-
return false;
|
156
|
-
}
|
157
|
-
},
|
158
|
-
focus: function () {
|
159
|
-
// prevent value inserted on focus
|
160
|
-
return false;
|
161
|
-
},
|
162
|
-
select: function (event, ui) {
|
163
|
-
var terms = split(this.value);
|
164
|
-
// remove the current input
|
165
|
-
terms.pop();
|
166
|
-
// add the selected item
|
167
|
-
terms.push(ui.item.value);
|
168
|
-
// add placeholder to get the comma-and-space at the end
|
169
|
-
terms.push("");
|
170
|
-
this.value = terms.join(", ");
|
171
|
-
return false;
|
172
|
-
}
|
173
|
-
});
|
174
|
-
}
|
175
|
-
add_btn.bind('click', add_item_from_input);
|
176
|
-
form.submit(add_item_from_input);
|
177
|
-
|
178
|
-
return {
|
179
|
-
manually_add: manually_add,
|
180
|
-
error: error,
|
181
|
-
reset_input: reset_input
|
182
|
-
};
|
183
|
-
};
|