基于DotNetty实现一个接口自动发布工具 - 背景篇

故事背景

小公司,单体项目,接口和页面都在一起,生产和测试环境都是 Windows 服务器和 IIS, 本地编译完成,把相关的页面和程序集拷贝到服务器上,尤其是涉及到多个页面,一个个页面找到对应的位置,再到服务器上找到对应的位置拷贝进去,甚至还有备份等操作,不胜其烦,因为历史遗留原因,项目是基于.net4.5 开发的,项目也比较大,基本不可能重写,也不可能每次都全量发布,文件很大,很慢,至于在服务器编译更不考虑,测试服务器内存只有 4G,跑了好几个项目,所有萌生了自己开发一个自动发布工具的想法。

总体设想

  1. 通过 git 获取自上次发布以来修改的代码, 解析出需要发布的文件. (页面或 dll 等)
  2. 封装待发布的文件为 DeployFileInfo, 记录文件类型,文件路径,和在服务器的文件路径等
  3. 把所有文件打包为 zip, 通过 DotNetty 发送到服务器
  4. 服务器解析 zip, 执行备份, 替换发布文件, 记录发布历史等

涉及的技术栈

  • .NET 8.0
  • DotNetty
  • WPF
  • HandyControl
  • CommunityToolkit.Mvvm
  • Windows Service
  • IIS
  • Git
  • LibGit2Sharp
  • SQLite
  • AutoMapper

代码仓库

项目暂且就叫 OpenDeploy

欢迎大家拍砖,Star

计划

一点点的实现构想中的内容,加油

相关推荐

  1. 基于DotNetty实现一个接口自动发布工具 - 背景

    2023-12-04 16:43:53       56 阅读
  2. 新需求:实现一个自动运维部署工具

    2023-12-04 16:43:53       27 阅读
  3. 简单实现接口自动化测试(基于python)

    2023-12-04 16:43:53       31 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2023-12-04 16:43:53       98 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2023-12-04 16:43:53       106 阅读
  3. 在Django里面运行非项目文件

    2023-12-04 16:43:53       87 阅读
  4. Python语言-面向对象

    2023-12-04 16:43:53       96 阅读

热门阅读

  1. 第二周的鲜花

    2023-12-04 16:43:53       48 阅读
  2. seafile获取token和文件夹ID

    2023-12-04 16:43:53       48 阅读
  3. 9

    9

    2023-12-04 16:43:53      42 阅读
  4. 97、Cell防止复用的两种方法

    2023-12-04 16:43:53       54 阅读
  5. 07

    07

    2023-12-04 16:43:53      46 阅读
  6. runsql

    2023-12-04 16:43:53       46 阅读
  7. 51单片机超声波测距

    2023-12-04 16:43:53       60 阅读
  8. Tekton pipelineruns 基础

    2023-12-04 16:43:53       53 阅读
  9. 10.27日

    2023-12-04 16:43:53       51 阅读
  10. 图论做题记录1

    2023-12-04 16:43:53       46 阅读
  11. [AGC063C] Add Mod Operations 题解

    2023-12-04 16:43:53       42 阅读
  12. Solution Set 2023.12.4

    2023-12-04 16:43:53       45 阅读
  13. mysql和Oracle 查询某个时间之内的数据

    2023-12-04 16:43:53       66 阅读
  14. 为什么stack和queue默认使用deque作为底层容器?

    2023-12-04 16:43:53       53 阅读
  15. sx

    sx

    2023-12-04 16:43:53      53 阅读
  16. CF1902 B Getting Points 题解

    2023-12-04 16:43:53       70 阅读
  17. .NET CORE架构分层

    2023-12-04 16:43:53       47 阅读
  18. Arkts build函数

    2023-12-04 16:43:53       54 阅读
  19. 浏览器中打开exe

    2023-12-04 16:43:53       57 阅读