1. 16 Jul, 2018 3 commits
  2. 13 Jul, 2018 1 commit
  3. 12 Jul, 2018 2 commits
    • georg's avatar
      CI: Introduce job to build Debian package · de6adfe4
      georg authored
      This enables us to get fast(er) feedback in merge requests regarding the
      Debian-side of things. It allows to spot errors and to find breaking
      changes earlier.
      Besides, this will reduce the time between the upstream release and the
      upload to Debian. It enables to do necessary Debian packaging changes
      while the new upstream version is still in development, in contrast to
      postpone if after the actual release, which was the situation before
      this commit.
      Less pain, more joy to come. \m/
      Relates #324
    • georg's avatar
  4. 16 May, 2018 1 commit
  5. 01 May, 2018 1 commit
  6. 17 Apr, 2018 2 commits
  7. 15 Apr, 2018 1 commit
  8. 10 Mar, 2018 1 commit
  9. 05 Feb, 2018 4 commits
    • georg's avatar
      CI: Fix APT caching, once again · 8ccfc670
      georg authored
      It seems the code introduced in 18d2b528 still didn't work all the time.
      By now, I believe the GitLab CI caching to be buggy.
      For now, just rely on the default cache key, and run 'apt-get update'
      everytime. Especially the later part is not optimal, but for now it
      seems it's the way to go, unfortunately.
      Relates #316
    • georg's avatar
      CI: Fix APT caching and clarify env var names used in APT config · 18d2b528
      georg authored
      The code introduced in ac20c72b was buggy, because it only checked the
      existence of the APT cache directory. If two containers were started at
      the same time, sometimes the code would run into a race condition; one
      of the containers would update the APT package cache, the second would
      assume, as the directory did exist, that an update of the package cache
      was unneeded, accordingly, installing packages in the second container
      This commit introduces a better check: It doesn't rely on the existence
      of the directory, but uses 'find' to check the 'mtime' of the contained
      list files. If there are none (in case the GitLab CI cache is empty), or
      the last package update run was (more than) 14 days ago, the package
      cache is updated.
      To make the caching working reliable, another change on the GitLab
      Runner was needed. In the config, 'cache_dir' was set to a directory on
      the host and 'volumes' was accordingly extended via adding this
      directory. Unfortunately, the GitLab CI docs are quite sparse in this
      regard, so it took a while to figure this out.
      This change was tested several times against different (force-pushed)
      branches and with "cold and hot" cache.
      On top, this commit clarifies the naming of the environment variables
      which are used in the APT config.
      Closes #316
    • georg's avatar
      CI: docker login: Use --pasword-stdin instead of --password · 372c4e38
      georg authored
      This commit ensures that the environment variable used to login into the
      GitLab CI container registry isn't saved and recorded in the shell
      Tested via an intermediate commit to ensure this works as expected.
      Closes #315
    • georg's avatar
      CI: Use new alias for database setup · 58661d70
      georg authored
      The alias was introduced in 2ee7f060. Accordingly, make use of it.
  10. 31 Jan, 2018 3 commits
  11. 29 Jan, 2018 3 commits
    • georg's avatar
      CI: Run bundler:audit job only if triggered via a schedule · 7de1ab3c
      georg authored
      Currently, bundler:audit is run anytime a branch is pushed. That's a
      waste of resources and unneeded. Therefore, soon, this job will be run
      via a pipeline once a week. Accordingly, this commit lays the groundwork
      so that the job is only run, if triggered via a pipeline.
      Relates #283
    • georg's avatar
      CI: Fix cache key: Use project path slug, remove branch name · af19cd23
      georg authored
      Before, we were using the project path, containing '/', which is not
      allowed in GitLab CI cache keys. Fix this via using the project path
      slug, which replaces special chars with '-'.
      Additionally, we were using a cache key consisting of project path, CI
      job name and branch name. However, this lead to a inconsistent cache
      behavior: Force pushing a branch, which is quite common during
      development, would somehow reset the cache, making it empty / non
      existent in fact, leading to longer CI job runtimes. It seems GitLab
      takes the commit SHA into account while checking for the cache, if using
      this pattern.
      To overcome this, don't explicitly set the branch name in the cache key,
      but instead rely only on the project path and job name. This also works
      if force pushing a branch, as some tests confirmed.
    • georg's avatar
  12. 28 Jan, 2018 1 commit
    • georg's avatar
      CI: Fix and improve APT caching, to speed up CI jobs · ac20c72b
      georg authored
      Up until now, the APT caching didn't work correctly in all cases. This
      commit fixes the problems, and, at the same time, improves the handling:
      It checks first, if the APT cache directory does exist. Only if it
      doesn't, it creates the necessary directories and updates the APT
      package lists. This prevents unneeded runs of 'apt-get update'.
      Additionally, this ensures, that in almost all cases, packages don't
      need to get downloaded, but instead, they're available already in the
      local filesystem, just waiting to be installed.
      Combining both steps leads to reduced run times per CI job by ~ 10%.
  13. 22 Jan, 2018 1 commit
    • georg's avatar
      CI: Limit Docker image building to {master,tags} in our repo · 1be94703
      georg authored
      Building a Docker image inside a Docker container needs extended
      privileges. The default, shared 0xacab worker doesn't support this, so
      this job failed for people forking our repo, effectively blocking
      At the same time, up until now we've build Docker images for all
      branches. This is unneeded, and uses too much storage space.
      This commit fixes both issues in a nice and sane way. Thanks, varac!
      Closes #306
      Closes #307
  14. 29 Dec, 2017 1 commit
  15. 28 Dec, 2017 1 commit
    • georg's avatar
      CI: Use own worker, don't check Travis, test ruby2.5 · ef4edb6e
      georg authored
      Additionally, it introduces caching for APT and gem installs via
      bundler. On top, it links /dev/random to /dev/urandom to deal with
      entropy, which might be limited in a container.
      Closes #273
      Relates #286
  16. 26 Nov, 2017 1 commit
  17. 07 Sep, 2017 1 commit
  18. 12 May, 2017 1 commit
  19. 05 May, 2017 1 commit
    • Nina's avatar
      Configure gitlab ci · bd40db65
      Nina authored
      There is no need to use sudo to install the dependencies since
      we are root.