Skip to main content

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

Metadata

Release files for gitlab-gce-autoscaler 0.1.3

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for gitlab-gce-autoscaler 0.1.3
File Size Uploaded
gitlab-gce-autoscaler-0.1.3.tar.gz 3.8 kB Details

Release files / gitlab-gce-autoscaler-0.1.3.tar.gz

Download URL gitlab-gce-autoscaler-0.1.3.tar.gz
Size 3.8 kB
Tags Source
SHA-256 checksum
How to use checksums
9f42d84453d71b1e648930532c7b647dc2058a9ad377b0e81b53356a35cc9018
BLAKE2b-256 checksum
How to use checksums
c30bf563245f13f512c689ecfea553066b67c63c62ac468530d4e9a4bd2e7d6b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.13.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.31.1 CPython/3.6.7

Release history Release notifications | RSS feed

This release

0.1.3 This release

1 release file

0.1.2

1 release file

0.1.1

1 release file

0.1.0

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page