bin/scms in scms-2.1.1 vs bin/scms in scms-2.1.2
- old
+ new
@@ -8,10 +8,11 @@
# (c) 2007 Static-CMS
require 'optparse'
require 'fileutils'
require 'Scms'
+require "scms/version"
class String
def to_path(end_slash=false)
"#{'/' if self[0]=='\\'}#{self.split('\\').join('/')}#{'/' if end_slash}"
end
@@ -44,17 +45,19 @@
options[:mode] = "pub"
opts.on( '-m', '--mode MODE', 'CMS or Publish' ) do|m|
options[:mode] = m
end
- options[:verbose] = false
- opts.on( '-v', '--verbose', 'Output more information' ) do
- options[:verbose] = true
+ options[:version] = false
+ opts.on( '-v', '--version', 'Output scms version' ) do
+ puts "Version: #{Scms::VERSION}"
+ exit
end
# This displays the help screen, all programs are
# assumed to have this option.
opts.on( '-h', '--help', 'Display this help screen' ) do
+ puts "Default action = build; default website directory = current working directory"
puts opts
exit
end
end
optparse.parse!
@@ -86,11 +89,11 @@
monkeyhook = File.join(Folders[:website], "scripts", "air-monkey-hook.js")
if options[:mode] == "cms"
FileUtils.cp(File.join(Folders[:assets], "air-monkey-hook.js"), monkeyhook)
else
- FileUtils.rm(monkeyhook) if File.exist?(monkeyhook)
+ FileUtils.rm(monkeyhook) if File.exist?(monkeyhook) && options[:action] == "deploy"
end
#ScmsUtils.log "System root folder = #{Folders[:root]}"
#ScmsUtils.log "Website folder = #{Folders[:website]}"
#ScmsUtils.log "Pub dir = #{Folders[:pub]}"
@@ -99,7 +102,17 @@
raise "No website in folder #{Folders[:website]}" if !File::directory?(Folders[:website])
Scms.upgrade(Folders[:website])
Scms.build(Folders[:website], Folders[:config], options[:mode])
Scms.copywebsite(Folders[:website], Folders[:pub]) if Folders[:pub] != nil
+
+if options[:action] == "watch"
+ require 'filewatcher'
+ puts "Setting up watcher"
+ FileWatcher.new(["_views"],"Watching files:").watch do |filename|
+ puts "Updated " + filename
+ Scms.build(Folders[:website], Folders[:config], options[:mode])
+ end
+end
+
mimetypefile = File.join(Folders[:root], "assets", "mime.types")
S3Deploy.sync(Folders[:website], Folders[:config], mimetypefile) if options[:action] == "deploy"
\ No newline at end of file