Add Algolia Index

This commit is contained in:
Rob Winch
2021-11-10 14:10:30 -06:00
parent 98a07a16d3
commit a51f1e1679
3 changed files with 63 additions and 0 deletions

26
.github/actions/algolia-config.json vendored Normal file
View File

@@ -0,0 +1,26 @@
{
"index_name": "session-docs",
"start_urls": [
"https://docs.spring.io/spring-session/"
],
"exclusionPatterns": [
"https://docs.spring.io/spring-security/docs/**"
],
"stop_urls": [
"https://docs.spring.io/spring-security/docs/.*"
],
"selectors": {
"lvl0": {
"selector": "//nav[@class='crumbs']//li[@class='crumb'][last()-1]",
"type": "xpath",
"global": true,
"default_value": "Home"
},
"lvl1": ".doc h1",
"lvl2": ".doc h2",
"lvl3": ".doc h3",
"lvl4": ".doc h4",
"text": ".doc p, .doc td.content, .doc th.tableblock"
}
}

21
.github/actions/algolia-docsearch-scraper.sh vendored Executable file
View File

@@ -0,0 +1,21 @@
#!/bin/bash
###
# Docs
# config.json https://docsearch.algolia.com/docs/config-file
# Run the crawler https://docsearch.algolia.com/docs/run-your-own/#run-the-crawl-from-the-docker-image
### USAGE
if [ "$#" -ne 3 ]; then
echo -e "not enough arguments USAGE:\n\n$0 \$ALGOLIA_APPLICATION_ID \$ALGOLIA_API_KEY \$CONFIG_FILE\n\n" >&2
exit 1
fi
# Script Parameters
APPLICATION_ID=$1
API_KEY=$2
CONFIG_FILE=$3
#### Script
script_dir=$(dirname $0)
docker run -e "APPLICATION_ID=$APPLICATION_ID" -e "API_KEY=$API_KEY" -e "CONFIG=$(cat $CONFIG_FILE | jq -r tostring)" algolia/docsearch-scraper

16
.github/workflows/algolia-index.yml vendored Normal file
View File

@@ -0,0 +1,16 @@
name: Update Algolia Index
on:
schedule:
- cron: '0 10 * * *' # Once per day at 10am UTC
workflow_dispatch: # Manual trigger
jobs:
update:
name: Update Algolia Index
runs-on: ubuntu-latest
steps:
- name: Checkout Source
uses: actions/checkout@v2
- name: Update Index
run: ${GITHUB_WORKSPACE}/.github/actions/algolia-docsearch-scraper.sh "${{ secrets.ALGOLIA_APPLICATION_ID }}" "${{ secrets.ALGOLIA_API_KEY }}" "${GITHUB_WORKSPACE}/.github/actions/algolia-config.json"