Skip to content

Commit

Permalink
Just publish release branches
Browse files Browse the repository at this point in the history
  • Loading branch information
Frostman committed Dec 18, 2024
1 parent 929d4dc commit d1ea0af
Show file tree
Hide file tree
Showing 4 changed files with 52 additions and 63 deletions.
15 changes: 9 additions & 6 deletions .github/workflows/ci.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ on:
push:
branches:
- master
- release/*
- release/2*
pull_request:
workflow_dispatch:
inputs:
Expand All @@ -27,8 +27,11 @@ jobs:
persist-credentials: false
fetch-depth: 0

- name: Setup Just
uses: extractions/setup-just@v2

- name: Build docs
run: make build
run: just build

- name: Deploy preview to Netlify
uses: nwtgck/actions-netlify@v2
Expand All @@ -46,13 +49,13 @@ jobs:
NETLIFY_SITE_ID: ${{ secrets.NETLIFY_SITE_ID }}
timeout-minutes: 5

- name: Build versioned docs
# TODO support publishing non-dev versions
if: github.event_name == 'push' && github.ref == 'refs/heads/master'
- name: Publish versioned docs
if: github.event_name == 'push' && (github.ref == 'refs/heads/master' || startsWith(github.ref, 'refs/heads/release/2'))
env:
PUSH_TOKEN: ${{ secrets.GH_DEPLOY_PUSH_TOKEN }}
run: |
make deploy RELEASE=dev ALIAS=master
just deploy
just list
git push https://$PUSH_TOKEN@github.com/${{ github.repository }} publish
- name: Setup tmate session for debug
Expand Down
41 changes: 41 additions & 0 deletions Justfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
set shell := ["bash", "-euo", "pipefail", "-c"]

[private]
@default: build

export DOCKER_CLI_HINTS := "false"

image_name := "ghcr.io/githedgehog/hhdocs"
image_version := "20241202"
image := image_name + ":" + image_version

# Run mkdocs or mike CLI in a container
_run +cmd:
docker run -q --pull=always --rm -v $(pwd):/docs -p 8000:8000 {{image}} {{cmd}}

# Build docs site (unversioned)
build: (_run "mkdocs build")

# Clean generated docs site
clean:
rm -rf site

# Serve docs site (unversioned, watches for changes)
serve: (_run "mkdocs serve -a 0.0.0.0:8000")

# List published versions
list: (_run "mike list -b publish")

branch_current := `git branch --show-current --format "%(refname:short)"`
branch_latest := `git branch --list 'release/2*' --format "%(refname:short)" --sort=-version:refname | head -n 1`
release := trim_start_match(branch_current, "release/")

_release := if branch_current == "master" { "dev" } else { release }
_alias := if branch_current == branch_latest { "latest" } else if branch_current == "master" { "master" } else { "" }

# Shoud version that will be deployed (to publish branch)
@version:
echo "Release '{{_release}}' alias '{{_alias}}'"

# Deploy docs site (versioned) to publish branch
deploy release=_release alias=_alias: (_run "mike deploy -b publish -u" release alias)
55 changes: 0 additions & 55 deletions Makefile

This file was deleted.

4 changes: 2 additions & 2 deletions docs/contribute/docs.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,15 +7,15 @@ This documentation is done using [MkDocs](https://www.mkdocs.org) with multiple
In order to contribute to the documentation, you'll need to have Git and Docker installed on your machine as well as any editor of your choice, preferably supporting Markdown preview. You can run the preview server using following command:

``` bash
make serve
just serve
```

Now you can open continuously updated preview of your edits in browser at [http://127.0.0.1:8000](http://127.0.0.1:8000). Pages will be automatically updated while you're editing.

Additionally you can run

```bash
make build
just build
```

to make sure that your changes will be built correctly and doesn't break documentation.
Expand Down

0 comments on commit d1ea0af

Please sign in to comment.