GitHub Actions 表达式函数:字符串操作?

Posted

技术标签:

【中文标题】GitHub Actions 表达式函数:字符串操作?【英文标题】:GitHub Actions expression functions: string manipulation? 【发布时间】:2020-10-19 00:20:56 【问题描述】:

在 GitHub Actions 工作流定义文件中,有 a set of built-in functions that you can use in expressions。

例如:$ toJson(github)

有没有可以在表达式中使用的字符串操作函数,比如toLowerCase

文档页面没有提及任何内容。但是,我想知道 Github 是否在底层使用了某种标准模板/表达式评估库,它提供了一组更大的开箱即用功能。

【问题讨论】:

我也有同样的问题,你有没有在某处得到答案? 不,很遗憾没有。我通常使用 Bash 脚本来解决这个问题。 【参考方案1】:

不可能。 GitHub expressions 不允许修改字符串,只能连接。

您可以对构建作业中的自定义步骤执行几乎相同的操作,但这意味着您将无法在任何地方使用该变量(例如“已处理”环境名称是不可能的)。

env:
  UPPERCASE_VAR: "HELLO"
steps:
  - id: toLowerCase
    run: INPUT=$ env.UPPERCASE_VAR  echo "::set-output name=lowerCaseValue::$INPUT,,"

  - run: echo $steps.toLowerCase.outputs.lowerCaseValue

【讨论】:

以上是关于GitHub Actions 表达式函数:字符串操作?的主要内容,如果未能解决你的问题,请参考以下文章

在 GitHub Actions 中使用上下文表达式中的变量

使用 Github Actions 部署 Firebase Cloud 函数时的环境变量

jest.config.ts:从 Github Actions 运行 jest 时出现“registerer.enabled 不是函数”错误

在 Github Actions 中使用 Powershell 的输出

Github Actions - 更新 HTML 文件

如何使用 GitHub Actions 对构建工件进行版本化?