[UX] Add "setup a self-hosted runner" to the pipeline zerostate page
Problem
Many active and engaged namespaces create a self-hosted CI/CD pipeline runner in order to manage their own CI/CD workflow. There are many different reasons why a namespace would want to do this. One thing that we know is that namespaces that set up a hosted runner upgrade at a significantly higher rate than those that utilize shared runners. Additionally, we have run tests that show that making it easier to set up a self-hosted runner successfully drives upgrade, however previous tests that highlight hosted runners over shared runners have decreased the overall number of namespaces utilizing CI/CD pipelines.
Hypothesis
By highlighting self-hosted runners on the pipeline zero state page and making it easier for users to set up a self-hosted runner from that page, we will maintain the overall number of verify users and drive additional free to paid conversion from those that need a self-hosted runner
Details
Update the current pipeline zero state page (below) to include a section that guides users who want to set up a self-hosted runner to our cloudformation templates that help them easily create those runners. This section should also guide users who want to learn more about hosted vs shared runners to a documentation page where they can learn more.
Proposed Solution
When runners are available, provide users with this information:
Runners are available to run your jobs now
GitLab Runner is an application that works with GitLab CI/CD to run jobs in a pipeline, and can be shared or self-hosted. There are shared runners available to run your jobs right now. Or, if you prefer you can install GitLab Runner (<-- link to project settings>runners) and register your own runners.
When there are no runners available, provide users with this information:
No runners detected
A GitLab Runner is an application that works with GitLab CI/CD to run jobs in a pipeline. Install GitLab Runner and register your own runners to get started with CI/CD.
Install GitLab Runner (<-- link to project settings>runners)
Runners | No Runners |
---|---|
![]() |
![]() |