V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
l4ever
V2EX  ›  问与答

Jenkins 流程中,构建-部署测试-部署生产,流程时间跨度很长怎么办?

  •  
  •   l4ever · 1 天前 · 741 次点击
    部署测试后,可能需要很久 10 天,20 天
    等测试通过才可以部署生产环境。

    这样如何处理呢?

    分开 job ?构建后保存产物,部署的时候再复制构建的产物发布?
    9 条回复    2025-01-07 10:23:57 +08:00
    shuang
        1
    shuang  
       1 天前
    我司是测试环境和生产环境单独的 Jenkins ,部署的时候在生产环境的 Jenkins 上,拿同样的 commit id 构建一次
    66450146
        2
    66450146  
       1 天前 via iPhone
    构建后肯定是要保存产物的,要不然测试通过之后发布的就不是同一个结果了,新的 bug 可能就在里面
    l4ever
        3
    l4ever  
    OP
       1 天前
    @shuang 同 commit 构建可能产生不同的产物,打个比方,比如 dockerfile 里面的基础镜像用 latest (这里打个比方而已)变了。会导致测试不准确吧?
    ShineyWang
        4
    ShineyWang  
       1 天前 via Android
    我们公司部署使用另外的工具-Octopus
    编译完成后打包到发布服务,等正式上线时再单独发布指定版本到服务器
    night98
        5
    night98  
       1 天前
    你构建完的 docker 镜像 push 上去,生产部署的时候直接拿对应镜像就行了呀,不会是那种测试环境完整构建一遍,然后生产再构建一遍这种骚操作吧?
    cdlnls
        6
    cdlnls  
       1 天前 via Android
    @l4ever 正常情况下,生产都不会用 latest 的镜像,甚至会禁止覆盖 tag 。
    l4ever
        7
    l4ever  
    OP
       1 天前
    @night98 docker 倒是好搞,有些没有 docker 化的老项目比如 php web 。
    0044200420
        8
    0044200420  
       1 天前
    按 tag 保存产物,部署时选 tag
    julyclyde
        9
    julyclyde  
       20 小时 24 分钟前
    @l4ever 对,用 latest 会出故障的
    https://julyclyde.org/?p=590
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1102 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 29ms · UTC 22:47 · PVG 06:47 · LAX 14:47 · JFK 17:47
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.