Add shared runners to staging.gitlab.com

We need to add shared runners to https://staging.gitlab.com/ so it can be used for testing CI/CD easily. It also has the goal of doing tests on runners before deploying them in production.

This requires additional hosts in the infrastructure. Due to the nature of testing, we need to run also privileged jobs (for dind jobs), but they can be done by "private" runners as well if we want to limit to some accounts/projects.

Todo:

  • create machines
    • create shared-runners-manager-3.staging.gitlab.com
    • create shared-runners-manager-4.staging.gitlab.com
  • create staging runners roles in chef
  • assign new roles to new nodes
  • request External IP quota increase
  • oncall create DNS records
    • shared-runners-manager-3.staging.gitlab.com: 35.229.49.100
    • shared-runners-manager-4.staging.gitlab.com 35.229.66.131
  • create new Prometheus job staging-shared-runners
  • include shared-runners-manager-3.staging.gitlab.com and shared-runners-manager-4.staging.gitlab.com to Prometheus configuration (node, staging-shared-runners jobs)
  • ensure, that all pending jobs existing on staging.gitlab.com are dropped
  • enable shared runners on staging.gitlab.com
  • update prod->stg DB feeding procedure so all pending and running jobs will be canceled, shared runners will be disabled for all projects and pipeline schedules will be deactivated (gitlab-com-infrastructure!258)
Edited Feb 16, 2018 by Tomasz Maczukin
Assignee Loading
Time tracking Loading