# -*- coding: utf-8 -*-
from setuptools import setup

packages = \
['gameta']

package_data = \
{'': ['*']}

install_requires = \
['Click>=7.1.2,<8.0.0',
 'colorama>=0.4.3,<0.5.0',
 'gitpython>=3.1.9,<4.0.0',
 'jsonschema>=3.2.0,<4.0.0']

entry_points = \
{'console_scripts': ['gameta = gameta.cli:gameta_cli']}

setup_kwargs = {
    'name': 'gameta',
    'version': '0.2.2',
    'description': 'CLI Tool for managing meta-repositories',
    'long_description': '# Gameta\n\nGameta is a powerful CLI tool that helps you to manage \n[meta-repositories](https://genius-systems.github.io/gameta/metarepos) or \n[metarepos](https://genius-systems.github.io/gameta/metarepos). It allows \nyou to create links to related repositories, make changes and sync them, and \nprovides functionality to customise and apply other CLI commands to these \nrepositories.\n\n## What is Gameta?\n\nGameta is a play on the word gamete (reproductive cells), and similar \nto how gametes form the building blocks for life, gameta helps to \nmanage the many repositories that form the building blocks for more\ncomplex software.\n\n## System Requirements\n\nGameta requires Python 3.7+, it is designed to be multi-platform but currently is\nonly tested in Linux environments.\n\n## Installation\n\nGameta can be easily installed and updated via pip:\n\n```bash\n$ pip install gameta  # install\n$ pip install -U gameta  # update\n```\n\n## Getting Started\n\nGetting started is really easy.\n\n```bash\ngameta init\ngameta init -g  # To initialise directory as a Git repo \n```\n\nGameta will extract git information and create the .meta file which stores \nall your project configurations.\n\n```json\n{\n  "projects": {\n    "gameta": {\n      "path": ".",\n      "tags": ["metarepo"],\n      "url": "https://github.com:genius-systems/gameta.git"\n    }\n  }\n}\n```\n\n___\n**Note**\n\nIf your project has not been initialised with Git, you can specify the\n`--git` or `-g` flag to perform a git init, but you will have to update the\nrepository URL manually later on. \n___\n\nIf your repository contains a .meta file generated by Gameta, simply run the\nfollowing command to sync all linked repositories locally:\n\n```bash\ngameta sync\n```\n\n## Adding a Repository\n\nRun the following command to add a new repository.\n\n```bash\ngameta repo add -n GitPython -u https://github.com/gitpython-developers/GitPython.git -p GitPython\n```\n\n___\n**Note**\n\nThe path variable is the relative path within the metarepo itself\n___\n\nYou should see another entry under the projects object within the .meta file\n\n```json\n{\n  "projects": {\n    "gameta": {\n      "path": ".",\n      "tags": ["metarepo"],\n      "url": "git@github.com:genius-systems/gameta.git"\n    },\n    "GitPython": {\n      "path": "GitPython",\n      "tags": ["a", "b", "c"],\n      "url": "https://github.com/gitpython-developers/GitPython.git"\n    }\n  }\n}\n```\n\nYou should also see the repository cloned to the relative path specified\n\n## Applying commands\n\nGameta provides a powerful toolkit to manage your set of repositories.\n\n```bash\ngameta apply -c "git fetch --all --tags --prune" -c "git merge"\n```\n\nThe command above applies the following to all repositories:\n\n1. Fetches all git updates, tags and prunes redundant git artifacts\n2. Merges changes on the default branch\n\nThere\'s alot more that you can do with commands, see the \n[Applying Commands](https://genius-systems.github.io/gameta/user_guide/applying_commands)\npage for more information\n\n## Best practices\n\nLearn how to leverage on Gameta\'s capabilities in the \n[Best Practices](https://genius-systems.github.io/gameta/user_guide/best_practices) \npage\n\n## Documentation \n\nDocumentation can be found at [Gameta Docs](https://genius-systems.github.io/gameta)\n',
    'author': 'David Lee',
    'author_email': 'ltw_david@hotmail.com',
    'maintainer': None,
    'maintainer_email': None,
    'url': 'https://genius-systems.github.io/gameta',
    'packages': packages,
    'package_data': package_data,
    'install_requires': install_requires,
    'entry_points': entry_points,
    'python_requires': '>=3.7',
}


setup(**setup_kwargs)
