syncwrap 2.6.2 → 2.7.0
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.
- checksums.yaml +4 -4
- data/History.rdoc +44 -0
- data/Manifest.txt +2 -0
- data/README.rdoc +3 -3
- data/bin/syncwrap +1 -1
- data/lib/syncwrap/amazon_ec2.rb +1 -1
- data/lib/syncwrap/amazon_ws.rb +51 -17
- data/lib/syncwrap/base.rb +2 -2
- data/lib/syncwrap/cli.rb +1 -1
- data/lib/syncwrap/component.rb +6 -1
- data/lib/syncwrap/components/amazon_linux.rb +1 -1
- data/lib/syncwrap/components/arch.rb +48 -5
- data/lib/syncwrap/components/bundle.rb +1 -1
- data/lib/syncwrap/components/bundled_iyyov_daemon.rb +1 -1
- data/lib/syncwrap/components/bundler_gem.rb +1 -1
- data/lib/syncwrap/components/centos.rb +1 -1
- data/lib/syncwrap/components/commercial_jdk.rb +2 -1
- data/lib/syncwrap/components/cruby_vm.rb +15 -11
- data/lib/syncwrap/components/debian.rb +46 -10
- data/lib/syncwrap/components/etc_hosts.rb +1 -1
- data/lib/syncwrap/components/geminabox.rb +1 -1
- data/lib/syncwrap/components/hashdot.rb +2 -2
- data/lib/syncwrap/components/iyyov.rb +1 -1
- data/lib/syncwrap/components/iyyov_daemon.rb +1 -1
- data/lib/syncwrap/components/jruby_vm.rb +13 -7
- data/lib/syncwrap/components/lvm_cache.rb +1 -1
- data/lib/syncwrap/components/mdraid.rb +1 -1
- data/lib/syncwrap/components/network.rb +1 -1
- data/lib/syncwrap/components/open_jdk.rb +1 -1
- data/lib/syncwrap/components/postgresql.rb +24 -4
- data/lib/syncwrap/components/puma.rb +1 -1
- data/lib/syncwrap/components/qpid.rb +1 -1
- data/lib/syncwrap/components/rake_gem.rb +1 -1
- data/lib/syncwrap/components/rhel.rb +38 -17
- data/lib/syncwrap/components/run_user.rb +1 -1
- data/lib/syncwrap/components/source_tree.rb +1 -1
- data/lib/syncwrap/components/tarpit_gem.rb +1 -1
- data/lib/syncwrap/components/ubuntu.rb +1 -1
- data/lib/syncwrap/components/users.rb +10 -1
- data/lib/syncwrap/context.rb +11 -1
- data/lib/syncwrap/distro.rb +10 -5
- data/lib/syncwrap/formatter.rb +1 -1
- data/lib/syncwrap/git_help.rb +1 -1
- data/lib/syncwrap/hash_support.rb +1 -1
- data/lib/syncwrap/host.rb +1 -1
- data/lib/syncwrap/main.rb +1 -1
- data/lib/syncwrap/path_util.rb +1 -1
- data/lib/syncwrap/rsync.rb +8 -17
- data/lib/syncwrap/ruby_support.rb +1 -1
- data/lib/syncwrap/shell.rb +1 -1
- data/lib/syncwrap/systemd.rb +1 -1
- data/lib/syncwrap/user_data.rb +1 -1
- data/lib/syncwrap/version_support.rb +1 -1
- data/lib/syncwrap/zone_balancer.rb +65 -0
- data/lib/syncwrap.rb +19 -6
- data/sync/postgresql/postgresql.conf.erb +27 -5
- data/test/setup.rb +1 -1
- data/test/test_components.rb +3 -1
- data/test/test_context.rb +1 -1
- data/test/test_context_rput.rb +1 -1
- data/test/test_rsync.rb +1 -1
- data/test/test_shell.rb +1 -1
- data/test/test_space.rb +1 -1
- data/test/test_space_main.rb +9 -2
- data/test/test_version_support.rb +1 -1
- data/test/test_zone_balancer.rb +48 -0
- metadata +4 -2
@@ -105,13 +105,13 @@ max_connections = 100 # (change requires restart)
|
|
105
105
|
# (change requires restart)
|
106
106
|
#ssl_prefer_server_ciphers = on # (change requires restart) (9.4+)
|
107
107
|
#ssl_ecdh_curve = 'prime256v1' # (change requires restart) (9.4+)
|
108
|
-
#ssl_renegotiation_limit = 512MB # amount of data between renegotiations
|
109
108
|
#ssl_cert_file = 'server.crt' # (change requires restart)
|
110
109
|
#ssl_key_file = 'server.key' # (change requires restart)
|
111
110
|
#ssl_ca_file = '' # (change requires restart)
|
112
111
|
#ssl_crl_file = '' # (change requires restart)
|
113
112
|
#password_encryption = on
|
114
113
|
#db_user_namespace = off
|
114
|
+
#row_security = on # (9.5+)
|
115
115
|
|
116
116
|
# GSSAPI using Kerberos
|
117
117
|
#krb_server_keyfile = ''
|
@@ -204,6 +204,7 @@ synchronous_commit = <%= synchronous_commit %> # synchronization level;
|
|
204
204
|
# fsync_writethrough
|
205
205
|
# open_sync
|
206
206
|
#full_page_writes = on # recover from partial page writes
|
207
|
+
#wal_compression = off # enable compression of full-page writes (9.5+)
|
207
208
|
#wal_log_hints = off # also do full page writes of non-critical updates
|
208
209
|
# (change requires restart) (9.4+)
|
209
210
|
#wal_buffers = -1 # min 32kB, -1 sets based on shared_buffers
|
@@ -214,15 +215,23 @@ commit_delay = <%= commit_delay %> # range 0-100000, in microseconds
|
|
214
215
|
#commit_siblings = 5 # range 1-1000
|
215
216
|
|
216
217
|
# - Checkpoints -
|
217
|
-
|
218
|
+
<% if version_gte?(pg_version, [9,5]) %>
|
219
|
+
min_wal_size = <%= min_wal_size %> # (9.5+)
|
220
|
+
<% if max_wal_size %>
|
221
|
+
max_wal_size = <%= max_wal_size %> # (9.5+)
|
222
|
+
<% else %>
|
223
|
+
#max_wal_size = 1GB # (9.5+)
|
224
|
+
<% end %>
|
225
|
+
<% else %>
|
218
226
|
checkpoint_segments = <%= checkpoint_segments %> # in logfile segments, min 1, 16MB each
|
227
|
+
<% end %>
|
219
228
|
#checkpoint_timeout = 5min # range 30s-1h
|
220
229
|
#checkpoint_completion_target = 0.5 # checkpoint target duration, 0.0 - 1.0
|
221
230
|
#checkpoint_warning = 30s # 0 disables
|
222
231
|
|
223
232
|
# - Archiving -
|
224
233
|
|
225
|
-
#archive_mode = off #
|
234
|
+
#archive_mode = off # enables archiving; off, on, (or 'always', 9.5+)
|
226
235
|
# (change requires restart)
|
227
236
|
#archive_command = '' # command to use to archive a logfile segment
|
228
237
|
# placeholders: %p = path of file to archive
|
@@ -246,6 +255,8 @@ checkpoint_segments = <%= checkpoint_segments %> # in logfile segments, min 1, 1
|
|
246
255
|
#wal_sender_timeout = 60s # in milliseconds; 0 disables (9.3+)
|
247
256
|
#max_replication_slots = 0 # max number of replication slots
|
248
257
|
# (change requires restart) (9.4+)
|
258
|
+
#track_commit_timestamp = off # collect timestamp of transaction commit
|
259
|
+
# (change requires restart) (9.5+)
|
249
260
|
|
250
261
|
# - Master Server -
|
251
262
|
|
@@ -275,6 +286,8 @@ checkpoint_segments = <%= checkpoint_segments %> # in logfile segments, min 1, 1
|
|
275
286
|
#wal_receiver_timeout = 60s # time that receiver waits for
|
276
287
|
# communication from master
|
277
288
|
# in milliseconds; 0 disables
|
289
|
+
#wal_retrieve_retry_interval = 5s # time to wait before retrying to
|
290
|
+
# retrieve WAL after a failed attempt (9.5+)
|
278
291
|
|
279
292
|
#------------------------------------------------------------------------------
|
280
293
|
# QUERY TUNING
|
@@ -447,11 +460,18 @@ log_line_prefix = '< %m >' # special values:
|
|
447
460
|
# e.g. '<%u%%%d> '
|
448
461
|
#log_lock_waits = off # log lock waits >= deadlock_timeout
|
449
462
|
#log_statement = 'none' # none, ddl, mod, all
|
463
|
+
#log_replication_commands = off # (9.5+)
|
450
464
|
#log_temp_files = -1 # log temporary files equal or larger
|
451
465
|
# than the specified size in kilobytes;
|
452
466
|
# -1 disables, 0 logs all temp files
|
453
467
|
log_timezone = 'UTC'
|
454
468
|
|
469
|
+
# - Process Title -
|
470
|
+
|
471
|
+
#cluster_name = '' # added to process titles if nonempty
|
472
|
+
# (change requires restart) (9.5+)
|
473
|
+
#update_process_title = on
|
474
|
+
|
455
475
|
#------------------------------------------------------------------------------
|
456
476
|
# RUNTIME STATISTICS
|
457
477
|
#------------------------------------------------------------------------------
|
@@ -463,7 +483,6 @@ log_timezone = 'UTC'
|
|
463
483
|
#track_io_timing = off
|
464
484
|
#track_functions = none # none, pl, all
|
465
485
|
#track_activity_query_size = 1024 # (change requires restart)
|
466
|
-
#update_process_title = on
|
467
486
|
#stats_temp_directory = 'pg_stat_tmp'
|
468
487
|
|
469
488
|
# - Statistics Monitoring -
|
@@ -510,7 +529,7 @@ log_timezone = 'UTC'
|
|
510
529
|
|
511
530
|
# - Statement Behavior -
|
512
531
|
|
513
|
-
#search_path = '"$user",public'
|
532
|
+
#search_path = '"$user", public' # schema names
|
514
533
|
#default_tablespace = '' # a tablespace name, '' uses the default
|
515
534
|
#temp_tablespaces = '' # a list of tablespace names, '' uses
|
516
535
|
# only default tablespace
|
@@ -528,6 +547,8 @@ log_timezone = 'UTC'
|
|
528
547
|
#bytea_output = 'hex' # hex, escape
|
529
548
|
#xmlbinary = 'base64'
|
530
549
|
#xmloption = 'content'
|
550
|
+
#gin_fuzzy_search_limit = 0 # (9.4+?)
|
551
|
+
#gin_pending_list_limit = 4MB # (9.5+)
|
531
552
|
|
532
553
|
# - Locale and Formatting -
|
533
554
|
|
@@ -585,6 +606,7 @@ default_text_search_config = 'pg_catalog.english'
|
|
585
606
|
#default_with_oids = off
|
586
607
|
#escape_string_warning = on
|
587
608
|
#lo_compat_privileges = off
|
609
|
+
#operator_precedence_warning = off # (9.5+)
|
588
610
|
#quote_all_identifiers = off
|
589
611
|
#sql_inheritance = on
|
590
612
|
#standard_conforming_strings = on
|
data/test/setup.rb
CHANGED
data/test/test_components.rb
CHANGED
@@ -2,7 +2,7 @@
|
|
2
2
|
#.hashdot.profile += jruby-shortlived
|
3
3
|
|
4
4
|
#--
|
5
|
-
# Copyright (c) 2011-
|
5
|
+
# Copyright (c) 2011-2016 David Kellum
|
6
6
|
#
|
7
7
|
# Licensed under the Apache License, Version 2.0 (the "License"); you
|
8
8
|
# may not use this file except in compliance with the License. You
|
@@ -35,6 +35,7 @@ module SyncWrap
|
|
35
35
|
[ Debian ],
|
36
36
|
[ Debian, CRubyVM ],
|
37
37
|
[ CentOS, CRubyVM ],
|
38
|
+
[ Arch, CRubyVM ],
|
38
39
|
[ EtcHosts ],
|
39
40
|
[ AmazonLinux, JRubyVM, RunUser, Iyyov, Geminabox ],
|
40
41
|
[ RHEL, JRubyVM, BundlerGem ],
|
@@ -76,6 +77,7 @@ module SyncWrap
|
|
76
77
|
[ Debian, PostgreSQL ],
|
77
78
|
[ Ubuntu, PostgreSQL ],
|
78
79
|
[ CentOS, PostgreSQL ],
|
80
|
+
[ CentOS, PostgreSQL, pg_version: '9.5' ],
|
79
81
|
[ RHEL, Qpid ],
|
80
82
|
[ CentOS, QpidRepo, qpid_prebuild_repo: 'http://localhost' ],
|
81
83
|
[ RHEL ],
|
data/test/test_context.rb
CHANGED
@@ -2,7 +2,7 @@
|
|
2
2
|
#.hashdot.profile += jruby-shortlived
|
3
3
|
|
4
4
|
#--
|
5
|
-
# Copyright (c) 2011-
|
5
|
+
# Copyright (c) 2011-2016 David Kellum
|
6
6
|
#
|
7
7
|
# Licensed under the Apache License, Version 2.0 (the "License"); you
|
8
8
|
# may not use this file except in compliance with the License. You
|
data/test/test_context_rput.rb
CHANGED
@@ -2,7 +2,7 @@
|
|
2
2
|
#.hashdot.profile += jruby-shortlived
|
3
3
|
|
4
4
|
#--
|
5
|
-
# Copyright (c) 2011-
|
5
|
+
# Copyright (c) 2011-2016 David Kellum
|
6
6
|
#
|
7
7
|
# Licensed under the Apache License, Version 2.0 (the "License"); you
|
8
8
|
# may not use this file except in compliance with the License. You
|
data/test/test_rsync.rb
CHANGED
@@ -2,7 +2,7 @@
|
|
2
2
|
#.hashdot.profile += jruby-shortlived
|
3
3
|
|
4
4
|
#--
|
5
|
-
# Copyright (c) 2011-
|
5
|
+
# Copyright (c) 2011-2016 David Kellum
|
6
6
|
#
|
7
7
|
# Licensed under the Apache License, Version 2.0 (the "License"); you
|
8
8
|
# may not use this file except in compliance with the License. You
|
data/test/test_shell.rb
CHANGED
@@ -2,7 +2,7 @@
|
|
2
2
|
#.hashdot.profile += jruby-shortlived
|
3
3
|
|
4
4
|
#--
|
5
|
-
# Copyright (c) 2011-
|
5
|
+
# Copyright (c) 2011-2016 David Kellum
|
6
6
|
#
|
7
7
|
# Licensed under the Apache License, Version 2.0 (the "License"); you
|
8
8
|
# may not use this file except in compliance with the License. You
|
data/test/test_space.rb
CHANGED
@@ -2,7 +2,7 @@
|
|
2
2
|
#.hashdot.profile += jruby-shortlived
|
3
3
|
|
4
4
|
#--
|
5
|
-
# Copyright (c) 2011-
|
5
|
+
# Copyright (c) 2011-2016 David Kellum
|
6
6
|
#
|
7
7
|
# Licensed under the Apache License, Version 2.0 (the "License"); you
|
8
8
|
# may not use this file except in compliance with the License. You
|
data/test/test_space_main.rb
CHANGED
@@ -2,7 +2,7 @@
|
|
2
2
|
#.hashdot.profile += jruby-shortlived
|
3
3
|
|
4
4
|
#--
|
5
|
-
# Copyright (c) 2011-
|
5
|
+
# Copyright (c) 2011-2016 David Kellum
|
6
6
|
#
|
7
7
|
# Licensed under the Apache License, Version 2.0 (the "License"); you
|
8
8
|
# may not use this file except in compliance with the License. You
|
@@ -20,9 +20,11 @@
|
|
20
20
|
require_relative 'setup'
|
21
21
|
|
22
22
|
require 'syncwrap'
|
23
|
+
require 'syncwrap/version_support.rb'
|
23
24
|
|
24
25
|
class TestSpaceMain < MiniTest::Unit::TestCase
|
25
26
|
include SyncWrap
|
27
|
+
include VersionSupport
|
26
28
|
|
27
29
|
def setup
|
28
30
|
@sp = Space.new
|
@@ -34,7 +36,12 @@ class TestSpaceMain < MiniTest::Unit::TestCase
|
|
34
36
|
end
|
35
37
|
|
36
38
|
def test
|
37
|
-
skip if defined?( JRUBY_VERSION )
|
39
|
+
skip if ( defined?( JRUBY_VERSION ) &&
|
40
|
+
( version_lt?( JRUBY_VERSION, [1,7,24] ) ||
|
41
|
+
( version_gte?( JRUBY_VERSION, [9] ) &&
|
42
|
+
version_lt?( JRUBY_VERSION, [9,0,5] ) ) ) )
|
43
|
+
# JRuby 1.6.x, 1.7.[0-23], 9.0.[0-4] all fail this test
|
44
|
+
# See also Space#wrap_sync_load?
|
38
45
|
assert( @sp.execute( @sp.hosts, [ [IyyovDaemon, :daemon_service_dir] ] ) )
|
39
46
|
end
|
40
47
|
end
|
@@ -2,7 +2,7 @@
|
|
2
2
|
#.hashdot.profile += jruby-shortlived
|
3
3
|
|
4
4
|
#--
|
5
|
-
# Copyright (c) 2011-
|
5
|
+
# Copyright (c) 2011-2016 David Kellum
|
6
6
|
#
|
7
7
|
# Licensed under the Apache License, Version 2.0 (the "License"); you
|
8
8
|
# may not use this file except in compliance with the License. You
|
@@ -0,0 +1,48 @@
|
|
1
|
+
#!/usr/bin/env jruby
|
2
|
+
#.hashdot.profile += jruby-shortlived
|
3
|
+
|
4
|
+
#--
|
5
|
+
# Copyright (c) 2011-2016 David Kellum
|
6
|
+
#
|
7
|
+
# Licensed under the Apache License, Version 2.0 (the "License"); you
|
8
|
+
# may not use this file except in compliance with the License. You
|
9
|
+
# may obtain a copy of the License at
|
10
|
+
#
|
11
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
12
|
+
#
|
13
|
+
# Unless required by applicable law or agreed to in writing, software
|
14
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
15
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
|
16
|
+
# implied. See the License for the specific language governing
|
17
|
+
# permissions and limitations under the License.
|
18
|
+
#++
|
19
|
+
|
20
|
+
require_relative 'setup'
|
21
|
+
|
22
|
+
require 'syncwrap'
|
23
|
+
|
24
|
+
class TestZoneBalancer < MiniTest::Unit::TestCase
|
25
|
+
include SyncWrap
|
26
|
+
|
27
|
+
def test
|
28
|
+
sp = Space.new
|
29
|
+
zb = ZoneBalancer
|
30
|
+
sp.with do
|
31
|
+
f = zb.zone( %w[a b c], [:r2] )
|
32
|
+
assert_equal( 'a', f.call )
|
33
|
+
|
34
|
+
sp.host( 'h1', :r1, :r2, availability_zone: 'a' )
|
35
|
+
sp.host( 'h2', :r2, availability_zone: 'b' )
|
36
|
+
sp.host( 'h3', :r2, availability_zone: 'a' )
|
37
|
+
sp.host( 'h4', :r3, availability_zone: 'b' )
|
38
|
+
|
39
|
+
assert_equal( 'c', f.call )
|
40
|
+
assert_equal( 'c', zb.next_zone( sp, %w[a b c], [:r2] ) )
|
41
|
+
assert_equal( 'b', zb.next_zone( sp, %w[a b], [:r2] ) )
|
42
|
+
assert_equal( 'b', zb.next_zone( sp, %w[a b c], [:r1] ) )
|
43
|
+
assert_equal( 'a', zb.next_zone( sp, %w[a b c], [:rempty] ) )
|
44
|
+
assert_equal( 'c', zb.next_zone( sp, %w[a b c] ) )
|
45
|
+
|
46
|
+
end
|
47
|
+
end
|
48
|
+
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: syncwrap
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.
|
4
|
+
version: 2.7.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- David Kellum
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2016-01-21 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: term-ansicolor
|
@@ -214,6 +214,7 @@ files:
|
|
214
214
|
- lib/syncwrap/systemd.rb
|
215
215
|
- lib/syncwrap/user_data.rb
|
216
216
|
- lib/syncwrap/version_support.rb
|
217
|
+
- lib/syncwrap/zone_balancer.rb
|
217
218
|
- sync/etc/corosync/corosync.conf
|
218
219
|
- sync/etc/corosync/uidgid.d/qpid
|
219
220
|
- sync/etc/gemrc
|
@@ -256,6 +257,7 @@ files:
|
|
256
257
|
- test/test_space.rb
|
257
258
|
- test/test_space_main.rb
|
258
259
|
- test/test_version_support.rb
|
260
|
+
- test/test_zone_balancer.rb
|
259
261
|
- test/zfile
|
260
262
|
homepage: http://github.com/dekellum/syncwrap
|
261
263
|
licenses: []
|