better datamodel doc integration #158
Workflow file for this run
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
name: 🚧 Website MkDocs | |
on: | |
pull_request: | |
branches: | |
- master | |
paths: | |
- 'website/**' | |
- '.github/workflows/website.yml' | |
push: | |
branches: | |
- master | |
- website* | |
paths: | |
- 'website/**' | |
- '.github/workflows/website.yml' | |
workflow_dispatch: # useful for testing tx pushes | |
workflow_call: | |
permissions: | |
contents: write | |
defaults: | |
run: | |
working-directory: website | |
jobs: | |
website: | |
runs-on: ubuntu-latest | |
# Skip if this job was scheduled and the runner belongs to a fork (i.e. forks have no use for this action) | |
if: (github.event_name == 'schedule' && github.repository == 'opengisch/QField-docs') || (github.event_name != 'schedule') | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Set up Docker Buildx | |
uses: docker/setup-buildx-action@v3 | |
- uses: actions/setup-python@v5 | |
with: | |
python-version: '3.10' | |
- name: Install Python requirements | |
run: pip install -r requirements.txt | |
- name: Install Python requirements insiders | |
run: pip install -r requirements-insiders.txt | |
env: | |
GH_USER_INSIDER: ${{ secrets.GH_USER_INSIDER }} | |
GH_TOKEN_INSIDER: ${{ secrets.GH_TOKEN_INSIDER }} | |
- name: Install Transifex client | |
run: | | |
curl -OL https://github.com/transifex/cli/releases/download/v1.6.10/tx-linux-amd64.tar.gz | |
tar -xvzf tx-linux-amd64.tar.gz | |
- name: Configure Transifex | |
run: scripts/transifex_utils.py | |
env: | |
TX_TOKEN: ${{ secrets.TX_TOKEN }} | |
- name: Push source files to Transifex | |
if: ${{ github.event_name == 'push' }} | |
run: ./tx push | |
env: | |
TX_TOKEN: ${{ secrets.TX_TOKEN }} | |
- name: Pull translations from Transifex | |
run: | | |
./tx pull --translations --all --minimum-perc 10 | |
./tx status | |
env: | |
TX_TOKEN: ${{ secrets.TX_TOKEN }} | |
- name: Datamodel Documentation | |
run: | | |
LATEST_RELEASE=$(curl --silent "https://api.github.com/repos/opengisch/signalo/releases/latest" | jq -r .tag_name) | |
wget -q https://github.com/opengisch/signalo/releases/download/${LATEST_RELEASE}/signalo-${LATEST_RELEASE}-model-documentation.zip | |
unzip -q signalo-${LATEST_RELEASE}-model-documentation.zip | |
cp -r model-documentation site/ | |
- name: Build documentation | |
run: mkdocs build | |
env: | |
DEFAULT_LANGUAGE_ONLY: false | |
- uses: actions/upload-artifact@v4 | |
if: ${{ github.event_name == 'pull_request' }} | |
with: | |
name: website | |
path: website/site | |
if-no-files-found: error | |
- name: Deploy to GitHub Pages | |
if: ${{ github.event_name == 'push' }} | |
uses: JamesIves/[email protected] | |
with: | |
branch: gh-pages | |
clean: true | |
folder: ./website/site |