Skip to content

Onboarding - move states inside the onboarding app

Axel García requested to merge 381320-onboarding-tracking-codes-view into master

What does this MR do and why?

Related to #381320 (closed)

On Onboarding - tracking codes view (!106771 - merged), we created the Onboarding setup page. This MR moves the onboarding state change to the onboarding root app, implements polling to listen for changes in the onboarding status (if Cube.js has data), and shows the Dashboards page if the onboarding is complete.

Screenshots or screen recordings

No visual changes

--

Click to expand related screenshot - Onboarding setup

image

How to set up and validate locally

Please follow the instructions at https://gitlab.com/gitlab-org/gitlab/-/snippets/2474959 to enable Product Analytics on your GDK.

With the Product Analytics feature enabled:

  1. Initialize the stack for a new project on the Rails console (rails c):
    project = Project.find_by_id(1)
    ProductAnalytics::InitializeStackService.new(container: project).execute
    # Expected response:
    # <ServiceResponse:0x00000001621a6db0 @http_status=:ok, @message="Product analytics initialization started", @payload={}, @reason=nil, @status=:success>
  2. Go to /gitlab-org/gitlab-test/-/product_analytics/dashboards.
  3. The setup page should render as there is no data for Cube.js yet.
  4. Insert data into the instrumented project by following the DevKit instructions for the new project. Or copy the data from another project directly without instrumenting:
    -- In ClickHouse
    CREATE TABLE gitlab_project_1.jitsu AS gitlab_project_2.jitsu;
    INSERT INTO gitlab_project_1.jitsu SELECT * FROM gitlab_project_2.jitsu LIMIT 1;
  5. The dashboard page should be rendered automatically.
  6. After reloading, the dashboard page should be rendered without hiccups.

MR acceptance checklist

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

Edited by Axel García

Merge request reports