Skip to content

Apply tightened style rules across content; add CustomerQuote component #68

Apply tightened style rules across content; add CustomerQuote component

Apply tightened style rules across content; add CustomerQuote component #68

Workflow file for this run

name: IndexNow Ping
on:
push:
branches: [main]
paths:
- 'src/routes/**'
- 'src/lib/blog/**'
- 'src/lib/changelog/**'
- 'src/lib/comparisons/**'
- 'src/lib/fixtures/**'
jobs:
ping:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
with:
fetch-depth: 2
- name: Collect changed URLs
id: urls
run: |
HOST="scanopy.net"
urls=()
for file in $(git diff --name-only HEAD~1 HEAD); do
case "$file" in
src/routes/+page.svelte)
urls+=("https://$HOST/") ;;
src/routes/pricing/*)
urls+=("https://$HOST/pricing") ;;
src/routes/about/*)
urls+=("https://$HOST/about") ;;
src/routes/blog/+page.svelte)
urls+=("https://$HOST/blog") ;;
src/routes/services/*)
urls+=("https://$HOST/services") ;;
src/routes/roadmap/*)
urls+=("https://$HOST/roadmap") ;;
src/routes/community/*)
urls+=("https://$HOST/community") ;;
src/routes/press/*)
urls+=("https://$HOST/press") ;;
src/lib/blog/*.md)
slug=$(basename "$file" .md)
urls+=("https://$HOST/blog/$slug") ;;
src/lib/changelog/*.md)
version=$(basename "$file" .md)
urls+=("https://$HOST/changelog/$version")
urls+=("https://$HOST/changelog") ;;
src/lib/comparisons/*.md)
slug=$(basename "$file" .md)
urls+=("https://$HOST/comparisons/$slug") ;;
src/routes/comparisons/*)
urls+=("https://$HOST/comparisons") ;;
src/lib/fixtures/*)
# Fixture changes likely affect comparison pages; ping the index
urls+=("https://$HOST/comparisons") ;;
esac
done
# Deduplicate
if [ ${#urls[@]} -gt 0 ]; then
readarray -t urls < <(printf '%s\n' "${urls[@]}" | sort -u)
fi
if [ ${#urls[@]} -eq 0 ]; then
echo "skip=true" >> $GITHUB_OUTPUT
echo "No indexable URLs changed."
else
echo "skip=false" >> $GITHUB_OUTPUT
url_json=$(printf '%s\n' "${urls[@]}" | jq -R . | jq -sc .)
echo "url_json=$url_json" >> $GITHUB_OUTPUT
echo "Submitting ${#urls[@]} URL(s):"
printf ' %s\n' "${urls[@]}"
fi
- name: Ping IndexNow
if: steps.urls.outputs.skip != 'true' && steps.urls.outputs.url_json != ''
run: |
KEY="2c25a6ca44a94f73963bb0e43613d656"
HOST="scanopy.net"
curl -sf -X POST "https://api.indexnow.org/indexnow" \
-H "Content-Type: application/json" \
-d "$(jq -n \
--arg host "$HOST" \
--arg key "$KEY" \
--arg keyLocation "https://$HOST/$KEY.txt" \
--argjson urlList '${{ steps.urls.outputs.url_json }}' \
'{host: $host, key: $key, keyLocation: $keyLocation, urlList: $urlList}')"
echo "IndexNow ping sent successfully."