From ea07d040d34306d4453f4a752b04ab92c9ec0705 Mon Sep 17 00:00:00 2001
From: jcarpent <jcarpent@laas.fr>
Date: Tue, 3 Apr 2018 19:25:13 +0200
Subject: [PATCH] [Gitlab] Update to new server configuration

---
 .gitlab-ci.yml                       | 124 +++++++++------------------
 .gitlab-ci/Dockerfile.full.14.04     |   3 -
 .gitlab-ci/Dockerfile.full.16.04     |   3 -
 .gitlab-ci/Dockerfile.full.zesty     |   3 -
 .gitlab-ci/Dockerfile.minimal.14.04  |  15 ----
 .gitlab-ci/Dockerfile.minimal.16.04  |  15 ----
 .gitlab-ci/Dockerfile.minimal.zesty  |  16 ----
 .gitlab-ci/Dockerfile.robotpkg.14.04 |  12 ---
 .gitlab-ci/Dockerfile.robotpkg.16.04 |  12 ---
 .gitlab-ci/Dockerfile.robotpkg.zesty |  14 ---
 .gitlab-ci/update.sh                 |  18 ----
 11 files changed, 40 insertions(+), 195 deletions(-)
 delete mode 100644 .gitlab-ci/Dockerfile.full.14.04
 delete mode 100644 .gitlab-ci/Dockerfile.full.16.04
 delete mode 100644 .gitlab-ci/Dockerfile.full.zesty
 delete mode 100644 .gitlab-ci/Dockerfile.minimal.14.04
 delete mode 100644 .gitlab-ci/Dockerfile.minimal.16.04
 delete mode 100644 .gitlab-ci/Dockerfile.minimal.zesty
 delete mode 100644 .gitlab-ci/Dockerfile.robotpkg.14.04
 delete mode 100644 .gitlab-ci/Dockerfile.robotpkg.16.04
 delete mode 100644 .gitlab-ci/Dockerfile.robotpkg.zesty
 delete mode 100755 .gitlab-ci/update.sh

diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 4c1db1421..6ff1c984e 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -1,96 +1,52 @@
 variables:
-    GIT_SSL_NO_VERIFY: "true"
-    GIT_SUBMODULE_STRATEGY: "recursive"
-    GIT_DEPTH: "3"
-
-stages:
-  - pages
-  - minimal
-  - full
+  GIT_SSL_NO_VERIFY: "true"
+  GIT_SUBMODULE_STRATEGY: "recursive"
+  GIT_DEPTH: "3"
+  NAMESPACE: stack-of-tasks
+  PROJECT: pinocchio
+  REGISTRY: eur0c.laas.fr:5000
+  IMAGE: "${REGISTRY}/${NAMESPACE}/${PROJECT}"
 
 cache:
   paths:
     - build/ccache
 
-.build_template: &build
-    script:
-        - mkdir -p build/ccache
-        - cd build
-        - export CCACHE_BASEDIR=${PWD}
-        - export CCACHE_DIR=${PWD}/ccache
-        - cmake .. -DCMAKE_C_COMPILER_LAUNCHER=ccache -DCMAKE_CXX_COMPILER_LAUNCHER=ccache
-        - make
-        - make test
-        - make install
-
-build_minimal_14:
-    <<: *build
-    image: ${CI_REGISTRY_IMAGE}/minimal:14.04
-    stage: minimal
-    retry: 2
-    except:
-      - gh-pages
 
-build_full_14:
-    <<: *build
-    image: ${CI_REGISTRY_IMAGE}/full:14.04
-    stage: full
-    retry: 2
-    except:
-      - gh-pages
-    dependencies:
-      - build_minimal_14
+.robotpkg-pinocchio: &robotpkg-pinocchio
+  variables:
+    ROBOTPKG: pinocchio
+    CATEGORY: wip
+  before_script:
+    - mkdir -p build/ccache
+    - cd build
+    - export CCACHE_BASEDIR=${PWD}
+    - export CCACHE_DIR=${PWD}/ccache
+  script:
+    - cd /root/robotpkg/${CATEGORY}/${ROBOTPKG}
+    - git pull
+    - echo "MASTER_REPOSITORY = git ${CI_PROJECT_DIR}" >> Makefile
+    - echo "REPOSITORY.pinocchio = git ${CI_PROJECT_DIR}" >> /opt/openrobots/etc/robotpkg.conf
+    - make checkout
+    - make install
+    - cd work.*/${PROJECT}*/
+    - make test
+    - make doc
+  except:
+    - gh-pages
 
-build_minimal_16:
-    <<: *build
-    image: ${CI_REGISTRY_IMAGE}/minimal:16.04
-    stage: minimal
-    retry: 2
-    except:
-      - gh-pages
 
-build_full_16:
-    <<: *build
-    image: ${CI_REGISTRY_IMAGE}/full:16.04
-    stage: full
-    retry: 2
-    except:
-      - gh-pages
-    dependencies:
-      - build_minimal_16
+robotpkg-pinocchio-14.04:
+  <<: *robotpkg-pinocchio
+  image: ${IMAGE}:14.04
 
-build_minimal_zesty:
-    <<: *build
-    image: ${CI_REGISTRY_IMAGE}/minimal:zesty
-    stage: minimal
-    retry: 2
-    except:
-      - gh-pages
-    allow_failure: true
+robotpkg-pinocchio-16.04:
+  <<: *robotpkg-pinocchio
+  image: ${IMAGE}:16.04
 
-build_full_zesty:
-    <<: *build
-    image: ${CI_REGISTRY_IMAGE}/full:zesty
-    stage: full
-    retry: 2
-    except:
-      - gh-pages
-    dependencies:
-      - build_minimal_zesty
-    allow_failure: true
+robotpkg-pinocchio-17.10:
+  <<: *robotpkg-pinocchio
+  image: ${IMAGE}:17.10
 
-pages:
-  image: ruby:2.3
-  stage: pages
-  retry: 2
-  variables:
-    JEKYLL_ENV: production
-  before_script:
-    - gem install jekyll-sitemap
-  script:
-    - jekyll build -d public
-  artifacts:
-    paths:
-      - public
-  only:
-    - gh-pages
+robotpkg-pinocchio-dubnium:
+  <<: *robotpkg-pinocchio
+  image: ${IMAGE}:dubnium
diff --git a/.gitlab-ci/Dockerfile.full.14.04 b/.gitlab-ci/Dockerfile.full.14.04
deleted file mode 100644
index 79890b6de..000000000
--- a/.gitlab-ci/Dockerfile.full.14.04
+++ /dev/null
@@ -1,3 +0,0 @@
-FROM eur0c.laas.fr:4567/stack-of-tasks/pinocchio/minimal:14.04
-
-RUN apt-get update && apt-get install -qqy doxygen robotpkg-hpp-fcl liburdfdom-dev && rm -rf /var/lib/apt/lists/*
diff --git a/.gitlab-ci/Dockerfile.full.16.04 b/.gitlab-ci/Dockerfile.full.16.04
deleted file mode 100644
index 425739d38..000000000
--- a/.gitlab-ci/Dockerfile.full.16.04
+++ /dev/null
@@ -1,3 +0,0 @@
-FROM eur0c.laas.fr:4567/stack-of-tasks/pinocchio/minimal:16.04
-
-RUN apt-get update && apt-get install -qqy doxygen robotpkg-hpp-fcl liburdfdom-dev && rm -rf /var/lib/apt/lists/*
diff --git a/.gitlab-ci/Dockerfile.full.zesty b/.gitlab-ci/Dockerfile.full.zesty
deleted file mode 100644
index 9335b2e1d..000000000
--- a/.gitlab-ci/Dockerfile.full.zesty
+++ /dev/null
@@ -1,3 +0,0 @@
-FROM eur0c.laas.fr:4567/stack-of-tasks/pinocchio/minimal:zesty
-
-RUN apt-get update && apt-get install -qqy doxygen robotpkg-hpp-fcl liburdfdom-dev && rm -rf /var/lib/apt/lists/*
diff --git a/.gitlab-ci/Dockerfile.minimal.14.04 b/.gitlab-ci/Dockerfile.minimal.14.04
deleted file mode 100644
index c2168950d..000000000
--- a/.gitlab-ci/Dockerfile.minimal.14.04
+++ /dev/null
@@ -1,15 +0,0 @@
-FROM eur0c.laas.fr:4567/stack-of-tasks/pinocchio/robotpkg:14.04
-
-RUN apt-get update -qqy && apt-get install -qqy \
-   ccache \
-   cmake \
-   g++ \
-   pkg-config \
-   libboost-test-dev \
-   libboost-filesystem-dev \
-   libeigen3-dev \
-   libpython-dev \
-   libboost-python-dev \
-   python-numpy \
-   robotpkg-eigenpy \
-   && rm -rf /var/lib/apt/lists/*
diff --git a/.gitlab-ci/Dockerfile.minimal.16.04 b/.gitlab-ci/Dockerfile.minimal.16.04
deleted file mode 100644
index dfce012ee..000000000
--- a/.gitlab-ci/Dockerfile.minimal.16.04
+++ /dev/null
@@ -1,15 +0,0 @@
-FROM eur0c.laas.fr:4567/stack-of-tasks/pinocchio/robotpkg:16.04
-
-RUN apt-get update -qqy && apt-get install -qqy \
-   ccache \
-   cmake \
-   g++ \
-   pkg-config \
-   libboost-test-dev \
-   libboost-filesystem-dev \
-   libeigen3-dev \
-   libpython-dev \
-   libboost-python-dev \
-   python-numpy \
-   robotpkg-eigenpy \
-   && rm -rf /var/lib/apt/lists/*
diff --git a/.gitlab-ci/Dockerfile.minimal.zesty b/.gitlab-ci/Dockerfile.minimal.zesty
deleted file mode 100644
index e9fc9dfdd..000000000
--- a/.gitlab-ci/Dockerfile.minimal.zesty
+++ /dev/null
@@ -1,16 +0,0 @@
-FROM eur0c.laas.fr:4567/stack-of-tasks/pinocchio/robotpkg:zesty
-
-RUN apt-get update -qqy && apt-get install -qqy \
-   ccache \
-   cmake \
-   g++ \
-   pkg-config \
-   libboost-test-dev \
-   libboost-filesystem-dev \
-   libeigen3-dev \
-   libpython-dev \
-   libboost-python-dev \
-   python-numpy \
-   robotpkg-eigenpy \
-   && rm -rf /var/lib/apt/lists/*
-
diff --git a/.gitlab-ci/Dockerfile.robotpkg.14.04 b/.gitlab-ci/Dockerfile.robotpkg.14.04
deleted file mode 100644
index 63d6c95d6..000000000
--- a/.gitlab-ci/Dockerfile.robotpkg.14.04
+++ /dev/null
@@ -1,12 +0,0 @@
-FROM ubuntu:14.04
-
-RUN echo "deb [arch=amd64] http://robotpkg.openrobots.org/packages/debian/pub trusty robotpkg" > /etc/apt/sources.list.d/robotpkg.list
-RUN apt-key adv --keyserver hkp://pgp.mit.edu --recv-key BC48D7C832FF7241
-
-ENV OPENROB /opt/openrobots
-ENV CMAKE_PREFIX_PATH $OPENROB:$CMAKE_PREFIX_PATH
-ENV LD_LIBRARY_PATH $OPENROB/lib:$OPENROB/lib/plugin:$LD_LIBRARY_PATH
-ENV PATH $OPENROB/bin:$OPENROB/sbin:$PATH
-ENV PKG_CONFIG_PATH $OPENROB/lib/pkgconfig:$PKG_CONFIG_PATH
-ENV PYTHONPATH $OPENROB/lib/python2.7/site-packages:$PYTHONPATH
-ENV ROS_PACKAGE_PATH $OPENROB/share:$ROS_PACKAGE_PATH
diff --git a/.gitlab-ci/Dockerfile.robotpkg.16.04 b/.gitlab-ci/Dockerfile.robotpkg.16.04
deleted file mode 100644
index 1bbd9410e..000000000
--- a/.gitlab-ci/Dockerfile.robotpkg.16.04
+++ /dev/null
@@ -1,12 +0,0 @@
-FROM ubuntu:16.04
-
-RUN echo "deb [arch=amd64] http://robotpkg.openrobots.org/packages/debian/pub xenial robotpkg" > /etc/apt/sources.list.d/robotpkg.list
-RUN apt-key adv --keyserver hkp://pgp.mit.edu --recv-key BC48D7C832FF7241
-
-ENV OPENROB /opt/openrobots
-ENV CMAKE_PREFIX_PATH $OPENROB:$CMAKE_PREFIX_PATH
-ENV LD_LIBRARY_PATH $OPENROB/lib:$OPENROB/lib/plugin:$LD_LIBRARY_PATH
-ENV PATH $OPENROB/bin:$OPENROB/sbin:$PATH
-ENV PKG_CONFIG_PATH $OPENROB/lib/pkgconfig:$PKG_CONFIG_PATH
-ENV PYTHONPATH $OPENROB/lib/python2.7/site-packages:$PYTHONPATH
-ENV ROS_PACKAGE_PATH $OPENROB/share:$ROS_PACKAGE_PATH
diff --git a/.gitlab-ci/Dockerfile.robotpkg.zesty b/.gitlab-ci/Dockerfile.robotpkg.zesty
deleted file mode 100644
index 4d8a4036e..000000000
--- a/.gitlab-ci/Dockerfile.robotpkg.zesty
+++ /dev/null
@@ -1,14 +0,0 @@
-FROM ubuntu:zesty
-
-RUN apt-get update && apt-get install -qqy dirmngr && rm -rf /var/lib/apt/lists/*
-
-RUN echo "deb [arch=amd64] http://robotpkg.openrobots.org/packages/debian/pub zesty robotpkg" > /etc/apt/sources.list.d/robotpkg.list
-RUN apt-key adv --keyserver hkp://pgp.mit.edu --recv-key BC48D7C832FF7241
-
-ENV OPENROB /opt/openrobots
-ENV CMAKE_PREFIX_PATH $OPENROB:$CMAKE_PREFIX_PATH
-ENV LD_LIBRARY_PATH $OPENROB/lib:$OPENROB/lib/plugin:$LD_LIBRARY_PATH
-ENV PATH $OPENROB/bin:$OPENROB/sbin:$PATH
-ENV PKG_CONFIG_PATH $OPENROB/lib/pkgconfig:$PKG_CONFIG_PATH
-ENV PYTHONPATH $OPENROB/lib/python2.7/site-packages:$PYTHONPATH
-ENV ROS_PACKAGE_PATH $OPENROB/share:$ROS_PACKAGE_PATH
diff --git a/.gitlab-ci/update.sh b/.gitlab-ci/update.sh
deleted file mode 100755
index c3c94ab6a..000000000
--- a/.gitlab-ci/update.sh
+++ /dev/null
@@ -1,18 +0,0 @@
-#!/bin/bash
-
-set -e
-
-for tag in 14.04 16.04 zesty
-do
-    (
-    docker pull ubuntu:$tag
-    docker build -t eur0c.laas.fr:4567/stack-of-tasks/pinocchio/robotpkg:$tag -f Dockerfile.robotpkg.$tag .
-    docker push eur0c.laas.fr:4567/stack-of-tasks/pinocchio/robotpkg:$tag &
-    docker build -t eur0c.laas.fr:4567/stack-of-tasks/pinocchio/minimal:$tag -f Dockerfile.minimal.$tag .
-    docker push eur0c.laas.fr:4567/stack-of-tasks/pinocchio/minimal:$tag &
-    docker build -t eur0c.laas.fr:4567/stack-of-tasks/pinocchio/full:$tag -f Dockerfile.full.$tag .
-    docker push eur0c.laas.fr:4567/stack-of-tasks/pinocchio/full:$tag
-    ) &
-done
-
-wait
-- 
GitLab