rswag_schema_export 0.1.1 → 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.rubocop.yml +3 -0
- data/Gemfile.lock +25 -8
- data/README.md +24 -18
- data/lib/generators/rswag_schema_export/install/install_generator.rb +11 -0
- data/lib/generators/rswag_schema_export/install/templates/rswag_schema_export.rb +9 -0
- data/lib/rswag_schema_export.rb +9 -0
- data/lib/rswag_schema_export/client.rb +91 -0
- data/lib/rswag_schema_export/configuration.rb +9 -0
- data/lib/rswag_schema_export/schema_export.rb +15 -19
- data/lib/rswag_schema_export/schema_import.rb +17 -29
- data/lib/rswag_schema_export/tasks/rswag.rake +3 -1
- data/lib/rswag_schema_export/version.rb +1 -1
- data/rswag_schema_export.gemspec +1 -0
- metadata +20 -2
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 56dc1566ef40b4689c9546a3f5daa0b62c5aa066f56af01de96e563fb8b796b5
|
|
4
|
+
data.tar.gz: 1e3c00c1812d7f1748525263f24573846064394ce34f0e9a989893cc0d7f9323
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 3743c24a0de165ae785740537ec41ad3deb3aa76f00b78b354258d907d7f42e049e9fa959b0db6b597765c4f584becb393e6972367b37b3eb3cc9b4d9e7e3f93
|
|
7
|
+
data.tar.gz: '09ef3131b1f7ae054a69eda7b0bd57787e9c3bbfc5481cce831fc3edf2f75a0a0ab9c3749c927c77e3de0261a1fff86b1cf40a6fda2c8a6e96c595b2ae6a33a1'
|
data/.rubocop.yml
CHANGED
data/Gemfile.lock
CHANGED
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
PATH
|
|
2
2
|
remote: .
|
|
3
3
|
specs:
|
|
4
|
-
rswag_schema_export (0.1.
|
|
4
|
+
rswag_schema_export (0.1.1)
|
|
5
5
|
aws-sdk-s3 (~> 1)
|
|
6
|
+
azure-storage-blob (~> 1.1)
|
|
6
7
|
|
|
7
8
|
GEM
|
|
8
9
|
remote: https://rubygems.org/
|
|
@@ -27,21 +28,32 @@ GEM
|
|
|
27
28
|
tzinfo (~> 1.1)
|
|
28
29
|
ast (2.4.0)
|
|
29
30
|
aws-eventstream (1.0.3)
|
|
30
|
-
aws-partitions (1.
|
|
31
|
-
aws-sdk-core (3.
|
|
31
|
+
aws-partitions (1.210.0)
|
|
32
|
+
aws-sdk-core (3.66.0)
|
|
32
33
|
aws-eventstream (~> 1.0, >= 1.0.2)
|
|
33
34
|
aws-partitions (~> 1.0)
|
|
34
35
|
aws-sigv4 (~> 1.1)
|
|
35
36
|
jmespath (~> 1.0)
|
|
36
|
-
aws-sdk-kms (1.
|
|
37
|
-
aws-sdk-core (~> 3, >= 3.
|
|
37
|
+
aws-sdk-kms (1.24.0)
|
|
38
|
+
aws-sdk-core (~> 3, >= 3.61.1)
|
|
38
39
|
aws-sigv4 (~> 1.1)
|
|
39
|
-
aws-sdk-s3 (1.
|
|
40
|
-
aws-sdk-core (~> 3, >= 3.
|
|
40
|
+
aws-sdk-s3 (1.48.0)
|
|
41
|
+
aws-sdk-core (~> 3, >= 3.61.1)
|
|
41
42
|
aws-sdk-kms (~> 1)
|
|
42
43
|
aws-sigv4 (~> 1.1)
|
|
43
44
|
aws-sigv4 (1.1.0)
|
|
44
45
|
aws-eventstream (~> 1.0, >= 1.0.2)
|
|
46
|
+
azure-core (0.1.15)
|
|
47
|
+
faraday (~> 0.9)
|
|
48
|
+
faraday_middleware (~> 0.10)
|
|
49
|
+
nokogiri (~> 1.6)
|
|
50
|
+
azure-storage-blob (1.1.0)
|
|
51
|
+
azure-core (~> 0.1.13)
|
|
52
|
+
azure-storage-common (~> 1.0)
|
|
53
|
+
nokogiri (~> 1.6, >= 1.6.8)
|
|
54
|
+
azure-storage-common (1.1.0)
|
|
55
|
+
azure-core (~> 0.1.13)
|
|
56
|
+
nokogiri (~> 1.6, >= 1.6.8)
|
|
45
57
|
builder (3.2.3)
|
|
46
58
|
coderay (1.1.2)
|
|
47
59
|
concurrent-ruby (1.1.5)
|
|
@@ -49,6 +61,10 @@ GEM
|
|
|
49
61
|
diff-lcs (1.3)
|
|
50
62
|
docile (1.3.2)
|
|
51
63
|
erubi (1.8.0)
|
|
64
|
+
faraday (0.15.4)
|
|
65
|
+
multipart-post (>= 1.2, < 3)
|
|
66
|
+
faraday_middleware (0.13.1)
|
|
67
|
+
faraday (>= 0.7.4, < 1.0)
|
|
52
68
|
i18n (1.6.0)
|
|
53
69
|
concurrent-ruby (~> 1.0)
|
|
54
70
|
jaro_winkler (1.5.3)
|
|
@@ -60,7 +76,8 @@ GEM
|
|
|
60
76
|
method_source (0.9.2)
|
|
61
77
|
mini_portile2 (2.4.0)
|
|
62
78
|
minitest (5.11.3)
|
|
63
|
-
|
|
79
|
+
multipart-post (2.1.1)
|
|
80
|
+
nokogiri (1.10.4)
|
|
64
81
|
mini_portile2 (~> 2.4.0)
|
|
65
82
|
parallel (1.17.0)
|
|
66
83
|
parser (2.6.3.0)
|
data/README.md
CHANGED
|
@@ -20,6 +20,7 @@ And then execute:
|
|
|
20
20
|
Or install it yourself as:
|
|
21
21
|
|
|
22
22
|
$ gem install rswag_schema_export
|
|
23
|
+
$ rails g rswag_schema_export:install
|
|
23
24
|
|
|
24
25
|
## Usage
|
|
25
26
|
|
|
@@ -44,7 +45,7 @@ stages:
|
|
|
44
45
|
|
|
45
46
|
```diff
|
|
46
47
|
# config/deploy.rb
|
|
47
|
-
+ folders = %w[
|
|
48
|
+
+ folders = %w[swagger]
|
|
48
49
|
namespace :deploy do
|
|
49
50
|
after :restart, :clear_cache do
|
|
50
51
|
on roles(:web), in: :groups, limit: 3, wait: 10 do
|
|
@@ -60,12 +61,17 @@ end
|
|
|
60
61
|
Set up ENVIRONMENT VARIABLES on your CI
|
|
61
62
|
|
|
62
63
|
```bash
|
|
63
|
-
# Required
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
64
|
+
# Required for AWS
|
|
65
|
+
RSWAG_AWS_ACCESS_KEY_ID='' # Example: XXXXXXXXXX
|
|
66
|
+
RSWAG_AWS_SECRET_ACCESS_KEY='' # Example: XXXXXXXXXXXXXXXXXXXXX
|
|
67
|
+
RSWAG_AWS_REGION='' # Example: us-west-1
|
|
68
|
+
RSWAG_AWS_BUCKET='' # Example: bucket-name
|
|
69
|
+
|
|
70
|
+
# Required for AZURE
|
|
71
|
+
|
|
72
|
+
RSWAG_AZURE_STORAGE_ACCOUNT_NAME='' # Example: XXXXX
|
|
73
|
+
RSWAG_AZURE_STORAGE_ACCESS_KEY='' # Example: XXXXXXXXXXXXXXXXXXXXX
|
|
74
|
+
RSWAG_AZURE_CONTAINER='' # Example: continter-name
|
|
69
75
|
|
|
70
76
|
# Optional
|
|
71
77
|
STAGE='' # Default: develop
|
|
@@ -74,23 +80,23 @@ APP_NAME='' # Default: app
|
|
|
74
80
|
|
|
75
81
|
## Gitlab Variables
|
|
76
82
|
|
|
77
|
-

|
|
79
84
|
|
|
80
|
-
##
|
|
85
|
+
## rswag_schema_export
|
|
81
86
|
```diff
|
|
82
|
-
# config/initializers/
|
|
83
|
-
|
|
84
|
-
+ c.
|
|
87
|
+
# config/initializers/rswag_schema_export.rb
|
|
88
|
+
RswagSchemaExport.configure do |c|
|
|
89
|
+
+ c.schemas = ['swagger/client/swagger.json', 'swagger/backoffice/swagger.json']
|
|
90
|
+
+ c.client = :aws
|
|
85
91
|
end
|
|
92
|
+
|
|
86
93
|
```
|
|
87
94
|
|
|
88
|
-
## rswag-
|
|
95
|
+
## rswag-api
|
|
89
96
|
```diff
|
|
90
|
-
#
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
+ config.swagger_root = Rails.root.to_s + '/tmp/swagger'
|
|
97
|
+
# config/initializers/rswag_api.rb
|
|
98
|
+
Rswag::Api.configure do |c|
|
|
99
|
+
+ c.swagger_root = Rails.root.to_s + '/swagger'
|
|
94
100
|
end
|
|
95
101
|
```
|
|
96
102
|
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
require "rails/generators"
|
|
2
|
+
|
|
3
|
+
module RswagSchemaExport
|
|
4
|
+
class InstallGenerator < Rails::Generators::Base
|
|
5
|
+
source_root File.expand_path("templates", __dir__)
|
|
6
|
+
|
|
7
|
+
def add_initializer
|
|
8
|
+
template("rswag_schema_export.rb", "config/initializers/rswag_schema_export.rb")
|
|
9
|
+
end
|
|
10
|
+
end
|
|
11
|
+
end
|
data/lib/rswag_schema_export.rb
CHANGED
|
@@ -1,7 +1,16 @@
|
|
|
1
1
|
require "rswag_schema_export/version"
|
|
2
|
+
require "rswag_schema_export/configuration"
|
|
3
|
+
require "rswag_schema_export/client"
|
|
2
4
|
require "rswag_schema_export/railtie" if defined?(Rails)
|
|
3
5
|
require "rswag_schema_export/schema_export"
|
|
4
6
|
require "rswag_schema_export/schema_import"
|
|
5
7
|
|
|
6
8
|
module RswagSchemaExport
|
|
9
|
+
def self.configure
|
|
10
|
+
yield(config)
|
|
11
|
+
end
|
|
12
|
+
|
|
13
|
+
def self.config
|
|
14
|
+
@config ||= Configuration.new
|
|
15
|
+
end
|
|
7
16
|
end
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
require "azure/storage/blob"
|
|
2
|
+
require "aws-sdk-s3"
|
|
3
|
+
|
|
4
|
+
module RswagSchemaExport
|
|
5
|
+
class Client
|
|
6
|
+
attr_reader :stage, :app_name
|
|
7
|
+
|
|
8
|
+
def initialize(stage)
|
|
9
|
+
@app_name = ENV["APP_NAME"] || "app"
|
|
10
|
+
@stage = stage || "develop"
|
|
11
|
+
end
|
|
12
|
+
|
|
13
|
+
def client # rubocop:disable Metrics/AbcSize, Metrics/CyclomaticComplexity, Metrics/PerceivedComplexity:
|
|
14
|
+
if aws_client?
|
|
15
|
+
abort("RSWAG_AWS_ACCESS_KEY_ID is not defined") unless ENV["RSWAG_AWS_ACCESS_KEY_ID"]
|
|
16
|
+
abort("RSWAG_AWS_SECRET_ACCESS_KEY is not defined") unless ENV["RSWAG_AWS_SECRET_ACCESS_KEY"]
|
|
17
|
+
abort("RSWAG_AWS_REGION is not defined") unless ENV["RSWAG_AWS_REGION"]
|
|
18
|
+
abort("RSWAG_AWS_BUCKET is not defined") unless ENV["RSWAG_AWS_BUCKET"]
|
|
19
|
+
|
|
20
|
+
@client ||= Aws::S3::Resource.new(access_key_id: ENV["RSWAG_AWS_ACCESS_KEY_ID"],
|
|
21
|
+
secret_access_key: ENV["RSWAG_AWS_SECRET_ACCESS_KEY"],
|
|
22
|
+
region: ENV["RSWAG_AWS_REGION"])
|
|
23
|
+
else
|
|
24
|
+
abort("RSWAG_AZURE_STORAGE_ACCOUNT_NAME is not defined") unless ENV["RSWAG_AZURE_STORAGE_ACCOUNT_NAME"]
|
|
25
|
+
abort("RSWAG_AZURE_STORAGE_ACCESS_KEY is not defined") unless ENV["RSWAG_AZURE_STORAGE_ACCESS_KEY"]
|
|
26
|
+
abort("RSWAG_AZURE_CONTAINER is not defined") unless ENV["RSWAG_AZURE_CONTAINER"]
|
|
27
|
+
|
|
28
|
+
@client = Azure::Storage::Blob::BlobService.create(
|
|
29
|
+
storage_account_name: ENV["RSWAG_AZURE_STORAGE_ACCOUNT_NAME"],
|
|
30
|
+
storage_access_key: ENV["RSWAG_AZURE_STORAGE_ACCESS_KEY"]
|
|
31
|
+
)
|
|
32
|
+
end
|
|
33
|
+
end
|
|
34
|
+
|
|
35
|
+
def upload_file(key, file)
|
|
36
|
+
if aws_client?
|
|
37
|
+
client.bucket(ENV["RSWAG_AWS_BUCKET"]).object(key).upload_file(file)
|
|
38
|
+
else
|
|
39
|
+
client.create_block_blob(ENV["RSWAG_AZURE_CONTAINER"], key, ::File.open(file, &:read))
|
|
40
|
+
end
|
|
41
|
+
end
|
|
42
|
+
|
|
43
|
+
def fetch_versions(schema_id)
|
|
44
|
+
if aws_client?
|
|
45
|
+
bucket.objects(prefix: "schemas/#{app_name}/#{stage}_#{schema_id}/versions").collect(&:key)
|
|
46
|
+
else
|
|
47
|
+
prefix = "schemas/#{app_name}/#{stage}_#{schema_id}/versions"
|
|
48
|
+
client.list_blobs(ENV["RSWAG_AZURE_CONTAINER"], prefix: prefix).collect(&:name)
|
|
49
|
+
end
|
|
50
|
+
end
|
|
51
|
+
|
|
52
|
+
def copy_latest_version_to_root(last_schema_key, schema_id)
|
|
53
|
+
if aws_client?
|
|
54
|
+
bucket.object(last_schema_key)
|
|
55
|
+
.copy_to("#{ENV['RSWAG_BUCKET']}/schemas/#{app_name}/#{stage}_#{schema_id}/schema.json")
|
|
56
|
+
else
|
|
57
|
+
client.copy_blob(ENV["RSWAG_AZURE_CONTAINER"], "schemas/#{app_name}/#{stage}_#{schema_id}/schema.json",
|
|
58
|
+
ENV["RSWAG_AZURE_CONTAINER"], last_schema_key)
|
|
59
|
+
end
|
|
60
|
+
end
|
|
61
|
+
|
|
62
|
+
def download_file(schema_id, path)
|
|
63
|
+
if aws_client?
|
|
64
|
+
bucket.object("schemas/#{app_name}/#{stage}_#{schema_id}/schema.json").download_file(path)
|
|
65
|
+
else
|
|
66
|
+
_blob, content = client.get_blob(ENV["RSWAG_AZURE_CONTAINER"],
|
|
67
|
+
"schemas/#{app_name}/#{stage}_#{schema_id}/schema.json")
|
|
68
|
+
::File.open(path, "wb") { |f| f.write(content) }
|
|
69
|
+
end
|
|
70
|
+
end
|
|
71
|
+
|
|
72
|
+
def clean(versions)
|
|
73
|
+
old_versions = versions - versions.sort.last(5)
|
|
74
|
+
if aws_client?
|
|
75
|
+
old_versions.each { |key| bucket.object(key).delete }
|
|
76
|
+
else
|
|
77
|
+
old_versions.each { |key| client.delete_blob(ENV["RSWAG_AZURE_CONTAINER"], key) }
|
|
78
|
+
end
|
|
79
|
+
end
|
|
80
|
+
|
|
81
|
+
private
|
|
82
|
+
|
|
83
|
+
def bucket
|
|
84
|
+
@bucket ||= client.bucket(ENV["RSWAG_AWS_BUCKET"]) if aws_client?
|
|
85
|
+
end
|
|
86
|
+
|
|
87
|
+
def aws_client?
|
|
88
|
+
RswagSchemaExport.config.client&.to_sym == :aws
|
|
89
|
+
end
|
|
90
|
+
end
|
|
91
|
+
end
|
|
@@ -1,31 +1,27 @@
|
|
|
1
1
|
module RswagSchemaExport
|
|
2
2
|
class Export
|
|
3
|
-
def run
|
|
4
|
-
abort("
|
|
5
|
-
abort("RSWAG_ACCESS_KEY_ID is not defined") unless ENV["RSWAG_ACCESS_KEY_ID"]
|
|
6
|
-
abort("RSWAG_SECRET_ACCESS_KEY is not defined") unless ENV["RSWAG_SECRET_ACCESS_KEY"]
|
|
7
|
-
abort("RSWAG_REGION is not defined") unless ENV["RSWAG_REGION"]
|
|
8
|
-
abort("RSWAG_BUCKET is not defined") unless ENV["RSWAG_BUCKET"]
|
|
3
|
+
def run # rubocop:disable Metrics/AbcSize
|
|
4
|
+
abort("Set up RswagSchemaExport.config.schemas") unless RswagSchemaExport.config.schemas
|
|
9
5
|
|
|
10
|
-
|
|
11
|
-
|
|
6
|
+
RswagSchemaExport.config.schemas.map do |schema|
|
|
7
|
+
next if File.file?(schema)
|
|
12
8
|
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
For generate schema run: RAILS_ENV=test rake rswag:specs:swaggerize"
|
|
9
|
+
message = "Not found schema at #{schema}.
|
|
10
|
+
For generate schema run: RAILS_ENV=test rake rswag:specs:swaggerize"
|
|
16
11
|
abort(message)
|
|
17
12
|
end
|
|
18
13
|
|
|
19
14
|
begin
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
15
|
+
client = ::RswagSchemaExport::Client.new(ENV["STAGE"])
|
|
16
|
+
RswagSchemaExport.config.schemas.map do |schema|
|
|
17
|
+
schema_id = schema.gsub(/[^a-zA-Z0-9\-]/, "_")
|
|
18
|
+
key = "schemas/#{client.app_name}/#{client.stage}_#{schema_id}/versions/#{Time.now.getutc.iso8601}.json"
|
|
19
|
+
# Upload latest version to the cloud
|
|
20
|
+
client.upload_file(key, schema)
|
|
23
21
|
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
puts("Schema has been successfully exported. Stage: #{stage} | Key: #{key}")
|
|
22
|
+
puts("Schema has been successfully exported. Stage: #{client.stage} | Key: #{key}")
|
|
23
|
+
end
|
|
24
|
+
puts("Export finished")
|
|
29
25
|
rescue StandardError => e
|
|
30
26
|
abort(e.message)
|
|
31
27
|
end
|
|
@@ -1,39 +1,27 @@
|
|
|
1
|
-
require "aws-sdk-s3"
|
|
2
|
-
|
|
3
1
|
module RswagSchemaExport
|
|
4
2
|
class Import
|
|
5
|
-
def run(stage = "develop")
|
|
6
|
-
abort("
|
|
7
|
-
abort("RSWAG_ACCESS_KEY_ID is not defined") unless ENV["RSWAG_ACCESS_KEY_ID"]
|
|
8
|
-
abort("RSWAG_SECRET_ACCESS_KEY is not defined") unless ENV["RSWAG_SECRET_ACCESS_KEY"]
|
|
9
|
-
abort("RSWAG_REGION is not defined") unless ENV["RSWAG_REGION"]
|
|
10
|
-
abort("RSWAG_BUCKET is not defined") unless ENV["RSWAG_BUCKET"]
|
|
11
|
-
app_name = ENV["APP_NAME"] || "app"
|
|
3
|
+
def run(stage = "develop") # rubocop:disable Metrics/AbcSize:
|
|
4
|
+
abort("Set up RswagSchemaExport.config.schemas") unless RswagSchemaExport.config.schemas
|
|
12
5
|
|
|
13
6
|
begin
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
7
|
+
client = ::RswagSchemaExport::Client.new(stage)
|
|
8
|
+
RswagSchemaExport.config.schemas.map do |schema|
|
|
9
|
+
schema_id = schema.gsub(/[^a-zA-Z0-9\-]/, "_")
|
|
17
10
|
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
11
|
+
# Copy latest version to root
|
|
12
|
+
versions = client.fetch_versions(schema_id)
|
|
13
|
+
last_schema_key = versions.max
|
|
21
14
|
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
bucket.object("schemas/#{app_name}/#{stage}_schemas/schema.json").download_file("schema.json")
|
|
28
|
-
yield
|
|
29
|
-
else
|
|
30
|
-
bucket.object("schemas/#{app_name}/#{stage}_schemas/schema.json").download_file(ENV["RSWAG_SCHEMA_PATH"])
|
|
31
|
-
end
|
|
32
|
-
# Clean versions folder
|
|
33
|
-
old_versions = versions - versions.sort.last(5)
|
|
34
|
-
old_versions.each { |key| bucket.object(key).delete }
|
|
15
|
+
client.copy_latest_version_to_root(last_schema_key, schema_id)
|
|
16
|
+
# Download schema.json
|
|
17
|
+
client.download_file(schema_id, schema)
|
|
18
|
+
# Clean versions folder
|
|
19
|
+
client.clean(versions)
|
|
35
20
|
|
|
36
|
-
|
|
21
|
+
puts("Schema has been successfully imported. Stage: #{client.stage} | Key: #{last_schema_key}")
|
|
22
|
+
end
|
|
23
|
+
yield if block_given?
|
|
24
|
+
puts("Import finished")
|
|
37
25
|
rescue StandardError => e
|
|
38
26
|
abort(e.message)
|
|
39
27
|
end
|
|
@@ -6,7 +6,9 @@ namespace :rswag do
|
|
|
6
6
|
on roles(:all) do
|
|
7
7
|
stage = ENV["STAGE"] || fetch(:stage, "develop")
|
|
8
8
|
RswagSchemaExport::Import.new.run(stage) do
|
|
9
|
-
|
|
9
|
+
RswagSchemaExport.config.shemas.map do |schema|
|
|
10
|
+
upload!(schema, "#{current_path}/#{schema}")
|
|
11
|
+
end
|
|
10
12
|
end
|
|
11
13
|
end
|
|
12
14
|
end
|
data/rswag_schema_export.gemspec
CHANGED
|
@@ -20,6 +20,7 @@ Gem::Specification.new do |spec|
|
|
|
20
20
|
spec.require_paths = ["lib"]
|
|
21
21
|
|
|
22
22
|
spec.add_dependency "aws-sdk-s3", "~> 1"
|
|
23
|
+
spec.add_dependency "azure-storage-blob", "~> 1.1"
|
|
23
24
|
|
|
24
25
|
spec.add_development_dependency "bundler", "~> 1.17"
|
|
25
26
|
spec.add_development_dependency "pry"
|
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: rswag_schema_export
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.
|
|
4
|
+
version: 0.2.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Ruslan Tolstov
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date: 2019-
|
|
11
|
+
date: 2019-09-09 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: aws-sdk-s3
|
|
@@ -24,6 +24,20 @@ dependencies:
|
|
|
24
24
|
- - "~>"
|
|
25
25
|
- !ruby/object:Gem::Version
|
|
26
26
|
version: '1'
|
|
27
|
+
- !ruby/object:Gem::Dependency
|
|
28
|
+
name: azure-storage-blob
|
|
29
|
+
requirement: !ruby/object:Gem::Requirement
|
|
30
|
+
requirements:
|
|
31
|
+
- - "~>"
|
|
32
|
+
- !ruby/object:Gem::Version
|
|
33
|
+
version: '1.1'
|
|
34
|
+
type: :runtime
|
|
35
|
+
prerelease: false
|
|
36
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
37
|
+
requirements:
|
|
38
|
+
- - "~>"
|
|
39
|
+
- !ruby/object:Gem::Version
|
|
40
|
+
version: '1.1'
|
|
27
41
|
- !ruby/object:Gem::Dependency
|
|
28
42
|
name: bundler
|
|
29
43
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -150,8 +164,12 @@ files:
|
|
|
150
164
|
- Rakefile
|
|
151
165
|
- bin/console
|
|
152
166
|
- bin/setup
|
|
167
|
+
- lib/generators/rswag_schema_export/install/install_generator.rb
|
|
168
|
+
- lib/generators/rswag_schema_export/install/templates/rswag_schema_export.rb
|
|
153
169
|
- lib/rswag_schema_export.rb
|
|
154
170
|
- lib/rswag_schema_export/capistrano.rb
|
|
171
|
+
- lib/rswag_schema_export/client.rb
|
|
172
|
+
- lib/rswag_schema_export/configuration.rb
|
|
155
173
|
- lib/rswag_schema_export/railtie.rb
|
|
156
174
|
- lib/rswag_schema_export/schema_export.rb
|
|
157
175
|
- lib/rswag_schema_export/schema_import.rb
|