Giter Club home page Giter Club logo

kroshu-tools's Introduction

Kroshu Tools

Kroshu Tools provides scripts for managing your ROS project.

Installation

The easiest way to install Kroshu Tools is to clone this repository and create soft links to the scripts in /usr/bin. This way updating Kroshu Tools is as easy as doing a git pull.

git clone https://github.com/kroshu/kroshu-tools.git
sudo ln -s /home/user/kroshu-tools/src/kroshu_setup/usr/bin/kroshu_setup /usr/bin/kroshu_setup

Instructions

kroshu_setup:

The script kroshu_setup initializes your ROS package for continuous integration. It adds neccesary configuration files for Travis CI and SonarQube, installs the TestCoverage cmake module if not already installed and extends your CMakeLists with test coverage options.

Projects configured with kroshu_setup use a fork of the ros-industrial/industrial_ci repository. The kroshu fork extends the industrial_ci by adding SonarQube analysis with test coverage included. In order to use SonarQube, your GitHub organization needs to be set up with SonarCloud or an own SonarQube server, and the SONAR_TOKEN environment variable needs to be set. More information about setting up SonarCloud with GitHub and Travis CI can be found here.

Go inside your ROS package directory and run kroshu_setup with your GitHub organization as input argument. The script makes the following changes to your project:

  • Create .travis.yml file for configuration with Travis CI
  • Create sonar-project.properties file for configuration with SonarQube
  • Create src and test folders if they didn't already exist
  • Append the CMakeLists.txt file with test coverage option. Note: By default no files are checked for coverage. Targets have to be added in CMakeLists.txt explicitly.

Note: if you don't have the TestCoverage cmake module installed (e.g. first time use), you will need to run the script as root. This will install TestCoverage.cmake to /usr/lib/cmake/TestCoverage.

kroshu-tools's People

Contributors

cmigliorini avatar resizoltan avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.