[JIRA] Commented: (CC-991) Piping STDOUT->STDIN of scripts (piped exec builder)

"Dan Rollo (JIRA)" <[email protected]>
Newsgroups gmane.comp.java.cruise-control.devel
Message-ID <429565401.1284320449921.JavaMail.jira@chidmzhosting02.thoughtworks.com>
    [ http://jira.public.thoughtworks.org/browse/CC-991?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_18755 ] 

Dan Rollo commented on CC-991:
------------------------------

Another question I forgot to ask:

StdoutBuffer.bytesNum is never assigned a value. It is used in a couple places (toString()'s and more importantly: BufferReader.available()).
Is this a bug hiding?
(Banking with an @todo comment).

> Piping STDOUT->STDIN of scripts (piped exec builder)
> ----------------------------------------------------
>
>                 Key: CC-991
>                 URL: http://jira.public.thoughtworks.org/browse/CC-991
>             Project: CruiseControl
>          Issue Type: New Feature
>          Components: Core Application
>         Environment: Any
>            Reporter: Daniel Tihelka
>         Assigned To: Dan Rollo
>         Attachments: Documentation.patch01, PipedExecBuilder-07_1.patch, PipedExecBuilder.java, PipedExecBuilder.patch01, PipedExecBuilder.patch02, PipedExecBuilder.patch03, PipedExecBuilder.patch04, PipedExecBuilder.patch05, PipedExecBuilder.patch06, PipedExecBuilder.patch07, PipedExecBuilderTest.java, StdoutBuffer.java, StdoutBufferTest.java
>
>   Original Estimate: 2 weeks
>  Remaining Estimate: 2 weeks
>
> The build process may sometime consist of the set of scripts piped one into another (the unix-way of filtering). This issue targets CruiseControl extension which would allow it.
> Almost a year ago, I have created PipedExecBuilder class as 3rd party CC plugin. It contains several scripts to execute, while the output of any script can be piped into the input of an arbitrary number of other scripts. Moreover, the execution of a script may be hold until another script is running (to prevent several scripts with large memory requirements running at the same time).
> The configuration may look as follows:
> <schedule>
>    <pipedexec>
>      <exec id="" command="" args="" />
>      <exec id="" command="" args="" pipefrom="" />
>      <exec id="" command="" args="" waitfor="" />
>      <exec id="" command="" args="" pipefrom="" waitfor="" />
>    </pipedexec>
> </schedule>
> where the <exec /> tag is the same as the original <exec /> tag, with additional attributes:
> - id - unique identifier of the script for the piping
> - pipefrom - the id of script from which to pipe stdout into the stdin of the current script (optional)
> - waitfor - the id of script to wait for - it holds the execution of the current script until the script which we wait for terminates.
> The pipedexec builder tries to run as many scripts in parallel as possible, while it finishes when all the scripts were finished, or when a script failed.
> For further details see cruisecontrol-devel mailing list thread:
> http://sourceforge.net/mailarchive/forum.php?thread_name=201005271341.32553.dtihelka%40kky.zcu.cz&forum_name=cruisecontrol-devel
> Kind regards,
> DanT

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.public.thoughtworks.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

------------------------------------------------------------------------------
Start uncovering the many advantages of virtual appliances
and start using them to simplify application deployment and
accelerate your shift to cloud computing
http://p.sf.net/sfu/novell-sfdev2dev
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.