falkorlib 0.3.14 → 0.4.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Gemfile.lock +8 -5
- data/Rakefile +2 -2
- data/bin/falkor +29 -0
- data/completion/falkor.bash +19 -0
- data/completion/falkor.zsh +25 -0
- data/falkorlib.gemspec +5 -1
- data/lib/falkorlib.rb +2 -1
- data/lib/falkorlib/bootstrap.rb +15 -0
- data/lib/falkorlib/bootstrap/base.rb +241 -0
- data/lib/falkorlib/cli.rb +230 -0
- data/lib/falkorlib/cli/new.rb +94 -0
- data/lib/falkorlib/common.rb +20 -1
- data/lib/falkorlib/config.rb +6 -3
- data/lib/falkorlib/git/base.rb +50 -16
- data/lib/falkorlib/git/flow.rb +64 -25
- data/lib/falkorlib/loader.rb +2 -2
- data/lib/falkorlib/puppet.rb +1 -3
- data/lib/falkorlib/puppet/base.rb +5 -5
- data/lib/falkorlib/puppet/modules.rb +2 -2
- data/lib/falkorlib/tasks/gem.rake +3 -6
- data/lib/falkorlib/tasks/rspec.rake +3 -1
- data/lib/falkorlib/version.rb +2 -1
- data/spec/falkorlib/bootstrap_spec.rb +118 -0
- data/spec/falkorlib/git_spec.rb +87 -43
- data/spec/falkorlib/gitflow_spec.rb +1 -1
- metadata +42 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 844b9104ffcc2838a8b9176658a6ee5b3db82e77
|
4
|
+
data.tar.gz: 918eab8d5e9945fcbc71beeb80d18c3eb2c3a6ae
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 204b9fd452435462ee29119978f0747a65138ee6474b546c7a56b76bcc6c8b00c2c60560b8bc7d6ff817ac56829d314551220c54f18a6fde49852189a217ef45
|
7
|
+
data.tar.gz: 264f60f7e3cc56122815f4e0017cb2b55bf741978710f7c70b61d7f3ec25e541e0e2307e3f7594d085bca9ae639d8c3dc2698890fb04c5814f7ea53ec0651824
|
data/Gemfile.lock
CHANGED
@@ -1,29 +1,31 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
falkorlib (0.
|
4
|
+
falkorlib (0.4.0)
|
5
5
|
awesome_print (~> 1.2)
|
6
6
|
configatron (~> 3.2)
|
7
7
|
diffy (>= 3.0)
|
8
8
|
git_remote_branch (~> 0)
|
9
9
|
json (~> 1.8)
|
10
10
|
license-generator (~> 0)
|
11
|
+
logger (>= 1.2.8)
|
11
12
|
minigit (~> 0)
|
12
13
|
rake (~> 10.1, >= 10.1.0)
|
13
14
|
term-ansicolor (~> 1.3)
|
15
|
+
thor (>= 0.19)
|
14
16
|
|
15
17
|
GEM
|
16
18
|
remote: http://rubygems.org/
|
17
19
|
specs:
|
18
20
|
addressable (2.3.6)
|
19
|
-
awesome_print (1.
|
21
|
+
awesome_print (1.6.1)
|
20
22
|
backports (3.6.0)
|
21
23
|
codeclimate-test-reporter (0.3.0)
|
22
24
|
simplecov (>= 0.7.1, < 1.0.0)
|
23
25
|
coderay (1.1.0)
|
24
26
|
configatron (3.2.0)
|
25
27
|
diff-lcs (1.1.3)
|
26
|
-
diffy (3.0.
|
28
|
+
diffy (3.0.7)
|
27
29
|
docile (1.1.5)
|
28
30
|
ethon (0.7.0)
|
29
31
|
ffi (>= 1.3.0)
|
@@ -47,6 +49,7 @@ GEM
|
|
47
49
|
addressable (~> 2.3)
|
48
50
|
license-generator (0.4.1)
|
49
51
|
thor
|
52
|
+
logger (1.2.8)
|
50
53
|
method_source (0.8.2)
|
51
54
|
minigit (0.0.4)
|
52
55
|
multi_json (1.10.1)
|
@@ -60,7 +63,7 @@ GEM
|
|
60
63
|
pusher-client (0.6.0)
|
61
64
|
json
|
62
65
|
websocket (~> 1.0)
|
63
|
-
rake (10.
|
66
|
+
rake (10.4.2)
|
64
67
|
rspec (2.7.0)
|
65
68
|
rspec-core (~> 2.7.0)
|
66
69
|
rspec-expectations (~> 2.7.0)
|
@@ -80,7 +83,7 @@ GEM
|
|
80
83
|
term-ansicolor (1.3.0)
|
81
84
|
tins (~> 1.0)
|
82
85
|
thor (0.19.1)
|
83
|
-
tins (1.3.
|
86
|
+
tins (1.3.3)
|
84
87
|
travis (1.6.14)
|
85
88
|
addressable (~> 2.3)
|
86
89
|
backports
|
data/Rakefile
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
##############################################################################
|
2
2
|
# Rakefile - Configuration file for rake (http://rake.rubyforge.org/)
|
3
|
-
# Time-stamp: <
|
3
|
+
# Time-stamp: <Lun 2015-01-12 21:10 svarrette>
|
4
4
|
#
|
5
5
|
# Copyright (c) 2012 Sebastien Varrette <Sebastien.Varrette@uni.lu>
|
6
6
|
# . http://varrette.gforge.uni.lu
|
@@ -16,7 +16,7 @@
|
|
16
16
|
# * http://www.stuartellis.eu/articles/rake/
|
17
17
|
##############################################################################
|
18
18
|
|
19
|
-
task :default => [ :
|
19
|
+
task :default => [ :rspec ]
|
20
20
|
#.....................
|
21
21
|
require 'rake/clean'
|
22
22
|
|
data/bin/falkor
ADDED
@@ -0,0 +1,29 @@
|
|
1
|
+
#!/usr/bin/env ruby -U
|
2
|
+
# -*- encoding: utf-8 -*-
|
3
|
+
################################################################################
|
4
|
+
# Time-stamp: <Lun 2015-01-19 14:48 svarrette>
|
5
|
+
#
|
6
|
+
# Copyright (c) 2015 Sebastien Varrette <Sebastien.Varrette@uni.lu>
|
7
|
+
#
|
8
|
+
################################################################################
|
9
|
+
# Resources:
|
10
|
+
#
|
11
|
+
# * [cleanthor](https://github.com/lastobelus/cleanthor)
|
12
|
+
# * http://chrisparai.so/creating-a-thor-gem/
|
13
|
+
# * http://willschenk.com/making-a-command-line-utility-with-gems-and-thor/
|
14
|
+
|
15
|
+
# Exit cleanly from an early interrupt
|
16
|
+
Signal.trap("INT") { exit 1 }
|
17
|
+
|
18
|
+
|
19
|
+
|
20
|
+
require "thor/error"
|
21
|
+
require 'falkorlib'
|
22
|
+
|
23
|
+
begin
|
24
|
+
FalkorLib::CLI::App.start(ARGV, :debug => true)
|
25
|
+
rescue Thor::InvocationError => e
|
26
|
+
error e.message.gsub(/^ERROR:/, '')
|
27
|
+
end
|
28
|
+
|
29
|
+
|
@@ -0,0 +1,19 @@
|
|
1
|
+
#!/usr/bin/env bash
|
2
|
+
################################################################################
|
3
|
+
# Time-stamp: <Lun 2015-01-19 16:25 svarrette>
|
4
|
+
#
|
5
|
+
# BASH completion for [FalkorLib](https://github.com/Falkor/falkorlib)
|
6
|
+
#
|
7
|
+
# Copyright (c) 2015 Sebastien Varrette <Sebastien.Varrette@uni.lu>
|
8
|
+
################################################################################
|
9
|
+
_falkor() {
|
10
|
+
COMPREPLY=()
|
11
|
+
local word="${COMP_WORDS[COMP_CWORD]}"
|
12
|
+
|
13
|
+
if [ "$COMP_CWORD" -eq 1 ]; then
|
14
|
+
local commands="$(compgen -W "$(falkor commands)" -- "$word")"
|
15
|
+
COMPREPLY=( $commands $projects )
|
16
|
+
fi
|
17
|
+
}
|
18
|
+
|
19
|
+
complete -o default -F _falkor falkor
|
@@ -0,0 +1,25 @@
|
|
1
|
+
#!/usr/bin/env zsh
|
2
|
+
################################################################################
|
3
|
+
# Time-stamp: <Lun 2015-01-19 16:24 svarrette>
|
4
|
+
#
|
5
|
+
# ZSH completion for [FalkorLib](https://github.com/Falkor/falkorlib)
|
6
|
+
#
|
7
|
+
# Copyright (c) 2015 Sebastien Varrette <Sebastien.Varrette@uni.lu>
|
8
|
+
################################################################################
|
9
|
+
|
10
|
+
if [[ ! -o interactive ]]; then
|
11
|
+
return
|
12
|
+
fi
|
13
|
+
|
14
|
+
compctl -f -K _falkor falkor
|
15
|
+
|
16
|
+
_falkor() {
|
17
|
+
local words completions
|
18
|
+
read -cA words
|
19
|
+
|
20
|
+
if [ "${#words}" -eq 2 ]; then
|
21
|
+
completions="$(falkor commands)"
|
22
|
+
fi
|
23
|
+
|
24
|
+
reply=("${(ps:\n:)completions}")
|
25
|
+
}
|
data/falkorlib.gemspec
CHANGED
@@ -101,7 +101,7 @@ Gem::Specification.new do |s|
|
|
101
101
|
|
102
102
|
# Executables included in the gem.
|
103
103
|
#
|
104
|
-
|
104
|
+
s.executables = (Dir["bin/*"]).collect{|f| File.basename(f)}
|
105
105
|
|
106
106
|
################################################################### REQUIREMENTS & INSTALL
|
107
107
|
# Remember the gem version requirements operators and schemes:
|
@@ -133,7 +133,11 @@ Gem::Specification.new do |s|
|
|
133
133
|
s.add_runtime_dependency("json", "~> 1.8")
|
134
134
|
s.add_runtime_dependency("license-generator", '~> 0')
|
135
135
|
s.add_runtime_dependency("diffy", '>= 3.0')
|
136
|
+
s.add_runtime_dependency("logger", '>= 1.2.8')
|
137
|
+
s.add_runtime_dependency("thor", '>= 0.19')
|
138
|
+
#s.add_runtime_dependency("mercenary", '>= 0.3.5')
|
136
139
|
|
140
|
+
#
|
137
141
|
#
|
138
142
|
# One call to add_dependency('gem_name', 'gem version requirement') for each
|
139
143
|
# runtime dependency. These gems will be installed with your gem.
|
data/lib/falkorlib.rb
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
# -*- encoding: utf-8 -*-
|
2
2
|
################################################################################
|
3
|
-
# Time-stamp: <
|
3
|
+
# Time-stamp: <Mar 2015-01-13 21:24 svarrette>
|
4
4
|
################################################################################
|
5
5
|
# _____ _ _ _ _ _
|
6
6
|
# | ___|_ _| | | _____ _ __| | (_) |__
|
@@ -47,5 +47,6 @@ module FalkorLib
|
|
47
47
|
|
48
48
|
end # module FalkorLib
|
49
49
|
|
50
|
+
|
50
51
|
require "falkorlib/version"
|
51
52
|
require "falkorlib/loader"
|
@@ -0,0 +1,15 @@
|
|
1
|
+
# -*- encoding: utf-8 -*-
|
2
|
+
################################################################################
|
3
|
+
# Time-stamp: <Mer 2015-01-21 22:35 svarrette>
|
4
|
+
################################################################################
|
5
|
+
# Management of Bootstrapping operations
|
6
|
+
|
7
|
+
require "falkorlib"
|
8
|
+
|
9
|
+
module FalkorLib #:nodoc:
|
10
|
+
|
11
|
+
end # module FalkorLib
|
12
|
+
|
13
|
+
require "falkorlib/bootstrap/base"
|
14
|
+
#require "falkorlib/bootstrap/repo"
|
15
|
+
|
@@ -0,0 +1,241 @@
|
|
1
|
+
# -*- encoding: utf-8 -*-
|
2
|
+
################################################################################
|
3
|
+
# Time-stamp: <Ven 2015-01-23 00:12 svarrette>
|
4
|
+
################################################################################
|
5
|
+
# Interface for the main Bootstrapping operations
|
6
|
+
#
|
7
|
+
|
8
|
+
require "falkorlib"
|
9
|
+
require "falkorlib/common"
|
10
|
+
|
11
|
+
include FalkorLib::Common
|
12
|
+
|
13
|
+
module FalkorLib #:nodoc:
|
14
|
+
module Config
|
15
|
+
|
16
|
+
# Default configuration for Bootstrapping processes
|
17
|
+
module Bootstrap
|
18
|
+
DEFAULTS =
|
19
|
+
{
|
20
|
+
:trashdir => '.Trash',
|
21
|
+
:types => [ 'article', 'slides', 'gem', 'octopress', 'puppet_module', 'rvm' ],
|
22
|
+
:rvm => {
|
23
|
+
:version => '1.9.3',
|
24
|
+
:versionfile => '.ruby-version',
|
25
|
+
:gemsetfile => '.ruby-gemset'
|
26
|
+
},
|
27
|
+
:puppet => {},
|
28
|
+
}
|
29
|
+
|
30
|
+
|
31
|
+
end
|
32
|
+
end
|
33
|
+
end
|
34
|
+
|
35
|
+
|
36
|
+
|
37
|
+
module FalkorLib
|
38
|
+
module Bootstrap
|
39
|
+
module_function
|
40
|
+
|
41
|
+
###
|
42
|
+
# Initialize a trash directory in path
|
43
|
+
##
|
44
|
+
def trash(path = Dir.pwd, dirname = FalkorLib.config[:templates][:trashdir], options = {})
|
45
|
+
#args = method(__method__).parameters.map { |arg| arg[1].to_s }.map { |arg| { arg.to_sym => eval(arg) } }.reduce Hash.new, :merge
|
46
|
+
#ap args
|
47
|
+
exit_status = 0
|
48
|
+
trashdir = File.join(path, dirname)
|
49
|
+
if Dir.exists?(trashdir)
|
50
|
+
warning "The trash directory '#{dirname}' already exists"
|
51
|
+
return 1
|
52
|
+
end
|
53
|
+
Dir.chdir(path) do
|
54
|
+
info "creating the trash directory '#{dirname}'"
|
55
|
+
exit_status = run %{
|
56
|
+
mkdir -p #{dirname}
|
57
|
+
echo '*' > #{dirname}/.gitignore
|
58
|
+
}
|
59
|
+
if FalkorLib::Git.init?(path)
|
60
|
+
exit_status = FalkorLib::Git.add(File.join(path, dirname, '.gitignore' ),
|
61
|
+
'Add Trash directory',
|
62
|
+
{ :force => true } )
|
63
|
+
end
|
64
|
+
end
|
65
|
+
exit_status.to_i
|
66
|
+
end # trash
|
67
|
+
|
68
|
+
###### rvm ######
|
69
|
+
# Initialize RVM in the current directory
|
70
|
+
# Supported options:
|
71
|
+
# * :force [boolean] force overwritting
|
72
|
+
# * :ruby [string] Ruby version to configure for RVM
|
73
|
+
# * :versionfile [string] Ruby Version file
|
74
|
+
# * :gemset [string] RVM Gemset to configure
|
75
|
+
# * :gemsetfile [string] RVM Gemset file
|
76
|
+
# * :commit [boolean] Commit the changes NOT YET USED
|
77
|
+
##
|
78
|
+
def rvm(dir = Dir.pwd, options = {})
|
79
|
+
info "Initialize Ruby Version Manager (RVM)"
|
80
|
+
ap options if options[:debug]
|
81
|
+
path = normalized_path(dir)
|
82
|
+
use_git = FalkorLib::Git.init?(path)
|
83
|
+
rootdir = use_git ? FalkorLib::Git.rootdir(path) : path
|
84
|
+
files = {}
|
85
|
+
exit_status = 1
|
86
|
+
[:versionfile, :gemsetfile].each do |type|
|
87
|
+
f = options[type.to_sym].nil? ? FalkorLib.config[:rvm][type.to_sym] : options[type.to_sym]
|
88
|
+
if File.exists?( File.join( rootdir, f ))
|
89
|
+
content = `cat #{File.join( rootdir, f)}`.chomp
|
90
|
+
warning "The RVM file '#{f}' already exists (and contains '#{content}')"
|
91
|
+
next unless options[:force]
|
92
|
+
warning "... and it WILL BE overwritten"
|
93
|
+
end
|
94
|
+
files[type.to_sym] = f
|
95
|
+
end
|
96
|
+
# ==== Ruby version ===
|
97
|
+
unless files[:versionfile].nil?
|
98
|
+
file = File.join(rootdir, files[:versionfile])
|
99
|
+
v =
|
100
|
+
options[:ruby] ?
|
101
|
+
options[:ruby] :
|
102
|
+
select_from(FalkorLib.config[:rvm][:rubies],
|
103
|
+
"Select RVM ruby to configure for this directory",
|
104
|
+
1)
|
105
|
+
info " ==> configuring RVM version file '#{files[:versionfile]}' for ruby version '#{v}'"
|
106
|
+
File.open(file, 'w') do |f|
|
107
|
+
f.puts v
|
108
|
+
end
|
109
|
+
exit_status = (File.exists?(file) and `cat #{file}`.chomp == v) ? 0 : 1
|
110
|
+
FalkorLib::Git.add(File.join(rootdir, files[:versionfile])) if use_git
|
111
|
+
end
|
112
|
+
# === Gemset ===
|
113
|
+
if files[:gemsetfile]
|
114
|
+
file = File.join(rootdir, files[:gemsetfile])
|
115
|
+
default_gemset = File.basename(rootdir)
|
116
|
+
default_gemset = `cat #{file}`.chomp if File.exists?( file )
|
117
|
+
g = options[:gemset] ? options[:gemset] : ask("Enter RVM gemset name for this directory", default_gemset)
|
118
|
+
info " ==> configuring RVM gemset file '#{files[:gemsetfile]}' with content '#{g}'"
|
119
|
+
File.open( File.join(rootdir, files[:gemsetfile]), 'w') do |f|
|
120
|
+
f.puts g
|
121
|
+
end
|
122
|
+
exit_status = (File.exists?(file) and `cat #{file}`.chomp == g) ? 0 : 1
|
123
|
+
FalkorLib::Git.add(File.join(rootdir, files[:gemsetfile])) if use_git
|
124
|
+
end
|
125
|
+
exit_status
|
126
|
+
end # rvm
|
127
|
+
|
128
|
+
###### repo ######
|
129
|
+
# Initialize a Git repository for a project with my favorite layout
|
130
|
+
# Supported options:
|
131
|
+
# :interactive [boolean] Confirm Gitflow branch names
|
132
|
+
# :master [string] Branch name for production releases
|
133
|
+
# :develop [string] Branch name for development commits
|
134
|
+
# :make [boolean] Use a Makefile to pilot the repository actions
|
135
|
+
# :rake [boolean] Use a Rakefile (and FalkorLib) to pilot the repository action
|
136
|
+
# :remote_sync [boolean] Operate a git remote synchronization
|
137
|
+
##
|
138
|
+
def repo(name, options = {})
|
139
|
+
ap options if options[:debug]
|
140
|
+
path = normalized_path(name)
|
141
|
+
project = File.basename(path)
|
142
|
+
use_git = FalkorLib::Git.init?(path)
|
143
|
+
info "Bootstrap a [Git] repository for the project '#{project}'"
|
144
|
+
if use_git
|
145
|
+
warning "Git is already initialized for the repository '#{name}'"
|
146
|
+
really_continue? unless options[:force]
|
147
|
+
end
|
148
|
+
info " ==> initialize Git flow in #{path}"
|
149
|
+
FalkorLib::GitFlow.init(path, options)
|
150
|
+
gitflow_branches = {}
|
151
|
+
[ :master, :develop ].each do |t|
|
152
|
+
gitflow_branches[t.to_sym] = FalkorLib::GitFlow.branches(t, path)
|
153
|
+
end
|
154
|
+
# === prepare Git submodules ===
|
155
|
+
info " ==> prepare the relevant Git submodules"
|
156
|
+
submodules = {
|
157
|
+
'gitstats' => { :url => 'https://github.com/hoxu/gitstats.git' }
|
158
|
+
}
|
159
|
+
if options[:make]
|
160
|
+
submodules['Makefiles'] = {
|
161
|
+
:url => 'https://github.com/Falkor/Makefiles.git',
|
162
|
+
:branch => 'devel'
|
163
|
+
}
|
164
|
+
end
|
165
|
+
FalkorLib::Git.submodule_init(path, submodules)
|
166
|
+
# === Prepare root [M|R]akefile ===
|
167
|
+
if options[:make]
|
168
|
+
info " ==> prepare Root Makefile"
|
169
|
+
makefile = File.join(path, "Makefile")
|
170
|
+
unless File.exist?( makefile )
|
171
|
+
src_makefile = File.join(path, FalkorLib.config.git[:submodulesdir],
|
172
|
+
'Makefiles', 'repo', 'Makefile')
|
173
|
+
FileUtils.cp src_makefile, makefile
|
174
|
+
info "adapting Makefile to the gitflow branches"
|
175
|
+
Dir.chdir( path ) do
|
176
|
+
run %{
|
177
|
+
sed -i '' \
|
178
|
+
-e \"s/^GITFLOW_BR_MASTER=production/GITFLOW_BR_MASTER=#{gitflow_branches[:master]}/\" \
|
179
|
+
-e \"s/^GITFLOW_BR_DEVELOP=devel/GITFLOW_BR_DEVELOP=#{gitflow_branches[:develop]}/\" \
|
180
|
+
Makefile
|
181
|
+
}
|
182
|
+
end
|
183
|
+
FalkorLib::Git.add(makefile, 'Initialize root Makefile for the repo')
|
184
|
+
else
|
185
|
+
puts " ... not overwriting the root Makefile which already exists"
|
186
|
+
end
|
187
|
+
end
|
188
|
+
if options[:rake]
|
189
|
+
warning "TODO: setup Rakefile"
|
190
|
+
end
|
191
|
+
|
192
|
+
# === VERSION file ===
|
193
|
+
FalkorLib::Bootstrap.versionfile(path, :tag => 'v0.0.0')
|
194
|
+
|
195
|
+
#===== remote synchro ========
|
196
|
+
if options[:remote_sync]
|
197
|
+
remotes = FalkorLib::Git.remotes(path)
|
198
|
+
if remotes.include?( 'origin' )
|
199
|
+
info "perform remote synchronization"
|
200
|
+
[ :master, :develop ].each do |t|
|
201
|
+
FalkorLib::Git.publish(gitflow_branch[t.to_sym], path, 'origin')
|
202
|
+
end
|
203
|
+
else
|
204
|
+
warning "no Git remote 'origin' found, thus no remote synchronization performed"
|
205
|
+
end
|
206
|
+
end
|
207
|
+
|
208
|
+
end # repo
|
209
|
+
|
210
|
+
###### versionfile ######
|
211
|
+
# Bootstrap a VERSION file at the root of a project
|
212
|
+
# Supported options:
|
213
|
+
# * :file [string] filename
|
214
|
+
##
|
215
|
+
def versionfile(dir = Dir.pwd, options = {})
|
216
|
+
file = options[:file] ? options[:file] : 'VERSION'
|
217
|
+
version = options[:version] ? options[:version] : '0.0.0'
|
218
|
+
info " ==> bootstrapping a VERSION file"
|
219
|
+
path = normalized_path(dir)
|
220
|
+
path = FalkorLib::Git.rootdir(path) if FalkorLib::Git.init?(path)
|
221
|
+
unless Dir.exists?( path )
|
222
|
+
warning "The directory #{path} does not exists and will be created"
|
223
|
+
really_continue?
|
224
|
+
FileUtils.mkdir_p path
|
225
|
+
end
|
226
|
+
versionfile = File.join(path, file)
|
227
|
+
unless File.exists?( versionfile )
|
228
|
+
run %{ echo "#{version}" > #{versionfile} }
|
229
|
+
if FalkorLib::Git.init?(path)
|
230
|
+
FalkorLib::Git.add(versionfile, "Initialize #{file} file")
|
231
|
+
Dir.chdir( path ) do
|
232
|
+
run %{ git tag #{options[:tag]} } if options[:tag]
|
233
|
+
end
|
234
|
+
end
|
235
|
+
else
|
236
|
+
puts " ... not overwriting the #{file} file which already exists"
|
237
|
+
end
|
238
|
+
end # versionfile
|
239
|
+
|
240
|
+
end # module Bootstrap
|
241
|
+
end # module FalkorLib
|