32 lines
807 B
Bash
Executable file
32 lines
807 B
Bash
Executable file
#!/bin/bash
|
|
|
|
# Performs spam detection on an issue and labels it if it's spam.
|
|
#
|
|
# Regardless of the spam detection result, the script always exits with a zero
|
|
# exit code, unless there's a runtime error.
|
|
#
|
|
# This script must be run from the root directory of the repository.
|
|
|
|
set -euo pipefail
|
|
|
|
_issue_url="$1"
|
|
if [[ -z "$_issue_url" ]]; then
|
|
echo "error: issue URL is empty" >&2
|
|
exit 1
|
|
fi
|
|
|
|
_suspected_spam_label="suspected-spam"
|
|
_check_issue_script=".github/workflows/scripts/spam-detection/check-issue.sh"
|
|
|
|
_result="$($_check_issue_script "$_issue_url")"
|
|
|
|
if [[ "$_result" == "PASS" ]]; then
|
|
echo "detected as not-spam: $_issue_url"
|
|
exit 0
|
|
fi
|
|
|
|
echo "detected as spam: $_issue_url"
|
|
|
|
gh issue edit --add-label "$_suspected_spam_label" "$_issue_url"
|
|
|
|
echo "issue labelled as suspected spam"
|