1

Azure DevOps(一)基于 Net6.0 的 WPF 程序如何进行持续集成、持续编译 - Grant_Alle...

 1 year ago
source link: https://www.cnblogs.com/AllenMaster/p/17334566.html
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client

  我们是否正在为如何快速的编译、部署客户端应用程序而烦恼?这也是博主最近遇到的问题。目前博主所在公司主要做项目级的定制化开发,多以 C/S 架构的 WPF 程序为主,每次到了协助开发团队给实施团队编译好的要测试程序包时,就会出现多人协助,编译、打包好的二进制程序包 pull 最新代码 ,以及实施同事无法及时的获取到有新程序发布的通知等问题。有了这样的背景,博主所在团队开始准备开始了解,使用团队协作系统 ----- Azure DevOps,通过自动化软件交付来为用户提供持续价值。

1, Azure DevOps 创建项目

Project name:”NetCore_WPF_Sample“

Visibility:”Private“(根据实际项目需求)

Version control:”Git“

Work item process:”Agile“

点击 ”Create“ 创建新的项目

1996262-20230419210521723-1761251497.png

2,配置 Azure DevOps 流水线

选择 ”Pipelines =》“pepelines“,点击 ”Create Pipeline“ 创建持续集成管道

1996262-20230419214224253-802466053.png

选择 ”GitHUb“ Yaml

1996262-20230419214823754-2038567275.png

选择好需要项目,开始配置 ”azure-pipelines.yml“

# .NET Desktop
# Build and run tests for .NET Desktop or Windows classic desktop solutions.
# Add steps that publish symbols, save build artifacts, and more:
# https://docs.microsoft.com/azure/devops/pipelines/apps/windows/dot-net

trigger:
- master

pool:
  vmImage: 'windows-latest'

variables:
  solution: '**/*.sln'
  buildPlatform: 'Any CPU'
  buildConfiguration: 'Release'

steps:
- task: NuGetToolInstaller@1

- task: NuGetCommand@2
  inputs:
    restoreSolution: '$(solution)'

- task: VSBuild@1
  inputs:
    solution: '$(solution)'
    platform: '$(buildPlatform)'
    configuration: '$(buildConfiguration)'
    clean: true

- task: VSTest@2
  inputs:
    platform: '$(buildPlatform)'
    configuration: '$(buildConfiguration)'

- task: PublishSymbols@2
  displayName: 'Publish symbols path'
  inputs:
    SearchPattern: '**\bin\**\*.pdb'
    PublishSymbols: false
  continueOnError: true

- task: CopyFiles@2
  displayName: 'Copy Files to: $(build.artifactstagingdirectory)'
  inputs:
    SourceFolder: 'Standard.Tool.Platform'
    Contents: '**\bin\$(BuildConfiguration)\**'
    TargetFolder: '$(build.artifactstagingdirectory)'
  condition: succeededOrFailed()

调整完 yml 文件后,点击 ”Run“ 执行 pipeline 

1996262-20230419215608938-1158152663.png

点击 ”Run“ 开始执行

1996262-20230419220118660-775680584.png

此时我们的 pipeline 任务正在执行,我们可以点击 ”Job“ 查看详细作业

1996262-20230419221001766-57634701.png

 作业完成后,我们就可以看到编译好的程序包

1996262-20230419221826830-146117745.png

 点击 ”Download artifacts“ 直接下载编译好的二进制程序包

1996262-20230419222003954-1115183816.png

Bingo!!!🎉✌️🎉✌️🎉✌️🎉✌️

此演示步骤实现了 NET 的桌面应用程序的持续集成与持续编译,当我们 pipeline 监测到 master 分支有变动后,就会立即执行管道作业,可以确保我们不必再人工拉取代码,编译,发布二进制程序包了。

   通过 Azure DevOps 的 Pipeline 实现的开发团队协助是一个不错的选择。今天的内容也主要是实战操作,大家也多多练习。熟能生巧。本文所分享的内容也存在着很多我自己的一些理解,有理解不到位的,还希望多多包涵,并且指出不足之处。

作者:Allen 

版权:转载请在文章明显位置注明作者及出处。如发现错误,欢迎批评指正。

作者:Allen 版权:转载请在文章明显位置注明作者及出处。如发现错误,欢迎批评指正。

Recommend

  • 7

    基于GitLab CI、Docker的Node.js持续集成部署方案

  • 4
    • muxiaobai.github.io 3 years ago
    • Cache

    devops之jenkins持续集成

    分两步走,第一安装,第二配置 chown -R 1000 /root/jenkins_homechmod 777 /var/run/docker.sockdocker 创建jenkins工具持续集成拉取镜像 docker pulljenkins/jenkins 8080映射到16000...

  • 8

    持续集成简介 持续集成(Continuous integration)是一种软件开发实践,即团队开发成员经常集成它们的工作,通过每个成员每天至少集成一次,也就意味着每天可能会发生多次集成。成员之间的代码相互影响,可能会出现各种编译、运行的错...

  • 1

    【DevOps】Jenkins任务基于Tag进行构建 - paulwong - BlogJava paulwong My Links Blog Stats Posts - 1066 Stories - 10

  • 6

    dotnet 部署 github 的 Action 进行持续集成被微软收购的 GitHub 现在十分土豪,提供了免费的服务器给咱构建。刚好微软对 dotnet 的支持是特别好的,毕竟还算半个自家的东西,大概只需要 3 分钟就可以在 github 上通过 Action 部署持续集成,本文以 Source...

  • 12

    Vue SSR基于Coding的持续集成部署实践(CI/CD)Apr 26, 2021 标签:Vue持续集成

  • 14

    如何集成DevOps、SecOps 和 NetOps 不同诉求?随着微服务的兴起和远离单体架构的转变,IT 和DevOps

  • 5

    持续集成实战四——Jenkins集成Sonar进行代码质量管理 | CHEGVACHEGVA让我们面对现实 让我们忠于理想 ☘ 随机文章☯ 传统文化☺ 近期评论⌚ 博客统...

  • 4
    • netsecurity.51cto.com 2 years ago
    • Cache

    如何安全地进行混合云集成

    如何安全地进行混合云集成-51CTO.COM 如何安全地进行混合云集成 作者:Harris编译 2022-07-04 10:11:33 安全挑战不仅仅是那些希望拥抱云的人的障碍。对于那些已经拥有混合架构的企业...

  • 6

    如何让首席执行官对DevOps进行深度投资 责任编辑:cres 作者:Navya Manoj |  2022-12-02 13:30:11 原创文章 企业网D1Net 企业如何适应文化变革、组织关键指标、实施自动化,以及最重要的是如何在软件...

About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK