我们如何在Windows环境中构建和分发python脚本

我的团队正在享受使用 python解决我们业务的问题.我们写了很多小的独立脚本应用程序.

但是,我们必须拥有一个中央的窗口框,它们与传统应用程序一起运行.

我们的挑战是通过构建和部署过程进行.

我们想让Bamboo检查git中的脚本,安装要求并运行测试,那么如果所有都是绿色的,那么只需部署到我们的生产箱中即可.

我们希望将图书馆从脚本与脚本隔离开来,因此我们没有依赖问题.

我们已经试图让virtualenvs成为便携式的,但似乎没有了.

Pex看起来很有前途,但它在Windows上不起作用.

理想情况下,您会看到如下所示的文件夹:

AppOne
  /Script.py
  /Libs
    /bar.egg
    /foo.egg
AppTwo
  /Script2.py
  /Libs
    /fnord.egg
    /fleebly.py

我们在想这个错吗?什么是pythonic方式在企业内部分发脚本?

TL:DR:
使用 Docker

一个短小的故事:

您可以使用docker为您要部署的每个脚本创建独立映像.

您可以为每个脚本或一组脚本/应用程序安装一个python image(-slim最轻)作为基础环境,并使用它像“virtualenv”,您可以在其中安装该脚本的所有依赖项.

还有一个Bamboo and Docker的集成,你可能会发现有用.

这是Docker documentation参考.

您可以在分离的容器中单独测试每个脚本,如果通过,则可以使用相同的容器将其部署到主服务器中.

这不是你正在问的问题,但是您可以在每个平台(Windows,Linux等)中使用此解决方案,您可以将所有脚本部署到企业服务器(或任何地方),并将其用于公司.

祝你好运 :)

免责声明:这不是解决方案,这是一个解决方案,我知道哪个适用于这个答案的时间(2017年)

相关文章

Windows注册表操作基础代码 Windows下对注册表进行操作使用的...
黑客常用WinAPI函数整理之前的博客写了很多关于Windows编程的...
一个简单的Windows Socket可复用框架说起网络编程,无非是建...
Windows文件操作基础代码 Windows下对文件进行操作使用的一段...
Winpcap基础代码 使用Winpcap进行网络数据的截获和发送都需要...
使用vbs脚本进行批量编码转换 最近需要使用SourceInsight查看...