Skip to content

Add template workflow to generate Cobra docs and deploy a versioned MkDocs-based website to GitHub Pages #88

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 6 commits into from
Jul 5, 2021

Conversation

per1234
Copy link
Contributor

@per1234 per1234 commented Jul 5, 2021

On every push to the repository's default branch or release branch, generate a command line reference and deploy the
repository's MkDocs-based static website to GitHub Pages.

Documentation content will sometimes apply only to a specific version of the project. For this reason, it's important
for the reader to be able to access the documentation for the specific version of the project they are using.

The documentation system provides access to:

  • The tip of the default branch ("dev")
  • The latest release ("latest")
  • Each minor version series (e.g., "1.2")

The website version is selectable via a menu on the website as well as the URL of each documentation page.


This workflow is based on the "Deploy Website" workflow (versioned, MkDocs, Poetry) template and on the command line reference generation system from Arduino Lint.

I went through the installation process for this and the other affected template workflows ("Check Markdown", "Check Website") in my fork of Arduino Lint:

@per1234 per1234 added type: enhancement Proposed improvement topic: code Related to content of the project itself labels Jul 5, 2021
@per1234 per1234 requested review from silvanocerza, umbynos and rsora July 5, 2021 12:38
per1234 added 6 commits July 5, 2021 05:59
…templates

The source content for the template files were from Arduino Lint, and contained references specific to Arduino Lint.
These were replaced by placeholders, or in the case of comments, the wording made universal.
There may be project-specific documentation generation. The most prominent is the command line reference generation for
projects using Cobra. Another is Arduino CLI's gRPC interface documentation.

These project-specific generations should have dedicated tasks with appropriate names. A single umbrella task is used to
run all the documentation generation tasks the project has. This umbrella task uses a standardized name: `docs:generate`.
In this manner, the templates can be configured to be general purpose and work for all projects without requiring
significant changes to account for the specifics of their documentation generation requirements. In the event the project
does not generate any documentation content, the task can simply be left empty.
…kDocs-based website to GitHub Pages

On every push to the repository's default branch or release branch, generate a command line reference and deploy the
repository's MkDocs-based static website to GitHub Pages.

Documentation content will sometimes apply only to a specific version of the project. For this reason, it's important
for the reader to be able to access the documentation for the specific version of the project they are using.

The documentation system provides access to:

- The tip of the default branch ("dev")
- The latest release ("latest")
- Each minor version series (e.g., "1.2")

The website version is selectable via a menu on the website as well as the URL of each documentation page.

---
This workflow is based on the "Deploy Website" workflow (versioned, MkDocs, Poetry) template.
@per1234 per1234 merged commit 88c43ad into main Jul 5, 2021
@per1234 per1234 deleted the mkdocs-cli branch July 5, 2021 15:09
@per1234 per1234 self-assigned this Nov 20, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
topic: code Related to content of the project itself type: enhancement Proposed improvement
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants