continuous-integration相关内容

在构建服务器上使用 ramdisk 是否明智?

在我的公司,我们目前正在研究加快 CI 构建速度的各种策略.我们已经分析了我们的构建,并确定我们受到 I/O 瓶颈的限制.在不久的将来(约 1-2 个月),我们有很多选择来解决这个问题,但我们真的希望看到改进现在. 我建议使用 ramdisk 作为检出和构建文件的位置.构建输出和日志当然会存储在物理磁盘上. 这是一个明智的做法,还是这种方法存在重大缺陷?我不是在寻找有关硬件方面的答案, ..
发布时间:2022-01-12 19:48:29 其他开发

当我进行部署插槽交换时,为什么 azure 会重新启动网站?

我有一个在 Azure 网站上运行的 .net 4.5 网站.我已经设置了暂存部署.我预热了两个站点,然后运行交换过程(来自 azure 门户和 Azure powershell).无论我尝试什么,交换过程都会重新启动我的网站(两者),并且它们需要大约 3 分钟才能启动. 我的印象是部署交换应该让网站保持“温暖"并且没有停机时间?我的网站在大约 3 分钟内无法使用! 据我所知,生产槽和 ..

从用户的角度来看,Jenkins 和 Hudson 之间最显着的区别是什么?

Jenkins 从 Hudson 分道扬镳到现在大约 10 个月. 查看项目主页时,我想知道 Hudson 和 Jenkins 之间的真正区别是什么.从变更日志中我并没有真正学到很多东西.有很多变化,主要区别似乎是 Jenkins 发布的频率更高,变化更少,而 Hudson 的发布频率更低,但版本中的变化更多. 还有什么明显的区别吗?那么,作为一名开发人员,是否有一些事情让我需要一个 ..
发布时间:2022-01-12 19:47:56 其他开发

在 Release 中部署 PDB 文件

我设置了 CI 服务器来构建和部署我的所有环境,包括我的生产环境.据我所知,我的所有项目文件的设置和 CI 设置在我的暂存环境构建和我的生产环境构建之间是相同的.但是当我部署到生产环境时,没有像暂存中那样与 DLL 文件并排放置的 PDB 文件.这是部署每个应用程序的脚本: C:\Windows\Microsoft.NET\Framework64\v4.0.30319\MSBuild.exe % ..
发布时间:2022-01-12 19:47:34 C#/.NET

持续集成的投资回报率是多少?

目前,我们的组织没有实施持续集成. 为了让我们启动并运行 CI 服务器,我需要制作一份说明投资回报的文档. 除了通过及早发现和修复错误来节省成本之外,我很好奇我可以在本文档中坚持的其他好处/节省. 解决方案 我喜欢 CI 的第一个原因是它有助于防止开发人员检查有时会削弱整个团队的损坏代码.想象一下,如果我在去度假之前进行了涉及一些数据库模式更改的重要签到.当然,在我的开发盒上一 ..
发布时间:2022-01-12 19:47:23 其他开发

使用 github 操作从 monorepo 部署单个服务

我有大约 10 个单独的微服务,这些微服务主要是用于各种数据处理作业的云功能,它们都位于一个 github 存储库中. 目标是在推送到分支时触发这些服务选择性部署到 Google Cloud Functions - 当单个功能已更新时. 我必须避免单个服务的更新导致部署所有云功能的情况. 我当前的存储库结构: /repo--/service_A- -/功能- -/笔记本-- ..

为什么我的开发团队应该有构建服务器?

我们知道这样做很好,但我发现自己向我的雇主证明了这一点.请说明开发团队需要构建服务器的原因. 解决方案 使用构建服务器有多种原因.没有特别的顺序,我的脑海中浮现: 您可以简化开发人员的工作流程并减少出错的机会.您的构建服务器可以处理多个步骤,例如检查最新代码、安装所需的软件等.开发人员不可能在他们的机器上拥有一些可能导致构建看似随机通过或失败的杂散 DLL. 您的构建服务器可以 ..
发布时间:2022-01-12 19:47:07 其他开发

TeamCity 中 MSBuild 的/P MSDeploy 参数的完整列表

我目前在 TeamCity 中使用 MSBuild 运行程序在我的本地服务器上进行持续集成,这非常有效.但是,我无法以 TeamCity 期望的格式找到支持的 MSDeploy 命令行开关的完整列表. 目前在我的“参数"部分中,我使用了以下开关: /P:Configuration=OnCommit/P:DeployOnBuild=真/P:DeployTarget=MSDeployPubli ..
发布时间:2022-01-12 19:47:00 其他开发

使用 shell 脚本在 Jenkins 中手动构建是否失败

我想将 Jenkins 构建标记为在一种情况下失败,例如: if [ -f "$file" ]然后echo "找到$文件."别的echo "$ 文件未找到."#Do Jenkins 构建失败菲 可以通过 Shell 脚本实现吗? 答案:如果我们以整数 1 退出,Jenkins 构建将被标记为失败.所以我用 exit 1 替换了注释来解决这个问题. 解决方案 你需要做的就是退出1. ..
发布时间:2022-01-12 19:46:45 其他开发

黑莓开发的持续集成服务器?(和证书签名)

我无意中听到我工作的另一个团队谈论黑莓开发 - 他们在为黑莓自动构建时遇到问题.特别是证书签名存在问题 - 他们还没有弄清楚 - 现在是手动步骤. 诚然,他们/我们是手持开发的新手,但任何关于构建服务器和自动化命令行证书签名的指针都将受到欢迎. 鉴于我们公司在 BB 开发方面的短暂经验,可能需要具体示例和详细信息. 我认为 hudson 可以很好地解决这个问题 - 我们只需要找出 ..
发布时间:2022-01-12 19:46:38 其他开发

如何构建一个 git polling build bot?

基于 cron、bash + make 的脚本(例如,比 Hudson 更小、更不健壮)构建机器人如何轮询 git 存储库并检测它是否应该现在构建 - 例如如果在从远程 git repo 定期拉取时,它已检索到新代码? 目前,它看起来像这样: git fetch >build_log.txt 2>&1如果 [ $?-eq 0]然后echo "从 git 获取完成";git 合并 FETCH ..
发布时间:2022-01-12 19:46:29 其他开发

在 Team City Build Server 上运行 MSTest 测试需要 Visual Studio?

我们正在设置 Team City 构建服务器.在以前的 VS 2008 项目中,已在构建服务器上安装了完整版本的 Visual Studio. 我们现在开始一个 VS 2010 项目. 是否可以在不安装 Visual Studio 的情况下在 Team City 构建服务器上运行 MSTest 测试? 解决方案 下载 Visual Studio Agents 2010 ISO: ..

从 Apple 开发站点获取配置文件的 API

我想知道是否可以使用 API 从 Apple Developer Portal 获取最新的配置文件?我已经为 iOS 项目设置了 CI,但是每次更改配置文件时我都必须手动更新它,所以我也很乐意自动化这个过程.谢谢 解决方案 恐怕不行.您应该能够通过抓取 HTML 来完成它,但仅此而已.Apple 在网络方面很糟糕(客户端除外). ..
发布时间:2022-01-12 19:46:05 移动开发

配置 Hudson 以部署构建

我正在尝试配置 Hudson,以便能够自动将构建(.war 文件)部署到 Tomcat.然后有人会使用新部署的构建来测试应用程序. 我尝试使用 Deploy Plugin 自动部署 .war 文件,这很有效.但是,构建 .war 文件的作业将在每次 scm 更改后运行(无论何时提交代码).使用 Deploy 插件,每次构建时都会将 .war 文件部署到 Tomcat.由于代码被频繁提交,这意 ..

Team Foundation Server 和 Team Services 之间的区别

Microsoft Team Foundation Server 和 Microsoft Team Services 有什么区别? Team Services 是否也适用于持续集成,是否可以与自托管 git 服务一起使用? 希望这不是题外话,如果有人能澄清这一点,非常感谢! 解决方案 它们基本上是相同的产品,除了一个是微软云托管的,另一个是本地安装的. VSTS 首先获得 ..
发布时间:2022-01-12 19:45:42 其他开发

在 CI/CD 中如何管理前端和后端之间的依赖关系?

我将描述我的设置以使问题不那么抽象,但它们似乎并不针对我的案例. 上下文 我们有 Python-Django 后端和一个 VueJS 前端,每个都在一个存储库中,使用 Portainer(使用堆栈)配置和部署 Gitlab-CI.每个存储库的生产分支中的提交遵循以下路径: 提交 gitlab-ci 管道: 构建 docker 镜像 测试图像(前端针对已部署的后端进行测试) ..

在 Hudson 或其他 CI 工具中使用 Ant 自动签出和编译 Eclipse 项目的最佳方法?

我们有几个产品有很多共享代码并且必须维护几个版本. 为了解决这个问题,我们使用了很多 Eclipse 项目,其中一些包含库 jar,一些包含共享源代码(在多个项目中,以避免获得具有大量依赖项的巨大堆,同时能够从头开始编译所有内容以确保源代码并且二进制文件是一致的).我们使用 projectSet.psf 管理这些项目,因为它们可以直接从 CVS 中拉出所有项目并留下一个准备充分的工作区.我们 ..
发布时间:2022-01-12 19:45:26 Java开发