Skip to content
Snippets Groups Projects

license headers

Merged Joan Vallvé Navarro requested to merge license-headers into devel
Files
2
+ 72
12
 
stages:
 
- license
 
- build_and_test
 
############ YAML ANCHORS ############
############ YAML ANCHORS ############
.preliminaries_template: &preliminaries_definition
.preliminaries_template: &preliminaries_definition
## Install ssh-agent if not already installed, it is required by Docker.
## Install ssh-agent if not already installed, it is required by Docker.
@@ -20,7 +24,45 @@
@@ -20,7 +24,45 @@
# update apt
# update apt
- apt-get update
- apt-get update
 
# create 'ci_deps' folder (if not exists)
 
- mkdir -pv ci_deps
 
 
.license_header_template: &license_header_definition
 
- cd $CI_PROJECT_DIR
 
 
# configure git
 
- export CI_NEW_BRANCH=ci_processing$RANDOM
 
- echo creating new temporary branch... $CI_NEW_BRANCH
 
- git config --global user.email "${CI_EMAIL}"
 
- git config --global user.name "${CI_USERNAME}"
 
- git checkout -b $CI_NEW_BRANCH # temporary branch
 
 
# license headers
 
- export CURRENT_YEAR=$( date +'%Y' )
 
- echo "current year:" ${CURRENT_YEAR}
 
- if [ -f license_header_${CURRENT_YEAR}.txt ]; then
 
# add license headers to new files
 
- echo "File license_header_${CURRENT_YEAR}.txt already exists. License headers are assumed to be updated. Adding headers to new files..."
 
- ./ci_deps/wolf/wolf_scripts/license_manager.sh --add --path=. --license-header=license_header_${CURRENT_YEAR}.txt --exclude=ci_deps
 
- else
 
# update license headers of all files
 
- export PREV_YEAR=$(( CURRENT_YEAR-1 ))
 
- echo "Creating new file license_header_${CURRENT_YEAR}.txt..."
 
- git mv license_header_${PREV_YEAR}.txt license_header_${CURRENT_YEAR}.txt
 
- sed -i "s/${PREV_YEAR}/${PREV_YEAR},${CURRENT_YEAR}/g" license_header_${CURRENT_YEAR}.txt
 
- ./ci_deps/wolf/wolf_scripts/license_manager.sh --update --path=. --license-header=license_header_${CURRENT_YEAR}.txt --exclude=ci_deps
 
- fi
 
 
# push changes (if any)
 
- if git commit -a -m "[skip ci] license headers added or modified" ; then
 
- git remote set-url --push origin "ssh://git@gitlab.iri.upc.edu:2202/${CI_PROJECT_PATH}.git"
 
- git push origin $CI_NEW_BRANCH:${CI_COMMIT_REF_NAME}
 
- else
 
- echo "No changes, nothing to commit!"
 
- fi
 
.install_wolf_template: &install_wolf_definition
.install_wolf_template: &install_wolf_definition
 
- cd ${CI_PROJECT_DIR}/ci_deps
- if [ -d wolf ]; then
- if [ -d wolf ]; then
- echo "directory wolf exists"
- echo "directory wolf exists"
- cd wolf
- cd wolf
@@ -34,12 +76,12 @@
@@ -34,12 +76,12 @@
- mkdir -pv build
- mkdir -pv build
- cd build
- cd build
- cmake -DCMAKE_BUILD_TYPE=release -DBUILD_EXAMPLES=ON -DBUILD_TESTS=ON ..
- cmake -DCMAKE_BUILD_TYPE=release -DBUILD_EXAMPLES=ON -DBUILD_TESTS=ON ..
- make -j$WOLF_N_PROC
- make -j$(nproc)
- ctest -j$WOLF_N_PROC
- ctest -j$(nproc)
- make install
- make install
- cd ../..
.install_gnssutils_template: &install_gnssutils_definition
.install_gnssutils_template: &install_gnssutils_definition
 
- cd ${CI_PROJECT_DIR}/ci_deps
- if [ -d gnss_utils ]; then
- if [ -d gnss_utils ]; then
- echo "directory gnss_utils exists"
- echo "directory gnss_utils exists"
- cd gnss_utils
- cd gnss_utils
@@ -52,29 +94,46 @@
@@ -52,29 +94,46 @@
- mkdir -pv build
- mkdir -pv build
- cd build
- cd build
- cmake -DCMAKE_BUILD_TYPE=release -DBUILD_EXAMPLES=ON -DBUILD_TESTS=ON ..
- cmake -DCMAKE_BUILD_TYPE=release -DBUILD_EXAMPLES=ON -DBUILD_TESTS=ON ..
- make -j$WOLF_N_PROC
- make -j$(nproc)
- ctest -j$WOLF_N_PROC
- ctest -j$(nproc)
- make install
- make install
- cd ../..
.build_and_test_template: &build_and_test_definition
.build_and_test_template: &build_and_test_definition
 
- cd $CI_PROJECT_DIR
- mkdir -pv build
- mkdir -pv build
- cd build
- cd build
- cmake -DCMAKE_BUILD_TYPE=release -DBUILD_EXAMPLES=ON -DBUILD_TESTS=ON ..
- cmake -DCMAKE_BUILD_TYPE=release -DBUILD_EXAMPLES=ON -DBUILD_TESTS=ON ..
- make -j$WOLF_N_PROC
- make -j$(nproc)
- ctest -j$WOLF_N_PROC
- ctest -j$(nproc)
- make install
- make install
 
############ LICENSE HEADERS ############
 
license_headers:
 
stage: license
 
image: labrobotica/wolf_deps:16.04
 
cache:
 
- key: wolf-xenial
 
paths:
 
- ci_deps/wolf/
 
except:
 
- master
 
before_script:
 
- *preliminaries_definition
 
- *install_wolf_definition
 
script:
 
- *license_header_definition
 
############ UBUNTU 16.04 TESTS ############
############ UBUNTU 16.04 TESTS ############
build_and_test:xenial:
build_and_test:xenial:
image: labrobotica/wolf_deps:16.04
image: labrobotica/wolf_deps:16.04
 
stage: build_and_test
cache:
cache:
- key: wolf-xenial
- key: wolf-xenial
paths:
paths:
- wolf/
- ci_deps/wolf/
- key: gnssutils-xenial
- key: gnssutils-xenial
paths:
paths:
- gnss_utils/
- ci_deps/gnss_utils/
except:
except:
- master
- master
before_script:
before_script:
@@ -88,13 +147,14 @@ build_and_test:xenial:
@@ -88,13 +147,14 @@ build_and_test:xenial:
############ UBUNTU 18.04 TESTS ############
############ UBUNTU 18.04 TESTS ############
build_and_test:bionic:
build_and_test:bionic:
image: labrobotica/wolf_deps:18.04
image: labrobotica/wolf_deps:18.04
 
stage: build_and_test
cache:
cache:
- key: wolf-bionic
- key: wolf-bionic
paths:
paths:
- wolf/
- ci_deps/wolf/
- key: gnssutils-bionic
- key: gnssutils-bionic
paths:
paths:
- gnss_utils/
- ci_deps/gnss_utils/
except:
except:
- master
- master
before_script:
before_script:
Loading