标签: build-server

开发人员构建最快的文件系统是什么?

我正在组装一个 Linux 机器,作为持续集成构建服务器;我们将主要构建 Java 的东西,但我认为这个问题适用于任何编译语言。

我应该使用什么文件系统和配置设置?(例如,我知道我不需要时间!)构建服务器将花费大量时间读取和写入小文件,并扫描目录以查看哪些文件已被修改。

更新:在这种情况下,数据完整性的优先级较低;它只是一台构建机器......最终的工件将被压缩并存档在其他地方。如果构建机器上的文件系统损坏并丢失所有数据,我们可以擦除并重新映像;构建将像以前一样继续运行。

performance filesystems build-server continuous-integration

12
推荐指数
3
解决办法
5689
查看次数

在 Jenkins Master 上创建 SSH 密钥 - Centos Yum 安装

我已经在 Centos VM 上安装了 Jenkins,因为我正在考虑更换 Bamboo,我按照安装说明安装并运行了它。一切顺利,然后我想启动一个 Slave,我创建了第二个 VM,在其上创建了一个用户,为该用户创建了一个 SSH 密钥。然后我在 Jenkins 中创建了一个 Slave 节点,但是当我在 Jenkins 中为 Slave 机器创建帐户并提供 SSH 私钥时,我得到了错误。这是正确的,因为我没有将主 SSH pub 密钥放在 ~/.ssh/authorized_keys 中的 Slave 上。

看起来 Centos Yum 安装没有为运行 Jenkins 的用户创建 ssh 密钥,我做了我的 Google fu 并且从我读到的内容中我需要它来做我想做的事情。我确实在机器上尝试过 SU 作为 ,但没有运气。我想知道我需要如何做到这一点,因为我会尽快使用 SSH 密钥。

在说所有这些时,我通过使用密码的 SSH 选项获得了一个奴隶,它可以工作,但这不是我想要的方式。

任何帮助都会很棒!

build-server ssh-keys centos6 jenkins

8
推荐指数
2
解决办法
2万
查看次数

Windows:如何启动 docker VM at 系统启动

我需要在基于 Windows 的构建服务器上运行 docker(我通常使用 Arch/Debian Linux),但我找不到让 docker VM 在系统启动时自动启动的方法。在 Linux 上这将是一项服务,但在 Windows 上似乎并非如此。

我按照https://docs.docker.com/engine/installation/windows/上的说明操作,当我使用 $ docker-machine create 启动 docker VM 时,一切都会运行,但如何将其作为 Windows 服务或类似服务?

目标是能够使用构建 Docker 镜像,作为容器启动并针对它们运行 e2e 测试。由于我们正在使用 TeamCity 来构建有关使用 TeamCity 解决此问题的任何想法,我猜也可以。

windows windows-service teamcity build-server docker

8
推荐指数
2
解决办法
1万
查看次数

是否有为用户 cron 作业安装终止或开/关开关的既定模式?

我们有较长的构建,通常我们会安排我们的 cron 作业,但有时我们必须在非标准时间范围内重新运行构建,并且可能会与在这些时间通常可以安全运行的 cron 作业发生冲突。

我们有多个帐户同时运行构建和 cron 作业,所以我们不能暂停整个机器的 crontab 服务,然后再重新启动它。

我想知道是否有人有模式或实现。我想象这工作像

用户创建一个文件: ~/block-crontab
user running build cron 作业在用户的主目录中查找该文件,如果存在则跳过所有 cron 作业。否则它运行作业然后当构建完成时,用户删除 ~/block-crontab

那行得通吗?我猜我需要以某种方式修改 cron 脚本。我主要想知道是否有更好/标准的方法来解决这个问题?

谢谢。

cron build-server

8
推荐指数
1
解决办法
208
查看次数

在构建服务器上使用缓存构建 Docker 映像?

我们有一个 Jenkins CI 服务器,它从 Git 获取我们的代码,构建它,制作一个 Docker 镜像,然后将它发送到一些生产服务器。

我们的项目主要是用 Python 编写的,所以“构建”涉及运行

pip install -r requirements.txt
Run Code Online (Sandbox Code Playgroud)

效果很好,只是有点慢。它必须通过网络获取包,另外还必须为其中一些构建 C 库(而且“lxml”并不小!)。

在开发中,我已经成功地pip-accel用来加速这个过程。它具有相同的接口,pip但它同时缓存 Python 下载和构建的 C 代码,所以

pip-accel install -r requirements.txt
Run Code Online (Sandbox Code Playgroud)

很快。

我想为我们的生产版本这样做,但我遇到了一些障碍。

显然,pip-accel需要一个目录来存储缓存。因为我们的 CI 服务器是运行构建的地方,所以这是放置它的合乎逻辑的地方。但是该pip install命令在一个新的 Docker 容器中运行,因此它不能只访问该服务器上的公共目录。

Docker“卷”似乎是为与容器共享目录而设计的,但我们的构建发生在内部(令人惊讶)docker build,并且只docker run允许您附加卷。您不能使用docker build.

有什么我想念的吗?如何在我docker build所在的容器之外运行并与我的主机共享缓存文件夹?

deployment python build-server pip docker

7
推荐指数
1
解决办法
1314
查看次数

服务可以产生登录会话吗?构建服务器问题

要在我的构建服务器上运行一些验收测试,我需要始终打开一个登录的用户会话(白色测试框架需要有一个“屏幕”来测试 WPF UI)。这显然是一个脆弱的设置,它在我们的过程中引入了相当多的摩擦。

是否有可能在后台运行一个 Windows 服务,然后它可以“生成”一个以用户身份登录的会话,做一些工作(在这种情况下是测试),然后注销?或者有没有比我们现在正在做的更好的方法来处理我的情况?令人沮丧的是,例如,如果应用程序在某个时刻崩溃,则会弹出异常对话框,冻结我们的构建服务器。我想禁用 wastson 博士来处理这个问题,但我有一种感觉,我正在走一条充满危险的道路。

windows testing service build-server

6
推荐指数
1
解决办法
690
查看次数

TeamCity 重用配置

我写了很多小项目,我想使用 TeamCity 作为我的构建服务器。

有没有办法让我在多个项目中重用构建配置,以便我可以拥有 20 多个由 TeamCity 专业版管理的项目?

编辑:如果 TeamCity 无法做到这一点,有人可以提出一种同样有效的替代方案吗?我用各种语言为各种平台编写项目,并希望它与我的 Subversion 存储库集成。

谢谢!

configuration teamcity build-server

5
推荐指数
1
解决办法
2277
查看次数

如何自动将工件从 Team City 移动到虚拟目录?

Team city 将其工件发布到一个动态变化的 URL——版本和内部版本号不断增加。

如何自动下载此类文件?

团队城市是否甚至有一个我不知道的功能,用于将工件从构建服务器的工件存储库自动移动到登台/测试服务器?

teamcity build-server

5
推荐指数
1
解决办法
1万
查看次数

在 Atom Mini-ITX PC 上构建构建服务器

我计划将我的 1.6Ghz Atom、1GB RAM Mini-ITX PC 变成一台构建机器。我正在考虑为多个环境构建它,所以我计划使用 Virtual Box 创建一个 VM 环境。

我的机器能处理多个虚拟机吗?我应该最大多少?
我应该使用 Linux 作为主机并使用 XP 作为来宾,还是应该使用 XP 作为主机并在主机上运行 CC.Net(我只想使用一个 XP 许可证)?
我计划在自己的 VM 中托管我的 SVN 存储库,这有意义吗?

当我想到它们或它们变得相关时,我会发布更多问题。

virtualization linux windows build-server

1
推荐指数
1
解决办法
2182
查看次数