pg-ephemeral 0.0.4-aarch64-linux → 0.0.8-aarch64-linux

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (4) hide show
  1. checksums.yaml +4 -4
  2. data/bin/pg-ephemeral +0 -0
  3. data/lib/pg_ephemeral.rb +18 -24
  4. metadata +1 -1
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 9d3f93635aaa28ab05b239aee28bb52e2f65c1af9d40064267a70e30442688a8
4
- data.tar.gz: e7f4189c504c755c4ff6b29da3d00e4182773ac32faaa83c95398b6a50be37b5
3
+ metadata.gz: 9eaca1c932bfd68a7e1f09b27780d83c3bcc0256264116e66e7a5be401e0855e
4
+ data.tar.gz: 67d68fa2d8ac788c2a3d9e327e2e655d8fe8a9a226e95a624d4debe65305c00c
5
5
  SHA512:
6
- metadata.gz: 253b0726496dcfb34f9c0e8054371be2c6e3793b9ee6aa8128269690cdd41ff37e370986b1dafa468e894e09695102d6a0fd2bbacf5c128b248c2f0617bb858c
7
- data.tar.gz: 9e706938fad129070780ffd74bfa237943bc6f1991d28524ab1f9eea317908b01f7431790cce95f8d22489b979ec7bd8e8a1957d94eb43401af00e104aca5e8a
6
+ metadata.gz: 9262288fcfc09159cc5c5497efb7f1726c56f619bf554f2be50f64e486e5753ecf3b4e432493fa73b001a0b31254331a1ab2af51a0bcbde7fce8e44882592f58
7
+ data.tar.gz: 7a231bd84bd744d3d60da7809632174b0f2e252fab77fd2c625d85fce77dc1fd36b3935f42432e8f61cf3f74bc94a25dad37bd524cd6cfab69ac07852e1646b0
data/bin/pg-ephemeral CHANGED
Binary file
data/lib/pg_ephemeral.rb CHANGED
@@ -33,32 +33,12 @@ module PgEphemeral
33
33
  status.success?
34
34
  end
35
35
 
36
- def self.with_server(instance_name: 'main', config: nil, &block)
37
- run_server(instance_name, config, &block)
38
- end
39
-
40
- def self.with_connection(instance_name: 'main', config: nil, &block)
41
- with_server(instance_name: instance_name, config: config) do |server|
42
- connection = PG.connect(server.url)
43
-
44
- begin
45
- block.call(connection)
46
- ensure
47
- connection.close
48
- end
49
- end
50
- end
51
-
52
- def self.run_server(instance_name, config, &block)
36
+ def self.start(instance_name: 'main', config: nil)
53
37
  result_read, result_write = IO.pipe
54
38
  control_read, control_write = IO.pipe
55
39
 
56
40
  command = [binary_path]
57
-
58
- if config
59
- command.concat(['--config-file', config])
60
- end
61
-
41
+ command.concat(['--config-file', config]) if config
62
42
  command.concat([
63
43
  'integration-server',
64
44
  '--instance', instance_name,
@@ -77,15 +57,29 @@ module PgEphemeral
77
57
  raise 'Failed to read server configuration' unless config_json
78
58
 
79
59
  url = JSON.parse(config_json).fetch('url')
80
- server = Server.new(url, control_write, pid)
60
+ Server.new(url, control_write, pid)
61
+ end
81
62
 
63
+ def self.with_server(instance_name: 'main', config: nil, &block)
64
+ server = start(instance_name: instance_name, config: config)
82
65
  begin
83
66
  block.call(server)
84
67
  ensure
85
68
  server.shutdown
86
69
  end
87
70
  end
88
- private_class_method :run_server
71
+
72
+ def self.with_connection(instance_name: 'main', config: nil, &block)
73
+ with_server(instance_name: instance_name, config: config) do |server|
74
+ connection = PG.connect(server.url)
75
+
76
+ begin
77
+ block.call(connection)
78
+ ensure
79
+ connection.close
80
+ end
81
+ end
82
+ end
89
83
 
90
84
  class Server
91
85
  attr_reader :url
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: pg-ephemeral
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.4
4
+ version: 0.0.8
5
5
  platform: aarch64-linux
6
6
  authors:
7
7
  - Markus Schirp