hybrid_platforms_conductor 32.16.2 → 32.18.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (78) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +48 -0
  3. data/README.md +3 -0
  4. data/bin/last_deploys +4 -1
  5. data/bin/nodes_to_deploy +5 -5
  6. data/docs/config_dsl.md +22 -0
  7. data/docs/gen/mermaid/README.md-0.png +0 -0
  8. data/docs/gen/mermaid/docs/executables/check-node.md-0.png +0 -0
  9. data/docs/gen/mermaid/docs/executables/deploy.md-0.png +0 -0
  10. data/docs/gen/mermaid/docs/executables/free_ips.md-0.png +0 -0
  11. data/docs/gen/mermaid/docs/executables/get_impacted_nodes.md-0.png +0 -0
  12. data/docs/gen/mermaid/docs/executables/last_deploys.md-0.png +0 -0
  13. data/docs/gen/mermaid/docs/executables/nodes_to_deploy.md-0.png +0 -0
  14. data/docs/gen/mermaid/docs/executables/report.md-0.png +0 -0
  15. data/docs/gen/mermaid/docs/executables/run.md-0.png +0 -0
  16. data/docs/gen/mermaid/docs/executables/ssh_config.md-0.png +0 -0
  17. data/docs/gen/mermaid/docs/executables/test.md-0.png +0 -0
  18. data/docs/plugins.md +26 -0
  19. data/docs/plugins/connector/ssh.md +1 -1
  20. data/docs/plugins/log/remote_fs.md +26 -0
  21. data/docs/plugins/test/bitbucket_conf.md +1 -1
  22. data/docs/plugins/test/check_deploy_and_idempotence.md +1 -1
  23. data/docs/plugins/test/connection.md +1 -0
  24. data/docs/plugins/test/deploy_removes_root_access.md +1 -1
  25. data/docs/plugins/test/file_system.md +1 -0
  26. data/docs/plugins/test/github_ci.md +48 -0
  27. data/docs/plugins/test/hostname.md +1 -0
  28. data/docs/plugins/test/ip.md +1 -0
  29. data/docs/plugins/test/jenkins_ci_conf.md +1 -1
  30. data/docs/plugins/test/jenkins_ci_masters_ok.md +1 -1
  31. data/docs/plugins/test/local_users.md +1 -0
  32. data/docs/plugins/test/mounts.md +1 -0
  33. data/docs/plugins/test/orphan_files.md +1 -0
  34. data/docs/plugins/test/ports.md +1 -0
  35. data/docs/plugins/test/spectre.md +1 -0
  36. data/docs/plugins/test/vulnerabilities.md +1 -0
  37. data/lib/hybrid_platforms_conductor/actions_executor.rb +8 -1
  38. data/lib/hybrid_platforms_conductor/common_config_dsl/github.rb +62 -0
  39. data/lib/hybrid_platforms_conductor/deployer.rb +97 -105
  40. data/lib/hybrid_platforms_conductor/hpc_plugins/connector/ssh.rb +3 -3
  41. data/lib/hybrid_platforms_conductor/hpc_plugins/log/my_log_plugin.rb.sample +100 -0
  42. data/lib/hybrid_platforms_conductor/hpc_plugins/log/remote_fs.rb +179 -0
  43. data/lib/hybrid_platforms_conductor/hpc_plugins/platform_handler/serverless_chef.rb +2 -2
  44. data/lib/hybrid_platforms_conductor/hpc_plugins/test/check_deploy_and_idempotence.rb +1 -1
  45. data/lib/hybrid_platforms_conductor/hpc_plugins/test/connection.rb +3 -1
  46. data/lib/hybrid_platforms_conductor/hpc_plugins/test/deploy_freshness.rb +7 -20
  47. data/lib/hybrid_platforms_conductor/hpc_plugins/test/deploy_removes_root_access.rb +1 -1
  48. data/lib/hybrid_platforms_conductor/hpc_plugins/test/file_system.rb +2 -1
  49. data/lib/hybrid_platforms_conductor/hpc_plugins/test/github_ci.rb +32 -0
  50. data/lib/hybrid_platforms_conductor/hpc_plugins/test/hostname.rb +3 -1
  51. data/lib/hybrid_platforms_conductor/hpc_plugins/test/ip.rb +3 -1
  52. data/lib/hybrid_platforms_conductor/hpc_plugins/test/local_users.rb +3 -1
  53. data/lib/hybrid_platforms_conductor/hpc_plugins/test/mounts.rb +3 -1
  54. data/lib/hybrid_platforms_conductor/hpc_plugins/test/orphan_files.rb +3 -1
  55. data/lib/hybrid_platforms_conductor/hpc_plugins/test/ports.rb +3 -1
  56. data/lib/hybrid_platforms_conductor/hpc_plugins/test/spectre.rb +3 -1
  57. data/lib/hybrid_platforms_conductor/hpc_plugins/test/vulnerabilities.rb +2 -1
  58. data/lib/hybrid_platforms_conductor/log.rb +31 -0
  59. data/lib/hybrid_platforms_conductor/test_only_remote_node.rb +18 -0
  60. data/lib/hybrid_platforms_conductor/version.rb +1 -1
  61. data/spec/hybrid_platforms_conductor_test.rb +22 -6
  62. data/spec/hybrid_platforms_conductor_test/api/actions_executor/connectors/ssh/connections_spec.rb +3 -3
  63. data/spec/hybrid_platforms_conductor_test/api/deployer/config_dsl_spec.rb +24 -4
  64. data/spec/hybrid_platforms_conductor_test/api/deployer/deploy_spec.rb +187 -212
  65. data/spec/hybrid_platforms_conductor_test/api/deployer/log_plugins/remote_fs_spec.rb +223 -0
  66. data/spec/hybrid_platforms_conductor_test/api/deployer/provisioner_spec.rb +4 -4
  67. data/spec/hybrid_platforms_conductor_test/api/platform_handlers/serverless_chef/packaging_spec.rb +2 -2
  68. data/spec/hybrid_platforms_conductor_test/api/tests_runner/global_spec.rb +1 -1
  69. data/spec/hybrid_platforms_conductor_test/api/tests_runner/test_plugins/github_ci_spec.rb +72 -0
  70. data/spec/hybrid_platforms_conductor_test/executables/last_deploys_spec.rb +146 -98
  71. data/spec/hybrid_platforms_conductor_test/executables/nodes_to_deploy_spec.rb +240 -83
  72. data/spec/hybrid_platforms_conductor_test/executables/options/common_spec.rb +2 -1
  73. data/spec/hybrid_platforms_conductor_test/helpers/connector_ssh_helpers.rb +1 -1
  74. data/spec/hybrid_platforms_conductor_test/helpers/deployer_helpers.rb +40 -53
  75. data/spec/hybrid_platforms_conductor_test/helpers/deployer_test_helpers.rb +2 -2
  76. data/spec/hybrid_platforms_conductor_test/test_log_no_read_plugin.rb +82 -0
  77. data/spec/hybrid_platforms_conductor_test/test_log_plugin.rb +103 -0
  78. metadata +30 -2
@@ -69,7 +69,7 @@ module HybridPlatformsConductorTest
69
69
  }
70
70
  end
71
71
  end
72
- actions << proc { |actions_per_nodes| expect_actions_to_upload_logs(actions_per_nodes, services.keys, sudo: sudo) }
72
+ actions << proc { |actions_per_nodes| expect_actions_to_upload_logs(actions_per_nodes, services.keys) }
73
73
  end
74
74
  actions
75
75
  end
@@ -109,7 +109,7 @@ module HybridPlatformsConductorTest
109
109
  additional_config: ''
110
110
  )
111
111
  platform_name = check_mode ? 'platform' : 'my_remote_platform'
112
- with_test_platform(nodes_info, !check_mode, additional_config) do |repository|
112
+ with_test_platform(nodes_info, !check_mode, additional_config + "\nsend_logs_to :test_log") do |repository|
113
113
  # Mock the ServicesHandler accesses
114
114
  expect_services_to_deploy = Hash[nodes_info[:nodes].map do |node, node_info|
115
115
  [node, node_info[:services]]
@@ -0,0 +1,82 @@
1
+ module HybridPlatformsConductorTest
2
+
3
+ # Test log without reading actions
4
+ class TestLogNoReadPlugin < HybridPlatformsConductor::Log
5
+
6
+ class << self
7
+ attr_accessor :calls
8
+ end
9
+
10
+ # Get actions to save logs
11
+ # [API] - This method is mandatory.
12
+ # [API] - The following API components are accessible:
13
+ # * *@config* (Config): Main configuration API.
14
+ # * *@nodes_handler* (NodesHandler): Nodes handler API.
15
+ # * *@actions_executor* (ActionsExecutor): Actions executor API.
16
+ #
17
+ # Parameters::
18
+ # * *node* (String): Node for which logs are being saved
19
+ # * *services* (Array<String>): The list of services that have been deployed on this node
20
+ # * *deployment_info* (Hash<Symbol,Object>): Additional information to attach to the logs
21
+ # * *exit_status* (Integer or Symbol): Exit status of the deployment
22
+ # * *stdout* (String): Deployment's stdout
23
+ # * *stderr* (String): Deployment's stderr
24
+ # Result::
25
+ # * Array< Hash<Symbol,Object> >: List of actions to be done
26
+ def actions_to_save_logs(node, services, deployment_info, exit_status, stdout, stderr)
27
+ TestLogNoReadPlugin.calls << {
28
+ method: :actions_to_save_logs,
29
+ node: node,
30
+ services: services,
31
+ # Don't store the date
32
+ deployment_info: deployment_info.select { |k, _v| k != :date },
33
+ exit_status: exit_status,
34
+ stdout: stdout,
35
+ stderr: stderr
36
+ }
37
+ [{ bash: "echo Save test logs to #{node}" }]
38
+ end
39
+
40
+ # Get deployment logs from a node.
41
+ # This method can use the result of actions previously run to read logs, as returned by the actions_to_read_logs method.
42
+ # [API] - This method is mandatory.
43
+ # [API] - The following API components are accessible:
44
+ # * *@config* (Config): Main configuration API.
45
+ # * *@nodes_handler* (NodesHandler): Nodes handler API.
46
+ # * *@actions_executor* (ActionsExecutor): Actions executor API.
47
+ #
48
+ # Parameters::
49
+ # * *node* (String): The node we want deployment logs from
50
+ # * *exit_status* (Integer, Symbol or nil): Exit status of actions to read logs, or nil if no action was returned by actions_to_read_logs
51
+ # * *stdout* (String or nil): stdout of actions to read logs, or nil if no action was returned by actions_to_read_logs
52
+ # * *stderr* (String or nil): stderr of actions to read logs, or nil if no action was returned by actions_to_read_logs
53
+ # Result::
54
+ # * Hash<Symbol,Object>: Deployment log information:
55
+ # * *error* (String): Error string in case deployment logs could not be retrieved. If set then further properties will be ignored. [optional]
56
+ # * *services* (Array<String>): List of services deployed on the node
57
+ # * *deployment_info* (Hash<Symbol,Object>): Deployment metadata
58
+ # * *exit_status* (Integer or Symbol): Deployment exit status
59
+ # * *stdout* (String): Deployment stdout
60
+ # * *stderr* (String): Deployment stderr
61
+ def logs_for(node, exit_status, stdout, stderr)
62
+ TestLogNoReadPlugin.calls << {
63
+ method: :logs_for,
64
+ node: node,
65
+ exit_status: exit_status,
66
+ stdout: stdout,
67
+ stderr: stderr
68
+ }
69
+ {
70
+ services: %w[unknown],
71
+ deployment_info: {
72
+ user: 'test_user'
73
+ },
74
+ exit_status: 666,
75
+ stdout: 'Deployment test stdout',
76
+ stderr: 'Deployment test stderr'
77
+ }
78
+ end
79
+
80
+ end
81
+
82
+ end
@@ -0,0 +1,103 @@
1
+ module HybridPlatformsConductorTest
2
+
3
+ # Test log
4
+ class TestLogPlugin < HybridPlatformsConductor::Log
5
+
6
+ class << self
7
+ attr_accessor :calls
8
+ end
9
+
10
+ # Get actions to save logs
11
+ # [API] - This method is mandatory.
12
+ # [API] - The following API components are accessible:
13
+ # * *@config* (Config): Main configuration API.
14
+ # * *@nodes_handler* (NodesHandler): Nodes handler API.
15
+ # * *@actions_executor* (ActionsExecutor): Actions executor API.
16
+ #
17
+ # Parameters::
18
+ # * *node* (String): Node for which logs are being saved
19
+ # * *services* (Array<String>): The list of services that have been deployed on this node
20
+ # * *deployment_info* (Hash<Symbol,Object>): Additional information to attach to the logs
21
+ # * *exit_status* (Integer or Symbol): Exit status of the deployment
22
+ # * *stdout* (String): Deployment's stdout
23
+ # * *stderr* (String): Deployment's stderr
24
+ # Result::
25
+ # * Array< Hash<Symbol,Object> >: List of actions to be done
26
+ def actions_to_save_logs(node, services, deployment_info, exit_status, stdout, stderr)
27
+ TestLogPlugin.calls << {
28
+ method: :actions_to_save_logs,
29
+ node: node,
30
+ services: services,
31
+ # Don't store the date
32
+ deployment_info: deployment_info.select { |k, _v| k != :date },
33
+ exit_status: exit_status,
34
+ stdout: stdout,
35
+ stderr: stderr
36
+ }
37
+ [{ bash: "echo Save test logs to #{node}" }]
38
+ end
39
+
40
+ # Get actions to read logs.
41
+ # If provided, this method can return some actions to be executed that will fetch logs from servers or remote nodes.
42
+ # By using this method to run actions instead of the synchronous method logs_from, such actions will be run in parallel which can greatly improve time-consuming operations when querying a lot of nodes.
43
+ # [API] - This method is optional.
44
+ # [API] - The following API components are accessible:
45
+ # * *@config* (Config): Main configuration API.
46
+ # * *@nodes_handler* (NodesHandler): Nodes handler API.
47
+ # * *@actions_executor* (ActionsExecutor): Actions executor API.
48
+ #
49
+ # Parameters::
50
+ # * *node* (String): Node for which deployment logs are being read
51
+ # Result::
52
+ # * Array< Hash<Symbol,Object> >: List of actions to be done
53
+ def actions_to_read_logs(node)
54
+ TestLogPlugin.calls << {
55
+ method: :actions_to_read_logs,
56
+ node: node
57
+ }
58
+ [{ bash: "echo Read logs for #{node}" }]
59
+ end
60
+
61
+ # Get deployment logs from a node.
62
+ # This method can use the result of actions previously run to read logs, as returned by the actions_to_read_logs method.
63
+ # [API] - This method is mandatory.
64
+ # [API] - The following API components are accessible:
65
+ # * *@config* (Config): Main configuration API.
66
+ # * *@nodes_handler* (NodesHandler): Nodes handler API.
67
+ # * *@actions_executor* (ActionsExecutor): Actions executor API.
68
+ #
69
+ # Parameters::
70
+ # * *node* (String): The node we want deployment logs from
71
+ # * *exit_status* (Integer, Symbol or nil): Exit status of actions to read logs, or nil if no action was returned by actions_to_read_logs
72
+ # * *stdout* (String or nil): stdout of actions to read logs, or nil if no action was returned by actions_to_read_logs
73
+ # * *stderr* (String or nil): stderr of actions to read logs, or nil if no action was returned by actions_to_read_logs
74
+ # Result::
75
+ # * Hash<Symbol,Object>: Deployment log information:
76
+ # * *error* (String): Error string in case deployment logs could not be retrieved. If set then further properties will be ignored. [optional]
77
+ # * *services* (Array<String>): List of services deployed on the node
78
+ # * *deployment_info* (Hash<Symbol,Object>): Deployment metadata
79
+ # * *exit_status* (Integer or Symbol): Deployment exit status
80
+ # * *stdout* (String): Deployment stdout
81
+ # * *stderr* (String): Deployment stderr
82
+ def logs_for(node, exit_status, stdout, stderr)
83
+ TestLogPlugin.calls << {
84
+ method: :logs_for,
85
+ node: node,
86
+ exit_status: exit_status,
87
+ stdout: stdout,
88
+ stderr: stderr
89
+ }
90
+ {
91
+ services: %w[unknown],
92
+ deployment_info: {
93
+ user: 'test_user'
94
+ },
95
+ exit_status: 666,
96
+ stdout: 'Deployment test stdout',
97
+ stderr: 'Deployment test stderr'
98
+ }
99
+ end
100
+
101
+ end
102
+
103
+ end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: hybrid_platforms_conductor
3
3
  version: !ruby/object:Gem::Version
4
- version: 32.16.2
4
+ version: 32.18.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Muriel Salvan
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-06-01 00:00:00.000000000 Z
11
+ date: 2021-06-14 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: range_operators
@@ -248,6 +248,20 @@ dependencies:
248
248
  - - "~>"
249
249
  - !ruby/object:Gem::Version
250
250
  version: '0.16'
251
+ - !ruby/object:Gem::Dependency
252
+ name: octokit
253
+ requirement: !ruby/object:Gem::Requirement
254
+ requirements:
255
+ - - "~>"
256
+ - !ruby/object:Gem::Version
257
+ version: '4.21'
258
+ type: :runtime
259
+ prerelease: false
260
+ version_requirements: !ruby/object:Gem::Requirement
261
+ requirements:
262
+ - - "~>"
263
+ - !ruby/object:Gem::Version
264
+ version: '4.21'
251
265
  - !ruby/object:Gem::Dependency
252
266
  name: rspec
253
267
  requirement: !ruby/object:Gem::Requirement
@@ -340,11 +354,13 @@ extra_rdoc_files:
340
354
  - docs/executables/dump_nodes_json.md
341
355
  - docs/plugins/platform_handler/serverless_chef.md
342
356
  - docs/plugins/platform_handler/yaml_inventory.md
357
+ - docs/plugins/log/remote_fs.md
343
358
  - docs/plugins/provisioner/proxmox.md
344
359
  - docs/plugins/provisioner/podman.md
345
360
  - docs/plugins/provisioner/docker.md
346
361
  - docs/plugins/test/spectre.md
347
362
  - docs/plugins/test/bitbucket_conf.md
363
+ - docs/plugins/test/github_ci.md
348
364
  - docs/plugins/test/vulnerabilities.md
349
365
  - docs/plugins/test/deploy_removes_root_access.md
350
366
  - docs/plugins/test/private_ips.md
@@ -518,6 +534,7 @@ files:
518
534
  - docs/plugins/cmdb/platform_handlers.md
519
535
  - docs/plugins/connector/local.md
520
536
  - docs/plugins/connector/ssh.md
537
+ - docs/plugins/log/remote_fs.md
521
538
  - docs/plugins/platform_handler/serverless_chef.md
522
539
  - docs/plugins/platform_handler/yaml_inventory.md
523
540
  - docs/plugins/provisioner/docker.md
@@ -538,6 +555,7 @@ files:
538
555
  - docs/plugins/test/executables.md
539
556
  - docs/plugins/test/file_system.md
540
557
  - docs/plugins/test/file_system_hdfs.md
558
+ - docs/plugins/test/github_ci.md
541
559
  - docs/plugins/test/hostname.md
542
560
  - docs/plugins/test/idempotence.md
543
561
  - docs/plugins/test/ip.md
@@ -640,6 +658,7 @@ files:
640
658
  - lib/hybrid_platforms_conductor/common_config_dsl/bitbucket.rb
641
659
  - lib/hybrid_platforms_conductor/common_config_dsl/confluence.rb
642
660
  - lib/hybrid_platforms_conductor/common_config_dsl/file_system_tests.rb
661
+ - lib/hybrid_platforms_conductor/common_config_dsl/github.rb
643
662
  - lib/hybrid_platforms_conductor/common_config_dsl/idempotence_tests.rb
644
663
  - lib/hybrid_platforms_conductor/config.rb
645
664
  - lib/hybrid_platforms_conductor/confluence.rb
@@ -662,6 +681,8 @@ files:
662
681
  - lib/hybrid_platforms_conductor/hpc_plugins/connector/local.rb
663
682
  - lib/hybrid_platforms_conductor/hpc_plugins/connector/my_connector.rb.sample
664
683
  - lib/hybrid_platforms_conductor/hpc_plugins/connector/ssh.rb
684
+ - lib/hybrid_platforms_conductor/hpc_plugins/log/my_log_plugin.rb.sample
685
+ - lib/hybrid_platforms_conductor/hpc_plugins/log/remote_fs.rb
665
686
  - lib/hybrid_platforms_conductor/hpc_plugins/platform_handler/platform_handler_plugin.rb.sample
666
687
  - lib/hybrid_platforms_conductor/hpc_plugins/platform_handler/serverless_chef.rb
667
688
  - lib/hybrid_platforms_conductor/hpc_plugins/platform_handler/serverless_chef/dsl_parser.rb
@@ -690,6 +711,7 @@ files:
690
711
  - lib/hybrid_platforms_conductor/hpc_plugins/test/executables.rb
691
712
  - lib/hybrid_platforms_conductor/hpc_plugins/test/file_system.rb
692
713
  - lib/hybrid_platforms_conductor/hpc_plugins/test/file_system_hdfs.rb
714
+ - lib/hybrid_platforms_conductor/hpc_plugins/test/github_ci.rb
693
715
  - lib/hybrid_platforms_conductor/hpc_plugins/test/hostname.rb
694
716
  - lib/hybrid_platforms_conductor/hpc_plugins/test/idempotence.rb
695
717
  - lib/hybrid_platforms_conductor/hpc_plugins/test/ip.rb
@@ -715,6 +737,7 @@ files:
715
737
  - lib/hybrid_platforms_conductor/hpc_plugins/test_report/templates/confluence.html.erb
716
738
  - lib/hybrid_platforms_conductor/io_router.rb
717
739
  - lib/hybrid_platforms_conductor/json_dumper.rb
740
+ - lib/hybrid_platforms_conductor/log.rb
718
741
  - lib/hybrid_platforms_conductor/logger_helpers.rb
719
742
  - lib/hybrid_platforms_conductor/mutex_dir
720
743
  - lib/hybrid_platforms_conductor/nodes_handler.rb
@@ -729,6 +752,7 @@ files:
729
752
  - lib/hybrid_platforms_conductor/services_handler.rb
730
753
  - lib/hybrid_platforms_conductor/test.rb
731
754
  - lib/hybrid_platforms_conductor/test_by_service.rb
755
+ - lib/hybrid_platforms_conductor/test_only_remote_node.rb
732
756
  - lib/hybrid_platforms_conductor/test_report.rb
733
757
  - lib/hybrid_platforms_conductor/tests_runner.rb
734
758
  - lib/hybrid_platforms_conductor/thycotic.rb
@@ -764,6 +788,7 @@ files:
764
788
  - spec/hybrid_platforms_conductor_test/api/deployer/check_spec.rb
765
789
  - spec/hybrid_platforms_conductor_test/api/deployer/config_dsl_spec.rb
766
790
  - spec/hybrid_platforms_conductor_test/api/deployer/deploy_spec.rb
791
+ - spec/hybrid_platforms_conductor_test/api/deployer/log_plugins/remote_fs_spec.rb
767
792
  - spec/hybrid_platforms_conductor_test/api/deployer/parse_deploy_output_spec.rb
768
793
  - spec/hybrid_platforms_conductor_test/api/deployer/provisioner_spec.rb
769
794
  - spec/hybrid_platforms_conductor_test/api/deployer/provisioners/docker/Dockerfile
@@ -819,6 +844,7 @@ files:
819
844
  - spec/hybrid_platforms_conductor_test/api/tests_runner/platform_spec.rb
820
845
  - spec/hybrid_platforms_conductor_test/api/tests_runner/reports_spec.rb
821
846
  - spec/hybrid_platforms_conductor_test/api/tests_runner/test_plugins/bitbucket_conf_spec.rb
847
+ - spec/hybrid_platforms_conductor_test/api/tests_runner/test_plugins/github_ci_spec.rb
822
848
  - spec/hybrid_platforms_conductor_test/api/tests_runner/test_reports_plugins/confluence_spec.rb
823
849
  - spec/hybrid_platforms_conductor_test/cmdb_plugins/test_cmdb.rb
824
850
  - spec/hybrid_platforms_conductor_test/cmdb_plugins/test_cmdb2.rb
@@ -905,6 +931,8 @@ files:
905
931
  - spec/hybrid_platforms_conductor_test/serverless_chef_repositories/several_nodes/policyfiles/test_policy_2.rb
906
932
  - spec/hybrid_platforms_conductor_test/test_action.rb
907
933
  - spec/hybrid_platforms_conductor_test/test_connector.rb
934
+ - spec/hybrid_platforms_conductor_test/test_log_no_read_plugin.rb
935
+ - spec/hybrid_platforms_conductor_test/test_log_plugin.rb
908
936
  - spec/hybrid_platforms_conductor_test/test_plugins/global.rb
909
937
  - spec/hybrid_platforms_conductor_test/test_plugins/node.rb
910
938
  - spec/hybrid_platforms_conductor_test/test_plugins/node_check.rb