I am sponsoring this case for Amanda Waite; timeout set for Oct.22.
The case updates lighttpd version and refactors its packaging.


Template Version: @(#)sac_nextcase 1.68 02/23/09 SMI
This information is Copyright 2009 Sun Microsystems
1. Introduction
    1.1. Project/Component Working Name:
         Updating Lighttpd in OpenSolaris and repackaging spawn-fcgi
    1.2. Name of Document Author/Supplier:
         Author:  Amanda Waite
    1.3  Date of This Document:
        15 October, 2009
4. Technical Description

Updating Lighttpd in OpenSolaris and repackaging spawn-fcgi

Amanda Waite <amanda.waite at sun.com>

13 October 2009

1. Summary and motivation

    1.1. Introduction

    This project will update Lighttpd in OpenSolaris to version 1.4.23.
    As part of the upgrade, spawn-fcgi will be broken out into a
    separate package. This case also adds support for Lighttpd
    loadable modules that require the Lua programming language and
    will also include a change to the packaged Lighttpd configuration
    file requested by the upstream community.

2. Technical Description

    2.1. Details

    Version 1.4.23 of the Lighttpd web server sees the refactoring of the
    spawn-fcgi utility into a separate source distribution. This case
    proposes that we break out spawn-fcgi into a separate package
    while maintaining the Lighttpd interfaces provided by the existing
    Lighttpd packages through the use of symbolic links and
    dependencies.

    The spawn-fcgi paths delivered previously by lighttpd are retained
    but will be converted to symlinks by this case (details below).
    These symlinks are declared Obsolete and customers will be
    encouraged to start referencing spawn-fcgi by its new location.

    The symlinks will later be removed by a future case, not by this case.

    2.2. Ongoing updates

    Updates to the spawn-fcgi interfaces will delivered by the
    spawn-fcgi package (proposed as SUNWspawn-fcgi)

    2.3 Changes to loadable modules

    The mod_magnet and mod_cml loadable modules are now built against
    the Lua libraries integrated with LSARC/2009/013. mod_magnet is
    one of the key lighttpd differentiators over Apache. mod_magnet
    and mod_cml already exist in SUNWlighttpd14u but are effectively
    'stub' modules in that they do nothing.

    2.4 Changes to the configuration file

    At the request of the upstream Lighttpd community this case will remove
    the line:

    server.max-workers = 4

    from the default Lighttpd configuration file. Running Lighttpd
    with multiple workers is not supported by the upstream community.

    Upgrades to the Lighttpd packages will not clobber the existing
    configuration file.  If a user reports an issue that is fixed by
    not running with multiple workers, then they will be informed that
    they will need to modify their setup, either by moving to a single
    worker setup or by not using modules that are affected by the
    issue. A note to this effect will be added to the lighttpd.1m,
    lighttpd.1 and spawn-fcgi.1 man pages.

    2.5 spawn-fcgi

    The spawn-fcgi executable and it's manpage will be delivered as a
    separate package.

    The Lighttpd package: SUNWlighttpd14u will include a dependency on
    the spawn-fcgi package and will provide symbolic links from the
    existing locations of the executable and manpage to the locations
    delivered by the spawn-fcgi package, i.e.:

    /usr/lighttpd/1.4/bin/spawn-fcgi -> /usr/bin/spawn-fcgi

    /usr/lighttpd/1.4/share/man/man1/spawn-fcgi.1
                                       -> /usr/share/man/man1/spawn-fcgi.1

    2.6 Obsolescence of Lighttpd spawn-fcgi interfaces

    The following file paths will be obsoleted:

    /usr/lighttpd/1.4/bin/spawn-fcgi
    /usr/lighttpd/1.4/share/man/man1/spawn-fcgi.1

    Lighttpd has no specific dependency on spawn-fcgi, it has it's own
    mechanism for starting and stopping backend processes. Therefore
    it is expected that this change will have limited impact on
    existing deployments. Where spawn-fcgi is being used no change
    will be required initially as the existing file paths will be
    preserved through the use of Symbolic Links (See section 2.5).
    Once these links are removed end users will need to update
    existing scripts and services with the paths delivered by
    SUNWspawn-fcgi.

3. Spawn-fcgi technical details

    3.1. Key objects

        /usr/bin/spawn-fcgi

    3.2. Versioning

        The versioning model for spawn-fcgi is <major>.<minor>.<micro>.

        The compatibility expectations for spawn-fcgi are as follows:

        (1) Version x.y.z is compatible for different values of z,
                        such that z >= 0.
        (2) Version x.y.z is not expected to be compatible for different
                        values of x or y

    3.3 Directory Naming and Structure

        Refer to Appendix 1 for file layout.


4.
    4.1 Changes/Additions to Imported Interfaces

    NAME            STABILITY    ARC CASE         NOTES
    ---------------------------------------------------
    Lua             Uncommitted  LSARC/2009/013   Added


    4.2 Changes to Exported Interfaces

    NAME                                      STABILITY               NOTES
    ---------------------------------------------------------------------------
    /usr/lighttpd/1.4/bin/spawn-fcgi          Obsolete Uncommitted    Obsoleted
    /usr/lighttpd/1.4/man/man1/spawn-fcgi.1   Obsolete Uncommitted    Obsoleted
    SUNWspawn-fcgi                            Committed               Pkg name
    spawn-fcgi command line options           Uncommitted
    /usr/bin/spawn-fcgi                       Uncommitted             Location


5. Packaging and Delivery

   The exisiting Lighttpd packages: SUNWlighttpd14u and
   SUNWlighttpd14r will remain and the following package will be added:

   SUNWspawn-fcgi - spawn-fcgi executable and man pages

6. References


================================================================
Appendix 1: Lighttpd Integration Directory and File Structure.

1. The following files are new or updated by this case:

/usr
    /bin
        /spawn-fcgi
    /lighttpd/1.4
                 /bin
                      /spawn-fcgi=>../../../bin/spawn-fcgi
                 /man/man1
                          /spawn-fcgi.1=>../../../share/man/man1/spawn-fcgi.1
    /share/man
              /man1
                   /spawn-fcgi.1




6. Resources and Schedule
    6.4. Steering Committee requested information
        6.4.1. Consolidation C-team Name:
                sfw
    6.5. ARC review type: FastTrack
    6.6. ARC Exposure: open

Reply via email to