semian 0.0.8 → 0.1.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- checksums.yaml.gz.sig +0 -0
- data/.travis.yml +4 -1
- data/README.md +1 -1
- data/Rakefile +7 -6
- data/ext/semian/semian.c +7 -13
- data/lib/semian/circuit_breaker.rb +135 -0
- data/lib/semian/instrumentable.rb +22 -0
- data/lib/semian/mysql2.rb +77 -0
- data/lib/semian/platform.rb +2 -2
- data/lib/semian/protected_resource.rb +36 -0
- data/lib/semian/resource.rb +26 -0
- data/lib/semian/version.rb +2 -2
- data/lib/semian.rb +80 -27
- data/scripts/install_toxiproxy.sh +25 -0
- data/semian.gemspec +3 -0
- data/test/fixtures/toxiproxy.json +7 -0
- data/test/test_circuit_breaker.rb +114 -0
- data/test/test_instrumentation.rb +62 -0
- data/test/test_mysql2.rb +186 -0
- data/test/{test_semian.rb → test_resource.rb} +73 -55
- data/test/test_unsupported.rb +7 -3
- data.tar.gz.sig +0 -0
- metadata +55 -4
- metadata.gz.sig +1 -2
- data/lib/semian/unsupported.rb +0 -26
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: semian
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0
|
4
|
+
version: 0.1.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Scott Francis
|
@@ -31,7 +31,7 @@ cert_chain:
|
|
31
31
|
fl3hbtVFTqbOlwL9vy1fudXcolIE/ZTcxQ+er07ZFZdKCXayR9PPs64heamfn0fp
|
32
32
|
TConQSX2BnZdhIEYW+cKzEC/bLc=
|
33
33
|
-----END CERTIFICATE-----
|
34
|
-
date:
|
34
|
+
date: 2015-02-13 00:00:00.000000000 Z
|
35
35
|
dependencies:
|
36
36
|
- !ruby/object:Gem::Dependency
|
37
37
|
name: rake-compiler
|
@@ -47,6 +47,48 @@ dependencies:
|
|
47
47
|
- - "~>"
|
48
48
|
- !ruby/object:Gem::Version
|
49
49
|
version: '0.9'
|
50
|
+
- !ruby/object:Gem::Dependency
|
51
|
+
name: timecop
|
52
|
+
requirement: !ruby/object:Gem::Requirement
|
53
|
+
requirements:
|
54
|
+
- - ">="
|
55
|
+
- !ruby/object:Gem::Version
|
56
|
+
version: '0'
|
57
|
+
type: :development
|
58
|
+
prerelease: false
|
59
|
+
version_requirements: !ruby/object:Gem::Requirement
|
60
|
+
requirements:
|
61
|
+
- - ">="
|
62
|
+
- !ruby/object:Gem::Version
|
63
|
+
version: '0'
|
64
|
+
- !ruby/object:Gem::Dependency
|
65
|
+
name: mysql2
|
66
|
+
requirement: !ruby/object:Gem::Requirement
|
67
|
+
requirements:
|
68
|
+
- - ">="
|
69
|
+
- !ruby/object:Gem::Version
|
70
|
+
version: '0'
|
71
|
+
type: :development
|
72
|
+
prerelease: false
|
73
|
+
version_requirements: !ruby/object:Gem::Requirement
|
74
|
+
requirements:
|
75
|
+
- - ">="
|
76
|
+
- !ruby/object:Gem::Version
|
77
|
+
version: '0'
|
78
|
+
- !ruby/object:Gem::Dependency
|
79
|
+
name: toxiproxy
|
80
|
+
requirement: !ruby/object:Gem::Requirement
|
81
|
+
requirements:
|
82
|
+
- - ">="
|
83
|
+
- !ruby/object:Gem::Version
|
84
|
+
version: '0'
|
85
|
+
type: :development
|
86
|
+
prerelease: false
|
87
|
+
version_requirements: !ruby/object:Gem::Requirement
|
88
|
+
requirements:
|
89
|
+
- - ">="
|
90
|
+
- !ruby/object:Gem::Version
|
91
|
+
version: '0'
|
50
92
|
description: |2
|
51
93
|
A Ruby C extention that is used to control access to shared resources
|
52
94
|
across process boundaries with SysV semaphores.
|
@@ -65,11 +107,20 @@ files:
|
|
65
107
|
- ext/semian/extconf.rb
|
66
108
|
- ext/semian/semian.c
|
67
109
|
- lib/semian.rb
|
110
|
+
- lib/semian/circuit_breaker.rb
|
111
|
+
- lib/semian/instrumentable.rb
|
112
|
+
- lib/semian/mysql2.rb
|
68
113
|
- lib/semian/platform.rb
|
69
|
-
- lib/semian/
|
114
|
+
- lib/semian/protected_resource.rb
|
115
|
+
- lib/semian/resource.rb
|
70
116
|
- lib/semian/version.rb
|
117
|
+
- scripts/install_toxiproxy.sh
|
71
118
|
- semian.gemspec
|
72
|
-
- test/
|
119
|
+
- test/fixtures/toxiproxy.json
|
120
|
+
- test/test_circuit_breaker.rb
|
121
|
+
- test/test_instrumentation.rb
|
122
|
+
- test/test_mysql2.rb
|
123
|
+
- test/test_resource.rb
|
73
124
|
- test/test_unsupported.rb
|
74
125
|
homepage: https://github.com/csfrancis/semian
|
75
126
|
licenses:
|
metadata.gz.sig
CHANGED
@@ -1,2 +1 @@
|
|
1
|
-
�
|
2
|
-
��A��h\Г{�Ȳ��.��Z���9�I��n�D���V�Ҩ���ϗ�D�ٳ�����ۻe��,cދ�GOg�|�� Q/����6
|
1
|
+
3ܯ�13~ck�j:I���HuqT��t�s<ߨ�
|
data/lib/semian/unsupported.rb
DELETED
@@ -1,26 +0,0 @@
|
|
1
|
-
class Semian
|
2
|
-
MAX_TICKETS = 0
|
3
|
-
|
4
|
-
BaseError = Class.new(StandardError)
|
5
|
-
SyscallError = Class.new(BaseError)
|
6
|
-
TimeoutError = Class.new(BaseError)
|
7
|
-
InternalError = Class.new(BaseError)
|
8
|
-
|
9
|
-
class Resource #:nodoc:
|
10
|
-
def initialize(name, tickets, permissions, timeout); end
|
11
|
-
|
12
|
-
def destroy; end
|
13
|
-
|
14
|
-
def acquire(*)
|
15
|
-
yield self
|
16
|
-
end
|
17
|
-
|
18
|
-
def count
|
19
|
-
0
|
20
|
-
end
|
21
|
-
|
22
|
-
def semid
|
23
|
-
0
|
24
|
-
end
|
25
|
-
end
|
26
|
-
end
|