diff options
author | murphy <murphy@rubychan.de> | 2006-04-16 00:38:38 +0000 |
---|---|---|
committer | murphy <murphy@rubychan.de> | 2006-04-16 00:38:38 +0000 |
commit | ee808b400543d924286eebaee8ed1ad8a4e28ced (patch) | |
tree | 3aa0bf9eaa9aa328979d06c49a2f6bb03c7af5af /rake_helpers/ftp.rb | |
parent | 915a4ade8840f076b2ad2681944ab845ef038f0c (diff) | |
download | coderay-ee808b400543d924286eebaee8ed1ad8a4e28ced.tar.gz |
Rake tasks completely redone.
rdoctask2.rb deleted; issues were fixed as of Rake 0.7.0.
Diffstat (limited to 'rake_helpers/ftp.rb')
-rw-r--r-- | rake_helpers/ftp.rb | 45 |
1 files changed, 45 insertions, 0 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
|