jumpstart 0.1.0 → 0.1.1
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.
- data/.gitignore +1 -0
- data/Gemfile +2 -1
- data/VERSION +1 -1
- data/config/jumpstart_setup.yml +1 -0
- data/jumpstart.gemspec +15 -89
- data/jumpstart_templates/{i0n_rails_3/lib/generators/formtastic_erb/controller/templates/view.html.erb → .gitignore} +0 -0
- data/lib/jumpstart.rb +15 -39
- data/lib/jumpstart/base.rb +111 -111
- data/lib/jumpstart/filetools.rb +11 -7
- data/lib/jumpstart/stringtools.rb +41 -0
- data/test/helper.rb +12 -6
- data/test/jumpstart/test_base.rb +848 -106
- data/test/jumpstart/test_filetools.rb +42 -10
- data/test/jumpstart/test_stringutils.rb +67 -0
- data/test/test_jumpstart_templates/test_base/current_files_and_dirs_test_file.txt +1 -0
- data/{jumpstart_templates/i0n_rails_3/lib/generators/formtastic_haml/controller/templates/view.html.haml → test/test_jumpstart_templates/test_fileutils/sort_contained_files_and_dirs_test/file_1.txt} +0 -0
- data/{jumpstart_templates/i0n_rails_3/lib/generators/haml/controller/templates/view.html.haml → test/test_jumpstart_templates/test_fileutils/sort_contained_files_and_dirs_test/file_2} +0 -0
- data/test/test_jumpstart_templates/test_fileutils/sort_contained_files_and_dirs_test/folder_1/file_3.txt +0 -0
- data/test/test_jumpstart_templates/test_fileutils/sort_contained_files_and_dirs_test/folder_1/folder_2/file_4.txt +0 -0
- data/test/test_jumpstart_templates/test_fileutils/sort_contained_files_and_dirs_test/folder_1/folder_2/folder_3/file_5.txt +0 -0
- data/test/test_jumpstart_templates/test_fileutils/sort_contained_files_and_dirs_test/folder_1/folder_2/folder_4/file_6.txt +0 -0
- data/test/test_jumpstart_templates/test_template_1/_20._test_line_file_without_extension +1 -1
- data/test/test_jumpstart_templates/test_template_2/jumpstart_config/test_template_2.yml +83 -1
- metadata +15 -89
- data/.bundle/config +0 -2
- data/jumpstart_templates/i0n_rails_3/.gitignore +0 -11
- data/jumpstart_templates/i0n_rails_3/_._Gemfile +0 -5
- data/jumpstart_templates/i0n_rails_3/app/views/home/index.haml +0 -4
- data/jumpstart_templates/i0n_rails_3/app/views/layouts/application.haml +0 -32
- data/jumpstart_templates/i0n_rails_3/config/_2._routes.rb +0 -1
- data/jumpstart_templates/i0n_rails_3/config/_L._database.yml +0 -1
- data/jumpstart_templates/i0n_rails_3/config/deploy.rb +0 -62
- data/jumpstart_templates/i0n_rails_3/config/environments/_18._development.rb +0 -5
- data/jumpstart_templates/i0n_rails_3/config/environments/_27._test.rb +0 -1
- data/jumpstart_templates/i0n_rails_3/config/environments/_41._production.rb +0 -3
- data/jumpstart_templates/i0n_rails_3/config/initializers/setup_mail.rb +0 -14
- data/jumpstart_templates/i0n_rails_3/jumpstart_config/i0n_rails_3.yml +0 -40
- data/jumpstart_templates/i0n_rails_3/jumpstart_config/nginx.local.conf +0 -11
- data/jumpstart_templates/i0n_rails_3/jumpstart_config/nginx.remote.conf +0 -37
- data/jumpstart_templates/i0n_rails_3/lib/development_mail_interceptor.rb +0 -8
- data/jumpstart_templates/i0n_rails_3/lib/generators/authlogic.rb +0 -11
- data/jumpstart_templates/i0n_rails_3/lib/generators/authlogic/session/session_generator.rb +0 -18
- data/jumpstart_templates/i0n_rails_3/lib/generators/authlogic/session/templates/session.rb +0 -2
- data/jumpstart_templates/i0n_rails_3/lib/generators/datamapper.rb +0 -80
- data/jumpstart_templates/i0n_rails_3/lib/generators/datamapper/migration/migration_generator.rb +0 -26
- data/jumpstart_templates/i0n_rails_3/lib/generators/datamapper/migration/templates/migration.rb +0 -21
- data/jumpstart_templates/i0n_rails_3/lib/generators/datamapper/model/model_generator.rb +0 -29
- data/jumpstart_templates/i0n_rails_3/lib/generators/datamapper/model/templates/migration.rb +0 -17
- data/jumpstart_templates/i0n_rails_3/lib/generators/datamapper/model/templates/model.rb +0 -10
- data/jumpstart_templates/i0n_rails_3/lib/generators/datamapper/observer/observer_generator.rb +0 -15
- data/jumpstart_templates/i0n_rails_3/lib/generators/datamapper/observer/templates/observer.rb +0 -5
- data/jumpstart_templates/i0n_rails_3/lib/generators/factory_girl.rb +0 -11
- data/jumpstart_templates/i0n_rails_3/lib/generators/factory_girl/model/model_generator.rb +0 -14
- data/jumpstart_templates/i0n_rails_3/lib/generators/factory_girl/model/templates/fixtures.rb +0 -7
- data/jumpstart_templates/i0n_rails_3/lib/generators/formtastic_erb.rb +0 -9
- data/jumpstart_templates/i0n_rails_3/lib/generators/formtastic_erb/USAGE +0 -8
- data/jumpstart_templates/i0n_rails_3/lib/generators/formtastic_erb/controller/controller_generator.rb +0 -24
- data/jumpstart_templates/i0n_rails_3/lib/generators/formtastic_erb/scaffold/scaffold_generator.rb +0 -27
- data/jumpstart_templates/i0n_rails_3/lib/generators/formtastic_erb/scaffold/templates/_form.html.erb +0 -12
- data/jumpstart_templates/i0n_rails_3/lib/generators/formtastic_erb/scaffold/templates/edit.html.erb +0 -6
- data/jumpstart_templates/i0n_rails_3/lib/generators/formtastic_erb/scaffold/templates/index.html.erb +0 -27
- data/jumpstart_templates/i0n_rails_3/lib/generators/formtastic_erb/scaffold/templates/layout.html.erb +0 -16
- data/jumpstart_templates/i0n_rails_3/lib/generators/formtastic_erb/scaffold/templates/new.html.erb +0 -5
- data/jumpstart_templates/i0n_rails_3/lib/generators/formtastic_erb/scaffold/templates/show.html.erb +0 -10
- data/jumpstart_templates/i0n_rails_3/lib/generators/formtastic_haml.rb +0 -9
- data/jumpstart_templates/i0n_rails_3/lib/generators/formtastic_haml/USAGE +0 -8
- data/jumpstart_templates/i0n_rails_3/lib/generators/formtastic_haml/controller/controller_generator.rb +0 -24
- data/jumpstart_templates/i0n_rails_3/lib/generators/formtastic_haml/scaffold/scaffold_generator.rb +0 -23
- data/jumpstart_templates/i0n_rails_3/lib/generators/formtastic_haml/scaffold/templates/_form.haml.erb +0 -9
- data/jumpstart_templates/i0n_rails_3/lib/generators/formtastic_haml/scaffold/templates/edit.haml.erb +0 -7
- data/jumpstart_templates/i0n_rails_3/lib/generators/formtastic_haml/scaffold/templates/index.haml.erb +0 -23
- data/jumpstart_templates/i0n_rails_3/lib/generators/formtastic_haml/scaffold/templates/layout.haml.erb +0 -9
- data/jumpstart_templates/i0n_rails_3/lib/generators/formtastic_haml/scaffold/templates/new.haml.erb +0 -5
- data/jumpstart_templates/i0n_rails_3/lib/generators/formtastic_haml/scaffold/templates/show.haml.erb +0 -9
- data/jumpstart_templates/i0n_rails_3/lib/generators/haml.rb +0 -9
- data/jumpstart_templates/i0n_rails_3/lib/generators/haml/controller/controller_generator.rb +0 -24
- data/jumpstart_templates/i0n_rails_3/lib/generators/haml/scaffold/scaffold_generator.rb +0 -26
- data/jumpstart_templates/i0n_rails_3/lib/generators/haml/scaffold/templates/_form.haml.erb +0 -9
- data/jumpstart_templates/i0n_rails_3/lib/generators/haml/scaffold/templates/edit.haml.erb +0 -7
- data/jumpstart_templates/i0n_rails_3/lib/generators/haml/scaffold/templates/index.haml.erb +0 -23
- data/jumpstart_templates/i0n_rails_3/lib/generators/haml/scaffold/templates/layout.haml.erb +0 -9
- data/jumpstart_templates/i0n_rails_3/lib/generators/haml/scaffold/templates/new.haml.erb +0 -5
- data/jumpstart_templates/i0n_rails_3/lib/generators/haml/scaffold/templates/show.haml.erb +0 -9
- data/jumpstart_templates/i0n_rails_3/lib/generators/machinist.rb +0 -11
- data/jumpstart_templates/i0n_rails_3/lib/generators/machinist/model/model_generator.rb +0 -19
- data/jumpstart_templates/i0n_rails_3/lib/generators/machinist/model/templates/blueprint.rb +0 -5
- data/jumpstart_templates/i0n_rails_3/lib/generators/machinist/model/templates/machinist_initializer.rb +0 -19
- data/jumpstart_templates/i0n_rails_3/lib/generators/mongomapper.rb +0 -80
- data/jumpstart_templates/i0n_rails_3/lib/generators/mongomapper/model/model_generator.rb +0 -29
- data/jumpstart_templates/i0n_rails_3/lib/generators/mongomapper/model/templates/model.rb +0 -24
- data/jumpstart_templates/i0n_rails_3/lib/generators/mongomapper/observer/observer_generator.rb +0 -15
- data/jumpstart_templates/i0n_rails_3/lib/generators/shoulda.rb +0 -11
- data/jumpstart_templates/i0n_rails_3/lib/generators/shoulda/controller/controller_generator.rb +0 -16
- data/jumpstart_templates/i0n_rails_3/lib/generators/shoulda/controller/templates/controller.rb +0 -84
- data/jumpstart_templates/i0n_rails_3/lib/generators/shoulda/model/model_generator.rb +0 -16
- data/jumpstart_templates/i0n_rails_3/lib/generators/shoulda/model/templates/model.rb +0 -7
- data/jumpstart_templates/i0n_rails_3/lib/tasks/populate.rake +0 -91
- data/jumpstart_templates/i0n_rails_3/public/javascripts/init.js +0 -6
- data/jumpstart_templates/i0n_rails_3/public/javascripts/jquery-1.4.2.min.js +0 -154
- data/jumpstart_templates/i0n_rails_3/public/javascripts/jquery-ui-1.8.custom.min.js +0 -404
- data/jumpstart_templates/i0n_rails_3/public/javascripts/rails.js +0 -126
- data/jumpstart_templates/i0n_rails_3/public/stylesheets/sass/_setup.sass +0 -86
- data/jumpstart_templates/i0n_rails_3/public/stylesheets/sass/global.sass +0 -58
- data/jumpstart_templates/i0n_rails_3/public/stylesheets/sass/handheld.sass +0 -7
- data/jumpstart_templates/i0n_rails_3/public/stylesheets/sass/ie.sass +0 -40
- data/jumpstart_templates/i0n_rails_3/public/stylesheets/sass/print.sass +0 -57
- data/jumpstart_templates/i0n_rails_3/public/stylesheets/sass/screen.sass +0 -170
data/.gitignore
CHANGED
data/Gemfile
CHANGED
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.1.
|
1
|
+
0.1.1
|
data/config/jumpstart_setup.yml
CHANGED
data/jumpstart.gemspec
CHANGED
@@ -5,11 +5,11 @@
|
|
5
5
|
|
6
6
|
Gem::Specification.new do |s|
|
7
7
|
s.name = %q{jumpstart}
|
8
|
-
s.version = "0.1.
|
8
|
+
s.version = "0.1.1"
|
9
9
|
|
10
10
|
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
11
11
|
s.authors = ["i0n"]
|
12
|
-
s.date = %q{2010-05-
|
12
|
+
s.date = %q{2010-05-27}
|
13
13
|
s.default_executable = %q{jumpstart}
|
14
14
|
s.description = %q{JumpStart is a script runner and template parser written in Ruby with Ruby projects in mind.
|
15
15
|
|
@@ -22,8 +22,7 @@ Gem::Specification.new do |s|
|
|
22
22
|
"README.rdoc"
|
23
23
|
]
|
24
24
|
s.files = [
|
25
|
-
".
|
26
|
-
".document",
|
25
|
+
".document",
|
27
26
|
".gitignore",
|
28
27
|
"Gemfile",
|
29
28
|
"LICENSE",
|
@@ -33,91 +32,7 @@ Gem::Specification.new do |s|
|
|
33
32
|
"bin/jumpstart",
|
34
33
|
"config/jumpstart_setup.yml",
|
35
34
|
"jumpstart.gemspec",
|
36
|
-
"jumpstart_templates
|
37
|
-
"jumpstart_templates/i0n_rails_3/_._Gemfile",
|
38
|
-
"jumpstart_templates/i0n_rails_3/app/views/home/index.haml",
|
39
|
-
"jumpstart_templates/i0n_rails_3/app/views/layouts/application.haml",
|
40
|
-
"jumpstart_templates/i0n_rails_3/config/_2._routes.rb",
|
41
|
-
"jumpstart_templates/i0n_rails_3/config/_L._database.yml",
|
42
|
-
"jumpstart_templates/i0n_rails_3/config/deploy.rb",
|
43
|
-
"jumpstart_templates/i0n_rails_3/config/environments/_18._development.rb",
|
44
|
-
"jumpstart_templates/i0n_rails_3/config/environments/_27._test.rb",
|
45
|
-
"jumpstart_templates/i0n_rails_3/config/environments/_41._production.rb",
|
46
|
-
"jumpstart_templates/i0n_rails_3/config/initializers/setup_mail.rb",
|
47
|
-
"jumpstart_templates/i0n_rails_3/jumpstart_config/i0n_rails_3.yml",
|
48
|
-
"jumpstart_templates/i0n_rails_3/jumpstart_config/nginx.local.conf",
|
49
|
-
"jumpstart_templates/i0n_rails_3/jumpstart_config/nginx.remote.conf",
|
50
|
-
"jumpstart_templates/i0n_rails_3/lib/development_mail_interceptor.rb",
|
51
|
-
"jumpstart_templates/i0n_rails_3/lib/generators/authlogic.rb",
|
52
|
-
"jumpstart_templates/i0n_rails_3/lib/generators/authlogic/session/session_generator.rb",
|
53
|
-
"jumpstart_templates/i0n_rails_3/lib/generators/authlogic/session/templates/session.rb",
|
54
|
-
"jumpstart_templates/i0n_rails_3/lib/generators/datamapper.rb",
|
55
|
-
"jumpstart_templates/i0n_rails_3/lib/generators/datamapper/migration/migration_generator.rb",
|
56
|
-
"jumpstart_templates/i0n_rails_3/lib/generators/datamapper/migration/templates/migration.rb",
|
57
|
-
"jumpstart_templates/i0n_rails_3/lib/generators/datamapper/model/model_generator.rb",
|
58
|
-
"jumpstart_templates/i0n_rails_3/lib/generators/datamapper/model/templates/migration.rb",
|
59
|
-
"jumpstart_templates/i0n_rails_3/lib/generators/datamapper/model/templates/model.rb",
|
60
|
-
"jumpstart_templates/i0n_rails_3/lib/generators/datamapper/observer/observer_generator.rb",
|
61
|
-
"jumpstart_templates/i0n_rails_3/lib/generators/datamapper/observer/templates/observer.rb",
|
62
|
-
"jumpstart_templates/i0n_rails_3/lib/generators/factory_girl.rb",
|
63
|
-
"jumpstart_templates/i0n_rails_3/lib/generators/factory_girl/model/model_generator.rb",
|
64
|
-
"jumpstart_templates/i0n_rails_3/lib/generators/factory_girl/model/templates/fixtures.rb",
|
65
|
-
"jumpstart_templates/i0n_rails_3/lib/generators/formtastic_erb.rb",
|
66
|
-
"jumpstart_templates/i0n_rails_3/lib/generators/formtastic_erb/USAGE",
|
67
|
-
"jumpstart_templates/i0n_rails_3/lib/generators/formtastic_erb/controller/controller_generator.rb",
|
68
|
-
"jumpstart_templates/i0n_rails_3/lib/generators/formtastic_erb/controller/templates/view.html.erb",
|
69
|
-
"jumpstart_templates/i0n_rails_3/lib/generators/formtastic_erb/scaffold/scaffold_generator.rb",
|
70
|
-
"jumpstart_templates/i0n_rails_3/lib/generators/formtastic_erb/scaffold/templates/_form.html.erb",
|
71
|
-
"jumpstart_templates/i0n_rails_3/lib/generators/formtastic_erb/scaffold/templates/edit.html.erb",
|
72
|
-
"jumpstart_templates/i0n_rails_3/lib/generators/formtastic_erb/scaffold/templates/index.html.erb",
|
73
|
-
"jumpstart_templates/i0n_rails_3/lib/generators/formtastic_erb/scaffold/templates/layout.html.erb",
|
74
|
-
"jumpstart_templates/i0n_rails_3/lib/generators/formtastic_erb/scaffold/templates/new.html.erb",
|
75
|
-
"jumpstart_templates/i0n_rails_3/lib/generators/formtastic_erb/scaffold/templates/show.html.erb",
|
76
|
-
"jumpstart_templates/i0n_rails_3/lib/generators/formtastic_haml.rb",
|
77
|
-
"jumpstart_templates/i0n_rails_3/lib/generators/formtastic_haml/USAGE",
|
78
|
-
"jumpstart_templates/i0n_rails_3/lib/generators/formtastic_haml/controller/controller_generator.rb",
|
79
|
-
"jumpstart_templates/i0n_rails_3/lib/generators/formtastic_haml/controller/templates/view.html.haml",
|
80
|
-
"jumpstart_templates/i0n_rails_3/lib/generators/formtastic_haml/scaffold/scaffold_generator.rb",
|
81
|
-
"jumpstart_templates/i0n_rails_3/lib/generators/formtastic_haml/scaffold/templates/_form.haml.erb",
|
82
|
-
"jumpstart_templates/i0n_rails_3/lib/generators/formtastic_haml/scaffold/templates/edit.haml.erb",
|
83
|
-
"jumpstart_templates/i0n_rails_3/lib/generators/formtastic_haml/scaffold/templates/index.haml.erb",
|
84
|
-
"jumpstart_templates/i0n_rails_3/lib/generators/formtastic_haml/scaffold/templates/layout.haml.erb",
|
85
|
-
"jumpstart_templates/i0n_rails_3/lib/generators/formtastic_haml/scaffold/templates/new.haml.erb",
|
86
|
-
"jumpstart_templates/i0n_rails_3/lib/generators/formtastic_haml/scaffold/templates/show.haml.erb",
|
87
|
-
"jumpstart_templates/i0n_rails_3/lib/generators/haml.rb",
|
88
|
-
"jumpstart_templates/i0n_rails_3/lib/generators/haml/controller/controller_generator.rb",
|
89
|
-
"jumpstart_templates/i0n_rails_3/lib/generators/haml/controller/templates/view.html.haml",
|
90
|
-
"jumpstart_templates/i0n_rails_3/lib/generators/haml/scaffold/scaffold_generator.rb",
|
91
|
-
"jumpstart_templates/i0n_rails_3/lib/generators/haml/scaffold/templates/_form.haml.erb",
|
92
|
-
"jumpstart_templates/i0n_rails_3/lib/generators/haml/scaffold/templates/edit.haml.erb",
|
93
|
-
"jumpstart_templates/i0n_rails_3/lib/generators/haml/scaffold/templates/index.haml.erb",
|
94
|
-
"jumpstart_templates/i0n_rails_3/lib/generators/haml/scaffold/templates/layout.haml.erb",
|
95
|
-
"jumpstart_templates/i0n_rails_3/lib/generators/haml/scaffold/templates/new.haml.erb",
|
96
|
-
"jumpstart_templates/i0n_rails_3/lib/generators/haml/scaffold/templates/show.haml.erb",
|
97
|
-
"jumpstart_templates/i0n_rails_3/lib/generators/machinist.rb",
|
98
|
-
"jumpstart_templates/i0n_rails_3/lib/generators/machinist/model/model_generator.rb",
|
99
|
-
"jumpstart_templates/i0n_rails_3/lib/generators/machinist/model/templates/blueprint.rb",
|
100
|
-
"jumpstart_templates/i0n_rails_3/lib/generators/machinist/model/templates/machinist_initializer.rb",
|
101
|
-
"jumpstart_templates/i0n_rails_3/lib/generators/mongomapper.rb",
|
102
|
-
"jumpstart_templates/i0n_rails_3/lib/generators/mongomapper/model/model_generator.rb",
|
103
|
-
"jumpstart_templates/i0n_rails_3/lib/generators/mongomapper/model/templates/model.rb",
|
104
|
-
"jumpstart_templates/i0n_rails_3/lib/generators/mongomapper/observer/observer_generator.rb",
|
105
|
-
"jumpstart_templates/i0n_rails_3/lib/generators/shoulda.rb",
|
106
|
-
"jumpstart_templates/i0n_rails_3/lib/generators/shoulda/controller/controller_generator.rb",
|
107
|
-
"jumpstart_templates/i0n_rails_3/lib/generators/shoulda/controller/templates/controller.rb",
|
108
|
-
"jumpstart_templates/i0n_rails_3/lib/generators/shoulda/model/model_generator.rb",
|
109
|
-
"jumpstart_templates/i0n_rails_3/lib/generators/shoulda/model/templates/model.rb",
|
110
|
-
"jumpstart_templates/i0n_rails_3/lib/tasks/populate.rake",
|
111
|
-
"jumpstart_templates/i0n_rails_3/public/javascripts/init.js",
|
112
|
-
"jumpstart_templates/i0n_rails_3/public/javascripts/jquery-1.4.2.min.js",
|
113
|
-
"jumpstart_templates/i0n_rails_3/public/javascripts/jquery-ui-1.8.custom.min.js",
|
114
|
-
"jumpstart_templates/i0n_rails_3/public/javascripts/rails.js",
|
115
|
-
"jumpstart_templates/i0n_rails_3/public/stylesheets/sass/_setup.sass",
|
116
|
-
"jumpstart_templates/i0n_rails_3/public/stylesheets/sass/global.sass",
|
117
|
-
"jumpstart_templates/i0n_rails_3/public/stylesheets/sass/handheld.sass",
|
118
|
-
"jumpstart_templates/i0n_rails_3/public/stylesheets/sass/ie.sass",
|
119
|
-
"jumpstart_templates/i0n_rails_3/public/stylesheets/sass/print.sass",
|
120
|
-
"jumpstart_templates/i0n_rails_3/public/stylesheets/sass/screen.sass",
|
35
|
+
"jumpstart_templates/.gitignore",
|
121
36
|
"lib/jumpstart.rb",
|
122
37
|
"lib/jumpstart/base.rb",
|
123
38
|
"lib/jumpstart/doc/JumpStart.html",
|
@@ -127,12 +42,15 @@ Gem::Specification.new do |s|
|
|
127
42
|
"lib/jumpstart/doc/index.html",
|
128
43
|
"lib/jumpstart/doc/rdoc.css",
|
129
44
|
"lib/jumpstart/filetools.rb",
|
45
|
+
"lib/jumpstart/stringtools.rb",
|
130
46
|
"source_templates/template_config.yml",
|
47
|
+
"test/destination_dir/.gitignore",
|
131
48
|
"test/fake_nginx_path/local_nginx_1.conf",
|
132
49
|
"test/fake_nginx_path/remote_nginx_1.conf",
|
133
50
|
"test/helper.rb",
|
134
51
|
"test/jumpstart/test_base.rb",
|
135
52
|
"test/jumpstart/test_filetools.rb",
|
53
|
+
"test/jumpstart/test_stringutils.rb",
|
136
54
|
"test/test_jumpstart.rb",
|
137
55
|
"test/test_jumpstart_templates/test_base/_._test_file.txt",
|
138
56
|
"test/test_jumpstart_templates/test_base/_._test_file_.txt",
|
@@ -141,6 +59,7 @@ Gem::Specification.new do |s|
|
|
141
59
|
"test/test_jumpstart_templates/test_base/_10._test_file2.txt",
|
142
60
|
"test/test_jumpstart_templates/test_base/_99999._test_file3.txt",
|
143
61
|
"test/test_jumpstart_templates/test_base/_a._test_file4.txt",
|
62
|
+
"test/test_jumpstart_templates/test_base/current_files_and_dirs_test_file.txt",
|
144
63
|
"test/test_jumpstart_templates/test_base/test_file",
|
145
64
|
"test/test_jumpstart_templates/test_base/test_file5.txt",
|
146
65
|
"test/test_jumpstart_templates/test_base/test_file_.6txt",
|
@@ -160,6 +79,12 @@ Gem::Specification.new do |s|
|
|
160
79
|
"test/test_jumpstart_templates/test_fileutils/remove_files_test_3.txt",
|
161
80
|
"test/test_jumpstart_templates/test_fileutils/remove_lines_test.txt",
|
162
81
|
"test/test_jumpstart_templates/test_fileutils/replace_strings_test.rb",
|
82
|
+
"test/test_jumpstart_templates/test_fileutils/sort_contained_files_and_dirs_test/file_1.txt",
|
83
|
+
"test/test_jumpstart_templates/test_fileutils/sort_contained_files_and_dirs_test/file_2",
|
84
|
+
"test/test_jumpstart_templates/test_fileutils/sort_contained_files_and_dirs_test/folder_1/file_3.txt",
|
85
|
+
"test/test_jumpstart_templates/test_fileutils/sort_contained_files_and_dirs_test/folder_1/folder_2/file_4.txt",
|
86
|
+
"test/test_jumpstart_templates/test_fileutils/sort_contained_files_and_dirs_test/folder_1/folder_2/folder_3/file_5.txt",
|
87
|
+
"test/test_jumpstart_templates/test_fileutils/sort_contained_files_and_dirs_test/folder_1/folder_2/folder_4/file_6.txt",
|
163
88
|
"test/test_jumpstart_templates/test_template_1/_._test_append_file_with_extension.txt",
|
164
89
|
"test/test_jumpstart_templates/test_template_1/_._test_append_file_without_extension",
|
165
90
|
"test/test_jumpstart_templates/test_template_1/_20._test_line_file_without_extension",
|
@@ -199,6 +124,7 @@ Gem::Specification.new do |s|
|
|
199
124
|
"test/helper.rb",
|
200
125
|
"test/jumpstart/test_base.rb",
|
201
126
|
"test/jumpstart/test_filetools.rb",
|
127
|
+
"test/jumpstart/test_stringutils.rb",
|
202
128
|
"test/test_jumpstart.rb",
|
203
129
|
"test/test_jumpstart_templates/test_fileutils/config_capistrano_source.rb",
|
204
130
|
"test/test_jumpstart_templates/test_fileutils/config_capistrano_test.rb",
|
File without changes
|
data/lib/jumpstart.rb
CHANGED
@@ -19,6 +19,20 @@ module JumpStart
|
|
19
19
|
|
20
20
|
require 'jumpstart/base'
|
21
21
|
require 'jumpstart/filetools'
|
22
|
+
require 'jumpstart/stringtools'
|
23
|
+
|
24
|
+
# The path to the jumpstart templates directory.
|
25
|
+
# Set as a module instance variable.
|
26
|
+
@templates_path = YAML.load_file("#{CONFIG_PATH}/jumpstart_setup.yml")[:jumpstart_templates_path]
|
27
|
+
# sets the default template to use if it has not been passed as an argument.
|
28
|
+
# Set as a module instance variable.
|
29
|
+
@default_template_name = YAML.load_file("#{CONFIG_PATH}/jumpstart_setup.yml")[:jumpstart_default_template_name]
|
30
|
+
|
31
|
+
# Get and Set methods for module instance variables.
|
32
|
+
def self.templates_path; @templates_path; end
|
33
|
+
def self.templates_path=(value); @templates_path = value; end
|
34
|
+
def self.default_template_name; @default_template_name; end
|
35
|
+
def self.default_template_name=(value); @default_template_name = value; end
|
22
36
|
|
23
37
|
end
|
24
38
|
|
@@ -29,43 +43,5 @@ module FileUtils
|
|
29
43
|
end
|
30
44
|
|
31
45
|
class String
|
32
|
-
|
33
|
-
def red; colourise(self, "\e[31m"); end
|
34
|
-
def red_bold; colourise(self, "\e[1m\e[31m"); end
|
35
|
-
def green; colourise(self, "\e[32m"); end
|
36
|
-
def green_bold; colourise(self, "\e[1m\e[32m"); end
|
37
|
-
def yellow; colourise(self, "\e[1m\e[33m"); end
|
38
|
-
def blue; colourise(self, "\e[34m"); end
|
39
|
-
def blue_bold; colourise(self, "\e[1m\e[34m"); end
|
40
|
-
def purple; colourise(self, "\e[1m\e[35m"); end
|
41
|
-
|
42
|
-
def colourise(text, colour_code) "#{colour_code}#{text}\e[0m" end
|
43
|
-
|
44
|
-
# Codes for changing output text:
|
45
|
-
|
46
|
-
# 0 Turn off all attributes
|
47
|
-
# 1 Set bright mode
|
48
|
-
# 4 Set underline mode
|
49
|
-
# 5 Set blink mode
|
50
|
-
# 7 Exchange foreground and background colors
|
51
|
-
# 8 Hide text (foreground colour would be the same as background)
|
52
|
-
# 30 Black text
|
53
|
-
# 31 Red text
|
54
|
-
# 32 Green text
|
55
|
-
# 33 Yellow text
|
56
|
-
# 34 Blue text
|
57
|
-
# 35 Magenta text
|
58
|
-
# 36 Cyan text
|
59
|
-
# 37 White text
|
60
|
-
# 39 Default text colour
|
61
|
-
# 40 Black background
|
62
|
-
# 41 Red background
|
63
|
-
# 42 Green background
|
64
|
-
# 43 Yellow background
|
65
|
-
# 44 Blue background
|
66
|
-
# 45 Magenta background
|
67
|
-
# 46 Cyan background
|
68
|
-
# 47 White background
|
69
|
-
# 49 Default background colour
|
70
|
-
|
46
|
+
include JumpStart::StringTools
|
71
47
|
end
|
data/lib/jumpstart/base.rb
CHANGED
@@ -2,54 +2,46 @@ module JumpStart
|
|
2
2
|
class Base
|
3
3
|
|
4
4
|
# Accessor methods to make testing input or output easier.
|
5
|
-
attr_accessor :input
|
6
|
-
attr_reader :output
|
7
|
-
|
8
|
-
# Monkeypatch puts to make testing easier.
|
9
|
-
def puts(*args)
|
10
|
-
@output.puts(*args)
|
11
|
-
end
|
5
|
+
attr_accessor :input, :output
|
12
6
|
|
13
7
|
# Monkeypatch gets to make testing easier.
|
14
8
|
def gets(*args)
|
15
9
|
@input.gets(*args)
|
16
10
|
end
|
17
11
|
|
18
|
-
#
|
12
|
+
# Monkeypatch puts to make testing easier.
|
13
|
+
def puts(*args)
|
14
|
+
@output.puts(*args)
|
15
|
+
end
|
16
|
+
|
17
|
+
# TODO write a method to set :jumpstart_templates_path when the gem is run for the first time.
|
18
|
+
|
19
19
|
def initialize(args)
|
20
20
|
# setup for testing input
|
21
21
|
@input = $stdin
|
22
22
|
# setup for testing output
|
23
23
|
@output = $stdout
|
24
|
-
#
|
25
|
-
@jumpstart_templates_path = YAML.load_file("#{CONFIG_PATH}/jumpstart_setup.yml")[:jumpstart_templates_path]
|
26
|
-
# sets the default template to use if it has not been passed as an argument.
|
27
|
-
@default_template_name = YAML.load_file("#{CONFIG_PATH}/jumpstart_setup.yml")[:default_template_name]
|
28
|
-
# set the name of the project from the first argument passed, or from the constant @default_template_name if no argument passed.
|
24
|
+
# set the name of the project from the first argument passed, or from the module instance variable JumpStart.default_template_name if no argument passed.
|
29
25
|
@project_name = args.shift.dup if args[0] != nil
|
30
26
|
if args[0] != nil
|
31
27
|
@template_name = args.shift.dup
|
32
|
-
elsif
|
33
|
-
@template_name =
|
28
|
+
elsif JumpStart.default_template_name != nil
|
29
|
+
@template_name = JumpStart.default_template_name
|
34
30
|
end
|
35
31
|
# set instance variable @template_path as the directory to read templates from.
|
36
|
-
@template_path = FileUtils.join_paths(
|
37
|
-
# set up instance variable containing an array that will be populated with existing jumpstart templates
|
32
|
+
@template_path = FileUtils.join_paths(JumpStart.templates_path, @template_name)
|
38
33
|
end
|
39
|
-
|
40
|
-
# TODO Refactor startup so that if one argument is passed to the jumpstart command it will assume that it is the projects name.
|
41
|
-
# If a default template has been set, jumpstart should create the project.
|
42
|
-
# If a default template has not been set then the user should be asked to select an existing template. This could be the same menu as displayed for option 1 above.
|
43
|
-
|
34
|
+
|
44
35
|
# TODO Ensure that if jumpstart is launched with two arguments they are parsed as @project_name and @template_name, and the command is launched without any menu display.
|
45
|
-
# TODO Ensure that if jumpstart is launched with one argument it is parsed as @project_name, and if
|
36
|
+
# TODO Ensure that if jumpstart is launched with one argument it is parsed as @project_name, and if JumpStart.default_template_name exists then the command is launched without any menu display.
|
37
|
+
# TODO Write integration tests.
|
46
38
|
# TODO Document methods for RDOC
|
47
39
|
# Finish README etc for github
|
48
40
|
|
49
|
-
#
|
41
|
+
# Look into moving @install_path or refactoring to make setting this variable easier.
|
50
42
|
def set_config_file_options
|
51
|
-
if File.exists?(FileUtils.join_paths(
|
52
|
-
@config_file = YAML.load_file(FileUtils.join_paths(
|
43
|
+
if File.exists?(FileUtils.join_paths(JumpStart.templates_path, @template_name, "/jumpstart_config/", "#{@template_name}.yml"))
|
44
|
+
@config_file = YAML.load_file(FileUtils.join_paths(JumpStart.templates_path, @template_name, "/jumpstart_config/", "#{@template_name}.yml"))
|
53
45
|
@install_command ||= @config_file[:install_command]
|
54
46
|
@install_command_args ||= @config_file[:install_command_args]
|
55
47
|
@replace_strings ||= @config_file[:replace_strings].each {|x| x}
|
@@ -59,7 +51,6 @@ module JumpStart
|
|
59
51
|
end
|
60
52
|
end
|
61
53
|
|
62
|
-
# TODO check_setup needs tests
|
63
54
|
def check_setup
|
64
55
|
set_config_file_options
|
65
56
|
lookup_existing_templates
|
@@ -69,14 +60,16 @@ module JumpStart
|
|
69
60
|
check_install_path
|
70
61
|
end
|
71
62
|
|
72
|
-
#
|
63
|
+
# set up instance variable containing an array that will be populated with existing jumpstart templates
|
73
64
|
def lookup_existing_templates
|
74
65
|
@existing_templates = []
|
75
|
-
template_dirs = Dir.entries(
|
66
|
+
template_dirs = Dir.entries(JumpStart.templates_path) - IGNORE_DIRS
|
76
67
|
template_dirs.each do |x|
|
77
|
-
if
|
78
|
-
if
|
79
|
-
|
68
|
+
if File.directory?(FileUtils.join_paths(JumpStart.templates_path, x))
|
69
|
+
if Dir.entries(FileUtils.join_paths(JumpStart.templates_path, x)).include? "jumpstart_config"
|
70
|
+
if File.exists?(FileUtils.join_paths(JumpStart.templates_path, x, '/jumpstart_config/', "#{x}.yml"))
|
71
|
+
@existing_templates << x
|
72
|
+
end
|
80
73
|
end
|
81
74
|
end
|
82
75
|
end
|
@@ -89,10 +82,8 @@ module JumpStart
|
|
89
82
|
execute_install_command
|
90
83
|
run_scripts_from_yaml(:run_after_install_command)
|
91
84
|
parse_template_dir
|
92
|
-
|
93
|
-
|
94
|
-
# create files from whole templates
|
95
|
-
@whole_templates.each {|x| FileUtils.cp(FileUtils.join_paths(@template_path, x), FileUtils.join_paths(@install_path, @project_name, x)) }
|
85
|
+
create_dirs
|
86
|
+
populate_files_from_whole_templates
|
96
87
|
populate_files_from_append_templates
|
97
88
|
populate_files_from_line_templates
|
98
89
|
remove_unwanted_files
|
@@ -115,7 +106,6 @@ module JumpStart
|
|
115
106
|
|
116
107
|
private
|
117
108
|
|
118
|
-
# TODO check_project_name needs extra tests for the match elsif
|
119
109
|
def check_project_name
|
120
110
|
if @project_name.nil? || @project_name.empty?
|
121
111
|
puts "\n Enter a name for your project.".yellow
|
@@ -127,55 +117,52 @@ module JumpStart
|
|
127
117
|
check_project_name
|
128
118
|
elsif @project_name.match(/^\W/)
|
129
119
|
puts "\n #{@project_name} begins with an invalid character. Please enter a name thats starts with a letter or a number.".red
|
120
|
+
@project_name = gets.chomp.strip
|
130
121
|
check_project_name
|
131
122
|
else
|
132
123
|
@project_name
|
133
124
|
end
|
134
125
|
end
|
135
126
|
|
136
|
-
# TODO check_template_name needs tests.
|
137
127
|
def check_template_name
|
138
128
|
if @template_name.nil? || @template_name.empty?
|
139
129
|
jumpstart_menu
|
140
130
|
end
|
141
131
|
end
|
142
132
|
|
143
|
-
# TODO check_template_path needs tests
|
144
133
|
def check_template_path
|
145
134
|
begin
|
146
135
|
Dir.chdir(@template_path)
|
147
136
|
rescue
|
148
|
-
puts "\nThe directory #{
|
137
|
+
puts "\nThe directory #{@template_path.red} could not be found, or you do not have the correct permissions to access it."
|
149
138
|
exit_normal
|
150
139
|
end
|
151
140
|
end
|
152
|
-
|
153
|
-
# TODO check_install_path
|
141
|
+
|
142
|
+
# TODO test check_install_path setting @install_path = FileUtils.pwd from prompt.
|
154
143
|
def check_install_path
|
155
|
-
@install_path = FileUtils.pwd if @install_path.nil?
|
156
|
-
if
|
157
|
-
puts
|
158
|
-
puts "The directory #{FileUtils.join_paths(@install_path, @project_name).red} already exists.\nAs this is the location you have specified for creating your new project jumpstart will now exit to avoid overwriting anything."
|
144
|
+
@install_path = FileUtils.pwd if @install_path.nil? || @install_path.empty?
|
145
|
+
if File.directory?(FileUtils.join_paths(@install_path, @project_name))
|
146
|
+
puts "\nThe directory #{FileUtils.join_paths(@install_path, @project_name).red} already exists.\nAs this is the location you have specified for creating your new project jumpstart will now exit to avoid overwriting anything."
|
159
147
|
exit_normal
|
160
|
-
end
|
148
|
+
end
|
149
|
+
true
|
161
150
|
end
|
162
151
|
|
163
|
-
# TODO create_template needs tests
|
164
152
|
def create_template
|
165
|
-
if
|
166
|
-
puts "\nThe directory #{FileUtils.join_paths(
|
153
|
+
if File.directory?(FileUtils.join_paths(JumpStart.templates_path, @template_name))
|
154
|
+
puts "\nThe directory #{FileUtils.join_paths(JumpStart.templates_path, @template_name).red} already exists. The template will not be created."
|
167
155
|
exit_normal
|
168
156
|
else
|
169
|
-
FileUtils.mkdir_p(FileUtils.join_paths(
|
157
|
+
FileUtils.mkdir_p(FileUtils.join_paths(JumpStart.templates_path, @template_name, "/jumpstart_config"))
|
170
158
|
yaml = IO.read(FileUtils.join_paths(ROOT_PATH, "/source_templates/template_config.yml"))
|
171
|
-
File.open(FileUtils.join_paths(
|
159
|
+
File.open(FileUtils.join_paths(JumpStart.templates_path, @template_name, "/jumpstart_config", "#{@template_name}.yml"), 'w') do |file|
|
172
160
|
file.puts yaml
|
173
161
|
end
|
174
162
|
puts "The template #{@template_name.green} has been generated.\n"
|
175
163
|
end
|
176
164
|
end
|
177
165
|
|
178
|
-
# TODO jumpstart_menu needs tests
|
179
166
|
def jumpstart_menu
|
180
167
|
puts "\n\n******************************************************************************************************************************************\n\n"
|
181
168
|
puts " JUMPSTART MENU\n".purple
|
@@ -189,7 +176,6 @@ module JumpStart
|
|
189
176
|
jumpstart_menu_options
|
190
177
|
end
|
191
178
|
|
192
|
-
# TODO jumpstart_menu_options needs tests
|
193
179
|
def jumpstart_menu_options
|
194
180
|
lookup_existing_templates
|
195
181
|
input = gets.chomp.strip
|
@@ -210,16 +196,16 @@ module JumpStart
|
|
210
196
|
end
|
211
197
|
end
|
212
198
|
|
213
|
-
# TODO Check/finish methods for creating a new project through the menu
|
214
|
-
# TODO new_project_from_template_menu needs tests
|
215
199
|
def new_project_from_template_menu
|
216
200
|
puts "\n\n******************************************************************************************************************************************\n\n"
|
217
201
|
puts " CREATE A NEW JUMPSTART PROJECT FROM AN EXISTING TEMPLATE\n\n".purple
|
218
202
|
puts " Type a number for the template that you want.\n\n"
|
219
203
|
count = 0
|
220
|
-
@existing_templates.
|
221
|
-
|
222
|
-
|
204
|
+
unless @existing_templates.nil? || @existing_templates.empty?
|
205
|
+
@existing_templates.each do |t|
|
206
|
+
count += 1
|
207
|
+
puts " #{count.to_s.yellow} #{t}"
|
208
|
+
end
|
223
209
|
end
|
224
210
|
puts "\n b".yellow + " Back to main menu."
|
225
211
|
puts "\n x".yellow + " Exit jumpstart\n\n"
|
@@ -227,7 +213,6 @@ module JumpStart
|
|
227
213
|
new_project_from_template_options
|
228
214
|
end
|
229
215
|
|
230
|
-
# TODO new_project_from_template_options needs tests
|
231
216
|
def new_project_from_template_options
|
232
217
|
input = gets.chomp.strip
|
233
218
|
case
|
@@ -246,7 +231,6 @@ module JumpStart
|
|
246
231
|
end
|
247
232
|
end
|
248
233
|
|
249
|
-
# TODO write tests for new_template_menu
|
250
234
|
def new_template_menu
|
251
235
|
puts "\n\n******************************************************************************************************************************************\n\n"
|
252
236
|
puts " CREATE A NEW JUMPSTART TEMPLATE\n".purple
|
@@ -258,28 +242,28 @@ module JumpStart
|
|
258
242
|
new_template_options
|
259
243
|
end
|
260
244
|
|
261
|
-
# TODO
|
245
|
+
# TODO add functionality for duplicating an existing template
|
262
246
|
def new_template_options
|
263
247
|
puts "\n Enter a unique name for the new template.\n".yellow
|
264
248
|
input = gets.chomp.strip
|
265
|
-
|
249
|
+
case
|
250
|
+
when @existing_templates.include?(input)
|
266
251
|
puts " A template of the name ".red + input.red_bold + " already exists.".red
|
267
252
|
new_template_options
|
268
|
-
|
253
|
+
when input.length < 3
|
269
254
|
puts " The template name ".red + input.red_bold + " is too short. Please enter a name that is at least 3 characters long.".red
|
270
255
|
new_template_options
|
271
|
-
|
256
|
+
when input.match(/^\W/)
|
272
257
|
puts " The template name ".red + input.red_bold + " begins with an invalid character. Please enter a name that begins with a letter or a number.".red
|
273
258
|
new_template_options
|
274
259
|
else
|
275
|
-
FileUtils.mkdir_p(FileUtils.join_paths(
|
276
|
-
FileUtils.cp(FileUtils.join_paths(ROOT_PATH, "source_templates/template_config.yml"), FileUtils.join_paths(
|
277
|
-
puts " The template ".green + input.green_bold + " has been created in your default jumpstart template directory ".green +
|
260
|
+
FileUtils.mkdir_p(FileUtils.join_paths(JumpStart.templates_path, input, "jumpstart_config"))
|
261
|
+
FileUtils.cp(FileUtils.join_paths(ROOT_PATH, "source_templates/template_config.yml"), FileUtils.join_paths(JumpStart.templates_path, input, "jumpstart_config", "#{input}.yml"))
|
262
|
+
puts " The template ".green + input.green_bold + " has been created in your default jumpstart template directory ".green + JumpStart.templates_path.green_bold + " ready for editing.".green
|
278
263
|
jumpstart_menu
|
279
264
|
end
|
280
265
|
end
|
281
266
|
|
282
|
-
# TODO Write method(s) for setting the default template
|
283
267
|
def set_default_template_menu
|
284
268
|
puts "\n\n******************************************************************************************************************************************\n\n"
|
285
269
|
puts " JUMPSTART DEFAULT TEMPLATE OPTIONS\n\n".purple
|
@@ -299,9 +283,9 @@ module JumpStart
|
|
299
283
|
input = gets.chomp.strip
|
300
284
|
case
|
301
285
|
when input.to_i <= @existing_templates.count && input.to_i > 0
|
302
|
-
|
286
|
+
JumpStart.default_template_name = @existing_templates[(input.to_i - 1)]
|
303
287
|
dump_global_yaml
|
304
|
-
puts " The default jumpstart template has been set to: #{
|
288
|
+
puts " The default jumpstart template has been set to: #{JumpStart.default_template_name.green}"
|
305
289
|
jumpstart_menu
|
306
290
|
when input == "b"
|
307
291
|
jumpstart_menu
|
@@ -313,7 +297,6 @@ module JumpStart
|
|
313
297
|
end
|
314
298
|
end
|
315
299
|
|
316
|
-
# TODO write tests for templates_dir_menu
|
317
300
|
def templates_dir_menu
|
318
301
|
puts "\n\n******************************************************************************************************************************************\n\n"
|
319
302
|
puts " JUMPSTART TEMPLATES DIRECTORY OPTIONS\n\n".purple
|
@@ -325,14 +308,13 @@ module JumpStart
|
|
325
308
|
templates_dir_options
|
326
309
|
end
|
327
310
|
|
328
|
-
# TODO templates_dir_options needs tests
|
329
311
|
def templates_dir_options
|
330
312
|
input = gets.chomp.strip
|
331
313
|
case
|
332
314
|
when input == "1"
|
333
315
|
set_templates_dir
|
334
316
|
when input == "2"
|
335
|
-
|
317
|
+
reset_templates_dir_to_default_check
|
336
318
|
when input == "b"
|
337
319
|
jumpstart_menu
|
338
320
|
when input == "x"
|
@@ -343,25 +325,24 @@ module JumpStart
|
|
343
325
|
end
|
344
326
|
end
|
345
327
|
|
346
|
-
# TODO set_templates_dir needs tests
|
347
328
|
# Sets the path for templates to be used by JumpStart.
|
348
329
|
def set_templates_dir
|
349
330
|
puts "Please enter the absolute path for the directory that you would like to contain your jumpstart templates."
|
350
331
|
input = gets.chomp.strip
|
351
332
|
root_path = input.sub(/\/\w*\/*$/, '')
|
352
333
|
case
|
353
|
-
when
|
334
|
+
when File.directory?(input)
|
354
335
|
puts "A directory of that name already exists, please choose a directory that does not exist."
|
355
|
-
|
356
|
-
when
|
336
|
+
set_templates_dir
|
337
|
+
when File.directory?(root_path)
|
357
338
|
begin
|
358
339
|
Dir.chdir(root_path)
|
359
340
|
Dir.mkdir(input)
|
360
|
-
files_and_dirs = FileUtils.sort_contained_files_and_dirs(
|
341
|
+
files_and_dirs = FileUtils.sort_contained_files_and_dirs(JumpStart.templates_path)
|
361
342
|
puts "\nCopying existing templates to #{input}"
|
362
343
|
files_and_dirs[:dirs].each {|x| FileUtils.mkdir_p(FileUtils.join_paths(input, x))}
|
363
|
-
files_and_dirs[:files].each {|x| FileUtils.cp(FileUtils.join_paths(
|
364
|
-
|
344
|
+
files_and_dirs[:files].each {|x| FileUtils.cp(FileUtils.join_paths(JumpStart.templates_path, x), FileUtils.join_paths(input, x)) }
|
345
|
+
JumpStart.templates_path = input.to_s
|
365
346
|
dump_global_yaml
|
366
347
|
puts "\nTransfer complete!".green
|
367
348
|
jumpstart_menu
|
@@ -371,45 +352,55 @@ module JumpStart
|
|
371
352
|
end
|
372
353
|
end
|
373
354
|
|
374
|
-
#
|
375
|
-
|
376
|
-
|
377
|
-
if @jumpstart_templates_path == "#{ROOT_PATH}/jumpstart_templates"
|
355
|
+
# Checks to see if the JumpStart template directory should be reset to the default location. (within the gem.)
|
356
|
+
def reset_templates_dir_to_default_check
|
357
|
+
if JumpStart.templates_path == "#{ROOT_PATH}/jumpstart_templates"
|
378
358
|
puts " You do not need to reset the jumpstart templates directory, it is already set to: #{ROOT_PATH}/jumpstart_templates\n\n".red
|
359
|
+
templates_dir_menu
|
379
360
|
else
|
380
361
|
puts " Resetting the jumpstart templates directory to the default: #{ROOT_PATH}/jumpstart_templates\n\n"
|
381
|
-
current_files_and_dirs = FileUtils.sort_contained_files_and_dirs(
|
362
|
+
@current_files_and_dirs = FileUtils.sort_contained_files_and_dirs(JumpStart.templates_path)
|
382
363
|
puts " Moving your jumpstart templates back to the default directory will delete any templates that are currently there. Proceed?\n".yellow
|
383
364
|
puts " Type yes (" + "y".yellow + ") or no (" + "n".yellow + ")\n\n"
|
384
|
-
|
385
|
-
if input == "yes" || input == "y"
|
386
|
-
FileUtils.delete_dir_contents(FileUtils.join_paths(ROOT_PATH, '/jumpstart_templates'))
|
387
|
-
current_files_and_dirs[:dirs].each {|x| FileUtils.mkdir_p(FileUtils.join_paths(ROOT_PATH, '/jumpstart_templates', x))}
|
388
|
-
current_files_and_dirs[:files].each {|x| FileUtils.cp(FileUtils.join_paths(@jumpstart_templates_path, x), FileUtils.join_paths(ROOT_PATH, '/jumpstart_templates', x)) }
|
389
|
-
@jumpstart_templates_path = FileUtils.join_paths(ROOT_PATH, '/jumpstart_templates')
|
390
|
-
dump_global_yaml
|
391
|
-
puts "\n SUCCESS! the jumpstart templates directory has been set to the default: #{ROOT_PATH}/jumpstart_templates".green
|
392
|
-
end
|
365
|
+
reset_templates_dir_to_default_set
|
393
366
|
end
|
394
|
-
templates_dir_menu
|
395
367
|
end
|
396
|
-
|
397
|
-
#
|
368
|
+
|
369
|
+
# Resets the JumpStart template directory to the default location. (within the gem.)
|
370
|
+
def reset_templates_dir_to_default_set
|
371
|
+
input = gets.chomp.strip
|
372
|
+
if input == "yes" || input == "y"
|
373
|
+
FileUtils.delete_dir_contents(FileUtils.join_paths(ROOT_PATH, '/jumpstart_templates'))
|
374
|
+
FileUtils.touch(FileUtils.join_paths(ROOT_PATH, '.gitignore'))
|
375
|
+
@current_files_and_dirs[:dirs].each {|x| FileUtils.mkdir_p(FileUtils.join_paths(ROOT_PATH, '/jumpstart_templates', x))}
|
376
|
+
@current_files_and_dirs[:files].each {|x| FileUtils.cp(FileUtils.join_paths(JumpStart.templates_path, x), FileUtils.join_paths(ROOT_PATH, '/jumpstart_templates', x)) }
|
377
|
+
JumpStart.templates_path = FileUtils.join_paths(ROOT_PATH, '/jumpstart_templates')
|
378
|
+
dump_global_yaml
|
379
|
+
puts "\n SUCCESS! the jumpstart templates directory has been set to the default: #{ROOT_PATH}/jumpstart_templates".green
|
380
|
+
templates_dir_menu
|
381
|
+
elsif input == "no" || input == "n"
|
382
|
+
puts "\n You have chosen not to move the jumpstart templates directory, nothing has been changed."
|
383
|
+
templates_dir_menu
|
384
|
+
else
|
385
|
+
puts "\n The command you entered could not be understood, please enter yes '" + "y".yellow + "' or no '" + "n".yellow + "'"
|
386
|
+
reset_templates_dir_to_default_set
|
387
|
+
end
|
388
|
+
end
|
389
|
+
|
398
390
|
def execute_install_command
|
399
391
|
Dir.chdir(@install_path)
|
400
|
-
unless @install_command.nil?
|
392
|
+
unless @install_command.nil? || @install_command.empty?
|
401
393
|
puts "Executing command: #{@install_command.green} #{@project_name.green} #{@install_command_args.green}"
|
402
394
|
system "#{@install_command} #{@project_name} #{@install_command_args}"
|
403
395
|
end
|
404
396
|
end
|
405
|
-
|
406
|
-
# TODO parse_template_dir needs tests
|
397
|
+
|
407
398
|
def parse_template_dir
|
408
399
|
@dir_list = []
|
409
400
|
file_list = []
|
410
|
-
@whole_templates = []
|
411
401
|
@append_templates = []
|
412
402
|
@line_templates = []
|
403
|
+
@whole_templates = []
|
413
404
|
Find.find(@template_path) do |x|
|
414
405
|
case
|
415
406
|
when File.file?(x) && x !~ /\/jumpstart_config/ then
|
@@ -432,8 +423,17 @@ module JumpStart
|
|
432
423
|
end
|
433
424
|
end
|
434
425
|
end
|
435
|
-
|
436
|
-
#
|
426
|
+
|
427
|
+
# makes folders for the project
|
428
|
+
def create_dirs
|
429
|
+
@dir_list.each {|dir| FileUtils.mkdir_p(FileUtils.join_paths(@install_path, @project_name, dir)) } unless @dir_list.nil?
|
430
|
+
end
|
431
|
+
|
432
|
+
# create files from whole templates
|
433
|
+
def populate_files_from_whole_templates
|
434
|
+
@whole_templates.each {|x| FileUtils.cp(FileUtils.join_paths(@template_path, x), FileUtils.join_paths(@install_path, @project_name, x)) } unless @whole_templates.nil?
|
435
|
+
end
|
436
|
+
|
437
437
|
def populate_files_from_append_templates
|
438
438
|
@append_templates.each do |x|
|
439
439
|
new_name = x.sub(/_([lL]?)\._{1}/, '')
|
@@ -442,7 +442,6 @@ module JumpStart
|
|
442
442
|
end
|
443
443
|
end
|
444
444
|
|
445
|
-
# TODO populate_files_from_line_templates needs tests
|
446
445
|
def populate_files_from_line_templates
|
447
446
|
@line_templates.each do |x|
|
448
447
|
new_name = x.sub(/_(\d+)\._{1}/, '')
|
@@ -450,10 +449,11 @@ module JumpStart
|
|
450
449
|
FileUtils.insert_text_at_line_number(FileUtils.join_paths(@template_path, x), FileUtils.join_paths(@install_path, @project_name, new_name), JumpStart::Base.get_line_number(x))
|
451
450
|
end
|
452
451
|
end
|
453
|
-
|
454
|
-
# TODO check_local_nginx_configuration needs tests
|
452
|
+
|
455
453
|
def check_local_nginx_configuration
|
456
|
-
|
454
|
+
if @nginx_local_template.nil? || @config_file[:local_nginx_conf].nil?
|
455
|
+
puts " \nNginx will not be configured as options have not been set for this."
|
456
|
+
else
|
457
457
|
FileUtils.config_nginx(@nginx_local_template, @config_file[:local_nginx_conf], @project_name)
|
458
458
|
FileUtils.config_hosts("/etc/hosts", @project_name)
|
459
459
|
end
|
@@ -501,10 +501,10 @@ module JumpStart
|
|
501
501
|
end
|
502
502
|
end
|
503
503
|
end
|
504
|
-
|
504
|
+
|
505
505
|
def dump_global_yaml
|
506
506
|
File.open( "#{CONFIG_PATH}/jumpstart_setup.yml", 'w' ) do |out|
|
507
|
-
YAML.dump( {:jumpstart_templates_path =>
|
507
|
+
YAML.dump( {:jumpstart_templates_path => JumpStart.templates_path, :jumpstart_default_template_name => JumpStart.default_template_name}, out )
|
508
508
|
end
|
509
509
|
end
|
510
510
|
|
@@ -514,7 +514,7 @@ module JumpStart
|
|
514
514
|
puts "******************************************************************************************************************************************\n"
|
515
515
|
exit
|
516
516
|
end
|
517
|
-
|
517
|
+
|
518
518
|
def exit_normal
|
519
519
|
puts "\n\n Exiting JumpStart...".purple
|
520
520
|
puts "\n Goodbye!\n\n"
|