mirror of
https://github.com/MillironX/nf-configs.git
synced 2024-11-24 09:09:56 +00:00
56 lines
1.8 KiB
YAML
56 lines
1.8 KiB
YAML
|
name: Fix linting from a comment
|
||
|
on:
|
||
|
issue_comment:
|
||
|
types: [created]
|
||
|
|
||
|
jobs:
|
||
|
deploy:
|
||
|
# Only run if comment is on a PR with the main repo, and if it contains the magic keywords
|
||
|
if: >
|
||
|
contains(github.event.comment.html_url, '/pull/') &&
|
||
|
contains(github.event.comment.body, '@nf-core-bot fix linting') &&
|
||
|
github.repository == 'nf-core/configs'
|
||
|
runs-on: ubuntu-latest
|
||
|
steps:
|
||
|
# Use the @nf-core-bot token to check out so we can push later
|
||
|
- uses: actions/checkout@v3
|
||
|
with:
|
||
|
token: ${{ secrets.nf_core_bot_auth_token }}
|
||
|
|
||
|
# Action runs on the issue comment, so we don't get the PR by default
|
||
|
# Use the gh cli to check out the PR
|
||
|
- name: Checkout Pull Request
|
||
|
run: gh pr checkout ${{ github.event.issue.number }}
|
||
|
env:
|
||
|
GITHUB_TOKEN: ${{ secrets.nf_core_bot_auth_token }}
|
||
|
|
||
|
- uses: actions/setup-node@v2
|
||
|
|
||
|
- name: Install Prettier
|
||
|
run: npm install -g prettier @prettier/plugin-php
|
||
|
|
||
|
# Check that we actually need to fix something
|
||
|
- name: Run 'prettier --check'
|
||
|
id: prettier_status
|
||
|
run: |
|
||
|
if prettier --check ${GITHUB_WORKSPACE}; then
|
||
|
echo "::set-output name=result::pass"
|
||
|
else
|
||
|
echo "::set-output name=result::fail"
|
||
|
fi
|
||
|
|
||
|
- name: Run 'prettier --write'
|
||
|
if: steps.prettier_status.outputs.result == 'fail'
|
||
|
run: prettier --write ${GITHUB_WORKSPACE}
|
||
|
|
||
|
- name: Commit & push changes
|
||
|
if: steps.prettier_status.outputs.result == 'fail'
|
||
|
run: |
|
||
|
git config user.email "core@nf-co.re"
|
||
|
git config user.name "nf-core-bot"
|
||
|
git config push.default upstream
|
||
|
git add .
|
||
|
git status
|
||
|
git commit -m "[automated] Fix linting with Prettier"
|
||
|
git push
|