rswag_schema_export 0.1.0 → 0.1.1
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/Gemfile.lock +6 -10
- data/README.md +3 -1
- data/lib/rswag_schema_export/capistrano.rb +1 -0
- data/lib/rswag_schema_export/schema_import.rb +5 -4
- data/lib/{capistrano → rswag_schema_export}/tasks/rswag.rake +3 -2
- data/lib/rswag_schema_export/version.rb +1 -1
- data/lib/tasks/rswag_tasks.rake +0 -1
- data/rswag_schema_export.gemspec +1 -2
- metadata +4 -17
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 663ecc311960cc8848e244d4f71790eb0a9e91da66aa820b9b673761528d4e50
|
4
|
+
data.tar.gz: c693f56751d318e60fd6a8cc26f3b9568c2f35388a0b5e2771ba0eb121f021b4
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: b6c679fe76ac810612e968195d01ddd0ac754dc34b807bd49ff93d27cbbdaccd71eb96bcd7ac8d2beaac3c728077cd81675d6c21f3937530f87927a32cfeee87
|
7
|
+
data.tar.gz: db33f882f45ae29bef2cffc23442bfb0179e06dd27c1c3ce9c38180a1e057283ac9eaeec6a8dc5bdc65a81cd6212a03465fe19e471b39fd78d67f66d6fbc40d9
|
data/Gemfile.lock
CHANGED
@@ -27,17 +27,17 @@ GEM
|
|
27
27
|
tzinfo (~> 1.1)
|
28
28
|
ast (2.4.0)
|
29
29
|
aws-eventstream (1.0.3)
|
30
|
-
aws-partitions (1.
|
31
|
-
aws-sdk-core (3.
|
30
|
+
aws-partitions (1.184.0)
|
31
|
+
aws-sdk-core (3.59.0)
|
32
32
|
aws-eventstream (~> 1.0, >= 1.0.2)
|
33
33
|
aws-partitions (~> 1.0)
|
34
34
|
aws-sigv4 (~> 1.1)
|
35
35
|
jmespath (~> 1.0)
|
36
|
-
aws-sdk-kms (1.
|
37
|
-
aws-sdk-core (~> 3, >= 3.
|
36
|
+
aws-sdk-kms (1.23.0)
|
37
|
+
aws-sdk-core (~> 3, >= 3.58.0)
|
38
38
|
aws-sigv4 (~> 1.1)
|
39
|
-
aws-sdk-s3 (1.
|
40
|
-
aws-sdk-core (~> 3, >= 3.
|
39
|
+
aws-sdk-s3 (1.45.0)
|
40
|
+
aws-sdk-core (~> 3, >= 3.58.0)
|
41
41
|
aws-sdk-kms (~> 1)
|
42
42
|
aws-sigv4 (~> 1.1)
|
43
43
|
aws-sigv4 (1.1.0)
|
@@ -49,9 +49,6 @@ GEM
|
|
49
49
|
diff-lcs (1.3)
|
50
50
|
docile (1.3.2)
|
51
51
|
erubi (1.8.0)
|
52
|
-
generator_spec (0.9.4)
|
53
|
-
activesupport (>= 3.0.0)
|
54
|
-
railties (>= 3.0.0)
|
55
52
|
i18n (1.6.0)
|
56
53
|
concurrent-ruby (~> 1.0)
|
57
54
|
jaro_winkler (1.5.3)
|
@@ -124,7 +121,6 @@ PLATFORMS
|
|
124
121
|
|
125
122
|
DEPENDENCIES
|
126
123
|
bundler (~> 1.17)
|
127
|
-
generator_spec
|
128
124
|
pry
|
129
125
|
railties (>= 3.1, < 6.0)
|
130
126
|
rake (~> 10.0)
|
data/README.md
CHANGED
@@ -1,4 +1,6 @@
|
|
1
|
-
# Rswag::Schema::Export
|
1
|
+
# [Beta] Rswag::Schema::Export
|
2
|
+
|
3
|
+
[](https://circleci.com/gh/MLSDev/rswag_schema_export)
|
2
4
|
|
3
5
|
|
4
6
|
Export your schema.json file to AWS s3 bucket and import back after deploy.
|
@@ -0,0 +1 @@
|
|
1
|
+
load File.expand_path("tasks/rswag.rake", __dir__)
|
@@ -1,13 +1,13 @@
|
|
1
|
+
require "aws-sdk-s3"
|
2
|
+
|
1
3
|
module RswagSchemaExport
|
2
4
|
class Import
|
3
|
-
def run
|
5
|
+
def run(stage = "develop")
|
4
6
|
abort("RSWAG_SCHEMA_PATH is not defined. Example: tmp/swagger/swagger.json") unless ENV["RSWAG_SCHEMA_PATH"]
|
5
7
|
abort("RSWAG_ACCESS_KEY_ID is not defined") unless ENV["RSWAG_ACCESS_KEY_ID"]
|
6
8
|
abort("RSWAG_SECRET_ACCESS_KEY is not defined") unless ENV["RSWAG_SECRET_ACCESS_KEY"]
|
7
9
|
abort("RSWAG_REGION is not defined") unless ENV["RSWAG_REGION"]
|
8
10
|
abort("RSWAG_BUCKET is not defined") unless ENV["RSWAG_BUCKET"]
|
9
|
-
|
10
|
-
stage = ENV["STAGE"] || "develop"
|
11
11
|
app_name = ENV["APP_NAME"] || "app"
|
12
12
|
|
13
13
|
begin
|
@@ -20,7 +20,8 @@ module RswagSchemaExport
|
|
20
20
|
versions = bucket.objects(prefix: "schemas/#{app_name}/#{stage}_schemas/versions").collect(&:key)
|
21
21
|
|
22
22
|
last_schema_key = versions.max
|
23
|
-
bucket.object(last_schema_key)
|
23
|
+
bucket.object(last_schema_key)
|
24
|
+
.copy_to("#{ENV['RSWAG_BUCKET']}/schemas/#{app_name}/#{stage}_schemas/schema.json")
|
24
25
|
# Download schema.json
|
25
26
|
if block_given?
|
26
27
|
bucket.object("schemas/#{app_name}/#{stage}_schemas/schema.json").download_file("schema.json")
|
@@ -1,10 +1,11 @@
|
|
1
|
-
require "
|
1
|
+
require "rswag_schema_export/schema_import"
|
2
2
|
|
3
3
|
namespace :rswag do
|
4
4
|
desc "Import latest schema.json to app"
|
5
5
|
task :schema_import do
|
6
6
|
on roles(:all) do
|
7
|
-
|
7
|
+
stage = ENV["STAGE"] || fetch(:stage, "develop")
|
8
|
+
RswagSchemaExport::Import.new.run(stage) do
|
8
9
|
upload!("schema.json", "#{current_path}/#{ENV['RSWAG_SCHEMA_PATH']}")
|
9
10
|
end
|
10
11
|
end
|
data/lib/tasks/rswag_tasks.rake
CHANGED
data/rswag_schema_export.gemspec
CHANGED
@@ -10,7 +10,7 @@ Gem::Specification.new do |spec|
|
|
10
10
|
|
11
11
|
spec.summary = "Export/Import your rswag schema.json during deploy with CI"
|
12
12
|
spec.description = "rswag_schema_export"
|
13
|
-
spec.homepage = "https://
|
13
|
+
spec.homepage = "https://github.com/MLSDev/rswag_schema_export"
|
14
14
|
spec.license = "MIT"
|
15
15
|
|
16
16
|
spec.files = Dir.chdir(File.expand_path(__dir__)) do
|
@@ -22,7 +22,6 @@ Gem::Specification.new do |spec|
|
|
22
22
|
spec.add_dependency "aws-sdk-s3", "~> 1"
|
23
23
|
|
24
24
|
spec.add_development_dependency "bundler", "~> 1.17"
|
25
|
-
spec.add_development_dependency "generator_spec"
|
26
25
|
spec.add_development_dependency "pry"
|
27
26
|
spec.add_development_dependency "railties", ">= 3.1", "< 6.0"
|
28
27
|
spec.add_development_dependency "rake", "~> 10.0"
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rswag_schema_export
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Ruslan Tolstov
|
@@ -38,20 +38,6 @@ dependencies:
|
|
38
38
|
- - "~>"
|
39
39
|
- !ruby/object:Gem::Version
|
40
40
|
version: '1.17'
|
41
|
-
- !ruby/object:Gem::Dependency
|
42
|
-
name: generator_spec
|
43
|
-
requirement: !ruby/object:Gem::Requirement
|
44
|
-
requirements:
|
45
|
-
- - ">="
|
46
|
-
- !ruby/object:Gem::Version
|
47
|
-
version: '0'
|
48
|
-
type: :development
|
49
|
-
prerelease: false
|
50
|
-
version_requirements: !ruby/object:Gem::Requirement
|
51
|
-
requirements:
|
52
|
-
- - ">="
|
53
|
-
- !ruby/object:Gem::Version
|
54
|
-
version: '0'
|
55
41
|
- !ruby/object:Gem::Dependency
|
56
42
|
name: pry
|
57
43
|
requirement: !ruby/object:Gem::Requirement
|
@@ -164,15 +150,16 @@ files:
|
|
164
150
|
- Rakefile
|
165
151
|
- bin/console
|
166
152
|
- bin/setup
|
167
|
-
- lib/capistrano/tasks/rswag.rake
|
168
153
|
- lib/rswag_schema_export.rb
|
154
|
+
- lib/rswag_schema_export/capistrano.rb
|
169
155
|
- lib/rswag_schema_export/railtie.rb
|
170
156
|
- lib/rswag_schema_export/schema_export.rb
|
171
157
|
- lib/rswag_schema_export/schema_import.rb
|
158
|
+
- lib/rswag_schema_export/tasks/rswag.rake
|
172
159
|
- lib/rswag_schema_export/version.rb
|
173
160
|
- lib/tasks/rswag_tasks.rake
|
174
161
|
- rswag_schema_export.gemspec
|
175
|
-
homepage: https://
|
162
|
+
homepage: https://github.com/MLSDev/rswag_schema_export
|
176
163
|
licenses:
|
177
164
|
- MIT
|
178
165
|
metadata: {}
|