Metadata-Version: 2.1
Name: hmd-cli-repo
Version: 0.3.149
Summary: Implementation for repo cli command
Home-page: UNKNOWN
Author: Alex Burgoon
Author-email: alex.burgoon@hmdlabs.io
License: Apache 2.0
Platform: UNKNOWN
Requires-Dist: arrow (==1.3.0)
Requires-Dist: aws-secretsmanager-caching (==1.1.1.5)
Requires-Dist: binaryornot (==0.4.4)
Requires-Dist: boto3 (==1.36.22)
Requires-Dist: botocore (==1.36.23)
Requires-Dist: cachetools (==5.2.0)
Requires-Dist: cement (==3.0.6)
Requires-Dist: certifi (==2022.12.7)
Requires-Dist: cffi (==1.15.0)
Requires-Dist: cfgv (==3.4.0)
Requires-Dist: chardet (==5.2.0)
Requires-Dist: charset-normalizer (==2.0.12)
Requires-Dist: click (==8.0.4)
Requires-Dist: colorlog (==6.6.0)
Requires-Dist: cookiecutter (==2.6.0)
Requires-Dist: deprecated (==1.2.18)
Requires-Dist: distlib (==0.3.9)
Requires-Dist: filelock (==3.18.0)
Requires-Dist: gitdb (==4.0.12)
Requires-Dist: gitpython (==3.1.30)
Requires-Dist: google-auth (==2.9.1)
Requires-Dist: hmd-cli-app (~=1.2.603)
Requires-Dist: hmd-cli-tools (~=1.2.236)
Requires-Dist: hmd-lib-manifest (~=0.1.3)
Requires-Dist: identify (==2.6.10)
Requires-Dist: idna (==3.3)
Requires-Dist: inquirerpy (==0.3.4)
Requires-Dist: jinja2 (==3.0.3)
Requires-Dist: jmespath (==0.10.0)
Requires-Dist: kubernetes (==24.2.0)
Requires-Dist: markdown-it-py (==2.2.0)
Requires-Dist: markupsafe (==3.0.2)
Requires-Dist: mdurl (==0.1.2)
Requires-Dist: nodeenv (==1.9.1)
Requires-Dist: oauthlib (==3.2.2)
Requires-Dist: pfzy (==0.3.4)
Requires-Dist: platformdirs (==4.3.7)
Requires-Dist: pre-commit (==4.2.0)
Requires-Dist: prompt-toolkit (==3.0.38)
Requires-Dist: pyasn1 (==0.4.8)
Requires-Dist: pyasn1-modules (==0.2.8)
Requires-Dist: pycparser (==2.21)
Requires-Dist: pygithub (==1.58)
Requires-Dist: pygments (==2.14.0)
Requires-Dist: pyjwt (==2.6.0)
Requires-Dist: pynacl (==1.5.0)
Requires-Dist: python-dateutil (==2.8.2)
Requires-Dist: python-dotenv (==0.19.2)
Requires-Dist: python-slugify (==8.0.4)
Requires-Dist: pyyaml (==6.0.1)
Requires-Dist: requests (==2.32.3)
Requires-Dist: requests-oauthlib (==1.3.1)
Requires-Dist: rich (==13.3.5)
Requires-Dist: rsa (==4.8)
Requires-Dist: s3transfer (==0.11.2)
Requires-Dist: six (==1.16.0)
Requires-Dist: smmap (==5.0.2)
Requires-Dist: text-unidecode (==1.3)
Requires-Dist: types-python-dateutil (==2.9.0.20241206)
Requires-Dist: typing-extensions (==4.12.2)
Requires-Dist: urllib3 (==1.26.8)
Requires-Dist: virtualenv (==20.30.0)
Requires-Dist: wcwidth (==0.2.6)
Requires-Dist: websocket-client (==1.3.3)
Requires-Dist: wrapt (==1.17.2)

.. README

hmd-cli-repo README
=====================
A CLI application for creating NeuronSphere-compliant project repositories from templates.  This tool is also
the base for multi-repository operations.

* Additional Requirements

- Git

## Basic Usage

`hmd repo create` will provide prompts to choose which Project Type Category and then Project Type you want to create.
After having selected a Project Type, you will be prompted for any additional information need to create the project, i.e. a name for the project.

After all prompts have been answered, it will render a series of templates into a folder with the Project Name.
This will be a standard Git repository and all generated files will be committed for you.  Depending on configuration,
this may create a remote repository and push the initial code as well.


Commands
-----------
* **hmd repo create**: create a NeuronSphere-compliant repository based on chosen Project Type
* **hmd repo add**: overlay a new Project Type onto an existing repository in a new branch
* **hmd repo configure**: configures hmd-cli-repo specific environment variables in *$HMD_HOME/.config/hmd.env*
* **hmd repo pull-all**: pull all changes and new repositories from a GitHub organization locally into *$HMD_REPO_HOME*
* **hmd repo create-remote**: create a remote repository for an existing local repo, will set `origin` remote in Git to new remote.

TODO: more descriptions and examples of these commands

Environment Variables
-----------------------
This command must be run with a valid HMD_HOME set and configured.

**Optional Variables**

* HMD_REPO_ORG_NAME: a common org code prefix to prepend to all create repo names.
* HMD_REPO_REMOTE_GITHUB_ENABLED: if set to "true", a remote repository will be created in GitHub upon running
  `hmd repo create`
* HMD_GH_USERNAME: the GitHub username to use
* HMD_GH_PASSWORD: the GitHub PAT to use
* HMD_GH_ORG_NAME: the GitHub Organization to create the repository in


   

