yml2erd 0.9.4 → 0.9.5
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/yml2erd/cli.rb +19 -1
- data/lib/yml2erd/parser.rb +1 -3
- data/lib/yml2erd/version.rb +1 -1
- data/yml2erd.gemspec +2 -2
- metadata +4 -4
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 166d9aea0ea8799713fb3f89d965fadc65824a26
|
4
|
+
data.tar.gz: a9937380ca26d72580e232a0c8f276519967251b
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 64b352491096eb2d9d7ecf35a6d0de6513924354a6225e5543117dbdc92965bd485e42451da73b57e1c62546fc46dd721e649a71af8f031d5a1e9011982a83cd
|
7
|
+
data.tar.gz: 47a40a5f02ebea24d73ac2e0e7edfc80d0a86b186c459bf5d25e813b0c33efdc94a0b36f73987963ae47df3ad95dafb530132156481b526c84406bd1b493c4f3
|
data/lib/yml2erd/cli.rb
CHANGED
@@ -1,15 +1,19 @@
|
|
1
1
|
require "yml2erd/parser"
|
2
2
|
require "yml2erd/diagram"
|
3
3
|
require "thor"
|
4
|
+
require "yaml"
|
4
5
|
|
5
6
|
module Yml2erd
|
6
7
|
class CLI < Thor
|
8
|
+
class YmlNotFoundError < StandardError;end
|
9
|
+
|
7
10
|
desc "convert <path>", "Convert erd from yml"
|
8
11
|
option :output, aliases: :o, banner: 'FILE_PATH', desc: 'default: output.png'
|
9
12
|
option :projectname, aliases: :p, banner: 'PROJECT_NAME', desc: 'default: null'
|
10
13
|
option :outputstyle, aliases: :s, banner: 'OUTPUT_STYLE', desc: 'svg or png, default: png'
|
11
14
|
def convert(path)
|
12
|
-
|
15
|
+
abort_if_graphviz_isnt_installed
|
16
|
+
schema_structure = load_yml(path)
|
13
17
|
opts = {
|
14
18
|
output_path: options[:output_path],
|
15
19
|
project_name: options[:projectname],
|
@@ -18,5 +22,19 @@ module Yml2erd
|
|
18
22
|
Yml2erd::Diagram.create(schema_structure, opts)
|
19
23
|
puts 'Successfully converted!'
|
20
24
|
end
|
25
|
+
|
26
|
+
private
|
27
|
+
|
28
|
+
def load_yml(path)
|
29
|
+
abort "#{path} is not found, please check your .yml file path" unless File.exists?(path)
|
30
|
+
yml = YAML.load_file(path)
|
31
|
+
Yml2erd::Parser.parse(yml)
|
32
|
+
end
|
33
|
+
|
34
|
+
# This method has a bug around `which gvpr`.
|
35
|
+
# That is because which may not exist in except UNIX based OS.
|
36
|
+
def abort_if_graphviz_isnt_installed
|
37
|
+
abort "GraphViz is not installed, please install graphviz from http://www.graphviz.org/Download..php \n\nOr you can get by\n $ brew install graphviz # on macOS\n $ apt-get install graphviz # on Ubuntu" unless !`which gvpr`.empty?
|
38
|
+
end
|
21
39
|
end
|
22
40
|
end
|
data/lib/yml2erd/parser.rb
CHANGED
@@ -1,13 +1,11 @@
|
|
1
1
|
require 'yml2erd/schema_structure'
|
2
2
|
require 'yml2erd/schema_structure/validator'
|
3
|
-
require 'yaml'
|
4
3
|
|
5
4
|
module Yml2erd
|
6
5
|
class Parser
|
7
6
|
class << self
|
8
7
|
# returns an object of Yml2erd::SchemaStructure
|
9
|
-
def parse(
|
10
|
-
yml = YAML.load_file(path)
|
8
|
+
def parse(yml)
|
11
9
|
ss = Yml2erd::SchemaStructure.new(yml)
|
12
10
|
Yml2erd::SchemaStructure::Validator.new(ss).validate
|
13
11
|
ss
|
data/lib/yml2erd/version.rb
CHANGED
data/yml2erd.gemspec
CHANGED
@@ -9,8 +9,8 @@ Gem::Specification.new do |spec|
|
|
9
9
|
spec.authors = ["asmsuechan"]
|
10
10
|
spec.email = ["suenagaryoutaabc@gmail.com"]
|
11
11
|
|
12
|
-
spec.summary = %q{This gem allows us to generate erd easily.}
|
13
|
-
spec.description = %q{Convert simple yml
|
12
|
+
spec.summary = %q{This gem allows us to generate an erd easily.}
|
13
|
+
spec.description = %q{Convert erd from a simple yml}
|
14
14
|
spec.homepage = "https://github.com/asmsuechan/yml2erd"
|
15
15
|
spec.license = "MIT"
|
16
16
|
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: yml2erd
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.9.
|
4
|
+
version: 0.9.5
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- asmsuechan
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2016-12-
|
11
|
+
date: 2016-12-26 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: ruby-graphviz
|
@@ -136,7 +136,7 @@ dependencies:
|
|
136
136
|
- - ">="
|
137
137
|
- !ruby/object:Gem::Version
|
138
138
|
version: '0'
|
139
|
-
description: Convert simple yml
|
139
|
+
description: Convert erd from a simple yml
|
140
140
|
email:
|
141
141
|
- suenagaryoutaabc@gmail.com
|
142
142
|
executables:
|
@@ -189,5 +189,5 @@ rubyforge_project:
|
|
189
189
|
rubygems_version: 2.5.1
|
190
190
|
signing_key:
|
191
191
|
specification_version: 4
|
192
|
-
summary: This gem allows us to generate erd easily.
|
192
|
+
summary: This gem allows us to generate an erd easily.
|
193
193
|
test_files: []
|