swagger_docs_generator 0.2.0.pre.10 → 0.2.0.pre.11
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
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 0e45753803dd76bb3478784c1b0fe4d9d84a8812
|
4
|
+
data.tar.gz: c0963b4195cb065a63cdef9262128b0ef339826b
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: c146f8a0015cd59c8a8ad53e991cb1551ebf5338d67b23536f536318721e4a0c5a52e0e6ea213698d763e7d86f7d9e097856eafe4c674dd2b5484b13a994e80d
|
7
|
+
data.tar.gz: 1089f0afbd625f7f98cb87422998b53f102d33b3c71cf5a7e2732e12e0f97885f064fe01d7df23801e8629efa4561f7ab0db37d75757565d0b706179d6e6bec0
|
data/README.md
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
# Swagger::Docs::Generator | [![
|
1
|
+
# Swagger::Docs::Generator | [![Travis][1]][2] [![Gem][21]][22] [![Docs][11]][12]
|
2
2
|
|
3
3
|
Generator for Swagger Apps ([Example with theme](https://github.com/Dev-Crea/swagger-ui))
|
4
4
|
|
@@ -10,7 +10,6 @@ Generator for Swagger Apps ([Example with theme](https://github.com/Dev-Crea/swa
|
|
10
10
|
* [Development](#development)
|
11
11
|
* [Contributing](#contributing)
|
12
12
|
|
13
|
-
|
14
13
|
## How to use
|
15
14
|
|
16
15
|
### Installation
|
@@ -24,13 +23,13 @@ gem 'swagger-docs-generator'
|
|
24
23
|
And then execute :
|
25
24
|
|
26
25
|
```linux
|
27
|
-
|
26
|
+
bundle
|
28
27
|
```
|
29
28
|
|
30
29
|
Or install it yourself as :
|
31
30
|
|
32
31
|
```linux
|
33
|
-
|
32
|
+
gem install swagger_docs_generator
|
34
33
|
```
|
35
34
|
|
36
35
|
### Usage
|
@@ -62,7 +61,16 @@ push git commits and tags, and push the `.gem` file to
|
|
62
61
|
## Contributing
|
63
62
|
|
64
63
|
Bug reports and pull requests are welcome on GitHub at
|
65
|
-
https://github.com/Dev-Crea/swagger-docs-generator
|
64
|
+
<https://github.com/Dev-Crea/swagger-docs-generator>. This project is intended to
|
66
65
|
be a safe, welcoming space for collaboration, and contributors are expected to
|
67
66
|
adhere to the [Contributor Covenant](http://contributor-covenant.org)
|
68
67
|
code of conduct.
|
68
|
+
|
69
|
+
[1]: https://travis-ci.org/Dev-Crea/swagger-docs-generator.svg?branch=master
|
70
|
+
[2]: https://travis-ci.org/Dev-Crea/swagger-docs-generator
|
71
|
+
|
72
|
+
[11]: https://badge.fury.io/rb/swagger_docs_generator.svg
|
73
|
+
[12]: https://badge.fury.io/rb/swagger_docs_generator
|
74
|
+
|
75
|
+
[21]: https://inch-ci.org/github/Dev-Crea/swagger-docs-generator.svg
|
76
|
+
[22]: https://inch-ci.org/github/Dev-Crea/swagger-docs-generator
|
@@ -19,14 +19,16 @@ module SwaggerDocsGenerator
|
|
19
19
|
class Configuration
|
20
20
|
attr_accessor :swagger, :base_path, :schemes, :consumes, :produces,
|
21
21
|
:host, :paths, :definitions, :security_definitions,
|
22
|
-
:security, :tags, :external_docs, :base_controller
|
22
|
+
:security, :tags, :external_docs, :base_controller, :cleanning
|
23
23
|
|
24
24
|
SWAGGER = '2.0'
|
25
|
+
CLEANNING = true
|
25
26
|
|
26
27
|
# Initalize default value (and requried) for json swagger file
|
27
28
|
def initialize
|
28
29
|
@swagger = SWAGGER
|
29
30
|
@base_controller = ''
|
31
|
+
@cleanning = CLEANNING
|
30
32
|
end
|
31
33
|
end
|
32
34
|
|
@@ -25,15 +25,30 @@ module SwaggerDocsGenerator
|
|
25
25
|
end
|
26
26
|
|
27
27
|
# Delete files temporary
|
28
|
-
# @todo necessary ?
|
29
28
|
def delete_temporary_files
|
30
|
-
|
29
|
+
FileUtils.remove_dir(@version) if SwaggerDocsGenerator.configure.cleanning
|
30
|
+
end
|
31
|
+
|
32
|
+
def info_swagger_file
|
33
|
+
create_info_text(@swagger_file)
|
34
|
+
end
|
35
|
+
|
36
|
+
def info_swagger_temporary
|
37
|
+
create_info_text(@version)
|
31
38
|
end
|
32
39
|
|
33
40
|
private
|
34
41
|
|
35
42
|
attr_reader :meta
|
36
43
|
|
44
|
+
def prefix_info
|
45
|
+
'->'
|
46
|
+
end
|
47
|
+
|
48
|
+
def create_info_text(message)
|
49
|
+
"#{prefix_info} #{message}"
|
50
|
+
end
|
51
|
+
|
37
52
|
# :reek:UtilityFunction
|
38
53
|
def path
|
39
54
|
File.join(Dir.pwd, '/public')
|
@@ -9,17 +9,32 @@ module SwaggerDocsGenerator
|
|
9
9
|
def initialize
|
10
10
|
@file_path = File.join(Dir.pwd, 'public',
|
11
11
|
SwaggerDocsGenerator.configure_info.version)
|
12
|
-
conf = SwaggerDocsGenerator.configure.base_controller
|
13
|
-
@controllers =
|
14
|
-
|
15
|
-
|
16
|
-
|
12
|
+
@conf = SwaggerDocsGenerator.configure.base_controller
|
13
|
+
@controllers = case @conf
|
14
|
+
when String then string_controller
|
15
|
+
when Array then array_controller
|
16
|
+
when Class then class_controller
|
17
17
|
end
|
18
18
|
end
|
19
19
|
|
20
20
|
private
|
21
21
|
|
22
22
|
attr_accessor :controllers, :file_path
|
23
|
+
|
24
|
+
# :reek:UtilityFunction
|
25
|
+
def string_controller
|
26
|
+
ApplicationController.subclasses
|
27
|
+
end
|
28
|
+
|
29
|
+
def array_controller
|
30
|
+
array = []
|
31
|
+
@conf.map { |controller| array |= controller.subclasses }
|
32
|
+
array
|
33
|
+
end
|
34
|
+
|
35
|
+
def class_controller
|
36
|
+
@conf.subclasses
|
37
|
+
end
|
23
38
|
end
|
24
39
|
end
|
25
40
|
|
data/lib/tasks/swagger.rake
CHANGED
@@ -1,13 +1,24 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
|
+
|
2
3
|
namespace :swagger do
|
3
4
|
desc 'Generate Swagger Documentation files'
|
4
5
|
task docs: :environment do
|
5
|
-
puts 'Create Swagger File in public/swagger.json'
|
6
6
|
swag = SwaggerDocsGenerator::Generator.new
|
7
|
+
|
8
|
+
puts 'Create Swagger File in :'
|
9
|
+
puts swag.info_swagger_file
|
10
|
+
|
7
11
|
# Reload all controller before parsing
|
8
12
|
Rails.application.eager_load!
|
13
|
+
|
9
14
|
# Generates files
|
15
|
+
puts
|
16
|
+
puts 'Generate doc file :'
|
10
17
|
swag.generate_swagger_file
|
18
|
+
|
19
|
+
puts
|
20
|
+
puts 'Delete temporary file :'
|
21
|
+
puts swag.info_swagger_temporary
|
11
22
|
swag.delete_temporary_files
|
12
23
|
end
|
13
24
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: swagger_docs_generator
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.2.0.pre.
|
4
|
+
version: 0.2.0.pre.11
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- VAILLANT Jeremy
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2017-03-
|
11
|
+
date: 2017-03-16 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|