https://github.com/pymor/ci_hooks_app
gitlab-github PR bridge
https://github.com/pymor/ci_hooks_app
Last synced: 4 months ago
JSON representation
gitlab-github PR bridge
- Host: GitHub
- URL: https://github.com/pymor/ci_hooks_app
- Owner: pymor
- License: bsd-2-clause
- Created: 2019-02-07T10:00:10.000Z (over 7 years ago)
- Default Branch: master
- Last Pushed: 2022-05-05T07:30:41.000Z (about 4 years ago)
- Last Synced: 2024-04-19T17:23:00.041Z (about 2 years ago)
- Language: Python
- Homepage:
- Size: 111 KB
- Stars: 1
- Watchers: 7
- Forks: 1
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
ci-hooks-app
============
This Github App exists because
Gitlab Enterprise does not sync PR builds.
This is alpha-quality software. It might delete all your repositories.
How does this work
------------------
- push branch to GitHub
- create PR from that branch
- Github posts to /github endpoint
- ci-hooks-app pushes a merge commit to a new branch in gitlab
- gitlab ci builds that branch, posts pipeline event to app
- app creates GitHub status with corresponding state
Setup Instructions
--------------------
- `dir storage && cp config.example.ini ./storage/config.ini`
- fill in your values as far as you can
- `docker-compose build && docker-compose up`
- create a new github app for your organization, get the private key
- install app for the repo you're interested in, get the installation id
- update values in config
- make `localhost:49000` externally reachable at SOMEURL
- add a GitHub webhook (pull-request scope) for your repo, point it at http://SOMEURL/github, add secret from config.ini
- add a GitLab webhook (pipeline scope) for your repo, point it at http://SOMEURL/gitlab, add secret from config.ini
Limitations
-----------
- Project slugs on github and gitlab must match
- you have to manually get app installation details from github