You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在GitHub Actions YAML中正确换行解决yamllint行过长报错?

解决YAML中JSON text字段行过长的问题

你遇到的核心问题是:YAML中的JSON字符串里text字段内容太长,触发了yamllint的行长度限制。之前尝试的字符串拼接方式不符合JSON/YAML语法,所以无效,这里提供两种可行方案:

方案1:拆分JSON字符串并保留换行标识

直接在YAML中将text字段的长字符串拆分为多行,用\n表示换行,确保每行长度不超过yamllint的限制:

raw: >-
  {
    "@type": "MessageCard",
    "@context": "http://schema.org/extensions",
    "title": "Smoke test run on ${{ env.AOS_TEST_ENV }}",
    "text": "Status: **${{ env.RESULTS }}**
\n\n---
\n\n[GitHub link](${{ env.GITHUB_URL }})
\n\n---
\n\n[TestRail link](${{ env.TR_RUN_URL }})
\n\n---
\n\n**Project-version: ${{ env.PROJECT }}**",
    "themeColor": "00FF00"
  }

YAML允许双引号包裹的字符串跨行书写,每行的\n会被保留在最终的JSON字符串中,既解决行过长问题,又保证text字段的格式符合需求。

方案2:利用GitHub Actions表达式拼接字符串

通过GitHub Actions的表达式语法,将长字符串拆分为多个小片段拼接,每个片段单独占一行:

raw: >-
  {
    "@type": "MessageCard",
    "@context": "http://schema.org/extensions",
    "title": "Smoke test run on ${{ env.AOS_TEST_ENV }}",
    "text": "${{ 
      'Status: **' + env.RESULTS + '**\n\n---\n\n' +
      '[GitHub link](' + env.GITHUB_URL + ')\n\n---\n\n' +
      '[TestRail link](' + env.TR_RUN_URL + ')\n\n---\n\n' +
      '**Project-version: ' + env.PROJECT + '**'
    }}",
    "themeColor": "00FF00"
  }

这种方式完全拆分了长行,同时通过表达式拼接生成完整的text内容,适配GitHub Actions的环境变量引用规则。

内容的提问来源于stack exchange,提问作者Mar tix

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.14 02:10:29