Forum: Ruby [ANN] rubyforge-0.1.1

Announcement (2017-05-07): www.ruby-forum.com is now read-only since I unfortunately do not have the time to support and maintain the forum any more. Please see rubyonrails.org/community and ruby-lang.org/en/community for other Rails- und Ruby-related community platforms.
unknown (Guest)
on 2006-02-14 06:09
(Received via mailing list)
SIMPLIFY SHARING YOUR RUBYGEMS ON RUBYFORGE!

   ~> gem install rubyforge




SYNOPSIS

   rubyforge [options]* mode [mode_args]*

DESCRIPTION

   simplistic script which automates a limited set of rubyforge
operations

MODES

   setup()
     initializes your .rubyforge directory.  you need to run this first
before
     doing anything else.

     example :
       rubyforge setup

   login()
     sends username and password from config.yml (or
--username/--password
     options) and stores login cookie in 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 1024 traits
       rubyforge login && rubyforge create_package codeforpeople.com
traits

     notes :
       in order to use group_ids by name, rather than number, you must
edit the
       rubyforge[group_ids] translation table in your 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_release codeforpeople.com traits 0.8.0
traits-0.8.0.gem
       rubyforge add_release codeforpeople.com traits 0.8.0
traits-0.8.0.tgz
       rubyforge add_release 1024 1242 0.8.0 traits-0.8.0.gem
       rubyforge login && rubyforge add_release 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 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

NOTES

   - you can determine the group_id and package_id of projects and
packages by

     login ->
       my page tab ->
         select a project link from 'my projects' ->
           files tab ->
             admin link (not the admin tab!) ->

               now you'll be at page listing your packages in this
project.
               near the bottom you'll see links to 'add a release' or
'edit a
               release' - hover over the url and you'll notice the query
               string, which looks something like

                 ?package_id=1242&group_id=1024

               and that's what you need to know

   - don't forget to login!  logging in will store a cookie in your
     .rubyforge directory which expires after a time.  always run the
login
     command before any operation that requires authentication, such as
     uploading a package.

TODO

   - scrape rubyforge to auto-configure group_id and package_ids.

   - objectify the script.  it's procedural butchery attm.

   - add error checking.  this requires screen scraping to see of an
operation
     succeeded since 200 is returned from rubyforge even for failed
operations
     and only the html text reveals the status.

   - add more functionality.

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


enjoy.

-a
Timothy G. (Guest)
on 2006-02-14 12:04
(Received via mailing list)
Cool, thanks for the script. I'm just starting a project on rubyforge,
so this may be very useful indeed.

Incidentally, the quote in your signature is just a way of stating the
Fallacy of Prior Investment. To value something by the investment
already made ignores the majority of the equation (i.e. potential
future returns). It is unfortunately a common trap for the human mind
to fall into. The saying is not nearly as wise as it sounds.
unknown (Guest)
on 2006-02-14 16:54
(Received via mailing list)
On Tue, 14 Feb 2006, Timothy G. wrote:

> Cool, thanks for the script. I'm just starting a project on rubyforge, so
> this may be very useful indeed.

glad to hear it.  share and share alike.

> Incidentally, the quote in your signature is just a way of stating the
> Fallacy of Prior Investment. To value something by the investment already
> made ignores the majority of the equation (i.e. potential future returns).
> It is unfortunately a common trap for the human mind to fall into. The
> saying is not nearly as wise as it sounds.


i'm not sure that's what he meant.  i think it's more along the lines
of: if
you are rich and powerful but you missed out on your childs youth
working so
hard to get there, are you really successful?

kind regards.

-a
Kurt V. Hindenburg (Guest)
on 2006-02-20 00:36
(Received via mailing list)
On Monday 13 February 2006 23:09, removed_email_address@domain.invalid wrote:
|    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_release codeforpeople.com traits 0.8.0
| traits-0.8.0.gem rubyforge add_release codeforpeople.com traits 0.8.0
| traits-0.8.0.tgz rubyforge add_release 1024 1242 0.8.0 traits-0.8.0.gem

For my project, I release 6 files for each release.  If I use 6
add_release,
then I get 6 release_ids.

% rubyforge add_release xmltv2html xmltv2html 0.7.1
~/xmltv2html-0.7.1.zip

Example after 2 add_release:

 0.7.1	   2006-02-19 17:27
    xmltv2html-0.7.1.zip.md5sum	55 bytes	0	Any	text
  0.7.1	  2006-02-19 17:27
    xmltv2html-0.7.1.zip	46 KB	0	Any	.zip

I want all 6 files under the same release_id.  Can this be done with
rubyforge?

http://rubyforge.org/frs/?group_id=772

  Regards,
    Kurt
This topic is locked and can not be replied to.