Module: Flor::Tools::Env
- Defined in:
- lib/flor/tools/env.rb
Class Method Summary collapse
- .make(path, envname = nil, opts = {}) ⇒ Object
-
.mk_etc(*ps, opts) ⇒ Object
protected, somehow.
- .mk_lib(*ps, opts) ⇒ Object
- .mk_usr(*ps, opts) ⇒ Object
- .mk_var(*ps, opts) ⇒ Object
- .mkdir(*ps) ⇒ Object
- .touch(*ps) ⇒ Object
- .write(*ps, &block) ⇒ Object
Class Method Details
.make(path, envname = nil, opts = {}) ⇒ Object
11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 |
# File 'lib/flor/tools/env.rb', line 11 def self.make(path, envname=nil, opts={}) if envname.is_a?(Hash) opts = envname envname = nil end opts[:env] = envname || 'production' opts[:sto_uri] ||= 'sqlite://tmp/dev.db' opts[:gitkeep] = true unless opts.has_key?(:gitkeep) mkdir(path, envname) if envname mk_etc(path, envname, opts) mk_lib(path, envname, opts) mk_usr(path, envname, opts) mk_var(path, envname, opts) end |
.mk_etc(*ps, opts) ⇒ Object
protected, somehow
32 33 34 35 36 37 38 39 40 41 42 |
# File 'lib/flor/tools/env.rb', line 32 def self.mk_etc(*ps, opts) mkdir(*ps, 'etc') mkdir(*ps, 'etc', 'variables') touch(*ps, 'etc', 'variables', '.gitkeep') if opts[:gitkeep] write(*ps, 'etc', 'conf.json') do "env: #{opts[:env]}\n" + "sto_uri: #{opts[:sto_uri].inspect}" end end |
.mk_lib(*ps, opts) ⇒ Object
44 45 46 47 48 49 50 51 |
# File 'lib/flor/tools/env.rb', line 44 def self.mk_lib(*ps, opts) mkdir(*ps, 'lib') mkdir(*ps, 'lib', 'flows') touch(*ps, 'lib', 'flows', '.gitkeep') if opts[:gitkeep] mkdir(*ps, 'lib', 'taskers') touch(*ps, 'lib', 'taskers', '.gitkeep') if opts[:gitkeep] end |
.mk_usr(*ps, opts) ⇒ Object
53 54 55 56 57 58 59 60 61 62 63 64 |
# File 'lib/flor/tools/env.rb', line 53 def self.mk_usr(*ps, opts) mkdir(*ps, 'usr') if opts[:acme] == false touch(*ps, 'usr', '.gitkeep') if opts[:gitkeep] else mkdir(*ps, 'usr', 'com.acme') mk_etc(*ps, 'usr', 'com.acme', opts) mk_lib(*ps, 'usr', 'com.acme', opts) end end |
.mk_var(*ps, opts) ⇒ Object
66 67 68 69 70 71 |
# File 'lib/flor/tools/env.rb', line 66 def self.mk_var(*ps, opts) mkdir(*ps, 'var') mkdir(*ps, 'var', 'log') touch(*ps, 'var', 'log', '.gitkeep') if opts[:gitkeep] end |
.mkdir(*ps) ⇒ Object
73 |
# File 'lib/flor/tools/env.rb', line 73 def self.mkdir(*ps); FileUtils.mkdir(File.join(*ps.compact)); end |
.touch(*ps) ⇒ Object
74 |
# File 'lib/flor/tools/env.rb', line 74 def self.touch(*ps); FileUtils.touch(File.join(*ps.compact)); end |
.write(*ps, &block) ⇒ Object
76 77 78 79 |
# File 'lib/flor/tools/env.rb', line 76 def self.write(*ps, &block) File.open(File.join(*ps.compact), 'wb') { |f| f.write(block.call) } end |