Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/yusufcanb/josef-pipe
Pipeline development boilerplate with easy deployment in mind with pre-configured Ansible and Robot Framework on top of Jenkins.
https://github.com/yusufcanb/josef-pipe
ansible docker jenkins robotframework
Last synced: about 1 month ago
JSON representation
Pipeline development boilerplate with easy deployment in mind with pre-configured Ansible and Robot Framework on top of Jenkins.
- Host: GitHub
- URL: https://github.com/yusufcanb/josef-pipe
- Owner: yusufcanb
- Created: 2022-01-09T09:58:52.000Z (about 3 years ago)
- Default Branch: master
- Last Pushed: 2023-01-17T09:12:25.000Z (about 2 years ago)
- Last Synced: 2024-12-16T10:43:47.729Z (about 2 months ago)
- Topics: ansible, docker, jenkins, robotframework
- Language: Groovy
- Homepage:
- Size: 175 KB
- Stars: 2
- Watchers: 3
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Josef Pipe (A Pipeline Boilerplate)
Pipeline development boilerplate with easy deployment in mind with pre-configured Ansible and Robot Framework on top of Jenkins.
![screenshot](./assets/screenshot.png)
## Motivation
This project aims to be a boilerplate to ship Jenkins platform to an on-premise environment with pre-configured and pre-installed pipelines using Docker.
**Where does the name come from?**
It was inspired by the name of a PVC pipe brand (Fırat Boru), which is quite viral in Turkey.
You can watch the viral ad from the link below;
[![](https://img.youtube.com/vi/qIAKrF_PhuI/0.jpg)](https://www.youtube.com/watch?v=qIAKrF_PhuI)
## Requirements
- Docker
## Usage
Clone the repository;
```
git clone https://github.com/yusufcanb/josefpen
```Build and run using Docker
```
docker build -t josefpen . && docker run -p 8080:8080 josefpen
```Finally, navigate to [http://localhost:8080](http://localhost:8080), you should see the login page. The default username and password is `admin/admin`.
## Development
- `/ansible` directory contains ansible resources and `requirements.txt` for requirements.
- `/robots` directory contains robot framework resources and `requirements.txt` for requirements.
- `/dsl` directory contains Groovy scripts to define pipelines.
- `/jenkins/casc.yaml` file is the Jenkins Configuration as Code which you can define your Groovy scripts like below;
```yaml
jobs:
- file: /opt/deploy/dsl/ansible.groovy
- file: /opt/deploy/dsl/rf.groovy
```