From 1f1ac200082f281a586645cb1da8461f9bce25c7 Mon Sep 17 00:00:00 2001 From: Alopez <alopez@iri.upc.edu> Date: Tue, 9 Jul 2019 17:36:50 +0200 Subject: [PATCH] Adapted to .deb package generation --- .gitlab-ci.yml | 35 +++++++++++++++++++++++++++++++++++ CMakeLists.txt | 39 +++++++++++++++++++++------------------ 2 files changed, 56 insertions(+), 18 deletions(-) create mode 100644 .gitlab-ci.yml diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml new file mode 100644 index 0000000..72c21cb --- /dev/null +++ b/.gitlab-ci.yml @@ -0,0 +1,35 @@ +image: docker.io/alopeziri/labrobotica + +stages: + - build + - test + - deploy + +build-package: + stage: build + script: +# Uncomment to install dependencies +# - apt update +# - apt -y install iri-<package_name>-dev + - apt update + - apt -y install iri-iriutils-dev iri-comm-dev + - mkdir -pv build + - cd build + - cmake -D CMAKE_BUILD_TYPE=RELEASE -DCPACK_PACKAGE_VERSION=$CI_COMMIT_TAG .. + - make package -j $(nproc) + artifacts: + paths: + - build/*.deb + expire_in: 2 weeks + only: + - tags + +update_repo: + stage: deploy + script: + - cd build + - "scp -i /root/.ssh/iriLabKeyNopwd -r *usb-i2c-adapter*.deb irilabo@147.83.76.226:packages/" + - "ssh irilabo@147.83.76.226 -i /root/.ssh/iriLabKeyNopwd -tt /home/irilabo/repo_scripts/update_repo.sh usb-i2c-adapter" + only: + - tags + diff --git a/CMakeLists.txt b/CMakeLists.txt index 418fb80..7fe12cf 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -9,18 +9,7 @@ endif(COMMAND cmake_policy) # The project name and the type of project PROJECT(usb_i2c_adapter) - -SET(CPACK_PACKAGE_VERSION "1.0.0") -SET(CPACK_PACKAGE_VERSION_MAJOR "1") -SET(CPACK_PACKAGE_VERSION_MINOR "0") -SET(CPACK_PACKAGE_VERSION_PATCH "0") -IF (CMAKE_SYSTEM_PROCESSOR MATCHES "(x86)|(X86)|(amd64)|(AMD64)") - SET (X86 TRUE) - SET(CPACK_DEBIAN_PACKAGE_ARCHITECTURE "amd64") -ELSE () - SET (X86 FALSE) - SET(CPACK_DEBIAN_PACKAGE_ARCHITECTURE "i386") -ENDIF() +SET(PACKAGE_NAME usb-i2c-adapter) SET(EXECUTABLE_OUTPUT_PATH ${CMAKE_CURRENT_SOURCE_DIR}/bin) SET(LIBRARY_OUTPUT_PATH ${CMAKE_CURRENT_SOURCE_DIR}/lib) @@ -77,14 +66,28 @@ ELSE(UNIX) ) ENDIF(UNIX) +IF (CMAKE_SYSTEM_PROCESSOR MATCHES "(x86)|(X86)|(amd64)|(AMD64)") + SET (X86 TRUE) + SET(CPACK_DEBIAN_PACKAGE_ARCHITECTURE "amd64") +ELSE () + SET (X86 FALSE) + SET(CPACK_DEBIAN_PACKAGE_ARCHITECTURE "i386") +ENDIF() + IF (UNIX) - SET(CPACK_PACKAGE_FILE_NAME "iri-${PROJECT_NAME}-dev-${CPACK_PACKAGE_VERSION}-${DISTRIB}${CPACK_DEBIAN_PACKAGE_ARCHITECTURE}") - SET(CPACK_PACKAGE_NAME "iri-${PROJECT_NAME}-dev") - SET(CPACK_PACKAGE_DESCRIPTION_SUMMARY "Part of IRI-laboratory libraries. More information at http://wikiri.upc.es/index.php/Robotics_Lab") - SET(CPACK_PACKAGING_INSTALL_PREFIX ${CMAKE_INSTALL_PREFIX}) + SET(CPACK_PACKAGE_FILE_NAME "iri-${PACKAGE_NAME}-dev-${CPACK_PACKAGE_VERSION}-${CPACK_DEBIAN_PACKAGE_ARCHITECTURE}") + SET(CPACK_PACKAGE_NAME "iri-${PACKAGE_NAME}-dev") + SET(CPACK_PACKAGE_DESCRIPTION_SUMMARY "Part of IRI-laboratory libraries. More information at https://gitlab.iri.upc.edu/labrobotica/labrobotica_how_to") + SET(CPACK_PACKAGING_INSTALL_PREFIX /usr) SET(CPACK_GENERATOR "DEB") - SET(CPACK_DEBIAN_PACKAGE_MAINTAINER "labrobotica@iri.upc.edu") - SET(CPACK_SET_DESTDIR "ON") # Necessary because of the absolute install paths + SET(CPACK_DEBIAN_PACKAGE_MAINTAINER "labrobotica - labrobotica@iri.upc.edu") + +# Uncomment to add the necessary mantainer scripts +# SET(CPACK_DEBIAN_PACKAGE_CONTROL_EXTRA "${CMAKE_SOURCE_DIR}/package_scripts/preinst;${CMAKE_SOURCE_DIR}/package_scripts/postinst;${CMAKE_SOURCE_DIR}/package_scripts/prerm;${CMAKE_SOURCE_DIR}/package_scripts/postrm") + +# Uncomment to add dependencies comma separated +# SET(CPACK_DEBIAN_PACKAGE_DEPENDS "iri-<package_name>-dev (>= 1.0~${DISTRIB})") + SET(CPACK_DEBIAN_PACKAGE_DEPENDS "iri-iriutils-dev (>= 1.0~${DISTRIB}), iri-comm-dev (>= 1.0~${DISTRIB})") INCLUDE(CPack) ELSE(UNIX) -- GitLab