public
Description: Cabar - an extensible software component backplane.
Homepage: http://kurtstephens.com/cabar
Clone URL: git://github.com/kstephens/cabar.git
cabar /
name age message
file .gitignore Mon Sep 21 18:11:43 -0700 2009 cabar requires ruby. derby requires ruby. Suppo... [kstephens]
file LICENSE.txt Mon Mar 24 02:23:03 -0700 2008 MIT License. git-svn-id: http://cabar.rubyforg... [kstephens]
file Manifest Thu Aug 06 21:39:16 -0700 2009 :bin facet still using Strings for Facet.key. R... [Kurt Stephens]
file README.txt Tue Jun 16 10:00:11 -0700 2009 Cabar is sponsored by cashnetusa.com. [kstephens]
file Rakefile Tue Aug 04 20:57:21 -0700 2009 Major rework of Facets and Plugins, fixed probl... [Kurt Stephens]
file Releases.txt Wed Mar 19 03:05:33 -0700 2008 Updated manifest. git-svn-id: http://cabar.rub... [kstephens]
file TODO.txt Tue Jun 16 16:35:50 -0700 2009 Renamed Cabar::Context to Cabar::Resolver; Remo... [kstephens]
directory bin/ Fri Jun 19 17:36:02 -0700 2009 Allow multiple Main instances per process by sh... [kstephens]
file cabar.yml Tue Jun 23 11:15:09 -0700 2009 Relocated reusable cabar modules to cabar_core.... [kstephens]
directory comp/ Mon Sep 21 18:11:43 -0700 2009 cabar requires ruby. derby requires ruby. Suppo... [kstephens]
directory doc/ Thu Jul 09 20:35:13 -0700 2009 Readded doc/* [kstephens]
directory example/ Mon Sep 21 15:42:57 -0700 2009 Merge branch 'rubygems_arch_support' [kstephens]
directory lib/ Mon Sep 21 18:11:43 -0700 2009 cabar requires ruby. derby requires ruby. Suppo... [kstephens]
directory src/ Mon Mar 17 10:52:56 -0700 2008 Moved doc to src/doc to avoid conflicting with ... [kstephens]
directory test/ Mon Sep 21 18:11:43 -0700 2009 cabar requires ruby. derby requires ruby. Suppo... [kstephens]
README.txt
= Introduction

Cabar is an extensible software component backplane for
managing software components.
It can be used with Ruby or other software technologies.

For more info see:
 
* http://cabar.rubyforge.org/classes/Cabar.html
* http://cabar.rubyforge.org
* lib/ruby/cabar.rb

Cabar is sponsored by CashNetUSA (http://cashnetusa.com).

= Quick Cabar Demo

* Go to cabar/example.

    > cd cabar/example

* Using bin/cbr_env.

Sets up basic CABAR_* environment variables for cbr command:

    > bin/cbr_env --env
    > eval `bin/cbr_env --env`

* List available commands.

    > cbr help
    > cbr --verbose help comp

* List plugins.

    > cbr plugin list

* List available components.

    > cbr comp list
    > cbr comp list - c2

* Directory structure.

    > find . -type d

* Cabar cabar.yml specification.

    > find . -type f -name 'cabar.yml'

* Components and facets:

    > cbr comp show - c1

* Component version selection:

    > cbr comp run - c2 c2_prog foo bar
    > cbr comp run - c2/1.1 c2_prog foo bar

* Cabar configuration cabar_conf.yml.

Show how component version selection can be done outside
of component requirements.

1. Version Selection
2. Dependencies
3. Version Defaults

    > cbr comp show - c1

* Facet environment for a component:

    > cbr env - c1

* See plugins:

    > cat prod/boc_locale/1.1/cabar.yml
    > cat prod/boc_config/1.0/cabar.rb

* Show graph:

    > CABAR_PATH=@. cbr comp dot --show-dependencies
    > cbr comp dot | dot -Tsvg:cairo -o graph.svg
    > cbr comp dot --show-dependencies - c1 | dot -Tsvg:cairo -o graph.svg
    > cbr comp dot --show-facets - c1 | dot -Tsvg:cairo -o graph.svg
    > cbr comp dot --show-dependencies --show-facets - c1 | dot -Tsvg:cairo -o graph.svg
    > rake
    > ls doc

* In-place run scripts for ruby.

    > cbr bin run - c1 c2_prog

* Cabar as component

    > (cd .. && CABAR_PATH=@. bin/cbr comp list)
    > (cd .. && CABAR_PATH=@. bin/cbr run - cabar cbr list) 

* cbr-run on a #! line.

    > cbr-run-test