All Projects → jkawamoto → loci

jkawamoto / loci

Licence: MIT license
Testing remote CI scripts locally

Programming Languages

go
31211 projects - #10 most used programming language
shell
77523 projects
Makefile
30231 projects

Projects that are alternatives of or similar to loci

arduino-ci-script
Bash script for continuous integration of Arduino projects
Stars: ✭ 25 (+0%)
Mutual labels:  travis-ci, tests
retesteth
testeth via RPC. Test run, generation by t8ntool protocol
Stars: ✭ 56 (+124%)
Mutual labels:  tests
phpunit-travis-ci-coverage-example
phpUnit Testing on Travis-CI with Code Coverage on CodeCov
Stars: ✭ 30 (+20%)
Mutual labels:  travis-ci
googletest-ci
Continuous integration (CI) + Google Test (gtest) + CMake example boilerplate demo
Stars: ✭ 14 (-44%)
Mutual labels:  travis-ci
docker-coala-base
coala base docker image
Stars: ✭ 20 (-20%)
Mutual labels:  travis-ci
balls
the testing framework with balls 🔴🟡🟢
Stars: ✭ 55 (+120%)
Mutual labels:  tests
koshry
Run on CI, Apply Rules on the Build and Get the Result back to the Pull Request.
Stars: ✭ 59 (+136%)
Mutual labels:  travis-ci
estj
EstJ is my own test framework!
Stars: ✭ 13 (-48%)
Mutual labels:  tests
travistorrent-tools
Tools used to create the data on TravisTorrent (http://travistorrent.testroots.org).
Stars: ✭ 38 (+52%)
Mutual labels:  travis-ci
dokusho
Simple Japanese reading stats tracker
Stars: ✭ 12 (-52%)
Mutual labels:  travis-ci
quic-tracker
A test suite for QUIC
Stars: ✭ 59 (+136%)
Mutual labels:  tests
cpp14-project-template
A simple, cross-platform, and continuously integrated C++14 project template
Stars: ✭ 64 (+156%)
Mutual labels:  travis-ci
Clean Marvel Kotlin
This repository contains a detailed sample app that implements Clean architecture and MVP in Kotlin using RxJava2, Retrofit
Stars: ✭ 27 (+8%)
Mutual labels:  travis-ci
alexa-skill-boilerplate
An easy to use Amazon Alexa Skill Boilerplate for fast skill creation
Stars: ✭ 54 (+116%)
Mutual labels:  travis-ci
web-components-good-practices
😎☑️ Good Practices for build Web Components.
Stars: ✭ 80 (+220%)
Mutual labels:  tests
react-native-web-view
An implementation of React Native's WebView that allows for postMessage on iOS devices.
Stars: ✭ 13 (-48%)
Mutual labels:  travis-ci
dump-env
A utility tool to create .env files
Stars: ✭ 81 (+224%)
Mutual labels:  travis-ci
travis
⛔ ARCHIVED ⛔ Set Up 'Travis' for Testing and Deployment
Stars: ✭ 61 (+144%)
Mutual labels:  travis-ci
kMD2PDF
Markdown to PDF conversion library written in Kotlin
Stars: ✭ 14 (-44%)
Mutual labels:  travis-ci
iiitdmj-gpa
GPA Calculator + Quiz Bot for IIITDM Jabalpur
Stars: ✭ 16 (-36%)
Mutual labels:  tests

Loci: Testing remote CI scripts locally

MIT License Build Status wercker status Release Japanese

Loci Logo

Loci runs CI tests locally to make sure your commits will pass such tests before pushing to a remote repository.

Loci currently supports Travis's CI scripts for Python and Go projects. Loci also requires Docker to run tests in a sandbox.

Demo

asciicast

Usage

If your current directory has .travis.yml, run just loci like

$ loci

If your .travis.yml specifies more than two runtime versions, Loci will run those tests palatally. If you want to run tests on a selected one runtime version, use --select/-s flag. For example, the following command runs tests on only Python 3.6:

$ loci -s 3.6

Here is the help text of the loci command:

loci [global options] [script file]

  If script file isn't given, .travis.yml will be used.

GLOBAL OPTIONS:
   --name NAME, -n NAME              base NAME of containers running tests.
                                     If not given, containers will be deleted.
   --select VERSION, -s VERSION      select specific runtime VERSION where tests
                                     running on.
   --tag TAG, -t TAG                 specify a TAG name of the docker image to
                                     be build.
   --max-processors value, -p value  max processors used to run tests.
   --log, -l                         store logging information to files.
   --base TAG, -b TAG                use image TAG as the base image.
                                     (default: "ubuntu:latest")
   --apt-proxy URL                   URL for a proxy server of apt repository.
                                     If environment variable APT_PROXY exists,
                                     that value will be used by default.
   --pypi-proxy URL                  URL for a proxy server of pypi repository.
                                     If environment variable PYPI_PROXY exists,
                                     that value will be used by default.
   --http-proxy URL                  URL for a http proxy server.
                                     If environment variable HTTP_PROXY exists,
                                     that value will be used by default.
   --https-proxy URL                 URL for a https proxy server.
                                     If environment variable HTTPS_PROXY exists,
                                     that value will be used by default.
   --no-proxy LIST                   Comma separated URL LIST for which proxies
                                     won't be used.
                                     If environment variable NO_PROXY exists,
                                     that value will be used by default.
   --no-build-cache                  Do not use cache when building the image.
   --no-color                        Omit to print color codes.
   --help, -h                        show help
   --version, -v                     print the version

Installation

Loci works with docker. If your environment doesn't have docker, install it first. The minimum required docker version is 1.12.0 (API version: 1.24).

If you're a Homebrew or Linuxbrew user, you can install Loci by the following commands:

$ brew tap jkawamoto/loci
$ brew install loci

To build the newest version of Loci, use go get command:

$ go get github.com/jkawamoto/loci

Otherwise, compiled binaries are also available in Github.

License

This software is released under the MIT License, see LICENSES.

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].