Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/lefticus/decent_ci
https://github.com/lefticus/decent_ci
Last synced: about 7 hours ago
JSON representation
- Host: GitHub
- URL: https://github.com/lefticus/decent_ci
- Owner: lefticus
- Created: 2014-04-02T19:40:49.000Z (over 10 years ago)
- Default Branch: master
- Last Pushed: 2022-08-24T16:42:20.000Z (about 2 years ago)
- Last Synced: 2024-05-01T23:56:23.304Z (6 months ago)
- Language: Ruby
- Size: 771 KB
- Stars: 18
- Watchers: 8
- Forks: 4
- Open Issues: 7
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
decent_ci
=========[![Build Status](https://travis-ci.org/Myoldmopar/decent_ci.svg?branch=master)](https://travis-ci.org/Myoldmopar/decent_ci)
[![Coverage Status](https://coveralls.io/repos/github/Myoldmopar/decent_ci/badge.svg?branch=master)](https://coveralls.io/github/Myoldmopar/decent_ci?branch=master)
[![Maintainability](https://api.codeclimate.com/v1/badges/2ec29367c38e431d4b8a/maintainability)](https://codeclimate.com/github/Myoldmopar/decent_ci/maintainability)Forked from https://github.com/lefticus/decent_ci, tailored to [EnergyPlus ](https://github.com/NREL/EnergyPlus) specific needs. If you are using this fork of it for anything other than EnergyPlus, please be aware we are not guaranteeing anything stable here.
Decent CI is a decentralized continuous integration system for cmake based projects designed for use with github.
It queries a given repository for a the set of branches, releases and pull request. The project is written in ruby and requires:
- ruby
- octokit gem
- activesupport gem
- gitTo configure your application for use with Decent CI, you need put approriate `.decent_ci*.yml` files in the root of your project. Only branches / tags which contain the required files will be tested.
Examples can be found in the [confs](confs) folder.
Decent CI is tested on Windows, Linux and MacOS.
# Windows Installation / Usage
TO BE UPDATED
1. Install git bash http://git-scm.com/download/win
2. Install python https://www.python.org/downloads/ add it to the path (needed for energyplus regressions)
3. Install ruby 2.0+ http://rubyinstaller.org/downloads/ add it to the path
4. Install cmake http://www.cmake.org/cmake/resources/software.html add it to the path
5. Install mingw fortran if desired (for EnergyPlus) add it to the path
6. Download the updated windows ssl certificate file and add `SSL_CERT_FILE` environment variable pointing to it. See here: https://gist.github.com/fnichol/867550
7. `gem install octokit activesupport`
8. Get gist from here https://gist.github.com/lefticus/10914850
9. Create github token for the user
10. Launch git bash, execute `ruby ./run_ci.rb `# MacOS Installation / Usage
1. Install ruby gems octokit and activesupport. You may need to follow these instructions http://stackoverflow.com/questions/22352838/ruby-gem-install-json-fails-on-mavericks-and-xcode-5-1-unknown-argument-mul, then `sudo gem install octokit activesupport`
2. Need to get-pip: `curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py`, then `sudo python get-pip.py`
3. Install Python deps: `sudo pip install boto beautifulsoup4 soupsieve`
4. Install CMake (download from web), install command line tools
5. Install GFortran (download from https://github.com/fxcoudert/gfortran-for-macOS/releases)
6. Install MacTeX (download from web)
7. Install IFW (download from https://download.qt.io/official_releases/qt-installer-framework/)
8. You'll then want to symlink the binarycreator somewhere on PATH so CMake picks it up
9. Need to consider CCache
10. Get gist from here https://gist.github.com/c51580a92556ef344216c22ec390aa31.git
11. Create github token for the user
12. Execute `ruby ./run_ci.rb `# Linux Installation / Usage
```
sudo apt-get install git cmake g++ gfortran cmake-curses-gui curl ccache python-pip texlive-full valgrind lcov gcovr clang-format cppcheck
pip install boto beautifulsoup4 soupsieve
sudo gem install activesupport octokit
cd ~
mkdir ~/ci
git clone https://gist.github.com/c51580a92556ef344216c22ec390aa31.git ci_script
cd ci_script
ruby run_ci.rb ~/ci NREL/EnergyPlus
```# Documentation
Documentation is currently stubbed out, and needs to be fully fleshed out.
In any case, the docs are built using Yard.
To get started, `gem install yard` or bundle it from the doc section of the Gemfile.
Then from the root of the repo, just run `yardoc`, and it will scan the lib directory, generating html docs and dropping them into the `docs/` folder.
GitHub then hosts the documentation on the GitHub page: https://myoldmopar.github.io/decent_ci/