Skip to content
GitLab
Explore
Sign in
Primary navigation
Search or go to…
Project
B
bodydynamics
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Wiki
Code
Merge requests
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Snippets
Deploy
Releases
Model registry
Monitor
Incidents
Service Desk
Analyze
Value stream analytics
Contributor analytics
Repository analytics
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
Community forum
Contribute to GitLab
Provide feedback
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
mobile_robotics
wolf_projects
wolf_lib
plugins
bodydynamics
Commits
358b19a9
Commit
358b19a9
authored
3 years ago
by
Joan Vallvé Navarro
Browse files
Options
Downloads
Patches
Plain Diff
CI: different images with yaml anchors
parent
960075ea
No related branches found
No related tags found
2 merge requests
!18
Release after RAL
,
!17
After 2nd RAL submission
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
.gitlab-ci.yml
+61
-55
61 additions, 55 deletions
.gitlab-ci.yml
with
61 additions
and
55 deletions
.gitlab-ci.yml
+
61
−
55
View file @
358b19a9
image
:
labrobotica/ceres:1.14
############ YAML ANCHORS ############
.preliminaries_template
:
&preliminaries_definition
## Install ssh-agent if not already installed, it is required by Docker.
## (change apt-get to yum if you use an RPM-based image)
-
'
which
ssh-agent
||
(
apt-get
update
-y
&&
apt-get
install
openssh-client
-y
)'
before_script
:
-
ls
## Run ssh-agent (inside the build environment)
-
eval $(ssh-agent -s)
## Add the SSH key stored in SSH_PRIVATE_KEY variable to the agent store
## We're using tr to fix line endings which makes ed25519 keys work
## without extra base64 encoding.
## https://gitlab.com/gitlab-examples/ssh-private-key/issues/1#note_48526556
-
mkdir -p ~/.ssh
-
chmod 700 ~/.ssh
-
echo "$SSH_PRIVATE_KEY" | tr -d '\r' | ssh-add - > /dev/null
# - echo "$SSH_KNOWN_HOSTS" > $HOME/.ssh/known_hosts
-
ssh-keyscan -H -p 2202 gitlab.iri.upc.edu >> $HOME/.ssh/known_hosts
# update apt
-
apt-get update
-
apt-get install -y build-essential cmake
# SPDLOG
# - apt-get install -y libspdlog-dev
-
if [ -d spdlog ]; then
-
echo "directory exists"
-
if [ "$(ls -A ./spdlog)" ]; then
-
echo "directory not empty"
-
cd spdlog
-
git pull
-
else
-
echo "directory empty"
-
git clone https://github.com/gabime/spdlog.git
-
cd spdlog
-
fi
-
else
-
echo "directory inexistent"
-
git clone https://github.com/gabime/spdlog.git
-
cd spdlog
-
fi
-
git fetch
-
git checkout v0.17.0
.install_wolf_template
:
&install_wolf_definition
-
git clone ssh://git@gitlab.iri.upc.edu:2202/mobile_robotics/wolf_projects/wolf_lib/wolf.git
-
cd wolf
-
mkdir -pv build
-
cd build
-
ls
-
cmake -DCMAKE_CXX_FLAGS="${CMAKE_CXX_FLAGS} -fPIC" -DSPDLOG_BUILD_TESTING=OFF ..
-
cmake -DCMAKE_BUILD_TYPE=release -DBUILD_EXAMPLES=ON -DBUILD_TESTS=ON ..
-
make -j$(nproc)
-
ctest -j$(nproc)
-
make install
-
cd ../..
# YAML
# - apt-get install -y libyaml-cpp-dev
-
if [ -d yaml-cpp ]; then
-
echo "directory exists"
-
if [ "$(ls -A ./yaml-cpp)" ]; then
-
echo "directory not empty"
-
cd yaml-cpp
-
git pull
-
else
-
echo "directory empty"
-
git clone https://github.com/jbeder/yaml-cpp.git
-
cd yaml-cpp
-
fi
-
else
-
echo "directory inexistent"
-
git clone https://github.com/jbeder/yaml-cpp.git
-
cd yaml-cpp
-
fi
.install_wolfimu_template
:
&install_wolfimu_definition
-
git clone ssh://git@gitlab.iri.upc.edu:2202/mobile_robotics/wolf_projects/wolf_lib/plugins/imu.git
-
cd imu
-
mkdir -pv build
-
cd build
-
ls
-
cmake -DCMAKE_CXX_FLAGS="${CMAKE_CXX_FLAGS} -fPIC" -DYAML_CPP_BUILD_TESTS=OFF ..
-
cmake -DCMAKE_BUILD_TYPE=release -DBUILD_EXAMPLES=ON -DBUILD_TESTS=ON ..
-
make -j$(nproc)
-
ctest -j$(nproc)
-
make install
-
cd ../..
wolf_build_and_test
:
stage
:
build
.build_and_test_template
:
&build_and_test_definition
-
mkdir -pv build
-
cd build
-
cmake -DCMAKE_BUILD_TYPE=release -DBUILD_EXAMPLES=ON -DBUILD_TESTS=ON ..
-
make -j$(nproc)
-
ctest -j$(nproc)
-
make install
############ UBUNTU 16.04 TESTS ############
wolf_build_and_test_none:xenial
:
image
:
labrobotica/wolf_deps:16.04
except
:
-
master
before_script
:
-
*preliminaries_definition
-
*install_wolf_definition
-
*install_wolfimu_definition
-
ldconfig
# update links (shared libraries)
script
:
-
*build_and_test_definition
############ UBUNTU 18.04 TESTS ############
wolf_build_and_test_none:bionic
:
image
:
labrobotica/wolf_deps:18.04
except
:
-
master
before_script
:
-
*preliminaries_definition
-
*install_wolf_definition
-
*install_wolfimu_definition
-
ldconfig
# update links (shared libraries)
script
:
-
mkdir -pv build
-
cd build
-
ls
# we can check whether the directory was already full
-
cmake -DCMAKE_BUILD_TYPE=release -DBUILD_EXAMPLES=ON -DBUILD_TESTS=ON ..
-
make -j$(nproc)
-
ctest -j$(nproc)
-
make install
-
*build_and_test_definition
\ No newline at end of file
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment