https://github.com/alexrogalskiy/typesafe-pipeline
Portable, testable and typesafe CI/CD pipelines
https://github.com/alexrogalskiy/typesafe-pipeline
Last synced: 4 days ago
JSON representation
Portable, testable and typesafe CI/CD pipelines
- Host: GitHub
- URL: https://github.com/alexrogalskiy/typesafe-pipeline
- Owner: AlexRogalskiy
- License: mit
- Created: 2021-12-18T17:48:25.000Z (over 3 years ago)
- Default Branch: master
- Last Pushed: 2020-08-24T20:49:30.000Z (almost 5 years ago)
- Last Synced: 2025-03-21T15:08:53.783Z (3 months ago)
- Size: 64.5 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
## Typesafe Pipeline
The intention of this repository is creating a tool which would provide a possibility to write portable, testable and typesafe CI/CD pipelines. The status of this description and the repository is still work in progress. Any ideas are welcome.
The supported vendors would be the ones which are providing possibility to use pipeline as a code and containers, for example Jenkins and Gitlab.
#### High level description
An example usage would be the something like this:
- Creating `Pipeline.kts` file, and use Kotlin DSL for writing the pipeline
- Write some test against the pipeline e.g.:
- A specific event triggered a stage
- A written command in a step is available in the specified container
- At some point a slack notification triggered
- Using the maven/gradle plugin in order to run the tests against the pipeline
- Using the maven/gradle plugin for generating the production pipeline to a specific vendor, for example gitlab's `.gitlab-ci.yml` file
#### Project structure- `typesafe-pipeline-core` contains the domain related logic and DSL
- `typesafe-pipeline-parser` responsible for evaluate kts files
- `typesafe-pipeline-gitlab` responsible for generating gitlab's `.gitlab-ci.yml` files
- `typesafe-pipeline-plugin` contains the gradle plugin related code
- `example` responsible for demonstrating this library usage
- `debug` responsible for demonstrating this library usage# Licensing
Please see LICENSE file
# Contact
Zoltan Polgar - [email protected]
Please do not hesitate to contact me if you have any further questions.