Vicky Steeves | Librarian @ NYU | @VickySteeves
SciPy 2017 | July 13, 2017
This work is licensed under a Creative Commons Attribution-NonCommercial 4.0 International License.
GitLab is a git-based hosting service (they store your git repos!)
It's really different from other similar services for many reasons which you can find on their site (https://about.gitlab.com/comparison/) but I want to go over a few key reasons that make it ideal for researchers and in particular, building reproducibly.
You don't need to hack GitHub and Travis to deploy CI and pages. GitLab has integrated CI -- hosting, LFS, and CI is free for public & private repos!!
You can use the Docker Container Registry, a secure, private Docker registry with GitLab CI to run each job in a separate & isolated container using the predefined image that is set up in .gitlab-ci.yml. You build docker containers inside the CI job!
This makes it easier to have a simple and reproducible build environment that can also run on your local workstation, regardless of it's operating system -- plus, saves time!
FYI, GitLab knows to syntax-check .gitlab-ci.yml!
image: registry.gitlab.com/paddy-hack/nikola:7.8.7
test:
script:
- nikola build
except:
- master
pages:
script:
- nikola build
artifacts:
paths:
- public
only:
- master
If your collaborators are on another platform, or you want to simply be more discoverable, you can sync between remotes automatically, either pushing or pulling!
Email me: vicky.steeves@nyu.edu
Tweet me: @VickySteeves
Get this Presentation:
vickysteeves.gitlab.io/2017-SciPy-GitLab-Lightning