首页 > 解决方案 > 3.8.1 数据/ETL 工作流的生产和沙盒环境

问题描述

由于 3.7.2 中新发现的漏洞,我被要求从 python 3.6 升级到 3.8.1。最近几次我尝试更新我的版本,我破坏了很多东西,最终在放弃之前从备份中恢复。现在我被迫再试一次,我想确保我设置正确,并希望能深入了解行业接受的最佳方法。

我上次安装的主要目标是我想要一个单独的沙箱和生产环境,这样我就可以在不破坏我的工作流程的情况下测试新的包或更新。我的大部分工作流程都涉及某种形式的读取数据源/服务器/进行 API 调用、进行一些转换以及写入服务器/excel/gsheet。一切都是通过类似 cron 的方法安排的。

虚拟环境是正确的方法吗?我在想我会重新安装 3.8.1,然后在安装单个软件包之前立即创建一个沙箱 venv。然后我会转换我所有的工作流程,让它们在这个新的 3.8.1 环境中工作,然后将 venv 复制到新的生产 venv 中。然后,我可以在沙盒中进行任何未来的测试,并在我需要更新的任何时候(经过大量 QC)再次将环境复制到生产环境中。

这是一个好方法吗?或者我的两个环境之一应该是主要的python安装,只有一个应该是venv?任何意见,将不胜感激。如果我走上了一条糟糕的道路,尽管我对其他方法持开放态度。希望这些不是我要问的错误问题。尽管我已经使用 python 几年了,但我从未使用过 venv,只是为了尝试而创建了一个。

标签: pythonsqlsql-server

解决方案


推荐阅读