daemontools 0.2.6 → 0.2.7

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: f5703423d017dfd15356942bfb9c15b1bf90a0066e0ee3cb44d6465c0028a926
4
- data.tar.gz: f7cb58a362f20b50c777a935b9468d7ca290b6d1f9c655321dc37d0b3103b069
3
+ metadata.gz: c22463b5a826586d0334a8f8d42f3e9d5dca647c5075073e3039770be063e515
4
+ data.tar.gz: a9d89cdc0cb3d1bbdf0bd81dc2261a31a3d87fa7f1cec48d67ee7780a5fe5aa8
5
5
  SHA512:
6
- metadata.gz: 990027123b11e7049fe904a19ac9fe30ae0fdbd6823a61d3640d0e9506f95daec95d6d7fa09878ef18d8fcf89a1d5682aec99591eb35e6134a16a4901cdfd27c
7
- data.tar.gz: 5d668f9a9bcd887332110e549e738a29bbfcce6e696cf45c57fa27545d5d54a3d2f91116562cefdeb81dc26d349b423ae1fd69e4688a4a23caf1510d2a9343b0
6
+ metadata.gz: 71c1a4bf680ac3cdef9be0767e3eabb7e2314fd4e3874c0dced95b028683b512df8c8c968b60d7d71e052fd397658fce097acd44bf8918506c7e9c9a3feb2200
7
+ data.tar.gz: aed7e1991483a5f2f521f4c9cfe93af72c3e274710b172dd98baf9b80ef08aba74add43192e4947b4c8e7a392b8bb10ff96bb78007ee10a5bfcbe95df5477bd1
@@ -31,3 +31,7 @@ end
31
31
  service :service_new_2, :roles => [:new_role] do
32
32
  command1 "service_new_2 arg1"
33
33
  end
34
+
35
+ service :service4, :roles => [:role_renamed] do
36
+ command3 "script/service4 argument1"
37
+ end
@@ -35,3 +35,7 @@ end
35
35
  service :deleted_service_3, :roles => [:role_deleted] do
36
36
  command3 "script/deleted_service_3 argument1"
37
37
  end
38
+
39
+ service :service4, :roles => [:role_to_rename] do
40
+ command3 "script/service4 argument1"
41
+ end
@@ -6,8 +6,8 @@ module Daemontools
6
6
  true
7
7
  end
8
8
 
9
- def delete_services(service_names, role)
10
- find_services_by_name(service_names, role).map(&:first)
9
+ def delete_services(service_names)
10
+ service_names
11
11
  end
12
12
  end
13
13
  end
@@ -5,9 +5,7 @@ module Daemontools
5
5
  def remove_unused_services
6
6
  return if @deleted_services.empty?
7
7
 
8
- @deleted_services.map do |role, services|
9
- @previous_builder.delete_services(services, role)
10
- end
8
+ @previous_builder.delete_services(@deleted_services)
11
9
  end
12
10
  end
13
11
  end
@@ -72,9 +72,8 @@ module Daemontools
72
72
  @delete_command = cmd.empty? ? nil : cmd
73
73
  end
74
74
 
75
- def delete_services(service_names, role)
76
- services = find_services_by_name(service_names, role)
77
- services.each { |service| Daemontools.delete(service[0], @delete_command) }
75
+ def delete_services(services)
76
+ services.each { |service| Daemontools.delete(service, @delete_command) }
78
77
  end
79
78
 
80
79
  def find_services_by_name(service_names, role)
@@ -15,22 +15,21 @@ module Daemontools
15
15
  def remove_unused_services
16
16
  return if @deleted_services.empty?
17
17
 
18
- @deleted_services.each do |role, services|
19
- puts "Delete services #{services} for role #{role}"
20
- @previous_builder.delete_services(services, role)
21
- end
18
+ puts "Services for delete: #{@deleted_services.join(', ')}"
19
+ @previous_builder.delete_services(@deleted_services)
22
20
  end
23
21
 
24
22
  private
25
23
 
26
24
  def find_services_changes(old_services, new_services)
27
- @deleted_services = {}
28
- @roles.each do |role|
29
- old_role_services = (old_services[role] || []).map(&:first)
30
- new_role_services = (new_services[role] || []).map(&:first)
31
- services_for_del = old_role_services - new_role_services
32
- @deleted_services[role] = services_for_del unless services_for_del.empty?
33
- end
25
+ old_services_for_server = services_for_roles(old_services, @roles)
26
+ new_services_for_server = services_for_roles(new_services, @roles)
27
+ @deleted_services = old_services_for_server - new_services_for_server
28
+ end
29
+
30
+ # Extracting service names for roles from config
31
+ def services_for_roles(services, roles)
32
+ services.values_at(*roles).flatten(1).compact.map(&:first).compact.uniq
34
33
  end
35
34
  end
36
35
  end
@@ -1,3 +1,3 @@
1
1
  module Daemontools
2
- VERSION = "0.2.6"
2
+ VERSION = "0.2.7"
3
3
  end
@@ -14,18 +14,22 @@ RSpec.describe Daemontools::Remover, '#initialize' do
14
14
 
15
15
  remover = Daemontools::RemoverStub.new(roles, old_builder, new_builder)
16
16
  deleted = remover.deleted_services
17
- deleted_roles = %i[role_with_deleted role_with_modifies role_deleted]
17
+ deleted_services = %i[deleted_service_1 deleted_service_2 deleted_service_3]
18
18
 
19
19
  context 'Check roles where services were deleted' do
20
20
  it 'Number of roles for deleted services must be equal to length of deleted roles' do
21
- expect(deleted.keys.size).to eq deleted_roles.length
21
+ expect(deleted.size).to eq deleted_services.length
22
22
  end
23
23
 
24
- deleted.each_key do |role|
25
- it "Should contain #{role}" do
26
- expect(deleted_roles.include?(role)).to eq true
24
+ deleted.each do |service_name|
25
+ it "Should contain #{service_name}" do
26
+ expect(deleted_services.include?(service_name)).to eq true
27
27
  end
28
28
  end
29
+
30
+ it 'Include service from renamed role' do
31
+ expect(deleted_services.include?('service4')).to eq false
32
+ end
29
33
  end
30
34
 
31
35
  context 'Removing unused services' do
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: daemontools
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.6
4
+ version: 0.2.7
5
5
  platform: ruby
6
6
  authors:
7
7
  - sh
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-03-03 00:00:00.000000000 Z
11
+ date: 2022-04-01 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler