Skip to main content

Generate github actions documentation in markdown format.

Project description

github-actions-docs

Build Status License Latest release

Generates documentations for github actions and reusable workflows.

Features

  • Supports reusable workflows.
  • Highly customizable usage section.
  • Inline tags for more flexibility.

For reusable workflows as they all should be under .github/workflows, one single readme file will be generated for every reusable workflows under that directory.

Commenting # Example: <value> format, In the description part of the inputs section will result in <value> being picked up as the default value of the respecting parameter in the usage section. Otherwise the value would be empty or equal to the default:.

Installation

pip install github-actions-docs

Usage

github-actions-docs .github/actions/example/action.yaml
# Creates or updates .github/actions/example/README.md
github-actions-docs .github/actions/example/action.yaml --verbose --dry-run --show-diff
# Does not save anything on the disk and shows the diff between what would have
# been generated if and existing .github/actions/example/README.md
github-actions-docs .github/workflows/reusable_workflow_1.yaml
# Creates or updates .github/workflows/README.md

As a pre-commit hook

Check pre-commit for further information.

Sample .pre-commit-config.yaml

- repo: https://github.com/rzjfr/github-actions-docs
  rev: 0.2.3
  hooks:
    - id: generate-gh-actions-docs

Options

github-actions-docs --help
#positional arguments:
#  input_files_path      Path of a github action or reusable workflow file(s).
#
#options:
#  -h, --help            show this help message and exit
#  --version             show program's version number and exit
#  --verbose             More verbosity in logging. (default: False)
#  --dry-run             Show content of the generated docs instead of writing it. (default: False)
#  --show-diff           Show diff between existing file and the newly generated one. (default: False)
#  --ignore              Silently ignore invalid files. (default: False)
#  --tag-prefix          Prefix used for the tags in the output. (default: GH_DOCS)
#  --output-mode         Method of output to file. (default: inject) Possible values: [replace, inject]
#  --generation-mode     Whether to create tags inline or only a pair of tags. (default: inline) Possible values: [inline, block]
#  --docs-filename       Creates or updates output on the same path as the input. (default: README.md)
#  --usage-ref-override  Override the uses reference in usage section. By default latest tag or current branch name will be used.

Generation mode

A markdown file will be generated and injected based on a predefined template. You can create your own template by adding tags directly to your readme file. Each tag will be replaced by a pair of BEGIN and END tags enclosing the corresponding content. That's the inline mode.

If the comment tags are too noisy, you can change the generation-mode to the block mode in which only a pair of comment tags will be used to designate the entire generated section.

Full list of tags

tag name corresponding yaml path description type
<!-- GH_DOCS_NAME --> .name Name of the workflow or action both
<!-- GH_DOCS_DESCRIPTION --> .description Description of the workflow or action defaults to file path in workflows both
<!-- GH_DOCS_RUNS --> .runs only for actions Type of the action, in workflows it defaults to reusable workflow constant both
<!-- GH_DOCS_INPUTS --> .inputs for actions and .on.workflow_call.inputs for reusable workflows both
<!-- GH_DOCS_OUTPUTS --> .outputs for actions and .on.workflow_call.outputs for reusable workflows both
<!-- GH_DOCS_SECRETS --> .on.workflow_call.secrets for reusable workflows reusable workflows
<!-- GH_DOCS_TITLE --> NA Top level header for the reusable workflows, defaults to Reusable Workflows reusable workflows
<!-- GH_DOCS_CONTENTS_TABLE_TITLE --> NA Header of table of contents, defaults to List of workflows reusable workflows
<!-- GH_DOCS_CONTENTS_TABLE_ITEM --> NA Content of the table of contents, created dynamically. reusable workflows
<!-- GH_DOCS_USAGE --> NA Creates simple usage block. Check --usage-ref-override both

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

github_actions_docs-0.2.3.tar.gz (13.5 kB view details)

Uploaded Source

Built Distribution

github_actions_docs-0.2.3-py3-none-any.whl (13.9 kB view details)

Uploaded Python 3

File details

Details for the file github_actions_docs-0.2.3.tar.gz.

File metadata

  • Download URL: github_actions_docs-0.2.3.tar.gz
  • Upload date:
  • Size: 13.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.1

File hashes

Hashes for github_actions_docs-0.2.3.tar.gz
Algorithm Hash digest
SHA256 f5c1a9f3614e990aa3b18b5e812b87eb52428bbd02407a0ea9e6fb9623b0deb5
MD5 8abe21e68bf05278656fa4d33e4007c8
BLAKE2b-256 6b89389e4c0ab4243e9fa3227d147eccff5b0ad9ad4d9bb845162894c24c8e8d

See more details on using hashes here.

File details

Details for the file github_actions_docs-0.2.3-py3-none-any.whl.

File metadata

File hashes

Hashes for github_actions_docs-0.2.3-py3-none-any.whl
Algorithm Hash digest
SHA256 9af92005bb7846362328cc0344df61795145c33046149b1fd72122cade2e8ecc
MD5 599bc8d958b1cab2780d8544640bb4bd
BLAKE2b-256 18ea259eacbd64688a11d533b6f880eceb2eaec5c7939576e431bd1c9557de19

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page