如何将环境变量传递给 Jenkins 中的 sbt 测试构建步骤?

2024-04-12

在我的 scala 测试中,我通过以下方式读取了环境变量sys.props.getOrElse("cassandra.test.host", DEFAULT_CASSANDRA_TEST_HOST).

测试通过 Jenkins 运行。

我添加了一个Build using sbt作为构建步骤。

通过查看 SO 上的类似问题,我想出了这个解决方案 - 即将 Actions 字段设置为:

'; set javaOptions += "-Dcassandra.test.host=XX.XXX.XXX.XXX"; test'

但这不起作用。当以下情况时没有设置变量Properties.envOrElse被执行。

Jenkins 控制台输出包含:

[...] [util-sessionizer] $ java -jar /usr/local/bin/sbt-launch.jar '; set javaOptions += "-Dcassandra.test.host=XX.XXX.XXX.XXX"; test' [info] Loading project definition from /jenkins/workspace/util-sessionizer/project/project [info] Loading project definition from /jenkins/workspace/util-sessionizer/project [info] Set current project to util-sessionizer (in build file:/jenkins/workspace/util-sessionizer/) [info] Defining *:javaOptions [info] The new value will be used by *:runner, compile:run::runner and 4 others. [info] Run `last` for details. [info] Reapplying settings... [...]


如果您不派生一个新的 JVM 来执行测试,请设置javaOptions什么也没做。 摘录自 SBT 本身:

> help javaOptions
Options passed to a new JVM when forking.

这解释了为什么你的javaOptions当您不分叉测试时不会使用。

您基本上有两种解决方案:

  • 任意设定fork in Test := true在分叉 JVM 中运行测试
  • 或者将您的系统属性传递给 SBT 本身:

    sbt -Dcassandra.test.host=XX.XXX.XXX.XXX test

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何将环境变量传递给 Jenkins 中的 sbt 测试构建步骤? 的相关文章

  • 如何在 Scala Slick 中运行补丁/部分数据库更新?

    我们想运行补丁 部分UPDATE使用 Slick 3 0 0 以便我们只修改记录中的某些字段 确切地说哪些字段将被更新只有在运行时才知道 例如 对于一个REST PATCH request http restcookbook com HTT
  • Jenkins JobDSL multibranchPipelineJob更改脚本路径

    我正在尝试在 jobDSL 中创建多分支PipelineJob 但是 Jenkinsfile 位于默认位置的替代位置 我已经查看了文档https jenkinsci github io job dsl plugin path multibr
  • scalaz 中的 Store 是什么

    我试图理解Lenses in scalaz 令人惊讶的是没有找到类似的东西cats core 我遇到了所谓的Store这是一个类型别名 type StoreT F A B IndexedStoreT F A A B type Indexed
  • Bazel远程缓存分析数据

    我正在 jenkins 上的 docker 容器内运行 bazel 通过 bazelisk 此外 我使用远程缓存 在不进行任何更改的后续运行中 我获得 100 的缓存命中 但每次创建新容器时都会运行分析阶段 约 60 秒 有没有办法远程缓存
  • Jenkins 在解析 pom 时失败

    我的 Jenkins 服务器上的一项作业出现问题 在 pom 解析期间失败并显示以下消息 Parsing POMs Modules changed recalculating dependency graph workspace java
  • 从 Scala/Spark 写入 SQL Server 日期时间数据类型

    我正在尝试使用类似的方法从 databricks 笔记本批量插入 SQL Server 表 批量复制到 Azure SQL 数据库或 SQL Server https docs databricks com spark latest dat
  • 如何在 PySpark 数据框中创建动态组?

    虽然问题是基于连续行的两个或多个列的值创建多个组 但我只是通过这种方式简化问题 假设有这样的 pyspark 数据框 gt gt gt df sqlContext createDataFrame Row SN 1 age 45 gender
  • 无法使用激活器(Play Framework)加载本机库

    我正在尝试在 Play 2 4 x 应用程序中加载本机库 我编写了一个简单的测试 该测试在 IDE IntelliJ 和 SBT 中都运行良好 在这两种情况下我都设置java library path让测试运行 我在IDE中设置 Djava
  • SBT 中的 :、:: 和 / 有什么区别?

    我试图回忆是否是test compile test compile or test compile当我在 SBT 上做一些事情时 我突然意识到 虽然我对使用哪个分隔符做什么有一些直觉 但我对每个分隔符的用途并不清楚 因此 当在 sbt 控制
  • scala、spring 和 scalate

    我有一个用 scala spring sitemesh 和 jspx jstl 编写的 Web 项目 问题出在 jspx 上 我一直遇到问题 它希望类型是 java 集合类型 所以我必须继续在 scala java 集合之间进行转换 有时我
  • 如何从 Jenkins 文件调用 groovy 脚本?

    我正在尝试将 Jenkinsfile 中的内容分离成一个常规脚本来制作 但它无法调用这些脚本 这是代码 usr bin env groovy node test node stage Checkout echo BRANCH NAME en
  • 重写 openshift maven 脚本 (jenkins gear)

    我在 Openshift 上有 Jenkins 实例 我已启用 Jenkins 构建我的 Openshift 应用程序 这里是 Jenkins shell 脚本的一部分并记录它们生成的内容 Sync any libraries rsync
  • 如何使用无头浏览器在 Jenkins 中运行量角器测试用例?

    我使用过 phantomjs 但是 phantomjs 与量角器的兼容性不好 虽然在 chrome 和 firefox 浏览器中我能够找到元素 但在 phantomjs 中找不到相同的定位器 如果您使用的是linux操作系统 那么您可以使用
  • sbt 给出“配置不公开”,取决于子项目中的测试

    我有一个 sbt 多项目构建 在本地运行良好 它使用外部 ivy 设置文件 在我的机器上 我将 sbt 项目间解析器添加到我的 ivy 设置文件中 然而 当我在 Jenkins 上构建时 我想构建每个子项目分别 这样我就可以独立发布每个子项
  • 在 IntelliJ Scala 控制台中运行时如何设置 Spark MemoryStore 大小?

    我正在 Linux 64 Fedora 25 上的 Intellij CE 2017 1 Scala 控制台中将 Spark 代码作为脚本运行 我在开始时设置了 SparkContext import org apache spark Sp
  • Jenkins + Cmake + JIRA = 多个相互依赖项目的 CI?

    我们的系统中有许多小项目在 Linux 上运行 Slackware 7 11 正在慢慢迁移到 RHEL 6 0 大约 50 100 个应用程序和 15 20 个库 我们几乎所有的应用程序都使用我们的一个或多个库 我们的源树看起来像这样 ap
  • scala 数值求和列表

    我想要一个通用函数来对列表中的值求和 以下代码无法编译 def sum T Numeric x List T T if x isEmpty 0 else x head sum x tail 编译错误是 error type mismatch
  • 如果执行 shell 失败,jenkins 构建不会失败

    作为构建过程的一部分 我运行 git commit 作为执行 shell 步骤 但是 如果工作区中没有任何更改 Jenkins 将导致构建失败 这是因为当没有要提交的更改时 git 返回错误代码 如果是这种情况 我想要么中止构建 要么将其标
  • 如何将 Jar 库添加到 IntelliJ Idea SBT Scala 项目?

    我创建了一个 IntelliJ Idea SBT Scala 项目 例如海科 西伯格的文章 http heikoseeberger blogspot com 2010 08 how to setup scala project with s
  • 如何编写返回 Validation 的函数?

    这是我之前的后续question https stackoverflow com questions 30527740 composing validating functions in scala 假设我有两个验证函数 如果输入有效则返回

随机推荐

  • 尝试调用未定义的函数 glutInit

    我需要 python 中的一个过剩窗口 我使用 Python 3 5 和 PyOpenGL GLUT 时出现以下异常 Traceback most recent call last File D Test py line 47 in
  • Firestore没有执行操作的权限

    我正在尝试在 Firestore 中设置规则 如果每个人都经过身份验证进入应用程序 则每个人都可以读取彼此的内容 但只有文档所有者才能创建 写入 更新或删除它们 我在 Firestore 中设置了以下规则 rules version 2 s
  • Unity,如何将相机切换到第二个物体的位置?

    我在 Unity 3D 中遇到奇怪的问题 我的想法是找到数组中距离玩家最近和第二近的对象 然后我希望相机移动到最近的物体的位置并看着玩家 但如果玩家和最近的物体之间的距离太小 我希望相机移动到第二个物体的位置 我做了一些编码 但我不知道为什
  • 在 Silverlight 中使用 .NET RIA 服务有哪些陷阱?

    Silverlight可以使用WCF Web服务 基于REST的服务 NET RIA服务 但似乎Silverlight和 NET RIA服务是最受欢迎的 我想知道您在使用 NET RIA 服务实际实施 SL 时是否遇到过任何常见问题 如果继
  • 如何读取 RCFile

    我正在尝试将一个小的 RCFile 约 200 行数据 读入 HashMap 中以进行 Map Side 连接 但是在将文件中的数据变为可用状态时遇到了很多麻烦 这是我到目前为止所拥有的 其中大部分来自这个例子 http sumit1001
  • 如何从列表中选择每个第n个元素[重复]

    这个问题在这里已经有答案了 可能的重复 如何在 Haskell 中获取无限列表的每个第 N 个元素 https stackoverflow com questions 2026912 how to get every nth element
  • Java 流惰性 vs 融合 vs 短路

    我试图对 Java 流 API 中惰性求值的应用形成一个简洁而连贯的理解 目前我的理解是这样的 元素仅在需要时才被消耗 即流是惰性的 并且中间操作是惰性的 例如过滤器 仅在需要时进行过滤 中间操作可以融合在一起 如果它们是无状态的 短路操作
  • 具有多个字段的 Angular 模板驱动表单验证

    假设我有一个带有一些字段的简单表单 堆栈闪电战示例 https stackblitz com edit angular ktk7ez Component selector my app template h1 AppComponent h1
  • 使用基本 R 功能舍入 POSIX 日期 (POSIXct)

    我目前正在为我正在构建的包考虑很多日期和时间 绊倒这个post https stackoverflow com questions 8333838 how do you generate a sequence of the last day
  • 电子邮件解析云服务[关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • 似乎无法使用 Magit 推送到 GitHub

    我正在尝试在 Emacs 24 3 1 上使用 Magit 推送到 GitHub 存储库 请注意 我使用的是 Windows 盒子 我已经暂存并提交了对文件的更改 并且 M x magit status 仅反映驻留在我的存储库克隆中的未跟踪
  • xcodebuild 说不包含方案

    我有一个好奇心问题 我有一个项目 我一直在使用 XCode IDE 构建 并且运行良好 现在我正在设置 Bamboo 来构建项目 因此从命令行构建它 问题是 如果我从 GIT 中检查我的代码 然后使用 xcodebuild 来构建它 它会说
  • 如何对字符串中的子字符串重新排序?

    如何在 Perl 中的正则表达式中进行以下转换 British style US style 2009 27 02 gt 2009 02 27 我是 Perl 新手 对正则表达式了解不多 我能想到的就是提取 的不同部分 然后重新连接字符串
  • 使用 cassandra-cli 创建两个复合列

    我的列族需要两个复合列 关键数据类型是BytesType 以下是使用 CQL 的表定义 CREATE TABLE stats gid blob period int tid blob sum int uniques blob PRIMARY
  • 有没有办法用 EureakLog 进行正常日志记录?

    我正在使用 和旧版本 EurekaLog 它对于记录异常非常有用 但是有没有办法让它只正常记录事情呢 或者它根本不是为了这个目的 克里斯已经提到了我们的日志工具智能检测 http www gurock com smartinspect 谢谢
  • C++ 类设计、基类继承或外观设计模式

    我有一个愚蠢的 C 设计问题 有没有一种方法可以让一个类与多个类中的方法具有相同的方法名称 因此 具有相同的 API 我现在的情况是我有上课的情况 struct A void foo std cout lt lt A foo lt lt s
  • 如何继续 Subversion 中失败的加载

    我已经开始将颠覆转储加载到存储库中 在它完成之前 我耗尽了配额 命令停止了 我已要求更多配额 但现在我不知道如何继续进口 我应该简单地重做相同的命令吗 svnadmin load parent dir Software xxx module
  • Android UI - 动态添加按钮到 Gridview

    这就是我现在陷入困境的地方 我一直坚持向 gridview 动态添加按钮 我的 gridview 带有一个按钮 当用户单击该按钮时 会弹出上下文菜单 要求用户输入信息 完成后 使用该信息创建网格视图中的块 如图所示 我已经粘贴了代码 我不知
  • 如何更改 numpy 中的数组形状?

    如果我创建一个数组X np random rand D 1 它有形状 3 1 0 31215124 0 84270715 0 41846041 如果我创建自己的数组A np array 0 1 2 然后它就有了形状 1 3 看起来像 0 1
  • 如何将环境变量传递给 Jenkins 中的 sbt 测试构建步骤?

    在我的 scala 测试中 我通过以下方式读取了环境变量sys props getOrElse cassandra test host DEFAULT CASSANDRA TEST HOST 测试通过 Jenkins 运行 我添加了一个Bu