Skip to content

Instantly share code, notes, and snippets.

@doevelopper
Last active November 23, 2018 16:17
Show Gist options
  • Save doevelopper/2ef81b9228a070afba1f4edcc2040304 to your computer and use it in GitHub Desktop.
Save doevelopper/2ef81b9228a070afba1f4edcc2040304 to your computer and use it in GitHub Desktop.
# sudo usermod -a -G sudo gitlab-runner
# sudo visudo or sudo vi /etc/sudoers
# %gitlab-runner ALL=(ALL) NOPASSWD: ALL # All members of gitlab-runner to run sudo w/o pwd
# gitlab-runner ALL=(ALL) NOPASSWD: ALL # run sudo w/o password
# gitlab-runner ALL=(ALL) NOPASSWD: /usr/bin/apt
stages:
- sw-quality-tools
- dev-tools
- dependencies
- data-distribution-service
- feature-test
- target-package
- target-install
- deploy
- target-clean
.agent-47: &agent-47
retry: 1
tags:
- agent-smith
.artifacts: &artifacts
artifacts:
name: "${CI_JOB_NAME}_${CI_COMIT_REF_NAME}_${CI_COMMIT_SHA}"
when: always
expire_in: 31d
paths:
- ${DEPS_INSTALL_DIR}
.3rd-party-cache: &3rd-party-cache
# key: # ${CI_COMMIT_REF_SLUG} # Cache in between builds
key: "Ubuntu-18-10-DDS-Dev-Tools" # ${CI_COMMIT_REF_SLUG} # Cache in between builds
paths:
- ${DEPS_INSTALL_DIR}/
.variables: &variables
variables:
# DEPS_INSTALL_DIR: ${CI_PROJECT_DIR}/devslibs
DEPS_INSTALL_DIR: /home/gitlab-runner/third-party-software-component
before_script:
- cmake --version
- make --version
after_script:
- date -u
.uncrustify:
<<: *agent-47
<<: *variables
stage: sw-quality-tools
before_script:
- date -u
script:
- cmake --version
- git clone --depth=1 https://github.com/uncrustify/uncrustify.git --config "http.proxy=[HOST]:[PORT]"
- cd uncrustify
- cmake -E make_directory build
- cmake -E chdir build cmake .. -DCMAKE_INSTALL_PREFIX=${DEPS_INSTALL_DIR}
- cmake --build build --target all --clean-first
- cmake --build build --target install
- cd ..
after_script:
- date -u
.cppcheck:
<<: *agent-47
<<: *variables
stage: sw-quality-tools
before_script:
- date -u
script:
- cmake --version
- git clone --depth=1 https://github.com/danmar/cppcheck.git --config "http.proxy=[HOST]:[PORT]"
- cd cppcheck
- cmake -E make_directory build
- cmake -E chdir build cmake .. -DCMAKE_INSTALL_PREFIX=${DEPS_INSTALL_DIR}
- cmake --build build --target all --clean-first
- cmake --build build --target install
- cp --recursive --verbose cfg ${DEPS_INSTALL_DIR}/bin || true
- cd ..
after_script:
- date -u
.doxygen:
<<: *agent-47
<<: *variables
stage: sw-quality-tools
before_script:
- date -u
script:
- cmake --version
- git clone --depth=1 https://github.com/doxygen/doxygen.git --config "http.proxy=[HOST]:[PORT]"
- cd doxygen
- cmake -E make_directory build
- cmake -E chdir build cmake .. -DCMAKE_INSTALL_PREFIX=${DEPS_INSTALL_DIR}
- cmake --build build --target all --clean-first
- cmake --build build --target install
- cd ..
after_script:
- date -u
.testing-tools-libraries:
<<: *agent-47
<<: *variables
stage: dev-tools
before_script:
- date -u
- export CMAKE_PREFIX_PATH=/opt/Qt5.11.0/5.11.0/gcc_64:${DEPS_INSTALL_DIR}:$CMAKE_PREFIX_PATH
- export QTDIR=/opt/Qt5.12.0/5.11.0/gcc_64
script:
- echo "Building Google Test"
- git clone --depth=1 --recurse-submodules https://github.com/google/googletest.git --config "http.proxy=[HOST]:[PORT]"
- cd googletest
- cmake -E make_directory build
- cmake -E chdir build cmake .. -DCMAKE_INSTALL_PREFIX=${DEPS_INSTALL_DIR}
- cmake --build build --target all --clean-first
- cmake --build build --target install
- cd ..
- echo "Building gogole Bench Mark"
- git clone --depth=1 https://github.com/google/benchmark.git --config "http.proxy=[HOST]:[PORT]"
- cd benchmark
- cmake -E make_directory build
- cmake -E chdir build cmake .. -DCMAKE_INSTALL_PREFIX=${DEPS_INSTALL_DIR}
- cmake --build build --target all --clean-first
- cmake --build build --target install
- cd ..
- echo "Building Google glog Library"
- git clone --depth=1 https://github.com/google/glog.git --config "http.proxy=[HOST]:[PORT]"
- cd glog
- cmake -E make_directory build
- cmake -E chdir build cmake .. -DCMAKE_INSTALL_PREFIX=${DEPS_INSTALL_DIR}
- cmake --build build --target all --clean-first
- cmake --build build --target install
- cd ..
- echo "Building Google crc32c Library"
# - git clone --depth=1 https://github.com/google/crc32c.git --config "http.proxy=[HOST]:[PORT]"
# - cd crc32c
# - cmake -E make_directory build
# - cmake -E chdir build cmake .. -DCMAKE_INSTALL_PREFIX=${DEPS_INSTALL_DIR}
# - cmake --build build --target all --clean-first
# - cmake --build build --target install
# - cd ..
- echo "Building Google StateChart"
# - git clone --depth=1 https://github.com/google/statechart.git --config "http.proxy=[HOST]:[PORT]"
# - cd statechart
# - cmake -E make_directory build
# - cmake -E chdir build cmake .. -DCMAKE_INSTALL_PREFIX=${DEPS_INSTALL_DIR}
# - cmake --build build --target all --clean-first
# - cmake --build build --target install
# - cd ..
- echo "Building Google Abseil CPP Library"
# - git clone --depth=1 --recurse-submodules https://github.com/abseil/abseil-cpp.git --config "http.proxy=[HOST]:[PORT]"
# - cd abseil-cpp
# - cmake -E make_directory build
# - cmake -E chdir build cmake .. -DCMAKE_INSTALL_PREFIX=${DEPS_INSTALL_DIR}
# - cmake --build build --target all --clean-first
# - cmake --build build --target install
# - cd ..
- echo "Building Google Capture Thread Library"
# - git clone --depth=1 https://github.com/google/capture-thread.git --config "http.proxy=[HOST]:[PORT]"
# - cd capture-thread
# - LD_LIBRARY_PATH=${DEPS_INSTALL_DIR}:$LD_LIBRARY_PATH
# - cmake -E make_directory build
# - cmake -E chdir build cmake .. -DCMAKE_INSTALL_PREFIX=${DEPS_INSTALL_DIR}
# - cmake --build build --target all --clean-first
# - cmake --build build --target install
# - cd ..
- echo "Building American fuzzy lop"
# - http_proxy=http://[HOST]:[PORT] curl -L -O -k http://lcamtuf.coredump.cx/afl/releases/afl-latest.tgz
## - tar zxvf afl-latest.tgz --one-top-level=american-fuzzy-lop
# - tar -xvzf afl-latest.tgz
# - cd afl-2.52b
# - make clean && make && make BINDIR=${DEPS_INSTALL_DIR}/bin DATAROOTDIR=${DEPS_INSTALL_DIR}/share LIBDIR=${DEPS_INSTALL_DIR}/lib install
- echo "Building A unit testing framework for C"
# - git clone --depth=1 https://github.com/libcheck/check.git --config "http.proxy=[HOST]:[PORT]"
# - cd check
# - cmake -E make_directory build
# - cmake -E chdir build cmake .. -DCMAKE_INSTALL_PREFIX=${DEPS_INSTALL_DIR}
# - cmake --build build --target all --clean-first
# - CTEST_OUTPUT_ON_FAILURE=1 cmake --build build --target test
# - cmake --build build --target install || true
# - cd ..
- echo "Building The Linux perf GUI for performance analysis."
# - git clone --depth=1 --recurse-submodules https://github.com/KDAB/hotspot.git --config "http.proxy=[HOST]:[PORT]"
# - cd hotspot
# - cmake -E make_directory build
# - cmake -E chdir build cmake .. -DCMAKE_INSTALL_PREFIX=${DEPS_INSTALL_DIR}
# - cmake --build build --target all --clean-first
# - CTEST_OUTPUT_ON_FAILURE=1 cmake --build build --target test
# - cmake --build build --target install
# - cd ..
- echo "Building The Linux perf GUI for performance analysis."
# - git clone --depth=1 --recurse-submodules https://github.com/apitrace/apitrace.git --config "http.proxy=[HOST]:[PORT]"
# - cd apitrace
# - cmake -E make_directory build
# - cmake -E chdir build cmake .. -DCMAKE_INSTALL_PREFIX=${DEPS_INSTALL_DIR}
# - cmake --build build --target all --clean-first
# - CTEST_OUTPUT_ON_FAILURE=1 cmake --build build --target test
# - cmake --build build --target install
# - cd ..
- echo "Building IEEE doubles binary-decimal and decimal-binary ."
# - git clone --depth=1 https://github.com/google/double-conversion.git --config "http.proxy=[HOST]:[PORT]"
# - cd apitrace
# - cmake -E make_directory build
# - cmake -E chdir build cmake .. -DBUILD_TESTING=ON -DCMAKE_INSTALL_PREFIX=${DEPS_INSTALL_DIR}
# - cmake --build build --target all --clean-first
# - test/cctest/cctest --list | tr -d '<' | xargs test/cctest/cctest
# - cmake --build build --target install
# - cd ..
after_script:
- date -u
.protocol-buffers:
<<: *agent-47
<<: *variables
stage: dependencies
before_script:
- date -u
script:
- cmake --version
- echo "Buildinggoogle protocol buffer"
- git clone --depth 1 https://github.com/protocolbuffers/protobuf.git --config "http.proxy=[HOST]:[PORT]"
- cd protobuf
- ./autogen.sh
- ./configure --prefix=${DEPS_INSTALL_DIR}
- make clean && make && make install
- cd ..
after_script:
- date -u
logging-utils:
<<: *agent-47
<<: *variables
stage: dependencies
before_script:
- date -u
script:
# - echo "Building Apache Runtime Library"
# - http_proxy=http://[HOST]:[PORT] curl -L -O http://www-us.apache.org/dist/apr/apr-1.6.5.tar.gz
# - tar -xvzf apr-1.6.5.tar.gz > /dev/null
# - cd apr-1.6.5
# - ./configure --prefix=${DEPS_INSTALL_DIR} --enable-threads --enable-posix-shm
# --enable-allocator-guard-pages --enable-pool-concurrency-check --enable-other-child
# - make clean && make && make install
# - cd ..
# - echo "Building Expat Library"
# - git clone --depth=1 https://github.com/libexpat/libexpat.git --config "http.proxy=[HOST]:[PORT]"
# - cd libexpat/expat
# - cmake -E make_directory build
# - cmake -E chdir build cmake .. -DCMAKE_INSTALL_PREFIX=${DEPS_INSTALL_DIR}
# - cmake --build build --target all --clean-first
# - cmake --build build --target install
# - cd ../../
# - echo "Building Apache Runtime Utils Library"
# - http_proxy=http://[HOST]:[PORT] curl -L -O http://www-us.apache.org/dist//apr/apr-util-1.6.1.tar.gz
# - tar -xvf apr-util-1.6.1.tar.gz > /dev/null
# - cd apr-util-1.6.1
# - ./configure --prefix=${DEPS_INSTALL_DIR} --with-apr=${DEPS_INSTALL_DIR} --with-expat=${DEPS_INSTALL_DIR}
# - make clean && make && make install
# - cd ..
- echo "Building Apache logging library Log4cxx"
- GIT_SSL_NO_VERIFY=1 git clone --depth=1 https://github.com/apache/logging-log4cxx.git --config "http.proxy=[HOST]:[PORT]"
- cd logging-log4cxx
- ./autogen.sh
- ./configure --prefix=${DEPS_INSTALL_DIR} --with-apr=${DEPS_INSTALL_DIR}
--with-apr-util=${DEPS_INSTALL_DIR} --with-ODBC=no --with-SMTP=no
--enable-char --enable-wchar_t
--with-charset=utf-8 --with-logchar=utf-8
- make clean && make && make install
- cd ..
after_script:
- date -u
.boost:
<<: *agent-47
<<: *variables
stage: dependencies
before_script:
- date -u
- export {http,https,ftp}_proxy=[HOST]:[PORT]
script:
- cmake --version
- echo "Building Boost latest"
- https_proxy=http://[HOST]:[PORT] curl -L -O -k https://dl.bintray.com/boostorg/release/1.68.0/source/boost_1_68_0.tar.gz
- tar -xvf boost_1_68_0.tar.gz > /dev/null
- cd boost_1_68_0
#[--with-libraries=program_options,filesystem,system,date-time,regex,thread]
- ./bootstrap.sh --prefix=${DEPS_INSTALL_DIR} --with-python=python3
- ./b2 link=shared threading=multi variant=release
- ./b2 install --prefix=${DEPS_INSTALL_DIR}
- cd ..
after_script:
- date -u
.Xerces:
<<: *agent-47
<<: *variables
stage: dependencies
before_script:
- date -u
- export {http,https,ftp}_proxy=[HOST]:[PORT]
script:
- echo "Building Xerces for DDS"
- http_proxy=http://[HOST]:[PORT] curl -L -O http://www-us.apache.org/dist//xerces/c/3/sources/xerces-c-3.2.2.tar.gz
- tar -xvzf xerces-c-3.2.2.tar.gz > /dev/null
- cd xerces-c-3.2.2/
- ./configure --prefix=${DEPS_INSTALL_DIR}
--enable-static --enable-shared --enable-netaccessor-socket
--enable-transcoder-gnuiconv --enable-transcoder-iconv
--enable-msgloader-inmemory --enable-xmlch-uint16_t --enable-xmlch-char16_t
# - make -j2 | tee $CI_PROJECT_NAMESPACE/build-logs/xerces-build.log
# - make install | tee -a $CI_PROJECT_NAMESPACE/build-logs/xerces-build.log
- make clean && make && make install
- cd ..
after_script:
- date -u
.Wireshark:
<<: *agent-47
<<: *variables
stage: dependencies
before_script:
- date -u
- export {http,https,ftp}_proxy=[HOST]:[PORT]
- export CMAKE_PREFIX_PATH=/opt/Qt5.11.2/5.11.2/gcc_64:$CMAKE_PREFIX_PATH
- export QTDIR=/opt/Qt5.11.2/5.11.2/gcc_64
script:
- echo "Building Wireshark for DDs Dissectors"
# - sudo apt-get install libpulse-dev
- GIT_SSL_NO_VERIFY=1 http_proxy=http://[HOST]:[PORT] git clone --depth=1 --recurse-submodules https://github.com/wireshark/wireshark.git
- cd wireshark
- cmake -E make_directory build
- cmake -E chdir build cmake .. -DCMAKE_INSTALL_PREFIX=${DEPS_INSTALL_DIR}
- cmake --build build --target all --clean-first
- cmake --build build --target install
- cd ..
after_script:
- date -u
eprosima-dds:
<<: *agent-47
<<: *variables
stage: data-distribution-service
before_script:
- date -u
- export {http,https,ftp}_proxy=[HOST]:[PORT]
script:
- cmake --version
- git clone --depth=1 --recurse-submodules https://github.com/eProsima/Fast-RTPS.git
- cd Fast-RTPS
- cmake -E make_directory build
- cmake -E chdir build cmake .. -DTHIRDPARTY=ON -DCMAKE_INSTALL_PREFIX=${DEPS_INSTALL_DIR}/eprosima
- cmake --build build --target all --clean-first
- cmake --build build --target install
- cd ..
after_script:
- date -u
OpenDDS:
<<: *agent-47
<<: *variables
variables:
DEPS_INSTALL_DIR: /home/gitlab-runner/third-party-software-component
FUZZ: "true"
STATIC: "true"
XERCES3: "true"
NO_TESTS: "true"
NO_INLINE: "true"
NO_BUILT_IN_TOPICS: "true"
NO_INLINE: "true"
VERSIONED_NS: "true"
DDS_SECURITY: "true"
NO_DEBUG: "true"
NO_TESTS: "true"
SAFETY_PROFILE: "true"
NO_INLINE: "true"
USES_WCHAR: "true"
NO_INLINE: "true"
NO_MULTITOPIC: "true"
XERCES3: "true"
ACE_ROOT: ${CI_PROJECT_DIR}/ACE_TAO/ACE
TAO_ROOT: ${CI_PROJECT_DIR}/ACE_TAO/TAO
MPC_ROOT: ${CI_PROJECT_DIR}/MPC
DDS_ROOT: ${CI_PROJECT_DIR}
LD_LIBRARY_PATH: $ACE_ROOT/lib:$LD_LIBRARY_PATH
OPENDDS_BUILD_OPTIONS: -std=c++11 --ipv6 --openssl --xerces3=${DEPS_INSTALL_DIR} --rapidjson --glib --boost=${DEPS_INSTALL_DIR}
OPENDDS_BUILD_CONFIG_OPTIONS: --no-tests --no-inline --safety-profile --features=versioned_namespace=1 --security
COMPILER: g++-8
# dependencies:
# - testing-tools-libraries
# - boost
# - protocol-buffers
# - Xerces
# - Wireshark
stage: data-distribution-service
before_script:
- date -u
- export {http,https,ftp}_proxy=[PROXY_HOST]:[PROXY_PORT]
- export CMAKE_PREFIX_PATH=/opt/Qt5.11.2/5.11.2/gcc_64:$CMAKE_PREFIX_PATH
- export QTDIR=/opt/Qt5.11.2/5.11.2/gcc_64
- export CFLAGS="-I${DEPS_INSTALL_DIR}/include:${CFLAGS}"
- export CPPFLAGS="-I${DEPS_INSTALL_DIR}/include:${CPPFLAGS}"
- export LDFLAGS="-L${DEPS_INSTALL_DIR}/lib/:${LDFLAGS}"
- export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:${DEPS_INSTALL_DIR}/lib"
- export PATH="${PATH}:${DEPS_INSTALL_DIR}/include:${DEPS_INSTALL_DIR}/lib"
script:
- echo "Cloning MPC for DDS"
- git clone --depth=1 --recurse-submodules https://github.com/DOCGroup/MPC.git
- echo "Cloning ACE TAO for DDS"
- git clone --depth=1 --recurse-submodules https://github.com/DOCGroup/ACE_TAO.git
- echo "Cloning CIAO for DDS"
- git clone --depth=1 --recurse-submodules https://github.com/DOCGroup/CIAO.git
- echo "Cloning DANCE for DDS"
- git clone --depth=1 --recurse-submodules https://github.com/DOCGroup/DAnCE.git
# - echo "Cloning mFAST encoding/decoding library"
# - git clone --depth=1 --recursive https://github.com/objectcomputing/mFAST.git
# - cd mFAST
# - cmake -E make_directory build
# - cmake -E chdir build cmake .. -DCMAKE_INSTALL_PREFIX=${DEPS_INSTALL_DIR}
# - cmake --build build --target all --clean-first
# - cmake --build build --target install
# - cd ..
- echo "Cloning OpenDDS"
- git clone --depth=1 https://github.com/objectcomputing/OpenDDS.git
- git clone --depth=1 https://github.com/Tencent/rapidjson.git OpenDDS/tools/IntermediateTypeLang/cpp/rapidjson
- echo "Building OpenDDS"
- cd OpenDDS
- ./configure --help
- echo "Build Options $OPENDDS_BUILD_OPTIONS"
- echo "Build Config Options $OPENDDS_BUILD_CONFIG_OPTIONS"
- echo "CPPFLAGS $CPPFLAGS"
- echo "LDFLAGS $LDFLAGS"
- echo "ACE_ROOT $ACE_ROOT"
- echo "TAO_ROOT $TAO_ROOT"
- echo "MPC_ROOT $MPC_ROOT"
- echo "prefix ${DEPS_INSTALL_DIR}/opendds"
- ./configure $OPENDDS_BUILD_OPTIONS $OPENDDS_BUILD_CONFIG_OPTIONS
--mpcopts="-workers 2" --ace=$ACE_ROOT --tao=$TAO_ROOT --mpc=$MPC_ROOT
--prefix=${DEPS_INSTALL_DIR}/opendds
- if [ "$SAFETY_PROFILE" == "1" ]; then
export LD_LIBRARY_PATH+=:$TRAVIS_BUILD_DIR/build/target/ACE_TAO/ACE/lib:$TRAVIS_BUILD_DIR/build/target/lib;
fi
- make clean && make && make install
- cd ..
after_script:
- date -u
.vortex-opensplice-dds:
<<: *agent-47
<<: *variables
stage: data-distribution-service
dependencies:
- protocol-buffers
before_script:
- date -u
- export {http,https,ftp}_proxy=[HOST]:[PORT]
# sudo apt-get install python-wheel cython cython3 python3-wheel #build Python DCPS API
# - export CMAKE_PREFIX_PATH=/opt/Qt5.11.2/5.11.2/gcc_64:$CMAKE_PREFIX_PATH
# - export QTDIR=/opt/Qt5.11.2/5.11.2/gcc_64
# - export PROTOBUF_HOME=`pwd`
- export PROTOBUF_HOME=${DEPS_INSTALL_DIR}
script:
- git clone --depth=1 https://github.com/ADLINK-IST/opensplice.git --config "http.proxy=[HOST]:[PORT]"
- mkdir -pv submods/MPC_ROOT
- git clone --depth=1 --recurse-submodules https://github.com/DOCGroup/MPC.git submods/MPC_ROOT
- cd opensplice
- ./configure x86_64.linux-release --prefix=${DEPS_INSTALL_DIR}
- source envs-x86_64.linux-release.sh
- make && make install
- cd ..
after_script:
- date -u
# - mkdir -pv ${DEPS_INSTALL_DIR}/adlinktech
# - cp -v envs-x86_64.linux-release.sh ${DEPS_INSTALL_DIR}/adlinktech
# - cp -Rv opensplice/install/HDE ${DEPS_INSTALL_DIR}/adlinktech
# - cp -Rv opensplice/install/RTS ${DEPS_INSTALL_DIR}/adlinktech
# - cp -Rv opensplice/install/VS ${DEPS_INSTALL_DIR}/adlinktech
artifacts:
name: "${CI_BUILD_NAME}_${CI_BUILD_REF_NAME}"
paths:
- ${DEPS_INSTALL_DIR}
- opensplice/envs-x86_64.linux-release.sh
- opensplice/install/HDE
- opensplice/install/RTS
- opensplice/install/VS
eprosima-dds-feature-test:
<<: *agent-47
<<: *variables
stage: feature-test
before_script:
- echo "Testing Fast RTPS Features."
script:
- echo "Building and testing Fast RTPS Features."
# if [ ! -d "${BUILD_DIRECTORY}" ]; then
# cmake -E make_directory ${BUILD_DIRECTORY}
# fi
# - cmake -E chdir $BUILD_DIRECTORY cmake -G "${BUILD_GENERATOR}"
# -DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE}
# -DCMAKE_EXPORT_COMPILE_COMMANDS=ON
# -DCMAKE_INSTALL_PREFIX=${BUILD_INSTALL_DIRECTORY}/ ..
# - cmake --build $BUILD_DIRECTORY --target compile --clean-first
# - cmake --build $BUILD_DIRECTORY --target test-compile
# - cmake --build $BUILD_DIRECTORY --target unit-test -- ARGS="$TEST_ARGS"
# - cmake --build $BUILD_DIRECTORY --target feature-test
after_script:
- echo "Testing Fast RTPS Features Done."
openDDS-Feature-Test:
<<: *agent-47
<<: *variables
stage: feature-test
before_script:
- echo "Testing OpenDDS Features."
script:
- echo "Building and testing Fast RTPS Features."
# if [ ! -d "${BUILD_DIRECTORY}" ]; then
# cmake -E make_directory ${BUILD_DIRECTORY}
# fi
# - cmake -E chdir $BUILD_DIRECTORY cmake -G "${BUILD_GENERATOR}"
# -DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE}
# -DCMAKE_EXPORT_COMPILE_COMMANDS=ON
# -DCMAKE_INSTALL_PREFIX=${BUILD_INSTALL_DIRECTORY}/ ..
# - cmake --build $BUILD_DIRECTORY --target compile --clean-first
# - cmake --build $BUILD_DIRECTORY --target test-compile
# - cmake --build $BUILD_DIRECTORY --target unit-test -- ARGS="$TEST_ARGS"
# - cmake --build $BUILD_DIRECTORY --target feature-test
after_script:
- echo "Testing Fast RTPS Features Done."
Vortex-OpenSPlice-Feature-Test:
<<: *agent-47
<<: *variables
stage: feature-test
before_script:
- echo "Testing AdLinkTech DDS Features."
script:
- echo "Building and testing AdLinkTech Features."
# if [ ! -d "${BUILD_DIRECTORY}" ]; then
# cmake -E make_directory ${BUILD_DIRECTORY}
# fi
# - cmake -E chdir $BUILD_DIRECTORY cmake -G "${BUILD_GENERATOR}"
# -DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE}
# -DCMAKE_EXPORT_COMPILE_COMMANDS=ON
# -DCMAKE_INSTALL_PREFIX=${BUILD_INSTALL_DIRECTORY}/ ..
# - cmake --build $BUILD_DIRECTORY --target compile --clean-first
# - cmake --build $BUILD_DIRECTORY --target test-compile
# - cmake --build $BUILD_DIRECTORY --target unit-test -- ARGS="$TEST_ARGS"
# - cmake --build $BUILD_DIRECTORY --target feature-test
after_script:
- echo "Testing AdLinkTech Features Done."
RTI-DDS-connex-Feature-Test:
<<: *agent-47
<<: *variables
stage: feature-test
before_script:
- echo "Testing RTI DDS connex Features."
script:
- echo "Building and testing RTI DDS connex Features."
# if [ ! -d "${BUILD_DIRECTORY}" ]; then
# cmake -E make_directory ${BUILD_DIRECTORY}
# fi
# - cmake -E chdir $BUILD_DIRECTORY cmake -G "${BUILD_GENERATOR}"
# -DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE}
# -DCMAKE_EXPORT_COMPILE_COMMANDS=ON
# -DCMAKE_INSTALL_PREFIX=${BUILD_INSTALL_DIRECTORY}/ ..
# - cmake --build $BUILD_DIRECTORY --target compile --clean-first
# - cmake --build $BUILD_DIRECTORY --target test-compile
# - cmake --build $BUILD_DIRECTORY --target unit-test -- ARGS="$TEST_ARGS"
# - cmake --build $BUILD_DIRECTORY --target feature-test
after_script:
- echo "Testing RTI DDS connex Features Done."
.ace-tao-dds:
<<: *agent-47
<<: *variables
variables:
ACE_ROOT: ${CI_PROJECT_DIR}/ACE_TAO/ACE
TAO_ROOT: ${CI_PROJECT_DIR}/ACE_TAO/TAO
MPC_ROOT: ${CI_PROJECT_DIR}/MPC
COMPILER: g++-8
stage: dependencies
before_script:
- date -u
- export {http,https,ftp}_proxy=[HOST]:[PORT]
- echo "Cloning ACE TAO for DDS"
- git clone --depth=1 --recurse-submodules https://github.com/DOCGroup/ACE_TAO.git
script:
- make --version
- cmake --version
- cd ACE_TAO
- echo -e "#include \"ace/config-linux.h\"" >> $ACE_ROOT/ace/config.h;
- echo -e "workspace {\n" >> ci.mwc
- if [ "$TAO" == "1" ]; then echo -e "\$(TAO_ROOT)/TAO_ACE.mwc\n\$(TAO_ROOT)/tests/Hello\n" >> ci.mwc; fi
- if [ "$ACE" == "1" ]; then echo -e "\$(ACE_ROOT)/ace/ace.mwc\n" >> ci.mwc; fi
- if [ "$ACETESTS" == "1" ]; then echo -e "\$(ACE_ROOT)/tests\n" >> ci.mwc; fi
- echo -e "}\n" >> ci.mwc
- if [ "$FACE" == "1" ]; then echo -e "#define ACE_FACE_SAFETY_BASE" >> $ACE_ROOT/ace/config.h; fi
- if [ "$CORBAEMICRO" == "1" ]; then echo -e "corba_e_micro=1" >> $ACE_ROOT/include/makeinclude/platform_macros.GNU; fi
- if [ "$CORBAEMICRO" == "1" ]; then echo -e "corba_e_micro=1" >> $ACE_ROOT/bin/MakeProjectCreator/config/default.features; fi
- if [ "$CORBAECOMPACT" == "1" ]; then echo -e "corba_e_compact=1" >> $ACE_ROOT/include/makeinclude/platform_macros.GNU; fi
- if [ "$CORBAECOMPACT" == "1" ]; then echo -e "corba_e_compact=1" >> $ACE_ROOT/bin/MakeProjectCreator/config/default.features; fi
- if [ "$ACEFORTAO" == "1" ]; then echo -e "ace_for_tao=1" >> $ACE_ROOT/include/makeinclude/platform_macros.GNU; fi
- if [ "$ACEFORTAO" == "1" ]; then echo -e "ace_for_tao=1" >> $ACE_ROOT/bin/MakeProjectCreator/config/default.features; fi
- if [ "$CCMLW" == "1" ]; then echo -e "ccm_lw=1" >> $ACE_ROOT/bin/MakeProjectCreator/config/default.features; fi
- if [ "$CCMNOEVENT" == "1" ]; then echo -e "ccm_noevent=1" >> $ACE_ROOT/bin/MakeProjectCreator/config/default.features; fi
- if [ "$USES_WCHAR" == "1" ]; then echo -e "uses_wchar=1" >> $ACE_ROOT/bin/MakeProjectCreator/config/default.features; fi
- if [ "$VERSIONED" == "1" ]; then echo -e "versioned_namespace=1" >> $ACE_ROOT/bin/MakeProjectCreator/config/default.features; fi
- echo -e "xerces3=1\nssl=1\n" >> $ACE_ROOT/include/makeinclude/platform_macros.GNU;
- echo -e "inline=0\nipv6=1\n" >> $ACE_ROOT/include/makeinclude/platform_macros.GN
- echo -e "xerces3=1\nssl=1\n" >> $ACE_ROOT/bin/MakeProjectCreator/config/default.features;
- echo -e "c++11=1\n" >> $ACE_ROOT/include/makeinclude/platform_macros.GNU;
- echo -e "include \$(ACE_ROOT)/include/makeinclude/platform_linux.GNU" >> $ACE_ROOT/include/makeinclude/platform_macros.GNU;
- cat $TRAVIS_BUILD_DIR/travis.mwc
- cat $ACE_ROOT/bin/MakeProjectCreator/config/default.features
- cat $ACE_ROOT/ace/config.h
- cat $ACE_ROOT/include/makeinclude/platform_macros.GNU
- if [[ "${COMPILER}" != "" ]]; then export CXX=${COMPILER}; fi
- make -j 6
- cd ..
after_script:
- date -u
# artifacts:
# name: "${CI_BUILD_NAME}_${CI_BUILD_REF_NAME}"
# paths:
# - ${DEPS_INSTALL_DIR}
.cio-dds:
<<: *agent-47
stage: dependencies
before_script:
- date -u
- export {http,https,ftp}_proxy=[HOST]:[PORT]
- echo "Cloning ACE TAO for DDS"
- git clone --depth=1 --recurse-submodules https://github.com/DOCGroup/ACE_TAO.git
script:
- make --version
- cmake --version
- cd ACE_TAO
- echo -e "#include \"ace/config-linux.h\"" >> $ACE_ROOT/ace/config.h;
- echo -e "workspace {\n" >> ci.mwc
- if [ "$TAO" == "1" ]; then echo -e "\$(TAO_ROOT)/TAO_ACE.mwc\n\$(TAO_ROOT)/tests/Hello\n" >> ci.mwc; fi
- if [ "$ACE" == "1" ]; then echo -e "\$(ACE_ROOT)/ace/ace.mwc\n" >> ci.mwc; fi
- if [ "$ACETESTS" == "1" ]; then echo -e "\$(ACE_ROOT)/tests\n" >> ci.mwc; fi
- echo -e "}\n" >> ci.mwc
- if [ "$FACE" == "1" ]; then echo -e "#define ACE_FACE_SAFETY_BASE" >> $ACE_ROOT/ace/config.h; fi
- if [ "$CORBAEMICRO" == "1" ]; then echo -e "corba_e_micro=1" >> $ACE_ROOT/include/makeinclude/platform_macros.GNU; fi
- if [ "$CORBAEMICRO" == "1" ]; then echo -e "corba_e_micro=1" >> $ACE_ROOT/bin/MakeProjectCreator/config/default.features; fi
- if [ "$CORBAECOMPACT" == "1" ]; then echo -e "corba_e_compact=1" >> $ACE_ROOT/include/makeinclude/platform_macros.GNU; fi
- if [ "$CORBAECOMPACT" == "1" ]; then echo -e "corba_e_compact=1" >> $ACE_ROOT/bin/MakeProjectCreator/config/default.features; fi
- if [ "$ACEFORTAO" == "1" ]; then echo -e "ace_for_tao=1" >> $ACE_ROOT/include/makeinclude/platform_macros.GNU; fi
- if [ "$ACEFORTAO" == "1" ]; then echo -e "ace_for_tao=1" >> $ACE_ROOT/bin/MakeProjectCreator/config/default.features; fi
- if [ "$CCMLW" == "1" ]; then echo -e "ccm_lw=1" >> $ACE_ROOT/bin/MakeProjectCreator/config/default.features; fi
- if [ "$CCMNOEVENT" == "1" ]; then echo -e "ccm_noevent=1" >> $ACE_ROOT/bin/MakeProjectCreator/config/default.features; fi
- if [ "$USES_WCHAR" == "1" ]; then echo -e "uses_wchar=1" >> $ACE_ROOT/bin/MakeProjectCreator/config/default.features; fi
- if [ "$VERSIONED" == "1" ]; then echo -e "versioned_namespace=1" >> $ACE_ROOT/bin/MakeProjectCreator/config/default.features; fi
- echo -e "xerces3=1\nssl=1\n" >> $ACE_ROOT/include/makeinclude/platform_macros.GNU;
- echo -e "inline=0\nipv6=1\n" >> $ACE_ROOT/include/makeinclude/platform_macros.GN
- echo -e "xerces3=1\nssl=1\n" >> $ACE_ROOT/bin/MakeProjectCreator/config/default.features;
- echo -e "c++11=1\n" >> $ACE_ROOT/include/makeinclude/platform_macros.GNU;
- echo -e "include \$(ACE_ROOT)/include/makeinclude/platform_linux.GNU" >> $ACE_ROOT/include/makeinclude/platform_macros.GNU;
- cat $TRAVIS_BUILD_DIR/travis.mwc
- cat $ACE_ROOT/bin/MakeProjectCreator/config/default.features
- cat $ACE_ROOT/ace/config.h
- cat $ACE_ROOT/include/makeinclude/platform_macros.GNU
- if [[ "${COMPILER}" != "" ]]; then export CXX=${COMPILER}; fi
- cd ..
after_script:
- date -u
tags:
- agent-smith
# artifacts:
# name: "${CI_BUILD_NAME}_${CI_BUILD_REF_NAME}"
# paths:
# - ${DEPS_INSTALL_DIR}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment