classes/BuildTasks.php
static function run_generate_package_filelist( $task=null, $args=array(), $cliopts=array() )
    {
        $opts = self::getOpts( @$args[0], @$args[1], $cliopts );
        if ( $opts['create']['ezpackage'] || $opts['create']['pearpackage'] )
        {
            if ( !SharedLock::acquire( $opts['extension']['name'], LOCK_EX, $opts ) )
                throw new PakeException( "Source code locked by another process" );

            $doc = new DOMDocument( '1.0', 'utf-8' );
            $doc->formatOutput = true;

            $packageRoot = $doc->createElement( 'extension' );
            $packageRoot->setAttribute( 'name', $opts['extension']['name'] );

            $rootpath =  pakeFinder::type( 'directory' )->name( $opts['extension']['name'] )->in( self::getBuildDir( $opts ) );
            $dirs =  pakeFinder::type( 'directory' )->in( self::getBuildDir( $opts ) . '/' . $opts['extension']['name'] );
            foreach( $dirs as $dir )
            {
                $name = basename( $dir );
                $path = dirname( $dir );
                $path = str_replace( array( $rootpath[0], '\\' ), array( '', '/' ), $path );
                $fileNode = $doc->createElement( 'file' );
                $fileNode->setAttribute( 'name', $name );
                if ( $path )
                    $fileNode->setAttribute( 'path', $path );
                $fileNode->setAttribute( 'type', 'dir' );
                $packageRoot->appendChild( $fileNode );
            }
            $files =  pakeFinder::type( 'file' )->in( self::getBuildDir( $opts ) . '/' . $opts['extension']['name'] );
            foreach( $files as $file )
            {
                //$dir = ;
                $name = basename( $file );
                $path = dirname( $file );
                $path = str_replace( array( $rootpath[0], '\\' ), array( '', '/' ), $path );
                $fileNode = $doc->createElement( 'file' );
                $fileNode->setAttribute( 'name', $name );
                if ( $path )
                    $fileNode->setAttribute( 'path', $path );
                $fileNode->setAttribute( 'md5sum', md5_file( $file ) );
                $packageRoot->appendChild( $fileNode );
            }
            $doc->appendChild( $packageRoot );

            $doc->save( self::getBuildDir( $opts ) . '/extension-' . $opts['extension']['name'] . '.xml' );
            pake_echo_action( 'file+', self::getBuildDir( $opts ) . '/extension-' . $opts['extension']['name'] . '.xml' );

            SharedLock::release( $opts['extension']['name'], LOCK_EX, $opts );
        }
    }
static function run_generate_package_filelist( $task=null, $args=array(), $cliopts=array() )
    {
        $opts = self::getOpts( @$args[0], @$args[1], $cliopts );
        if ( $opts['create']['ezpackage'] || $opts['create']['pearpackage'] )
        {
            if ( !SharedLock::acquire( $opts['extension']['name'], LOCK_EX, $opts ) )
                throw new PakeException( "Source code locked by another process" );

            $doc = new DOMDocument( '1.0', 'utf-8' );
            $doc->formatOutput = true;

            $packageRoot = $doc->createElement( 'extension' );
            $packageRoot->setAttribute( 'name', $opts['extension']['name'] );

            $rootpath =  pakeFinder::type( 'directory' )->name( $opts['extension']['name'] )->in( self::getBuildDir( $opts ) );
            $dirs =  pakeFinder::type( 'directory' )->in( self::getBuildDir( $opts ) . '/' . $opts['extension']['name'] );
            foreach( $dirs as $dir )
            {
                $name = basename( $dir );
                $path = dirname( $dir );
                $path = str_replace( array( $rootpath[0], '\\' ), array( '', '/' ), $path );
                $fileNode = $doc->createElement( 'file' );
                $fileNode->setAttribute( 'name', $name );
                if ( $path )
                    $fileNode->setAttribute( 'path', $path );
                $fileNode->setAttribute( 'type', 'dir' );
                $packageRoot->appendChild( $fileNode );
            }
            $files =  pakeFinder::type( 'file' )->in( self::getBuildDir( $opts ) . '/' . $opts['extension']['name'] );
            foreach( $files as $file )
            {
                //$dir = ;
                $name = basename( $file );
                $path = dirname( $file );
                $path = str_replace( array( $rootpath[0], '\\' ), array( '', '/' ), $path );
                $fileNode = $doc->createElement( 'file' );
                $fileNode->setAttribute( 'name', $name );
                if ( $path )
                    $fileNode->setAttribute( 'path', $path );
                $fileNode->setAttribute( 'md5sum', md5_file( $file ) );
                $packageRoot->appendChild( $fileNode );
            }
            $doc->appendChild( $packageRoot );

            $doc->save( self::getBuildDir( $opts ) . '/extension-' . $opts['extension']['name'] . '.xml' );
            pake_echo_action( 'file+', self::getBuildDir( $opts ) . '/extension-' . $opts['extension']['name'] . '.xml' );

            SharedLock::release( $opts['extension']['name'], LOCK_EX, $opts );
        }
    }
static function run_generate_package_filelist ( $ task = null , $ args = array ( ) , $ cliopts = array ( ) ) { $ opts = self :: getOpts ( @ $ args [ 0 ] , @ $ args [ 1 ] , $ cliopts ) ; if ( $ opts [ 'create' ] [ 'ezpackage' ] || $ opts [ 'create' ] [ 'pearpackage' ] ) { if ( ! SharedLock :: acquire ( $ opts [ 'extension' ] [ 'name' ] , LOCK_EX , $ opts ) ) throw new PakeException ( "Source code locked by another process" ) ; $ doc = new DOMDocument ( '1.0' , 'utf-8' ) ; $ doc -> formatOutput = true ; $ packageRoot = $ doc -> createElement ( 'extension' ) ; $ packageRoot -> setAttribute ( 'name' , $ opts [ 'extension' ] [ 'name' ] ) ; $ rootpath = pakeFinder :: type ( 'directory' ) -> name ( $ opts [ 'extension' ] [ 'name' ] ) -> in ( self :: getBuildDir ( $ opts ) ) ; $ dirs = pakeFinder :: type ( 'directory' ) -> in ( self :: getBuildDir ( $ opts ) . '/' . $ opts [ 'extension' ] [ 'name' ] ) ; foreach ( $ dirs as $ dir ) { $ name = basename ( $ dir ) ; $ path = dirname ( $ dir ) ; $ path = str_replace ( array ( $ rootpath [ 0 ] , '\\' ) , array ( '' , '/' ) , $ path ) ; $ fileNode = $ doc -> createElement ( 'file' ) ; $ fileNode -> setAttribute ( 'name' , $ name ) ; if ( $ path ) $ fileNode -> setAttribute ( 'path' , $ path ) ; $ fileNode -> setAttribute ( 'type' , 'dir' ) ; $ packageRoot -> appendChild ( $ fileNode ) ; } $ files = pakeFinder :: type ( 'file' ) -> in ( self :: getBuildDir ( $ opts ) . '/' . $ opts [ 'extension' ] [ 'name' ] ) ; foreach ( $ files as $ file ) { //$dir = ;
 $ name = basename ( $ file ) ; $ path = dirname ( $ file ) ; $ path = str_replace ( array ( $ rootpath [ 0 ] , '\\' ) , array ( '' , '/' ) , $ path ) ; $ fileNode = $ doc -> createElement ( 'file' ) ; $ fileNode -> setAttribute ( 'name' , $ name ) ; if ( $ path ) $ fileNode -> setAttribute ( 'path' , $ path ) ; $ fileNode -> setAttribute ( 'md5sum' , md5_file ( $ file ) ) ; $ packageRoot -> appendChild ( $ fileNode ) ; } $ doc -> appendChild ( $ packageRoot ) ; $ doc -> save ( self :: getBuildDir ( $ opts ) . '/extension-' . $ opts [ 'extension' ] [ 'name' ] . '.xml' ) ; pake_echo_action ( 'file+' , self :: getBuildDir ( $ opts ) . '/extension-' . $ opts [ 'extension' ] [ 'name' ] . '.xml' ) ; SharedLock :: release ( $ opts [ 'extension' ] [ 'name' ] , LOCK_EX , $ opts ) ; } }
Generates the xml file listing all the files in the extension that is used as
part of an eZ Package description.

This task is only run if in the configuration file package creation is specified.
Generates the xml file listing all the files in the extension that is used as part of an eZ Package description .