3scale_toolbox 0.19.3 → 0.20.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/3scale_toolbox.gemspec +2 -1
- data/README.md +6 -4
- data/lib/3scale_toolbox/3scale_client_factory.rb +9 -7
- data/lib/3scale_toolbox/base_command.rb +5 -1
- data/lib/3scale_toolbox/cli/null_printer.rb +11 -0
- data/lib/3scale_toolbox/cli.rb +1 -0
- data/lib/3scale_toolbox/commands/3scale_command.rb +1 -0
- data/lib/3scale_toolbox/commands/activedocs_command/apply_command.rb +1 -1
- data/lib/3scale_toolbox/commands/activedocs_command/create_command.rb +8 -9
- data/lib/3scale_toolbox/commands/import_command/openapi/create_activedocs_step.rb +1 -1
- data/lib/3scale_toolbox/commands/import_command/openapi/create_backend_mapping_rule_step.rb +21 -0
- data/lib/3scale_toolbox/commands/import_command/openapi/create_backend_method_step.rb +41 -0
- data/lib/3scale_toolbox/commands/import_command/openapi/create_backend_step.rb +62 -0
- data/lib/3scale_toolbox/commands/import_command/openapi/create_mapping_rule_step.rb +3 -1
- data/lib/3scale_toolbox/commands/import_command/openapi/create_service_step.rb +7 -2
- data/lib/3scale_toolbox/commands/import_command/openapi/import_backend_step.rb +31 -0
- data/lib/3scale_toolbox/commands/import_command/openapi/import_product_step.rb +30 -0
- data/lib/3scale_toolbox/commands/import_command/openapi/method.rb +1 -1
- data/lib/3scale_toolbox/commands/import_command/openapi/step.rb +27 -1
- data/lib/3scale_toolbox/commands/import_command/openapi/update_policies_step.rb +1 -1
- data/lib/3scale_toolbox/commands/import_command/openapi/update_service_oidc_conf_step.rb +1 -1
- data/lib/3scale_toolbox/commands/import_command/openapi/update_service_proxy_step.rb +4 -8
- data/lib/3scale_toolbox/commands/import_command/openapi.rb +44 -18
- data/lib/3scale_toolbox/commands/plans_command/import_command.rb +1 -1
- data/lib/3scale_toolbox/commands/policies_command/import_command.rb +1 -1
- data/lib/3scale_toolbox/commands/product_command/import_command.rb +1 -1
- data/lib/3scale_toolbox/commands/proxy_command/deploy_command.rb +54 -0
- data/lib/3scale_toolbox/commands/proxy_command/show_command.rb +54 -0
- data/lib/3scale_toolbox/commands/proxy_command/update_command.rb +75 -0
- data/lib/3scale_toolbox/commands/proxy_command.rb +28 -0
- data/lib/3scale_toolbox/commands/proxy_config_command/deploy_command.rb +3 -2
- data/lib/3scale_toolbox/commands/service_command/show_command.rb +1 -2
- data/lib/3scale_toolbox/commands.rb +2 -2
- data/lib/3scale_toolbox/entities/backend.rb +13 -1
- data/lib/3scale_toolbox/entities/service.rb +1 -2
- data/lib/3scale_toolbox/resource_reader.rb +24 -9
- data/lib/3scale_toolbox/version.rb +1 -1
- data/licenses.xml +18 -18
- metadata +28 -8
- data/lib/3scale_toolbox/commands/update_command/service_command/copy_service_settings_task.rb +0 -35
- data/lib/3scale_toolbox/commands/update_command/service_command/delete_activedocs_task.rb +0 -24
- data/lib/3scale_toolbox/commands/update_command/service_command.rb +0 -80
- data/lib/3scale_toolbox/commands/update_command.rb +0 -22
data/licenses.xml
CHANGED
@@ -3,7 +3,7 @@
|
|
3
3
|
<dependencies>
|
4
4
|
<dependency>
|
5
5
|
<packageName>3scale-api</packageName>
|
6
|
-
<version>1.
|
6
|
+
<version>1.6.0</version>
|
7
7
|
<licenses>
|
8
8
|
<license>
|
9
9
|
<name>MIT</name>
|
@@ -13,7 +13,7 @@
|
|
13
13
|
</dependency>
|
14
14
|
<dependency>
|
15
15
|
<packageName>3scale_toolbox</packageName>
|
16
|
-
<version>0.
|
16
|
+
<version>0.20.0</version>
|
17
17
|
<licenses>
|
18
18
|
<license>
|
19
19
|
<name>MIT</name>
|
@@ -23,7 +23,7 @@
|
|
23
23
|
</dependency>
|
24
24
|
<dependency>
|
25
25
|
<packageName>activesupport</packageName>
|
26
|
-
<version>6.1.4.
|
26
|
+
<version>6.1.4.4</version>
|
27
27
|
<licenses>
|
28
28
|
<license>
|
29
29
|
<name>MIT</name>
|
@@ -63,7 +63,7 @@
|
|
63
63
|
</dependency>
|
64
64
|
<dependency>
|
65
65
|
<packageName>codecov</packageName>
|
66
|
-
<version>0.
|
66
|
+
<version>0.6.0</version>
|
67
67
|
<licenses>
|
68
68
|
<license>
|
69
69
|
<name>MIT</name>
|
@@ -113,7 +113,7 @@
|
|
113
113
|
</dependency>
|
114
114
|
<dependency>
|
115
115
|
<packageName>deep_merge</packageName>
|
116
|
-
<version>1.2.
|
116
|
+
<version>1.2.2</version>
|
117
117
|
<licenses>
|
118
118
|
<license>
|
119
119
|
<name>MIT</name>
|
@@ -123,7 +123,7 @@
|
|
123
123
|
</dependency>
|
124
124
|
<dependency>
|
125
125
|
<packageName>diff-lcs</packageName>
|
126
|
-
<version>1.
|
126
|
+
<version>1.5.0</version>
|
127
127
|
<licenses>
|
128
128
|
<license>
|
129
129
|
<name>MIT</name>
|
@@ -191,7 +191,7 @@
|
|
191
191
|
</dependency>
|
192
192
|
<dependency>
|
193
193
|
<packageName>i18n</packageName>
|
194
|
-
<version>1.
|
194
|
+
<version>1.9.1</version>
|
195
195
|
<licenses>
|
196
196
|
<license>
|
197
197
|
<name>MIT</name>
|
@@ -231,7 +231,7 @@
|
|
231
231
|
</dependency>
|
232
232
|
<dependency>
|
233
233
|
<packageName>minitest</packageName>
|
234
|
-
<version>5.
|
234
|
+
<version>5.15.0</version>
|
235
235
|
<licenses>
|
236
236
|
<license>
|
237
237
|
<name>MIT</name>
|
@@ -261,7 +261,7 @@
|
|
261
261
|
</dependency>
|
262
262
|
<dependency>
|
263
263
|
<packageName>nokogiri</packageName>
|
264
|
-
<version>1.
|
264
|
+
<version>1.13.1</version>
|
265
265
|
<licenses>
|
266
266
|
<license>
|
267
267
|
<name>MIT</name>
|
@@ -325,7 +325,7 @@
|
|
325
325
|
</dependency>
|
326
326
|
<dependency>
|
327
327
|
<packageName>rake</packageName>
|
328
|
-
<version>13.0.
|
328
|
+
<version>13.0.6</version>
|
329
329
|
<licenses>
|
330
330
|
<license>
|
331
331
|
<name>MIT</name>
|
@@ -355,7 +355,7 @@
|
|
355
355
|
</dependency>
|
356
356
|
<dependency>
|
357
357
|
<packageName>rspec-core</packageName>
|
358
|
-
<version>3.10.
|
358
|
+
<version>3.10.2</version>
|
359
359
|
<licenses>
|
360
360
|
<license>
|
361
361
|
<name>MIT</name>
|
@@ -365,7 +365,7 @@
|
|
365
365
|
</dependency>
|
366
366
|
<dependency>
|
367
367
|
<packageName>rspec-expectations</packageName>
|
368
|
-
<version>3.10.
|
368
|
+
<version>3.10.2</version>
|
369
369
|
<licenses>
|
370
370
|
<license>
|
371
371
|
<name>MIT</name>
|
@@ -375,7 +375,7 @@
|
|
375
375
|
</dependency>
|
376
376
|
<dependency>
|
377
377
|
<packageName>rspec-mocks</packageName>
|
378
|
-
<version>3.10.
|
378
|
+
<version>3.10.3</version>
|
379
379
|
<licenses>
|
380
380
|
<license>
|
381
381
|
<name>MIT</name>
|
@@ -385,7 +385,7 @@
|
|
385
385
|
</dependency>
|
386
386
|
<dependency>
|
387
387
|
<packageName>rspec-support</packageName>
|
388
|
-
<version>3.10.
|
388
|
+
<version>3.10.3</version>
|
389
389
|
<licenses>
|
390
390
|
<license>
|
391
391
|
<name>MIT</name>
|
@@ -409,7 +409,7 @@
|
|
409
409
|
</dependency>
|
410
410
|
<dependency>
|
411
411
|
<packageName>rubyzip</packageName>
|
412
|
-
<version>2.3.
|
412
|
+
<version>2.3.2</version>
|
413
413
|
<licenses>
|
414
414
|
<license>
|
415
415
|
<name>Simplified BSD</name>
|
@@ -479,7 +479,7 @@
|
|
479
479
|
</dependency>
|
480
480
|
<dependency>
|
481
481
|
<packageName>webmock</packageName>
|
482
|
-
<version>3.
|
482
|
+
<version>3.14.0</version>
|
483
483
|
<licenses>
|
484
484
|
<license>
|
485
485
|
<name>MIT</name>
|
@@ -499,7 +499,7 @@
|
|
499
499
|
</dependency>
|
500
500
|
<dependency>
|
501
501
|
<packageName>xml-simple</packageName>
|
502
|
-
<version>1.1.
|
502
|
+
<version>1.1.9</version>
|
503
503
|
<licenses>
|
504
504
|
<license>
|
505
505
|
<name>MIT</name>
|
@@ -509,7 +509,7 @@
|
|
509
509
|
</dependency>
|
510
510
|
<dependency>
|
511
511
|
<packageName>zeitwerk</packageName>
|
512
|
-
<version>2.5.
|
512
|
+
<version>2.5.4</version>
|
513
513
|
<licenses>
|
514
514
|
<license>
|
515
515
|
<name>MIT</name>
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: 3scale_toolbox
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.20.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Miguel Soriano
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: exe
|
11
11
|
cert_chain: []
|
12
|
-
date:
|
12
|
+
date: 2022-02-03 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: bundler
|
@@ -87,14 +87,14 @@ dependencies:
|
|
87
87
|
requirements:
|
88
88
|
- - "~>"
|
89
89
|
- !ruby/object:Gem::Version
|
90
|
-
version: '1.
|
90
|
+
version: '1.6'
|
91
91
|
type: :runtime
|
92
92
|
prerelease: false
|
93
93
|
version_requirements: !ruby/object:Gem::Requirement
|
94
94
|
requirements:
|
95
95
|
- - "~>"
|
96
96
|
- !ruby/object:Gem::Version
|
97
|
-
version: '1.
|
97
|
+
version: '1.6'
|
98
98
|
- !ruby/object:Gem::Dependency
|
99
99
|
name: cri
|
100
100
|
requirement: !ruby/object:Gem::Requirement
|
@@ -137,6 +137,20 @@ dependencies:
|
|
137
137
|
- - "~>"
|
138
138
|
- !ruby/object:Gem::Version
|
139
139
|
version: '0.20'
|
140
|
+
- !ruby/object:Gem::Dependency
|
141
|
+
name: activesupport
|
142
|
+
requirement: !ruby/object:Gem::Requirement
|
143
|
+
requirements:
|
144
|
+
- - "~>"
|
145
|
+
- !ruby/object:Gem::Version
|
146
|
+
version: '6.0'
|
147
|
+
type: :runtime
|
148
|
+
prerelease: false
|
149
|
+
version_requirements: !ruby/object:Gem::Requirement
|
150
|
+
requirements:
|
151
|
+
- - "~>"
|
152
|
+
- !ruby/object:Gem::Version
|
153
|
+
version: '6.0'
|
140
154
|
description: 3scale tools to manage your API from the terminal.
|
141
155
|
email:
|
142
156
|
- msoriano@redhat.com
|
@@ -161,6 +175,7 @@ files:
|
|
161
175
|
- lib/3scale_toolbox/cli/custom_table_printer.rb
|
162
176
|
- lib/3scale_toolbox/cli/error_handler.rb
|
163
177
|
- lib/3scale_toolbox/cli/json_printer.rb
|
178
|
+
- lib/3scale_toolbox/cli/null_printer.rb
|
164
179
|
- lib/3scale_toolbox/cli/output_flag.rb
|
165
180
|
- lib/3scale_toolbox/cli/yaml_printer.rb
|
166
181
|
- lib/3scale_toolbox/commands.rb
|
@@ -194,9 +209,14 @@ files:
|
|
194
209
|
- lib/3scale_toolbox/commands/import_command/issuer_type_transformer.rb
|
195
210
|
- lib/3scale_toolbox/commands/import_command/openapi.rb
|
196
211
|
- lib/3scale_toolbox/commands/import_command/openapi/create_activedocs_step.rb
|
212
|
+
- lib/3scale_toolbox/commands/import_command/openapi/create_backend_mapping_rule_step.rb
|
213
|
+
- lib/3scale_toolbox/commands/import_command/openapi/create_backend_method_step.rb
|
214
|
+
- lib/3scale_toolbox/commands/import_command/openapi/create_backend_step.rb
|
197
215
|
- lib/3scale_toolbox/commands/import_command/openapi/create_mapping_rule_step.rb
|
198
216
|
- lib/3scale_toolbox/commands/import_command/openapi/create_method_step.rb
|
199
217
|
- lib/3scale_toolbox/commands/import_command/openapi/create_service_step.rb
|
218
|
+
- lib/3scale_toolbox/commands/import_command/openapi/import_backend_step.rb
|
219
|
+
- lib/3scale_toolbox/commands/import_command/openapi/import_product_step.rb
|
200
220
|
- lib/3scale_toolbox/commands/import_command/openapi/mapping_rule.rb
|
201
221
|
- lib/3scale_toolbox/commands/import_command/openapi/method.rb
|
202
222
|
- lib/3scale_toolbox/commands/import_command/openapi/operation.rb
|
@@ -241,6 +261,10 @@ files:
|
|
241
261
|
- lib/3scale_toolbox/commands/product_command/copy_command/delete_target_backend_usages_task.rb
|
242
262
|
- lib/3scale_toolbox/commands/product_command/export_command.rb
|
243
263
|
- lib/3scale_toolbox/commands/product_command/import_command.rb
|
264
|
+
- lib/3scale_toolbox/commands/proxy_command.rb
|
265
|
+
- lib/3scale_toolbox/commands/proxy_command/deploy_command.rb
|
266
|
+
- lib/3scale_toolbox/commands/proxy_command/show_command.rb
|
267
|
+
- lib/3scale_toolbox/commands/proxy_command/update_command.rb
|
244
268
|
- lib/3scale_toolbox/commands/proxy_config_command.rb
|
245
269
|
- lib/3scale_toolbox/commands/proxy_config_command/deploy_command.rb
|
246
270
|
- lib/3scale_toolbox/commands/proxy_config_command/export_command.rb
|
@@ -273,10 +297,6 @@ files:
|
|
273
297
|
- lib/3scale_toolbox/commands/service_command/delete_command.rb
|
274
298
|
- lib/3scale_toolbox/commands/service_command/list_command.rb
|
275
299
|
- lib/3scale_toolbox/commands/service_command/show_command.rb
|
276
|
-
- lib/3scale_toolbox/commands/update_command.rb
|
277
|
-
- lib/3scale_toolbox/commands/update_command/service_command.rb
|
278
|
-
- lib/3scale_toolbox/commands/update_command/service_command/copy_service_settings_task.rb
|
279
|
-
- lib/3scale_toolbox/commands/update_command/service_command/delete_activedocs_task.rb
|
280
300
|
- lib/3scale_toolbox/configuration.rb
|
281
301
|
- lib/3scale_toolbox/crds.rb
|
282
302
|
- lib/3scale_toolbox/crds/application_plan_dump.rb
|
data/lib/3scale_toolbox/commands/update_command/service_command/copy_service_settings_task.rb
DELETED
@@ -1,35 +0,0 @@
|
|
1
|
-
module ThreeScaleToolbox
|
2
|
-
module Commands
|
3
|
-
module UpdateCommand
|
4
|
-
module ServiceCommand
|
5
|
-
class CopyServiceSettingsTask
|
6
|
-
attr_reader :context
|
7
|
-
|
8
|
-
def initialize(context)
|
9
|
-
@context = context
|
10
|
-
end
|
11
|
-
|
12
|
-
def call
|
13
|
-
target.update source_attrs
|
14
|
-
|
15
|
-
puts "updated service settings for service id #{source.id}..."
|
16
|
-
end
|
17
|
-
|
18
|
-
private
|
19
|
-
|
20
|
-
def source
|
21
|
-
context[:source]
|
22
|
-
end
|
23
|
-
|
24
|
-
def target
|
25
|
-
context[:target]
|
26
|
-
end
|
27
|
-
|
28
|
-
def source_attrs
|
29
|
-
source.attrs.reject { |k, _| %w[system_name id links].include? k }
|
30
|
-
end
|
31
|
-
end
|
32
|
-
end
|
33
|
-
end
|
34
|
-
end
|
35
|
-
end
|
@@ -1,24 +0,0 @@
|
|
1
|
-
module ThreeScaleToolbox
|
2
|
-
module Commands
|
3
|
-
module UpdateCommand
|
4
|
-
module ServiceCommand
|
5
|
-
class DeleteActiveDocsTask
|
6
|
-
attr_reader :context
|
7
|
-
|
8
|
-
def initialize(context)
|
9
|
-
@context = context
|
10
|
-
end
|
11
|
-
|
12
|
-
def call
|
13
|
-
puts 'deleting all target service ActiveDocs'
|
14
|
-
target.activedocs.each(&:delete)
|
15
|
-
end
|
16
|
-
|
17
|
-
def target
|
18
|
-
context[:target]
|
19
|
-
end
|
20
|
-
end
|
21
|
-
end
|
22
|
-
end
|
23
|
-
end
|
24
|
-
end
|
@@ -1,80 +0,0 @@
|
|
1
|
-
require '3scale_toolbox/commands/update_command/service_command/delete_activedocs_task'
|
2
|
-
require '3scale_toolbox/commands/update_command/service_command/copy_service_settings_task'
|
3
|
-
|
4
|
-
module ThreeScaleToolbox
|
5
|
-
module Commands
|
6
|
-
module UpdateCommand
|
7
|
-
class ServiceSubcommand < Cri::CommandRunner
|
8
|
-
include ThreeScaleToolbox::Command
|
9
|
-
|
10
|
-
def self.command
|
11
|
-
Cri::Command.define do
|
12
|
-
name 'service'
|
13
|
-
usage 'service [opts] -s <src> -d <dst> <src_service_id> <dst_service_id>'
|
14
|
-
summary '[DEPRECATED] update service'
|
15
|
-
description <<-HEREDOC
|
16
|
-
This command has been deprecated. Use '3scale service copy' instead.
|
17
|
-
\n Update existing service, update proxy settings, metrics, methods, application plans and mapping rules.'
|
18
|
-
HEREDOC
|
19
|
-
|
20
|
-
option :s, :source, '3scale source instance. Url or remote name', argument: :required
|
21
|
-
option :d, :destination, '3scale target instance. Url or remote name', argument: :required
|
22
|
-
option :t, 'target_system_name', 'Target system name', argument: :required
|
23
|
-
flag :f, :force, 'Overwrites the mapping rules by deleting all rules from target service first'
|
24
|
-
flag :r, 'rules-only', 'Updates only the mapping rules'
|
25
|
-
param :src_service_id
|
26
|
-
param :dst_service_id
|
27
|
-
|
28
|
-
runner ServiceSubcommand
|
29
|
-
end
|
30
|
-
end
|
31
|
-
|
32
|
-
def run
|
33
|
-
warn "\e[1m\e[31mThis command has been deprecated. Use '3scale service copy' instead\e[0m"
|
34
|
-
source_service = Entities::Service.new(
|
35
|
-
id: arguments[:src_service_id],
|
36
|
-
remote: threescale_client(fetch_required_option(:source))
|
37
|
-
)
|
38
|
-
update_service = Entities::Service.new(
|
39
|
-
id: arguments[:dst_service_id],
|
40
|
-
remote: threescale_client(fetch_required_option(:destination))
|
41
|
-
)
|
42
|
-
context = create_context(source_service, update_service)
|
43
|
-
|
44
|
-
tasks = []
|
45
|
-
unless options[:'rules-only']
|
46
|
-
tasks << ServiceCommand::CopyServiceSettingsTask.new(context)
|
47
|
-
tasks << ThreeScaleToolbox::Commands::ServiceCommand::CopyCommand::CopyMethodsTask.new(context)
|
48
|
-
tasks << ThreeScaleToolbox::Commands::ServiceCommand::CopyCommand::CopyMetricsTask.new(context)
|
49
|
-
tasks << ThreeScaleToolbox::Commands::ServiceCommand::CopyCommand::CopyApplicationPlansTask.new(context)
|
50
|
-
tasks << ThreeScaleToolbox::Commands::ServiceCommand::CopyCommand::CopyLimitsTask.new(context)
|
51
|
-
tasks << ThreeScaleToolbox::Commands::ServiceCommand::CopyCommand::CopyPoliciesTask.new(context)
|
52
|
-
tasks << ThreeScaleToolbox::Commands::ServiceCommand::CopyCommand::CopyPricingRulesTask.new(context)
|
53
|
-
tasks << ServiceCommand::DeleteActiveDocsTask.new(context)
|
54
|
-
tasks << ThreeScaleToolbox::Commands::ServiceCommand::CopyCommand::CopyActiveDocsTask.new(context)
|
55
|
-
# Copy proxy must be the last task
|
56
|
-
# Proxy update is the mechanism to increase version of the proxy,
|
57
|
-
# Hence propagating (mapping rules, poicies, oidc, auth) update to
|
58
|
-
# latest proxy config, making available to gateway.
|
59
|
-
tasks << ThreeScaleToolbox::Commands::ServiceCommand::CopyCommand::CopyServiceProxyTask.new(context)
|
60
|
-
end
|
61
|
-
tasks << ThreeScaleToolbox::Commands::ServiceCommand::CopyCommand::DestroyMappingRulesTask.new(context)
|
62
|
-
tasks << ThreeScaleToolbox::Commands::ServiceCommand::CopyCommand::CopyMappingRulesTask.new(context)
|
63
|
-
|
64
|
-
# run tasks
|
65
|
-
tasks.each(&:call)
|
66
|
-
end
|
67
|
-
|
68
|
-
private
|
69
|
-
|
70
|
-
def create_context(source, target)
|
71
|
-
{
|
72
|
-
source: source,
|
73
|
-
target: target,
|
74
|
-
delete_mapping_rules: options[:force]
|
75
|
-
}
|
76
|
-
end
|
77
|
-
end
|
78
|
-
end
|
79
|
-
end
|
80
|
-
end
|
@@ -1,22 +0,0 @@
|
|
1
|
-
require '3scale_toolbox/commands/update_command/service_command'
|
2
|
-
|
3
|
-
module ThreeScaleToolbox
|
4
|
-
module Commands
|
5
|
-
module UpdateCommand
|
6
|
-
include ThreeScaleToolbox::Command
|
7
|
-
def self.command
|
8
|
-
Cri::Command.define do
|
9
|
-
name 'update'
|
10
|
-
usage 'update <sub-command> [options]'
|
11
|
-
summary '[DEPRECATED] update super command'
|
12
|
-
description 'Update 3scale entities between tenants'
|
13
|
-
|
14
|
-
run do |_opts, _args, cmd|
|
15
|
-
puts cmd.help
|
16
|
-
end
|
17
|
-
end
|
18
|
-
end
|
19
|
-
add_subcommand(ServiceSubcommand)
|
20
|
-
end
|
21
|
-
end
|
22
|
-
end
|