Skip to content
/ ci_kit Public

Baseline pipelines for language-agnostic CI test steps

Notifications You must be signed in to change notification settings

andb0t/ci_kit

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

29 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

CI Kit

This repository provides baseline pipelines for language-agnostic CI test steps.

Content

The included scripts check

  • commit message format
  • code format
  • file content
  • customizable blacklist A subset of them is called by the default pipelines. Pick and chose!

Supporting CI templates for

  • GITLAB
  • GITHUB
  • BITBUCKET
  • AZUREDEVOPS

Installation

There are two modes of installation:

  1. add ci_kit as submodule.

    This is the recommended way of installation because it makes udpates easy and avoids duplication of code if you use ci_kit in several projects. If you need customizations, fork this repo and add your fork as submodule. [THIS_REPO_URL] has to use HTTPS, not SSH.

    git submodule add [THIS_REPO_URL]

    Make sure fresh clones use the --recursive option to check out the subrepo as well:

    git clone --recursive [THIS_REPO_URL]
  2. clone ci_kit to any path on your machine [YOUR_CI_KIT_PATH]

    Using this option, you will be able to chose and select more, which scripts you need which you don't. Copying them to your repo is made easy with the provided setup.sh scripts.

    git clone [THIS_REPO_URL]

CI steps

To install a basic pipeline file, calling some basic scripts to check the sanity of your code, execute e.g.

[YOUR_CI_KIT_PATH]/setup_ci.sh GITLAB  # other options are GITHUB, AZUREDEVOPS, BITBUCKET

Git hooks

To allow an instantaneous sanity check of the code you are about to commit, use git hooks. They are code snippets triggering on git events, such as committing or pushing. To install the hooks, call

./ci_kit/githooks/setup.sh --install  # if you have included ci_kit as git submodule
[YOUR_CI_KIT_PATH]/githooks/setup.sh --install  # if you have cloned ci_kit to another path on your machine

The option --remove resets the git hooks to the default.

Contribution

Since CI syntax will continue being updated frequently, the git hosting service specific files are expected to outdate relatively quickly. Contributions to fix them and adapt them to the newest changes & standards are very welcome!

About

Baseline pipelines for language-agnostic CI test steps

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages