Skip to content

Upgrade internal runit cookbook to latest upstream version

Balasankar 'Balu' C requested to merge try-new-runit into master

Depends on gitlab-org/build/omnibus-mirror/runit-cookbook!1 (merged)

Closes: #2166 (closed)

The changes to upstream runit cookbook

  1. Code level changes for upstream cookbook to behave like we want are made as a separate branch in our mirror - gitlab-org/build/omnibus-mirror/runit-cookbook!1 (merged) . Other changes made in omnibus-gitlab for integrating runit cookbook are listed below.

  2. Removed all files except the custom resource definition, metadata and LICENSE. This means, only the libraries folder from upstream is used by us.

  3. Added recipes for different init systems we support. The recipes (runit_*.rb files) and conf files for them (gitlab-runsvdir.* files) are available as part of our package cookbook. This was earlier added as a patch on top of runit cookbook, and now moved to package cookbook.

  4. The gitlab::runit recipe does the init detection, and calls init system specific recipes as needed. This was earlier added as a patch on top of runit cookbook's default recipe, and now moved to separate recipe in package cookbook.

  5. Default values for runit cookbook specifying the location of service related files are overriden. This is done in attribute files of package cookbook. package cookbook is made a dependency of all other cookbooks that need runit, so the default attributes are propogated to them automatically. This was earlier done as a patch on top of runit cookbook's default attributes file.

Other miscellaneous changes

  1. Rename few attributes to match new runit cookbook code

    1. run_restart => restart_on_update
    2. finish_script => finish
  2. Add a metadata.rb file to consul cookbook to make it depend on package cookbook.

  3. Rubocop no longer runs on Runit cookbook - This can be changed, but let's do it in a followup MR and not add more clutter to this MR.

Edited by GitLab Release Tools Bot

Merge request reports