68 lines
2.1 KiB
YAML
68 lines
2.1 KiB
YAML
name: "Spec"
|
||
on:
|
||
push:
|
||
branches:
|
||
- main
|
||
pull_request:
|
||
workflow_dispatch:
|
||
|
||
jobs:
|
||
build-openapi:
|
||
name: "🐍 Build OpenAPI definitions for matrix.org"
|
||
runs-on: ubuntu-latest
|
||
container: "python:3.9"
|
||
steps:
|
||
- name: "📥 Source checkout"
|
||
uses: actions/checkout@v2
|
||
- name: "📦 Asset creation"
|
||
run: |
|
||
python3 -m venv env && . env/bin/activate
|
||
pip install -r scripts/requirements.txt
|
||
scripts/generate-matrix-org-assets
|
||
- name: "📤 Artifact upload"
|
||
uses: actions/upload-artifact@v2
|
||
with:
|
||
name: openapi-artifact
|
||
path: assets.tar.gz
|
||
|
||
build-spec:
|
||
name: "📖 Build the spec"
|
||
runs-on: ubuntu-latest
|
||
steps:
|
||
- name: "➕ Setup Node"
|
||
uses: actions/setup-node@v2
|
||
with:
|
||
node-version: '14'
|
||
- name: "➕ Setup Hugo"
|
||
uses: peaceiris/actions-hugo@c03b5dbed22245418539b65eb9a3b1d5fdd9a0a6
|
||
with:
|
||
hugo-version: '0.85.0'
|
||
extended: true
|
||
- name: "📥 Source checkout"
|
||
uses: actions/checkout@v2
|
||
with:
|
||
submodules: 'recursive'
|
||
- name: "⚙️ npm"
|
||
run: |
|
||
npm i
|
||
npm run get-proposals
|
||
- name: "⚙️ hugo"
|
||
run: hugo --baseURL "/unstable" -d "spec"
|
||
- name: "📦 Tarball creation"
|
||
run: tar -czf spec.tar.gz spec
|
||
- name: "📤 Artifact upload"
|
||
uses: actions/upload-artifact@v2
|
||
with:
|
||
name: spec-artifact
|
||
path: spec.tar.gz
|
||
|
||
rebuild-matrixdotorg:
|
||
name: "👷 Rebuild matrix.org"
|
||
needs: build-openapi
|
||
runs-on: ubuntu-latest
|
||
if: ${{ false && github.event_name == 'push' && github.ref == 'refs/head/main' }}
|
||
steps:
|
||
- name: "🪄 Triggering rebuild of matrix.org"
|
||
run: |
|
||
curl -XPOST -u "${{secrets.TRIGGER_MATRIXORG_REBUILD_TOKEN}}" -H "Accept: application/vnd.github.everest-preview+json" -H "Content-Type: application/json" https://api.github.com/repos/${{ github.repository_owner }}/matrix.org/actions/workflows/build-matrix.org.yml/dispatches --data '{"ref": "${{ github.ref }}" }'
|