Day-1 POC: connect to Jenkins, fetch Jenkinsfile and recent builds, ask Gemini (Google Generative AI) for optimization suggestions.
Environment variables:
JENKINS_URLJENKINS_USERJENKINS_TOKENGEMINI_API_KEYorGOOGLE_API_KEY
Quick start:
cd /Users/wscholl/TurboJenkins
python -m venv .venv && source .venv/bin/activate
pip install -r requirements.txt
export JENKINS_URL=...
export JENKINS_USER=...
export JENKINS_TOKEN=...
export GEMINI_API_KEY=...
python -m turbojenkins.cli analyze --job my-pipelineTurboJenkins is a Jenkins-based project designed to automate the build and deployment processes for applications. It utilizes Groovy scripts to define the pipeline stages and provides a structured approach to managing the application lifecycle.
TurboJenkins
βββ jenkins
β βββ Jenkinsfile # Pipeline configuration for Jenkins
β βββ pipelines
β βββ build.groovy # Build process logic
β βββ deploy.groovy # Deployment process logic
βββ src
β βββ main.groovy # Main entry point for the application
β βββ libs
β βββ helpers.groovy # Utility functions and helper methods
βββ scripts
β βββ deploy.sh # Shell script for automating deployment
βββ .vscode
β βββ extensions.json # Recommended extensions for the project
βββ README.md # Project documentation
- Clone the repository to your local machine.
- Navigate to the project directory.
- Ensure you have Jenkins installed and configured.
- Install the recommended extensions in your development environment.
- To trigger the build and deployment process, navigate to the Jenkins dashboard and start the pipeline defined in the
Jenkinsfile. - Modify the Groovy scripts in the
pipelinesdirectory to customize the build and deployment logic as needed. - Use the
helpers.groovyfile to add any utility functions that can be reused across the application.
Contributions are welcome! Please submit a pull request with your changes and a description of the modifications made.