kojo 0.2.5 → 0.2.6

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 84a6675eb6aa7317e160722d8070a9fca5d772f49a18e6d3fd29687dd294116a
4
- data.tar.gz: 6c3289e8c830dacb8aefc87fc4fbbc4efec17c000aabd3a10743fa6f083d59db
3
+ metadata.gz: 9ebe60ba380017dc65cf0261fd73ece4ab7f9b70138145ea20c2735ec114f39f
4
+ data.tar.gz: cb704fc398df5df582f5b821295c7681f0879e7e9eaf96280e6a1af2bf43d261
5
5
  SHA512:
6
- metadata.gz: 1f3dbed142076b6a0f5d3603cd033f8ef7b7e720c5fc1cfdb59b833c35856560193d40b3a061c1ab4087a8a5175ed2a1d4553d251011a2044f396e6338c50c43
7
- data.tar.gz: d918c15cdf9cb1b07841b6c19a2bc9fd789155a796d5ad490780397111f4735c34f0fe7097d5e5cc0cc02cba0d198a23d8687b136e37ff304d0c9d9d4484c0d7
6
+ metadata.gz: ea47a7425bffbe605b8f96537b04ee0b56ff8ec437c44f6dcdac6044a7705c7c06d449361796ca66b0a2b2fac3baf0512bd8e8dbe909a89f120d6995ff0b10af
7
+ data.tar.gz: 9f9be3030a47599758014e81ae915f617624873aacd326c20ff44d27e295fb1da04d6938e9a909ec53e17c5c527500c230048004fe4241578ca568812e16df98
data/README.md CHANGED
@@ -28,6 +28,7 @@ Table of Contents
28
28
  - [Compile an Entire Folder](#compile-an-entire-folder)
29
29
  - [One to Many Generation](#one-to-many-generation)
30
30
  - [Conditions and Loops with ERB](#conditions-and-loops-with-erb)
31
+ - [Interactive Mode](#interactive-mode)
31
32
 
32
33
  ---
33
34
 
@@ -54,8 +55,8 @@ Include variables in your configuration templates by using this syntax:
54
55
  `%{varname}`
55
56
 
56
57
  - Variables can be provided through the command line, or when using `@import`.
57
- - When one or more variables are not provided, you will be prompted to provide
58
- a value.
58
+ - When one or more variables are not provided, you [will be prompted to provide
59
+ a value](#interactive-mode).
59
60
  - Variables from the top level will be forwarded downstream, and aggregated
60
61
  with any additional variables that are defined in subsequent `@imports`.
61
62
 
@@ -156,3 +157,11 @@ Use this syntax for ruby code:
156
157
  ```
157
158
 
158
159
 
160
+ Interactive Mode
161
+ --------------------------------------------------
162
+
163
+ When Kojo encounters a variable that was not supplied (either through the command
164
+ line or through a configuration file), it will prompt for a value.
165
+
166
+ ![kojo](images/interactive-mode.gif)
167
+
data/bin/kojo CHANGED
@@ -1,5 +1,7 @@
1
1
  #!/usr/bin/env ruby
2
2
  require 'kojo'
3
+ require 'colsole'
4
+ include Colsole
3
5
 
4
6
  runner = Kojo::CLI.runner
5
7
 
@@ -32,7 +32,7 @@ module Kojo
32
32
  raise Kojo::NotFoundError, "Directory not found: #{dir}" unless Dir.exist? dir
33
33
  raise Kojo::NotFoundError, "Directory is empty: #{dir}" if Dir.empty? dir
34
34
 
35
- @files = Dir["#{dir}/**/*"].reject { |f| File.directory? f }
35
+ @files = Dir["#{dir}/**/*"].reject { |f| File.directory? f }.sort
36
36
  end
37
37
  end
38
38
  end
@@ -22,7 +22,7 @@ module Kojo::Commands
22
22
  example "kojo config config.yml -s output scale=3"
23
23
  example "kojo config config.yml -s output --args args.yml"
24
24
 
25
- def run(args)
25
+ def run
26
26
  @config_file = args['CONFIG']
27
27
  @outdir = args['--save']
28
28
  @opts = args['ARGS'].args_to_hash
@@ -21,7 +21,7 @@ module Kojo::Commands
21
21
  example "kojo dir in --save out --imports snippets env=production"
22
22
  example "kojo dir in -s out -i snippets -a args.yml"
23
23
 
24
- def run(args)
24
+ def run
25
25
  @opts = args['ARGS'].args_to_hash
26
26
  @indir = args['INDIR']
27
27
  @outdir = args['--save']
@@ -21,7 +21,7 @@ module Kojo::Commands
21
21
  example "kojo file main.yml -s out.yml app=lause"
22
22
  example "kojo file main.yml -s out.yml --args args.yml"
23
23
 
24
- def run(args)
24
+ def run
25
25
  @opts = args['ARGS'].args_to_hash
26
26
  @outfile = args['--save']
27
27
  @infile = args['INFILE']
@@ -1,3 +1,3 @@
1
1
  module Kojo
2
- VERSION = "0.2.5"
2
+ VERSION = "0.2.6"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: kojo
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.5
4
+ version: 0.2.6
5
5
  platform: ruby
6
6
  authors:
7
7
  - Danny Ben Shitrit
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2018-09-13 00:00:00.000000000 Z
11
+ date: 2018-12-13 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: mister_bin
@@ -16,14 +16,14 @@ dependencies:
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: '0.3'
19
+ version: '0.6'
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: '0.3'
26
+ version: '0.6'
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: requires
29
29
  requirement: !ruby/object:Gem::Requirement
@@ -39,89 +39,19 @@ dependencies:
39
39
  - !ruby/object:Gem::Version
40
40
  version: '0.1'
41
41
  - !ruby/object:Gem::Dependency
42
- name: byebug
42
+ name: colsole
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
45
  - - "~>"
46
46
  - !ruby/object:Gem::Version
47
- version: '10.0'
48
- type: :development
49
- prerelease: false
50
- version_requirements: !ruby/object:Gem::Requirement
51
- requirements:
52
- - - "~>"
53
- - !ruby/object:Gem::Version
54
- version: '10.0'
55
- - !ruby/object:Gem::Dependency
56
- name: rspec
57
- requirement: !ruby/object:Gem::Requirement
58
- requirements:
59
- - - "~>"
60
- - !ruby/object:Gem::Version
61
- version: '3.6'
62
- type: :development
63
- prerelease: false
64
- version_requirements: !ruby/object:Gem::Requirement
65
- requirements:
66
- - - "~>"
67
- - !ruby/object:Gem::Version
68
- version: '3.6'
69
- - !ruby/object:Gem::Dependency
70
- name: rspec_fixtures
71
- requirement: !ruby/object:Gem::Requirement
72
- requirements:
73
- - - "~>"
74
- - !ruby/object:Gem::Version
75
- version: '0.3'
76
- type: :development
77
- prerelease: false
78
- version_requirements: !ruby/object:Gem::Requirement
79
- requirements:
80
- - - "~>"
81
- - !ruby/object:Gem::Version
82
- version: '0.3'
83
- - !ruby/object:Gem::Dependency
84
- name: runfile
85
- requirement: !ruby/object:Gem::Requirement
86
- requirements:
87
- - - "~>"
88
- - !ruby/object:Gem::Version
89
- version: '0.10'
90
- type: :development
91
- prerelease: false
92
- version_requirements: !ruby/object:Gem::Requirement
93
- requirements:
94
- - - "~>"
95
- - !ruby/object:Gem::Version
96
- version: '0.10'
97
- - !ruby/object:Gem::Dependency
98
- name: runfile-tasks
99
- requirement: !ruby/object:Gem::Requirement
100
- requirements:
101
- - - "~>"
102
- - !ruby/object:Gem::Version
103
- version: '0.4'
104
- type: :development
105
- prerelease: false
106
- version_requirements: !ruby/object:Gem::Requirement
107
- requirements:
108
- - - "~>"
109
- - !ruby/object:Gem::Version
110
- version: '0.4'
111
- - !ruby/object:Gem::Dependency
112
- name: simplecov
113
- requirement: !ruby/object:Gem::Requirement
114
- requirements:
115
- - - "~>"
116
- - !ruby/object:Gem::Version
117
- version: '0.15'
118
- type: :development
47
+ version: '0.5'
48
+ type: :runtime
119
49
  prerelease: false
120
50
  version_requirements: !ruby/object:Gem::Requirement
121
51
  requirements:
122
52
  - - "~>"
123
53
  - !ruby/object:Gem::Version
124
- version: '0.15'
54
+ version: '0.5'
125
55
  description: Generate configuration files from templates, using variables and definition
126
56
  files.
127
57
  email: db@dannyben.com