skull_island 2.2.2 → 2.3.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.rubocop.yml +1 -1
- data/.travis.yml +3 -5
- data/Dockerfile +1 -1
- data/Gemfile.lock +16 -16
- data/README.md +10 -8
- data/lib/skull_island.rb +1 -1
- data/lib/skull_island/version.rb +2 -2
- data/skull_island.gemspec +4 -4
- metadata +19 -19
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 57af8762038a7aaa846d5c128fe4a8960171e15ee568f6f6e7bbfad4ca429bfa
|
4
|
+
data.tar.gz: 4de11e341de6bd39a38834daa63c3c2db1b98b4c287edbbdf97bbb450429e7db
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 01a602058e36398d2b54e108a160e0d4f4ef5b0659605416c76b0014c92a79abf3e4ec430b4b5f2035fe236ca36d9293776f386d5d18c3cbf41f3cdbf98f39cb
|
7
|
+
data.tar.gz: 7fc4b55ab20a8fb38689fee1b79941b43d0de5887452e2f0b180daf3f71d8635bd89e24b9e9030d99b0936fc31d77312b987b03af536eaa40b40ea7627f1b072
|
data/.rubocop.yml
CHANGED
data/.travis.yml
CHANGED
@@ -1,10 +1,8 @@
|
|
1
1
|
language: ruby
|
2
2
|
cache: bundler
|
3
3
|
rvm:
|
4
|
-
-
|
5
|
-
- 2.
|
6
|
-
- 2.7
|
7
|
-
before_install: gem install bundler -v '~> 2.0'
|
4
|
+
- 3.0
|
5
|
+
before_install: gem install bundler -v '~> 2.2'
|
8
6
|
deploy:
|
9
7
|
provider: rubygems
|
10
8
|
api_key:
|
@@ -12,5 +10,5 @@ deploy:
|
|
12
10
|
gem: skull_island
|
13
11
|
on:
|
14
12
|
tags: true
|
15
|
-
rvm:
|
13
|
+
rvm: 3.0
|
16
14
|
repo: jgnagy/skull_island
|
data/Dockerfile
CHANGED
data/Gemfile.lock
CHANGED
@@ -1,19 +1,19 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
skull_island (2.
|
4
|
+
skull_island (2.3.0)
|
5
5
|
deepsort (~> 0.4)
|
6
6
|
erubi (~> 1.8)
|
7
|
-
json (~> 2.1)
|
8
7
|
linguistics (~> 2.1)
|
9
8
|
rest-client (~> 2.1)
|
10
9
|
thor (~> 1.0)
|
11
10
|
will_paginate (~> 3.1)
|
11
|
+
yajl-ruby (~> 1.4)
|
12
12
|
|
13
13
|
GEM
|
14
14
|
remote: https://rubygems.org/
|
15
15
|
specs:
|
16
|
-
activesupport (5.2.4.
|
16
|
+
activesupport (5.2.4.5)
|
17
17
|
concurrent-ruby (~> 1.0, >= 1.0.2)
|
18
18
|
i18n (>= 0.7, < 2)
|
19
19
|
minitest (~> 5.1)
|
@@ -22,12 +22,11 @@ GEM
|
|
22
22
|
public_suffix (>= 2.0.2, < 5.0)
|
23
23
|
ast (2.4.2)
|
24
24
|
concurrent-ruby (1.1.8)
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
thor
|
25
|
+
coveralls_reborn (0.20.0)
|
26
|
+
simplecov (>= 0.18.1, < 0.22.0)
|
27
|
+
term-ansicolor (~> 1.6)
|
28
|
+
thor (>= 0.20.3, < 2.0)
|
29
|
+
tins (~> 1.16)
|
31
30
|
deepsort (0.4.5)
|
32
31
|
diff-lcs (1.4.4)
|
33
32
|
docile (1.3.5)
|
@@ -53,7 +52,7 @@ GEM
|
|
53
52
|
http-accept (1.7.0)
|
54
53
|
http-cookie (1.0.3)
|
55
54
|
domain_name (~> 0.5)
|
56
|
-
i18n (1.8.
|
55
|
+
i18n (1.8.9)
|
57
56
|
concurrent-ruby (~> 1.0)
|
58
57
|
json (2.5.1)
|
59
58
|
json_pure (2.5.1)
|
@@ -64,7 +63,7 @@ GEM
|
|
64
63
|
loggability (0.18.2)
|
65
64
|
mime-types (3.3.1)
|
66
65
|
mime-types-data (~> 3.2015)
|
67
|
-
mime-types-data (3.
|
66
|
+
mime-types-data (3.2021.0212)
|
68
67
|
minitest (5.14.3)
|
69
68
|
multi_json (1.15.0)
|
70
69
|
multipart-post (2.1.1)
|
@@ -96,10 +95,10 @@ GEM
|
|
96
95
|
rspec-expectations (3.10.1)
|
97
96
|
diff-lcs (>= 1.2.0, < 2.0)
|
98
97
|
rspec-support (~> 3.10.0)
|
99
|
-
rspec-mocks (3.10.
|
98
|
+
rspec-mocks (3.10.2)
|
100
99
|
diff-lcs (>= 1.2.0, < 2.0)
|
101
100
|
rspec-support (~> 3.10.0)
|
102
|
-
rspec-support (3.10.
|
101
|
+
rspec-support (3.10.2)
|
103
102
|
rubocop (0.93.1)
|
104
103
|
parallel (~> 1.10)
|
105
104
|
parser (>= 2.7.1.5)
|
@@ -142,6 +141,7 @@ GEM
|
|
142
141
|
unicode-display_width (1.7.0)
|
143
142
|
websocket (1.2.9)
|
144
143
|
will_paginate (3.3.0)
|
144
|
+
yajl-ruby (1.4.1)
|
145
145
|
yard (0.9.26)
|
146
146
|
|
147
147
|
PLATFORMS
|
@@ -149,14 +149,14 @@ PLATFORMS
|
|
149
149
|
|
150
150
|
DEPENDENCIES
|
151
151
|
bundler (~> 2.0)
|
152
|
-
|
152
|
+
coveralls_reborn (~> 0.20)
|
153
153
|
rake (~> 13.0)
|
154
154
|
rspec (~> 3.0)
|
155
155
|
rubocop (~> 0.50)
|
156
|
-
simplecov (~> 0.
|
156
|
+
simplecov (~> 0.21)
|
157
157
|
skull_island!
|
158
158
|
travis (~> 1.8)
|
159
159
|
yard (~> 0.9.20)
|
160
160
|
|
161
161
|
BUNDLED WITH
|
162
|
-
2.2.
|
162
|
+
2.2.10
|
data/README.md
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
# Skull Island
|
2
2
|
|
3
|
-
A full-featured SDK for [Kong](https://konghq.com/kong/) 2.
|
3
|
+
A full-featured SDK for [Kong](https://konghq.com/kong/) 2.3.x (with support 2.0.x, 2.1.x, and 2.2.x, and for migrating from 0.14.x, 1.1.x, 1.2.x, 1.4.x, and 1.5.x). Note that this is unofficial (meaning this project is in no way officially endorsed, recommended, or related to Kong [as a company](https://konghq.com/) or an [open-source project](https://github.com/Kong/kong)). It is also in no way related to the [pet toy company](https://www.kongcompany.com/) by the same name (but hopefully that was obvious).
|
4
4
|
|
5
5
|
![Gem](https://img.shields.io/gem/v/skull_island)
|
6
6
|
![Travis (.org)](https://img.shields.io/travis/jgnagy/skull_island)
|
@@ -21,7 +21,9 @@ skull_island help
|
|
21
21
|
|
22
22
|
### Ruby Gem Install / SDK
|
23
23
|
|
24
|
-
|
24
|
+
**Note:** Starting with 2.3.0, Skull Island only supports Ruby 3.0+. If you need to use Ruby 2.x, you'll need to use a gem version < 2.3.0. I'll maintain the 2.2.x line for Ruby 2.x compatibility for 2021.
|
25
|
+
|
26
|
+
To use the Skull Island gem, either:
|
25
27
|
|
26
28
|
```sh
|
27
29
|
gem install skull_island
|
@@ -30,7 +32,7 @@ gem install skull_island
|
|
30
32
|
Or add this to your Gemfile:
|
31
33
|
|
32
34
|
```ruby
|
33
|
-
gem 'skull_island', '~> 2.
|
35
|
+
gem 'skull_island', '~> 2.3'
|
34
36
|
```
|
35
37
|
|
36
38
|
Or add this to your .gemspec:
|
@@ -38,7 +40,7 @@ Or add this to your .gemspec:
|
|
38
40
|
```ruby
|
39
41
|
Gem::Specification.new do |spec|
|
40
42
|
# ...
|
41
|
-
spec.add_runtime_dependency 'skull_island', '~> 2.
|
43
|
+
spec.add_runtime_dependency 'skull_island', '~> 2.3'
|
42
44
|
# ...
|
43
45
|
end
|
44
46
|
```
|
@@ -149,7 +151,7 @@ When using the `project` feature of Skull Island, the CLI tool will automaticall
|
|
149
151
|
|
150
152
|
### Migrating
|
151
153
|
|
152
|
-
With Skull Island, it is possible to migrate a configuration from a 0.14.x, 1.1.x, 1.2.x, 1.4.x, or 1.5.x gateway to the most recent compatible gateway. If you have a previous export, you can just run `skull_island migrate /path/to/export.yml` and you'll receive a 2.
|
154
|
+
With Skull Island, it is possible to migrate a configuration from a 0.14.x, 1.1.x, 1.2.x, 1.4.x, or 1.5.x gateway to the most recent compatible gateway. If you have a previous export, you can just run `skull_island migrate /path/to/export.yml` and you'll receive a 2.3 compatible config on standard out. If you'd prefer, you can have that config written to a file as well (just like the export command) like so:
|
153
155
|
|
154
156
|
```sh
|
155
157
|
skull_island migrate /path/to/export.yml /output/location/migrated.yml
|
@@ -159,7 +161,7 @@ While this hasn't been heavily tested for all possible use-cases, any configurat
|
|
159
161
|
|
160
162
|
If you don't have a previous export, you'll need to install an older version of this gem using something like `gem install --version '~> 0.14' skull_island`, then perform an `export`, then you can switch back to the latest version of the gem for migrating and importing.
|
161
163
|
|
162
|
-
While it would be possible to make migration _automatic_ for the `import` command, `skull_island` intentionally doesn't do this to avoid the appearance that the config is losslessly compatible across versions. In reality, the newer config version has additional features (like tagging) that are used heavily by skull_island. It makes sense to this author to maintain the migration component and the normal functionality as distinct features to encourage the use of the newer capabilities in 1.1 and beyond. That said, Skull Island does allow 1.x, 2.0.x, and 2.
|
164
|
+
While it would be possible to make migration _automatic_ for the `import` command, `skull_island` intentionally doesn't do this to avoid the appearance that the config is losslessly compatible across versions. In reality, the newer config version has additional features (like tagging) that are used heavily by skull_island. It makes sense to this author to maintain the migration component and the normal functionality as distinct features to encourage the use of the newer capabilities in 1.1 and beyond. That said, Skull Island does allow 1.x, 2.0.x, 2.1.x, and 2.2.x version configurations to be applied to 2.3 gateways, but not the opposite.
|
163
165
|
|
164
166
|
### Reset A Gateway
|
165
167
|
|
@@ -188,7 +190,7 @@ If you're wondering what version of `skull_island` is installed, use:
|
|
188
190
|
```sh
|
189
191
|
$ skull_island version
|
190
192
|
|
191
|
-
SkullIsland Version: 2.
|
193
|
+
SkullIsland Version: 2.3.0
|
192
194
|
```
|
193
195
|
|
194
196
|
### File Format
|
@@ -197,7 +199,7 @@ The import/export/migrate CLI functions produce YAML with support for embedded R
|
|
197
199
|
|
198
200
|
```yaml
|
199
201
|
---
|
200
|
-
version: '2.
|
202
|
+
version: '2.3'
|
201
203
|
project: FooV2
|
202
204
|
certificates: []
|
203
205
|
ca_certificates:
|
data/lib/skull_island.rb
CHANGED
@@ -9,7 +9,6 @@ Hash.include CoreExtensions::Hash::Pruning
|
|
9
9
|
# Standard Library Requirements
|
10
10
|
require 'date'
|
11
11
|
require 'digest'
|
12
|
-
require 'json'
|
13
12
|
require 'singleton'
|
14
13
|
require 'uri'
|
15
14
|
require 'yaml'
|
@@ -22,6 +21,7 @@ Linguistics.use(:en)
|
|
22
21
|
require 'rest-client'
|
23
22
|
require 'will_paginate'
|
24
23
|
require 'will_paginate/array'
|
24
|
+
require 'yajl/json_gem'
|
25
25
|
|
26
26
|
# Internal Requirements
|
27
27
|
require 'skull_island/version'
|
data/lib/skull_island/version.rb
CHANGED
data/skull_island.gemspec
CHANGED
@@ -24,22 +24,22 @@ Gem::Specification.new do |spec|
|
|
24
24
|
spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
|
25
25
|
spec.require_paths = ['lib']
|
26
26
|
|
27
|
-
spec.required_ruby_version = '~>
|
27
|
+
spec.required_ruby_version = '~> 3.0'
|
28
28
|
|
29
29
|
spec.add_runtime_dependency 'deepsort', '~> 0.4'
|
30
30
|
spec.add_runtime_dependency 'erubi', '~> 1.8'
|
31
|
-
spec.add_runtime_dependency 'json', '~> 2.1'
|
32
31
|
spec.add_runtime_dependency 'linguistics', '~> 2.1'
|
33
32
|
spec.add_runtime_dependency 'rest-client', '~> 2.1'
|
34
33
|
spec.add_runtime_dependency 'thor', '~> 1.0'
|
35
34
|
spec.add_runtime_dependency 'will_paginate', '~> 3.1'
|
35
|
+
spec.add_runtime_dependency 'yajl-ruby', '~> 1.4'
|
36
36
|
|
37
37
|
spec.add_development_dependency 'bundler', '~> 2.0'
|
38
|
-
spec.add_development_dependency '
|
38
|
+
spec.add_development_dependency 'coveralls_reborn', '~> 0.20'
|
39
39
|
spec.add_development_dependency 'rake', '~> 13.0'
|
40
40
|
spec.add_development_dependency 'rspec', '~> 3.0'
|
41
41
|
spec.add_development_dependency 'rubocop', '~> 0.50'
|
42
|
-
spec.add_development_dependency 'simplecov', '~> 0.
|
42
|
+
spec.add_development_dependency 'simplecov', '~> 0.21'
|
43
43
|
spec.add_development_dependency 'travis', '~> 1.8'
|
44
44
|
spec.add_development_dependency 'yard', '~> 0.9.20'
|
45
45
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: skull_island
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.
|
4
|
+
version: 2.3.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Jonathan Gnagy
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2021-02-
|
11
|
+
date: 2021-02-17 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: deepsort
|
@@ -39,7 +39,7 @@ dependencies:
|
|
39
39
|
- !ruby/object:Gem::Version
|
40
40
|
version: '1.8'
|
41
41
|
- !ruby/object:Gem::Dependency
|
42
|
-
name:
|
42
|
+
name: linguistics
|
43
43
|
requirement: !ruby/object:Gem::Requirement
|
44
44
|
requirements:
|
45
45
|
- - "~>"
|
@@ -53,7 +53,7 @@ dependencies:
|
|
53
53
|
- !ruby/object:Gem::Version
|
54
54
|
version: '2.1'
|
55
55
|
- !ruby/object:Gem::Dependency
|
56
|
-
name:
|
56
|
+
name: rest-client
|
57
57
|
requirement: !ruby/object:Gem::Requirement
|
58
58
|
requirements:
|
59
59
|
- - "~>"
|
@@ -67,47 +67,47 @@ dependencies:
|
|
67
67
|
- !ruby/object:Gem::Version
|
68
68
|
version: '2.1'
|
69
69
|
- !ruby/object:Gem::Dependency
|
70
|
-
name:
|
70
|
+
name: thor
|
71
71
|
requirement: !ruby/object:Gem::Requirement
|
72
72
|
requirements:
|
73
73
|
- - "~>"
|
74
74
|
- !ruby/object:Gem::Version
|
75
|
-
version: '
|
75
|
+
version: '1.0'
|
76
76
|
type: :runtime
|
77
77
|
prerelease: false
|
78
78
|
version_requirements: !ruby/object:Gem::Requirement
|
79
79
|
requirements:
|
80
80
|
- - "~>"
|
81
81
|
- !ruby/object:Gem::Version
|
82
|
-
version: '
|
82
|
+
version: '1.0'
|
83
83
|
- !ruby/object:Gem::Dependency
|
84
|
-
name:
|
84
|
+
name: will_paginate
|
85
85
|
requirement: !ruby/object:Gem::Requirement
|
86
86
|
requirements:
|
87
87
|
- - "~>"
|
88
88
|
- !ruby/object:Gem::Version
|
89
|
-
version: '1
|
89
|
+
version: '3.1'
|
90
90
|
type: :runtime
|
91
91
|
prerelease: false
|
92
92
|
version_requirements: !ruby/object:Gem::Requirement
|
93
93
|
requirements:
|
94
94
|
- - "~>"
|
95
95
|
- !ruby/object:Gem::Version
|
96
|
-
version: '1
|
96
|
+
version: '3.1'
|
97
97
|
- !ruby/object:Gem::Dependency
|
98
|
-
name:
|
98
|
+
name: yajl-ruby
|
99
99
|
requirement: !ruby/object:Gem::Requirement
|
100
100
|
requirements:
|
101
101
|
- - "~>"
|
102
102
|
- !ruby/object:Gem::Version
|
103
|
-
version: '
|
103
|
+
version: '1.4'
|
104
104
|
type: :runtime
|
105
105
|
prerelease: false
|
106
106
|
version_requirements: !ruby/object:Gem::Requirement
|
107
107
|
requirements:
|
108
108
|
- - "~>"
|
109
109
|
- !ruby/object:Gem::Version
|
110
|
-
version: '
|
110
|
+
version: '1.4'
|
111
111
|
- !ruby/object:Gem::Dependency
|
112
112
|
name: bundler
|
113
113
|
requirement: !ruby/object:Gem::Requirement
|
@@ -123,19 +123,19 @@ dependencies:
|
|
123
123
|
- !ruby/object:Gem::Version
|
124
124
|
version: '2.0'
|
125
125
|
- !ruby/object:Gem::Dependency
|
126
|
-
name:
|
126
|
+
name: coveralls_reborn
|
127
127
|
requirement: !ruby/object:Gem::Requirement
|
128
128
|
requirements:
|
129
129
|
- - "~>"
|
130
130
|
- !ruby/object:Gem::Version
|
131
|
-
version: '0.
|
131
|
+
version: '0.20'
|
132
132
|
type: :development
|
133
133
|
prerelease: false
|
134
134
|
version_requirements: !ruby/object:Gem::Requirement
|
135
135
|
requirements:
|
136
136
|
- - "~>"
|
137
137
|
- !ruby/object:Gem::Version
|
138
|
-
version: '0.
|
138
|
+
version: '0.20'
|
139
139
|
- !ruby/object:Gem::Dependency
|
140
140
|
name: rake
|
141
141
|
requirement: !ruby/object:Gem::Requirement
|
@@ -184,14 +184,14 @@ dependencies:
|
|
184
184
|
requirements:
|
185
185
|
- - "~>"
|
186
186
|
- !ruby/object:Gem::Version
|
187
|
-
version: '0.
|
187
|
+
version: '0.21'
|
188
188
|
type: :development
|
189
189
|
prerelease: false
|
190
190
|
version_requirements: !ruby/object:Gem::Requirement
|
191
191
|
requirements:
|
192
192
|
- - "~>"
|
193
193
|
- !ruby/object:Gem::Version
|
194
|
-
version: '0.
|
194
|
+
version: '0.21'
|
195
195
|
- !ruby/object:Gem::Dependency
|
196
196
|
name: travis
|
197
197
|
requirement: !ruby/object:Gem::Requirement
|
@@ -299,7 +299,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
299
299
|
requirements:
|
300
300
|
- - "~>"
|
301
301
|
- !ruby/object:Gem::Version
|
302
|
-
version: '
|
302
|
+
version: '3.0'
|
303
303
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
304
304
|
requirements:
|
305
305
|
- - ">="
|