使用jenkins – build设环境

我有一个Jenkins服务器负责构build和部署我所有的微服务。 但是,这些微服务中的每一个都需要用于构build和部署的不同版本的库。 在Jenkins中分离这种构build环境的最好方法是什么? 是使用奴隶吗? 有没有涉及Docker的解决scheme?

不知道这些库是python,ruby或其他人。 使用python作为示例。

为每个应用程序构build独立的requirements.txt ,在requirements.txt中,可以为每个库或包定义版本。

https://pip.readthedocs.io/en/1.1/requirements.html

 MyApp Framework==0.9.4 Library>=0.2 

在Jenkins中,安装名为shiningpanda插件,在virtualenv builder中用自己的构build环境定义作业。

 pip install -r requirements.txt # run your application here. 

如果你的应用程序是ruby,java或其他的,你应该可以find类似的插件。

每个微服务应该是自己的build设工作。 jenkins把每个工作的工作空间分开,所以他们不应该相互覆盖。 理想情况下,每个微服务都在自己的源代码库或子文件夹中。 在Jenkins的工作定义中,您可以指向每个特定的微服务回购。 HTH。