1
1
#! /bin/sh
2
2
3
- DATE=` date ' +%Y-%m-%d %H:%M:%S' `
4
3
DEFAULT_VERSION=" 2.4.2"
5
4
DEFAULT_PACKAGE=" rbenv"
6
5
INSTALL_VERSION=$DEFAULT_VERSION
@@ -18,16 +17,34 @@ PATH_BACKUP_RBENV=$PATH_HOME"/__rbenv_"$SNAP_BACKUP
18
17
PATH_BACKUP_RVM=$PATH_HOME " /__rvm_" $SNAP_BACKUP
19
18
WHAT_SHELL=` $SHELL -c ' echo $0' `
20
19
20
+ get_time () {
21
+ DATE=` date ' +%Y-%m-%d %H:%M:%S' `
22
+ }
23
+
21
24
logo () {
22
- echo " --------------------------------------------------------------------------"
23
- echo " __________ _________ _______ .___________ "
24
- echo " \____ /___________ ____ \_ ___ \\ _ \ __| _/\_____ \ LAB "
25
- echo " / // __ \_ __ \/ _ \/ \ \// /_\ \ / __ | _(__ < "
26
- echo " / /\ ___/| | \( <_> ) \___\ \_/ \/ /_/ | / \ "
27
- echo " /_______ \___ >__| \____/ \______ /\_____ /\____ | /______ / "
28
- echo " \/ \/ \/ \/ \/ \/ "
29
- echo " --------------------------------------------------------------------------"
30
- echo " Date / Time: $DATE "
25
+ clear
26
+ echo " \033[22;32m==========================================================================\033[0m"
27
+ echo " \033[22;31m __________ _________ _______ .___________ \033[0m"
28
+ echo " \033[22;31m \____ /___________ ____ \_ ___ \\ _ \ __| _/\_____ \ LAB \033[0m"
29
+ echo " \033[22;31m / // __ \_ __ \/ _ \/ \ \// /_\ \ / __ | _(__ < \033[0m"
30
+ echo " \033[22;31m / /\ ___/| | \( <_> ) \___\ \_/ \/ /_/ | / \ \033[0m"
31
+ echo " \033[22;31m /_______ \___ >__| \____/ \______ /\_____ /\____ | /______ / \033[0m"
32
+ echo " \033[22;31m \/ \/ \/ \/ \/ \/ \033[0m\n"
33
+ }
34
+
35
+ header () {
36
+ logo
37
+ echo " \033[22;32m==========================================================================\033[0m"
38
+ get_time
39
+ echo " \033[22;31m# BEGIN PROCESS..... (Please Wait) \033[0m"
40
+ echo " \033[22;31m# Start at: $DATE \033[0m\n"
41
+ }
42
+
43
+ footer () {
44
+ echo " \033[22;32m==========================================================================\033[0m"
45
+ get_time
46
+ echo " \033[22;31m# Finish at: $DATE \033[0m"
47
+ echo " \033[22;31m# END PROCESS..... \033[0m\n"
31
48
}
32
49
33
50
check_version () {
@@ -44,67 +61,83 @@ check_ruby_package() {
44
61
fi
45
62
}
46
63
47
- reload_env_shell () {
64
+ cleanup () {
65
+ get_time
66
+ echo " \033[22;34m[ $DATE ] ##### Archiving Old Ruby Packages: \033[0m"
67
+
48
68
if [ " $INSTALL_PACKAGE " = " rbenv" ]
49
69
then
50
- exec $SHELL
51
- else
52
- source $RVM_ROOT /scripts/rvm
70
+ if [ -d " $RBENV_ROOT " ]; then
71
+ mv $RBENV_ROOT $PATH_BACKUP_RBENV
72
+ fi
73
+ else
74
+ if [ -d " $RVM_ROOT " ]; then
75
+ sudo mv $RVM_ROOT $PATH_BACKUP_RVM
76
+ fi
53
77
fi
78
+ sudo rm -f /etc/profile.d/rvm.sh
79
+
80
+ echo " "
81
+ get_time
82
+ echo " \033[22;32m[ $DATE ] :: [ ✔ ] \033[22;32m Old Ruby Packages Archived... \033[0m\n"
54
83
}
55
84
56
- check_env () {
57
- reload_env_shell
58
- echo " --------------------------------------------------------------------------"
59
- echo " ## Load Environment: "
60
-
85
+ load_env () {
86
+ get_time
87
+ echo " \033[22;34m[ $DATE ] ##### Load Environment: \033[0m"
88
+
89
+ # ## Running Ruby Environment ###
90
+ /bin/sh ./ruby.sh
91
+
61
92
if [ " $INSTALL_PACKAGE " = " rbenv" ]
62
93
then
63
94
if [ " $WHAT_SHELL " = " ` which zsh` " ] || [ " $WHAT_SHELL " = " zsh" ]
64
95
then
65
- echo " $PATH_HOME /.zshrc"
96
+ echo " \033[22;32m[ $DATE ] $PATH_HOME /.zshrc \033[0m\n "
66
97
else
67
98
if [ " $WHAT_SHELL " = " ` which bash` " ] || [ " $WHAT_SHELL " = " bash" ]
68
99
then
69
- echo " $PATH_HOME /.bashrc"
100
+ echo " \033[22;32m[ $DATE ] $PATH_HOME /.bashrc \033[0m\n "
70
101
else
71
- echo " $PATH_HOME /.bashrc"
102
+ echo " \033[22;32m[ $DATE ] $PATH_HOME /.bashrc \033[0m\n "
72
103
fi
73
104
fi
74
105
else
75
- echo " $RVM_ROOT /scripts/rvm"
106
+ echo " \033[22;32m[ $DATE ] $RVM_ROOT /scripts/rvm \033[0m\n "
76
107
fi
77
-
78
- echo " "
108
+
109
+ get_time
110
+ echo " \033[22;32m[ $DATE ] :: [ ✔ ] \033[22;32m Environment Loaded... \033[0m\n"
79
111
}
80
112
81
- cleanup () {
113
+ reload_shell () {
82
114
if [ " $INSTALL_PACKAGE " = " rbenv" ]
83
115
then
84
- if [ -d " $RBENV_ROOT " ]; then
85
- mv $RBENV_ROOT $PATH_BACKUP_RBENV
86
- fi
87
- else
88
- if [ -d " $RVM_ROOT " ]; then
89
- sudo mv $RVM_ROOT $PATH_BACKUP_RVM
90
- fi
116
+ exec $SHELL
117
+ else
118
+ source $RVM_ROOT /scripts/rvm
91
119
fi
92
- sudo rm -f /etc/profile.d/rvm.sh
93
120
}
94
121
95
122
install_ruby () {
96
- echo " --------------------------------------------------------------------------"
97
- echo " ## Install Ruby Version: "
98
- echo " $INSTALL_VERSION "
99
- echo " ## Using Ruby Package: "
100
- echo " $INSTALL_PACKAGE "
101
- echo " "
123
+ get_time
124
+ echo " \033[22;34m[ $DATE ] ##### Install Ruby Version: \033[0m"
125
+ echo " \033[22;32m[ $DATE ] $INSTALL_VERSION \033[0m\n"
126
+
127
+ get_time
128
+ echo " \033[22;34m[ $DATE ] ##### Using Ruby Package: \033[0m"
129
+ echo " \033[22;32m[ $DATE ] $INSTALL_PACKAGE \033[0m\n"
130
+
102
131
cleanup
132
+
103
133
if [ " $INSTALL_PACKAGE " = " rbenv" ]
104
134
then
105
135
# -----------------------------------------------------------------------------
106
136
# Get repo rbenv
107
137
# -----------------------------------------------------------------------------
138
+ get_time
139
+ echo " \033[22;34m[ $DATE ] ##### Download RBENV Repository: \033[0m"
140
+
108
141
git clone https://github.com/rbenv/rbenv.git $RBENV_ROOT \
109
142
&& git clone https://github.com/rbenv/ruby-build.git $RBENV_ROOT /plugins/ruby-build
110
143
@@ -114,10 +147,17 @@ install_ruby() {
114
147
$RBENV_ROOT /bin/rbenv install $INSTALL_VERSION \
115
148
&& $RBENV_ROOT /bin/rbenv global $INSTALL_VERSION \
116
149
&& $RBENV_ROOT /bin/rbenv rehash
150
+
151
+ echo " "
152
+ get_time
153
+ echo " \033[22;32m[ $DATE ] :: [ ✔ ] \033[22;32m Ruby Installed... \033[0m\n"
117
154
else
118
155
# -----------------------------------------------------------------------------
119
156
# Get repo rvm
120
157
# -----------------------------------------------------------------------------
158
+ get_time
159
+ echo " \033[22;34m[ $DATE ] ##### Download RVM Repository: \033[0m"
160
+
121
161
curl -sSL https://rvm.io/mpapis.asc | gpg2 --import \
122
162
&& curl -sSL https://raw.githubusercontent.com/wayneeseguin/rvm/master/binscripts/rvm-installer | sudo bash -s stable \
123
163
&& sudo usermod -a -G rvm root \
@@ -131,41 +171,52 @@ install_ruby() {
131
171
# -----------------------------------------------------------------------------
132
172
$RVM_ROOT /bin/rvm install $INSTALL_VERSION \
133
173
&& $RVM_ROOT /bin/rvm use $INSTALL_VERSION --default
174
+
175
+ echo " "
176
+ get_time
177
+ echo " \033[22;32m[ $DATE ] :: [ ✔ ] \033[22;32m Ruby Installed... \033[0m\n"
134
178
fi
135
179
}
136
180
137
181
validate_installation () {
138
- echo " -------------------------------------------------------------------------- "
139
- echo " ## Ruby Version: "
182
+ get_time
183
+ echo " \033[22;34m[ $DATE ] ##### Ruby Version: \033[0m "
140
184
RUBY=` which ruby`
141
185
RUBY_V=` $RUBY -v`
142
- echo " $RUBY_V "
143
- echo " "
144
- echo " ## Path Ruby: "
145
- echo " $RUBY "
146
- echo " "
147
- echo " ## Path Gem: "
186
+ echo " \033[22;32m[ $DATE ] $RUBY_V \033[0m\n"
187
+
188
+ get_time
189
+ echo " \033[22;34m[ $DATE ] ##### Path Ruby: \033[0m"
190
+ echo " \033[22;32m[ $DATE ] $RUBY \033[0m\n"
191
+
192
+ get_time
193
+ echo " \033[22;34m[ $DATE ] ##### Path Gem: \033[0m"
148
194
GEM=` which gem`
149
- echo " $GEM "
150
- echo " "
195
+ echo " \033[22;32m[ $DATE ] $GEM \033[0m\n"
151
196
}
152
197
153
198
install_bundle () {
154
- echo " -------------------------------------------------------------------------- "
155
- echo " ## Install Bundle: "
156
- echo " $GEM install bundle"
157
- echo " "
199
+ get_time
200
+ echo " \033[22;34m[ $DATE ] ##### Install Bundle: \033[0m "
201
+ echo " \033[22;32m[ $DATE ] $GEM install bundle \033[0m\n "
202
+
158
203
$GEM install bundle
204
+
205
+ echo " "
206
+ get_time
207
+ echo " \033[22;32m[ $DATE ] :: [ ✔ ] \033[22;32m Bundle Installed... \033[0m\n"
159
208
}
160
209
161
210
main () {
162
- logo
211
+ header
163
212
check_version
164
213
check_ruby_package
165
214
install_ruby
166
- check_env
215
+ load_env
167
216
validate_installation
168
217
install_bundle
218
+ footer
219
+ reload_shell
169
220
}
170
221
171
222
# ## START HERE ###
0 commit comments