Skip to content
/ mixtus Public

πŸ€– [Lasius Mixtus 🐜] Bot: Publish Documentation to a GitHub Repository from another

License

Notifications You must be signed in to change notification settings

traefik/mixtus

Repository files navigation

Lasius Mixtus - Publish Documentation to a GitHub Repository From Another

GitHub release Build Status Docker Build Status

Description

Lasius Mixtus is a cross-ci tool (GitHub Actions, SemaphoreCI 1 and 2, TravisCI, ...) used to aggregate documentation from different projects into one repository.

It is useful for building an aggregated documentation from different sources.

It creates PRs instead of commits to avoid conflicts and be able to validate the whole documentation before the merge.

Lasius Mixtus

Flags:
  -debug
        Debug mode
  -dst-doc-path string
        Path to put the documentation. (default "./traefik")
  -dst-owner string
        Owner of the targeted doc repo. (default "traefik")
  -dst-repo-name string
        Name of the targeted doc repo. (default "doc")
  -git-user-email string
        Email used to commit the documentation. [GIT_USER_EMAIL]
  -git-user-name string
        UserName used to commit the documentation. [GIT_USER_NAME]
  -h    Show this help.
  -src-doc-path string
        Path to the documentation. (default "./docs/site")
  -src-owner string
        Owner of the source repository. (default "traefik")
  -src-repo-name string
        Name of the source repo. (default "traefik")
  -token string
        GitHub Token [GITHUB_TOKEN]

Workflow Example

mixtus-workflow

This workflow also uses:

  • structor: creates multiple versions of a Mkdocs documentation
  • seo-doc: enrich HTML files with pre-requisites for improving SEO
  • mixtus: creates PRs with documentation changes
  • lobicornis: rebases and merges PRs automatically

The result is here: https://doc.traefik.io/

Examples

GITHUB_TOKEN=xxx ./mixtus \
--src-owner=containous \
--src-repo-name=traefik \
--src-doc-path="./docs/site/" \
--dst-repo-name=doc \
--dst-doc-path="./traefik" \
--git-user-name=botname \
--git-user-email=bot@example.com

The Mymirca colony

What does Lasius Mixtus mean?

Lasius Mixtus