Construindo um arquivo WSP no Desenvolver Máquina
-
16-09-2019 - |
Pergunta
Na minha máquina de desenvolvimento Eu instalei VSeWSS 1.3 e configurado o local do IIS 6 para que eu possa meu projeto SharePoint construção e deploy a < strong> WSP gerado arquivo para a máquina local. O arquivo WSP é gerado pela etapa de Embalagens, que posso instalar com sucesso em outras máquinas.
Agora eu tenho que migrar meu projeto para a nossa máquina de compilação que atualmente não tem SharePoint instalado e não está configurado para VSeWSS (sem web terminal de serviço VSeWSS). Existe uma maneira de automatizar a construção do arquivo WSP sem a necessidade de configurar o IIS na máquina de compilação para uso com o SharePoint e VSeWSS?
Alguns dos livros descrevem o passo Manual de usar MakeCab.exe e definindo um DDF arquivo, mas eu não vejo qualquer arquivo DDF gerado pelo VSeWSS (se ele talvez gerado em uma pasta TEMP que eu poderia usar para configurar o meu processo de compilação automatizada?).
Solução
Eu só enfrentou o mesmo problema. Optei por outra ferramenta para o desenvolvimento de toda a solução: Eu encontrei WSPBuilder
muito mais limpo e menos intrusivo. Ele também pode ser usado a partir da linha de comando, que é ótimo para arquivos de compilação.
Eu modifiquei alguns scripts Nant criados por Bil Simser , a fim de compilar e implantar o projeto e mover o código de VSeWSS para WSPBuilder. Ele funciona como um encanto, quer na minha máquina ou na máquina de compilação.
Você pode encontrar WSPBuilder em http://www.Codeplex.com , e essas metas precisam NAntContrib ( on www.tigris.org ) ao trabalho.
Aqui estão algumas das metas que estou usando:
<target name="build" depends="compile">
<copy todir="${build.dir}\12\">
<fileset basedir="${sharepoint.dir}\12">
<include name="**/*"/>
</fileset>
</copy>
<copy
file="${sharepoint.dir}\solutionid.txt"
tofile="${build.dir}\solutionid.txt"
/>
<call target="buildsolutionfile" />
</target>
<target name="buildsolutionfile">
<exec program="${wspbuilder.exe}" workingdir="${build.dir}">
<arg value="-BuildDDF"/>
<arg value="${debug}"/>
<arg value="-Cleanup"/>
<arg value="false"/>
<arg value="-FolderDestination"/>
<arg value="${build.dir}"/>
<arg value="-Outputpath"/>
<arg value="${build.dir}"/>
<arg value="-TraceLevel"/>
<arg value="verbose"/>
</exec>
<copy
file="${build.dir}\${package.file}"
tofile="${solution.dir}\${package.file}"/>
</target>
<target name="addsolution">
<exec program="${stsadm.exe}" verbose="${verbose}">
<arg value="-o" />
<arg value="addsolution" />
<arg value="-filename" />
<arg value="${solution.dir}\${package.file}" />
</exec>
<call target="spwait" />
</target>
<target name="spwait" description="Waits for the timer job to complete.">
<exec program="${stsadm.exe}" verbose="${verbose}">
<arg value="-o" />
<arg value="execadmsvcjobs" />
</exec>
</target>
<target name="app.pool.reset" description="Resets Sharepoint's application pool.">
<iisapppool action="Restart" pool="${apppool}" server="${server}" />
</target>
<target name="deploysolution" depends="addsolution">
<exec program="${stsadm.exe}" workingdir="${build.dir}" verbose="${verbose}">
<arg value="-o" />
<arg value="deploysolution" />
<arg value="-name" />
<arg value="${package.file}" />
<arg value="-immediate" />
<arg value="-allowgacdeployment" />
<arg value="-allcontenturls" />
<arg value="-force" />
</exec>
<call target="spwait" />
<call target="app.pool.reset" />
</target>