# Please don't edit this file, and use the version generated at
# http://rainboard.laas.fr/project/pinocchio/.gitlab-ci.yml

variables:
  GIT_SUBMODULE_STRATEGY: "recursive"
  CCACHE_BASEDIR: "${CI_PROJECT_DIR}"
  CCACHE_DIR: "${CI_PROJECT_DIR}/ccache"

cache:
  paths:
    - ccache

.robotpkg-pinocchio: &robotpkg-pinocchio
  except:
    - gh-pages
  script:
    - mkdir -p ccache
    - cd /root/robotpkg/math
    - git pull
    - cd pinocchio
    - make checkout MASTER_REPOSITORY="dir ${CI_PROJECT_DIR}"
    - make install
    - cd work.$(hostname)/$(make show-var VARNAME=DISTNAME)
    - make test

robotpkg-pinocchio-14.04-release:
  <<: *robotpkg-pinocchio
  image: eur0c.laas.fr:5000/stack-of-tasks/pinocchio/pinocchio:14.04

robotpkg-pinocchio-16.04-release:
  <<: *robotpkg-pinocchio
  image: eur0c.laas.fr:5000/stack-of-tasks/pinocchio/pinocchio:16.04

robotpkg-pinocchio-18.04-release:
  <<: *robotpkg-pinocchio
  image: eur0c.laas.fr:5000/stack-of-tasks/pinocchio/pinocchio:18.04

.robotpkg-py-pinocchio: &robotpkg-py-pinocchio
  except:
    - gh-pages
  script:
    - mkdir -p ccache
    - cd /root/robotpkg/math
    - git pull
    - cd pinocchio
    - make checkout MASTER_REPOSITORY="dir ${CI_PROJECT_DIR}"
    - cd ..
    - cd py-pinocchio
    - make checkout MASTER_REPOSITORY="dir ${CI_PROJECT_DIR}"
    - make install
    - cd work.$(hostname)/$(make show-var VARNAME=DISTNAME)
    - make test

robotpkg-py-pinocchio-14.04-release:
  <<: *robotpkg-py-pinocchio
  image: eur0c.laas.fr:5000/stack-of-tasks/pinocchio/py-pinocchio:14.04

robotpkg-py-pinocchio-py3-14.04-release:
  <<: *robotpkg-py-pinocchio
  image: eur0c.laas.fr:5000/stack-of-tasks/pinocchio/py-pinocchio-py3:14.04

robotpkg-py-pinocchio-16.04-release:
  <<: *robotpkg-py-pinocchio
  image: eur0c.laas.fr:5000/stack-of-tasks/pinocchio/py-pinocchio:16.04

robotpkg-py-pinocchio-py3-16.04-release:
  <<: *robotpkg-py-pinocchio
  image: eur0c.laas.fr:5000/stack-of-tasks/pinocchio/py-pinocchio-py3:16.04

robotpkg-py-pinocchio-18.04-release:
  <<: *robotpkg-py-pinocchio
  image: eur0c.laas.fr:5000/stack-of-tasks/pinocchio/py-pinocchio:18.04

robotpkg-py-pinocchio-py3-18.04-release:
  <<: *robotpkg-py-pinocchio
  image: eur0c.laas.fr:5000/stack-of-tasks/pinocchio/py-pinocchio-py3:18.04

doc-coverage:
  <<: *robotpkg-py-pinocchio
  image: eur0c.laas.fr:5000/stack-of-tasks/pinocchio/py-pinocchio:16.04
  before_script:
    - echo -e 'CXXFLAGS+= --coverage\nLDFLAGS+= --coverage\nPKG_DEFAULT_OPTIONS= debug' >> /opt/openrobots/etc/robotpkg.conf
  after_script:
    - cd /root/robotpkg/math/py-pinocchio
    - cd work.$(hostname)/$(make show-var VARNAME=DISTNAME)
    - make doc
    - mv doc/doxygen-html ${CI_PROJECT_DIR}
    - mkdir -p ${CI_PROJECT_DIR}/coverage/
    - gcovr -r .
    - gcovr -r . --html --html-details -o ${CI_PROJECT_DIR}/coverage/index.html
  artifacts:
    expire_in: 1 day
    paths:
      - doxygen-html/
      - coverage/

