问题标签 [multi-configuration]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
381 浏览

ruby-on-rails - Why is capistrano multiconfig not working?

I had a working capistrano setup for my app but I installed the multiconfig gem so that I could deploy to two different servers using capistrano. Running

cap primary:production deploy

works perfectly, but when I run rails s I get this error:

This is the directories inside my config/ folder:

This is my capfile

This is my Gemfile

0 投票
1 回答
405 浏览

tfs - 如何在 TFS 中的多配置构建期间保留工件目录?

我有一个包含多个项目的解决方案,其中一些是 Web 应用程序。我在 TFS vNext 中设置了一个多配置构建,它构建单个应用程序、创建 MSDeploy 包、获取正确的暂存配置文件并添加或替换包存档文件中的文件。

我想使用创建为要在发布管理管道中使用的工件的部署文件。问题是工件目录在每次构建(即构建 Web 应用程序)之前被清除。最后,只剩下最后一个构建的应用程序的人工制品。

我当然可以配置将工件复制到其他地方的步骤,但是问题是如何仅在构建开始时将其删除(我的意思是所有项目的构建)。

有没有办法如何禁用人工制品目录的清除或如何仅在构建开始时执行操作?有没有人有类似的经历?

0 投票
1 回答
581 浏览

cmake - 为什么需要在 cmake 中为多配置生成器指定架构

我知道CMAKE_BUILD_TYPE这只适用于像 Unix Makefiles 这样的单一配置生成器。还有像 Visual Studio 或 Xcode 这样的多配置生成器CMAKE_BUILD_TYPE不起作用。(有关更多信息,请参阅问题和问题)。我已经为libharu生成了带有 cmake-gui 的 Visual Studio 2013 x86 项目,并且在 Visual Studio 中无法从 win32 切换到 x64。我想知道为什么在多配置中需要在 cmake 中指定架构(x86 或 x64)?为什么不能直接在 Visual Studio 中使用?是否有一些限制或好处或我应该注意的事情?

谢谢

0 投票
0 回答
517 浏览

jenkins - 多配置和 Jenkins 管道 Jenkinsfile

我有一个需要针对多种架构(Centos5、Centos6、Centos7)进行测试的应用程序;我实现了一个Jenkinsfile,在其中我为所选的架构目标运行一组测试。现在我想以某种方式为所有目标架构运行这些测试。我怎样才能做到这一点?

有人告诉我,我需要调查 Jenkins 多配置项目,但我能找到的所有示例都只涉及基于 Java 的项目。如果这是要使用的方法,我如何使用不同的输入参数值调用我的 Jenkins 脚本?

如果有人能给我一些关于从哪里开始以及使用哪些 Jenkins 插件的提示,我将不胜感激。谢谢 现在,我想实现一种基于矩阵的方法,即构建我已经编写了一个构建应用程序的 Jenkins 管道。

0 投票
1 回答
9637 浏览

jenkins - 多配置作业中的 Jenkins Pre-Build 和 Post-Build

我们使用多配置作业来测试 2 个独立组件的各种组合以进行兼容性测试。这些是我们的兼容性验收测试。我们执行以下步骤

  1. 使用 docker 和 docker-compose 在我们部署这些组件的地方准备测试环境。(为我们预建)
  2. 运行多配置作业以测试兼容性
  3. 清理 - 停止容器(构建后)

我们为第 1 步和第 3 步设置了专门的作业,并使用多作业进行合并视图。

是否有可能有一个统一的工作来做到这一点?可能

  1. 在开始多配置的父作业之前,我们设置我们的环境。
  2. 运行多配置的所有组合
  3. 父工作岗位构建确实清理。
0 投票
0 回答
37 浏览

jenkins - 在将测试发送到 Jenkins 中的单个节点进行分布式处理之前更新多个节点

我目前正在使用 Jenkins 和一个多配置项目运行构建和测试,以在不同的操作系统计算机上编译和测试我们的应用程序。

在扩展我们的测试时,我现在需要针对分布式环境运行测试,但不确定如何在 Jenkins 上进行设置。

我有四台计算机模拟我的生产环境(Prod1 - Prod 4),它们在每台计算机上都有我们的应用程序的多个实例作为服务(foo.exe)运行。IE:

Prod 1 和 2 是一个操作系统版本(Windows Server 2012),Prod 3 和 4 是不同的操作系统(Windows Server 2016 / Linux 等)。这些服务旨在能够驻留在不同的计算机上,以实现容错和可扩展性。

在我运行我们的测试之前,我需要有一个脚本连接到每台计算机并停止现有的服务实例(Windows 上的批处理文件可以做到这一点)并从 Jenkins 构建作业中复制新的可执行文件,然后再次启动实例。对于多配置作业,这很容易。

服务器上的实例正在侦听 Apache ActiveMQ 队列以执行任务,该队列有自己的服务器。我会将测试作业发送到 ActiveMQ 服务器。我不确定如何配置计算机(PROD1-PROD4)进行更新,并在完成所有计算机后,然后将测试提交到不同的计算机。

虽然多个作业配置可以让我在各个节点上启动相同的东西,但我需要确保所有 4 台计算机都已更新,然后再继续在 ActiveMQ 服务器上启动测试脚本 (SOAP UI)。

我会为服务更新创建一个多配置作业,然后创建一个管道作业将这些流程链接在一起吗?有没有更好的办法?

0 投票
0 回答
101 浏览

jenkins - Jenkins Multi Configuration Job需要动态修改节点上的app.config

我有一个需要在 6 个节点上同时运行的 .net 测试自动化套件。我在 Jenkins 上配置了一个多配置作业。问题是,六个节点需要 6 个不同的 app.config 值(例如,连接字符串、Web url、浏览器等)。有没有办法可以在 MSBuild 步骤之前替换 app.config 值?我正在考虑构建一个控制台应用程序并将其保存在每个节点中,然后将其作为构建步骤调用。但我不确定这是否是最好的方法。我相信詹金斯有一种本地方法可以做到这一点。多重工作会派上用场吗?非常感谢任何帮助或建议。即使有一些链接可以提供帮助。

0 投票
1 回答
965 浏览

c++ - 使用 CMake 编译具有多配置的 Boost

我有一个依赖于 Boost 库(和其他)的项目。我创建了一个 CMakeLists 来自动下载和编译依赖项ExternalProject_Add

我想支持多配置(发布和调试)。因此,对于我的其他库CMAKE_BUILD_TYPE,我在 CMakeLists 的开头定义了一个。我通过命令-DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE}中的依赖项传播它。ExternalProject_Add

它在 Windows 和 Linux 上运行良好。

然而,对于 Boost,根据我需要使用variant=debug或编译的配置variant=release。我创建了一个if(${CMAKE_BUILD_TYPE) MATCHES Debug)语句并根据该要求设置了变体。

对于 Linux,这工作得很好,但在 Windows 上,只有当我CMAKE_BUILD_TYPEcmake. 当我尝试更改 VS 中的配置时,它不会更改CMAKE_BUILD_TYPE变量。

是否可以在我的 CMakeLists 中检测 VS 中选择的配置?

谢谢你。

0 投票
1 回答
1524 浏览

c++ - CMake find_package 不处理多配置

我们正在使用 Jenkins 2.60.2 和 CMake 3.9.1 来自动化我们的构建系统。这一切都适用于多个版本的构建工具、架构和调试/发布目标(如果所有配置都已经构建和安装,那么DebugRelease)。

使用find_package ()的仅Debug配置通常会在发现时忽略CMAKE_BUILD_TYPE。脚本在内部搜索文件和库并将位置存储在变量中。在脚本结束时,会扫描变量中的_NOTFOUND字符串,这是在所有引用路径/提示中都没有找到文件或库的结果。因此,如果找不到 Release 库,基本上find_package () 将失败,并将整个包标记为未正确安装,即使构建只对Debug目标严格感兴趣。

通常,XXXConfig.cmake文件使用对find_package_handle_standard_args (.. PATH_TO_LIB) 的调用,该调用在库的路径变量中扫描_NOTFOUND字符串。这些变量通常通过较早的调用find_library (PATH_TO_LIB libname ..)设置为_NOTFOUND 。有关更多信息,请参阅 CMake 文档。

用户确实可以使用“调试”标记调试库并使用“优化”发布库,但这在库发现期间似乎没有帮助,并且仅在链接期间使用。

任何人都知道如何正确处理这个问题?

亲切的问候

0 投票
1 回答
2099 浏览

c++ - Cmake:为多配置 cmake 项目指定配置特定设置

这里是 Cmake 新手,我目前正在尝试将仅考虑单一配置开发的 cmake 项目转换为可以生成 Visual Studio 文件的多配置项目。

我无法解决的问题是,在 cmake 项目中存在取决于变量 CMAKE_BUILD_TYPE 的逻辑,例如:

由于对于多配置 cmake,CMAKE_BUILD_TYPE 是空的,因此这种方式不起作用。变量 ENABLE_DEBUG 然后在 cmake 项目中用于以下内容:

案例 1:添加库以仅调试配置

案例 2:将预处理器标志添加到仅调试配置

所以我想知道是否有人有针对上述一种或两种情况的解决方法,适用于多配置 cmake 项目,即这样我就可以指定库添加和预处理器标志,而不依赖于 CMAKE_BUILD_TYPE 变量。或者如果有一种特定于配置的方式来设置 ENABLE_DEBUG 而不依赖于 CMAKE_BUILD_TYPE 变量,那就更好了?