-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
7701398
commit 6fbfa62
Showing
1 changed file
with
141 additions
and
0 deletions.
There are no files selected for viewing
This file contains 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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,141 @@ | ||
# Summary: This GitHub Actions workflow fetches content from various external sources, updates a glossary, and deploys changes to GitHub Pages. | ||
|
||
name: Import Wiki | ||
on: | ||
# A: Triggered on push to the main branch: | ||
# push: | ||
# branches: | ||
# - main | ||
|
||
# B: Triggered on manual workflow dispatch: | ||
workflow_dispatch: | ||
|
||
## C: Triggered on Wiki changes: | ||
# gollum | ||
|
||
jobs: | ||
|
||
############################## | ||
############################## | ||
deploy: | ||
name: Import Wiki | ||
runs-on: ubuntu-latest | ||
|
||
steps: | ||
- uses: actions/checkout@v3 | ||
- uses: actions/setup-node@v3 | ||
with: | ||
node-version: 19 | ||
cache: npm | ||
|
||
- name: Install dependencies | ||
run: npm ci | ||
|
||
|
||
|
||
############################## | ||
- name: Import Wiki | ||
env: | ||
TERMS_WOT_MANAGE_MARKDOWN: ./docs/02_overview/overview-and-context.mdx | ||
TERMS_WOT_MANAGE_JSON_DIR_NAME: ./static/json/ | ||
TERMS_WOT_MANAGE_JSON_FILE_NAME: overview.json | ||
TERMS_WOT_MANAGE_JSON_ENDPOINT: ${{ secrets.TERMS_WOT_MANAGE_JSON_ENDPOINT }} | ||
ANNOTATED_COPIES_OUTPUT_DIR: ./docs/08_annotated-copies/ | ||
ANNOTATED_COPIES_INPUT_DIR: ./static/json/externalContentMetaData.json | ||
SEARCH_INDEX_DIR: search-index-typesense | ||
GENERIC_SCRAPER_JSON_ENDPOINT: ${{ secrets.GENERIC_SCRAPER_JSON_ENDPOINT }} | ||
ANNOTATED_COPIES_JSON_ENDPOINT: ${{ secrets.ANNOTATED_COPIES_JSON_ENDPOINT }} | ||
GLOSSARY_OVERVIEW_JSON_LABEL: Glossary | ||
GLOSSARY_OVERVIEW_JSON_DESCRIPTION: Web of Trust Glossary | ||
GLOSSARY_DIR: 04_glossary | ||
GENERATED_JSON_GLOSSARIES_DIR: ./static/json/external-glosseries/glossaries/ | ||
GENERATED_JSON_DICTIONARY_DIR: static/json/external-glosseries/glossaries-combined | ||
run: | | ||
echo "Clone the wiki" | ||
# Step 1: Checkout wiki | ||
git clone https://github.com/WebOfTrust/WOT-terms.wiki.git temp-wiki | ||
# remove the .git folder | ||
rm -rf temp-wiki/.git | ||
rm -rf temp-wiki/.gitignore | ||
# Create a file in temp-wiki/ called ”_category_.json” | ||
echo "{ | ||
\"label\": \"${GLOSSARY_OVERVIEW_JSON_LABEL}\", | ||
\"link\": { | ||
\"type\": \"generated-index\", | ||
\"description\": \"${GLOSSARY_OVERVIEW_JSON_DESCRIPTION}.\" | ||
} | ||
}" > temp-wiki/_category_.json | ||
# Step 2: Copy Wiki To Docusaurus Glossary directory | ||
# Create the directory if it doesn't exist | ||
mkdir -p docs/${GLOSSARY_DIR} | ||
# Copy all new and updated files from temp-wiki/ to docs/04_glossary/ | ||
# Delete any files in docs/04_glossary/ that do not exist in temp-wiki/ | ||
rsync -a --delete --exclude='.gitignore' temp-wiki/ docs/${GLOSSARY_DIR} | ||
# Step 3: Cleanup | ||
# The /temp-wiki directory is not needed anymore | ||
rm -rf temp-wiki/ | ||
# Step 4: Fixes | ||
echo "Fix dashes in filenames coming from Wiki" | ||
node maintenance/fixDashInWikiCopyFilenames.js | ||
############################## | ||
- name: Commit and push the changes after fetching content from various external sources | ||
run: | | ||
echo "Initial status:" | ||
git status | ||
git config --local user.email "[email protected]" | ||
git config --local user.name "GitHub Action" | ||
git add -A | ||
echo "Status after git add:" | ||
git status | ||
git diff --cached --exit-code && exit 0 # Exit if no changes in the staging area | ||
echo "Committing changes:" | ||
git commit -m "chore: fetch content from various external sources" | ||
echo "Pushing changes:" | ||
git push | ||
echo "Final status:" | ||
git status | ||
############################## | ||
|
||
|
||
|
||
# ############################## | ||
# - name: Build website | ||
# run: npm run build | ||
# ############################## | ||
|
||
|
||
|
||
# ############################## | ||
# # Docs: https://github.com/peaceiris/actions-gh-pages#%EF%B8%8F-docusaurus | ||
# - name: Deploy to GitHub Pages | ||
# uses: peaceiris/actions-gh-pages@v3 | ||
# with: | ||
# # https://github.com/WebOfTrust/WOT-terms/settings/secrets/actions, section “Repository secrets”, entry: “ACCESS_TOKEN” | ||
# github_token: ${{ secrets.GITHUB_TOKEN }} | ||
# | ||
# # Build output to publish to the `gh-pages` branch: | ||
# publish_dir: ./build | ||
# # The following lines assign commit authorship to the official | ||
# # GH-Actions bot for deploys to `gh-pages` branch: | ||
# # https://github.com/actions/checkout/issues/13#issuecomment-724415212 | ||
# # The GH actions bot is used by default if you didn't specify the two fields. | ||
# # You can swap them out with your own user credentials. | ||
# user_name: github-actions[bot] | ||
# user_email: 41898282+github-actions[bot]@users.noreply.github.com | ||
# ############################## |