| Crates.io | micro-ci |
| lib.rs | micro-ci |
| version | 0.1.1 |
| created_at | 2019-09-19 19:50:53.817769+00 |
| updated_at | 2019-09-19 20:05:15.305373+00 |
| description | Tiny self-hosted CI with minimal requirements |
| homepage | |
| repository | https://github.com/boringcactus/micro-ci |
| max_upload_size | |
| id | 166051 |
| size | 86,162 |
Tiny self-hosted CI with minimal requirements.
cargo install micro-ci or yoink a Linux binary of the
latest release.
Global configuration on the server goes in micro-ci.toml in the config_dir() found by
dirs
Get yourself a GitHub access token here. Make sure you
can serve static files over HTTP from some directory to some URL - in the use case for which
I'm developing this, I can toss files in ~/public_html and they're public. micro-ci will
make a subfolder for each project you build with it, so I've got it pointed at
~/public_html/ci.
github_token = "asdfghjkl"
web_root_path = "/path/to/folder"
web_root_url = "https://example.com/url/for/same/folder"
fetch_interval = 60 # measured in seconds
Local (per-repository) configuration goes in .micro-ci.toml at the same level where your
command should be run. Command will be run with bash -c <command> 2>&1 so either be concise
or write a helper script. (This probably means micro-ci doesn't work as well on Windows.)
github_repo = "boringcactus/micro-ci"
command = "cargo test"
For each repository you want to use micro-ci to test:
micro-ci in the folder where .micro-ci.toml lives and your test script should be runmicro-ci always run tests on the current commit, run micro-ci --run-nowRUST_LOG=micro_ci=debug