Skip to content

meir

meir #59

Workflow file for this run

name: Build in-code documentation
on:
push:
branches:
- main
permissions:
contents: read
pages: write
id-token: write
concurrency:
group: pages
cancel-in-progress: true
jobs:
build-and-deploy:
runs-on: ubuntu-latest
environment:
name: github-pages
url: ${{ steps.deploy.outputs.page_url }}
steps:
- uses: actions/checkout@v6
# Uncomment when Slidev presentations exist in the repo
# - name: Setup Node.js for Slidev
# uses: actions/setup-node@v6
# with:
# node-version: '20'
# - name: Install Slidev and dependencies
# run: |
# npm install -g @slidev/cli
# npm install -g @slidev/theme-default
# npm install -g @slidev/theme-seriph
# npm install -g playwright-chromium
- name: Setup Ruby
uses: ruby/setup-ruby@v1
with:
ruby-version: '3.3'
bundler-cache: true
# - name: Build Slidev presentations
# env:
# CI: true
# NODE_ENV: production
# run: |
# chmod +x build-slidev.sh
# ./build-slidev.sh
- name: Fetch GitHub repo data
env:
JEKYLL_GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: bundle exec ruby fetch_github_repos.rb
- name: Build Jekyll site
env:
JEKYLL_GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: |
bundle exec jekyll build
- name: Index with Pagefind
run: |
sudo chown -R $USER:$USER ./_site
npx -y pagefind --site ./_site
# - name: Copy Slidev presentations to _site
# run: |
# find . -type d -name "*-slidev" -not -path "./_site/*" -not -path "./node_modules/*" -not -path "./.git/*" | while read -r slidev_dir; do
# if [ -f "$slidev_dir/index.html" ]; then
# target_dir="_site/$slidev_dir"
# mkdir -p "$(dirname "$target_dir")"
# cp -r "$slidev_dir" "$(dirname "$target_dir")/"
# fi
# done
- name: Upload artifact
uses: actions/upload-pages-artifact@v5
with:
path: _site
- name: Deploy to GitHub Pages
id: deploy
uses: actions/deploy-pages@v5