44 lines
No EOL
1.4 KiB
YAML
44 lines
No EOL
1.4 KiB
YAML
name: util | get docs changes
|
|
|
|
on:
|
|
workflow_call:
|
|
outputs:
|
|
changes_outside_docs:
|
|
description: "Changes outside docs"
|
|
value: ${{ jobs.get_docs_changes.outputs.changes_outside_docs }}
|
|
|
|
env:
|
|
EXCLUDED_FILE_PATTERNS: '^docs/|^README.md|^CONTRIBUTING.md|^LICENSE\.txt|\.editorconfig|\.gitignore|get_docs_changes.yml'
|
|
|
|
|
|
jobs:
|
|
|
|
steps:
|
|
- name: Checkout code
|
|
uses: actions/checkout@master
|
|
with:
|
|
fetch-depth: 0
|
|
|
|
- name: Check changes outside docs
|
|
id: check_changes
|
|
run: |
|
|
echo "base.sha: ${{ github.event.pull_request.base.sha }}"
|
|
echo "head.sha: ${{ github.event.pull_request.head.sha }}"
|
|
|
|
merge_base_sha=$(git merge-base ${{ github.event.pull_request.base.sha }} ${{ github.event.pull_request.head.sha }})
|
|
|
|
echo "merge_base_sha: $merge_base_sha"
|
|
|
|
changes_outside_docs=$(
|
|
git diff --name-only $merge_base_sha ${{ github.event.pull_request.head.sha }} \
|
|
| grep -vE "${{ env.EXCLUDED_FILE_PATTERNS }}" || true
|
|
)
|
|
|
|
echo $changes_outside_docs
|
|
if [ -z "$changes_outside_docs" ]; then
|
|
echo "No changes outside docs. Skipping tests."
|
|
echo "changes_outside_docs=false" >> $GITHUB_OUTPUT
|
|
else
|
|
echo "Changes detected outside docs."
|
|
echo "changes_outside_docs=true" >> $GITHUB_OUTPUT
|
|
fi |