foreman-tasks 3.0.0 → 4.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (74) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/js_tests.yml +5 -1
  3. data/app/controllers/foreman_tasks/api/tasks_controller.rb +19 -5
  4. data/app/lib/actions/entry_action.rb +8 -4
  5. data/app/lib/actions/helpers/lock.rb +11 -5
  6. data/app/lib/actions/middleware/keep_current_request_id.rb +4 -1
  7. data/app/lib/actions/middleware/keep_current_user.rb +11 -1
  8. data/app/lib/actions/observable_action.rb +80 -0
  9. data/app/models/foreman_tasks/concerns/action_subject.rb +0 -6
  10. data/app/models/foreman_tasks/link.rb +60 -0
  11. data/app/models/foreman_tasks/lock.rb +30 -128
  12. data/app/models/foreman_tasks/recurring_logic.rb +3 -3
  13. data/app/models/foreman_tasks/task.rb +20 -7
  14. data/app/models/foreman_tasks/task/search.rb +7 -6
  15. data/app/models/setting/foreman_tasks.rb +8 -8
  16. data/app/services/foreman_tasks/dashboard_table_filter.rb +5 -1
  17. data/app/views/foreman_tasks/api/locks/show.json.rabl +4 -0
  18. data/app/views/foreman_tasks/api/tasks/details.json.rabl +5 -3
  19. data/app/views/foreman_tasks/layouts/react.html.erb +1 -2
  20. data/app/views/foreman_tasks/tasks/_lock_card.html.erb +10 -0
  21. data/app/views/foreman_tasks/tasks/dashboard/_latest_tasks_in_error_warning.html.erb +1 -1
  22. data/app/views/foreman_tasks/tasks/dashboard/_tasks_status.html.erb +1 -1
  23. data/app/views/foreman_tasks/tasks/show.html.erb +1 -6
  24. data/db/migrate/20181206123910_create_foreman_tasks_links.foreman_tasks.rb +26 -0
  25. data/db/migrate/20181206124952_migrate_non_exclusive_locks_to_links.foreman_tasks.rb +14 -0
  26. data/db/migrate/20181206131436_drop_old_locks.foreman_tasks.rb +20 -0
  27. data/db/migrate/20181206131627_make_locks_exclusive.foreman_tasks.rb +25 -0
  28. data/foreman-tasks.gemspec +1 -0
  29. data/lib/foreman_tasks/cleaner.rb +10 -0
  30. data/lib/foreman_tasks/engine.rb +5 -2
  31. data/lib/foreman_tasks/tasks/export_tasks.rake +2 -2
  32. data/lib/foreman_tasks/version.rb +1 -1
  33. data/package.json +6 -6
  34. data/test/controllers/api/tasks_controller_test.rb +10 -0
  35. data/test/controllers/tasks_controller_test.rb +1 -1
  36. data/test/unit/actions/action_with_sub_plans_test.rb +5 -2
  37. data/test/unit/cleaner_test.rb +4 -4
  38. data/test/unit/locking_test.rb +85 -0
  39. data/test/unit/recurring_logic_test.rb +6 -0
  40. data/test/unit/task_test.rb +10 -0
  41. data/webpack/ForemanTasks/Components/TaskDetails/Components/Locks.js +2 -2
  42. data/webpack/ForemanTasks/Components/TaskDetails/Components/TaskInfo.js +3 -2
  43. data/webpack/ForemanTasks/Components/TaskDetails/Components/__tests__/__snapshots__/Locks.test.js.snap +4 -4
  44. data/webpack/ForemanTasks/Components/TaskDetails/Components/__tests__/__snapshots__/TaskInfo.test.js.snap +2 -0
  45. data/webpack/ForemanTasks/Components/TaskDetails/TaskDetails.js +4 -1
  46. data/webpack/ForemanTasks/Components/TaskDetails/TaskDetails.scss +14 -0
  47. data/webpack/ForemanTasks/Components/TaskDetails/TaskDetailsSelectors.js +3 -0
  48. data/webpack/ForemanTasks/Components/TaskDetails/index.js +2 -0
  49. data/webpack/ForemanTasks/Components/TasksDashboard/Components/TasksCardsGrid/Components/ScheduledTasksCard/ScheduledTasksCard.scss +4 -0
  50. data/webpack/ForemanTasks/Components/TasksDashboard/Components/TasksCardsGrid/Components/StoppedTasksCard/OtherInfo.js +53 -0
  51. data/webpack/ForemanTasks/Components/TasksDashboard/Components/TasksCardsGrid/Components/StoppedTasksCard/OtherInfo.test.js +14 -0
  52. data/webpack/ForemanTasks/Components/TasksDashboard/Components/TasksCardsGrid/Components/StoppedTasksCard/StoppedTasksCard.js +27 -19
  53. data/webpack/ForemanTasks/Components/TasksDashboard/Components/TasksCardsGrid/Components/StoppedTasksCard/StoppedTasksCard.scss +14 -0
  54. data/webpack/ForemanTasks/Components/TasksDashboard/Components/TasksCardsGrid/Components/StoppedTasksCard/StoppedTasksCard.test.js +1 -34
  55. data/webpack/ForemanTasks/Components/TasksDashboard/Components/TasksCardsGrid/Components/StoppedTasksCard/{StoppedTasksCardHelper.js → StoppedTasksCardTable.js} +28 -1
  56. data/webpack/ForemanTasks/Components/TasksDashboard/Components/TasksCardsGrid/Components/StoppedTasksCard/StoppedTasksCardTable.test.js +54 -0
  57. data/webpack/ForemanTasks/Components/TasksDashboard/Components/TasksCardsGrid/Components/StoppedTasksCard/__snapshots__/OtherInfo.test.js.snap +48 -0
  58. data/webpack/ForemanTasks/Components/TasksDashboard/Components/TasksCardsGrid/Components/StoppedTasksCard/__snapshots__/StoppedTasksCard.test.js.snap +60 -1367
  59. data/webpack/ForemanTasks/Components/TasksDashboard/Components/TasksCardsGrid/Components/StoppedTasksCard/__snapshots__/StoppedTasksCardTable.test.js.snap +960 -0
  60. data/webpack/ForemanTasks/Components/TasksDashboard/Components/TasksCardsGrid/__snapshots__/TasksCardsGrid.test.js.snap +14 -11
  61. data/webpack/ForemanTasks/Components/TasksDashboard/TasksDashboardConstants.js +2 -0
  62. data/webpack/ForemanTasks/Components/TasksDashboard/TasksDashboardSelectors.js +17 -11
  63. data/webpack/ForemanTasks/Components/TasksDashboard/__tests__/TasksDashboardSelectors.test.js +26 -14
  64. data/webpack/ForemanTasks/Components/TasksDashboard/__tests__/__snapshots__/TasksDashboard.test.js.snap +14 -11
  65. data/webpack/ForemanTasks/Components/TasksDashboard/__tests__/__snapshots__/TasksDashboardSelectors.test.js.snap +38 -22
  66. data/webpack/ForemanTasks/Components/TasksTable/TasksTableHelpers.js +0 -8
  67. data/webpack/ForemanTasks/Components/TasksTable/TasksTablePage.js +13 -4
  68. data/webpack/ForemanTasks/Components/TasksTable/TasksTablePage.scss +4 -13
  69. data/webpack/ForemanTasks/Components/TasksTable/__tests__/__snapshots__/TasksTablePage.test.js.snap +2 -4
  70. data/webpack/ForemanTasks/Components/TasksTable/formatters/__test__/__snapshots__/actionNameCellFormatter.test.js.snap +1 -0
  71. data/webpack/ForemanTasks/Components/TasksTable/formatters/actionNameCellFormatter.js +5 -1
  72. metadata +24 -11
  73. data/app/assets/stylesheets/foreman_tasks/tasks.scss +0 -9
  74. data/test/unit/lock_test.rb +0 -22
@@ -1,9 +0,0 @@
1
- .param-name {
2
- display: inline-block;
3
- width: 10em;
4
- }
5
-
6
- .task-details pre {
7
- white-space: pre;
8
- word-break: normal;
9
- }
@@ -1,22 +0,0 @@
1
- require 'ostruct'
2
- require 'foreman_tasks_test_helper'
3
-
4
- module ForemanTasks
5
- class LockTest < ::ActiveSupport::TestCase
6
- describe ::ForemanTasks::Lock::LockConflict do
7
- class FakeLockConflict < ForemanTasks::Lock::LockConflict
8
- def _(val)
9
- val.freeze
10
- end
11
- end
12
-
13
- it 'does not modify frozen strings' do
14
- required_lock = OpenStruct.new(:name => 'my_lock')
15
- # Before #21770 the next line would raise
16
- # RuntimeError: can't modify frozen String
17
- conflict = FakeLockConflict.new(required_lock, [])
18
- assert conflict._('this should be frozen').frozen?
19
- end
20
- end
21
- end
22
- end