Skip to content

Build the web book #367

Build the web book

Build the web book #367

Workflow file for this run

name: Build the web book
on:
push:
branches: main
tags: "v*"
workflow_dispatch:
inputs:
release:
description: Release this version
type: boolean
default: false
publish:
description: Package index to publish to
type: choice
options:
- none
- PyPI
# - TestPyPI
env:
PYPI_PACKAGE: hexdoc-hexical
permissions:
contents: read
jobs:
hexdoc:
uses: hexdoc-dev/hexdoc/.github/workflows/hexdoc.yml@v1!0.1.dev
permissions:
contents: write
pages: read
secrets:
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
python-version: '3.11'
release: |-
${{
github.event_name != 'push' && inputs.release
|| github.event_name == 'push' && startsWith(github.event.head_commit.message, '[Release]')
|| github.event_name == 'push' && startsWith(github.ref, 'refs/tags')
}}
publish-pypi:
runs-on: ubuntu-latest
needs: hexdoc
if: |-
needs.hexdoc.outputs.release == 'true' &&
(github.event_name == 'push' || inputs.publish == 'PyPI')
environment:
name: pypi
url: https://pypi.org/p/${{ env.PYPI_PACKAGE }}
permissions:
id-token: write
steps:
- name: Download package artifact
uses: actions/download-artifact@v3
with:
name: hexdoc-build
path: dist
- name: Publish to PyPI
uses: pypa/gh-action-pypi-publish@release/v1
# Uncomment if you want to try publishing to TestPyPI before using the real index.
# publish-testpypi:
# runs-on: ubuntu-latest
# needs: hexdoc
# if: github.event_name != 'push' && inputs.publish == 'TestPyPI'
# environment:
# name: testpypi
# url: https://test.pypi.org/p/${{ env.PYPI_PACKAGE }}
# permissions:
# id-token: write
# steps:
# - name: Download package artifact
# uses: actions/download-artifact@v3
# with:
# name: hexdoc-build
# path: dist
# - name: Publish to TestPyPI
# uses: pypa/gh-action-pypi-publish@release/v1
# with:
# repository-url: https://test.pypi.org/legacy/