• This repository has been archived on 10/Aug/2018
  • Stars
    star
    366
  • Rank 116,547 (Top 3 %)
  • Language
    Go
  • License
    MIT License
  • Created almost 10 years ago
  • Updated almost 7 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

This repository is a mirror for automated DockerHub builds. Please go to:

GitLab Runner

This is the repository of the official GitLab Runner written in Go. It runs tests and sends the results to GitLab. GitLab CI is the open-source continuous integration service included with GitLab that coordinates the testing. The old name of this project was GitLab CI Multi Runner but please use "GitLab Runner" (without CI) from now on.

Build Status

Contributing

Contributions are welcome, see CONTRIBUTING.md for more details.

Closing issues and merge requests

GitLab is growing very fast and we have a limited resources to deal with reported issues and merge requests opened by the community volunteers. We appreciate all the contributions coming from our community. But to help all of us with issues and merge requests management we need to create some closing policy.

If an issue or merge request has a ~"waiting for feedback" label and the response from the reporter has not been received for 14 days, we can close it using the following response template:

We haven't received an update for more than 14 days so we will assume that the
problem is fixed or is no longer valid. If you still experience the same problem
try upgrading to the latest version. If the issue persists, reopen this issue
or merge request with the relevant information.

Requirements

None: GitLab Runner is run as a single binary.

This project is designed to run on the Linux, OS X, and Windows operating systems. Other operating systems will probably work as long as you can compile a Go binary on them.

If you want to use Docker make sure that you have 1.5.0 at least installed.

Features

  • Allows to run:
  • multiple jobs concurrently
  • use multiple tokens with multiple server (even per-project)
  • limit number of concurrent jobs per-token
  • Jobs can be run:
  • locally
  • using Docker container
  • using Docker container and executing job over SSH
  • using Docker container with autoscaling on different clouds and virtualization hypervisors
  • connecting to remote SSH server
  • Is written in Go and distributed as single binary without any other requirements
  • Supports Bash, Windows Batch and Windows PowerShell
  • Works on Ubuntu, Debian, OS X and Windows (and anywhere you can run Docker)
  • Allows to customize job running environment
  • Automatic configuration reload without restart
  • Easy to use setup with support for docker, docker-ssh, parallels or ssh running environments
  • Enables caching of Docker containers
  • Easy installation as service for Linux, OSX and Windows

Compatibility chart

Supported features by different executors:

Executor Shell Docker Docker-SSH VirtualBox Parallels SSH
Secure Variables ✓ ✓ ✓ ✓ ✓ ✓
GitLab Runner Exec command ✓ ✓ ✓ no no no
gitlab-ci.yml: image no ✓ ✓ no no no
gitlab-ci.yml: services no ✓ ✓ no no no
gitlab-ci.yml: cache ✓ ✓ ✓ ✓ ✓ ✓
gitlab-ci.yml: artifacts ✓ ✓ ✓ ✓ ✓ ✓
Absolute paths: caching, artifacts no no no no no no
Passing artifacts between stages ✓ ✓ ✓ ✓ ✓ ✓

Supported systems by different shells:

Shells Bash Windows Batch PowerShell
Windows ✓ ✓ (default) ✓
Linux ✓ (default) no no
OSX ✓ (default) no no
FreeBSD ✓ (default) no no

Install GitLab Runner

Use GitLab Runner

Select executor

Troubleshooting

Advanced Configuration

Extra projects?

If you want to add another project, token or image simply RE-RUN SETUP. You don't have to re-run the runner. It will automatically reload configuration once it changes.

Changelog

Visit Changelog to view recent changes.

Version 0.5.0

Version 0.5.0 introduces many security related changes. One of such changes is the different location of config.toml. Previously (prior 0.5.0) config was read from current working directory. Currently, when gitlab-runner is executed by root or with sudo config is read from /etc/gitlab-runner/config.toml. If gitlab-runner is executed by non-root user, the config is read from $HOME/.gitlab-runner/config.toml. However, this doesn't apply to Windows where config is still read from current working directory, but this most likely will change in future.

The config file is automatically migrated when GitLab Runner was installed from GitLab's repository. For manual installations the config needs to be moved by hand.

The future

  • Please see the GitLab Direction page.
  • Feel free submit issues with feature proposals on the issue tracker.

Author

Kamil Trzciński

License

This code is distributed under the MIT license, see the LICENSE file.

More Repositories

1

steam-deck-tools

(Windows) Steam Deck Tools - Fan, Overlay, Power Control and Steam Controller for Windows
C#
723
star
2

pve-backup-server-dockerfiles

Unofficial, and unmaintained build of proxmox-backup-server
Shell
315
star
3

pve-patches

Repository with public Proxmox patches
Shell
219
star
4

camera-streamer

High-performance low-latency camera streamer for Raspberry PI's
C
210
star
5

pve-helpers

A set of Proxmox VE scripts that aids with suspend/resume and cpu pinning
Shell
194
star
6

esphome-components

A repository of custom esphome components
C
92
star
7

auto-proxy

Simple Docker-enabled Proxy server with HTTP/2 and automated SSL management using Let's Encrypt
Go
45
star
8

easy-wireguard

An simple bash application to ease the management of WireGuard configuration
Shell
17
star
9

debian-repository

Automatic Debian Repository built on top of GitHub Releases
Go
17
star
10

dokku-alt-phpmyadmin

Example phpmyadmin to be used with dokku-alt
PHP
8
star
11

rosapi-php

RouterOS PHP API class which simplifies configuration update process.
HTML
8
star
12

hackwaw

The apps for Hackwaw
Go
3
star
13

control-msi-rgb

Control MSI Mystic Light and Corsair RGB PRO DDR4
C++
3
star
14

gitlab-mirror-post-fetch

Post fetch app compatible with https://github.com/dustin/gitmirror
Go
2
star
15

sds011

Simple scripts to put SDS011 into sleep and active mode
Python
2
star
16

dokku-alt-strider-cd

Example Dockerfile for gitlab-ci to be used with strider-cd
2
star
17

planujemywesele

Simple application to crawl planujemywesele.pl to find a band, place and photographer
Python
1
star
18

docker-composer

Go
1
star
19

homebrew-taps

My personal Homebrew taps repository
Ruby
1
star
20

auto-stats

Docker Statistics automated to InfluxDB
Go
1
star
21

niimprint-web

A simple Niimbot D11/D110 web tester
JavaScript
1
star