I have several developers working on a local Gitlab instance. The client requires that their Github repo is kept updated. So our Gitlab repo should push any commits directly to Github. Any commits to Github should likewise be pulled into Gitlab.
I could do the first part (dev --> gitlab --> github) with jenkins or something, but am stuck on the reverse. Our Gitlab and Jenkins run inside our firewall.
Any hints or pointers (or drop in solutions!) would be very appreciated.
It's only in the enterprise edition and on GitLab.com, but GitLab has introduced this feature directly, without any workarounds.
They've documented pulling/pushing from/to a remote repository in GitLab Docs → User Docs → Projects → Repositories → Mirroring.
It's in the same section of configuration that you can push, too:
https://yourgithubusername:yourgithubpassword@github.com/agaric/guts_discuss_resource.git
Note that I haven't tried it, but you should be able to push to and pull from the same repository. It's working great for me pulling from a remote repository (drupal.org), and pushing to a different remote repository (gitlab.com).