#1226: Suport for multiple public directory
-------------------------------+--------------------------------------------
 Reporter:  mug...@…           |        Owner:  impl    
     Type:  enhancement        |       Status:  reopened
 Priority:  normal             |    Milestone:  2.0     
Component:  build              |      Version:  1.0.2   
 Severity:  normal             |   Resolution:          
 Keywords:                     |    Has_patch:  0       
-------------------------------+--------------------------------------------

Comment(by MugeSo):

 Replying to [comment:10 felix]:
 Your code doesn't work :(

 I use
 {{{
   <target name="public-create2" depends="project-locate"
 description="Creates a structure for the public directory">
     <agavi.input property="public.dev" message="Name of development
 directory" default="pub" promptCharacter=":" failIfEmpty="true"
 ignoreIfSet="true" />
     <agavi.input property="public.directory.input" message="Location of
 the public directory" default="${public.dev}" promptCharacter=":"
 failIfEmpty="true"/>
     <resolvepath propertyName="public.directory"
 dir="${project.directory}" file="${public.directory.input}" />
     <agavi.input property="public.environment" message="Name of the
 environment to bootstrap in dispatcher scripts" default="development"
 promptCharacter=":" failIfEmpty="true" ignoreIfSet="true" />
     <mkdir dir="${public.directory}" />

     <agavi.input property="target.public-create.create-htaccess"
 message="Should an Apache .htaccess file with rewrite rules be generated
 (y/n)" promptCharacter="?" default="n" failIfEmpty="true"
 ignoreIfSet="true" />
     <if>
       <or>
         <equals arg1="${target.public-create.create-htaccess}" arg2="yes"
 trim="true" casesensitive="false" />
         <equals arg1="${target.public-create.create-htaccess}" arg2="y"
 trim="true" casesensitive="false" />
         <equals arg1="${target.public-create.create-htaccess}" arg2="true"
 trim="true" casesensitive="false" />
       </or>
       <then>
         <agavi.input property="public.base" message="Document-root-
 relative path to '${public.directory}/'" default="/" promptCharacter=":"
 failIfEmpty="true" ignoreIfSet="true" />
         <copy tofile="${public.directory}/.htaccess"
 file="${project.directory}/${project.directory.dev}/${public.dev}/.htaccess">
           <filterchain>
             <replacetokens begintoken="%%" endtoken="%%">
               <token key="AGAVI_SOURCE_LOCATION"
 value="${agavi.directory.src}" />
               <token key="PROJECT_LOCATION" value="${project.directory}"
 />
               <token key="PROJECT_PREFIX" value="${project.prefix}" />
               <token key="PUBLIC_BASE" value="${public.base}" />
               <token key="PUBLIC_ENVIRONMENT"
 value="${public.environment}" />
             </replacetokens>
           </filterchain>
         </copy>
       </then>
     </if>

     <copy todir="${public.directory}" overwrite="true">
       <mapper type="regexp" from="^(?!\.htaccess).+" to="\0" />
       <fileset
 dir="${project.directory}/${project.directory.dev}/${public.dev}">
         <include name="**/*" />
       </fileset>
       <filterchain>
         <replacetokens begintoken="%%" endtoken="%%">
           <token key="AGAVI_SOURCE_LOCATION"
 value="${agavi.directory.src}" />
           <token key="PROJECT_LOCATION" value="${project.directory}" />
           <token key="PROJECT_PREFIX" value="${project.prefix}" />
           <token key="PUBLIC_ENVIRONMENT" value="${public.environment}" />
         </replacetokens>
       </filterchain>
     </copy>
   </target>
  }}}

-- 
Ticket URL: <http://trac.agavi.org/ticket/1226#comment:11>
Agavi <http://www.agavi.org/>
An MVC Framework for PHP5



_______________________________________________
Agavi Tickets Mailing List
[email protected]
http://lists.agavi.org/mailman/listinfo/tickets

Reply via email to