bunny 2.14.2 → 2.22.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +56 -39
- data/lib/bunny/channel.rb +89 -13
- data/lib/bunny/consumer.rb +2 -2
- data/lib/bunny/consumer_work_pool.rb +1 -1
- data/lib/bunny/cruby/socket.rb +3 -0
- data/lib/bunny/delivery_info.rb +1 -1
- data/lib/bunny/queue.rb +36 -5
- data/lib/bunny/reader_loop.rb +21 -13
- data/lib/bunny/session.rb +83 -25
- data/lib/bunny/transport.rb +49 -12
- data/lib/bunny/version.rb +1 -1
- data/lib/bunny.rb +45 -4
- metadata +37 -235
- data/.github/ISSUE_TEMPLATE.md +0 -18
- data/.gitignore +0 -28
- data/.rspec +0 -1
- data/.travis.yml +0 -31
- data/.yardopts +0 -8
- data/CONTRIBUTING.md +0 -132
- data/ChangeLog.md +0 -2072
- data/Gemfile +0 -55
- data/LICENSE +0 -21
- data/Rakefile +0 -54
- data/benchmarks/basic_publish/with_128K_messages.rb +0 -35
- data/benchmarks/basic_publish/with_1k_messages.rb +0 -35
- data/benchmarks/basic_publish/with_4K_messages.rb +0 -35
- data/benchmarks/basic_publish/with_64K_messages.rb +0 -35
- data/benchmarks/channel_open.rb +0 -28
- data/benchmarks/mutex_and_monitor.rb +0 -42
- data/benchmarks/queue_declare.rb +0 -29
- data/benchmarks/queue_declare_and_bind.rb +0 -29
- data/benchmarks/queue_declare_bind_and_delete.rb +0 -29
- data/benchmarks/synchronized_sorted_set.rb +0 -53
- data/benchmarks/write_vs_write_nonblock.rb +0 -49
- data/bunny.gemspec +0 -34
- data/docker/Dockerfile +0 -20
- data/docker/apt/preferences.d/erlang +0 -3
- data/docker/apt/sources.list.d/bintray.rabbitmq.list +0 -2
- data/docker/docker-entrypoint.sh +0 -26
- data/docker/rabbitmq.conf +0 -29
- data/docker-compose.yml +0 -28
- data/examples/connection/authentication_failure.rb +0 -16
- data/examples/connection/automatic_recovery_with_basic_get.rb +0 -40
- data/examples/connection/automatic_recovery_with_client_named_queues.rb +0 -36
- data/examples/connection/automatic_recovery_with_multiple_consumers.rb +0 -46
- data/examples/connection/automatic_recovery_with_republishing.rb +0 -109
- data/examples/connection/automatic_recovery_with_server_named_queues.rb +0 -35
- data/examples/connection/channel_level_exception.rb +0 -27
- data/examples/connection/disabled_automatic_recovery.rb +0 -34
- data/examples/connection/heartbeat.rb +0 -17
- data/examples/connection/manually_reconnecting_consumer.rb +0 -23
- data/examples/connection/manually_reconnecting_publisher.rb +0 -28
- data/examples/connection/unknown_host.rb +0 -16
- data/examples/consumers/high_and_low_priority.rb +0 -50
- data/examples/guides/exchanges/direct_exchange_routing.rb +0 -36
- data/examples/guides/exchanges/fanout_exchange_routing.rb +0 -28
- data/examples/guides/exchanges/headers_exchange_routing.rb +0 -31
- data/examples/guides/exchanges/mandatory_messages.rb +0 -30
- data/examples/guides/extensions/alternate_exchange.rb +0 -30
- data/examples/guides/extensions/basic_nack.rb +0 -33
- data/examples/guides/extensions/connection_blocked.rb +0 -35
- data/examples/guides/extensions/consumer_cancellation_notification.rb +0 -39
- data/examples/guides/extensions/dead_letter_exchange.rb +0 -32
- data/examples/guides/extensions/exchange_to_exchange_bindings.rb +0 -29
- data/examples/guides/extensions/per_message_ttl.rb +0 -36
- data/examples/guides/extensions/per_queue_message_ttl.rb +0 -36
- data/examples/guides/extensions/publisher_confirms.rb +0 -28
- data/examples/guides/extensions/queue_lease.rb +0 -26
- data/examples/guides/extensions/sender_selected_distribution.rb +0 -32
- data/examples/guides/getting_started/blabbr.rb +0 -27
- data/examples/guides/getting_started/hello_world.rb +0 -22
- data/examples/guides/getting_started/weathr.rb +0 -49
- data/examples/guides/queues/one_off_consumer.rb +0 -25
- data/examples/guides/queues/redeliveries.rb +0 -81
- data/profiling/basic_publish/with_4K_messages.rb +0 -33
- data/repl +0 -3
- data/spec/config/enabled_plugins +0 -1
- data/spec/config/rabbitmq.conf +0 -13
- data/spec/higher_level_api/integration/basic_ack_spec.rb +0 -230
- data/spec/higher_level_api/integration/basic_cancel_spec.rb +0 -142
- data/spec/higher_level_api/integration/basic_consume_spec.rb +0 -349
- data/spec/higher_level_api/integration/basic_consume_with_objects_spec.rb +0 -54
- data/spec/higher_level_api/integration/basic_get_spec.rb +0 -80
- data/spec/higher_level_api/integration/basic_nack_spec.rb +0 -82
- data/spec/higher_level_api/integration/basic_publish_spec.rb +0 -74
- data/spec/higher_level_api/integration/basic_qos_spec.rb +0 -57
- data/spec/higher_level_api/integration/basic_reject_spec.rb +0 -152
- data/spec/higher_level_api/integration/basic_return_spec.rb +0 -33
- data/spec/higher_level_api/integration/channel_close_spec.rb +0 -66
- data/spec/higher_level_api/integration/channel_open_spec.rb +0 -57
- data/spec/higher_level_api/integration/connection_recovery_spec.rb +0 -483
- data/spec/higher_level_api/integration/connection_spec.rb +0 -563
- data/spec/higher_level_api/integration/connection_stop_spec.rb +0 -83
- data/spec/higher_level_api/integration/consumer_cancellation_notification_spec.rb +0 -128
- data/spec/higher_level_api/integration/dead_lettering_spec.rb +0 -75
- data/spec/higher_level_api/integration/exchange_bind_spec.rb +0 -31
- data/spec/higher_level_api/integration/exchange_declare_spec.rb +0 -237
- data/spec/higher_level_api/integration/exchange_delete_spec.rb +0 -105
- data/spec/higher_level_api/integration/exchange_unbind_spec.rb +0 -40
- data/spec/higher_level_api/integration/exclusive_queue_spec.rb +0 -28
- data/spec/higher_level_api/integration/heartbeat_spec.rb +0 -49
- data/spec/higher_level_api/integration/message_properties_access_spec.rb +0 -95
- data/spec/higher_level_api/integration/predeclared_exchanges_spec.rb +0 -24
- data/spec/higher_level_api/integration/publisher_confirms_spec.rb +0 -191
- data/spec/higher_level_api/integration/publishing_edge_cases_spec.rb +0 -87
- data/spec/higher_level_api/integration/queue_bind_spec.rb +0 -109
- data/spec/higher_level_api/integration/queue_declare_spec.rb +0 -285
- data/spec/higher_level_api/integration/queue_delete_spec.rb +0 -41
- data/spec/higher_level_api/integration/queue_purge_spec.rb +0 -30
- data/spec/higher_level_api/integration/queue_unbind_spec.rb +0 -54
- data/spec/higher_level_api/integration/read_only_consumer_spec.rb +0 -60
- data/spec/higher_level_api/integration/sender_selected_distribution_spec.rb +0 -36
- data/spec/higher_level_api/integration/tls_connection_spec.rb +0 -250
- data/spec/higher_level_api/integration/toxiproxy_spec.rb +0 -76
- data/spec/higher_level_api/integration/tx_commit_spec.rb +0 -21
- data/spec/higher_level_api/integration/tx_rollback_spec.rb +0 -21
- data/spec/higher_level_api/integration/with_channel_spec.rb +0 -25
- data/spec/issues/issue100_spec.rb +0 -42
- data/spec/issues/issue141_spec.rb +0 -43
- data/spec/issues/issue202_spec.rb +0 -15
- data/spec/issues/issue224_spec.rb +0 -40
- data/spec/issues/issue465_spec.rb +0 -32
- data/spec/issues/issue549_spec.rb +0 -30
- data/spec/issues/issue78_spec.rb +0 -72
- data/spec/issues/issue83_spec.rb +0 -30
- data/spec/issues/issue97_attachment.json +0 -1
- data/spec/issues/issue97_spec.rb +0 -175
- data/spec/lower_level_api/integration/basic_cancel_spec.rb +0 -83
- data/spec/lower_level_api/integration/basic_consume_spec.rb +0 -99
- data/spec/spec_helper.rb +0 -47
- data/spec/stress/channel_close_stress_spec.rb +0 -64
- data/spec/stress/channel_open_stress_spec.rb +0 -84
- data/spec/stress/channel_open_stress_with_single_threaded_connection_spec.rb +0 -28
- data/spec/stress/concurrent_consumers_stress_spec.rb +0 -71
- data/spec/stress/concurrent_publishers_stress_spec.rb +0 -54
- data/spec/stress/connection_open_close_spec.rb +0 -52
- data/spec/stress/merry_go_round_spec.rb +0 -105
- data/spec/tls/ca_certificate.pem +0 -29
- data/spec/tls/ca_key.pem +0 -52
- data/spec/tls/client_certificate.pem +0 -29
- data/spec/tls/client_key.pem +0 -51
- data/spec/tls/generate-server-cert.sh +0 -8
- data/spec/tls/server-openssl.cnf +0 -10
- data/spec/tls/server.csr +0 -16
- data/spec/tls/server_certificate.pem +0 -29
- data/spec/tls/server_key.pem +0 -51
- data/spec/toxiproxy_helper.rb +0 -28
- data/spec/unit/bunny_spec.rb +0 -15
- data/spec/unit/concurrent/atomic_fixnum_spec.rb +0 -35
- data/spec/unit/concurrent/condition_spec.rb +0 -82
- data/spec/unit/concurrent/linked_continuation_queue_spec.rb +0 -35
- data/spec/unit/concurrent/synchronized_sorted_set_spec.rb +0 -73
- data/spec/unit/exchange_recovery_spec.rb +0 -39
- data/spec/unit/version_delivery_tag_spec.rb +0 -28
@@ -1,52 +0,0 @@
|
|
1
|
-
require "spec_helper"
|
2
|
-
|
3
|
-
unless defined?(JRUBY_VERSION) && !ENV["FORCE_JRUBY_RUN"]
|
4
|
-
describe Bunny::Session do
|
5
|
-
# creating thousands of connections means creating
|
6
|
-
# twice as many threads and this won't fly with the JVM
|
7
|
-
# in CI containers. MK.
|
8
|
-
n = if defined?(JRUBY_VERSION)
|
9
|
-
250
|
10
|
-
else
|
11
|
-
2500
|
12
|
-
end
|
13
|
-
|
14
|
-
n.times do |i|
|
15
|
-
it "can be closed (automatic recovery disabled, take #{i})" do
|
16
|
-
c = Bunny.new(automatically_recover: false)
|
17
|
-
c.start
|
18
|
-
ch = c.create_channel
|
19
|
-
|
20
|
-
expect(c).to be_connected
|
21
|
-
c.stop
|
22
|
-
expect(c).to be_closed
|
23
|
-
end
|
24
|
-
end
|
25
|
-
|
26
|
-
n.times do |i|
|
27
|
-
it "can be closed (automatic recovery enabled, take #{i})" do
|
28
|
-
c = Bunny.new(automatically_recover: true)
|
29
|
-
c.start
|
30
|
-
ch = c.create_channel
|
31
|
-
|
32
|
-
expect(c).to be_connected
|
33
|
-
c.stop
|
34
|
-
expect(c).to be_closed
|
35
|
-
end
|
36
|
-
end
|
37
|
-
|
38
|
-
context "in the single threaded mode" do
|
39
|
-
n.times do |i|
|
40
|
-
it "can be closed (single threaded mode, take #{i})" do
|
41
|
-
c = Bunny.new(automatically_recover: false, threaded: false)
|
42
|
-
c.start
|
43
|
-
ch = c.create_channel
|
44
|
-
|
45
|
-
expect(c).to be_connected
|
46
|
-
c.stop
|
47
|
-
expect(c).to be_closed
|
48
|
-
end
|
49
|
-
end
|
50
|
-
end
|
51
|
-
end
|
52
|
-
end
|
@@ -1,105 +0,0 @@
|
|
1
|
-
require "spec_helper"
|
2
|
-
|
3
|
-
describe "A batch of messages proxied by multiple intermediate consumers" do
|
4
|
-
let(:c1) do
|
5
|
-
c = Bunny.new(username: "bunny_gem",
|
6
|
-
password: "bunny_password",
|
7
|
-
vhost: "bunny_testbed",
|
8
|
-
heartbeat_timeout: 6)
|
9
|
-
c.start
|
10
|
-
c
|
11
|
-
end
|
12
|
-
|
13
|
-
let(:c2) do
|
14
|
-
c = Bunny.new(username: "bunny_gem",
|
15
|
-
password: "bunny_password",
|
16
|
-
vhost: "bunny_testbed",
|
17
|
-
heartbeat_timeout: 6)
|
18
|
-
c.start
|
19
|
-
c
|
20
|
-
end
|
21
|
-
|
22
|
-
let(:c3) do
|
23
|
-
c = Bunny.new(username: "bunny_gem",
|
24
|
-
password: "bunny_password",
|
25
|
-
vhost: "bunny_testbed",
|
26
|
-
heartbeat_timeout: 6)
|
27
|
-
c.start
|
28
|
-
c
|
29
|
-
end
|
30
|
-
|
31
|
-
let(:c4) do
|
32
|
-
c = Bunny.new(username: "bunny_gem",
|
33
|
-
password: "bunny_password",
|
34
|
-
vhost: "bunny_testbed",
|
35
|
-
heartbeat_timeout: 6)
|
36
|
-
c.start
|
37
|
-
c
|
38
|
-
end
|
39
|
-
|
40
|
-
let(:c5) do
|
41
|
-
c = Bunny.new(username: "bunny_gem",
|
42
|
-
password: "bunny_password",
|
43
|
-
vhost: "bunny_testbed",
|
44
|
-
heartbeat_timeout: 6)
|
45
|
-
c.start
|
46
|
-
c
|
47
|
-
end
|
48
|
-
|
49
|
-
after :each do
|
50
|
-
[c1, c2, c3, c4, c5].each do |c|
|
51
|
-
c.close if c.open?
|
52
|
-
end
|
53
|
-
end
|
54
|
-
|
55
|
-
[1000, 5_000, 10_000, 20_000, 30_000, 50_000].each do |n|
|
56
|
-
# message flow is as follows:
|
57
|
-
#
|
58
|
-
# x => q4 => q3 => q2 => q1 => xs (results)
|
59
|
-
it "successfully reaches its final destination (batch size: #{n})" do
|
60
|
-
xs = []
|
61
|
-
|
62
|
-
ch1 = c1.create_channel
|
63
|
-
q1 = ch1.queue("", exclusive: true)
|
64
|
-
q1.subscribe(manual_ack: true) do |delivery_info, _, payload|
|
65
|
-
xs << payload
|
66
|
-
ch1.ack(delivery_info.delivery_tag)
|
67
|
-
end
|
68
|
-
|
69
|
-
ch2 = c2.create_channel
|
70
|
-
q2 = ch2.queue("", exclusive: true)
|
71
|
-
q2.subscribe do |_, _, payload|
|
72
|
-
q1.publish(payload)
|
73
|
-
end
|
74
|
-
|
75
|
-
ch3 = c3.create_channel(nil, 2)
|
76
|
-
q3 = ch3.queue("", exclusive: true)
|
77
|
-
q3.subscribe(manual_ack: true) do |delivery_info, _, payload|
|
78
|
-
q2.publish(payload)
|
79
|
-
ch3.ack(delivery_info.delivery_tag)
|
80
|
-
end
|
81
|
-
|
82
|
-
ch4 = c4.create_channel(nil, 4)
|
83
|
-
q4 = ch4.queue("", exclusive: true)
|
84
|
-
q4.subscribe do |_, _, payload|
|
85
|
-
q3.publish(payload)
|
86
|
-
end
|
87
|
-
|
88
|
-
ch5 = c5.create_channel(nil, 8)
|
89
|
-
x = ch5.default_exchange
|
90
|
-
|
91
|
-
n.times do |i|
|
92
|
-
x.publish("msg #{i}", routing_key: q4.name)
|
93
|
-
end
|
94
|
-
|
95
|
-
Bunny::TestKit.poll_until(90) do
|
96
|
-
xs.size >= n
|
97
|
-
end
|
98
|
-
|
99
|
-
expect(xs.size).to eq n
|
100
|
-
expect(xs.last).to eq "msg #{n - 1}"
|
101
|
-
|
102
|
-
[q1, q2, q3, q4].each { |q| q.delete }
|
103
|
-
end
|
104
|
-
end
|
105
|
-
end
|
data/spec/tls/ca_certificate.pem
DELETED
@@ -1,29 +0,0 @@
|
|
1
|
-
-----BEGIN CERTIFICATE-----
|
2
|
-
MIIFAjCCAuqgAwIBAgIJAOh5ofB2iC1IMA0GCSqGSIb3DQEBCwUAMDExIDAeBgNV
|
3
|
-
BAMMF1RMU0dlblNlbGZTaWduZWR0Um9vdENBMQ0wCwYDVQQHDAQkJCQkMB4XDTE3
|
4
|
-
MDcxMjE3MDUyNFoXDTI3MDcxMDE3MDUyNFowMTEgMB4GA1UEAwwXVExTR2VuU2Vs
|
5
|
-
ZlNpZ25lZHRSb290Q0ExDTALBgNVBAcMBCQkJCQwggIiMA0GCSqGSIb3DQEBAQUA
|
6
|
-
A4ICDwAwggIKAoICAQDLlcfVD3JI34j3akZEcw9A6Q3ra7wCXiBuK6i+QcB0Gpp/
|
7
|
-
AdQVyEwuC8DVwqnnCLoR0KKU7Iuhjwqk1aXzIcZAy42TiEtwCTJ1Rajlp6hjonWi
|
8
|
-
EYp+HFm6UZdeM94bV5khV0+vwE/MDcKpXzKYJlbYOv+RSPdizWb7m+tRnyQf79M8
|
9
|
-
wL8nx1CJbokV/fgmauRnbOkpAWSmq8MbuthdQHLNVAnHV4i4SEBB8KBiB1Rrxu+O
|
10
|
-
serH1KB+8ABLGUpLM/0rtUFlgo5waysNHUUvqYIcXff7yXNsNblZM8YYnhAK0rzX
|
11
|
-
y6MdqSgUHycQYCCJ7nuIVagpxLKSkJTJtH9anDzo0Y5c/w6huCxsnhbrBwg3FHga
|
12
|
-
sRPzuouIROH09yKbrOmbG7wmU3mWyB3bhVe+YmivQMq55QtHo3C/gBVsvsrjH/ql
|
13
|
-
ecxYa8aPRpeJU4eUjuvywY9200C3SdOyP+iM/yE9r3RG/B2qPhB6PqG/3SXkURGi
|
14
|
-
3B2bX1nD7VdDPbfO14j0m0rHBTnu3Ieao+KaAMpd6gWrPkOHRF87CYF4NOtqjFr8
|
15
|
-
rNe6cxR3Cy/h5YH7DYpS8VgIjMTkIEEo4sTDnQsFTE1fiPjzsfUl0cwSAPbIR4Hb
|
16
|
-
Sp/kt5zWSlV89u9CbIpGvvnKZ0fUiaVW9e3rjowPtBjcCSARn4tIIOftjVEmmwID
|
17
|
-
AQABox0wGzAMBgNVHRMEBTADAQH/MAsGA1UdDwQEAwIBBjANBgkqhkiG9w0BAQsF
|
18
|
-
AAOCAgEAUrza43ghwOUIuqbQLAfosr/9ucXnTA84Fcyp27bKbLme2Vfc9iRLwjib
|
19
|
-
hd9D1MygCSjxW5szWs/pwC486cGjWlUY5y4g5fS74S4hLvKW8jVBKuF3i0J8kNkO
|
20
|
-
7L2XZJb+0rQcFWCOh8dAJpBJqv8dH0xqRga9mVecHB+PtQY0G0qRkdCTCiIKr8gF
|
21
|
-
yhzoq8Rmo+H4yD8OfbMJHSS4vcEFgS6KhVLqvrGQ1cnfjWjaDeSMalHcnUxeYydV
|
22
|
-
dPAdi+/4k8jtjXTEAxTlVhsRwUJi4+jF43X3jNZ1dbrZV5SATnxJD2ygDjHH+Xw3
|
23
|
-
R97bARIgvXWmDHvIlxdIpmDJws3AvSThofI2uhTLSg5JLmRNZCjhcZc9EsnAxxAV
|
24
|
-
LKLG85Fp1sGfqvPeT+n6wfqNXyZ6X3pPXoR412uOdD3brKWfNM1rjqqdm6PWqxg0
|
25
|
-
wA3Axv/ZbtFWYcBVbePmA8SQATPnuAWYAueQ6R3vQwMFhf+KMt+GBQGt2gsIN4Gb
|
26
|
-
FbtSGLH5dOz9ap2zjSL5QS7ZRt2O1d4s5zEdRBadA19fr2hTA8KX4tvmoXhc2Iav
|
27
|
-
lmnAW1MDAGkhzIQmSfxM0N7rr4fNrqTHVv6NjUjeHxi483RxVXL6ZWu2Kb7LCVzs
|
28
|
-
pHlumeVpCafYGiBHt75SRFkPsn8HA+g8PYfSXCgLrA6tW3zMj7U=
|
29
|
-
-----END CERTIFICATE-----
|
data/spec/tls/ca_key.pem
DELETED
@@ -1,52 +0,0 @@
|
|
1
|
-
-----BEGIN PRIVATE KEY-----
|
2
|
-
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
-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
-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
-
XzKYJlbYOv+RSPdizWb7m+tRnyQf79M8wL8nx1CJbokV/fgmauRnbOkpAWSmq8Mb
|
6
|
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-
rbtoq+J8iSlizTaiWC+3lbLtZCv/F3wM4u6mwDzy/tRoJiE0B2+34nP2+nWNIPSN
|
28
|
-
+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
-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
-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
-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
-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
-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
-
LsGAXxqnjTVVfXCClxRZrN7XCtu6yKzqP0Kr6EMKYJfRXgKsm0FaLJTcG1Pv0Gh7
|
35
|
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-
ZvTTxKLRJROF5S5tsA+xx7f1LvH1GYrNImh/UtQjq7Q5IArKqQ0J14Vg1j2GCtuR
|
48
|
-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
-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
-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
|
51
|
-
uM2skhC6ROJPn3CCWPupNuPV2m7kCo4=
|
52
|
-
-----END PRIVATE KEY-----
|
@@ -1,29 +0,0 @@
|
|
1
|
-
-----BEGIN CERTIFICATE-----
|
2
|
-
MIIE/zCCAuegAwIBAgIBAjANBgkqhkiG9w0BAQsFADAxMSAwHgYDVQQDDBdUTFNH
|
3
|
-
ZW5TZWxmU2lnbmVkdFJvb3RDQTENMAsGA1UEBwwEJCQkJDAeFw0xNzA3MTIxNzA1
|
4
|
-
MjVaFw0yNzA3MTAxNzA1MjVaMCQxETAPBgNVBAMMCG1lcmN1cmlvMQ8wDQYDVQQK
|
5
|
-
DAZjbGllbnQwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQDDsrXq/Dop
|
6
|
-
gZjWDsyVQSyV+GxD/2ckrG4mbXARECfb9vvhA1z8ErN1h6hp9zDKTqdn21iCd3m1
|
7
|
-
4AlTsM1ARk6kMuqtVAYzo25qtm8seQE3TnI41gOvrpy1ncqr9etRmds7lyfo7AVA
|
8
|
-
DC+rHAc1R3Gh+wc5xPexY7kbZv0mfURETGksGYKJ/VHE0dk/JAgyR6HooPEKRLce
|
9
|
-
gCCc7SjUtggj0mJLgLHtnns1Db2REe/tZTtzJ6DaxevdmeewGvQvQRo8l+OAysfL
|
10
|
-
Pc7VCevExnB0jRvjlSF+zbeqEZsUQiAiCa8zXZEH0ZXf3JE9ztIbNN9ouTL4Q7aX
|
11
|
-
N3GnddMXv5bunJzrnF6xUB3DzUDZjQasGIf9q3kr4qxP8BXOCHjaCLFgfRxwy7NG
|
12
|
-
64BOzTZ+OWJThF4kqvkWR5D0WeRyj6OCYU7pr8mjVayHhA3WdqMZ2eyZDPoqHGsx
|
13
|
-
FuBCW0/Ja2nrwHislQUkPHaH8gSjivAZeF40q5hD+3a0O5j4lEbNbFyE2GE3vjMD
|
14
|
-
9nxomfFeKI8IxdePjAc80Xoq0JDDiFMJ2Iu1oFSsRCucR+L9xloS3MRjzzrHZlnZ
|
15
|
-
xwLV+3x9QA97KjfsDwp8J8tWXs9fw71ZJgmcSJ5fzPjkxrlZ5xEQAsf50Tx8c6j4
|
16
|
-
lZhMEsLcARiGNJt21QfgKiLEBWvKgoSuxQIDAQABoy8wLTAJBgNVHRMEAjAAMAsG
|
17
|
-
A1UdDwQEAwIHgDATBgNVHSUEDDAKBggrBgEFBQcDAjANBgkqhkiG9w0BAQsFAAOC
|
18
|
-
AgEAFWAL4vDyshpfLtj+woBov4gwUrW7fFtrIKSpZ78FE3wTb5oDoK7DQb1qLiGy
|
19
|
-
XKv8O0La5z/pGKm7jeqDDSIwu7s/9nzui3m3le93Wed4PnEawprvND0IKJDtEN5N
|
20
|
-
J2Zet/CCm1keHLhZLPS4mXzKXI0BqubBhYuFJ+pO0F/l9kPxOfCe3l3fLj+Gsmpm
|
21
|
-
hqr1lasWlWc9IKoSgcAGw0Wr6M0EeP3mxJcrSDGtT+37KerefKXQrAC75IbO0hGo
|
22
|
-
CTMYltg0TxWZ90lUcuLIgSlopS8C88NFaxxNDf62Qy6DAjEb0S9nGEKfxcPRJcyz
|
23
|
-
DuE0YiOf8yp/8qgnN6mTo7tCr/FQRZvWt6Mt2UGh1lHMuA4Ab6O5T4hQ3oD9tj9H
|
24
|
-
D86noCp6I3caDJmUSxAc6H6pr0AebQ6TFE48tzFaKNcKQKzk3JUDOmoGP6ub1Hab
|
25
|
-
/SUcZ7pLx9rKSlF/EfjO/1NQ9jDFoHYT8FDw3Xj82K3xoWXKw7/bggLYfdEJzKxN
|
26
|
-
ThN4dcAefsdXY9mo6iABspMf9uCGPuq89gs6wYSM71R2hk+1CHiQRc4xSGJjJ037
|
27
|
-
Wk/0yCQkUmMcqCF4HQa2caOV3Paa9bvSXm8aRWn+atY/JdrgzM87nK49wjmWFGf9
|
28
|
-
bsyM5uI0G9rCclSKc9SNw6sAhDTuwTdA1ivRHJsPtOFtmCE=
|
29
|
-
-----END CERTIFICATE-----
|
data/spec/tls/client_key.pem
DELETED
@@ -1,51 +0,0 @@
|
|
1
|
-
-----BEGIN RSA PRIVATE KEY-----
|
2
|
-
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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-
MlkCDwmyphDdZkdVfb7JhpHf0k6v49HuJYaAnWWkfDnpznxGooSfeA4oyIkBJjwS
|
25
|
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-
YQVxPh3r03ZE8Hm3DdgdgpH3tqbPW4j8Gi9YHdBpYm/dSDcQw4XdyyncEJKCl1dF
|
38
|
-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
-
6wz0+HXXebmouO0+em0K/03/mr56vlNK5ZXvXQc2xrQJQcVYAHCH3xvYbIuFb1cq
|
40
|
-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
-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
-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
-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
-
Ir6eqG+EZuwtNA06P7byjJVUebgqt2z6rRkQMCasH4O4FFgx7H2+UCbwBImulPeU
|
45
|
-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
-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
-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
-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
-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
-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
|
51
|
-
-----END RSA PRIVATE KEY-----
|
@@ -1,8 +0,0 @@
|
|
1
|
-
#!/bin/sh
|
2
|
-
|
3
|
-
DIRNAME=$(dirname "$0")
|
4
|
-
|
5
|
-
openssl req -sha256 -new -key $DIRNAME/server_key.pem -out $DIRNAME/server.csr -subj "/CN=mercurio" -config $DIRNAME/server-openssl.cnf
|
6
|
-
openssl x509 -sha256 -req -in $DIRNAME/server.csr -CA $DIRNAME/ca_certificate.pem -CAkey $DIRNAME/ca_key.pem -CAcreateserial -CAserial $DIRNAME/ca.srl -out $DIRNAME/server_certificate.pem -days 3650 -extensions v3_req -extfile $DIRNAME/server-openssl.cnf
|
7
|
-
|
8
|
-
echo "Written new server CSR and certificate"
|
data/spec/tls/server-openssl.cnf
DELETED
@@ -1,10 +0,0 @@
|
|
1
|
-
[req]
|
2
|
-
req_extensions = v3_req
|
3
|
-
distinguished_name = req_distinguished_name
|
4
|
-
[req_distinguished_name]
|
5
|
-
[ v3_req ]
|
6
|
-
basicConstraints = CA:FALSE
|
7
|
-
keyUsage = nonRepudiation, digitalSignature, keyEncipherment
|
8
|
-
subjectAltName = @alt_names
|
9
|
-
[alt_names]
|
10
|
-
IP.1 = 127.0.0.1
|
data/spec/tls/server.csr
DELETED
@@ -1,16 +0,0 @@
|
|
1
|
-
-----BEGIN CERTIFICATE REQUEST-----
|
2
|
-
MIICkjCCAXoCAQAwEzERMA8GA1UEAwwIbWVyY3VyaW8wggEiMA0GCSqGSIb3DQEB
|
3
|
-
AQUAA4IBDwAwggEKAoIBAQCkvvzm5nB3CDqTFEYQnfOy8DwJLm34MvdrKQAThzDy
|
4
|
-
qa37sb4IC0YclBFbZfsw8+paK+Rpo2Vlhzclb66z0cGs9SvxuKkJ45w0fk0ctxMg
|
5
|
-
tvWISRGZR7LMw5u0q2m61dK0FTGSl+qzJohb5Dklb6BApoGoIPH+eYraVxHR29x2
|
6
|
-
x8hqzBt5TpiUW8bu7LPQJbX0mYGhKQDf86kao+sptRQ2045D7vB3jrkPhq0XZVJi
|
7
|
-
QymzOSSejYSN1oZ464DtT+dpLBYHEVJoJPu4r4kY/8A7v+93PWQaDERKBfvwWHfV
|
8
|
-
U44xn7R/aojSvNT7kQILsf2BnfJlMwoedWQLxPddmB3PAgMBAAGgOjA4BgkqhkiG
|
9
|
-
9w0BCQ4xKzApMAkGA1UdEwQCMAAwCwYDVR0PBAQDAgXgMA8GA1UdEQQIMAaHBH8A
|
10
|
-
AAEwDQYJKoZIhvcNAQELBQADggEBAFyfaotajM/h2dyodKJqO6stAIpxiQXTds8V
|
11
|
-
5ZHDozBxzLZkeBIY+hsqh/owmqomk56swui+336WAKIBwIJyJrtIl8C/lupGaTbR
|
12
|
-
BouWWbyZOQAE2ExHcUgdGEOVoCN2ieBR4RVQ8Id4GAlHvlFGPqakaLMV6Zc7VqDh
|
13
|
-
vxdOLgATEE+MhebTo9yOHj14qdvzhi5w3ZEg1kdfOuGN9I4gJcv4PWwudBhn4wE7
|
14
|
-
oHAIP2nixROI7cZcZ9fBrimcdGQsXNZLTXiGzNra4utOXuQ7w5qoiEhHoxXalowE
|
15
|
-
KvEA9otLadjtULg6DRd3zYuIyrUiBIRUHZ1p2xSnd/lLekbMfCQ=
|
16
|
-
-----END CERTIFICATE REQUEST-----
|
@@ -1,29 +0,0 @@
|
|
1
|
-
-----BEGIN CERTIFICATE-----
|
2
|
-
MIIE/zCCAuegAwIBAgIBATANBgkqhkiG9w0BAQsFADAxMSAwHgYDVQQDDBdUTFNH
|
3
|
-
ZW5TZWxmU2lnbmVkdFJvb3RDQTENMAsGA1UEBwwEJCQkJDAeFw0xNzA3MTIxNzA1
|
4
|
-
MjRaFw0yNzA3MTAxNzA1MjRaMCQxETAPBgNVBAMMCG1lcmN1cmlvMQ8wDQYDVQQK
|
5
|
-
DAZzZXJ2ZXIwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQCuwVeq0DrK
|
6
|
-
nKQg5zE4Ph9eY1v4ktJiHhTosgS0hE7DHWaulpXqt9SaqrVc8Kp7z+C1GCQRg8Vo
|
7
|
-
73DDQOl63sFwYvNO1uqyeS6mqMPamjgOIQ2/GGPwmTksJi/QlBH7u2lR4BoWA7uB
|
8
|
-
4zr8mxXlIfDzvLWL1Dz7yZZcfrcp28rDId+LoNjajaVrropqrlJ+GoQKN1fB2dkU
|
9
|
-
JTJocUFCw5+Pcslrymm3+9pDexB6u8vWyBy/jk27dp8VhDLfHTCkO6UTnvIBLfA3
|
10
|
-
5b7PWX7Q7QiOGhiGtoz7J3bqEoOkaM1cOEjSEO4AkLvcgKpqnQzP0xKmR57COFgA
|
11
|
-
UQBNSClOkmoNDI9pGl4ONNx7OnsFGvwqc1DrIUQPRXMZzgcqdjK7DgxAh68Mke3l
|
12
|
-
Mu7xkLsy7VWxiwTDFyukKuFNhXOxUrHJ/jI/s5LEZLiAWNvGNhDyJrWxFpTAjpk9
|
13
|
-
osNPdJw/rLSzliwYJDmYWdmKOif+mQw0QIhnKxtLnsdiNTbQVtixDlhUBUt+xWv2
|
14
|
-
IyFAcSDxZPEA7oLIflJdNG3GaQwIki/ZGDXmxSg2PhPdU42slGRaupPuUpFYFKUg
|
15
|
-
PZypjphNuUQkHasPD43Jacj96LyuDSuV/b8FQWQbegOv7sY/kCK3v6y6YQcqovkN
|
16
|
-
RWhOZE2zIFXRxT2iPY2LV/clgVkohrxzUwIDAQABoy8wLTAJBgNVHRMEAjAAMAsG
|
17
|
-
A1UdDwQEAwIFIDATBgNVHSUEDDAKBggrBgEFBQcDATANBgkqhkiG9w0BAQsFAAOC
|
18
|
-
AgEAQBCmOD6yXPkGWIBcP35Qaghpyv9oxgv6AnJaU1KylTxR+C7ljT9EnygWBeTf
|
19
|
-
5giFYI2HnTSKOZQRhIk4/LsP9xnWJ6OjfOopC1YjHKcSV7VTVMTvd2OkgFIYPFgT
|
20
|
-
EXzfCX+NFkS9fD8D2hn/6ENir+N4opuobcLOq+jveAtwLrO/SrDprCiKa0Ka4n/L
|
21
|
-
10huMlBslqJ4aCQjAud0FZVikEzeZIIfPn/G7vC5Ya+IaV5SxzEv12krZpiktuHh
|
22
|
-
w5jkFZcIxQROLww5heC0xsHLRVX5pjqFwN54b8JeP5t+yr0y3aaQ0s525wkUP82/
|
23
|
-
QmNTLNLzOgMn+k5JkIygnVHji6avdO7suxt0BOMrdSzMd1pfH58umF4xoCspUSCq
|
24
|
-
Ko0ml5f3Kf1KTBQAV/a4iUIixID67tAd3tOaQgNFPEdbHXp09L2nxRvZMrh4Yimq
|
25
|
-
jmiX7rTOFnTUES4gfrfpLFSJXxaJlMOM6K08MljkMT0JtExBtiIqMXTnA0GNdkgY
|
26
|
-
W5Oa2W+Hvt8l0KDcdFIR64Uiqrgxmw8AirUI3R20kldDHB1XE+5y34CgMVYiHDZ9
|
27
|
-
UGf2wIrg+rsWUqvSgUgFO0IVsP4Z+fFJP/qpca5ObbSLCF0rM5tCh6i7P2893+S9
|
28
|
-
/eJyRAiTABMrVpFAhvMQGdBtKtXZ8gryJ2M29Kup7JW0OEM=
|
29
|
-
-----END CERTIFICATE-----
|
data/spec/tls/server_key.pem
DELETED
@@ -1,51 +0,0 @@
|
|
1
|
-
-----BEGIN RSA PRIVATE KEY-----
|
2
|
-
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
-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
-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
-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
-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
-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
-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
-
xGS4gFjbxjYQ8ia1sRaUwI6ZPaLDT3ScP6y0s5YsGCQ5mFnZijon/pkMNECIZysb
|
10
|
-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
-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
-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
-
AQKCAgBM8eRf2X+JZp79vc32LaQyMx1zvXHUsdoS+w8HTJpBXtivVq57wqVh1Hg2
|
14
|
-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
-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
-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
-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
-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
-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
-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
-
DinCYBq0xQiXxhSjCRb6KiVvxpGVr9vLkPaYUxnC3NLS5Gzl+Ub/pro22Tt5qJK+
|
22
|
-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
-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
-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
-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
-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
-
Q9V0TY/A2AKuYMjKCosWPocoaUCTxlOerrAGIDf7/jUy2sYaNFHPvjkglXhwY9oW
|
28
|
-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
-
nOoy0SNgK8gzbwKCAQEAwP9J5HoPN9EQ3CxxJwovW0TP9b9asacxZtCzPxUHie2Y
|
30
|
-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
-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
-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
-
Vj4n3bPFYRIbllFG39Mjq4UOVAbllj9TYNL7xf32V0zrKZHG3UcHH1A2C5nW++yQ
|
34
|
-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
-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
-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
-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
-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
-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
-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
-
tposX2yxRgzcI1HQ0KCH3CX9TJWzaSewjeWAzifFTSTF4fZ4B49FsYECwv/6yehQ
|
42
|
-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
-
IicKJXZ57L/4q1QHomu78u8eV8e0TjXTFyc6338AEZQF3G0on1lREbEwpMxFDb+U
|
44
|
-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
-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
-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
-
fvsUuL2VzNMnGofRXK+nU+AeixUJLTDd1TKwODr+WAx1UVg+pfwmkDgU6oiHQZSF
|
48
|
-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
-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
-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
|
51
|
-
-----END RSA PRIVATE KEY-----
|
data/spec/toxiproxy_helper.rb
DELETED
@@ -1,28 +0,0 @@
|
|
1
|
-
module RabbitMQ
|
2
|
-
module Toxiproxy
|
3
|
-
RABBITMQ_UPSTREAM_HOST = if !ENV["LOCAL_RABBITMQ"].nil?
|
4
|
-
# a local Toxiproxy/RabbitMQ combination
|
5
|
-
"localhost"
|
6
|
-
else
|
7
|
-
# docker-compose
|
8
|
-
"rabbitmq"
|
9
|
-
end
|
10
|
-
|
11
|
-
def setup_toxiproxy
|
12
|
-
::Toxiproxy.populate([{
|
13
|
-
name: "rabbitmq",
|
14
|
-
listen: "0.0.0.0:11111",
|
15
|
-
upstream: "#{RABBITMQ_UPSTREAM_HOST}:5672"
|
16
|
-
}])
|
17
|
-
rabbitmq_toxiproxy.enable
|
18
|
-
end
|
19
|
-
|
20
|
-
def cleanup_toxiproxy
|
21
|
-
::Toxiproxy.populate()
|
22
|
-
end
|
23
|
-
|
24
|
-
def rabbitmq_toxiproxy
|
25
|
-
::Toxiproxy[/rabbitmq/]
|
26
|
-
end
|
27
|
-
end
|
28
|
-
end
|
data/spec/unit/bunny_spec.rb
DELETED
@@ -1,15 +0,0 @@
|
|
1
|
-
require "spec_helper"
|
2
|
-
|
3
|
-
describe Bunny do
|
4
|
-
it "has library version" do
|
5
|
-
expect(Bunny::VERSION).not_to be_nil
|
6
|
-
expect(Bunny.version).not_to be_nil
|
7
|
-
end
|
8
|
-
|
9
|
-
|
10
|
-
it "has AMQP protocol version" do
|
11
|
-
expect(Bunny::PROTOCOL_VERSION).to eq "0.9.1"
|
12
|
-
expect(AMQ::Protocol::PROTOCOL_VERSION).to eq "0.9.1"
|
13
|
-
expect(Bunny.protocol_version).to eq "0.9.1"
|
14
|
-
end
|
15
|
-
end
|
@@ -1,35 +0,0 @@
|
|
1
|
-
require "spec_helper"
|
2
|
-
require "bunny/concurrent/atomic_fixnum"
|
3
|
-
|
4
|
-
describe Bunny::Concurrent::AtomicFixnum do
|
5
|
-
it "allows retrieving the current value" do
|
6
|
-
af = described_class.new(0)
|
7
|
-
|
8
|
-
expect(af.get).to eq 0
|
9
|
-
expect(af).to eq 0
|
10
|
-
end
|
11
|
-
|
12
|
-
it "can be updated" do
|
13
|
-
af = described_class.new(0)
|
14
|
-
|
15
|
-
expect(af.get).to eq 0
|
16
|
-
Thread.new do
|
17
|
-
af.set(10)
|
18
|
-
end
|
19
|
-
sleep 0.6
|
20
|
-
expect(af.get).to eq 10
|
21
|
-
end
|
22
|
-
|
23
|
-
it "can be incremented" do
|
24
|
-
af = described_class.new(0)
|
25
|
-
|
26
|
-
expect(af.get).to eq 0
|
27
|
-
10.times do
|
28
|
-
Thread.new do
|
29
|
-
af.increment
|
30
|
-
end
|
31
|
-
end
|
32
|
-
sleep 0.6
|
33
|
-
expect(af.get).to eq 10
|
34
|
-
end
|
35
|
-
end
|
@@ -1,82 +0,0 @@
|
|
1
|
-
require "spec_helper"
|
2
|
-
require "bunny/concurrent/condition"
|
3
|
-
|
4
|
-
describe Bunny::Concurrent::Condition do
|
5
|
-
|
6
|
-
describe "#wait" do
|
7
|
-
50.times do |i|
|
8
|
-
it "blocks current thread until notified (take #{i})" do
|
9
|
-
condition = described_class.new
|
10
|
-
xs = []
|
11
|
-
|
12
|
-
t = Thread.new do
|
13
|
-
xs << :notified
|
14
|
-
|
15
|
-
sleep 0.2
|
16
|
-
condition.notify
|
17
|
-
end
|
18
|
-
t.abort_on_exception = true
|
19
|
-
|
20
|
-
condition.wait
|
21
|
-
expect(xs).to eq [:notified]
|
22
|
-
end
|
23
|
-
end
|
24
|
-
end
|
25
|
-
|
26
|
-
describe "#notify" do
|
27
|
-
50.times do |i|
|
28
|
-
it "notifies a single thread waiting on the latch (take #{i})" do
|
29
|
-
mutex = Mutex.new
|
30
|
-
condition = described_class.new
|
31
|
-
xs = []
|
32
|
-
|
33
|
-
t1 = Thread.new do
|
34
|
-
condition.wait
|
35
|
-
mutex.synchronize { xs << :notified1 }
|
36
|
-
end
|
37
|
-
t1.abort_on_exception = true
|
38
|
-
|
39
|
-
t2 = Thread.new do
|
40
|
-
condition.wait
|
41
|
-
mutex.synchronize { xs << :notified2 }
|
42
|
-
end
|
43
|
-
t2.abort_on_exception = true
|
44
|
-
|
45
|
-
sleep 0.2
|
46
|
-
condition.notify
|
47
|
-
sleep 0.5
|
48
|
-
expect(xs).to satisfy { |ys| ys.size == 1 && (ys.include?(:notified1) || ys.include?(:notified2)) }
|
49
|
-
end
|
50
|
-
end
|
51
|
-
end
|
52
|
-
|
53
|
-
describe "#notify_all" do
|
54
|
-
let(:n) { 30 }
|
55
|
-
|
56
|
-
50.times do |i|
|
57
|
-
it "notifies all the threads waiting on the latch (take #{i})" do
|
58
|
-
mutex = Mutex.new
|
59
|
-
condition = described_class.new
|
60
|
-
@xs = []
|
61
|
-
|
62
|
-
n.times do |i|
|
63
|
-
t = Thread.new do
|
64
|
-
condition.wait
|
65
|
-
mutex.synchronize { @xs << "notified#{i + 1}".to_sym }
|
66
|
-
end
|
67
|
-
t.abort_on_exception = true
|
68
|
-
end
|
69
|
-
|
70
|
-
sleep 0.5
|
71
|
-
condition.notify_all
|
72
|
-
sleep 0.5
|
73
|
-
|
74
|
-
n.times do |i|
|
75
|
-
item = "notified#{i + 1}".to_sym
|
76
|
-
|
77
|
-
expect(@xs).to include item
|
78
|
-
end
|
79
|
-
end
|
80
|
-
end
|
81
|
-
end
|
82
|
-
end
|
@@ -1,35 +0,0 @@
|
|
1
|
-
require "spec_helper"
|
2
|
-
|
3
|
-
if defined?(JRUBY_VERSION)
|
4
|
-
require "bunny/concurrent/linked_continuation_queue"
|
5
|
-
|
6
|
-
describe Bunny::Concurrent::LinkedContinuationQueue do
|
7
|
-
describe "#poll with a timeout that is never reached" do
|
8
|
-
it "blocks until the value is available, then returns it" do
|
9
|
-
# force subject evaluation
|
10
|
-
cq = subject
|
11
|
-
t = Thread.new do
|
12
|
-
cq.push(10)
|
13
|
-
end
|
14
|
-
t.abort_on_exception = true
|
15
|
-
|
16
|
-
v = subject.poll(500)
|
17
|
-
expect(v).to eq 10
|
18
|
-
end
|
19
|
-
end
|
20
|
-
|
21
|
-
describe "#poll with a timeout that is reached" do
|
22
|
-
it "raises an exception" do
|
23
|
-
# force subject evaluation
|
24
|
-
cq = subject
|
25
|
-
t = Thread.new do
|
26
|
-
sleep 1.5
|
27
|
-
cq.push(10)
|
28
|
-
end
|
29
|
-
t.abort_on_exception = true
|
30
|
-
|
31
|
-
expect { subject.poll(500) }.to raise_error(::Timeout::Error)
|
32
|
-
end
|
33
|
-
end
|
34
|
-
end
|
35
|
-
end
|