foreman_remote_execution 6.0.0 → 7.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (88) hide show
  1. checksums.yaml +4 -4
  2. data/app/controllers/api/v2/job_invocations_controller.rb +1 -0
  3. data/app/controllers/foreman_remote_execution/concerns/api/v2/registration_controller_extensions.rb +5 -0
  4. data/app/controllers/ui_job_wizard_controller.rb +1 -1
  5. data/app/helpers/hosts_extensions_helper.rb +62 -0
  6. data/app/helpers/remote_execution_helper.rb +4 -3
  7. data/app/lib/actions/remote_execution/run_host_job.rb +5 -1
  8. data/app/lib/actions/remote_execution/run_hosts_job.rb +4 -0
  9. data/app/models/concerns/foreman_remote_execution/host_extensions.rb +5 -1
  10. data/app/models/concerns/foreman_remote_execution/nic_extensions.rb +6 -4
  11. data/app/models/concerns/foreman_remote_execution/smart_proxy_extensions.rb +1 -1
  12. data/app/models/job_invocation_composer.rb +7 -3
  13. data/app/models/job_template.rb +4 -1
  14. data/app/models/remote_execution_provider.rb +10 -1
  15. data/app/models/ssh_execution_provider.rb +20 -7
  16. data/app/services/default_proxy_proxy_selector.rb +1 -1
  17. data/app/services/remote_execution_proxy_selector.rb +7 -2
  18. data/app/views/api/v2/host/main.rabl +1 -0
  19. data/app/views/api/v2/job_invocations/base.json.rabl +1 -1
  20. data/app/views/dashboard/_latest-jobs.html.erb +1 -1
  21. data/app/views/job_invocations/_card_target_hosts.html.erb +8 -0
  22. data/app/views/job_invocations/_form.html.erb +2 -0
  23. data/app/views/templates/{ssh → script}/check_update.erb +2 -2
  24. data/app/views/templates/{ssh → script}/module_action.erb +2 -2
  25. data/app/views/templates/{ssh → script}/package_action.erb +5 -2
  26. data/app/views/templates/{ssh → script}/power_action.erb +2 -2
  27. data/app/views/templates/{ssh → script}/puppet_agent_disable.erb +2 -2
  28. data/app/views/templates/{ssh → script}/puppet_agent_enable.erb +2 -2
  29. data/app/views/templates/{ssh → script}/puppet_install_modules_from_forge.erb +2 -2
  30. data/app/views/templates/{ssh → script}/puppet_install_modules_from_git.erb +2 -2
  31. data/app/views/templates/{ssh → script}/puppet_run_once.erb +2 -2
  32. data/app/views/templates/{ssh → script}/run_command.erb +2 -2
  33. data/app/views/templates/{ssh → script}/service_action.erb +2 -2
  34. data/db/migrate/20220321101835_rename_ssh_provider_to_script.rb +29 -0
  35. data/db/migrate/20220331112719_add_ssh_user_to_job_invocation.rb +5 -0
  36. data/db/seeds.d/60-ssh_proxy_feature.rb +3 -0
  37. data/jsconfig.json +8 -0
  38. data/lib/foreman_remote_execution/engine.rb +10 -5
  39. data/lib/foreman_remote_execution/version.rb +1 -1
  40. data/locale/action_names.rb +3 -3
  41. data/locale/de/foreman_remote_execution.po +23 -23
  42. data/locale/en/foreman_remote_execution.po +23 -23
  43. data/locale/en_GB/foreman_remote_execution.po +23 -23
  44. data/locale/es/foreman_remote_execution.po +23 -23
  45. data/locale/foreman_remote_execution.pot +64 -66
  46. data/locale/fr/foreman_remote_execution.po +23 -23
  47. data/locale/ja/foreman_remote_execution.po +23 -23
  48. data/locale/ko/foreman_remote_execution.po +23 -23
  49. data/locale/pt_BR/foreman_remote_execution.po +23 -23
  50. data/locale/ru/foreman_remote_execution.po +23 -23
  51. data/locale/zh_CN/foreman_remote_execution.po +23 -23
  52. data/locale/zh_TW/foreman_remote_execution.po +23 -23
  53. data/package.json +6 -7
  54. data/test/unit/concerns/host_extensions_test.rb +2 -1
  55. data/test/unit/remote_execution_provider_test.rb +2 -0
  56. data/webpack/JobWizard/JobWizard.js +8 -2
  57. data/webpack/JobWizard/JobWizardConstants.js +2 -2
  58. data/webpack/JobWizard/__tests__/fixtures.js +8 -4
  59. data/webpack/JobWizard/steps/AdvancedFields/__tests__/AdvancedFields.test.js +2 -2
  60. data/webpack/JobWizard/steps/CategoryAndTemplate/CategoryAndTemplate.js +24 -15
  61. data/webpack/JobWizard/steps/HostsAndInputs/SelectGQL.js +2 -1
  62. data/webpack/JobWizard/steps/HostsAndInputs/SelectedChips.js +1 -1
  63. data/webpack/JobWizard/steps/HostsAndInputs/buildHostQuery.js +1 -1
  64. data/webpack/JobWizard/steps/HostsAndInputs/hostgroups.gql +1 -0
  65. data/webpack/JobWizard/steps/HostsAndInputs/hosts.gql +1 -0
  66. data/webpack/JobWizard/steps/ReviewDetails/index.js +1 -1
  67. data/webpack/JobWizard/steps/Schedule/__tests__/Schedule.test.js +15 -15
  68. data/webpack/JobWizard/steps/form/GroupedSelectField.js +7 -1
  69. data/webpack/JobWizard/steps/form/SearchSelect.js +0 -1
  70. data/webpack/__mocks__/foremanReact/common/globalIdHelpers.js +1 -0
  71. data/webpack/global_index.js +2 -4
  72. data/webpack/react_app/components/FeaturesDropdown/actions.js +13 -0
  73. data/webpack/react_app/components/FeaturesDropdown/constant.js +2 -0
  74. data/webpack/react_app/components/FeaturesDropdown/index.js +74 -0
  75. data/webpack/react_app/components/HostKebab/KebabItems.js +27 -0
  76. data/webpack/react_app/components/RecentJobsCard/RecentJobsCard.js +10 -5
  77. data/webpack/react_app/components/RecentJobsCard/RecentJobsTable.js +2 -2
  78. data/webpack/react_app/components/RecentJobsCard/constants.js +1 -0
  79. data/webpack/react_app/components/TargetingHosts/TargetingHostsConsts.js +1 -0
  80. data/webpack/react_app/components/TargetingHosts/TargetingHostsPage.js +8 -3
  81. data/webpack/react_app/components/TargetingHosts/__tests__/__snapshots__/TargetingHostsPage.test.js.snap +9 -1
  82. data/webpack/react_app/components/TargetingHosts/__tests__/fixtures.js +1 -4
  83. data/webpack/react_app/components/TargetingHosts/index.js +1 -0
  84. data/webpack/react_app/extend/Fills.js +48 -0
  85. metadata +25 -17
  86. data/app/helpers/concerns/foreman_remote_execution/hosts_helper_extensions.rb +0 -62
  87. data/webpack/react_app/extend/fillRecentJobsCard.js +0 -11
  88. data/webpack/react_app/extend/fillregistrationAdvanced.js +0 -11
@@ -22,6 +22,9 @@ msgstr "%s"
22
22
  msgid "%s ago"
23
23
  msgstr "%s 전 "
24
24
 
25
+ msgid "%s job has been invoked"
26
+ msgstr ""
27
+
25
28
  msgid "%{description} on %{host}"
26
29
  msgstr "%{host}에 대한 %{description}"
27
30
 
@@ -66,15 +69,15 @@ msgstr "스크립트를 실행하는 데 사용할 사용자입니다. 이 사
66
69
  msgid "Abort Job"
67
70
  msgstr ""
68
71
 
72
+ msgid "Action with sub plans"
73
+ msgstr ""
74
+
69
75
  msgid "Actions"
70
76
  msgstr "작업"
71
77
 
72
78
  msgid "Add Foreign Input Set"
73
79
  msgstr "외부 입력 세트 추가"
74
80
 
75
- msgid "Advanced Fields"
76
- msgstr ""
77
-
78
81
  msgid "Advanced fields"
79
82
  msgstr ""
80
83
 
@@ -465,9 +468,15 @@ msgstr ""
465
468
  msgid "Import"
466
469
  msgstr "불러오기"
467
470
 
471
+ msgid "Import Puppet classes"
472
+ msgstr ""
473
+
468
474
  msgid "Import a job template from ERB"
469
475
  msgstr ""
470
476
 
477
+ msgid "Import facts"
478
+ msgstr ""
479
+
471
480
  msgid "Include all inputs from the foreign template"
472
481
  msgstr ""
473
482
 
@@ -501,9 +510,6 @@ msgstr "호출 유형(%s 중 하나)"
501
510
  msgid "Job"
502
511
  msgstr "업무"
503
512
 
504
- msgid "Job Category"
505
- msgstr ""
506
-
507
513
  msgid "Job Details"
508
514
  msgstr ""
509
515
 
@@ -825,7 +831,7 @@ msgstr "다음으로 확인"
825
831
  msgid "Results"
826
832
  msgstr ""
827
833
 
828
- msgid "Review Details"
834
+ msgid "Review details"
829
835
  msgstr ""
830
836
 
831
837
  msgid "Run"
@@ -849,9 +855,6 @@ msgstr ""
849
855
  msgid "Running"
850
856
  msgstr ""
851
857
 
852
- msgid "SSH"
853
- msgstr "SSH"
854
-
855
858
  msgid "SSH Port"
856
859
  msgstr ""
857
860
 
@@ -867,6 +870,9 @@ msgstr "스케줄 "
867
870
  msgid "Schedule Remote Job"
868
871
  msgstr ""
869
872
 
873
+ msgid "Schedule a job"
874
+ msgstr ""
875
+
870
876
  msgid "Schedule for future execution"
871
877
  msgstr ""
872
878
 
@@ -888,6 +894,9 @@ msgstr ""
888
894
  msgid "Scheduled to start before"
889
895
  msgstr ""
890
896
 
897
+ msgid "Script"
898
+ msgstr ""
899
+
891
900
  msgid "Scroll to bottom"
892
901
  msgstr "맨 아래로 스크롤"
893
902
 
@@ -1207,16 +1216,16 @@ msgstr "사용자 입력"
1207
1216
  msgid "Value"
1208
1217
  msgstr "값 "
1209
1218
 
1210
- msgid "View All Jobs"
1219
+ msgid "View all jobs"
1211
1220
  msgstr ""
1212
1221
 
1213
- msgid "View Finished Jobs"
1222
+ msgid "View finished jobs"
1214
1223
  msgstr ""
1215
1224
 
1216
- msgid "View Running Jobs"
1225
+ msgid "View running jobs"
1217
1226
  msgstr ""
1218
1227
 
1219
- msgid "View Scheduled Jobs"
1228
+ msgid "View scheduled jobs"
1220
1229
  msgstr ""
1221
1230
 
1222
1231
  msgid "Web Console"
@@ -1362,12 +1371,3 @@ msgstr ""
1362
1371
 
1363
1372
  msgid "using Smart Proxy"
1364
1373
  msgstr ""
1365
-
1366
- msgid "»Action with sub plans«"
1367
- msgstr ""
1368
-
1369
- msgid "»Import Puppet classes«"
1370
- msgstr ""
1371
-
1372
- msgid "»Import facts«"
1373
- msgstr ""
@@ -23,6 +23,9 @@ msgstr "%s"
23
23
  msgid "%s ago"
24
24
  msgstr "%s atrás"
25
25
 
26
+ msgid "%s job has been invoked"
27
+ msgstr ""
28
+
26
29
  msgid "%{description} on %{host}"
27
30
  msgstr "%{description} em %{host}"
28
31
 
@@ -67,15 +70,15 @@ msgstr "Usuário a ser usado para a execução de script. Se ele for diferente d
67
70
  msgid "Abort Job"
68
71
  msgstr "Sobre o trabalho"
69
72
 
73
+ msgid "Action with sub plans"
74
+ msgstr ""
75
+
70
76
  msgid "Actions"
71
77
  msgstr "Ações"
72
78
 
73
79
  msgid "Add Foreign Input Set"
74
80
  msgstr "Adicionar Conjunto de Entradas Externas"
75
81
 
76
- msgid "Advanced Fields"
77
- msgstr ""
78
-
79
82
  msgid "Advanced fields"
80
83
  msgstr ""
81
84
 
@@ -466,9 +469,15 @@ msgstr ""
466
469
  msgid "Import"
467
470
  msgstr "Importar"
468
471
 
472
+ msgid "Import Puppet classes"
473
+ msgstr ""
474
+
469
475
  msgid "Import a job template from ERB"
470
476
  msgstr "Importar um modelo de trabalho do ERB "
471
477
 
478
+ msgid "Import facts"
479
+ msgstr ""
480
+
472
481
  msgid "Include all inputs from the foreign template"
473
482
  msgstr "Incluir todas as entradas do modelo externo "
474
483
 
@@ -502,9 +511,6 @@ msgstr "Tipo de invocação, um dos %s"
502
511
  msgid "Job"
503
512
  msgstr "Trabalho"
504
513
 
505
- msgid "Job Category"
506
- msgstr ""
507
-
508
514
  msgid "Job Details"
509
515
  msgstr "Detalhes do trabalho"
510
516
 
@@ -826,7 +832,7 @@ msgstr "Resolve para"
826
832
  msgid "Results"
827
833
  msgstr ""
828
834
 
829
- msgid "Review Details"
835
+ msgid "Review details"
830
836
  msgstr ""
831
837
 
832
838
  msgid "Run"
@@ -850,9 +856,6 @@ msgstr ""
850
856
  msgid "Running"
851
857
  msgstr ""
852
858
 
853
- msgid "SSH"
854
- msgstr "SSH"
855
-
856
859
  msgid "SSH Port"
857
860
  msgstr "Porta SSH"
858
861
 
@@ -868,6 +871,9 @@ msgstr "Agendamento"
868
871
  msgid "Schedule Remote Job"
869
872
  msgstr "Agendar trabalho remoto"
870
873
 
874
+ msgid "Schedule a job"
875
+ msgstr ""
876
+
871
877
  msgid "Schedule for future execution"
872
878
  msgstr ""
873
879
 
@@ -889,6 +895,9 @@ msgstr "Agendado para iniciar em"
889
895
  msgid "Scheduled to start before"
890
896
  msgstr ""
891
897
 
898
+ msgid "Script"
899
+ msgstr ""
900
+
892
901
  msgid "Scroll to bottom"
893
902
  msgstr "Rolar até a parte inferior"
894
903
 
@@ -1209,16 +1218,16 @@ msgstr "Entrada do usuário"
1209
1218
  msgid "Value"
1210
1219
  msgstr "Valor"
1211
1220
 
1212
- msgid "View All Jobs"
1221
+ msgid "View all jobs"
1213
1222
  msgstr ""
1214
1223
 
1215
- msgid "View Finished Jobs"
1224
+ msgid "View finished jobs"
1216
1225
  msgstr ""
1217
1226
 
1218
- msgid "View Running Jobs"
1227
+ msgid "View running jobs"
1219
1228
  msgstr ""
1220
1229
 
1221
- msgid "View Scheduled Jobs"
1230
+ msgid "View scheduled jobs"
1222
1231
  msgstr ""
1223
1232
 
1224
1233
  msgid "Web Console"
@@ -1364,12 +1373,3 @@ msgstr ""
1364
1373
 
1365
1374
  msgid "using Smart Proxy"
1366
1375
  msgstr ""
1367
-
1368
- msgid "»Action with sub plans«"
1369
- msgstr ""
1370
-
1371
- msgid "»Import Puppet classes«"
1372
- msgstr ""
1373
-
1374
- msgid "»Import facts«"
1375
- msgstr ""
@@ -26,6 +26,9 @@ msgstr "%s"
26
26
  msgid "%s ago"
27
27
  msgstr "%s назад"
28
28
 
29
+ msgid "%s job has been invoked"
30
+ msgstr ""
31
+
29
32
  msgid "%{description} on %{host}"
30
33
  msgstr "%{description} на %{host}"
31
34
 
@@ -70,15 +73,15 @@ msgstr "Пользователь, от имени которого должен
70
73
  msgid "Abort Job"
71
74
  msgstr ""
72
75
 
76
+ msgid "Action with sub plans"
77
+ msgstr ""
78
+
73
79
  msgid "Actions"
74
80
  msgstr "Действия"
75
81
 
76
82
  msgid "Add Foreign Input Set"
77
83
  msgstr "Добавить шаблон"
78
84
 
79
- msgid "Advanced Fields"
80
- msgstr ""
81
-
82
85
  msgid "Advanced fields"
83
86
  msgstr ""
84
87
 
@@ -469,9 +472,15 @@ msgstr ""
469
472
  msgid "Import"
470
473
  msgstr "Импорт"
471
474
 
475
+ msgid "Import Puppet classes"
476
+ msgstr ""
477
+
472
478
  msgid "Import a job template from ERB"
473
479
  msgstr "Импорт шаблона из ERB"
474
480
 
481
+ msgid "Import facts"
482
+ msgstr ""
483
+
475
484
  msgid "Include all inputs from the foreign template"
476
485
  msgstr "Добавить все входные параметры из внешнего шаблона"
477
486
 
@@ -505,9 +514,6 @@ msgstr "Тип вызова. Возможные значения: %s"
505
514
  msgid "Job"
506
515
  msgstr "Задание"
507
516
 
508
- msgid "Job Category"
509
- msgstr ""
510
-
511
517
  msgid "Job Details"
512
518
  msgstr ""
513
519
 
@@ -829,7 +835,7 @@ msgstr "Применимо к "
829
835
  msgid "Results"
830
836
  msgstr ""
831
837
 
832
- msgid "Review Details"
838
+ msgid "Review details"
833
839
  msgstr ""
834
840
 
835
841
  msgid "Run"
@@ -853,9 +859,6 @@ msgstr ""
853
859
  msgid "Running"
854
860
  msgstr ""
855
861
 
856
- msgid "SSH"
857
- msgstr "SSH"
858
-
859
862
  msgid "SSH Port"
860
863
  msgstr ""
861
864
 
@@ -871,6 +874,9 @@ msgstr "Расписание"
871
874
  msgid "Schedule Remote Job"
872
875
  msgstr ""
873
876
 
877
+ msgid "Schedule a job"
878
+ msgstr ""
879
+
874
880
  msgid "Schedule for future execution"
875
881
  msgstr ""
876
882
 
@@ -892,6 +898,9 @@ msgstr ""
892
898
  msgid "Scheduled to start before"
893
899
  msgstr ""
894
900
 
901
+ msgid "Script"
902
+ msgstr ""
903
+
895
904
  msgid "Scroll to bottom"
896
905
  msgstr "Перейти вниз"
897
906
 
@@ -1214,16 +1223,16 @@ msgstr "Ввод пользователя"
1214
1223
  msgid "Value"
1215
1224
  msgstr "Значение"
1216
1225
 
1217
- msgid "View All Jobs"
1226
+ msgid "View all jobs"
1218
1227
  msgstr ""
1219
1228
 
1220
- msgid "View Finished Jobs"
1229
+ msgid "View finished jobs"
1221
1230
  msgstr ""
1222
1231
 
1223
- msgid "View Running Jobs"
1232
+ msgid "View running jobs"
1224
1233
  msgstr ""
1225
1234
 
1226
- msgid "View Scheduled Jobs"
1235
+ msgid "View scheduled jobs"
1227
1236
  msgstr ""
1228
1237
 
1229
1238
  msgid "Web Console"
@@ -1369,12 +1378,3 @@ msgstr ""
1369
1378
 
1370
1379
  msgid "using Smart Proxy"
1371
1380
  msgstr ""
1372
-
1373
- msgid "»Action with sub plans«"
1374
- msgstr ""
1375
-
1376
- msgid "»Import Puppet classes«"
1377
- msgstr ""
1378
-
1379
- msgid "»Import facts«"
1380
- msgstr ""
@@ -23,6 +23,9 @@ msgstr "%s"
23
23
  msgid "%s ago"
24
24
  msgstr "%s 前"
25
25
 
26
+ msgid "%s job has been invoked"
27
+ msgstr ""
28
+
26
29
  msgid "%{description} on %{host}"
27
30
  msgstr "%{host} 中的 %{description} "
28
31
 
@@ -67,15 +70,15 @@ msgstr "用来执行该脚本的用户。如果与 SSH 用户不同,则可使
67
70
  msgid "Abort Job"
68
71
  msgstr "中止任务"
69
72
 
73
+ msgid "Action with sub plans"
74
+ msgstr ""
75
+
70
76
  msgid "Actions"
71
77
  msgstr "操作"
72
78
 
73
79
  msgid "Add Foreign Input Set"
74
80
  msgstr "添加外部输入集"
75
81
 
76
- msgid "Advanced Fields"
77
- msgstr ""
78
-
79
82
  msgid "Advanced fields"
80
83
  msgstr ""
81
84
 
@@ -466,9 +469,15 @@ msgstr ""
466
469
  msgid "Import"
467
470
  msgstr "导入"
468
471
 
472
+ msgid "Import Puppet classes"
473
+ msgstr ""
474
+
469
475
  msgid "Import a job template from ERB"
470
476
  msgstr "从 ERB 导入任务模版"
471
477
 
478
+ msgid "Import facts"
479
+ msgstr ""
480
+
472
481
  msgid "Include all inputs from the foreign template"
473
482
  msgstr "在外部模板中包含所有输入格式"
474
483
 
@@ -502,9 +511,6 @@ msgstr "调用类型,%s 之一"
502
511
  msgid "Job"
503
512
  msgstr "工作"
504
513
 
505
- msgid "Job Category"
506
- msgstr ""
507
-
508
514
  msgid "Job Details"
509
515
  msgstr "任务细节"
510
516
 
@@ -826,7 +832,7 @@ msgstr "解析为"
826
832
  msgid "Results"
827
833
  msgstr ""
828
834
 
829
- msgid "Review Details"
835
+ msgid "Review details"
830
836
  msgstr ""
831
837
 
832
838
  msgid "Run"
@@ -850,9 +856,6 @@ msgstr ""
850
856
  msgid "Running"
851
857
  msgstr ""
852
858
 
853
- msgid "SSH"
854
- msgstr "SSH"
855
-
856
859
  msgid "SSH Port"
857
860
  msgstr "SSH 端口"
858
861
 
@@ -868,6 +871,9 @@ msgstr "时间表"
868
871
  msgid "Schedule Remote Job"
869
872
  msgstr "调度远程任务"
870
873
 
874
+ msgid "Schedule a job"
875
+ msgstr ""
876
+
871
877
  msgid "Schedule for future execution"
872
878
  msgstr ""
873
879
 
@@ -889,6 +895,9 @@ msgstr "计划开始时间"
889
895
  msgid "Scheduled to start before"
890
896
  msgstr ""
891
897
 
898
+ msgid "Script"
899
+ msgstr ""
900
+
892
901
  msgid "Scroll to bottom"
893
902
  msgstr "滚动到底部"
894
903
 
@@ -1209,16 +1218,16 @@ msgstr "用户输入"
1209
1218
  msgid "Value"
1210
1219
  msgstr "值"
1211
1220
 
1212
- msgid "View All Jobs"
1221
+ msgid "View all jobs"
1213
1222
  msgstr ""
1214
1223
 
1215
- msgid "View Finished Jobs"
1224
+ msgid "View finished jobs"
1216
1225
  msgstr ""
1217
1226
 
1218
- msgid "View Running Jobs"
1227
+ msgid "View running jobs"
1219
1228
  msgstr ""
1220
1229
 
1221
- msgid "View Scheduled Jobs"
1230
+ msgid "View scheduled jobs"
1222
1231
  msgstr ""
1223
1232
 
1224
1233
  msgid "Web Console"
@@ -1364,12 +1373,3 @@ msgstr ""
1364
1373
 
1365
1374
  msgid "using Smart Proxy"
1366
1375
  msgstr ""
1367
-
1368
- msgid "»Action with sub plans«"
1369
- msgstr ""
1370
-
1371
- msgid "»Import Puppet classes«"
1372
- msgstr ""
1373
-
1374
- msgid "»Import facts«"
1375
- msgstr ""
@@ -23,6 +23,9 @@ msgstr "%s"
23
23
  msgid "%s ago"
24
24
  msgstr "%s 之前"
25
25
 
26
+ msgid "%s job has been invoked"
27
+ msgstr ""
28
+
26
29
  msgid "%{description} on %{host}"
27
30
  msgstr "%{description} 於 %{host} 之上"
28
31
 
@@ -67,15 +70,15 @@ msgstr "要使用執行這 script 的使用者。如果使用者與 SSH 使用
67
70
  msgid "Abort Job"
68
71
  msgstr ""
69
72
 
73
+ msgid "Action with sub plans"
74
+ msgstr ""
75
+
70
76
  msgid "Actions"
71
77
  msgstr "動作"
72
78
 
73
79
  msgid "Add Foreign Input Set"
74
80
  msgstr "新增外部輸入集"
75
81
 
76
- msgid "Advanced Fields"
77
- msgstr ""
78
-
79
82
  msgid "Advanced fields"
80
83
  msgstr ""
81
84
 
@@ -466,9 +469,15 @@ msgstr ""
466
469
  msgid "Import"
467
470
  msgstr "匯入"
468
471
 
472
+ msgid "Import Puppet classes"
473
+ msgstr ""
474
+
469
475
  msgid "Import a job template from ERB"
470
476
  msgstr ""
471
477
 
478
+ msgid "Import facts"
479
+ msgstr ""
480
+
472
481
  msgid "Include all inputs from the foreign template"
473
482
  msgstr ""
474
483
 
@@ -502,9 +511,6 @@ msgstr "祈願類型,%s 之一"
502
511
  msgid "Job"
503
512
  msgstr "工作"
504
513
 
505
- msgid "Job Category"
506
- msgstr ""
507
-
508
514
  msgid "Job Details"
509
515
  msgstr ""
510
516
 
@@ -826,7 +832,7 @@ msgstr "解析至"
826
832
  msgid "Results"
827
833
  msgstr ""
828
834
 
829
- msgid "Review Details"
835
+ msgid "Review details"
830
836
  msgstr ""
831
837
 
832
838
  msgid "Run"
@@ -850,9 +856,6 @@ msgstr ""
850
856
  msgid "Running"
851
857
  msgstr ""
852
858
 
853
- msgid "SSH"
854
- msgstr "SSH"
855
-
856
859
  msgid "SSH Port"
857
860
  msgstr ""
858
861
 
@@ -868,6 +871,9 @@ msgstr "排程"
868
871
  msgid "Schedule Remote Job"
869
872
  msgstr ""
870
873
 
874
+ msgid "Schedule a job"
875
+ msgstr ""
876
+
871
877
  msgid "Schedule for future execution"
872
878
  msgstr ""
873
879
 
@@ -889,6 +895,9 @@ msgstr ""
889
895
  msgid "Scheduled to start before"
890
896
  msgstr ""
891
897
 
898
+ msgid "Script"
899
+ msgstr ""
900
+
892
901
  msgid "Scroll to bottom"
893
902
  msgstr "捲動至底端"
894
903
 
@@ -1209,16 +1218,16 @@ msgstr "使用者輸入"
1209
1218
  msgid "Value"
1210
1219
  msgstr "值"
1211
1220
 
1212
- msgid "View All Jobs"
1221
+ msgid "View all jobs"
1213
1222
  msgstr ""
1214
1223
 
1215
- msgid "View Finished Jobs"
1224
+ msgid "View finished jobs"
1216
1225
  msgstr ""
1217
1226
 
1218
- msgid "View Running Jobs"
1227
+ msgid "View running jobs"
1219
1228
  msgstr ""
1220
1229
 
1221
- msgid "View Scheduled Jobs"
1230
+ msgid "View scheduled jobs"
1222
1231
  msgstr ""
1223
1232
 
1224
1233
  msgid "Web Console"
@@ -1364,12 +1373,3 @@ msgstr ""
1364
1373
 
1365
1374
  msgid "using Smart Proxy"
1366
1375
  msgstr ""
1367
-
1368
- msgid "»Action with sub plans«"
1369
- msgstr ""
1370
-
1371
- msgid "»Import Puppet classes«"
1372
- msgstr ""
1373
-
1374
- msgid "»Import facts«"
1375
- msgstr ""
data/package.json CHANGED
@@ -21,20 +21,19 @@
21
21
  },
22
22
  "devDependencies": {
23
23
  "@babel/core": "^7.7.0",
24
- "@theforeman/builder": "^8.16.0",
25
- "@theforeman/eslint-plugin-foreman": "^8.16.0",
26
- "@theforeman/stories": "^8.16.0",
27
- "@theforeman/test": "^8.16.0",
28
- "@theforeman/vendor-dev": "^8.16.0",
24
+ "@theforeman/builder": "^10.1.0",
25
+ "@theforeman/eslint-plugin-foreman": "^10.1.0",
26
+ "@theforeman/stories": "^10.1.0",
27
+ "@theforeman/test": "^10.1.0",
28
+ "@theforeman/vendor-dev": "^10.1.0",
29
29
  "babel-eslint": "^10.0.0",
30
30
  "eslint": "^6.8.0",
31
31
  "prettier": "^1.19.1",
32
- "@patternfly/react-catalog-view-extension": "^4.8.126",
33
32
  "redux-mock-store": "^1.2.2",
34
33
  "graphql-tag": "^2.11.0",
35
34
  "graphql": "^15.5.0"
36
35
  },
37
36
  "peerDependencies": {
38
- "@theforeman/vendor": "^8.16.0"
37
+ "@theforeman/vendor": "^10.1.0"
39
38
  }
40
39
  }
@@ -67,7 +67,8 @@ class ForemanRemoteExecutionHostExtensionsTest < ActiveSupport::TestCase
67
67
  it 'should only have one execution interface' do
68
68
  host.interfaces << FactoryBot.build(:nic_managed)
69
69
  host.interfaces.each { |interface| interface.execution = true }
70
- _(host).wont_be :valid?
70
+ _(host).must_be :valid?
71
+ _(host.interfaces.count(&:execution?)).must_equal 1
71
72
  end
72
73
 
73
74
  it 'returns the execution interface' do
@@ -6,9 +6,11 @@ class RemoteExecutionProviderTest < ActiveSupport::TestCase
6
6
  it { _(providers).must_be_kind_of HashWithIndifferentAccess }
7
7
  it 'makes providers accessible using symbol' do
8
8
  _(providers[:SSH]).must_equal SSHExecutionProvider
9
+ _(providers[:script]).must_equal ScriptExecutionProvider
9
10
  end
10
11
  it 'makes providers accessible using string' do
11
12
  _(providers['SSH']).must_equal SSHExecutionProvider
13
+ _(providers['script']).must_equal ScriptExecutionProvider
12
14
  end
13
15
  end
14
16
 
@@ -21,6 +21,7 @@ import {
21
21
  selectJobTemplate,
22
22
  selectIsSubmitting,
23
23
  selectRouterSearch,
24
+ selectIsLoading,
24
25
  } from './JobWizardSelectors';
25
26
  import Schedule from './steps/Schedule/';
26
27
  import HostsAndInputs from './steps/HostsAndInputs/';
@@ -130,9 +131,14 @@ export const JobWizard = () => {
130
131
  const templateError = !!useSelector(selectTemplateError);
131
132
  const templateResponse = useSelector(selectJobTemplate);
132
133
  const isSubmitting = useSelector(selectIsSubmitting);
134
+ const isTemplatesLoading = useSelector(state =>
135
+ selectIsLoading(state, JOB_TEMPLATE)
136
+ );
133
137
  const isTemplate =
134
- !templateError && !!jobTemplateID && templateResponse.job_template;
135
-
138
+ !isTemplatesLoading &&
139
+ !templateError &&
140
+ !!jobTemplateID &&
141
+ templateResponse.job_template;
136
142
  const steps = [
137
143
  {
138
144
  name: WIZARD_TITLES.categoryAndTemplate,