syncwrap 2.6.2 → 2.7.0
Sign up to get free protection for your applications and to get access to all the features.
- 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: []
|