多应用系统的发布/部署/打包工具



我们公司有以下情况:我们有几个(硬件)系统,每个系统都有几个软件应用程序。然而,由于硬件不同,在某些情况下软件也不同。此外,在实际应用中还有许多不同版本的软件组合。

例如,考虑以下(简化)情况:

Systems: Sys1, Sys2, Sys3
应用: App1, App2, App3, App4,各版本不同

Sys1使用App1 v1,不使用App2App3 v3App4 v2,而
Sys2使用App1 v1, App2 v2, App3 v2,不使用App4
Sys3不使用App1App2 v3App3App4 v3

也就是说,每个系统使用一组不同的应用程序,以及每个应用程序的不同版本。有时甚至是不同版本的组合,例如App1 v1App3 v2App3 v3一起使用。

目前,我们通过手动将各自的版本复制到"内部公共"文件夹中来管理有效的软件集集,该文件夹由现场服务和生产部门访问。然而,大多数时候我们只有最新的可用版本,他们很难获得任何旧的系统版本集。

我们想把这个过程改为某种自动化系统。有软件工具可以帮助完成这个过程吗?我在想一种软件,你可以设置不同的系统和不同的软件组件,创建不同的版本,然后将特定的软件版本分配给特定的系统版本。

有谁知道有这样的软件吗?或者我们是否应该考虑完全改变我们的打包/部署管理?顺便说一句:这个过程怎么被称为"官方"?

澄清一下:我们已经使用了源代码控制、构建服务器等。所以这不是重点,但是缺少的步骤是将几个软件组件组合成一个完整的软件包,可以用于服务和生产。因为我们还没有为所有的软件组件使用构建服务器,我认为让构建服务器承担这项工作可能很难,但我愿意听取建议。

编辑:


操作系统始终是Windows(2000、XP、Vista、7和7 Embedded)。
应用程序是用不同的语言编写的,主要是c++和c#,但我们的解决方案应该独立于语言,如果可能的话。

我在一家非常大的公司工作(有数千名员工),我们为每个人提供相同的版本,有很多应用程序。我们有预生产环境、开发环境和最终版本。当然,我们使用java,我们所有的应用程序都是web应用程序,所以我们的硬件没有问题。

我认为这是最好的环境。

我们制作了一个免费的(真正的)工具,它非常擅长做这件事。它目前支持Solaris (Intel &Sparc)、Linux、Mac OS和Windows目标服务器。你可以通过视频教程对它的功能有一个很好的了解。

最新更新