ProCLI is a command-line tool designed to help developers manage and validate project prerequisites. It simplifies the setup and ensures consistency by checking for required tools, environment variables, tokens, and version control systems.
-
Initialize Project Configurations:
- Use the
init
command to interactively create a project configuration file. - Supports specifying:
- Required tools
- Environment variables
- Tokens
- Version control systems
- Use the
-
Validate Project Setup:
- Use the
check
command to validate if the system meets the project prerequisites. - Provides a clear, actionable output with success and failure indicators.
- Use the
-
Configuration Management:
- Configuration files are stored locally in
~/.config/procli/config.yaml
. - Supports multiple projects and a default project.
- Configuration files are stored locally in
- Go 1.20 or later installed.
-
Clone the repository:
git clone <repository-url> cd procli
-
Build the binary:
go build -o procli
-
Install
procli
go install
Run the init
command to create a new project configuration:
procli init
Example interaction:
Enter project name: tensorflow
Enter required tools (comma-separated): clang-tidy, pylint, docker, bazel, python
Enter environment variables (comma-separated): INDIVIDUAL_CLA, CORPORATE_CLA
Enter required tokens (comma-separated):
Enter version control system (e.g., git): git
Project configuration saved!
Run the check
command to validate project prerequisites:
procli check <project-name>
If a default project is configured, the project name can be omitted:
procli check
Example output:
Configurations are stored as YAML in ~/.config/procli/config.yaml
. Example structure:
default: tensorflow
projects:
tensorflow:
required_tools:
- docker
- python
environment_vars:
- INDIVIDUAL_CLA
- CORPORATE_CLA
required_tokens: []
version_control: git
Contributions are welcome! Please follow these steps:
- Fork the repository.
- Create a feature branch (
git checkout -b feature-name
). - Commit your changes (
git commit -m "Add feature"
). - Push to the branch (
git push origin feature-name
). - Open a Pull Request.
This project is licensed under the MIT License. See the LICENSE file for details.
- Integrate a TUI (using Bubble Tea) for project initialization and editing.