如何解决Azure DevOps为Winforms应用程序构建PIpeline
我有一个WinForms应用程序。我已经为它创建了一个构建管道,但是无法在Artifacts中得到任何东西。
实际上,我需要在Zipped文件夹中构建项目。相同的任何参考将不胜感激。
以下是管道的Yaml文件。
trigger:
- master
pool:
vmImage: 'windows-latest'
variables:
solution: '**/*.sln'
buildplatform: 'Any cpu'
buildConfiguration: 'Release'
ScmBuildProject: 'DemoAppForAzurePipeLine'
steps:
- task: NuGetToolInstaller@1
- task: NuGetCommand@2
inputs:
restoreSolution: '$(solution)'
- task: VSBuild@1
inputs:
solution: '$(solution)'
platform: '$(buildplatform)'
configuration: '$(buildConfiguration)'
- task: VSTest@2
inputs:
platform: '$(buildplatform)'
configuration: '$(buildConfiguration)'
- task: PublishBuildArtifacts@1
displayName: 'Publish Artifact: $(ScmBuildName)'
inputs:
PathtoPublish: '$(build.artifactstagingdirectory)'
ArtifactName: '$(ScmBuildName)'
condition: succeededOrFailed()
解决方法
假设您的构建输出位于$(Build.SourcesDirectory)/YourProject/bin/release/'
,则可以使用archive task
- task: ArchiveFiles@2
inputs:
rootFolderOrFile: '$(Build.SourcesDirectory)/YourProject/bin/release/'
#includeRootFolder: true
#archiveType: 'zip' # Options: zip,7z,tar,wim
#tarCompression: 'gz' # Optional. Options: gz,bz2,xz,none
#archiveFile: '$(Build.ArtifactStagingDirectory)/$(Build.BuildId).zip'
#replaceExistingArchive: true
#verbose: # Optional
#quiet: # Optional
,然后将其放入archiveFile $(Build.ArtifactStagingDirectory)/$(Build.BuildId).zip'
将此步骤放在PublishBuildArtifacts
之前,应该没问题。请仔细检查您的二进制文件的输出路径(我的意思是这个$(Build.SourcesDirectory)/YourProject/bin/release/
)
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。