https://github.com/veinar/pipelens
https://github.com/veinar/pipelens
Last synced: about 2 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/veinar/pipelens
- Owner: Veinar
- License: apache-2.0
- Created: 2024-12-11T14:03:50.000Z (6 months ago)
- Default Branch: develop
- Last Pushed: 2024-12-11T15:00:19.000Z (6 months ago)
- Last Synced: 2024-12-11T15:43:58.500Z (6 months ago)
- Language: Python
- Size: 15.6 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG
- Contributing: CONTRIBUTING
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
Awesome Lists containing this project
README
# π Pipelens: Intelligent CI/CD Pipeline Generator
Pipelens is a CLI tool π§ designed to analyze your project's structure, dependencies, and characteristics, simplifying the creation of workflows tailored to your projectβs specific needs. By leveraging ChatGPT (AI) π₯, Pipelens intelligently generates CI/CD pipelines π based on gathered information and templates provided in this repository. For now this tool supports projects in Python, but it modularity guarantees ease of introducing new modern programming languages. π




## π€ Who might be interested in using Pipelens?
Pipelens is ideal for:
- **Developers**: Streamline the setup of CI/CD pipelines for projects of any scale. π¨π»βπ»
- **DevOps Engineers**: Quickly generate workflows for diverse programming languages and frameworks. βΎοΈ
- **Teams**: Automate repetitive pipeline configuration tasks for consistent project deployments. π₯## βοΈ Design Principles
1. Modularity for ease of code management,
2. Be the easiest tool to generate Pipelines with AI support.
3. Focus on security and easy auditability/review/rewriting content.## π Installation
> It will be later on uploaded to pypi in order to install it via `pip`
1. Clone the repository:
```bash
git clone https://github.com/Veinar/pipelens.git
```2. Navigate to the project directory:
```bash
cd pipelens
```3. Create a virtual environment and activate it:
```bash
python -m venv .venv
source .venv/bin/activate # For Linux/MacOS
.venv\Scripts\activate # For Windows
```4. Install dependencies:
```bash
pip install -r requirements.txt
# or if you want development tools as well
pip install -r requirements_dev.txt
```
## π UsageTo analyze your project and generate a CI/CD pipeline, run:
```bash
pipelens --platform github --output ./pipeline.yml
```
Flags:* `--platform `: Specify the CI/CD platform (e.g., github, gitlab, jenkins). Defaults to github.
* `--output `: Specify the output path for the generated pipeline file.
* `--dry-run`: Preview the generated pipeline without writing to a file.
* `--verbose`: Display detailed steps during the analysis.
* `--debug`: Show additional debugging information.## π Contributing
We welcome contributions! To get started:
1. Star and fork this repository.
2. Clone repository from under your own repo list.
3. Create a new branch:
```bash
git checkout -b feature-name
```
4. Make your changes.
5. Push your branch:
```bash
git push origin feature-name
```
5. Create a pull request.βΆοΈ For more details, see the [CONTRIBUTING.md](CONTRIBUTING.md) file.
## π€² Expanding languages
If you know Python and have knowledge about other programming languages (package managers, tools, frameworks etc.)
Please consider adding new language to Pipelens -- instruction [here](docs/adding_language.md).## π License
This project is licensed under the Apache 2.0 License. See the [LICENSE](LICENSE) file for details.