Add configuration option support for documentation pages

What does this MR do?

Contributes to #214164 (closed)

We want to introduce an option to configure documentation pages base url via gitlab.yml file. That will allow us to provide custom configurations for different distributions (Omnibus, source code installation, etc.)

Steps to verify

Enable feature flag Feature.enable(:help_page_documentation_redirect)

Database configuration option

  1. Go to Admin area -> Settings -> Preferences
  2. Expand Help page section
  3. Verify that Documentation pages URL is present
  4. Check that the field can be updated and keeps the value
  5. Visit a help page (for example, http://localhost:3000/help/user/index.md)
  6. Check that browser redirects you to <documentation_pages_url>/ee/user/index.html

Yaml configuration option

  1. Add gitlab_docs section to gitlab.yml For example,
    gitlab_docs:
      enabled: true
      host: 'https://docs.gitlab.com'
  2. Restart the application
  3. Visit a help page (for example, http://localhost:3000/help/user/index.md)
  4. Check that browser redirects you to <host>/ee/user/index.html

Screenshots (strongly suggested)

Does this MR meet the acceptance criteria?

Conformity

Availability and Testing

Security

If this MR contains changes to processing or storing of credentials or tokens, authorization and authentication methods and other items described in the security review guidelines:

  • Label as security and @ mention @gitlab-com/gl-security/appsec
  • The MR includes necessary changes to maintain consistency between UI, API, email, or other methods
  • Security reports checked/validated by a reviewer from the AppSec team
Edited by Vasilii Iakliushin

Merge request reports

Loading