github 操作上下文的完整列表

2024-01-06

在调查如何在 github 操作中,我可以将存储库中特定文件的“基本”版本与文件的拉取请求(“头”)版本进行比较......在调查这一点时,我发现了各种来源(例如,github.community https://github.community/t/how-do-i-get-the-git-diff-compared-to-main/179296, and 代码示例 in the github.com/actions/checkout 自述文件 https://github.com/actions/checkout/#readme) ...我发现以下上下文变量可用:

  • github.ref
  • github.sha
  • github.event.pull_request.head.ref
  • github.event.pull_request.head.sha
  • github.event.pull_request.base.ref
  • github.event.pull_request.base.sha

然而,除了前两个(github.ref and github.sha) I 在任何 github actions 文档中都找不到其他四个.

我的问题是这样的:是否有任何地方记录了可用上下文变量的完整列表?

例如,我有找到了这个 https://docs.github.com/en/actions/learn-github-actions/contexts#github-context,但它只列出了 github 上下文对象下一级的上下文变量。我找不到上述更深层嵌套变量的文档。可能还有其他可能非常有用的上下文变量,但我似乎找不到complete列出,而不是仅列出那些碰巧被提及并分散在各种代码示例中的内容。


我认为你想区分上下文变量和有效负载。

上下文变量在大多数情况下都可用,并且记录了异常情况(如您所发现的):https://docs.github.com/en/actions/learn-github-actions/contexts#example-printing-context-information-to-the-log https://docs.github.com/en/actions/learn-github-actions/contexts#example-printing-context-information-to-the-log

另一方面,有效负载取决于事件类型。如果您运行工作流程的结果是on: pull_request你会得到一个与运行它不同的有效负载,因为on: push(ETC..)。

我从未见过列出所有有效负载的文档,但我相信您可以从 webhooks 中获得灵感。例如,如果您在创建拉取请求时运行工作流,则可以在此处查看拉取请求的 Webhook 负载:https://docs.github.com/en/developers/webhooks-and-events/webhooks/webhook-events-and-payloads#webhook-payload-example-33 https://docs.github.com/en/developers/webhooks-and-events/webhooks/webhook-events-and-payloads#webhook-payload-example-33

自从两人not被记录为相同的,您可能不得不重新转储事件并检查您实际得到的内容。在里面docs https://docs.github.com/en/actions/learn-github-actions/contexts#example-printing-context-information-to-the-log-file,GitHub 有一个示例如何将上下文转储作为工作流程的一部分:

jobs:
  one:
    runs-on: ubuntu-latest
    steps:
      - name: Dump GitHub context
        env:
          GITHUB_CONTEXT: ${{ toJSON(github) }}
        run: echo "$GITHUB_CONTEXT"
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

github 操作上下文的完整列表 的相关文章

随机推荐

  • 不要重写静态 css/js/img 文件

    我试图让我的 htaccess 文件不重写我的静态文件 js css images 这是我当前的 htaccess 文件 RewriteEngine on RewriteCond SCRIPT FILENAME f RewriteCond
  • 将字符串转换为字节数组,然后返回原始字符串

    在Java或Android中是否可以将字符串转换为字节数组 然后将其转换回原始字符串 我的目标是将一些字符串发送到微控制器 Arduino 并将其存储到 EEPROM 这是唯一的 1 KB 中 我尝试使用MD5 http en wikipe
  • ASP.Net 的最佳“加载”反馈?

    因此 我们有一个 ASP Net 应用程序 相当标准 并且有很多更新面板和回发 在某些页面上我们有
  • 如何通过 Cygwin 在 Windows 上安装 sshpass?

    在 CygWin 的包窗口中 当我输入 sshpass 时 什么也没有出现 我尝试安装类似的软件包 如 openssh 等 希望其中之一包含 sshpass 但没有运气 sshpass 不作为 Cygwin 软件包提供 这意味着您需要从源代
  • 在 Matlab 中从 .ravi 文件中提取温度

    我的问题 很像这里的帖子 如何从 ravi 文件获取数据 https stackoverflow com questions 58899981 how can i get data from ravi file 我有一个 ravi 文件 辐
  • 在 ggplot 中添加第二个 geom_tile 层

    我有一个相对简单的热图geom tile在ggplot2中 它只是一个由连续数据组成的小矩阵 如彩色框 df1 我想覆盖第二个逻辑 geom tile 来概述TRUE值 df2 这样的事可以做吗 我知道将两个热图添加在一起看起来很丑陋 但这
  • 我如何在 RFM.RFMID=PV.RFMID [重复] 上使用不同的 INNER JOIN RFM

    这个问题在这里已经有答案了 可能的重复 从多个表中获取数据 https stackoverflow com questions 11738574 get data from multiple table SELECT PM PMID RFM
  • 添加故事板视图作为以编程方式创建的视图的子视图

    我创建了一个特殊的 UIView 类 它具有某些属性 并且我以编程方式执行此操作 因为它通常是空白的 但有时会包含其他视图 我知道如果我以编程方式创建 UIView 我可以做类似的事情 specialView addSubview aVie
  • CKEditor + Yii 加载 AJAX:$_POST 不包含更新的值

    简而言之 我正在使用 Yii 框架 我的页面上有一个 Ckeditor 窗口 php yii 框架 工作正常 当我点击按钮时 会生成一个新的 CKeditor 窗口并通过 AJAX 调用显示 问题 这个新的 CKEditor 窗口正确显示数
  • 如何隐藏 HTML 页面的源代码

    我创建了一个 HTML 页面 现在想隐藏源代码并对其进行加密 我怎样才能做到这一点 您可以禁用右键单击 但这是一个坏主意 因为专家可以从您的页面读取任何内容 您无法完全隐藏页面源 这是不可能的 互联网上没有什么是足够安全的 无论如何 您都可
  • 等高列和垂直对齐列中的图像?

    想知道是否有人可以向我展示在图像列中垂直对齐图像并使列的高度等于文本列的最佳方法 CSS padding 0 margin 0 col width 50 float left height 100 col text background s
  • Mac 上的 Qt MySQL

    我浪费了大约 6 个小时试图按照网上的各种说明让 MySQL 与 Qt 一起工作 我现在就想把自己的手腕砍掉 有谁对如何将 QMYSQL 驱动程序安装到 Qt 中有简单和详细的解释吗 我有 Mac 10 6 我是初学者 我将衷心感谢您的帮助
  • Android 中的 Facebook Like 按钮集成

    我想在我的 Android 应用程序中集成 Facebook Like 按钮 请告诉我如何将其集成到 Android 中的步骤 我会尝试使用包含您从中获得的标准 html 集成的 webview 来完成此操作facebook http de
  • scp 或 sftp 使用单个命令复制多个文件

    我想将文件从远程服务器复制到不同的目录中 例如 我想同时运行这 4 个命令 scp remote A 1 txt local A 1 txt scp remote A 2 txt local A 2 txt scp remote B 1 t
  • 解析推送通知最终在 Android 后台崩溃

    我正在使用 Parse 在 android 中推送通知 但当我关闭 wifi 时 它最终会在后台崩溃 它给了我错误 java lang RuntimeException 无法启动接收器 com parse ParseBroadcastRec
  • 从单个 Hive UDF 创建多个列

    我正在使用 Amazon EMR 和 Hive 0 11 我正在尝试创建一个 Hive UDF 它将从一个 UDF 调用返回多个列 例如 我想调用如下所示的 UDF 并返回几个 命名的 列 SELECT get data columnnam
  • 在 Android 中使用工具栏实现正确的后退导航和主页按钮处理

    我在同一活动中使用单个活动和多个片段 附有屏幕截图 来提供无缝导航 但是在实现了最新的工具栏和导航视图之后 似乎很难处理导航和主页按钮 我在以下方面遇到麻烦 Managing the Hamburger Back button at lef
  • System.Drawing.Point' 到 'System.Windows.Point 的转换器

    我正在尝试在 WPF 中绘制一些实体 我的集合包含 System Drawing Rectangle 对象 当我尝试在 WPF XAML 中访问这些对象的位置时 出现以下错误 无法创建默认转换器来执行类型 System Drawing Po
  • 如何创建带有标签和值的 Winforms 组合框?

    我主要是一名 ASP NET 开发人员 但我正在开发 WinForms 应用程序 并注意到 ASP NET 组合框 html 选择 和 WinForms 之间存在很大差异 我发现 也许是错误的 WinForm 的组合框只有一个 标签 而 A
  • github 操作上下文的完整列表

    在调查如何在 github 操作中 我可以将存储库中特定文件的 基本 版本与文件的拉取请求 头 版本进行比较 在调查这一点时 我发现了各种来源 例如 github community https github community t how