software_smithy 1.1 → 1.6
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/bin/smithy +140 -33
- data/etc/completion/smithy-completion.bash +106 -7
- data/etc/completion/zsh/_smithy +121 -27
- data/etc/templates/formula.rb.erb +11 -0
- data/etc/templates/web/machine_version_table.html.erb +0 -7
- data/etc/templates/web/version_table.html.erb +2 -2
- data/lib/smithy/config.rb +70 -13
- data/lib/smithy/description.rb +4 -4
- data/lib/smithy/download_cache.rb +120 -0
- data/lib/smithy/file_operations.rb +13 -6
- data/lib/smithy/formula.rb +203 -0
- data/lib/smithy/formula_command.rb +198 -0
- data/lib/smithy/helpers.rb +83 -37
- data/lib/smithy/module_file.rb +21 -10
- data/lib/smithy/package.rb +111 -86
- data/lib/smithy.rb +3 -0
- data/lib/smithy_version.rb +1 -1
- data/man/man1/smithy.1 +240 -53
- data/smithy.rdoc +107 -7
- metadata +84 -39
- data/README.rdoc +0 -114
- data/etc/smithyrc +0 -36
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: software_smithy
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: '1.
|
4
|
+
version: '1.6'
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,11 +9,11 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date:
|
12
|
+
date: 2013-08-23 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: awesome_print
|
16
|
-
requirement: &
|
16
|
+
requirement: &6177800 !ruby/object:Gem::Requirement
|
17
17
|
none: false
|
18
18
|
requirements:
|
19
19
|
- - ! '>='
|
@@ -21,10 +21,32 @@ dependencies:
|
|
21
21
|
version: '0'
|
22
22
|
type: :development
|
23
23
|
prerelease: false
|
24
|
-
version_requirements: *
|
24
|
+
version_requirements: *6177800
|
25
|
+
- !ruby/object:Gem::Dependency
|
26
|
+
name: interactive_editor
|
27
|
+
requirement: &6187700 !ruby/object:Gem::Requirement
|
28
|
+
none: false
|
29
|
+
requirements:
|
30
|
+
- - ! '>='
|
31
|
+
- !ruby/object:Gem::Version
|
32
|
+
version: '0'
|
33
|
+
type: :development
|
34
|
+
prerelease: false
|
35
|
+
version_requirements: *6187700
|
36
|
+
- !ruby/object:Gem::Dependency
|
37
|
+
name: cucumber
|
38
|
+
requirement: &6183940 !ruby/object:Gem::Requirement
|
39
|
+
none: false
|
40
|
+
requirements:
|
41
|
+
- - ! '>='
|
42
|
+
- !ruby/object:Gem::Version
|
43
|
+
version: '0'
|
44
|
+
type: :development
|
45
|
+
prerelease: false
|
46
|
+
version_requirements: *6183940
|
25
47
|
- !ruby/object:Gem::Dependency
|
26
48
|
name: debugger
|
27
|
-
requirement: &
|
49
|
+
requirement: &6194240 !ruby/object:Gem::Requirement
|
28
50
|
none: false
|
29
51
|
requirements:
|
30
52
|
- - ! '>='
|
@@ -32,10 +54,10 @@ dependencies:
|
|
32
54
|
version: '0'
|
33
55
|
type: :development
|
34
56
|
prerelease: false
|
35
|
-
version_requirements: *
|
57
|
+
version_requirements: *6194240
|
36
58
|
- !ruby/object:Gem::Dependency
|
37
59
|
name: rake
|
38
|
-
requirement: &
|
60
|
+
requirement: &6205540 !ruby/object:Gem::Requirement
|
39
61
|
none: false
|
40
62
|
requirements:
|
41
63
|
- - ! '>='
|
@@ -43,10 +65,10 @@ dependencies:
|
|
43
65
|
version: '0'
|
44
66
|
type: :development
|
45
67
|
prerelease: false
|
46
|
-
version_requirements: *
|
68
|
+
version_requirements: *6205540
|
47
69
|
- !ruby/object:Gem::Dependency
|
48
70
|
name: rdoc
|
49
|
-
requirement: &
|
71
|
+
requirement: &6214160 !ruby/object:Gem::Requirement
|
50
72
|
none: false
|
51
73
|
requirements:
|
52
74
|
- - ! '>='
|
@@ -54,10 +76,10 @@ dependencies:
|
|
54
76
|
version: '0'
|
55
77
|
type: :development
|
56
78
|
prerelease: false
|
57
|
-
version_requirements: *
|
79
|
+
version_requirements: *6214160
|
58
80
|
- !ruby/object:Gem::Dependency
|
59
81
|
name: aruba
|
60
|
-
requirement: &
|
82
|
+
requirement: &6224380 !ruby/object:Gem::Requirement
|
61
83
|
none: false
|
62
84
|
requirements:
|
63
85
|
- - ! '>='
|
@@ -65,10 +87,10 @@ dependencies:
|
|
65
87
|
version: '0'
|
66
88
|
type: :development
|
67
89
|
prerelease: false
|
68
|
-
version_requirements: *
|
90
|
+
version_requirements: *6224380
|
69
91
|
- !ruby/object:Gem::Dependency
|
70
92
|
name: ronn
|
71
|
-
requirement: &
|
93
|
+
requirement: &6223040 !ruby/object:Gem::Requirement
|
72
94
|
none: false
|
73
95
|
requirements:
|
74
96
|
- - ! '>='
|
@@ -76,32 +98,54 @@ dependencies:
|
|
76
98
|
version: '0'
|
77
99
|
type: :development
|
78
100
|
prerelease: false
|
79
|
-
version_requirements: *
|
101
|
+
version_requirements: *6223040
|
80
102
|
- !ruby/object:Gem::Dependency
|
81
|
-
name:
|
82
|
-
requirement: &
|
103
|
+
name: rspec
|
104
|
+
requirement: &6222120 !ruby/object:Gem::Requirement
|
105
|
+
none: false
|
106
|
+
requirements:
|
107
|
+
- - ! '>='
|
108
|
+
- !ruby/object:Gem::Version
|
109
|
+
version: '0'
|
110
|
+
type: :development
|
111
|
+
prerelease: false
|
112
|
+
version_requirements: *6222120
|
113
|
+
- !ruby/object:Gem::Dependency
|
114
|
+
name: fuubar
|
115
|
+
requirement: &6220900 !ruby/object:Gem::Requirement
|
83
116
|
none: false
|
84
117
|
requirements:
|
85
118
|
- - ! '>='
|
86
119
|
- !ruby/object:Gem::Version
|
87
|
-
version:
|
120
|
+
version: '0'
|
121
|
+
type: :development
|
122
|
+
prerelease: false
|
123
|
+
version_requirements: *6220900
|
124
|
+
- !ruby/object:Gem::Dependency
|
125
|
+
name: gli
|
126
|
+
requirement: &6217560 !ruby/object:Gem::Requirement
|
127
|
+
none: false
|
128
|
+
requirements:
|
129
|
+
- - =
|
130
|
+
- !ruby/object:Gem::Version
|
131
|
+
version: 2.7.0
|
88
132
|
type: :runtime
|
89
133
|
prerelease: false
|
90
|
-
version_requirements: *
|
134
|
+
version_requirements: *6217560
|
91
135
|
- !ruby/object:Gem::Dependency
|
92
136
|
name: kramdown
|
93
|
-
requirement: &
|
137
|
+
requirement: &6230480 !ruby/object:Gem::Requirement
|
94
138
|
none: false
|
95
139
|
requirements:
|
96
140
|
- - ! '>='
|
97
141
|
- !ruby/object:Gem::Version
|
98
|
-
version:
|
142
|
+
version: 1.1.0
|
99
143
|
type: :runtime
|
100
144
|
prerelease: false
|
101
|
-
version_requirements: *
|
145
|
+
version_requirements: *6230480
|
102
146
|
- !ruby/object:Gem::Dependency
|
103
147
|
name: open4
|
104
|
-
requirement: &
|
148
|
+
requirement: &6229240 !ruby/object:Gem::Requirement
|
105
149
|
none: false
|
106
150
|
requirements:
|
107
151
|
- - ! '>='
|
@@ -109,10 +153,10 @@ dependencies:
|
|
109
153
|
version: '0'
|
110
154
|
type: :runtime
|
111
155
|
prerelease: false
|
112
|
-
version_requirements: *
|
156
|
+
version_requirements: *6229240
|
113
157
|
- !ruby/object:Gem::Dependency
|
114
158
|
name: rainbow
|
115
|
-
requirement: &
|
159
|
+
requirement: &6226140 !ruby/object:Gem::Requirement
|
116
160
|
none: false
|
117
161
|
requirements:
|
118
162
|
- - ! '>='
|
@@ -120,21 +164,21 @@ dependencies:
|
|
120
164
|
version: '0'
|
121
165
|
type: :runtime
|
122
166
|
prerelease: false
|
123
|
-
version_requirements: *
|
167
|
+
version_requirements: *6226140
|
124
168
|
- !ruby/object:Gem::Dependency
|
125
169
|
name: activesupport
|
126
|
-
requirement: &
|
170
|
+
requirement: &6239320 !ruby/object:Gem::Requirement
|
127
171
|
none: false
|
128
172
|
requirements:
|
129
|
-
- -
|
173
|
+
- - =
|
130
174
|
- !ruby/object:Gem::Version
|
131
|
-
version:
|
175
|
+
version: 3.2.14
|
132
176
|
type: :runtime
|
133
177
|
prerelease: false
|
134
|
-
version_requirements: *
|
178
|
+
version_requirements: *6239320
|
135
179
|
- !ruby/object:Gem::Dependency
|
136
180
|
name: terminal-table
|
137
|
-
requirement: &
|
181
|
+
requirement: &6235820 !ruby/object:Gem::Requirement
|
138
182
|
none: false
|
139
183
|
requirements:
|
140
184
|
- - ! '>='
|
@@ -142,20 +186,19 @@ dependencies:
|
|
142
186
|
version: 1.4.5
|
143
187
|
type: :runtime
|
144
188
|
prerelease: false
|
145
|
-
version_requirements: *
|
189
|
+
version_requirements: *6235820
|
146
190
|
description:
|
147
191
|
email: anthony.digirolamo@gmail.com
|
148
192
|
executables:
|
149
193
|
- smithy
|
150
194
|
extensions: []
|
151
195
|
extra_rdoc_files:
|
152
|
-
- README.rdoc
|
153
196
|
- smithy.rdoc
|
154
197
|
files:
|
155
198
|
- bin/smithy
|
156
199
|
- etc/completion/smithy-completion.bash
|
157
200
|
- etc/completion/zsh/_smithy
|
158
|
-
- etc/
|
201
|
+
- etc/templates/formula.rb.erb
|
159
202
|
- etc/templates/modulefile.erb
|
160
203
|
- etc/templates/build/.owners
|
161
204
|
- etc/templates/build/build-notes
|
@@ -181,14 +224,16 @@ files:
|
|
181
224
|
- lib/smithy.rb
|
182
225
|
- lib/smithy/config.rb
|
183
226
|
- lib/smithy/description.rb
|
227
|
+
- lib/smithy/download_cache.rb
|
228
|
+
- lib/smithy/file_operations.rb
|
184
229
|
- lib/smithy/format.rb
|
230
|
+
- lib/smithy/formula.rb
|
231
|
+
- lib/smithy/formula_command.rb
|
185
232
|
- lib/smithy/helpers.rb
|
186
|
-
- lib/smithy/package.rb
|
187
233
|
- lib/smithy/module_file.rb
|
188
|
-
- lib/smithy/
|
234
|
+
- lib/smithy/package.rb
|
189
235
|
- lib/smithy_version.rb
|
190
236
|
- man/man1/smithy.1
|
191
|
-
- README.rdoc
|
192
237
|
- smithy.rdoc
|
193
238
|
homepage: https://github.com/AnthonyDiGirolamo/smithy
|
194
239
|
licenses: []
|
@@ -197,7 +242,7 @@ rdoc_options:
|
|
197
242
|
- --title
|
198
243
|
- smithy
|
199
244
|
- --main
|
200
|
-
-
|
245
|
+
- smithy.rdoc
|
201
246
|
- -ri
|
202
247
|
require_paths:
|
203
248
|
- lib
|
@@ -210,7 +255,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
210
255
|
version: '0'
|
211
256
|
segments:
|
212
257
|
- 0
|
213
|
-
hash:
|
258
|
+
hash: 2070636643313497117
|
214
259
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
215
260
|
none: false
|
216
261
|
requirements:
|
@@ -219,7 +264,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
219
264
|
version: '0'
|
220
265
|
segments:
|
221
266
|
- 0
|
222
|
-
hash:
|
267
|
+
hash: 2070636643313497117
|
223
268
|
requirements: []
|
224
269
|
rubyforge_project:
|
225
270
|
rubygems_version: 1.8.11
|
data/README.rdoc
DELETED
@@ -1,114 +0,0 @@
|
|
1
|
-
Smithy is a tool that aims to replicate and improve upon functionality of
|
2
|
-
{SWTools}[http://www.olcf.ornl.gov/center-projects/swtools/].
|
3
|
-
|
4
|
-
Smithy's goals are:
|
5
|
-
|
6
|
-
* Provide a simplified and intuitive command line interface for installing software.
|
7
|
-
* Reduce the number of steps necessary for each function
|
8
|
-
|
9
|
-
= Installation
|
10
|
-
|
11
|
-
== Installing ruby
|
12
|
-
|
13
|
-
Smithy requires ruby 1.9.2 or later. Most distrubutions only ship version 1.8.7
|
14
|
-
and you may need build your own copy. The simplest way is using the excellent
|
15
|
-
{ruby-build}[https://github.com/sstephenson/ruby-build] script. As an example,
|
16
|
-
this will install ruby with a prefix of <tt>/sw/xk6/ruby/1.9.3-p286/sles11.1_gnu4.3.4</tt>
|
17
|
-
|
18
|
-
curl -L https://github.com/sstephenson/ruby-build/archive/master.zip -o ruby-build.zip
|
19
|
-
unzip ruby-build.zip
|
20
|
-
cd ruby-build-master
|
21
|
-
./bin/ruby-build -h
|
22
|
-
./bin/ruby-build --definitions
|
23
|
-
./bin/ruby-build 1.9.3-p286 /sw/xk6/ruby/1.9.3-p286/sles11.1_gnu4.3.4
|
24
|
-
|
25
|
-
Many sites use {Environment Modules}[http://modules.sourceforge.net/] to allow
|
26
|
-
users to load and unload software into their environment. Here is sample
|
27
|
-
modulefile for ruby installed in the previous example.
|
28
|
-
|
29
|
-
#%Module1.0
|
30
|
-
proc ModulesHelp { } {
|
31
|
-
puts stderr "Ruby 1.9.3 patch 286"
|
32
|
-
puts stderr "The gem command will install gems to the ~/.gem directory."
|
33
|
-
}
|
34
|
-
module-whatis "Ruby 1.9.3-p286"
|
35
|
-
|
36
|
-
set PREFIX /sw/xk6/ruby/1.9.3-p286/sles11.1_gnu4.3.4
|
37
|
-
prepend-path PATH $PREFIX/bin
|
38
|
-
prepend-path LD_LIBRARY_PATH $PREFIX/lib
|
39
|
-
prepend-path MANPATH $PREFIX/share/man
|
40
|
-
setenv GEM_HOME $env(HOME)/.gem/ruby/1.9.1
|
41
|
-
setenv GEM_PATH $env(HOME)/.gem/ruby/1.9.1:$PREFIX/lib/ruby/gems/1.9.1
|
42
|
-
prepend-path PATH $env(HOME)/.gem/ruby/1.9.1/bin:$PREFIX/lib/ruby/gems/1.9.1/bin
|
43
|
-
|
44
|
-
This file should be saved to <tt>$MODULEPATH/ruby/1.9.3</tt>
|
45
|
-
|
46
|
-
== Installing smithy
|
47
|
-
|
48
|
-
=== Choosting an install location
|
49
|
-
|
50
|
-
There are two ways to install smithy. The simplest is by simply installing the
|
51
|
-
<tt>software_smithy</tt> gem. This will install smithy and it's required gems in
|
52
|
-
your home directory:
|
53
|
-
|
54
|
-
gem install software_smithy
|
55
|
-
|
56
|
-
If you are installing in production for all users you will want to install
|
57
|
-
smithy somewhere everyone can access. There are two places you might want to do
|
58
|
-
this:
|
59
|
-
|
60
|
-
==== Ruby's default GEM_PATH
|
61
|
-
|
62
|
-
If you installed manually using the examples above, this will be something like
|
63
|
-
<tt>PREFIX/lib/ruby/gems/1.9.1</tt> This will give access to smithy whenever
|
64
|
-
ruby is loaded into a users environment using the modulefile above. To install
|
65
|
-
to ruby's default GEM_PATH (following the above example):
|
66
|
-
|
67
|
-
export GEM_HOME=/sw/xk6/ruby/1.9.3-p286/sles11.1_gnu4.3.4/lib/ruby/gems/1.9.1
|
68
|
-
gem install software_smithy --no-rdoc --no-ri
|
69
|
-
|
70
|
-
==== A different location of your choosing.
|
71
|
-
|
72
|
-
This is useful if you want a single smithy install location for more than one
|
73
|
-
install of ruby (typically on separate machines). This method is a bit more
|
74
|
-
complicated and requires users to load smithy into their environment manually in
|
75
|
-
addition to ruby.
|
76
|
-
|
77
|
-
Assuming you use environment modules you can install smithy to a separate
|
78
|
-
directory e.g. <tt>/sw/tools/smithy</tt> with the install_smithy script. This
|
79
|
-
will setup a folder containing the smithy gem, a modulefile and a script that
|
80
|
-
sets up shell completion. Users can load smithy into their environment by
|
81
|
-
running:
|
82
|
-
|
83
|
-
source /sw/tools/smithy/environment.sh
|
84
|
-
|
85
|
-
=== Loading smithy into your environment
|
86
|
-
|
87
|
-
Smithy depends on a config file to define it's behavior. For an example see
|
88
|
-
{etc/smithyrc}[https://github.com/AnthonyDiGirolamo/smithy/blob/master/etc/smithyrc]
|
89
|
-
This can be set via the <tt>$SMITHY_CONFIG</tt> environment variable.
|
90
|
-
|
91
|
-
You may wish to set this using a modulefile or a shell script. Examples are
|
92
|
-
provided in
|
93
|
-
{modulefiles/smithy/1.0}[https://github.com/AnthonyDiGirolamo/smithy/blob/master/modulefiles/smithy/1.0]
|
94
|
-
and
|
95
|
-
{environment.sh}[https://github.com/AnthonyDiGirolamo/smithy/blob/master/environment.sh]
|
96
|
-
|
97
|
-
= License
|
98
|
-
|
99
|
-
Smithy is based on the ideas created in SWTools and uses a BSD license. See
|
100
|
-
LICENSE for the exact text.
|
101
|
-
|
102
|
-
= Contributing and Support
|
103
|
-
|
104
|
-
The smithy {github repo}[https://github.com/AnthonyDiGirolamo/smithy] contains
|
105
|
-
all development files. Please fork and send me a pull request with any additions
|
106
|
-
or changes.
|
107
|
-
|
108
|
-
If you encounter any issues please {open an
|
109
|
-
issue}[https://github.com/AnthonyDiGirolamo/smithy/issues] on github. Or send me
|
110
|
-
an email.
|
111
|
-
|
112
|
-
= smithy command line usage
|
113
|
-
|
114
|
-
:include:smithy.rdoc
|
data/etc/smithyrc
DELETED
@@ -1,36 +0,0 @@
|
|
1
|
-
---
|
2
|
-
software-root: /sw
|
3
|
-
file-group-name: ccsstaff
|
4
|
-
hostname-architectures:
|
5
|
-
arthur-login: xk6
|
6
|
-
chester-login: xk6
|
7
|
-
eugene: bgp
|
8
|
-
everest: analysis-x64
|
9
|
-
ewok: sith
|
10
|
-
fatman: scibox
|
11
|
-
frost: frost
|
12
|
-
jaguar-ext: xt5
|
13
|
-
jaguar: xk6
|
14
|
-
jaguarpf-login: xk6
|
15
|
-
jaguarpf-ext: xk6
|
16
|
-
lens-login: analysis-x64
|
17
|
-
lens: analysis-x64
|
18
|
-
rizzo: xt5
|
19
|
-
sith-login: sith
|
20
|
-
sith: sith
|
21
|
-
smoky-login: smoky
|
22
|
-
smoky: smoky
|
23
|
-
smokylogin: smoky
|
24
|
-
yona-login: yona
|
25
|
-
yona: yona
|
26
|
-
programming-environment-prefix:
|
27
|
-
default: PrgEnv-
|
28
|
-
smoky: PE-
|
29
|
-
web-root: /sw/tools/www
|
30
|
-
descriptions-root: /sw/descriptions
|
31
|
-
web-architecture-names:
|
32
|
-
xk6: jaguar
|
33
|
-
analysis-x64: lens
|
34
|
-
smoky: smoky
|
35
|
-
|
36
|
-
|