katello 3.14.0.rc1 → 3.14.0.rc2

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.

Files changed (77) hide show
  1. checksums.yaml +4 -4
  2. data/app/assets/javascripts/katello/containers/container.js +5 -5
  3. data/app/assets/javascripts/katello/hosts/activation_key_edit.js +1 -1
  4. data/app/assets/javascripts/katello/hosts/host_and_hostgroup_edit.js +1 -1
  5. data/app/assets/javascripts/katello/sync_management/sync_management.js +6 -6
  6. data/app/controllers/katello/api/v2/repositories_controller.rb +1 -1
  7. data/app/lib/actions/katello/content_view/publish.rb +13 -4
  8. data/app/lib/actions/katello/content_view_puppet_environment/destroy.rb +3 -1
  9. data/app/lib/actions/katello/content_view_version/create_repos.rb +25 -0
  10. data/app/lib/actions/katello/content_view_version/incremental_update.rb +32 -12
  11. data/app/lib/actions/katello/environment/destroy.rb +5 -1
  12. data/app/lib/actions/katello/host/hypervisors_update.rb +12 -1
  13. data/app/lib/actions/katello/repository/clone_to_version.rb +3 -11
  14. data/app/lib/actions/pulp/repository/copy_units.rb +3 -6
  15. data/app/lib/actions/pulp/repository/refresh.rb +1 -1
  16. data/app/lib/actions/pulp/repository/sync.rb +3 -1
  17. data/app/lib/katello/resources/candlepin.rb +6 -0
  18. data/app/lib/katello/resources/candlepin/admin.rb +21 -0
  19. data/app/lib/katello/util/package_clause_generator.rb +10 -0
  20. data/app/lib/katello/util/support.rb +19 -0
  21. data/app/models/katello/glue/pulp/repo.rb +0 -13
  22. data/app/models/katello/host/subscription_facet.rb +2 -1
  23. data/app/models/katello/kt_environment.rb +1 -0
  24. data/app/models/katello/ping.rb +35 -3
  25. data/app/models/katello/repository.rb +5 -2
  26. data/app/models/katello/rhsm_fact_parser.rb +6 -1
  27. data/app/models/katello/root_repository.rb +1 -1
  28. data/app/services/katello/candlepin/consumer.rb +2 -1
  29. data/app/{lib/actions/candlepin/import_pool_handler.rb → services/katello/candlepin/event_handler.rb} +2 -2
  30. data/app/services/katello/candlepin_event_listener.rb +106 -0
  31. data/app/services/katello/candlepin_listening_service.rb +91 -0
  32. data/app/services/katello/event_daemon.rb +91 -0
  33. data/app/services/katello/event_monitor/poller_thread.rb +108 -0
  34. data/app/services/katello/event_queue.rb +4 -0
  35. data/app/services/katello/pulp/repository.rb +13 -6
  36. data/app/services/katello/pulp/repository/yum.rb +52 -12
  37. data/lib/katello/engine.rb +13 -14
  38. data/lib/katello/middleware/event_daemon.rb +14 -0
  39. data/lib/katello/plugin.rb +2 -0
  40. data/lib/katello/tasks/upgrade_check.rake +2 -7
  41. data/lib/katello/version.rb +1 -1
  42. data/locale/bn/katello.po +1 -1
  43. data/locale/cs/katello.po +1 -1
  44. data/locale/de/katello.po +2 -2
  45. data/locale/en/katello.po +1 -1
  46. data/locale/es/katello.po +2 -2
  47. data/locale/fr/katello.po +2 -2
  48. data/locale/gu/katello.po +1 -1
  49. data/locale/hi/katello.po +1 -1
  50. data/locale/it/katello.po +2 -2
  51. data/locale/ja/katello.po +2 -2
  52. data/locale/katello.pot +1 -1
  53. data/locale/kn/katello.po +1 -1
  54. data/locale/ko/katello.po +2 -2
  55. data/locale/mr/katello.po +1 -1
  56. data/locale/or/katello.po +1 -1
  57. data/locale/pa/katello.po +1 -1
  58. data/locale/pt/katello.po +1 -1
  59. data/locale/pt_BR/katello.po +2 -2
  60. data/locale/ru/katello.po +2 -2
  61. data/locale/ta/katello.po +1 -1
  62. data/locale/te/katello.po +1 -1
  63. data/locale/zh_CN/katello.po +2 -2
  64. data/locale/zh_TW/katello.po +2 -2
  65. data/webpack/components/Content/Details/__tests__/__snapshots__/ContentDetails.test.js.snap +2 -2
  66. data/webpack/scenes/RedHatRepositories/components/EnabledRepository/EnabledRepository.js +2 -2
  67. data/webpack/scenes/RedHatRepositories/components/RepositorySetRepository/RepositorySetRepository.js +3 -3
  68. data/webpack/scenes/Subscriptions/Details/__tests__/__snapshots__/SubscriptionDetails.test.js.snap +2 -2
  69. data/webpack/scenes/Subscriptions/SubscriptionsPage.scss +6 -0
  70. data/webpack/scenes/Subscriptions/components/SubscriptionsTable/SubscriptionsTableHelpers.js +1 -1
  71. data/webpack/scenes/Subscriptions/components/SubscriptionsTable/__tests__/SubscriptionsTable.fixtures.js +1 -1
  72. metadata +11 -10
  73. data/app/lib/actions/candlepin/candlepin_listening_service.rb +0 -114
  74. data/app/lib/actions/candlepin/listen_on_candlepin_events.rb +0 -216
  75. data/app/lib/actions/katello/event_queue/monitor.rb +0 -122
  76. data/app/lib/actions/katello/event_queue/poller_thread.rb +0 -83
  77. data/app/lib/actions/katello/event_queue/suspended_action.rb +0 -23
@@ -1,3 +1,3 @@
1
1
  module Katello
2
- VERSION = "3.14.0.rc1".freeze
2
+ VERSION = "3.14.0.rc2".freeze
3
3
  end
@@ -1288,7 +1288,7 @@ msgstr ""
1288
1288
  msgid "true if this repository can be published via HTTP"
1289
1289
  msgstr ""
1290
1290
 
1291
- msgid "type of repo (either 'yum', 'puppet' or 'docker')"
1291
+ msgid "type of repo"
1292
1292
  msgstr ""
1293
1293
 
1294
1294
  msgid "checksum of the repository, currently 'sha1' & 'sha256' are supported.'"
@@ -1344,7 +1344,7 @@ msgstr ""
1344
1344
  msgid "true if this repository can be published via HTTP"
1345
1345
  msgstr ""
1346
1346
 
1347
- msgid "type of repo (either 'yum', 'puppet' or 'docker')"
1347
+ msgid "type of repo"
1348
1348
  msgstr ""
1349
1349
 
1350
1350
  msgid "checksum of the repository, currently 'sha1' & 'sha256' are supported.'"
@@ -1325,8 +1325,8 @@ msgstr "ID des GPG-Schlüssels, der diesem neuen Repository zugewiesen wird"
1325
1325
  msgid "true if this repository can be published via HTTP"
1326
1326
  msgstr "\"true\", falls dieses Repository mittels HTTP veröffentlicht werden kann"
1327
1327
 
1328
- msgid "type of repo (either 'yum', 'puppet' or 'docker')"
1329
- msgstr "Typ des Repositorys (entweder \"yum\", \"puppet\" oder \"docker\")"
1328
+ msgid "type of repo"
1329
+ msgstr "Typ des Repositorys"
1330
1330
 
1331
1331
  msgid "checksum of the repository, currently 'sha1' & 'sha256' are supported.'"
1332
1332
  msgstr "Prüfsumme des Repositorys, derzeit werden \"sha1\" und \"sha256\" unterstützt."
@@ -1249,7 +1249,7 @@ msgstr ""
1249
1249
  msgid "true if this repository can be published via HTTP"
1250
1250
  msgstr ""
1251
1251
 
1252
- msgid "type of repo (either 'yum', 'puppet' or 'docker')"
1252
+ msgid "type of repo"
1253
1253
  msgstr ""
1254
1254
 
1255
1255
  msgid "checksum of the repository, currently 'sha1' & 'sha256' are supported.'"
@@ -1314,8 +1314,8 @@ msgstr "ID de la clave GPG que se asignará al nuevo repositorio"
1314
1314
  msgid "true if this repository can be published via HTTP"
1315
1315
  msgstr "verdadero, si este repositorio se puede publicar mediante HTTP"
1316
1316
 
1317
- msgid "type of repo (either 'yum', 'puppet' or 'docker')"
1318
- msgstr "el tipo de repositorio (sea 'yum'. 'puppet' o 'docker')"
1317
+ msgid "type of repo"
1318
+ msgstr "el tipo de repositorio"
1319
1319
 
1320
1320
  msgid "checksum of the repository, currently 'sha1' & 'sha256' are supported.'"
1321
1321
  msgstr ""
@@ -1326,8 +1326,8 @@ msgstr "id de la clé gpg qui sera assignée au nouveau référentiel"
1326
1326
  msgid "true if this repository can be published via HTTP"
1327
1327
  msgstr "vrai si ce référentiel peut être publié via HTTP"
1328
1328
 
1329
- msgid "type of repo (either 'yum', 'puppet' or 'docker')"
1330
- msgstr "type de référentiel ('yum', 'puppet' ou 'docker')"
1329
+ msgid "type of repo"
1330
+ msgstr "type de référentiel"
1331
1331
 
1332
1332
  msgid "checksum of the repository, currently 'sha1' & 'sha256' are supported.'"
1333
1333
  msgstr ""
@@ -1289,7 +1289,7 @@ msgstr ""
1289
1289
  msgid "true if this repository can be published via HTTP"
1290
1290
  msgstr ""
1291
1291
 
1292
- msgid "type of repo (either 'yum', 'puppet' or 'docker')"
1292
+ msgid "type of repo"
1293
1293
  msgstr ""
1294
1294
 
1295
1295
  msgid "checksum of the repository, currently 'sha1' & 'sha256' are supported.'"
@@ -1287,7 +1287,7 @@ msgstr ""
1287
1287
  msgid "true if this repository can be published via HTTP"
1288
1288
  msgstr ""
1289
1289
 
1290
- msgid "type of repo (either 'yum', 'puppet' or 'docker')"
1290
+ msgid "type of repo"
1291
1291
  msgstr ""
1292
1292
 
1293
1293
  msgid "checksum of the repository, currently 'sha1' & 'sha256' are supported.'"
@@ -1325,8 +1325,8 @@ msgstr "id della chiave gpg da assegnare al nuovo repositorio"
1325
1325
  msgid "true if this repository can be published via HTTP"
1326
1326
  msgstr "vero se questo repositorio può essere pubblicato tramite HTTP"
1327
1327
 
1328
- msgid "type of repo (either 'yum', 'puppet' or 'docker')"
1329
- msgstr "tipo di repo ('yum', 'puppet' o 'docker')"
1328
+ msgid "type of repo"
1329
+ msgstr "tipo di repo"
1330
1330
 
1331
1331
  msgid "checksum of the repository, currently 'sha1' & 'sha256' are supported.'"
1332
1332
  msgstr "checksum del repository, attualmente 'sha1' & 'sha256' sono supportati.'"
@@ -1278,8 +1278,8 @@ msgstr "新規リポジトリーに割り当てられる GPG キーの ID"
1278
1278
  msgid "true if this repository can be published via HTTP"
1279
1279
  msgstr "このリポジトリーが HHTP 経由で公開できる場合は true"
1280
1280
 
1281
- msgid "type of repo (either 'yum', 'puppet' or 'docker')"
1282
- msgstr "リポジトリーのタイプ ('yum'、'puppet' または 'docker' のいずれか)"
1281
+ msgid "type of repo"
1282
+ msgstr "リポジトリーのタイプ"
1283
1283
 
1284
1284
  msgid "checksum of the repository, currently 'sha1' & 'sha256' are supported.'"
1285
1285
  msgstr "リポジトリーのチェックサムです。現在、'sha1' & 'sha256' がサポートされています。"
@@ -2804,7 +2804,7 @@ msgid "Product the repository belongs to"
2804
2804
  msgstr ""
2805
2805
 
2806
2806
  #: ../app/controllers/katello/api/v2/repositories_controller.rb:62
2807
- msgid "type of repo (either 'yum', 'deb', 'puppet', 'docker', or 'ostree')"
2807
+ msgid "type of repo"
2808
2808
  msgstr ""
2809
2809
 
2810
2810
  #: ../app/controllers/katello/api/v2/repositories_controller.rb:65
@@ -1289,7 +1289,7 @@ msgstr ""
1289
1289
  msgid "true if this repository can be published via HTTP"
1290
1290
  msgstr ""
1291
1291
 
1292
- msgid "type of repo (either 'yum', 'puppet' or 'docker')"
1292
+ msgid "type of repo"
1293
1293
  msgstr ""
1294
1294
 
1295
1295
  msgid "checksum of the repository, currently 'sha1' & 'sha256' are supported.'"
@@ -1260,8 +1260,8 @@ msgstr "새 리포지터리에 할당할 GPG 키 ID"
1260
1260
  msgid "true if this repository can be published via HTTP"
1261
1261
  msgstr "리포지터리가 HTTP를 통해 공개할 수 있는 경우 true"
1262
1262
 
1263
- msgid "type of repo (either 'yum', 'puppet' or 'docker')"
1264
- msgstr "리포지터리 유형 ('yum', 'puppet', 'docker'중 하나)"
1263
+ msgid "type of repo"
1264
+ msgstr "리포지터리 유형"
1265
1265
 
1266
1266
  msgid "checksum of the repository, currently 'sha1' & 'sha256' are supported.'"
1267
1267
  msgstr "리포지터리의 체크섬입니다. 현재 'sha1' & 'sha256'이 지원되고 있습니다."
@@ -1285,7 +1285,7 @@ msgstr ""
1285
1285
  msgid "true if this repository can be published via HTTP"
1286
1286
  msgstr ""
1287
1287
 
1288
- msgid "type of repo (either 'yum', 'puppet' or 'docker')"
1288
+ msgid "type of repo"
1289
1289
  msgstr ""
1290
1290
 
1291
1291
  msgid "checksum of the repository, currently 'sha1' & 'sha256' are supported.'"
@@ -1288,7 +1288,7 @@ msgstr ""
1288
1288
  msgid "true if this repository can be published via HTTP"
1289
1289
  msgstr ""
1290
1290
 
1291
- msgid "type of repo (either 'yum', 'puppet' or 'docker')"
1291
+ msgid "type of repo"
1292
1292
  msgstr ""
1293
1293
 
1294
1294
  msgid "checksum of the repository, currently 'sha1' & 'sha256' are supported.'"
@@ -1287,7 +1287,7 @@ msgstr ""
1287
1287
  msgid "true if this repository can be published via HTTP"
1288
1288
  msgstr ""
1289
1289
 
1290
- msgid "type of repo (either 'yum', 'puppet' or 'docker')"
1290
+ msgid "type of repo"
1291
1291
  msgstr ""
1292
1292
 
1293
1293
  msgid "checksum of the repository, currently 'sha1' & 'sha256' are supported.'"
@@ -1302,7 +1302,7 @@ msgstr ""
1302
1302
  msgid "true if this repository can be published via HTTP"
1303
1303
  msgstr ""
1304
1304
 
1305
- msgid "type of repo (either 'yum', 'puppet' or 'docker')"
1305
+ msgid "type of repo"
1306
1306
  msgstr ""
1307
1307
 
1308
1308
  msgid "checksum of the repository, currently 'sha1' & 'sha256' are supported.'"
@@ -1313,8 +1313,8 @@ msgstr "Id de uma chave gpg que será atribuído ao novo repositório "
1313
1313
  msgid "true if this repository can be published via HTTP"
1314
1314
  msgstr "verdadeiro se este repositório puder ser publicado via HTTP"
1315
1315
 
1316
- msgid "type of repo (either 'yum', 'puppet' or 'docker')"
1317
- msgstr "tipo de repo ('yum', 'puppet' ou 'docker')"
1316
+ msgid "type of repo"
1317
+ msgstr "tipo de repo"
1318
1318
 
1319
1319
  msgid "checksum of the repository, currently 'sha1' & 'sha256' are supported.'"
1320
1320
  msgstr "checksum do repositório, atualmente 'sha1' & 'sha256' são suportados.'"
@@ -1280,8 +1280,8 @@ msgstr "идентификатор ключа GPG для нового репоз
1280
1280
  msgid "true if this repository can be published via HTTP"
1281
1281
  msgstr "«True», если репозиторий может быть доступен по HTTP"
1282
1282
 
1283
- msgid "type of repo (either 'yum', 'puppet' or 'docker')"
1284
- msgstr "тип репозитория (yum, puppet или docker)"
1283
+ msgid "type of repo"
1284
+ msgstr "тип репозитория"
1285
1285
 
1286
1286
  msgid "checksum of the repository, currently 'sha1' & 'sha256' are supported.'"
1287
1287
  msgstr "контрольная сумма репозитория (SHA1 или SHA256)"
@@ -1285,7 +1285,7 @@ msgstr ""
1285
1285
  msgid "true if this repository can be published via HTTP"
1286
1286
  msgstr ""
1287
1287
 
1288
- msgid "type of repo (either 'yum', 'puppet' or 'docker')"
1288
+ msgid "type of repo"
1289
1289
  msgstr ""
1290
1290
 
1291
1291
  msgid "checksum of the repository, currently 'sha1' & 'sha256' are supported.'"
@@ -1287,7 +1287,7 @@ msgstr ""
1287
1287
  msgid "true if this repository can be published via HTTP"
1288
1288
  msgstr ""
1289
1289
 
1290
- msgid "type of repo (either 'yum', 'puppet' or 'docker')"
1290
+ msgid "type of repo"
1291
1291
  msgstr ""
1292
1292
 
1293
1293
  msgid "checksum of the repository, currently 'sha1' & 'sha256' are supported.'"
@@ -1255,8 +1255,8 @@ msgstr "要为新库分配的 gpg 密钥 id"
1255
1255
  msgid "true if this repository can be published via HTTP"
1256
1256
  msgstr "如果可通过 HTTP 发布则为 true"
1257
1257
 
1258
- msgid "type of repo (either 'yum', 'puppet' or 'docker')"
1259
- msgstr "repo 类型(可以是 'yum'、'puppet' 或者 'docker')"
1258
+ msgid "type of repo"
1259
+ msgstr "repo 类型"
1260
1260
 
1261
1261
  msgid "checksum of the repository, currently 'sha1' & 'sha256' are supported.'"
1262
1262
  msgstr "库的 checksum,目前支持 'sha1' & 'sha256'。"
@@ -1267,8 +1267,8 @@ msgstr "要指定給新軟體庫的GPG 金鑰之 ID"
1267
1267
  msgid "true if this repository can be published via HTTP"
1268
1268
  msgstr "如果此軟體庫可以透過 HTTP 出版,設為真"
1269
1269
 
1270
- msgid "type of repo (either 'yum', 'puppet' or 'docker')"
1271
- msgstr "軟體庫類型('yum'、'puppet' 或是 'docker')"
1270
+ msgid "type of repo"
1271
+ msgstr "軟體庫類型"
1272
1272
 
1273
1273
  msgid "checksum of the repository, currently 'sha1' & 'sha256' are supported.'"
1274
1274
  msgstr "軟體庫的 checksum,目前支援 'sha1' 和 'sha256'。"
@@ -7,7 +7,7 @@ exports[`Content Details Info should render and contain appropriate components 1
7
7
  loadingText="Loading"
8
8
  timeout={300}
9
9
  >
10
- <Uncontrolled(TabContainer)
10
+ <ForwardRef
11
11
  defaultActiveKey={1}
12
12
  id="content-tabs-container"
13
13
  >
@@ -131,7 +131,7 @@ exports[`Content Details Info should render and contain appropriate components 1
131
131
  </TabPane>
132
132
  </TabContent>
133
133
  </Grid>
134
- </Uncontrolled(TabContainer)>
134
+ </ForwardRef>
135
135
  </LoadingState>
136
136
  </div>
137
137
  `;
@@ -55,8 +55,8 @@ class EnabledRepository extends Component {
55
55
  };
56
56
 
57
57
  disableRepository = async () => {
58
- await this.props.disableRepository(this.repoForAction());
59
- this.reloadAndNotify();
58
+ const result = await this.props.disableRepository(this.repoForAction());
59
+ this.reloadAndNotify(result);
60
60
  };
61
61
 
62
62
  render() {
@@ -48,7 +48,7 @@ class RepositorySetRepository extends Component {
48
48
  };
49
49
 
50
50
  reloadAndNotify = async (result) => {
51
- if (result.success) {
51
+ if (result && result.success) {
52
52
  await this.reloadEnabledRepos();
53
53
  await this.setEnabled();
54
54
  await this.notifyEnabled(result.data);
@@ -56,8 +56,8 @@ class RepositorySetRepository extends Component {
56
56
  };
57
57
 
58
58
  enableRepository = async () => {
59
- await this.props.enableRepository(this.repoForAction());
60
- this.reloadAndNotify();
59
+ const result = await this.props.enableRepository(this.repoForAction());
60
+ this.reloadAndNotify(result);
61
61
  };
62
62
 
63
63
  render() {
@@ -24,7 +24,7 @@ exports[`subscriptions details page should render and contain appropiate compone
24
24
  }
25
25
  onSwitcherItemClick={[Function]}
26
26
  />
27
- <Uncontrolled(TabContainer)
27
+ <ForwardRef
28
28
  defaultActiveKey={1}
29
29
  id="subscription-tabs-container"
30
30
  >
@@ -531,6 +531,6 @@ exports[`subscriptions details page should render and contain appropiate compone
531
531
  </Grid>
532
532
  </LoadingState>
533
533
  </div>
534
- </Uncontrolled(TabContainer)>
534
+ </ForwardRef>
535
535
  </div>
536
536
  `;
@@ -42,3 +42,9 @@
42
42
  margin-top: 3px;
43
43
  width: 10px;
44
44
  }
45
+
46
+ span.fa.fa-minus::before {
47
+ content: "\2014";
48
+ color: gray;
49
+ font-size: 1em;
50
+ }
@@ -37,7 +37,7 @@ const buildTableRow = (subscription, availableQuantities, updatedQuantity) => {
37
37
  const buildTableCollapseRow = (subscriptionGroup) => {
38
38
  const first = subscriptionGroup.subscriptions[0];
39
39
  const heading = {
40
- id: 0,
40
+ id: first.product_id,
41
41
  collapsible: true,
42
42
  contract_number: 'NA',
43
43
  start_date: 'NA',
@@ -64,7 +64,7 @@ export const genericRow = Immutable({
64
64
  contract_number: 'NA',
65
65
  end_date: 'NA',
66
66
  hypervisor: undefined,
67
- id: 0,
67
+ id: 'RH00001',
68
68
  name: 'Alpha',
69
69
  product_id: 'RH00001',
70
70
  start_date: 'NA',
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.14.0.rc1
4
+ version: 3.14.0.rc2
5
5
  platform: ruby
6
6
  authors:
7
7
  - N/A
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2019-10-30 00:00:00.000000000 Z
11
+ date: 2019-11-25 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails
@@ -666,7 +666,6 @@ files:
666
666
  - app/lib/actions/candlepin/activation_key/destroy.rb
667
667
  - app/lib/actions/candlepin/activation_key/update.rb
668
668
  - app/lib/actions/candlepin/async_hypervisors.rb
669
- - app/lib/actions/candlepin/candlepin_listening_service.rb
670
669
  - app/lib/actions/candlepin/consumer/attach_subscription.rb
671
670
  - app/lib/actions/candlepin/consumer/auto_attach_subscriptions.rb
672
671
  - app/lib/actions/candlepin/consumer/hypervisors.rb
@@ -676,8 +675,6 @@ files:
676
675
  - app/lib/actions/candlepin/environment/create.rb
677
676
  - app/lib/actions/candlepin/environment/destroy.rb
678
677
  - app/lib/actions/candlepin/environment/set_content.rb
679
- - app/lib/actions/candlepin/import_pool_handler.rb
680
- - app/lib/actions/candlepin/listen_on_candlepin_events.rb
681
678
  - app/lib/actions/candlepin/owner/auto_attach.rb
682
679
  - app/lib/actions/candlepin/owner/create.rb
683
680
  - app/lib/actions/candlepin/owner/destroy.rb
@@ -734,6 +731,7 @@ files:
734
731
  - app/lib/actions/katello/content_view_puppet_module/destroy.rb
735
732
  - app/lib/actions/katello/content_view_version/after_promote_hook.rb
736
733
  - app/lib/actions/katello/content_view_version/before_promote_hook.rb
734
+ - app/lib/actions/katello/content_view_version/create_repos.rb
737
735
  - app/lib/actions/katello/content_view_version/destroy.rb
738
736
  - app/lib/actions/katello/content_view_version/export.rb
739
737
  - app/lib/actions/katello/content_view_version/incremental_update.rb
@@ -741,9 +739,6 @@ files:
741
739
  - app/lib/actions/katello/environment/destroy.rb
742
740
  - app/lib/actions/katello/environment/library_create.rb
743
741
  - app/lib/actions/katello/environment/publish_repositories.rb
744
- - app/lib/actions/katello/event_queue/monitor.rb
745
- - app/lib/actions/katello/event_queue/poller_thread.rb
746
- - app/lib/actions/katello/event_queue/suspended_action.rb
747
742
  - app/lib/actions/katello/foreman/abstract.rb
748
743
  - app/lib/actions/katello/foreman/content_update.rb
749
744
  - app/lib/actions/katello/gpg_key/update.rb
@@ -964,6 +959,7 @@ files:
964
959
  - app/lib/katello/repo_discovery.rb
965
960
  - app/lib/katello/resources/candlepin.rb
966
961
  - app/lib/katello/resources/candlepin/activation_key.rb
962
+ - app/lib/katello/resources/candlepin/admin.rb
967
963
  - app/lib/katello/resources/candlepin/c_p_user.rb
968
964
  - app/lib/katello/resources/candlepin/candlepin_ping.rb
969
965
  - app/lib/katello/resources/candlepin/consumer.rb
@@ -1228,9 +1224,14 @@ files:
1228
1224
  - app/services/katello/applicable_content_helper.rb
1229
1225
  - app/services/katello/authentication/client_authentication.rb
1230
1226
  - app/services/katello/candlepin/consumer.rb
1227
+ - app/services/katello/candlepin/event_handler.rb
1231
1228
  - app/services/katello/candlepin/message_handler.rb
1232
1229
  - app/services/katello/candlepin/pool_service.rb
1233
1230
  - app/services/katello/candlepin/system_purpose.rb
1231
+ - app/services/katello/candlepin_event_listener.rb
1232
+ - app/services/katello/candlepin_listening_service.rb
1233
+ - app/services/katello/event_daemon.rb
1234
+ - app/services/katello/event_monitor/poller_thread.rb
1234
1235
  - app/services/katello/event_queue.rb
1235
1236
  - app/services/katello/managed_content_medium_provider.rb
1236
1237
  - app/services/katello/product_content_finder.rb
@@ -4039,6 +4040,7 @@ files:
4039
4040
  - lib/katello.rb
4040
4041
  - lib/katello/apipie/validators.rb
4041
4042
  - lib/katello/engine.rb
4043
+ - lib/katello/middleware/event_daemon.rb
4042
4044
  - lib/katello/permission_creator.rb
4043
4045
  - lib/katello/permissions.rb
4044
4046
  - lib/katello/permissions/host_permissions.rb
@@ -4571,8 +4573,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
4571
4573
  - !ruby/object:Gem::Version
4572
4574
  version: 1.3.1
4573
4575
  requirements: []
4574
- rubyforge_project:
4575
- rubygems_version: 2.7.6.2
4576
+ rubygems_version: 3.0.3
4576
4577
  signing_key:
4577
4578
  specification_version: 4
4578
4579
  summary: Content and Subscription Management plugin for Foreman
@@ -1,114 +0,0 @@
1
- #
2
- module Actions
3
- module Candlepin
4
- class ConnectionError < StandardError
5
- end
6
-
7
- class CandlepinListeningService
8
- RECONNECT_ATTEMPTS = 30
9
- LOOP_RECEIVE_COUNT = 100
10
- TIMEOUT = Qpid::Messaging::Duration::SECOND
11
- NO_MESSAGE_AVAILABLE_ERROR_TYPE = 'NoMessageAvailable'.freeze
12
-
13
- class << self
14
- attr_reader :instance
15
-
16
- def initialize(logger, url, address)
17
- @instance = self.new(logger, url, address)
18
- end
19
-
20
- def close
21
- @instance.close if @instance
22
- @instance = nil
23
- end
24
- end
25
-
26
- def initialize(logger, url, address)
27
- @url = url
28
- @address = address
29
- @connection = create_connection
30
- @logger = logger
31
- end
32
-
33
- def create_connection
34
- Qpid::Messaging::Connection.new(:url => @url, :options => {:transport => 'ssl'})
35
- end
36
-
37
- def close
38
- @thread.kill if @thread
39
- @connection.close
40
- end
41
-
42
- def retrieve
43
- result = @receiver.fetch(TIMEOUT)
44
- result
45
- rescue => e
46
- if e.class.name.include? "TransportFailure"
47
- raise ::Actions::Candlepin::ConnectionError, "failed to connect to #{@url}"
48
- else
49
- raise e unless e.class.name.include? NO_MESSAGE_AVAILABLE_ERROR_TYPE
50
- end
51
- ensure
52
- safe_release(result) if result
53
- end
54
-
55
- def safe_release(message)
56
- @session.acknowledge(:message => message, :sync => true)
57
- rescue => e
58
- @session.release(message)
59
- raise e
60
- end
61
-
62
- def start(suspended_action)
63
- unless @connection.open?
64
- @connection.open
65
- @session = @connection.create_session
66
- @receiver = @session.create_receiver(@address)
67
- end
68
- if @connection.open?
69
- suspended_action.notify_connected
70
- else
71
- suspended_action.notify_not_connected("Not Connected")
72
- end
73
- rescue => e
74
- raise e unless e.class.name.include? "TransportFailure"
75
- suspended_action.notify_not_connected(e.message)
76
- end
77
-
78
- def fetch_message
79
- {:result => retrieve, :error => nil}
80
- rescue ::Actions::Candlepin::ConnectionError => e
81
- {:result => nil, :error => e.message}
82
- end
83
-
84
- def poll_for_messages(suspended_action)
85
- @thread.kill if @thread
86
- @thread = Thread.new do
87
- count = 0
88
- loop do
89
- begin
90
- message = fetch_message
91
- if message[:result]
92
- result = message[:result]
93
- suspended_action.notify_message_received(result.message_id, result.subject, result.content)
94
- elsif message[:error]
95
- suspended_action.notify_not_connected(message[:error])
96
- break
97
- end
98
-
99
- if count >= LOOP_RECEIVE_COUNT || (message[:result].nil? && message[:error].nil?)
100
- sleep 1
101
- count = 0
102
- end
103
- rescue => e
104
- suspended_action.notify_fatal(e)
105
- raise e
106
- ensure
107
- count += 1
108
- end
109
- end
110
- end
111
- end
112
- end
113
- end
114
- end