利用 Azure CI Pipelines 帮助构建和准备要部署的工件,缩小的文件似乎被排除在准备好的工件之外。 查看构建日志,我可以看到文件已成功缩小:
Bundler: Begin processing bundleconfig.json Minified wwwroot/.../script.min.js
构建成功缩小了文件,但工件丢失了它们。这些文件没有位于错误的目录中,也没有位于工件中完全丢失的任何内容。
这是 CI 构建步骤:
- task: VSBuild@1
displayName: Build Solution
inputs:
solution: '$(solution)'
msbuildArgs: '/p:DeployOnBuild=true /p:WebPublishMethod=Package /p:PackageAsSingleFile=true /p:SkipInvalidConfigurations=true /p:PackageLocation="$(Build.ArtifactStagingDirectory)"'
platform: '$(buildPlatform)'
configuration: '$(buildConfiguration)'
NuGet 用于捆绑/缩小:https://github.com/madskristensen/BundlerMinifier
问题(不是我提出的,我确实尝试了那里的“解决方案”,但它不起作用)在他们的 GitHub 上:https://github.com/madskristensen/BundlerMinifier/issues/518
您可以在日志中发现at文件已成功缩小,并且
dir $(System.DefaultWorkingDirectory)
确实在其中找到了缩小的文件,您可以添加复制文件任务以将缩小的文件复制到工件目录中。
例如:
- task: CopyFiles@2
inputs:
SourceFolder: 'the path of the minified files'
Contents: '**'
TargetFolder: 'the path of your artifact directory'
- task: PublishBuildArtifacts@1
inputs:
PathtoPublish: 'the path of your artifact directory'
ArtifactName: 'drop'
publishLocation: 'Container'