У нас есть требование включить дополнительные файлы, которые не включены в проект, потому что они генерируются веб-пакетом другим проектом внешнего интерфейса.
Я следил за этой статьей (https://tedgustaf.com/blog/2011/customize-an-aspnet-project-to-control-which-files-are-included-when-publishing-or-deploying/), и он прекрасно работает локально на VS 2019, когда я публикую, но не работает с Azure DevOps Build.
Может кто-нибудь посоветовать, что яотсутствует?
Обновление - 05/11/19
Ниже приведена структура папок моего исходного кода
SolutionName
.... WebSite
.... FrontEnd
.... DataAccess
«Модуль сборки npm», который мы запускаем через веб-пакет исоздать минимизированные css и js в проекте FrontEnd и скопировать их в папку dist на веб-сайте, а также скопировать дополнительные файлы scss в проект веб-сайта.
webpack скопировать файлы фрагменты кода
new CopyWebpackPlugin([
{ from: 'assets/images', to: 'assets/images' },
{ from: 'assets/icons', to: 'assets/icons' },
{ from: 'src/sass', to: '../theme-src/sass' },
{ from: 'node_modules/bootstrap/scss', to: '../node_modules/bootstrap/scss' },
{ from: 'node_modules/font-awesome/scss', to: '../node_modules/font-awesome/scss' },
{ from: 'node_modules/font-awesome/fonts', to: '../node_modules/font-awesome/fonts' },
Website.csproj copyфайлы для публикации.
<Import Project="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v10.0\WebApplications\Microsoft.WebApplication.targets" Condition="false" />
<PropertyGroup>
<CopyAllFilesToSingleFolderForPackageDependsOn>
CustomCollectFiles;
$(CopyAllFilesToSingleFolderForPackageDependsOn);
</CopyAllFilesToSingleFolderForPackageDependsOn>
</PropertyGroup>
<Target Name="CustomCollectFiles">
<!-- Copy minified JavaScript & Css files -->
<ItemGroup>
<DistFolderFiles Include="dist\**\*.*" />
<FilesForPackagingFromProject Include="%(DistFolderFiles.Identity)">
<DestinationRelativePath>dist\%(RecursiveDir)%(Filename)%(Extension)</DestinationRelativePath>
</FilesForPackagingFromProject>
</ItemGroup>
<!-- Copy Sass files for themeing -->
<ItemGroup>
<ThemeSrcFolderFiles Include="theme-src\**\*.*" />
<FilesForPackagingFromProject Include="%(ThemeSrcFolderFiles.Identity)">
<DestinationRelativePath>theme-src\%(RecursiveDir)%(Filename)%(Extension)</DestinationRelativePath>
</FilesForPackagingFromProject>
</ItemGroup>
<!-- Copy Sass files for themeing dependency -->
<ItemGroup>
<NodeModulesFolderFiles Include="node_modules\**\*.*" />
<FilesForPackagingFromProject Include="%(NodeModulesFolderFiles.Identity)">
<DestinationRelativePath>node_modules\%(RecursiveDir)%(Filename)%(Extension)</DestinationRelativePath>
</FilesForPackagingFromProject>
</ItemGroup>
</Target>