Skip to content

Label Child Issues

Label Child Issues #3

name: Label Child Issues
on:
issues:
types: [opened, edited]
jobs:
label_child_issues:
runs-on: ubuntu-latest
steps:
- name: Check for parent issue reference in the body
id: find_parent
run: |
echo "Issue Body: ${{ github.event.issue.body }}"
if [[ "${{ github.event.issue.body }}" =~ parent:\s*#([0-9]+) ]]; then
echo "Found parent issue reference: ${BASH_REMATCH[1]}"
echo "PARENT_ISSUE=${BASH_REMATCH[1]}" >> $GITHUB_ENV
else
echo "No parent issue reference found"
fi
- name: Debug Output
run: |
echo "Parent Issue: $PARENT_ISSUE"
- name: Get parent issue labels
id: get_labels
if: env.PARENT_ISSUE
run: |
labels_to_apply=$(curl -s -H "Authorization: token ${{ secrets.GITHUB_TOKEN }}" \
-H "Accept: application/vnd.github+json" \
https://api.github.com/repos/${{ github.repository }}/issues/${{ env.PARENT_ISSUE }} \
| jq -r '.labels[] | select(.name != "epic") | .name' | tr '\n' '\n')
labels_to_apply="$labels_to_apply\nepic-task"
echo "LABELS=$labels_to_apply" >> $GITHUB_ENV
- name: Apply labels to child issue
if: env.PARENT_ISSUE
uses: actions-ecosystem/action-add-labels@v1
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
labels: ${{ env.LABELS }}