首页 > 其他分享 >每周一坑-管理端和手机端版本号不一致

每周一坑-管理端和手机端版本号不一致

时间:2022-09-05 22:46:40浏览次数:68  
标签:ver 每周 版本号 admin 一坑 服务器 new 手机

管理端和手机端版本号不一致   话说A系统的生产环境,管理端和手机端前端静态目录是分开的,分别部署在两台服务器上,但,其实目录内容是完全一样的。其他环境(测试、体验)则合在一起。我之前做的一个版本号更新需求,写了好几篇文章【https://www.cnblogs.com/windysai/p/16200707.html】。   后面还优化过逻辑(一个临时文件判断状态),今天竟然有测试人员反馈,说版本号倒退:手机端比管理端版本号多一个小版本号。如下图:     管理端:

  手机端:

     然后前端知道这个事后,在他不知道我实现逻辑的前提下,说我每次发布都是读gitlab代码的.env 版本号,然后改掉再上传。。。

  我知道后无比郁闷,作为一个“宁为玉碎不为瓦全”的女子,绝对不能含冤受屈,特意给他们解释了实现逻辑,总结如下(逻辑实现上确实没问题,粗心的锅):

  每次发布真正读版本号的是服务器的版本号记录文件,并不是前端瞎扯的直接读 .env 版本号。因为如果手机端和管理端发布都要改这个文件,直接读.env版本号去取,会有偏颇。

(1)读服务器记录版本号的文件,取出上次发布的旧版本号(对应main分支.env版本号)   old_ver=服务器记录版本号的文件的旧版本号   new_ver=old_ver+1  其中old_ver 和 new_ver 顺便显示到jenkins控制台上 (下图的old_version 和 new_version 其实就是 old_ver 和 new_ver) 把new_ver 写入服务器的临时文件tmp(我后来想的优化,因为不一定会发布成功,也有可能发布任务过程中人为临时中断) (2)编译发布 (3)发布成功才把临时文件tmp的版本号,写入服务器记录版本号的文件 xxx_version.txt,再推送修改过版本号的代码回gitlab。

   大家可以想想为啥手机端会多了一个版本号?

  前面也说过,之前管理端和手机端合一起,所以更新版本号只需要做一次,现在分开,则两边都要做!!!

  我手机端仅仅改了,从gitlab拉下来的 .env 版本号,然后编译代码,最后忘记推送回gitlab了,如下图:

  服务器去到jenkins任务区间验证,确实是这个原因:

  解决这个问题也很容易,既然手机端没推送回gitlab,补一下就得了。

  而为了区分究竟是手机端还是管理端更新的版本号,我用了一个标识(pkg_deploy)去区分,admin表示管理端,mobile 则是手机端。

  临时文件要写入是admin还是mobile,例如发布管理端,则写入:

       echo admin ${new_ver} $DATE > admin_version_tmp.txt

  如果是手机端,则写入:

       echo mobile ${new_ver} $DATE > admin_version_tmp.txt

  最后统一调用更新版本号的jenkins任务:

 

 

 现在那个服务器的版本号记录文件变成这种形式:

admin 版本号a1  发布时间
mobile 版本号a1+1 发布时间
。。。。

 

标签:ver,每周,版本号,admin,一坑,服务器,new,手机
From: https://www.cnblogs.com/windysai/p/16659881.html

相关文章

  • windows系统命令行cmd查看显卡驱动版本号CUDA
    Win+R 输入cmd进入命令行输入nvidia-smi  ......
  • 每周总结9
    进行全选\全不选全选反选的应用<!DOCTYPEhtml><htmllang="en"><head><metacharset="UTF-8"><title>Title</title><scripttype="text/javascript......
  • <dependencyManagement>正确使用方法 多个子项目都引用同一样依赖,则可以避免在每个使用
    <dependencyManagement>正确使用方法dependencyManagement正确使用方法一、介绍Maven中的dependencyManagement元素提供了一种管理依赖版本号的方式。在dependencyMan......
  • 每周工作 60 小时主要是死时间
    每周工作60小时主要是死时间就实际生产力而言,肯定是多是少一个人曾经告诉我,工作被高估了——我工作太多而不够努力。我以为他只是懒惰。事实证明他是对的。在我生命......
  • 每周一坑-上线前一天【下】
    每周一坑-上线前一天【下】三、阿里云控制台设置的报警规则,不发报警昨天设置了很多报警规则,备份提醒,关停和开发服务提醒,今天一个都没报,原来是开发设置的钉钉机器人加......
  • 查询文件的版本号Copyright信息
    查询文件的版本号Copyright信息目前找到的实用的方法有两种,一种是cmd中利用wmic的库,一种是C#中的GetVersionInfo()方法。CMD中获取:获取单个文件:遍历某文件夹下所有文......
  • 软件版本号之命名规范
    软件版本号之命名规范1、软件版本组成软件版本号一般由四部分组成:1)主版本号;2)次版本号;3)修订版本号(阶段版本号);4)日期版本号加希腊字母版本号。希腊字母版本号一般分为......
  • 每周策略晨报
     每周策略晨报  盘面数据 上周A股上证指数下跌0.67%,收于3236.22 点,深证成指下跌2.42%,收于12059.71点,创业板指下跌 3.44%,收于 2640.29 点。价值风格......
  • 每周总结8
    getElementByName方法返回的是一个对象的集合也就是说getElementByName这个可以匹配多个对象在返回的元素中,每个对象都是dom对象设置全选<head><metacharset=......
  • PHP获取手机平台及系统版本号
    手机App中判断平台,可以根据$_SERVER['HTTP_USER_AGENT']中的内容来判断浏览器类型或手机平台。iPhoneUA:Mozilla/5.0(iPhone;U;CPUiPhoneOS4_2_1likeMacOSX;en......