Apply tightened style rules across content; add CustomerQuote component #68
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| 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." |