planaria 0.0.5 → 1.0.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/lib/planaria/cli.rb +9 -2
- data/lib/planaria/generator/builder/checker.rb +15 -0
- data/lib/planaria/generator/builder/runner.rb +7 -0
- data/lib/planaria/generator/divide/checker.rb +35 -0
- data/lib/planaria/generator/divide/executer.rb +30 -0
- data/lib/planaria/generator/divide/message.rb +15 -0
- data/lib/planaria/generator/divide/runner.rb +34 -0
- data/lib/planaria/generator/initializer/executer.rb +2 -13
- data/lib/planaria/utils.rb +14 -1
- data/lib/planaria/version.rb +1 -1
- data/lib/planaria.rb +8 -1
- metadata +5 -1
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA1:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 49519b1d3c6430dfe60a6e0a13254a86c7947dd2
|
|
4
|
+
data.tar.gz: 60c94d086775507ad227639ea8a426f89cbd0991
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: eebd5ea77c5a0fba8ef659f6c97c1923b93611924270082ac622f7fe2478de9229a925111366b14a1e34e3c3eb06547e2f579361e16978206b09d4f1796e27fc
|
|
7
|
+
data.tar.gz: e4c587ec1202e5986b5917490d6d2c71511b340fbf826c2e4088a8fae48a99d73aaf44fc2f075f79911d042326ec848a23df89dd06dbd1a72ee3b8da1f3b60a5
|
data/lib/planaria/cli.rb
CHANGED
|
@@ -1,16 +1,23 @@
|
|
|
1
1
|
module Planaria
|
|
2
2
|
class CLI < Thor
|
|
3
3
|
|
|
4
|
-
desc "init", "Create new template directories
|
|
4
|
+
desc "init", "Create new template directories"
|
|
5
5
|
option :name, type: :string, aliases: '-n', required: true
|
|
6
6
|
def init
|
|
7
7
|
Generator::Initializer::Runner.new(options[:name]).run
|
|
8
8
|
end
|
|
9
9
|
|
|
10
|
-
desc "build", "Create template
|
|
10
|
+
desc "build", "Create template"
|
|
11
11
|
option :name, type: :string, aliases: '-n', required: true
|
|
12
12
|
def build
|
|
13
13
|
Generator::Builder::Runner.new(options[:name]).run
|
|
14
14
|
end
|
|
15
|
+
|
|
16
|
+
desc "divide", "Divide project"
|
|
17
|
+
option :name, type: :string, aliases: '-n', required: true
|
|
18
|
+
option :base, type: :string, aliases: '-b', required: true
|
|
19
|
+
def divide
|
|
20
|
+
Generator::Divide::Runner.new(options[:name], options[:base]).run
|
|
21
|
+
end
|
|
15
22
|
end
|
|
16
23
|
end
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
class Planaria::BuildProjectNotFound < StandardError; end
|
|
2
|
+
|
|
3
|
+
module Planaria::Generator
|
|
4
|
+
module Builder
|
|
5
|
+
class Checker
|
|
6
|
+
def initialize(name)
|
|
7
|
+
@name = name
|
|
8
|
+
end
|
|
9
|
+
|
|
10
|
+
def run
|
|
11
|
+
raise ::Planaria::BuildProjectNotFound unless Dir.exist?("./#{@name}")
|
|
12
|
+
end
|
|
13
|
+
end
|
|
14
|
+
end
|
|
15
|
+
end
|
|
@@ -6,12 +6,19 @@ module Planaria::Generator
|
|
|
6
6
|
end
|
|
7
7
|
|
|
8
8
|
def run
|
|
9
|
+
check
|
|
9
10
|
execute
|
|
10
11
|
message
|
|
12
|
+
rescue ::Planaria::BuildProjectNotFound
|
|
13
|
+
puts "#{@name} not found"
|
|
11
14
|
end
|
|
12
15
|
|
|
13
16
|
private
|
|
14
17
|
|
|
18
|
+
def check
|
|
19
|
+
Checker.new(@name).run
|
|
20
|
+
end
|
|
21
|
+
|
|
15
22
|
def execute
|
|
16
23
|
Executer.new(@name).run
|
|
17
24
|
end
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
class Planaria::StopDivide < StandardError; end
|
|
2
|
+
class Planaria::BaseProjectNotFound < StandardError; end
|
|
3
|
+
|
|
4
|
+
module Planaria::Generator
|
|
5
|
+
module Divide
|
|
6
|
+
class Checker
|
|
7
|
+
def initialize(name, base)
|
|
8
|
+
@name = name
|
|
9
|
+
@base = base
|
|
10
|
+
end
|
|
11
|
+
|
|
12
|
+
def run
|
|
13
|
+
base_check
|
|
14
|
+
check if Dir.exist?("./#{@name}")
|
|
15
|
+
end
|
|
16
|
+
|
|
17
|
+
def base_check
|
|
18
|
+
raise ::Planaria::BaseProjectNotFound unless Dir.exist?("./#{@base}")
|
|
19
|
+
end
|
|
20
|
+
|
|
21
|
+
private
|
|
22
|
+
|
|
23
|
+
def check
|
|
24
|
+
puts "#{@name} directory is already exist. Overwrite? (type Y/n)"
|
|
25
|
+
input = STDIN.gets.chomp
|
|
26
|
+
|
|
27
|
+
if input.to_s == "Y"
|
|
28
|
+
FileUtils.rm_rf "./#{@name}"
|
|
29
|
+
else
|
|
30
|
+
raise ::Planaria::StopDivide
|
|
31
|
+
end
|
|
32
|
+
end
|
|
33
|
+
end
|
|
34
|
+
end
|
|
35
|
+
end
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
module Planaria::Generator
|
|
2
|
+
module Divide
|
|
3
|
+
class Executer
|
|
4
|
+
include ::Planaria::Utils
|
|
5
|
+
|
|
6
|
+
def initialize(name, base)
|
|
7
|
+
@name = name
|
|
8
|
+
@base = base
|
|
9
|
+
end
|
|
10
|
+
|
|
11
|
+
def run
|
|
12
|
+
create_directories
|
|
13
|
+
copy_static_files
|
|
14
|
+
copy_yamls
|
|
15
|
+
end
|
|
16
|
+
|
|
17
|
+
private
|
|
18
|
+
|
|
19
|
+
def copy_static_files
|
|
20
|
+
FileUtils.copy_file("./#{@base}/html/index.html.erb", "./#{@name}/html/index.html.erb")
|
|
21
|
+
FileUtils.copy_file("./#{@base}/css/#{@base}.css","./#{@name}/css/#{@name}.css")
|
|
22
|
+
FileUtils.copy_file("./#{@base}/js/#{@base}.js", "./#{@name}/js/#{@name}.js")
|
|
23
|
+
end
|
|
24
|
+
|
|
25
|
+
def copy_yamls
|
|
26
|
+
FileUtils.cp(Dir.glob("./#{@base}/yamls/*.yml"), "./#{@name}/yamls/")
|
|
27
|
+
end
|
|
28
|
+
end
|
|
29
|
+
end
|
|
30
|
+
end
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
module Planaria::Generator
|
|
2
|
+
module Divide
|
|
3
|
+
class Runner
|
|
4
|
+
def initialize(name, base)
|
|
5
|
+
@name = name
|
|
6
|
+
@base = base
|
|
7
|
+
end
|
|
8
|
+
|
|
9
|
+
def run
|
|
10
|
+
check
|
|
11
|
+
execute
|
|
12
|
+
message
|
|
13
|
+
rescue ::Planaria::BaseProjectNotFound
|
|
14
|
+
puts "Base project not found."
|
|
15
|
+
rescue ::Planaria::StopDivide
|
|
16
|
+
puts "Stop divide."
|
|
17
|
+
end
|
|
18
|
+
|
|
19
|
+
private
|
|
20
|
+
|
|
21
|
+
def check
|
|
22
|
+
Checker.new(@name, @base).run
|
|
23
|
+
end
|
|
24
|
+
|
|
25
|
+
def execute
|
|
26
|
+
Executer.new(@name, @base).run
|
|
27
|
+
end
|
|
28
|
+
|
|
29
|
+
def message
|
|
30
|
+
Message.new(@name, @base).run
|
|
31
|
+
end
|
|
32
|
+
end
|
|
33
|
+
end
|
|
34
|
+
end
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
module Planaria::Generator
|
|
2
2
|
module Initializer
|
|
3
3
|
class Executer
|
|
4
|
+
include ::Planaria::Utils
|
|
5
|
+
|
|
4
6
|
def initialize(name)
|
|
5
7
|
@name = name
|
|
6
8
|
end
|
|
@@ -13,19 +15,6 @@ module Planaria::Generator
|
|
|
13
15
|
|
|
14
16
|
private
|
|
15
17
|
|
|
16
|
-
def mkdir(path)
|
|
17
|
-
FileUtils.mkdir_p("#{path}")
|
|
18
|
-
end
|
|
19
|
-
|
|
20
|
-
def create_directories
|
|
21
|
-
mkdir "./#{@name}"
|
|
22
|
-
mkdir "./#{@name}/html"
|
|
23
|
-
mkdir "./#{@name}/css"
|
|
24
|
-
mkdir "./#{@name}/js"
|
|
25
|
-
mkdir "./#{@name}/img"
|
|
26
|
-
mkdir "./#{@name}/yamls"
|
|
27
|
-
end
|
|
28
|
-
|
|
29
18
|
def create_files
|
|
30
19
|
FileUtils.touch("./#{@name}/css/#{@name}.css")
|
|
31
20
|
FileUtils.touch("./#{@name}/js/#{@name}.js")
|
data/lib/planaria/utils.rb
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
module Planaria
|
|
2
|
-
|
|
2
|
+
module Utils
|
|
3
3
|
def self.tree(path, pre = nil)
|
|
4
4
|
unless pre
|
|
5
5
|
puts path
|
|
@@ -20,5 +20,18 @@ module Planaria
|
|
|
20
20
|
end
|
|
21
21
|
end
|
|
22
22
|
end
|
|
23
|
+
|
|
24
|
+
def mkdir(path)
|
|
25
|
+
FileUtils.mkdir_p("#{path}")
|
|
26
|
+
end
|
|
27
|
+
|
|
28
|
+
def create_directories
|
|
29
|
+
mkdir "./#{@name}"
|
|
30
|
+
mkdir "./#{@name}/html"
|
|
31
|
+
mkdir "./#{@name}/css"
|
|
32
|
+
mkdir "./#{@name}/js"
|
|
33
|
+
mkdir "./#{@name}/img"
|
|
34
|
+
mkdir "./#{@name}/yamls"
|
|
35
|
+
end
|
|
23
36
|
end
|
|
24
37
|
end
|
data/lib/planaria/version.rb
CHANGED
data/lib/planaria.rb
CHANGED
|
@@ -6,14 +6,21 @@ require "erb"
|
|
|
6
6
|
|
|
7
7
|
require "planaria/cli"
|
|
8
8
|
require "planaria/utils"
|
|
9
|
+
|
|
9
10
|
require "planaria/generator/initializer/runner"
|
|
10
11
|
require "planaria/generator/initializer/checker"
|
|
11
12
|
require "planaria/generator/initializer/executer"
|
|
12
13
|
require "planaria/generator/initializer/message"
|
|
14
|
+
|
|
13
15
|
require "planaria/generator/builder/runner"
|
|
14
|
-
|
|
16
|
+
require "planaria/generator/builder/checker"
|
|
15
17
|
require "planaria/generator/builder/executer"
|
|
16
18
|
require "planaria/generator/builder/message"
|
|
17
19
|
|
|
20
|
+
require "planaria/generator/divide/runner"
|
|
21
|
+
require "planaria/generator/divide/checker"
|
|
22
|
+
require "planaria/generator/divide/executer"
|
|
23
|
+
require "planaria/generator/divide/message"
|
|
24
|
+
|
|
18
25
|
require "planaria/templates/html"
|
|
19
26
|
require "planaria/templates/yaml"
|
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: planaria
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.0
|
|
4
|
+
version: 1.0.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- onigra
|
|
@@ -147,6 +147,10 @@ files:
|
|
|
147
147
|
- lib/planaria/generator/builder/executer.rb
|
|
148
148
|
- lib/planaria/generator/builder/message.rb
|
|
149
149
|
- lib/planaria/generator/builder/runner.rb
|
|
150
|
+
- lib/planaria/generator/divide/checker.rb
|
|
151
|
+
- lib/planaria/generator/divide/executer.rb
|
|
152
|
+
- lib/planaria/generator/divide/message.rb
|
|
153
|
+
- lib/planaria/generator/divide/runner.rb
|
|
150
154
|
- lib/planaria/generator/initializer/checker.rb
|
|
151
155
|
- lib/planaria/generator/initializer/executer.rb
|
|
152
156
|
- lib/planaria/generator/initializer/message.rb
|