Refactor, breaking: Use job_name, go_image as inputs, limit full pipeline, generate Go source using GitLab Duo, revamp docs

What does this MR do and why?

Breaking changes.

  1. Introduces a solution to dynamic job names based on versions: Users can decide themselves by overriding the new job_name input.
  2. Removed go_version in favor of go_image which the user can specifically override, too.
    1. When interpolation later supports referencing inputs on the same level, will be able to do more with additional go_version inputs. For now, lets reserve the input behavior for later.
  3. The changes follow the template introduced in the Ruby CI/CD component, which have been applied to the new Rust component too. https://gitlab.com/components/ruby
  4. The full pipeline is limited to generic inputs for now.
  5. The Go source code has been refactored into a GitLab Duo AI-generated version, the prompt should be repeatable for future updates.
  6. The documentation has been updated.

MR acceptance checklist

Please evaluate this MR against the MR acceptance checklist. It helps you analyze changes to reduce risks in quality, performance, reliability, security, and maintainability.

Screenshots or screen recordings

Screenshots are required for UI changes, and strongly recommended for all other merge requests.

Before After

How to set up and validate locally

Numbered steps to set up and validate the change are strongly suggested.

Merge request reports

Loading