GitHub 的 workflow 和 action 存在一些注意事项,总结如下,以供参考

Workflow

on.issues.types

如果需要判断 label,不需要指定 opened,只需要指定 labeled,因为即使 label 是新建时设置的,也会触发 labeled

permissions

如果需要 checkout 当前 repo,需要添加 contents: write,否则会有权限问题

jobs.check.steps.env

如果需要 checkout 当前 repo,需要添加 GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }},否则会有权限问题

Action

List repository issues

API 不仅返回 issues,也会返回 prs,默认 30 条每页,可以指定 labels 来过滤

List pull requests

API 返回所有 pull requests,默认 30 条每页,可以通过 per_pagepage 参数做分页处理,例如:

const prs = [];
for (let page = 1; ; page++) {
const { data } = await octokit.rest.pulls.list({
...context.repo,
base: `refs/heads/main`,
state: 'open',
per_page: PER_PAGE,
page,
});
prs.push(...data);
if (data.length < PER_PAGE) {
break;
}
}

Get commit status

API 列出所有 contexts 对应的 state,可以过滤当前的 context

Create commit status

API 用于创建 commit 的 status,可指定 statecontextdescription(作为运行结果显示)

Setting

Require status checks

需要在 Branch protection rule 中的 Protect matching branches 下,勾选 Require status checks to pass before merging

Add required checks

需要将当前的 GitHub action 添加到 Status checks that are required

GitHub Workflow 和 Action 的一些注意事项的更多相关文章

  1. GitHub Actions in Action

    GitHub Actions in Action https://lab.github.com/githubtraining/github-actions:-hello-world https://g ...

  2. Oozie workflow工作流action间参数传递实现

    假设workflow里有两个action节点,shell和hive,hive需要用到shell节点里的值,shell脚本如下 #!/bin/sh day=`date '+%Y%m%d%H'` echo ...

  3. Github Action 快速上手指南

    前言 各位读者,新年快乐,我是过了年匆忙赶回上海努力搬砖的蛮三刀. Github之前更新了一个Action功能(应该是很久以前了),可以实现很多自动化操作.用来替代用户自己设置的自动化脚本(比如:钩子 ...

  4. hexo配合github action 自动构建(多种形式)

    已经使用HEXO正常构建GitHub页面 根据github action 给hexo配置自动部署github page 前往墨抒颖的个人网站查看纯净版 1. 为仓库设置访问密钥 第一步先生成密钥,打开 ...

  5. 利用Github Action实现Tornadofx/JavaFx打包

    原文地址: 利用Github Action实现Tornadofx/JavaFx打包 - Stars-One的杂货小窝 最近开了个新项目,主要是个工具软件,也算个人的自娱自乐吧,也算开源的一部分,想着都 ...

  6. Vuex 模块化实现待办事项的状态管理

    前言 在vue里,组件之间的作用域是独立的,父组件跟子组件之间的通讯可以通过prop属性来传参,但是在兄弟组件之间通讯就比较麻烦了.比如A组件要告诉一件事给B组件,那么A就要先告诉他们的爸组件,然后爸 ...

  7. 使用 Github Actions 自动部署 Angular 应用到 Github Pages

    前言 最近在学习 Angular,一些基础的语法也学习的差不多了,就在 github 上新建了一个代码仓库,准备用 ng-zorro 搭个后台应用的模板,方便自己以后写些小东西时可以直接使用.前端项目 ...

  8. 使用github actions 完成一些自动化工作

    github actions 是什么? github actions是github的持续集成及自动化工作流服务,使用起来都比较方便.大部分github actions都可以在https://githu ...

  9. GitHub Secrets All In One

    GitHub Secrets All In One https://docs.github.com/en/free-pro-team@latest/actions/reference/encrypte ...

  10. Github Packages和Github Actions实践之CI/CD

    概述 Github在被微软收购后,不忘初心,且更大力度的造福开发者们,推出了免费私有仓库等大更新.近期又开放了packages和actions两个大招,经笔者试用后感觉这两个功能配合起来简直无敌. G ...

随机推荐

  1. KubeKey 部署 K8s v1.28.8 实战

    在某些生产环境下,我们仅需要一个原生的 K8s 集群,无需部署 KubeSphere 这样的图形化管理控制台.在我们已有的技术栈里,已经习惯了利用 KubeKey 部署 KubeSphere 和 K8 ...

  2. html 根据配置项统一检查文本框数据规范

    <div> 中文名:<input id="txtName" type="text" /><br /> 身份证号:<in ...

  3. JS 通过后台接口返回的URL地址下载文件并保存到本地(已在项目中使用,保存音视频文件)

    今天做antdV表格勾选下载操作时,因为粗心大意碰到了下载问题,特此记录~ 一.单个文件下载逻辑代码如下: const exportFile = (data, fileName, _this)=> ...

  4. Python学习第一周记录

    网上下载了python视频,找了相关资料,看了一个星期,先总结下这个礼拜的小知识点: 第一个小程序"hello word" 开始了解变量赋值,引用输入input; 学会使用判断if ...

  5. 3-2 C++ string类型

    目录 3.2.1 定义和初始化 3.2.2 对string的操作 (一)重要操作一览 (二)读写操作 cin/cout getline : 可读取整行 (三)获取大小 .size() (四)比较.赋值 ...

  6. 超级干货!Air780E的串口通信分享

    ​ 猛然发现,Air780E的串口通信还没分享,难怪已经有小伙伴提出了要求! 那我们来讲解低功耗4G模组Air780E的串口通信的基本用法,小伙伴们,学起来吧! 一.硬件准备  ​ 780E开发板一套 ...

  7. 给网站免费升级https协议

    给网站免费升级HTTPS协议,可以通过申请并部署免费的SSL证书来实现.以下是一个详细的步骤指南: 一.申请免费SSL证书 选择证书颁发机构: 可以选择像JoySSL这样的公益项目,它提供免费.自动化 ...

  8. Code::Blocks C语言新手教学

    ## 简介 C语言是一种广泛应用于系统编程和底层开发的编程语言.它是一种结构化的.面向过程的语言,具有高效的性能和灵活的编程风格.在学习C语言时,通常会使用一些集成开发环境(IDE)来编写.编译和运行 ...

  9. 多校A层冲刺NOIP2024模拟赛08 排列

    多校A层冲刺NOIP2024模拟赛08 排列 一种连续段 dp 的解法. 题面 小 Y 最近在研究组合数学,他学会了如何枚举排列. 小 Z 最近在研究数论,他学会了求最大公约数. 于是小 Y 和小 Z ...

  10. AI 实战篇:Spring-AI再更新!细细讲下Advisors

    在2024年10月8日,Spring AI再次进行了更新,尽管当前版本仍为非稳定版本(1.0.0-M3),但博主将持续关注这些动态,并从流行的智能体视角深入解析其技术底层.目前,Spring AI仍处 ...