Skip to content

Latest commit

History

382 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

example workflownpmMaintainability RatingCoverageCodeScene Code Health

Action docs

A CLI to generate and update documentation for GitHub actions or workflows, based on the definition .yml. To update your README in a GitHub workflow you can use the action-docs-action.

TL;DR

Add the following comment blocks to your README.md

<!-- action-docs-header source="action.yml" --><!-- action-docs-description source="action.yml" --> # applicable for actions only
<!-- action-docs-inputs source="action.yml" --><!-- action-docs-outputs source="action.yml" --><!-- action-docs-runs source="action.yml" --> # applicable for actions only

Optionally you can also add the following section to generate a usage guide, replacing <project> and <version> with the name and version of your project you would like to appear in your usage guide.

<!-- action-docs-usage source="action.yml" project="<project>" version="<version>" -->

Generate docs via CLI

npm install -g action-docs
cd<your github action># write docs to console
action-docs
# update README
action-docs --update-readme

Run the cli

action-docs -u

CLI

Options

The following options are available via the CLI

Options:
--version Show version number [boolean]
-t, --toc-level TOC level used for markdown [number] [default: 2]
-a, --action GitHub action file
[deprecated: use "source" instead] [string] [default: "action.yml"]
-s, --source GitHub source file [string] [default: "action.yml"]
--no-banner Print no banner
-u, --update-readme Update readme file. [string]
-l, --line-breaks Used line breaks in the generated docs.
[string] [choices: "CR", "LF", "CRLF"] [default: "LF"]
-n, --include-name-header Include a header with the action/workflow name
[boolean]
--help Show help [boolean]

Update the README

Action-docs can update your README based on the action.yml. The following sections can be updated: name header, description, inputs, outputs, usage, and runs. Add the following tags to your README and run action-docs -u.

<!-- action-docs-header source="action.yml" --><!-- action-docs-description source="action.yml" --><!-- action-docs-inputs source="action.yml" --><!-- action-docs-outputs source="action.yml" --><!-- action-docs-runs action="action.yml" --><!-- action-docs-usage action="action.yml" project="<project>" version="<version>" -->

Or to include all of the above, use:

<!-- action-docs-all source="action.yml" project="<project>" version="<version>" -->

For updating other Markdown files add the name of the file to the command action-docs -u <file>.

If you need to use another/action.yml:

  1. write it in tags like source="another/action.yml";
  2. specify in a command via the -s option like action-docs -s another/action.yml

Examples

Print action markdown docs to console

action-docs

Update README.md

action-docs --update-readme

Print action markdown for non default action file

action-docs --source another/action.yaml

Update readme, custom action file and set TOC level 3, custom readme

action-docs --source ./some-dir/action.yml --toc-level 3 --update-readme docs.md

API

import{generateActionMarkdownDocs}from'action-docs'awaitgenerateActionMarkdownDocs({sourceFile: 'action.yml'tocLevel: 2updateReadme: truereadmeFile: 'README.md'});

Contribution

We welcome contributions, please checkout the contribution guide.

License

This project is released under the MIT License.

About

Generate docs for GitHub actions

Resources

Code of conduct

Contributing

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages