Skip to content

MRKonrad/ContinuousIntegrationPlayground

Repository files navigation

Continuous Integration Playground

See the DOCS PAGE.

System Badge
OSX/Linux build - Travis Travis (.org)
Windows build - AppVeyor AppVeyor
Test coverage codecov
Downloads GitHub Releases (by Release)

Inspiration

Based on

Notes

  • entries in .gitmodules are added automatically by calling in console for example git submodule add https://github.com/google/googletest.git ./thirdParty/googletest

  • to generate documentation we need to tell doxygen what dirs it should use as input (INPUT in Doxyfile). As in this Doxyfile I assigned it to env variable (INPUT = $(INPUT_FOR_DOXY)), we have to define the variable. This is done in .travis.yml, but if you want to do it locally type in console:

    export INPUT_FOR_DOXY=". ./app ./lib ./tests" # to define the env variable
    doxygen Doxyfile # to run doxygen
  • to generate coverage locally:

    • cmake . -DCMAKE_CXX_FLAGS="-fprofile-arcs -ftest-coverage"
    • lcov --no-external --capture --directory . --output-file coverage.info
    • lcov --remove coverage.info 'thirParty/*' 'tests/*' -o coverage_filtered.info
    • to generate coverage html report genhtml covercoverage_filteredage.info --output-directory out
  • to delpoy:

    git commit -m 'my message'
    git tag v0.1
    git push origin v0.1
  • to delete tag:

    git push --delete origin v0.1
    git tag --delete v0.1
  • tokens for deployment. Go to github/Settings/Developer settings/Personal access tokens. Generate a new one. To use in travis you have to have travis installed on your local system and encypt the token. To use in appveyor go to their website and encrypt the token.

  • Slack notifications:

About

CI playground that can serve as a template for new projects

Resources

License

Stars

Watchers

Forks

Packages

No packages published