summaryrefslogtreecommitdiff
path: root/rake_helpers
diff options
context:
space:
mode:
Diffstat (limited to 'rake_helpers')
-rw-r--r--rake_helpers/ftp.rb45
-rw-r--r--rake_helpers/rdoctask2.rb125
2 files changed, 45 insertions, 125 deletions
diff --git a/rake_helpers/ftp.rb b/rake_helpers/ftp.rb
new file mode 100644
index 0000000..c1eb98c
--- /dev/null
+++ b/rake_helpers/ftp.rb
@@ -0,0 +1,45 @@
+def prepare_ftp
+ require 'net/ftp'
+ require 'yaml'
+ $username = File.exist?(FTP_YAML) ? YAML.load_file(FTP_YAML)[:username] : 'anonymous'
+end
+
+FTP_YAML = 'ftp.yaml'
+FTP_DOMAIN = 'cycnus.de'
+FTP_CODERAY_DIR = 'public_html/raindark/coderay'
+
+def cYcnus_ftp
+ prepare_ftp
+ Net::FTP.open(FTP_DOMAIN) do |ftp|
+ g 'ftp login, password needed: '
+ ftp.login $username, $stdin.gets
+ gn 'logged in.'
+ yield ftp
+ end
+end
+
+def uploader_for ftp
+ proc do |l, *r|
+ r = r.first || l
+ raise 'File %s not found!' % l unless File.exist? l
+ if l == r
+ g 'Uploading %s...' % [l]
+ else
+ g 'Uploading %s to %s...' % [l, r]
+ end
+ ftp.putbinaryfile l, r
+ gd
+ end
+end
+
+def g msg
+ $stderr.print msg
+end
+
+def gn msg = ''
+ $stderr.puts msg
+end
+
+def gd
+ gn 'done.'
+end
diff --git a/rake_helpers/rdoctask2.rb b/rake_helpers/rdoctask2.rb
deleted file mode 100644
index 1e6bedd..0000000
--- a/rake_helpers/rdoctask2.rb
+++ /dev/null
@@ -1,125 +0,0 @@
-#!/usr/bin/env ruby
-
-require 'rake'
-require 'rake/tasklib'
-require 'rdoc/rdoc'
-
-module Rake
-
- # Create a documentation task that will generate the RDoc files for
- # a project.
- #
- # The RDocTask will create the following targets:
- #
- # [<b><em>rdoc</em></b>]
- # Main task for this RDOC task.
- #
- # [<b>:clobber_<em>rdoc</em></b>]
- # Delete all the rdoc files. This target is automatically
- # added to the main clobber target.
- #
- # [<b>:re<em>rdoc</em></b>]
- # Rebuild the rdoc files from scratch, even if they are not out
- # of date.
- #
- # Simple Example:
- #
- # Rake::RDocTask.new do |rd|
- # rd.main = "README.rdoc"
- # rd.rdoc_files.include("README.rdoc", "lib/**/*.rb")
- # end
- #
- # You may wish to give the task a different name, such as if you are
- # generating two sets of documentation. For instance, if you want to have a
- # development set of documentation including private methods:
- #
- # Rake::RDocTask.new(:rdoc_dev) do |rd|
- # rd.main = "README.doc"
- # rd.rdoc_files.include("README.rdoc", "lib/**/*.rb")
- # rd.options << "--all"
- # end
- #
- # The tasks would then be named :<em>rdoc_dev</em>, :clobber_<em>rdoc_dev</em>, and
- # :re<em>rdoc_dev</em>.
- #
- class RDocTask < TaskLib
- # Name of the main, top level task. (default is :rdoc)
- attr_accessor :name
-
- # Name of directory to receive the html output files. (default is "html")
- attr_accessor :rdoc_dir
-
- # Title of RDoc documentation. (default is none)
- attr_accessor :title
-
- # Name of file to be used as the main, top level file of the
- # RDoc. (default is none)
- attr_accessor :main
-
- # Name of template to be used by rdoc. (default is 'html')
- attr_accessor :template
-
- # List of files to be included in the rdoc generation. (default is [])
- attr_accessor :rdoc_files
-
- # List of options to be passed rdoc. (default is [])
- attr_accessor :options
-
- # Create an RDoc task named <em>rdoc</em>. Default task name is +rdoc+.
- def initialize(name=:rdoc) # :yield: self
- @name = name
- @rdoc_files = Rake::FileList.new
- @rdoc_dir = name.to_s
- @main = nil
- @title = nil
- @template = 'html'
- @options = []
- yield self if block_given?
- define
- end
-
- # Create the tasks defined by this task lib.
- def define
- desc "Build the #{name} HTML Files"
- task name
-
- desc "Force a rebuild of the RDOC files"
- task paste("re", name) => [paste("clobber_", name), name]
-
- desc "Remove rdoc products"
- task paste("clobber_", name) do
- rm_r rdoc_dir rescue nil
- end
-
- #task :clobber => [paste("clobber_", name)]
-
- directory @rdoc_dir
- task name => [rdoc_target]
- file rdoc_target => @rdoc_files + [$rakefile] do
- rm_r @rdoc_dir rescue nil
- r = RDoc::RDoc.new
- r.document(['-o', @rdoc_dir] + option_list + @rdoc_files)
- end
- self
- end
-
- def option_list
- result = @options.dup
- result << "--main" << main if main
- result << "--title" << "#{title}" if title
- result << "-T" << template if template
- result
- end
-
- def option_string
- option_list.join(' ')
- end
-
- private
-
- def rdoc_target
- "#{rdoc_dir}/index.html"
- end
-
- end
-end