如何在数组中使用' join '



我想在表达式中把一个字符串数组连接成一个字符串。

所以我尝试使用join函数,像这样:

env:
WINDOWS_DATABASE_PATH: ${{join(['file:', env.RUNNER_TEMP, 'windows_database.db'], '')}}

我希望得到这个作为变量:

file:somepathherewindows_database.db

但是我得到以下错误:

The workflow is not valid. .github/workflows/release.yml (Line: 12, Col: 26):
Unexpected symbol: '['. Located at position 6 within expression: join(['file:', env.RUNNER_TEMP, 'windows_database.db'], '')

我如何正确地使用这个函数与数组?文档声明该函数接受数组,但没有提供使用示例。

从文档和这个社区问题来看,语法似乎无法与join()表达式一起使用。

但是,您可以通过添加一个中间作业来解决这个问题。


关于解,你算出来的解很接近。你可以这样修改:

env:
WINDOWS_DATABASE_PATH: file:${{ env.RUNNER_TEMP }}windows_database.db

另一种选择是使用format()表达式,像这样:

env:
WINDOWS_DATABASE_PATH: ${{ format('file:{0}{1}', env.RUNNER_TEMP, 'windows_database.db') }}

env:
WINDOWS_DATABASE_PATH: ${{ format('file:{0}windows_database.db', env.RUNNER_TEMP) }}

我设法让它像这样工作。然而,这并不使用join功能,所以如果有人知道如何在这里使用它,请发布答案。

env:
WINDOWS_DATABASE_PATH: 'file:${{github.workspace}}windows_database.db'

对于我的例子,请注意,我不再使用env.RUNNER_TEMP,但github.workspace是一个github上下文,而不是一个默认的github环境变量,这对我不起作用。

相关内容

  • 没有找到相关文章

最新更新