firecow / Gitlab Ci Local
Licence: mit
Tired of pushing to test your .gitlab-ci.yml?
Stars: ✭ 134
Programming Languages
typescript
32286 projects
Projects that are alternatives of or similar to Gitlab Ci Local
Gitlab Dashboard
📺 TV dashboard for a global view on Gitlab Pipelines
Stars: ✭ 107 (-20.15%)
Mutual labels: pipeline, ci, gitlab-ci, gitlab
Gitlab Ci Dashboard
📊 Dashboard for monitoring GitLab CI builds and pipelines for TV
Stars: ✭ 79 (-41.04%)
Mutual labels: ci, cd, gitlab-ci, gitlab
Cimonitor
Displays CI statuses on a dashboard and triggers fun modules representing the status!
Stars: ✭ 34 (-74.63%)
Mutual labels: pipeline, ci, cd, gitlab
Gitlab Ci Pipeline Php
☕️ Docker images for test PHP applications with Gitlab CI (or any other CI platform!)
Stars: ✭ 451 (+236.57%)
Mutual labels: ci, cd, gitlab-ci, gitlab
howtheydevops
A curated collection of publicly available resources on how companies around the world practice DevOps
Stars: ✭ 318 (+137.31%)
Mutual labels: pipeline, ci, cd
Pypyr
pypyr task-runner cli & api for automation pipelines. Automate anything by combining commands, different scripts in different languages & applications into one pipeline process.
Stars: ✭ 173 (+29.1%)
Mutual labels: pipeline, ci, cd
Lastbackend
System for containerized apps management. From build to scaling.
Stars: ✭ 1,536 (+1046.27%)
Mutual labels: pipeline, ci, cd
Glci
🦊 Test your Gitlab CI Pipelines changes locally using Docker.
Stars: ✭ 471 (+251.49%)
Mutual labels: ci, gitlab-ci, gitlab
Lambdacd
a library to define a continuous delivery pipeline in code
Stars: ✭ 655 (+388.81%)
Mutual labels: pipeline, ci, cd
Crane
⬆ A GitLab CI ready image to upgrade services in Rancher
Stars: ✭ 90 (-32.84%)
Mutual labels: gitlab-ci, gitlab
Docker Builder
Docker builder builds Docker images from a friendly config file.
Stars: ✭ 81 (-39.55%)
Mutual labels: ci, cd
Rain
🌧️ A live example to illustrate python packaging, testing, building, & deploying
Stars: ✭ 99 (-26.12%)
Mutual labels: ci, cd
Android Ci
A docker image for building Android apps. Supports multiple SDK Build Tools.
Stars: ✭ 101 (-24.63%)
Mutual labels: ci, gitlab
Go Gitlab Client
A Go gitlab API client & powerful CLI written in Go
Stars: ✭ 107 (-20.15%)
Mutual labels: ci, gitlab
Tired of pushing to test your .gitlab-ci.yml?
Run gitlab pipelines locally as shell executor or docker executor.
Get rid of all those dev specific shell scripts and make files.
Table of contents
Installation
NPM
npm install -g gitlab-ci-local
Linux
Download and put binary in /usr/local/bin
sudo su # must be installed as root, if placed in /usr/local/bin/
curl -L https://github.com/firecow/gitlab-ci-local/releases/latest/download/linux.gz | gunzip -c > /usr/local/bin/gitlab-ci-local
chmod +x /usr/local/bin/gitlab-ci-local
exit
Macos
Download and put binary in /usr/local/bin
sudo su # must be installed as root, if placed in /usr/local/bin/
curl -L https://github.com/firecow/gitlab-ci-local/releases/latest/download/macOS.gz | gunzip -c > /usr/local/bin/gitlab-ci-local
chmod +x /usr/local/bin/gitlab-ci-local
exit
Windows (Git bash)
Install gitbash
Download and put binary in C:\Program Files\Git\mingw64\bin
curl -L https://github.com/firecow/gitlab-ci-local/releases/latest/download/win.gz | gunzip -c > /c/Program\ Files/Git/mingw64/bin/gitlab-ci-local.exe
Convinience
Bash alias
echo "alias gcl='gitlab-ci-local'" >> ~/.bashrc
Tab completion
gitlab-ci-local --completion >> ~/.bashrc
Quirks
User variables
Put a file like this in $HOME/.gitlab-ci-local/variables.yml
---
project:
gitlab.com/test-group/test-project.git:
# Will be type Variable and only available if remote is exact match
AUTHORIZATION_PASSWORD: djwqiod910321
group:
gitlab.com/test-group/:
# Will be type Variable and only available for remotes that include group named 'test-group'
DOCKER_LOGIN_PASSWORD: dij3213n123n12in3
global:
# Will be type File, because value is a file path
SSH_PRIVATE_KEY: '~/.ssh/id_rsa'
Variables will now appear in your jobs, if project or group matches git remote, global's are always present
Decorators
@Description
decorator
The Adds descriptive text to gitlab-ci-local --list
# @Description Install npm packages
npm-install:
image: node
artifacts:
paths:
- node_modules/
script:
- npm install --no-audit
@Interactive
decorator
The # @Interactive
interactive-shell:
rules:
- if: $GITLAB_CI == 'false'
when: manual
script:
- docker run -it debian bash
Artifacts
Shell executor just place files in host directory
Docker executor copies files specified via artifacts field to host
Development
Scripts
npm install
npm run build
npm start
Package binaries
npm run pkg-linux
npm run pkg-win
npm run pkg-macos
npm run pkg-all
Note that the project description data, including the texts, logos, images, and/or trademarks,
for each open source project belongs to its rightful owner.
If you wish to add or remove any projects, please contact us at [email protected].