Github 操作:Post 使用 pylint 结果对 PR 进行评论
Github action: Post comment to PR with pylint result
我正在设置我的 github CI 管道,目前我正在尝试将 pylint 设置为 运行 在拉取请求时自动。如何将 pylint 的结果写入 PR 评论?
这就是我的。我尝试在 mshick/add-pr-comment@v1 上使用 github 操作。但是,我不确定如何传递上一步的结果。可不可以只写最后的分数而不写整个结果,因为它很长
name: Python Linting
on:
pull_request:
branches: [ main, dev ]
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Set up Python 3.10
uses: actions/setup-python@v2
with:
python-version: "3.10"
- name: Install dependencies
run: |
python -m pip install --upgrade pip
if [ -f requirements.txt ]; then pip install -r requirements.txt; fi
- name: Lint with pylint
run: |
pip install pylint
pylint ./src --exit-zero
- name: Post result to PR
- uses: mshick/add-pr-comment@v1
with:
message: |
**Hello**
repo-token: ${{ secrets.GITHUB_TOKEN }}
repo-token-user-login: 'github-actions[bot]' # The user.login for temporary GitHub tokens
allow-repeats: false # This is the default
这是我的pylint结果,至少他最后一行,完整的结果真的很长:
-----------------------------------
Your code has been rated at 3.31/10
为了达到你想要的效果,你必须使用 sceipt 或 shell 命令(我不知道,因为它取决于上下文)来提取命令输出的一部分你想要(例如:您的代码被评为 3.31/10),然后将其添加为环境变量(或输出)以在下一步中使用它。
我会在你的工作中做这样的事情:
- name: Lint with pylint
run: |
pip install pylint
OUTPUT=$(pylint ./src --exit-zero)
#OUTPUT=$(shell command or script to extract the part your want)
echo "MESSAGE=$OUTPUT" >> $GITHUB_ENV
- name: Post result to PR
uses: mshick/add-pr-comment@v1
with:
message: ${{ env.MESSAGE }}
repo-token: ${{ secrets.GITHUB_TOKEN }}
repo-token-user-login: 'github-actions[bot]' # The user.login for temporary GitHub tokens
allow-repeats: false # This is the default
其中 echo "MESSAGE=$OUTPUT" >> $GITHUB_ENV
会将 MESSAGE 添加到 github 上下文环境中,以便能够在下一步中与 ${{ env.MESSAGE }}
一起使用。
我正在设置我的 github CI 管道,目前我正在尝试将 pylint 设置为 运行 在拉取请求时自动。如何将 pylint 的结果写入 PR 评论?
这就是我的。我尝试在 mshick/add-pr-comment@v1 上使用 github 操作。但是,我不确定如何传递上一步的结果。可不可以只写最后的分数而不写整个结果,因为它很长
name: Python Linting
on:
pull_request:
branches: [ main, dev ]
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Set up Python 3.10
uses: actions/setup-python@v2
with:
python-version: "3.10"
- name: Install dependencies
run: |
python -m pip install --upgrade pip
if [ -f requirements.txt ]; then pip install -r requirements.txt; fi
- name: Lint with pylint
run: |
pip install pylint
pylint ./src --exit-zero
- name: Post result to PR
- uses: mshick/add-pr-comment@v1
with:
message: |
**Hello**
repo-token: ${{ secrets.GITHUB_TOKEN }}
repo-token-user-login: 'github-actions[bot]' # The user.login for temporary GitHub tokens
allow-repeats: false # This is the default
这是我的pylint结果,至少他最后一行,完整的结果真的很长:
-----------------------------------
Your code has been rated at 3.31/10
为了达到你想要的效果,你必须使用 sceipt 或 shell 命令(我不知道,因为它取决于上下文)来提取命令输出的一部分你想要(例如:您的代码被评为 3.31/10),然后将其添加为环境变量(或输出)以在下一步中使用它。
我会在你的工作中做这样的事情:
- name: Lint with pylint
run: |
pip install pylint
OUTPUT=$(pylint ./src --exit-zero)
#OUTPUT=$(shell command or script to extract the part your want)
echo "MESSAGE=$OUTPUT" >> $GITHUB_ENV
- name: Post result to PR
uses: mshick/add-pr-comment@v1
with:
message: ${{ env.MESSAGE }}
repo-token: ${{ secrets.GITHUB_TOKEN }}
repo-token-user-login: 'github-actions[bot]' # The user.login for temporary GitHub tokens
allow-repeats: false # This is the default
其中 echo "MESSAGE=$OUTPUT" >> $GITHUB_ENV
会将 MESSAGE 添加到 github 上下文环境中,以便能够在下一步中与 ${{ env.MESSAGE }}
一起使用。