如何共享/扩展/重用/引用 GitHub Workflow?

2024-05-09

我有两个工作流程。一种方式是通过推送到 master 来部署到测试环境。另一个在发布到生产环境时部署。它们90%相同,代码复制粘贴。

是否有一个概念,例如提取部分重复逻辑并将其放入自己的文件/部分/片段中?


GitHub Actions 中的重用工作流程现已推出公开测试版:

  • 重用工作流程 https://docs.github.com/en/actions/learn-github-actions/reusing-workflows
  • GitHub 博客 https://github.blog/changelog/2021-10-05-github-actions-dry-your-github-actions-configuration-by-reusing-workflows/

总而言之,必须重用的工作流程需要workflow_call扳机。然后,调用者工作流程可以通过使用直接在作业中引用它uses关键字如下例所示,直接引用自GitHub 页面 https://docs.github.com/en/actions/learn-github-actions/reusing-workflows#calling-a-reusable-workflow.

jobs:
  call-workflow-1:
    uses: octo-org/this-repo/.github/workflows/workflow-1.yml@172239021f7ba04fe7327647b213799853a9eb89
  call-workflow-2:
    uses: octo-org/another-repo/.github/workflows/workflow-2.yml@v1

它确实有一些局限性 https://docs.github.com/en/actions/learn-github-actions/reusing-workflows#limitations though.

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

如何共享/扩展/重用/引用 GitHub Workflow? 的相关文章

  • Git 中的作者和提交者有什么区别?

    我刚刚在 GitHub 上发现了以下提交 https github com felixge node formidable commit 0a0b150668daa3c6f01626d2565b898e5da12392 https gith
  • git push 无法在 cron 作业中工作

    我目前正在清理 CentOS 6 服务器上其他人留下的烂摊子 有一个应用程序需要每6小时备份一次到github帐户 有一个脚本负责准备数据并负责 git add 和 git commit git Push 由 expect 脚本负责 这样做
  • Bazel 构建缺少严格的依赖关系

    我正在尝试使用 brazel 构建 Go 应用程序 它是一个现有的私有 GitHub 存储库 位置如下 github xyz com repo name 我正在研究 我的目标是从 main go 文件创建一个二进制文件 该文件的方法依赖于其
  • 从 GitHub Pages 中删除 html 扩展

    我正在使用 GitHub 页面来托管我的最新网站 http mysite github io 我想知道是否有办法从子页面末尾删除 html 扩展名 http mysite github io contact html 因为无法访问服务器 它
  • 如何在 GitHub Action 中推送到受保护的主分支?

    这是我的 github 操作工作流程 name Release on push branches main jobs release name Release runs on ubuntu latest steps name Checkou
  • iOS CoreData:“数据模型版本编译器”错误

    我在项目中创建了一个数据模型文件 ChatModel xcdatamodeld 然后我合并了github上的分支 project pbxproj 中存在冲突 我修好了它们 然后错误就发生了 Users mac zhongqing ios Z
  • Git推送大文件时远端意外挂断

    当我尝试推送到我的 bitbucket 存储库时 出现以下错误 事实上 在 GitHub 中也是如此 数物体 48 完成 增量压缩最多使用 2 个线程 压缩对象 100 38 38 完成 写入对象 100 48 48 1 95 MiB 38
  • 如何在 JS 文件中使用 Github 机密

    我有一个基本的 git 存储库 其中包含用于构建和部署的 github 操作 主要是 HTML 和 TS 文件 但是我必须在一些需要保密的 API 密钥中使用 所以我想办法为他们使用 GITHUB SECRETS 如何在我的 js 或 TS
  • Github 拉取请求显示太多更改/提交

    我们有两个分行 develop and master 由于某种原因 当我创建 PR 时develop gt master 它显示了以前提交和更改的完整列表 即使我只做了一行更改develop 另外 当我能够从命令行合并时 它会说 无法自动合
  • Github Action 触发另一个存储库更新(push、pull_request)

    我在为我和一些朋友设置适当的构建链时遇到一些麻烦 因此 我分叉了两个存储库 官方 ghidra 和 ghidra ci ghidra ci 是一个构建您的 ghidra 分支的存储库 当您挑选一些 pr 时 您可以添加一些尚未添加到官方 g
  • 使用两个帐户推送到 Git

    我跟着这个tuotrial http code tutsplus com tutorials how to work with github and multiple accounts net 22574关于如何在同一台计算机上拥有两个单独
  • 在浏览器中刷新页面而不重新提交表单

    我是一名 ASP NET 开发人员 我通常会发现自己正在浏览器中打开正在处理的网页 Chrome 是我选择的浏览器 但这个问题与任何浏览器都相关 我的工作流程通常是这样的 编写代码 在 Visual Studio 中重建项目 然后使用 Al
  • 在 Azure Pipelines 托管的 Linux 代理上运行 Cypress.io

    我正在尝试在 Azure Pipelines 的托管 Linux 池上运行 Cypress 测试 不幸的是 托管代理没有安装 Cypress 的所有依赖项 运行记录的apt get不起作用 2018 05 18T21 03 14 74233
  • 如何使用“gem install”命令从私有 GitHub 存储库安装 gem

    如何在本地安装托管在 GitHub 上的私人存储库中的 gem 特别是 我们通过gem install命令而不是在 Bundler 中使用 因为它是一个命令行工具 我尝试这样做 gem install githubname repo s h
  • 从 github 中删除子项目提交

    我有两个存储库A and B 我错误地在我的机器上将仓库 B 克隆到了 A 内 我从存储库 B 中删除了所有代码 但是当我在源上从 A 推送并合并代码时 它还显示了子项目提交B在 Github 仓库上 我想从我的 master 上删除子项目
  • 如何使用 GitHub API 一次检索多个用户?

    我能够获取单个用户 或自某个时间戳以来创建的所有用户 或者与 GitHub API 进行某些搜索匹配的位置 https developer github com v3 users get a single user https develo
  • 如何签出仅在“git ls-remote”中列出的分支?

    我遇到了无法切换到仅列出的分支的情况git ls remote 这是详细信息 我分叉了一个 github repoA 作为 repoB 创建了自己的分支并将其推送到 ComputerA 中的 repoB 在 ComputerB 中 我将分叉
  • 从另一个工作流程触发新的工作流程?

    我可以从另一个工作流程触发新的工作流程吗 我试图在第一个工作流程推送新版本后运行工作流程 但它似乎忽略了它 正如这里所描述的 https stackoverflow com a 65698892 4964553 您可以使用以下命令触发另一个
  • 如何生成类似github的影响图?

    是否有一些程序 或者我错过的一些神奇的 git 插件 可以从 git 存储库获取影响图或类似的东西 而无需通过 github 就数据收集而言 我可以生成图表 我不确定从哪里开始编写自己的代码 我假设有一些标志我可以传递给 git log 来
  • 为什么 Github API 只返回前 100 个监视的存储库?

    我正在 Github 上查看 392 个存储库 然而 Github API 只返回 100 有人知道为什么吗 https github com api v2 json repos watched trivektor https github

随机推荐

  • 在 doInBackground 方法中启动活动

    在下面的代码中 我从互联网下载 json 并希望显示在列表中 如果列表为空 则转到另一个活动 但其他活动未启动 没有错误 但没有启动活动 感谢您的帮助 package ir mohammadi android nightly import
  • :confirm 在使用 Rails 3 和 jQuery UJS 时忽略 Rails 中的选项

    我的 Rails 应用程序中有一个项目表 每个项目都有一个删除链接 如下所示 但是 即使用户单击对话框上的 取消 也会发送删除请求 有想法该怎么解决这个吗 我正在使用 Rails 3 Beta 3 以及 jQuery 库和随附的 jQuer
  • Json.Net PopulateObject - 根据ID更新列表元素

    可以定义用于以下目的的自定义 列表合并 策略JsonConvert PopulateObject method Example 我有两个模型 class Parent public Guid Uuid get set public stri
  • 使用 Bower 添加 ui.bootstrap 依赖项

    我正在尝试将 ui bootstrap 依赖项添加到我的角度项目中 我正在使用 yeoman bower 我这样做了 哟有角 Bower 安装 Angular UI 然后我添加到我的 index html 文件中 和 咕噜发球 然后我将 u
  • 如何拆分一行并重新排列其元素?

    我在一行中有一些数据 如下所示 abc edf xyz rfg yeg udh 我想呈现如下数据 abc xyz yeg edf rfg udh 以便打印备用字段并用换行符分隔 有没有这样的衬里 下列awk脚本可以做到这一点 gt echo
  • java.lang.NoClassDefFoundError:HttpSessionListener

    我正在尝试部署一场我没有编写的战争 但我在日志中收到此错误 java lang NoClassDefFoundError HttpSessionListener 我知道 HttpSessionListener 位于servlet api j
  • 如何在流中收集到TreeMap中?

    我有两个Collectors groupingBy在流中 我需要收集所有信息TreeMap 我的代码 Map
  • 如何在 laravel/php 中访问该集合的内容

    我是 Laravel 的新手 正在做一个构建迷你社交网络应用程序的项目 我有一个与用户模型有关系的帖子模型 我有一个帖子页面 其中仅显示经过身份验证的用户及其朋友的帖子 在我的 PostController 中 我像这样查询经过身份验证的用
  • mvc3,你能给控制器一个显示名称吗?

    我用的是mvc3 是否可以为控制器和操作指定显示名称 DisplayName Facebook Employee public class EmployeeController Controller 在我的面包屑中 我将获得控制器名称和操作
  • 使用 appcelerator titan 在 android 中后退按钮退出应用程序

    我是钛开发的新手 在本机 android 中 如果我们按下后退按钮 则仅当前活动将被关闭 并且它将返回到上一个活动 但是当我使用 Titanium 在 Android 中按下后退按钮时 它会从应用程序退出 我怎样才能改变这种行为 有两种类型
  • iOS:在代码中访问 app-info.plist 变量

    我正在开发通用应用程序 并且希望访问代码中 app info plist 文件中存储的值 原因 我使用以下方法从故事板动态实例化 UIViewController UIStoryboard storyboard UIStoryboard s
  • 在 React 中更新状态时递归过多

    在此示例中 当我尝试在componentDidUpdate生命周期回调 我得到too much recursion错误 我应该如何更新状态 import React from react class NotesContainer exten
  • java.sql.SQLException: ORA-01005: 给定的密码为空;登录被拒绝

    我在尝试连接到数据库时遇到以下异常 java sql SQLException ORA 01005 null password given logon denied at oracle jdbc driver T4CTTIoer proce
  • Pandas 将行中的非空值获取到一个单元格中[重复]

    这个问题在这里已经有答案了 给定以下数据框 a pd DataFrame A 1 2 B 4 0 C 1 2 a A B C 0 1 4 1 1 2 0 2 我想创建一个新专栏D包含由列分隔的非空值 每行 像这样 A B C D 0 1 4
  • 使用 Gson 序列化时如何公开类名

    我的场景非常复杂 但总结如下 我试图了解编译器的源代码 并了解每个 AST 节点代表什么 我正在生成不同程序的 AST 的 JSON 序列化 然后检查可视化的 JSON 输出 它工作得很好 除了一个问题是在 Gson 中生成的 JSON 数
  • 方案中的尾递归幂函数

    我在方案中编写尾递归幂函数时遇到问题 我想使用辅助函数来编写该函数 我知道我需要一个参数来保存累计值 但在那之后我就陷入了困境 我的代码如下 define pow tr a b define pow tr h result if b 0 r
  • Python包不安装子模块

    我在 dev 分支中创建了一个具有以下结构的包 在验证包安装正确之前不会合并到 main mypackage init py setup py requirements txt module py subpackage one init p
  • Jackson Json 将对象反序列化为列表

    我正在使用 Spring 的 Web 服务RestTemplate并反序列化Jackson 在来自服务器的 JSON 响应中 其中一个字段可以是对象或列表 这意味着它可以是 result or result 有没有办法通过对我要反序列化的类
  • 如何计算两个ip之间的主机数量? C#

    我有两个ip 1 1 1 1 1 2 4 4 4 4 显然这只是一个例子 这是一个动态计算器 如果子网掩码不相关 我如何计算所述 ip 之间的主机数量 要计算 理论 IP 地址的数量 您需要将每个 IP 地址转换为其 32 位整数格式 这实
  • 如何共享/扩展/重用/引用 GitHub Workflow?

    我有两个工作流程 一种方式是通过推送到 master 来部署到测试环境 另一个在发布到生产环境时部署 它们90 相同 代码复制粘贴 是否有一个概念 例如提取部分重复逻辑并将其放入自己的文件 部分 片段中 GitHub Actions 中的重