Skip to main content

minimalist, decentralized, flexible Continuous Integration Server for hackers

Project description

Latest version released on PyPi Package license

minion-ci is a minimalist, decentralized, flexible Continuous Integration Server for hackers.

Index Page

Quickstart

Making your repository minion compatible is as easy as running this command in the root of your repository:

minion init

After that you should modify the minion.yml file in your repository to fit your needs. Make a nice commit and run the following command to start your first job:

git minion

Installation

It’s recommended to use pip to install minion-ci:

pip3 install minion-ci

MongoDB: To persist the job data minion-ci uses MongoDB. Make sure you have MongoDB installed …

apt-get install mongodb
yum install mongodb

… and an instance is running:

ps -ef | grep mongod

… eventually start one with:

mongod

minion.yml File Format

The minion-ci server will clone your repository and parse a file called minion.yml located in the root of the cloned repository. The format is really simple:

# command which is run before the real command
precondition: "echo 'I was run before the test ...'"
# the test command
command: "echo 'This is my test...'"
on:
  # command which is run if the command was successful
  success: "echo 'I was run because the test was successful ...'"
  # command which is run if the command failed
  failure: "echo 'I was run because the test failed ...'"

Server API

Route

HTTP Method

Parameter

Description

/status

GET

Get status of the server

/jobs

GET

page, page_size

Get a list of all jobs

/jobs

PUT, POST

repo_url, commit_hash, branch, keep_data, arbitrary data

Create a new job

/jobs

DELETE

Remove all jobs

/jobs/<job_id>

GET

Get a single job

/jobs/<job_id>

DELETE

Remove a single job

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

minion-ci-0.0.4.tar.gz (39.8 kB view details)

Uploaded Source

File details

Details for the file minion-ci-0.0.4.tar.gz.

File metadata

  • Download URL: minion-ci-0.0.4.tar.gz
  • Upload date:
  • Size: 39.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for minion-ci-0.0.4.tar.gz
Algorithm Hash digest
SHA256 3b3f7bc512102f2694a95c7f1a70d976bcd6af76ec1afd08c4eaad11a0e6a067
MD5 f4b2185ad5682647ea1f5234ca45c096
BLAKE2b-256 aff8550a5b325744b9463f34e940ae5f978dd1f2d67a1ba5ed3311617d49d45b

See more details on using hashes here.

Provenance

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page