Skip to main content

scikit-ci enables a centralized and simpler CI configuration for Python extensions.

Project description

scikit-ci enables a centralized and simpler CI configuration for Python extensions.

By having appveyor.yml, azure-pipelines.yml, circle.yml and .travis.yml calling the same scikit-ci command-line executable, all the CI steps for all service can be fully described in one scikit-ci.yml configuration file.

Latest Release

Versions Downloads
https://img.shields.io/pypi/v/scikit-ci.svg?maxAge=2592000 https://img.shields.io/badge/downloads-72k%20total-green.svg

Build Status

  Linux macOS Windows
PyPI https://circleci.com/gh/scikit-build/scikit-ci.svg?style=shield https://img.shields.io/travis/scikit-build/scikit-ci.svg?maxAge=2592000 https://ci.appveyor.com/api/projects/status/5to6lvgaqcrck675?svg=true

Overall Health

Documentation Status https://codecov.io/gh/scikit-build/scikit-ci/branch/master/graph/badge.svg

Miscellaneous

History

scikit-ci was initially developed in May 2016 by Omar Padron to facilitate the continuous integration of the scikit-build project.

At that time, it already consisted of a driver script calling methods specific to each continuous integration service. By having each CI service calling the same driver script, there was no need to deal with implementing install/test/build steps over and over in different scripting languages (power shell, shell or windows batch). Instead all code was implemented in python code leveraging the subprocess module.

Later in early September 2016, with the desire to setup cross-platform continuous integration for other project and avoid duplication or maintenance hell, a dedicated repository was created by Jean-Christophe Fillion-Robin. By simply cloning the repository, it was possible to more easily enable CI for other projects.

While this was an improvement, all the steps were still hardcoded in the driver scripts, the project was not easily customizable. More could be done to improve the user experience.

Finally, in late September 2016, all hardcoded code was moved into standalone executable python scripts. Then, Jean-Christophe came up with the concept of scikit-ci.yml configuration file. This configuration file allows to describe the commands and environment for each step (install, test and build) specific to a project and associated continuous integration services.

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

scikit-ci-0.21.0.tar.gz (56.8 kB view hashes)

Uploaded source

Built Distribution

scikit_ci-0.21.0-py2.py3-none-any.whl (16.1 kB view hashes)

Uploaded py2 py3

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Huawei Huawei PSF Sponsor Microsoft Microsoft PSF Sponsor NVIDIA NVIDIA PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page