= Vortex Client A set of utilities for managing content in the web content management system "Vortex":http://www.usit.uio.no/it/vortex/. All operations are done by using the webdav protocol. = Publishing content To publish an article. require 'rubygems' require 'vortex_client' vortex = Vortex::Connection.new("https://www-dav.server.com") vortex.cd("/news/") article = Vortex::StructuredArticle.new(:title => "My title", :introduction => "Lorem ipsum") vortex.publish(article) Running the script. $ ruby publish.rb Username: thomasfl Password: ***** An article should now be published to "https://www-dav.server.com/news/my-title.html". = Creating folders (collections) To create a folder named "2010" in the "/news/" folder. require 'rubygems' require 'vortex_client' vortex = Vortex::Connection.new("https://www-dav.server.com") vortex.cd("/news/") collection = Vortex::ArticleListingCollection.new(:title => "News for 2009", :foldername => "2009") vortex.create(collection) = Documentation RDoc: http://rdoc.info/projects/thomasfl/vortex_client/ = Installation On most setups you simply do: sudo gem install vortex_client If your'e having problems installing the xml parser nokogiri on is x: http://wiki.github.com/tenderlove/nokogiri/what-to-do-if-libxml2-is-being-a-jerk Also how to compile ruby 1.9.1 on os x http://wonko.com/post/how-to-compile-ruby-191 On ubuntu openssl can be an issue http://blog.maxaller.name/2009/02/ruby-19-and-openssl-on-ubuntu/ = Using KeyChain authentication on OS X To retrieve password from KeyChain on OS X, use the option :use_osx_keychain => true. vortex = Vortex::Connection.new("https://www-dav.server.com", :use_osx_keychain => true) When running for the first time, ruby prompts for the password. Username must be the same both locally and on the server. Password not found on OS X KeyChain. Enter password to store new password on OS X KeyChain. Password: ***** Password for 'tiger' on 'www-dav.server.com' stored on OS X KeyChain. The next time the script is executed, ruby won't prompt for username or password. KeyChain authentication requires 'osx_keychain' and 'RubyInline' gem. To install: $ sudo gem install RubyInline $ sudo gem install osx_keychain == Note on Patches/Pull Requests * Fork the project. * Make your feature addition or bug fix. * Add tests for it. This is important so I don't break it in a future version unintentionally. * Commit, do not mess with rakefile, version, or history. (if you want to have your own version, that is fine but bump version in a commit by itself I can ignore when I pull) * Send me a pull request. Bonus points for topic branches. == Copyright Copyright (c) 2009 Thomas Flemming. See LICENSE for details.