我已经看到了许多gitlab-ci.yml文件的示例,在该示例中,人们安装了最新版本的chrome。因此,这意味着每次推送到存储库时,服务器都会下载新版本的chrome,以便该实例运行。例如,这是我现在在gitlab-ci.yml文件中所拥有的:
# Installs Chrome
- wget -q -O — https://dl-ssl.google.com/linux/linux_signing_key.pub | apt-key add -
- echo ‘deb [arch=amd64] http://dl.google.com/linux/chrome/deb/ stable main’ | tee /etc/apt/sources.list.d/google-chrome.list
- apt-get update
- apt-get install google-chrome-stable -y
人们为什么要这样做?如果许多开发人员同时推送代码,这会不会减慢速度并可能停止构建?为什么我会看到这种情况,而不仅是事先在服务器上下载了chrome,所以您的构建会运行得更快?
答案 0 :(得分:1)
根据您对我的评论的回应,我可以想到三种可能的解释:
编辑:我无意指责任何人懒惰或无能。让我详细说明:
答案 1 :(得分:1)
您正在看到它,是因为很有可能该代码不是在现有服务器上运行,而是在不包含该二进制文件的docker映像上运行。如果它将在服务器上运行,则有关的行将仅更新软件包。
如果遇到性能问题,可以准备自己的已经安装了该软件包的docker映像,但是很难说为什么以前没有这样做。也许以前没有注意到性能问题,或者代码来自不想集中精力创建图像的教程。