Skip to content

Separate Metatheory Site Build and Deploy Steps #171

Separate Metatheory Site Build and Deploy Steps

Separate Metatheory Site Build and Deploy Steps #171

# This workflow builds and publishes the Metatheory site to:
# https://plutus.cardano.intersectmbo.org/metatheory/$version
# And optionally to:
# https://plutus.cardano.intersectmbo.org/metatheory/latest
# On push to master, this workflows publishes to:
# https://plutus.cardano.intersectmbo.org/metatheory/master
name: "🔮 Metatheory Site"
on:
push:
branches:
- master
pull_request:
workflow_dispatch:
inputs:
ref:
description: |
The $ref to build off of, e.g. "1.29.0.0", "master", or any other valid git ref.
When making a release, this is usually the version tag, e.g. "1.29.0.0", and will be
equal to the $destination input below. When back-porting this could be a commit sha instead.
required: true
type: string
destination:
description: |
The $destination folder, e.g. when "1.29.0.0" the metatheory site will be deployed to:
https://plutus.cardano.intersectmbo.org/metatheory/1.29.0.0
required: true
type: string
latest:
description: |
If true, then the metatheory site will also be deployed to:
https://plutus.cardano.intersectmbo.org/metatheory/latest.
You want to leave this to true unless you are deploying old versions or back-porting.
type: boolean
required: true
default: true
jobs:
deploy:
name: Deploy
runs-on: [self-hosted, plutus-shared]
permissions:
contents: write
environment:
name: github-pages
steps:
- name: Checkout
uses: actions/checkout@main
with:
ref: ${{ inputs.ref || github.ref_name }}
- name: Build Site
run: |
nix build --accept-flake-config .#plutus-metatheory-site
mkdir _metatheory
cp -RL result/* _metatheory
- name: Deploy Site
if: ${{ github.event_name == 'push' }}
uses: JamesIves/[email protected]
with:
folder: _metatheory
target-folder: metatheory/${{ inputs.destination || github.ref_name }}
single-commit: true
- name: Deploy Site (latest)
if: ${{ github.event_name == 'push' && inputs.latest == true }}
uses: JamesIves/[email protected]
with:
folder: _metatheory
target-folder: metatheory/latest
single-commit: true