In the process of making all of my private repositories public on Github and moving off of GitHub pages I have also decided to move most of my repos over to GitLab. One reason is that setting up a CICD pipeline makes it extremely easy to publish these posts automatically. This in combination with GitLab's web IDE makes minor changes a little bit easier to make.
CICD piplines in GitLab are controlled with a single file,
.gitlab-ci.yml that is placed
at the root of the repository.
Wit this file, on every commit, the following pipeline runs that deploys to draft.jarv.org
and on the master branch for jarv.org.
GitLab has integrated CI/CD runners that allow you to execute whatever you want in a docker
image of your choice. By creating the
.gitlab-ci.yml below you get a nice
deployment pipeline like this:
Here is what the
gitlab-ci.yml configuration looks like for the jarv.org repository:
stages: - build - deploy before_script: - git submodule update --init --recursive - pip install -r requirements.txt build: image: registry.gitlab.com/jarv/jarv.org/ci-image stage: build script: - make clean - make html deploy_draft: image: registry.gitlab.com/jarv/jarv.org/ci-image stage …