【问题标题】:GitHub action, trigger from a certain conditionGitHub动作,从某个条件触发
【发布时间】:2021-02-07 22:25:26
【问题描述】:

我有一个 Repo,人们可以在其中上传他们的脚本,在其中他们使用一种以上的语言解决特定问题。

脚本根据语言进行隔离。即有文件夹PythonJavaScriptGo 等,其中有多个子目录,它们包含脚本和README.md

我想做一个 PyLint 动作,所以当有人开始 PR 时,动作会告诉我他们的 PyLint 分数,我可以决定是否合并。

我希望仅当有人启动 PR 并且提交具有 .py 文件(即使用的语言是 python)时才触发此操作。

有人可以指导我吗?

.yml 我有的文件中

on:
  pull_request:
    branches:
      - master
    path:
      - '**.py'

这并不能解决问题。

完整的工作流程

name: PyLint Runner

on:
  pull_request:
    branches:
      - master
    path:
      - '**.py'

jobs:
  build:

    runs-on: ubuntu-latest

    steps:
    - uses: actions/checkout@v1
    - name: Set up Python 3.8
      uses: actions/setup-python@v1
      with:
        python-version: 3.8
    - name: Install Requirements
      run: |
        python -m pip install --upgrade pip
        pip install pylint
    - name: Run Pylint
      run: |
        python pyLint.py --path ./src --threshold 1.5

【问题讨论】:

    标签: github yaml github-actions


    【解决方案1】:

    您不应该设置path,而是设置paths 键(复数):

    name: PyLint Runner
    
    on:
      pull_request:
        branches:
          - master
        paths:
          - '**.py'
    

    如果提交包含任何修改过的*.py 文件,那应该会触发您的工作流程。文档说工作流将仅针对修改后的文件(已经在版本控制下的文件)触发。它没有说明新创建的文件。

    【讨论】:

    • 我知道感谢您提供的信息。那么你的意思是,据你所知,GitHub action 中只能使用 VDS 下的文件(我脑子里没有合适的词)?
    猜你喜欢
    • 2021-10-05
    • 2022-12-18
    • 2020-10-26
    • 2020-10-24
    • 2021-05-09
    • 2020-11-28
    • 1970-01-01
    • 2012-01-11
    • 1970-01-01
    相关资源
    最近更新 更多