GithubHelp home page GithubHelp logo

rlugojr / maintainer Goto Github PK

View Code? Open in Web Editor NEW

This project forked from maintainer-org/maintainer

0.0 1.0 0.0 1.31 MB

:octocat: :man_technologist: Generate AUTHORS, CONTRIBUTING, and CHANGELOG for your GitHub repository.

License: Apache License 2.0

Go 93.45% Shell 6.55%

maintainer's Introduction

maintainer

Go Report Card GoDoc Build Status

:octocat: ๐Ÿ‘จโ€๐Ÿ’ป Help you to be a qualified maintainer :)

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.

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

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.

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.

Generate AUTHORS.md

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

Recommend badges for you (Soon)

People โค๏ธ badges. badge subcommand will recommend badges for you based on which languages the repository is written in.

CLI references

./docs/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

maintainer's People

Contributors

gaocegege avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.