diff --git a/.circleci/config.yml b/.circleci/config.yml
new file mode 100644
index 0000000000000000000000000000000000000000..9ec02adc5749985975f56d2151e96de4a98c4d4d
--- /dev/null
+++ b/.circleci/config.yml
@@ -0,0 +1,69 @@
+#
+#
+# ******************************************************************************
+# MontiCAR Modeling Family, www.se-rwth.de
+# Copyright (c) 2017, Software Engineering Group at RWTH Aachen,
+# All rights reserved.
+#
+# This project is free software; you can redistribute it and/or
+# modify it under the terms of the GNU Lesser General Public
+# License as published by the Free Software Foundation; either
+# version 3.0 of the License, or (at your option) any later version.
+# This library is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this project. If not, see .
+# *******************************************************************************
+#
+
+# Java Maven CircleCI 2.0 configuration file
+#
+# Check https://circleci.com/docs/2.0/language-java/ for more details
+#
+version: 2
+general:
+ branches:
+ ignore:
+ - gh-pages
+
+jobs:
+ build:
+ docker:
+ # specify the version you desire here
+ - image: circleci/openjdk:8-jdk
+
+ # Specify service dependencies here if necessary
+ # CircleCI maintains a library of pre-built images
+ # documented at https://circleci.com/docs/2.0/circleci-images/
+ # - image: circleci/postgres:9.4
+
+ working_directory: ~/repo
+
+ environment:
+ # Customize the JVM maximum heap limit
+ MAVEN_OPTS: -Xmx3200m
+
+ steps:
+ - checkout
+
+ # run tests!
+ - run: mvn -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn -B clean install --settings "settings.xml"
+workflows:
+ version: 2
+ commit-workflow:
+ jobs:
+ - build
+ scheduled-workflow:
+ triggers:
+ - schedule:
+ cron: "30 1 * * *"
+ filters:
+ branches:
+ only: master
+
+ jobs:
+ - build
+
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
new file mode 100644
index 0000000000000000000000000000000000000000..a45cd7c87301d8847cb1237464de25df85737f9b
--- /dev/null
+++ b/.gitlab-ci.yml
@@ -0,0 +1,50 @@
+#
+#
+# ******************************************************************************
+# MontiCAR Modeling Family, www.se-rwth.de
+# Copyright (c) 2017, Software Engineering Group at RWTH Aachen,
+# All rights reserved.
+#
+# This project is free software; you can redistribute it and/or
+# modify it under the terms of the GNU Lesser General Public
+# License as published by the Free Software Foundation; either
+# version 3.0 of the License, or (at your option) any later version.
+# This library is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this project. If not, see .
+# *******************************************************************************
+#
+
+stages:
+- windows
+- linux
+
+masterJobLinux:
+ stage: linux
+ image: maven:3-jdk-8
+ script:
+ - mvn -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn -B clean deploy --settings settings.xml
+ - cat target/site/jacoco/index.html
+ - mvn package sonar:sonar -s settings.xml
+ only:
+ - master
+
+masterJobWindows:
+ stage: windows
+ script:
+ - mvn -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn -B clean install --settings settings.xml
+ tags:
+ - Windows10
+
+BranchJobLinux:
+ stage: linux
+ image: maven:3-jdk-8
+ script:
+ - mvn -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn -B clean install --settings settings.xml
+ - cat target/site/jacoco/index.html
+ except:
+ - master
diff --git a/.travis.yml b/.travis.yml
new file mode 100644
index 0000000000000000000000000000000000000000..5b54b0cf104b040c3fa25918a29d2da17626f6e0
--- /dev/null
+++ b/.travis.yml
@@ -0,0 +1,5 @@
+script:
+- git checkout ${TRAVIS_BRANCH}
+- mvn clean install cobertura:cobertura org.eluder.coveralls:coveralls-maven-plugin:report --settings "settings.xml"
+after_success:
+- if [ "${TRAVIS_BRANCH}" == "master" ]; then mvn -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn -B deploy --debug --settings "./settings.xml"; fi