From: "Ara.T.Howard" Date: 2005-11-07T01:02:43+09:00 Subject: [ANN] rubyforge-0.0.0 SYNOPSIS rubyforge [options]* mode [mode_args]* DESCRIPTION simplistic script which automates a limited set of rubyforge operations MODES setup() initializes your /home/ahoward/.rubyforge directory. you need to run this first before doing anything else. example : rubyforge setup login() sends username and password from /home/ahoward/.rubyforge/config.yml (or --username/--password options) and stores login cookie in /home/ahoward/.rubyforge/cookie.dat. this is required for subsquent operations work. example : rubyforge login rubyforge login --username zaphod --password 42 create_package(group_id, package_name) creates the named package under the specified group. example : rubyforge create_package codeforpeople.com traits rubyforge create_package 1024 traits notes : in order to use group_ids by name, rather than number, you must edit the rubyforge[group_ids] translation table in your /home/ahoward/.rubyforge/config.yml. add_release(group_id, package_id, release_name, userfile) release a file as release_name under the specified group_id and package_id. example : rubyforge add_package codeforpeople.com traits 0.8.0 traits-0.8.0.gem rubyforge add_package codeforpeople.com traits 0.8.0 traits-0.8.0.tgz rubyforge add_package 1024 1242 0.8.0 traits-0.8.0.gem notes : in order to use group_ids and package_ids by name, rather than number, you must edit the rubyforge[group_ids] and rubyforge[package_ids] translation tables in your /home/ahoward/.rubyforge/config.yml. delete_package(group_id, package_name) deletes a package and all it's files. example : rubyforge delete_package codeforpeople.com traits rubyforge delete_package 1024 traits OPTIONS global : --help , -h this message --config , -c specify a config file (default /home/ahoward/.rubyforge/config.yml) --username , -u specify username, taken from config otherwise --password , -p specify password, taken from config otherwise --cookie_jar , -C specify cookie storage file (default /home/ahoward/.rubyforge/cookie.dat) add_release : --is_private , -P if true, release is not public --release_date , -r specify time of release (default 'now') --type_id , -t specify filetype code (default determined by ext) --processor_id , -o specify processor (default 'Any') --release_notes , -n specify release notes as string or file --release_changes , -a specify release changes as string or file --preformatted , -f specify whether release_notes/changes are preformatted for instance, i uploaded the rubyforge program itself to rubyforge just a little while ago using: setup my .rubyforge directory: jib:~ > rubyforge setup here i edited the config file to add my username and password store a login cookie: jib:~ > rubyforge login create the rubyforge package under my codeforpeople project jib:~ > rubyforge create_package codeforpeople.com rubyforge here i edited the config file to have something like ... rubyforge : package_ids : traits : 1241 arrayfields : 1238 lockfile : 1242 rubyforge : 1250 group_ids : codeforpeople.com : 1024 ... so i could refer to my packages and groups by name next i release both the source and gem of the script... jib:~ > rubyforge add_release codeforpeople.com rubyforge 0.0.0 rubyforge-0.0.0.tgz --release_notes 'initial release' jib:~ > rubyforge add_release codeforpeople.com rubyforge 0.0.0 rubyforge-0.0.0/rubyforge-0.0.0.gem --release_notes 'initial release' now, on another host i can [ahoward@localhost ~]$ gem list rubyforge --remote *** REMOTE GEMS *** Updating Gem source index for: http://gems.rubyforge.org rubyforge (0.0.0) rubyforge of course it takes a little while to show up... enjoy. -a -- =============================================================================== | email :: ara [dot] t [dot] howard [at] noaa [dot] gov | phone :: 303.497.6469 | anything that contradicts experience and logic should be abandoned. | -- h.h. the 14th dalai lama ===============================================================================