Very simple autoscaler for GCE instance groups & GitLab CI
Project description
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.getcompute.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
File details
Details for the file gitlab-gce-autoscaler-0.1.3.tar.gz.
File metadata
- Download URL: gitlab-gce-autoscaler-0.1.3.tar.gz
- Upload date:
- Size: 3.8 kB
- Tags: Source
- Uploaded using 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
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
9f42d84453d71b1e648930532c7b647dc2058a9ad377b0e81b53356a35cc9018
|
|
| MD5 |
e7845a6d41a866dc17ecdf6cc1ec2dd3
|
|
| BLAKE2b-256 |
c30bf563245f13f512c689ecfea553066b67c63c62ac468530d4e9a4bd2e7d6b
|