chronos-cli

A CLI tool that infers a next version number for Git repos.


Keywords
chronos, cicd, cli, cli-utilities, devops, pypi, python, versioning
License
MIT
Install
pip install chronos-cli==0.2.12

Documentation

chronos

pypi version pypi python versions pipeline status Documentation Status sonarcloud quality gate sonarcloud coverage sonarcloud bugs sonarcloud reliability

A CLI tool that infers a next version number for Git repos. It does its magic by looking at the commit messages of commits made since the last tag that had a semver in it. For this to work properly, your commits should following the Conventional Commits spec.

Getting started

Requires Git 2.0+.

To use the tool:

  • pip install --upgrade chronos-cli
  • Change into a Git repo.
  • chronos infer

To bootstrap a development environment (after you've cloned the repo and changed into it):

  • pip install --upgrade pipenv
  • pipenv sync --dev

Documentation

Docs are hosted at https://chronos-cli.readthedocs.io.

Style

This project follows PEP8.

Testing

  • pytest will run unit tests in this repo.
  • flake8 will lint the code.

This repo also has a CI/CD pipeline built with Ansible and GitLab CI.

The pipeline's Ansible playbook can be run on your *nix workstation too:

ansible-playbook ansible/pipeline.yml --tags build

Contributing

Commits should follow the Conventional Commits spec.

FAQ

TODO

Acknowledgements

  • Thanks to Eric Poitras for asking me to write an earlier version of what would become this tool. This was really his idea.