Kubernetes Namespace Overwrite

What does this MR do?

Successor of !389 (closed).

This MR gives more flexibility for CI pipelines based on Kubernetes Runner. It adds a environment variable to overwrite the target Kubernetes namespace. Therefore, you can for instance, use Helm/Landscaper to install Charts and create the set of services/pods that are required to execute the CI pipeline step, and also the ability to clean-up by deleting an namespace completely.

The namespace can only be overwritten if matches a configured regular expression (added to the runner configuration), to guarantee only designed namespace names can be employed. When this configuration is empty, this whole overwrite behavior is disabled.

Why was this MR needed?

To create more flexible CI runs, to include Helm packages in a brand new namespace which will be deleted altogether afterwards. Using an overwrite mechanism avoid an extra steps to achieve the same goal.

Are there points in the code the reviewer needs to double check?

Does this MR meet the acceptance criteria?

  • Documentation created/updated
  • Tests
    • Added for this feature/bug
    • All builds are passing
  • Branch has no merge conflicts with master (if you do - rebase it please)

What are the relevant issue numbers?

Merge request reports