fpm-scriptable 1.0 → 1.0.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.
- checksums.yaml +4 -4
- data/bin/fpm-script +4 -21
- data/lib/fpm/scriptable.rb +8 -14
- data/lib/fpm/scriptable/app.rb +8 -14
- data/lib/fpm/scriptable/config.rb +0 -3
- data/lib/fpm/scriptable/log.rb +11 -12
- data/lib/fpm/scriptable/script.rb +8 -8
- data/lib/fpm/scriptable/util.rb +12 -12
- data/lib/fpm/scriptable/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 7dda735651b1e39ddc8914ed1b8d81df040df757
|
4
|
+
data.tar.gz: bb76ab8965379c1435ef8c603efc3f5cc560cf73
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: b3273b44adbb74ef99e11eaa7c4564908d46ae4e1433e70896c973228c338630ab6a966147e02c67f6c8598b27d203895f21a4b82bfa90bb86088d8f6b3309f7
|
7
|
+
data.tar.gz: 4723d15dc9e4bbb5d20c7ccb7a5d655ac67eafa9c6a18d0738501d9d34b9719d596d899dfbc4eea1395c859a47e3cc80f12dca1e088c621f5d5341d6f7768d61
|
data/bin/fpm-script
CHANGED
@@ -13,25 +13,8 @@
|
|
13
13
|
# See the License for the specific language governing permissions and
|
14
14
|
# limitations under the License.
|
15
15
|
|
16
|
-
|
17
|
-
|
18
|
-
|
16
|
+
require 'rubygems'
|
17
|
+
$: << File.join(File.dirname(__FILE__), "..", "lib")
|
18
|
+
require 'fpm/scriptable'
|
19
19
|
|
20
|
-
|
21
|
-
if bin_path && bin_path != ""
|
22
|
-
bin_dir = File.dirname(bin_path)
|
23
|
-
end
|
24
|
-
|
25
|
-
if bin_dir && bin_dir != ''
|
26
|
-
app_dir = "#{bin_dir}/.."
|
27
|
-
$:.push "#{app_dir}/lib"
|
28
|
-
else
|
29
|
-
puts 'Error: unable to locate bin directory'
|
30
|
-
exit 1
|
31
|
-
end
|
32
|
-
|
33
|
-
Dir.chdir(app_dir) do
|
34
|
-
require 'fpm/scriptable'
|
35
|
-
end
|
36
|
-
FPM::Scriptable::App.run(app_dir)
|
37
|
-
exit 0
|
20
|
+
exit(FPM::Scriptable::App.run || 0)
|
data/lib/fpm/scriptable.rb
CHANGED
@@ -19,18 +19,12 @@ require 'fpm'
|
|
19
19
|
require 'curb'
|
20
20
|
|
21
21
|
require 'fpm/scriptable/version'
|
22
|
+
require 'fpm/scriptable/app'
|
23
|
+
require 'fpm/scriptable/config'
|
24
|
+
require 'fpm/scriptable/log'
|
25
|
+
require 'fpm/scriptable/util'
|
26
|
+
require 'fpm/scriptable/constants'
|
27
|
+
require 'fpm/scriptable/script'
|
22
28
|
|
23
|
-
|
24
|
-
|
25
|
-
# Core classes
|
26
|
-
autoload :App, "fpm/scriptable/app"
|
27
|
-
autoload :Config, "fpm/scriptable/config"
|
28
|
-
autoload :Log, "fpm/scriptable/log"
|
29
|
-
autoload :Util, "fpm/scriptable/util"
|
30
|
-
autoload :Constants, "fpm/scriptable/constants"
|
31
|
-
autoload :Script, "fpm/scriptable/script"
|
32
|
-
|
33
|
-
# Package type plugins
|
34
|
-
autoload :RPM, "fpm/scriptable/plugin/rpm"
|
35
|
-
end
|
36
|
-
end
|
29
|
+
# Package type plugins
|
30
|
+
require 'fpm/scriptable/plugin/rpm'
|
data/lib/fpm/scriptable/app.rb
CHANGED
@@ -16,7 +16,7 @@ module FPM
|
|
16
16
|
module Scriptable
|
17
17
|
class App
|
18
18
|
|
19
|
-
def self.run
|
19
|
+
def self.run
|
20
20
|
@log = FPM::Scriptable::Log.instance
|
21
21
|
args = FPM::Scriptable::Util.get_args
|
22
22
|
|
@@ -30,31 +30,24 @@ module FPM
|
|
30
30
|
@log.add(level.to_sym, @log.color, STDOUT)
|
31
31
|
end
|
32
32
|
|
33
|
-
@log.show FPM::Scriptable::Util.banner
|
33
|
+
@log.show FPM::Scriptable::Util.banner unless args[:nobanner]
|
34
34
|
|
35
35
|
if args[:help] || args[:h]
|
36
|
-
@log.show FPM::Scriptable::Util.usage, false
|
37
|
-
|
36
|
+
@log.show FPM::Scriptable::Util.usage, false
|
37
|
+
return 1
|
38
38
|
end
|
39
39
|
|
40
40
|
cfg = FPM::Scriptable::Config.instance
|
41
41
|
@config = cfg.config
|
42
|
-
@config.app_dir = app_dir
|
43
42
|
@config.working_dir = Dir.getwd
|
44
43
|
|
45
44
|
script = args[:script]
|
46
45
|
if script.nil?
|
47
46
|
@log.fatal 'FPM::Scriptable::App - No script file was specified'
|
48
|
-
@log.show FPM::Scriptable::Util.usage
|
49
|
-
exit 1
|
47
|
+
@log.show FPM::Scriptable::Util.usage
|
50
48
|
else
|
51
49
|
if script !~ /^\//
|
52
|
-
script = "#{@config.
|
53
|
-
|
54
|
-
if !File.exists? script
|
55
|
-
script = args[:script]
|
56
|
-
script = "#{@config.working_dir}/#{script}"
|
57
|
-
end
|
50
|
+
script = "#{@config.working_dir}/#{script}"
|
58
51
|
end
|
59
52
|
|
60
53
|
@log.debug "FPM::Scriptable::App - Script file path set to: #{script}"
|
@@ -94,7 +87,8 @@ module FPM
|
|
94
87
|
end
|
95
88
|
end
|
96
89
|
|
97
|
-
|
90
|
+
return 1 if @log.has_error
|
91
|
+
return 0
|
98
92
|
end
|
99
93
|
|
100
94
|
end
|
data/lib/fpm/scriptable/log.rb
CHANGED
@@ -17,21 +17,18 @@ module FPM
|
|
17
17
|
class Log
|
18
18
|
include Singleton
|
19
19
|
attr_accessor :quiet, :color
|
20
|
+
attr_reader :has_error
|
20
21
|
|
21
22
|
def initialize
|
22
23
|
@quiet = false
|
23
24
|
@color = true
|
24
25
|
|
25
26
|
@logger = nil
|
27
|
+
@has_error = false
|
26
28
|
end
|
27
29
|
|
28
|
-
def show(msg,quiet=@
|
29
|
-
if msg
|
30
|
-
if @color && in_color
|
31
|
-
msg = "\e[33m#{msg}\e[0m"
|
32
|
-
else
|
33
|
-
msg = "\e[0m#{msg}\e[0m"
|
34
|
-
end
|
30
|
+
def show(msg,quiet=@quiet)
|
31
|
+
if !msg.nil?
|
35
32
|
puts msg unless quiet
|
36
33
|
end
|
37
34
|
end
|
@@ -49,7 +46,7 @@ module FPM
|
|
49
46
|
end
|
50
47
|
|
51
48
|
def info(msg)
|
52
|
-
if msg
|
49
|
+
if !msg.nil?
|
53
50
|
if !@logger.nil?
|
54
51
|
@logger.info msg
|
55
52
|
end
|
@@ -57,7 +54,7 @@ module FPM
|
|
57
54
|
end
|
58
55
|
|
59
56
|
def warn(msg)
|
60
|
-
if msg
|
57
|
+
if !msg.nil?
|
61
58
|
if !@logger.nil?
|
62
59
|
@logger.warn msg
|
63
60
|
end
|
@@ -65,7 +62,7 @@ module FPM
|
|
65
62
|
end
|
66
63
|
|
67
64
|
def debug(msg)
|
68
|
-
if msg
|
65
|
+
if !msg.nil?
|
69
66
|
if !@logger.nil?
|
70
67
|
@logger.debug msg
|
71
68
|
end
|
@@ -73,7 +70,8 @@ module FPM
|
|
73
70
|
end
|
74
71
|
|
75
72
|
def error(msg)
|
76
|
-
|
73
|
+
@has_error = true
|
74
|
+
if !msg.nil?
|
77
75
|
if !@logger.nil?
|
78
76
|
@logger.error msg
|
79
77
|
end
|
@@ -81,7 +79,8 @@ module FPM
|
|
81
79
|
end
|
82
80
|
|
83
81
|
def fatal(msg)
|
84
|
-
|
82
|
+
@has_error = true
|
83
|
+
if !msg.nil?
|
85
84
|
if !@logger.nil?
|
86
85
|
@logger.fatal msg
|
87
86
|
end
|
@@ -52,7 +52,7 @@ module FPM
|
|
52
52
|
@config = FPM::Scriptable::Config.instance.config
|
53
53
|
c = FPM::Scriptable::Constants.instance
|
54
54
|
|
55
|
-
@log.debug 'FPM::Scriptable::
|
55
|
+
@log.debug 'FPM::Scriptable::Script - initializing Script'
|
56
56
|
|
57
57
|
@version = c.script.version
|
58
58
|
@iteration = c.script.iteration
|
@@ -63,11 +63,11 @@ module FPM
|
|
63
63
|
end
|
64
64
|
|
65
65
|
def fpm_obj
|
66
|
-
@log.
|
66
|
+
@log.warn 'FPM::Scriptable::Script - fpm_obj method not implemented in plugin'
|
67
67
|
end
|
68
68
|
|
69
69
|
def fpm_convert
|
70
|
-
@log.
|
70
|
+
@log.warn 'FPM::Scriptable::Script - fpm_convert method not implemented in plugin'
|
71
71
|
end
|
72
72
|
|
73
73
|
def plugin_init
|
@@ -128,7 +128,7 @@ module FPM
|
|
128
128
|
#@fpm.directories +=
|
129
129
|
#@fom.attributes[:excludes]
|
130
130
|
rescue Exception => e
|
131
|
-
log.error "#{e}"
|
131
|
+
@log.error "FPM::Scriptable::Script - #{e}"
|
132
132
|
end
|
133
133
|
|
134
134
|
package = nil
|
@@ -141,20 +141,20 @@ module FPM
|
|
141
141
|
if !overwrite.nil?
|
142
142
|
force = overwrite.to_s.downcase
|
143
143
|
if force == 'true'
|
144
|
-
@log.
|
144
|
+
@log.warn "FPM::Scriptable::Script - overwrite enabled - removing package: #{package.to_s}"
|
145
145
|
FileUtils.rm_f(package.to_s)
|
146
146
|
end
|
147
147
|
end
|
148
148
|
end
|
149
149
|
|
150
|
-
@log.info "
|
150
|
+
@log.info "FPM::Scriptable::Script - building package: #{package.to_s}"
|
151
151
|
package.output(package.to_s)
|
152
152
|
end
|
153
153
|
else
|
154
|
-
@log.error '
|
154
|
+
@log.error 'FPM::Scriptable::Script - failed to convert - packaging object is invalid'
|
155
155
|
end
|
156
156
|
rescue Exception => e
|
157
|
-
log.error "#{e}"
|
157
|
+
@log.error "FPM::Scriptable::Script - #{e}"
|
158
158
|
end
|
159
159
|
|
160
160
|
end
|
data/lib/fpm/scriptable/util.rb
CHANGED
@@ -51,17 +51,17 @@ module FPM
|
|
51
51
|
|
52
52
|
def self.usage
|
53
53
|
usage = <<EOF
|
54
|
-
|
55
|
-
Usage:
|
54
|
+
Usage:
|
56
55
|
#{$0} OPTIONS
|
57
56
|
|
58
|
-
|
59
|
-
|
60
|
-
|
61
|
-
|
62
|
-
|
57
|
+
Options:
|
58
|
+
--help Display this help screen
|
59
|
+
--quiet Messages are not displayed to the console
|
60
|
+
--nocolor Turn off colors in console output
|
61
|
+
--log_level <lvl> Log level (info, debug, error)
|
62
|
+
--nobanner Do not show the banner
|
63
63
|
|
64
|
-
|
64
|
+
--script <file> Script to build
|
65
65
|
|
66
66
|
EOF
|
67
67
|
usage
|
@@ -78,11 +78,11 @@ EOF
|
|
78
78
|
|_| | .__/|_| |_| |_| |___/\\___|_| |_| .__/ \\__\\__,_|_.__/|_|\\___|
|
79
79
|
|_| |_|
|
80
80
|
|
81
|
+
#{c.name}
|
82
|
+
Version: #{c.version}
|
83
|
+
Author: #{c.author}
|
84
|
+
Website: #{c.website}
|
81
85
|
|
82
|
-
#{c.name}
|
83
|
-
Version: #{c.version}
|
84
|
-
Author: #{c.author}
|
85
|
-
Website: #{c.website}
|
86
86
|
EOF
|
87
87
|
banner
|
88
88
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: fpm-scriptable
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version:
|
4
|
+
version: 1.0.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Ted Elwartowski
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2015-02-16 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: curb
|