Skip to main content

Very simple autoscaler for GCE instance groups & GitLab CI

Project description

Build Status PyPI version

GitLab GCE Autoscaler

A very simple autoscaler for GitLab CI on GCE

Features

  • watches a GitLab pipeline for queued jobs
  • scales a GCE instance group to meet demand

That's it 😄

Synopsis

$ gitlab-gce-autoscaler --help
Usage: gitlab-gce-autoscaler [OPTIONS]

Options:
  --project-id TEXT               GCE project ID
  --gce-zone TEXT                 GCE zone
  --gce-instance-group-name TEXT  Name of GCE instance group  [required]
  --job-filter TEXT               Filter job names by this comma separated
                                  list of keywords
  --interval INTEGER              Interval (in seconds) to poll GitLab API
  --gitlab-project-ids TEXT       Comma separate list of GitLab projects IDs
                                  to poll for jobs  [required]
  --gitlab-personal-token TEXT    GitLab API token  [required]
  --slots-per-instance INTEGER    Target number of slots per instance
  --help                          Show this message and exit.

Helm Chart

There's a Helm chart included in the repo. To use it, you'll need to create a service account on GCE with the following permissions:

  • compute.instanceGroupManagers.get
  • compute.instanceGroupManagers.update

Then, create a secret with the service account credentials:

$ kubectl create secret generic gitlab-gce-autoscaler --from-file=service-account-creds.json=service-account.json
secret/gitlab-gce-autoscaler created

Now install the chart:

$ helm upgrade --install gitlab-gce-autoscaler helm/gitlab-gce-autoscaler -f myvalues.yaml

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

gitlab-gce-autoscaler-0.1.0.tar.gz (3.5 kB view hashes)

Uploaded Source

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page