Skip to content

.github

The .github/workflows directory contains GitHub Actions workflows that automate aspects of the project's development and deployment lifecycle. These workflows are defined using YAML files and are triggered by events such as pushes, pull requests, and releases.

Here's a breakdown of the key files:

  • publish_site.yml: This workflow publishes the self-documentation generated by repo-guide to GitHub Pages. It's triggered when a new release is created or manually via workflow_dispatch. The workflow first runs tests on multiple Python versions. If the tests pass, it then builds and deploys the documentation using the repo-guide command with the --gh-deploy option. It also sets up caching to speed up subsequent builds. The LLM_GEMINI_KEY secret is used for features that integrate with the Gemini LLM.

  • test.yml: This workflow runs tests on multiple Python versions whenever code is pushed or a pull request is made. It uses the uv package manager to install the project and its dependencies and then runs pytest to execute the tests.

  • publish.yml: This workflow publishes the Python package to PyPI when a new release is created. It first runs tests on multiple Python versions. If the tests pass, it then builds the package using uv build and publishes it to PyPI using the pypa/gh-action-pypi-publish action. It configures an environment named "release" and requires write permissions for the id-token.