Skip to content

Draft: Application server configuration

Hossein Pursultani requested to merge add-app-server-config into main

WARNING This is a big MR. Do not merge it. It is broken down into the following MRs:

What does this MR do?

This MR contains:

  1. A basic resource definition for v2alpha1.GitLab. The focus of this MR is the configuration of Puma and Workhorse. As a result the resource definition in this MR is not final and it is very likely to change in the subsequent MRs.
  2. A template for rendering gitlab.yml from the specification v2alpha1.GitLab.
  3. WIP: A basic controller logic that creates or updates one or more Secrets that contains Puma and Workhorse rendered configuration files. As opposed to GitLab Chart where the configuration template is stored in ConfigMaps and are rendered on application startup (in Docker entrypoint to be exact) the Operator renders the configuration files and stores them in Secrets. These Secrets are managed objects and belong to GitLab CR and owned by the Operator.

Note to reviewers

  1. You can ignore the following files and directories. They are generated with controller-gen from source:
    • api/v2alpha1/zz_generated.deepcopy.go
    • config/
  2. In this MR, the following types in api/v2alpha1/types.go are important:
    • ApplicationConfig
    • ...

Author's Checklist

For anything in this list which will not be completed, please provide a reason in the MR discussion.

Required

  • Ensure a release milestone is set.
  • MR title and description are up to date, accurate, and descriptive.
  • MR targeting the appropriate branch.
  • MR has a green pipeline on GitLab.com.
  • When ready for review, MR is labeled workflowready for review per the MR workflow.

Expected

  • Test plan indicating conditions for success has been posted and passes.
  • Documentation is created or updated.
  • Tests are added.

Related issues

Related to #2 (closed)

Edited by Hossein Pursultani

Merge request reports