Sign inSign up

gaocegege/maintainer

By gaocegege

•Updated over 7 years ago

Generate AUTHORS, CONTRIBUTING, and CHANGELOG for your GitHub repository.

Image
0

648

gaocegege/maintainer repository overview

⁠Maintainer

Go Report Card GoDoc Build Status

Maintainer is a CLI app which helps you to generate AUTHORS, CHANGELOG.md, CONTRIBUTING.md and so on based on the repository in GitHub. It makes your repository more contributor-friendly.

⁠Installation

$ go get github.com/gaocegege/maintainer
$ maintainer --help
maintainer is a CLI app to help you to generate AUTHORS, CONTRIBUTING.md, CHANGELOG.md and so on.

Usage:
  maintainer [command]

Available Commands:
  changelog    Generate CHANGELOG.md for your repository.
  contributing Generate CONTRIBUTING.md for your repository.
  contributor  Generate AUTHORS.md for your repository.
  readme       Generate README.md related text in your repository.

Flags:
  --config string   config file (default is $HOME/.maintainer.yaml)
  -h, --help            help for maintainer

Use "maintainer [command] --help" for more information about a command.

⁠The Docker Way

Docker Pulls

$ docker pull gaocegege/maintainer
$ docker run --rm -v $(pwd):/workdir gaocegege/maintainer:latest --help

⁠Config

There is only one configuration now: the token in GitHub. The token can be created from https://github.com/settings/tokens/new?description=Maintainer%20CLI%20token⁠, you only need "repo" scope for private repositories.

It is used in changelog subcommand, so there are three ways to config the token:

  • Config token field in $HOME/.maintainer.yml. ./.maintainer.yml.template⁠ is a template.
  • Or Set environment variable MAINTAINER_TOKEN.
  • Or Set the flag in changelog subcommand: maintainer changelog --token <token>. If you set it in command, it will override the configuration in config file and the environment variable.

⁠Features Preview

asciicast

⁠Generate CHANGELOG.md

changelog subcommand will generate CHANGELOG.md for your repository, it is supported via github_changelog_generator, so you need to install it before the subcommand is called.

See here about how to install github_changelog_generator.⁠ In the future, maintainer will support install this dependency automatically.

See CHANGELOG.md⁠ as an example.

⁠Generate CONTRIBUTING.md

contributing subcommand will generate CONTRIBUTING.md for your repository, now this file is a general version.

In the future, maintainer will detect languages and generate corresponding documentation about programming language specific flow for contribution.

See CONTRIBUTING.md⁠ as an example.

⁠Generate AUTHORS.md

contributor subcommand will generate AUTHORS just like moby/moby⁠ does. It gives the contributors more passion to contribute.

See AUTHORS.md⁠ as an example.

readme subcommand contains some subcommands:

  • toc subcommand, which could generate table of contents(TOC) for README.md. It is supported with gh-md-toc⁠, so you need to install it before the subcommand is called.
⁠Recommend badges for you (Soon)

People :heart: badges. badge subcommand will recommend badges for you based on which languages the repository is written in.

⁠CLI references

references/README.md⁠

⁠Development

⁠Run from source code
go run main.go <subcommand>
⁠Build Docker image

Maintainer requires two steps to build a Docker image.

  1. scripts/build-for-alphine.sh builds maintainer in a Docker container which from golang:1.8-alpine. It mounts maintainer directory into the container so the maintainer built from code will visiable in host.
  2. docker build -t maintainer . builds real image from Dockerfile. It simply copys binary maintainer into the image and install some dependencies such as git and github_changelog_generator.

This way is inspired by caicloud/cyclone⁠. It could reduce the size of image significantly.

⁠Acknowledgments

Tag summary

Content type

Image

Digest

Size

27.1 MB

Last updated

over 7 years ago

docker pull gaocegege/maintainer