Skip to content

Add helm QA scenario

David Fernandez requested to merge 10io-qa-scenario-for-helm into master

🎴 Context

The helm package registry doesn't have a QA scenario yet.

This MR adds such scenario. The scenario is almost a carbon copy from the maven gradle QA scenario.

It goes through pushing a package to a project and pulling it from a different project using different authentication methods (personal access token, ci job token and deploy token).

See the related issues:

🔍 What does this MR do and why?

  • Adds a QA scenario for the helm package registry
  • Reduce the amount of duplicated code with the maven gradle QA scenario by introducing a shared_context
  • Updates the qa spec_helper.rb to properly load all the shared_contexts.

🖼 Screenshots or screen recordings

See next section

👽 How to set up and validate locally

Here is the command to run the spec against a local instance and see the chrome browser window doing the actions.

(output cleaned up)

$ WEBDRIVER_HEADLESS=false bundle exec bin/qa Test::Instance::All http://172.16.123.1:8000 -- qa/specs/features/browser_ui/5_package/helm_registry_spec.rb  --tag orchestrated --tag packages
[...]
Package
  Helm Registry
    using a personal_access_token
      pushes and pulls a helm chart using
    using a ci_job_token
      pushes and pulls a helm chart using
    using a project_deploy_token
      pushes and pulls a helm chart using

Top 3 slowest examples (435.02 seconds, 100.0% of total time):
  Package Helm Registry using a personal_access_token pushes and pulls a helm chart using
    161.17 seconds ./qa/specs/features/browser_ui/5_package/helm_registry_spec.rb:94
  Package Helm Registry using a project_deploy_token pushes and pulls a helm chart using
    145.17 seconds ./qa/specs/features/browser_ui/5_package/helm_registry_spec.rb:94
  Package Helm Registry using a ci_job_token pushes and pulls a helm chart using
    128.68 seconds ./qa/specs/features/browser_ui/5_package/helm_registry_spec.rb:94

Finished in 7 minutes 15 seconds (files took 5.46 seconds to load)
3 examples, 0 failures

🛃 MR acceptance checklist

This checklist encourages us to confirm any changes have been analyzed to reduce risks in quality, performance, reliability, security, and maintainability.

Merge request reports

Loading