Skip to content

Deployment

Alexander Refsum Jensenius edited this page Jun 21, 2026 · 3 revisions

The site deploys automatically to GitHub Pages when changes merge to main.

Workflows (.github/workflows/)

Workflow Trigger What it does
pages.yml Push to main, manual Builds Jekyll (source: site) and deploys to GitHub Pages
web-tests.yml PR, push to main, manual Build, internal links, HTML validation, Pa11y accessibility
enrich-directory-people.yml Daily 05:00 UTC, manual NVA/ORCID sync, results sync, reciprocity, tag merge, validation; may commit to main

Build process

  1. Push to main triggers pages.yml
  2. GitHub Actions installs Ruby gems (Jekyll, plugins)
  3. Jekyll builds site/ into _site/
  4. Output deploys to GitHub Pages
  5. Live at https://mishmash.no (via CNAME)

_site/ is gitignored and not committed.

Nightly directory sync

enrich-directory-people.yml runs these steps in order:

  1. Enrich peopleenrich_directory_from_nva.py refreshes profiles from NVA/ORCID
  2. Sync resultssync_results_from_nva.py updates site/_data/mishmash_results.yml
  3. Fix reciprocitysync_directory_reciprocity.py ensures bidirectional cross-links
  4. Merge tagsmerge_tags.py applies config/tag_merge_map.yml
  5. Validatevalidate_directory.py checks directory integrity
  6. Commit — pushes to main if site/_directory/, site/_data/, or portraits changed

This workflow may push directly to main without a PR. Content editors should pull before starting work if they rely on up-to-date NVA data.

Requires repository secrets: NVA_CLIENT_ID, NVA_CLIENT_SECRET.

Local development

bundle install
bundle exec jekyll serve --livereload   # http://127.0.0.1:4000
bundle exec jekyll build --trace        # output to _site/

Notes

  • future: true — future-dated events and news are published immediately
  • timezone: Europe/Oslo — event dates use Oslo offset in front matter
  • vendor/ contains gem cache — do not edit

PR workflow (content changes)

  1. Branch from main
  2. Commit changes under site/
  3. Open pull request
  4. Wait for Web Quality Checks
  5. Merge → automatic deploy

Clone this wiki locally