Announcing SmartFrog 3.12.044

Steve Loughran <[email protected]> Thu, 09 Oct 2008 11:10:26 +0100
Newsgroups gmane.comp.java.smartfrog.user
Message-ID <[email protected]>
Hi,

I'm pleased to announce the release of SmartFrog 3.12.044; the text 
announcement follows and the HTML announcement is attached.

This is the last non-OSGi release planned! Today, the OSGi branch is 
switching over to be the main branch, and releases of the non-OSGi 
stream will only continue if there is a pressing support issue. (of 
course, anyone is free to check out and release their own version).

We are planning to up the version number of SmartFrog once the changes 
go in, and provide lots of documentation on the changes. The key one is: 
an OSGi runtime can be used to isolate JAR files loaded by different 
components, in the same JVM.

-steve

SmartFrog 3.12.044
======================

This is a new release of SmartFrog, the Java-based, LPGL-licensed
distributed deployment framework developed by HP Laboratories. SmartFrog
enables applications to be deployed across multiple machines,
configuring different aspects of the system so that they are all
consistently configured, and managing the life-cycle of the application
as a whole. The project's home page is http://smartfrog.org/

The release artifacts are available at

http://sourceforge.net/project/showfiles.php?group_id=87384&package_id=176308

This release is 3.12.044; built from revision 7097
of the SVN repository. This release has an extended language
with the ability to tag attributes, and includes the following items:

* The core SmartFrog daemon, including services to manage files, start 
and stop
   Java and native programs.
* Example components and applications.
* Ant support: ant tasks to deploy and terminate applications from a build.
* Ant components: the ability to execute ant tasks in a deployment.
* Anubis: a partition aware tuple-space that can be used to implement fault
   tolerant systems.
* Database: components to issue database commands, and deploy HSLDB and 
MySQL.
* JMX: the ability to configure and manage JMX components, and to manage
   SmartFrog components over JMX.
* Logging: integration with Apache commons-logging and Log4J
* Networking: email, FTP, SSH, DNS support.
* Quartz: scheduled operations using Quartz libraries.
* Scripting: support for BSF-hosted scripting languages
* Testing: Distributed JUnit and component testing with SFUnit.
* Velocity: generation/transformation of text files during deployment
* WWW: deployment of WAR and EAR files to application servers. 
deploy-by-copy
   is provided for all application servers that support it, and sample 
templates
   are provided to start and stop Tomcat and JBoss. The Jetty component can
   configure and deploy individual servlets, eliminating much of the 
need for WAR
   files and application servers.
* XML: XML support with XOM.
* XMPP: Presence and messaging over Jabber.


Packaging
=========

This release is available as:

* RPM files inside a .tar.gz file.
* A JAR installer.
* The original core smartfrog distribution as .zip and .tar.gz (deprecated).
* A .tar.gz file containing everything needed to create a private set of 
RPM files
   containing JAR files signed by a private Certification Authority.


The RPM installation is for RPM-based Linux systems. The archive 
contains the
following RPM files:

smartfrog:        The core SmartFrog distribution.
smartfrog-daemon: The shell scripts to add the smartfrog distribution to the
                   path, and to run the daemon on start-up.
smartfrog-demo:   Example code and documentation.
smartfrog-javadocs: Javadocs for the project
smartfrog-ant:    Ant task and build file execution
smartfrog-anubis: Distributed partition-aware tuple space
smartfrog-csvfiles: Support for reading/writing CSV Files.
smartfrog-database: Database access
smartfrog-jmx:    JMX integration though MX4J
smartfrog-junit:  Junit 3.8.2 test execution
smartfrog-logging: Logging through Log4J and commons-logging
smartfrog-networking: SSH, SCP, FTP and email
smartfrog-quartz:  Scheduled operations
smartfrog-scripting: Scripted components
smartfrog-velocity: Velocity template processing
smartfrog-www:      Web support: Deployment and liveness pages
smartfrog-xml:      XML Support
smartfrog-xmpp:     XMPP/Jabber communications
smartfrog-xunit:    Distributed testing and reporting

All the JAR files are also published to a repository that is compatible with
Apache Maven and Ivy. Add http://smartfrog.sourceforge.net/repository/
to your repository list to pull SmartFrog artifacts into your Ivy- or
Maven- based build.

There are also SmartFrog components to retrieve artifacts from such a 
repository
(the Library components under /org/smartfrog/services/os/java/library.sf ),
which can be used for dynamic download of SmartFrog and other artifacts.


Security warning
================

Unless SmartFrog is configured with security, a running daemon will
listen on its configured port for incoming deployment requests, and
deploy the applications with the rights of the user running the daemon.
When the smartfrog-daemon RPM is installed, that means that a process
running as root will be listening on an open port for incoming
deployment requests. Do not deploy SmartFrog this way on any untrusted
network, not without turning security on.

There is a special distribution .tar.gz file that can be used to generate
a private set of secure RPM files.

Building SmartFrog
==================

SmartFrog requires Java 1.5 and Ant 1.7 to build. The izpack and source 
.zip and
.tar.gz distributions include a source tree adequate to build the
entire system. To build a later release, please follow the instructions at
   http://sourceforge.net/svn/?group_id=87384
to check out smartfrog/trunk/core from our repository.

This release was built with revision 7097 of the repository, which
is available under the SVN branch
https://smartfrog.svn.sourceforge.net/svnroot/smartfrog/tags/release3.12.044

We strongly encourage anyone interested in building or extending
SmartFrog to get involved in the SmartFrog developer mailing list, which
can be found from the sourceforge project page
http://sourceforge.net/projects/smartfrog/

Reporting Bugs
==============

Please file all bug reports at http://jira.smartfrog.org/

Thank you!

The SmartFrog Team        http://smartfrog.org/

Changes since last release
==========================

** Bug
     * [SFOS-849] - Cannot start http server in junit outside the IDE
     * [SFOS-872] - Hudson fails during Ivy Tests
     * [SFOS-881] - redistributable RPM file copies the artifacts into
        release/dist/rpm, so confusing signed and unsigned artifacts
     * [SFOS-910] - the private RPMs .gz doesnt include the .gz that it 
needs
     * [SFOS-922] - Merge constraints logic from core-branch-constraints 
branch
     * [SFOS-928] - The fileList attribute of the Files component is a
       String, not a Vector as the documentation says
     * [SFOS-929] - NPE in FilesImpl
     * [SFOS-932] - SSH Bulk upload tests are failing
     * [SFOS-956] - some subclasses of ChildMinder don't have a fully
       typed Enumeration<> on their sfChildren() method
     * [SFOS-959] - make WaitForImpl easier to subclass
     * [SFOS-980] - testharness failing in parse
     * [SFOS-988] - security exception when starting RPM installation
       with security turned on


** Improvement
     * [SFOS-562] - provide better error messages when CONSTANT fails;
       add tests
     * [SFOS-840] - add commons-logging.properties file (with a priority)
       to automatically switch logging apps to SmartFrog logging
     * [SFOS-933] - Improve fileset diagnostics
     * [SFOS-936] - The AntWorkflowRun component doesn't report errors or
       fail as it should
     * [SFOS-937] - ListUtils tuple methods shoud use <?> as a type
       instead of <Object>
     * [SFOS-965] - need to set timeout values for java.net.URL connections
       in system properties.
     * [SFOS-990] - in EvaluateConditionImpl, resolve the message only
       when about to fail

** New Feature
     * [SFOS-744] - Add component to deploy/terminate EC2 VMs
     * [SFOS-852] - Write a redistributable build file to sign the JARs
       and create custom RPMs with these signed artifacts
     * [SFOS-957] - add a PingTarget component
     * [SFOS-963] - add a SecurityProperties component to set JVM
       security properties
     * [SFOS-985] - Add an inline CSV/tuple source


** Task
     * [SFOS-977] - Move all classes with a dependency on eclipse jar to
       their own package

** Sub-task
     * [SFOS-851] - write component to check disk space in java6+ JVM
     * [SFOS-981] - move eclipse classes to their own package
     * [SFOS-983] - Add tests that try and create solvers, triggering
       different failure modes

-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/

_______________________________________________
Smartfrog-users mailing list
Smartfrog-users-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org
https://lists.sourceforge.net/lists/listinfo/smartfrog-users
release_3.12.044.html (text/html, 11.6 KB)
<html>
<head>
  <title>SmartFrog 3.12.044</title>
</head>
<body>
<h1>SmartFrog 3.12.044</h1>

<p>
  This is a new release of SmartFrog, the Java-based, LPGL-licensed distributed
  deployment framework developed by HP Laboratories. SmartFrog enables
  applications to be deployed across multiple machines, configuring different
  aspects of the system so that they are all consistently configured, and managing
  the life-cycle of the application as a whole. The project's home page is
  <a href="http://smartfrog.org/">http://smartfrog.org/</a>
</p>

<p>
  The release artifacts are available at
  <a
          href="http://sourceforge.net/project/showfiles.php?group_id=87384&amp;package_id=176308">
    http://sourceforge.net/project/showfiles.php?group_id=87384&amp;package_id=176308</a>
</p>

<p>
  This release is 3.12.044; built from revision 7097
  of the SVN repository. This release has an extended language
  with the ability to tag attributes, and includes the following items:
</p>
<ul>

  <li> Core smartfrog daemon, including services to manage files, start and stop
    Java and native programs.
  </li>
  <li> Example components and applications.
  </li>
  <li> Ant support: ant tasks to deploy and terminate applications from a build.
  </li>
  <li> Ant components: the ability to execute ant tasks in a deployment.
  </li>
  <li> Anubis: a partition aware tuple-space that can be used to implement fault
    tolerant systems.
  </li>
  <li> Database: components to issue database commands, and deploy HSLDB and MySQL.
  </li>
  <li> JMX: the ability to configure and manage JMX components, and to manage
    SmartFrog components over JMX.
  </li>
  <li> Logging: integration with Apache commons-logging and Log4J
  </li>
  <li> Networking: email, FTP, SSH, DNS support.
  </li>
  <li> Quartz: scheduled operations using Quartz libraries.
  </li>
  <li> Scripting: support for BSF-hosted scripting languages
  </li>
  <li> Testing: Distributed JUnit and component testing with SFUnit.
  </li>
   <li>
    Velocity: generation/transformation of text files during deployment
  </li>
  <li> WWW: deployment of WAR and EAR files to application servers. deploy-by-copy
    is provided for all application servers that support, and a tomcat-specific
    component can communicate with Apache Tomcat. The Jetty component can
    configure and deploy individual servlets, eliminating much of the need for WAR
    files themselves.
  </li>
  <li> XML: XML support with XOM.
  </li>
  <li> XMPP: Presence and messaging over Jabber.
  </li>
</ul>

<h3>Packaging</h3>

<p>
  This release is available as:
</p>
<ol>
  <li>
    RPM files inside a .tar.gz file.
  </li>
  <li>
    A JAR installer.
  </li>
  <li>
    A .tar.gz file containing everything needed to create a private set of RPM files
    containing JAR files signed by a private Certification Authority.
  </li>
  <li>
    The original smartfrog distribution as .zip and .tar.gz (deprecated)
  </li>
</ol>

<p>
  The RPM installation is for RPM-based Linux systems. It comprises the following RPMs:
</p>

<table>
  <tr>
    <td><code>smartfrog</code></td>
    <td>The core SmartFrog distribution.</td>
  </tr>
  <tr>
    <td><code>smartfrog-daemon</code></td>
    <td>The shell scripts to add the smartfrog distribution to the
      path, and to run the daemon on start-up.
    </td>
  </tr>
  <tr>
    <td><code>smartfrog-javadoc</code></td>
    <td>javadocs for the project</td>
  </tr>
  <tr>
    <td><code>smartfrog-ant</code></td>
    <td>Ant task and build file execution</td>
  </tr>
  <tr>
    <td><code>smartfrog-anubis</code></td>
    <td>Distributed partition-aware tuple space</td>
  </tr>
  <tr>
    <td><code>smartfrog-csvfiles</code></td>
    <td>CSV file support</td>
  </tr>
  <tr>
    <td><code>smartfrog-database</code></td>
    <td>Database access</td>
  </tr>
  <tr>
    <td><code>smartfrog-jmx</code></td>
    <td>JMX integration though MX4J</td>
  </tr>
  <tr>
    <td><code>smartfrog-junit</code></td>
    <td>Junit 3.8.2 test execution</td>
  </tr>
  <tr>
    <td><code>smartfrog-logging</code></td>
    <td>Logging through Log4J and commons-logging</td>
  </tr>
  <tr>
    <td><code>smartfrog-networking</code></td>
    <td>SSH, SCP, FTP and email</td>
  </tr>
  <tr>
    <td><code>smartfrog-quartz</code></td>
    <td>Scheduled operations</td>
  </tr>
  <tr>
    <td><code>smartfrog-scripting</code></td>
    <td>Scripted components</td>
  </tr>
  <tr>
    <td><code>smartfrog-velocity</code></td>
    <td>Velocity template processing</td>
  </tr>
  <tr>
    <td><code>smartfrog-www</code></td>
    <td>Web support: Deployment and liveness pages</td>
  </tr>
  <tr>
    <td><code>smartfrog-xml</code></td>
    <td>XML Support</td>
  </tr>
  <tr>
    <td><code>smartfrog-xmpp</code></td>
    <td>XMPP/Jabber communications</td>
  </tr>
  <tr>
    <td><code>smartfrog-xunit</code></td>
    <td>Distributed testing and reporting</td>
  </tr>
</table>
<p>
  All the JAR files are also published to a repository that is compatible with
  Apache Maven and Ivy. Add
  <a
          href="http://smartfrog.sourceforge.net/repository">http://smartfrog.sourceforge.net/repository</a>
  to your repository list to pull SmartFrog artifacts into your Ivy- or Maven- based build.
</p>

<p>
  There are also SmartFrog components to retrieve artifacts from such a repository
  (the Library components under /org/smartfrog/services/os/java/library.sf ),
  which can be used for dynamic download of SmartFrog and other artifacts.
</p>

<h3>Security warning</h3>

<p>
  Unless SmartFrog is configured with security, a running daemon
  will listen on its configured port for incoming deployment requests, and deploy
  the applications with the rights of the user running the daemon. When the
  smartfrog-daemon RPM is installed, that means that a process running as root
  will be listening on an open port for incoming deployment requests.
  Do not deploy SmartFrog this way on any untrusted
  network, not without turning security on.
</p>
<p>
  There is a special distribution .tar.gz file that can be used to generate
  a private set of secure RPM files.
</p>

<h3>Building SmartFrog</h3>

<p>
  SmartFrog requires Java 1.5 and Ant 1.7 to build. 
</p>

<p>

  The distribution does not include a source tree adequate to build the entire
  system. Please follow the instructions at
  <a href="http://sourceforge.net/svn/?group_id=87384">http://sourceforge.net/svn/?group_id=87384
  </a>
  and check out smartfrog/trunk/core from our repository.
</p>

<p>

  This release was built with revision 7097 of the repository, which
  is available under the SVN branch
  <a href="https://smartfrog.svn.sourceforge.net/svnroot/smartfrog/tags/release3.12.044">https://smartfrog.svn.sourceforge.net/svnroot/smartfrog/tags/release3.12.044</a>
</p>

<p>
  We strongly encourage anyone interested in building or extending smartfrog to
  get involved in the smartfrog developer mailing list, which can be found from
  the sourceforge project page
  <a href="http://sourceforge.net/projects/smartfrog/">
    http://sourceforge.net/projects/smartfrog/</a>
</p>


<h3>Reporting Bugs</h3>

<p>
  Please file all bug reports at <a
        href="http://jira.smartfrog.org/">http://jira.smartfrog.org/</a>
</p>

<p>
  The SmartFrog Team
</p>


<h3>Changes since last release</h3>

    
<h3>        Bug
</h3>
<ul>
<li>[<a href='http://jira.smartfrog.org/jira/browse/SFOS-849'>SFOS-849</a>] -         Cannot start http server in junit outside the IDE
</li>
<li>[<a href='http://jira.smartfrog.org/jira/browse/SFOS-872'>SFOS-872</a>] -         Hudson fails during Ivy Tests
</li>
<li>[<a href='http://jira.smartfrog.org/jira/browse/SFOS-881'>SFOS-881</a>] -         redistributable RPM file copies the artifacts into release/dist/rpm, so confusing signed and unsigned artifacts
</li>
<li>[<a href='http://jira.smartfrog.org/jira/browse/SFOS-910'>SFOS-910</a>] -         the private RPMs .gz doesnt include the .gz that it needs
</li>
<li>[<a href='http://jira.smartfrog.org/jira/browse/SFOS-922'>SFOS-922</a>] -         Merge constraints logic from core-branch-constraints branch
</li>
<li>[<a href='http://jira.smartfrog.org/jira/browse/SFOS-928'>SFOS-928</a>] -         The fileList attribute of the Files component is a String, not a Vector as the documentation says
</li>
<li>[<a href='http://jira.smartfrog.org/jira/browse/SFOS-929'>SFOS-929</a>] -         NPE in FilesImpl
</li>
<li>[<a href='http://jira.smartfrog.org/jira/browse/SFOS-932'>SFOS-932</a>] -         SSH Bulk upload tests are failing
</li>
<li>[<a href='http://jira.smartfrog.org/jira/browse/SFOS-956'>SFOS-956</a>] -         some subclasses of ChildMinder don't have a fully typed Enumeration&lt;&gt; on their sfChildren() method
</li>
<li>[<a href='http://jira.smartfrog.org/jira/browse/SFOS-959'>SFOS-959</a>] -         make WaitForImpl easier to subclass
</li>
<li>[<a href='http://jira.smartfrog.org/jira/browse/SFOS-980'>SFOS-980</a>] -         testharness failing in parse
</li>
<li>[<a href='http://jira.smartfrog.org/jira/browse/SFOS-988'>SFOS-988</a>] -         security exception when starting RPM installation with security turned on
</li>
</ul>
        
<h3>        Improvement
</h3>
<ul>
<li>[<a href='http://jira.smartfrog.org/jira/browse/SFOS-562'>SFOS-562</a>] -         provide better error messages when CONSTANT fails; add tests
</li>
<li>[<a href='http://jira.smartfrog.org/jira/browse/SFOS-840'>SFOS-840</a>] -         add commons-logging.properties file (with a priority) to automatically switch logging apps to SmartFrog logging
</li>
<li>[<a href='http://jira.smartfrog.org/jira/browse/SFOS-933'>SFOS-933</a>] -         Improve fileset diagnostics
</li>
<li>[<a href='http://jira.smartfrog.org/jira/browse/SFOS-936'>SFOS-936</a>] -         The AntWorkflowRun component doesn't report errors or fail as it should
</li>
<li>[<a href='http://jira.smartfrog.org/jira/browse/SFOS-937'>SFOS-937</a>] -         ListUtils tuple methods shoud use &lt;?&gt; as a type instead of &lt;Object&gt;
</li>
<li>[<a href='http://jira.smartfrog.org/jira/browse/SFOS-965'>SFOS-965</a>] -         need to set timeout values for java.net.URL connections in system properties.
</li>
<li>[<a href='http://jira.smartfrog.org/jira/browse/SFOS-990'>SFOS-990</a>] -         in EvaluateConditionImpl, resolve the message only when about to fail
</li>
</ul>
    
<h3>        New Feature
</h3>
<ul>
<li>[<a href='http://jira.smartfrog.org/jira/browse/SFOS-744'>SFOS-744</a>] -         Add component to deploy/terminate EC2 VMs
</li>
<li>[<a href='http://jira.smartfrog.org/jira/browse/SFOS-852'>SFOS-852</a>] -         Write a redistributable build file to sign the JARs and create custom RPMs with these signed artifacts
</li>
<li>[<a href='http://jira.smartfrog.org/jira/browse/SFOS-957'>SFOS-957</a>] -         add a PingTarget component
</li>
<li>[<a href='http://jira.smartfrog.org/jira/browse/SFOS-963'>SFOS-963</a>] -         add a SecurityProperties component to set JVM security properties
</li>
<li>[<a href='http://jira.smartfrog.org/jira/browse/SFOS-985'>SFOS-985</a>] -         Add an inline CSV/tuple source
</li>
</ul>
        
<h3>        Task
</h3>
<ul>
<li>[<a href='http://jira.smartfrog.org/jira/browse/SFOS-977'>SFOS-977</a>] -         Move all classes with a dependency on eclipse jar to their own package
</li>
</ul>
    
<h3>        Sub-task
</h3>
<ul>
<li>[<a href='http://jira.smartfrog.org/jira/browse/SFOS-851'>SFOS-851</a>] -         write component to check disk space in java6+ JVM
</li>
<li>[<a href='http://jira.smartfrog.org/jira/browse/SFOS-981'>SFOS-981</a>] -         move eclipse classes to their own package
</li>
<li>[<a href='http://jira.smartfrog.org/jira/browse/SFOS-983'>SFOS-983</a>] -         Add tests that try and create solvers, triggering different failure modes
</li>
</ul>



</body>
</html>