Skip to content

Create gitlab-ce/ee shared runners managers

Following proposal nb 4 from https://gitlab.com/gitlab-com/infrastructure/issues/688 . We should create a new two managers used only to run gitlab-ce/ee builds.

  1. Create gitlab-shared-runners-manager-X.gitlab.com,
  2. Register runners as shared runners with tags linux, docker, gitlab,
  3. Configure auto-scaling:
[[runners]]
  limit = 200
  executor = "docker+machine"

 [runners.docker]
    image = "ruby:2.1"
    privileged = false
    volumes = ["/cache"]

  [runners.machine]
    IdleCount = 10 # have at 10 machines always standby
    IdleTime = 1800
    MaxBuilds = 100 # reuse machines for up to 100 builds
    MachineDriver = "digitalocean"
    MachineName = "auto-scale-%s"
    MachineOptions = ["digitalocean-image=coreos-stable",
"digitalocean-ssh-user=core",
"digitalocean-access-token=TOKEN",
"digitalocean-region=nyc2",
"digitalocean-size=2gb",
"digitalocean-private-networking",
"engine-registry-mirror=http://runners-cache-1-internal.gitlab.com:1444",
"digitalocean-userdata=/etc/gitlab-runner/cloudinit.sh"]
  1. Change gitlab-ce .gitlab-ci.yml to use tags: - gitlab for every job there

cc @maratkalibek @pcarranza @stanhu