Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/oneananda/ci-cd-pipeline-debugger
CI-CD-Pipeline-Debugger
https://github.com/oneananda/ci-cd-pipeline-debugger
Last synced: about 1 month ago
JSON representation
CI-CD-Pipeline-Debugger
- Host: GitHub
- URL: https://github.com/oneananda/ci-cd-pipeline-debugger
- Owner: oneananda
- License: apache-2.0
- Created: 2024-12-15T11:08:52.000Z (about 1 month ago)
- Default Branch: main
- Last Pushed: 2024-12-15T11:10:23.000Z (about 1 month ago)
- Last Synced: 2024-12-15T12:20:06.343Z (about 1 month ago)
- Size: 9.77 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# CI/CD Pipeline Debugger
A platform-agnostic debugging tool for CI/CD pipelines, written in C#. This tool helps developers and DevOps teams identify and resolve issues in their CI/CD pipelines across multiple platforms like GitHub Actions, GitLab CI, Jenkins, Azure DevOps, and more.
## Features
- **Pipeline Visualization**:
- Interactive representation of pipeline stages, jobs, and tasks.
- **Error Diagnosis**:
- Real-time log streaming and error tracing.
- Syntax error and misconfiguration detection.
- **Environment Emulation**:
- Simulate pipeline runs locally to debug issues before pushing.
- **Configuration Validation**:
- Validate pipeline configuration files against schema definitions.
- **Multi-Platform Support**:
- Supports GitHub Actions, GitLab CI, Jenkins, Azure DevOps, and custom CI/CD tools.
- **Extensibility**:
- Plugin support for additional debugging tools and integrations.
- **Secure Handling**:
- Mask sensitive data in logs and identify hard-coded secrets.## Getting Started
### Prerequisites
- **.NET SDK**: [.NET 7+](https://dotnet.microsoft.com/download)
- A compatible operating system: Windows, macOS, or Linux### Installation
1. Clone the repository:
```bash
git clone https://github.com/oneananda/ci-cd-pipeline-debugger.git
```
2. Navigate to the project directory:
```bash
cd ci-cd-pipeline-debugger
```
3. Build the project:
```bash
dotnet build
```### Usage
#### Command-Line Interface (CLI)
Run the tool via the CLI to debug a pipeline configuration:
```bash
dotnet run --file path/to/pipeline.yml
```#### Sample Commands
- Validate a pipeline configuration:
```bash
dotnet run --validate --file path/to/pipeline.yml
```
- Debug a pipeline locally:
```bash
dotnet run --debug --file path/to/pipeline.yml
```
- Generate a report:
```bash
dotnet run --report --file path/to/pipeline.yml --output report.json
```## Directory Structure
```
ci-cd-pipeline-debugger/
│
├── src/ # Core library and application code
├── tests/ # Unit and integration tests
├── docs/ # Documentation and guides
├── samples/ # Sample pipeline configurations
├── plugins/ # Plugins for additional functionality
└── build/ # Build scripts and CI/CD setup
```## Roadmap
- [ ] Add AI-powered error suggestions
- [ ] Enhance pipeline visualization with a GUI
- [ ] Support for more CI/CD platforms
- [ ] Dockerized environment for easier testing
- [ ] Metrics dashboard for performance analysis## Contributing
We welcome contributions from the community! Please follow the [contribution guidelines](CONTRIBUTING.md) to get started.
## License
This project is licensed under the MIT License. See the [LICENSE](LICENSE) file for details.
## Acknowledgments
- Inspired by the need for better debugging tools in modern CI/CD workflows.
- Contributions from the open-source community.