Pergunta

Estou implantando a minha pacotes usando o teamcity e o polvo.Estou criando pacotes usando o teamcity e, em seguida, usando o Polvo para implantação em ambientes diferentes.Eu tenho uma pasta de Recursos que precisa ser copiado como um passo separado em teamcity.Agora eu quero que a pasta a ser incluído no pacote para que eu possa implantar o pacote para servidores remotos em outros domínios.Eu tenho definido o seguinte arquivo para incluir recursos da pasta para a pasta de conteúdo do projeto principal.mas o que está acontecendo é só criar uma pasta no destino, mas não copiar outros arquivos com o projeto.Por favor, guia de Tudo o que eu quero é incluir os recursos pasta com o pacote, junto com a minha publicar os arquivos do site.Eu só quero a pasta de recursos para ser parte do pacote.Por favor

 <?xml version="1.0" ?>
<package xmlns="http://schemas.microsoft.com/packaging/2010/07/nuspec.xsd">
 <metadata>
<id>Services</id>
<version>1.0.0.0</version>
<authors></authors>
<owners></owners>
<requireLicenseAcceptance>false</requireLicenseAcceptance>
<description>Services.nuspec build package</description>
<releaseNotes />
 </metadata>
 <files>
  <file src="..\Resources\**\*.*" target="Content\Resources" />
</files>
</package>

Conteúdo da embalagem depois de criar um pacote usando o código acima:-

 . _rels
 . package
 . content\resources 
 . [content_type
 . Services.nuspec
Foi útil?

Solução

Se você estiver usando OctoPack, esse comportamento é esperado.Para citar o documentação no GitHub:

Se o <files> seção existe, OctoPack não tenta adicionar automaticamente quaisquer ficheiros adicionais para o seu pacote, então você precisa ser explícito sobre os arquivos que você deseja incluir.

Se você seguir esse caminho, você precisará especificar todos os outros arquivos que você deseja incluir no <files> seção do nuspec.

Se você não estiver usando OctoPack, a mesma regra se aplica.Ver documentação em nuget.org

Se você seguir as convenções descritas na Criação de um Pacote, não é necessário especificar explicitamente uma lista de ficheiros na caixa .nuspec arquivo.Note que se você especificar todos os arquivos, as convenções são ignorados e apenas os ficheiros listados na .nuspec arquivo estão incluídos no pacote.

Atualização

Um método híbrido que eu vi é usado para usar o MSBuild Publicar alvo para criar e publicar o site para uma pasta local, (para filtrar todo o tempo de compilação de arquivos .cs source), queda adicionais de arquivos e, em seguida, basta incluir uma <file src="**/*.*" /> para embalar tudo sob a raiz da pasta de publicar.Requer um pouco de personalização com os caminhos de raiz / nuget.exe, mas que pode tornar o processo um pouco mais simples e um pouco menos manutenção.

Informações úteis aqui que podem ajudar você a começar.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top