.industrial_ci:
  stage: build
  before_script:
    - apk add --update bash coreutils tar
    - git clone --quiet --depth 1 https://github.com/ros-industrial/industrial_ci.git .ci_config
    - docker login ${ARTIFACT_DOCKER_URL} -u ${ARTIFACT_CI_USER} -p ${ARTIFACT_CI_TOKEN}
    - docker login tecnalia-docker-dev.artifact.tecnalia.com -u ${ARTIFACT_CI_USER} -p ${ARTIFACT_CI_TOKEN}
  script: .ci_config/gitlab.sh
  variables:
    DOCKER_IMAGE: "${ARTIFACT_DOCKER_URL}/flexbotics-base-devel:${ROS_DISTRO}"
    ADDITIONAL_DEBS: curl
    PARALLEL_BUILDS: 2 # keep this for now, since there seems to be memory limit issues in the ci VM
    AFTER_SETUP_TARGET_WORKSPACE: "rosenv && bash <(curl -Ls https://git.code.tecnalia.com/tecnalia_robotics-public/gitlab_templates/raw/master/scripts/ci_run_entry_points.sh) $$current_ws"
    CMAKE_ARGS: -DCMAKE_CXX_FLAGS=-Wno-ignored-attributes -Wno-int-in-bool-context


.industrial_ci_deploy:
  extends: .industrial_ci
  variables:
    AFTER_SCRIPT: "wget -q -O - https://git.code.tecnalia.com/tecnalia_robotics-public/gitlab_templates/raw/master/scripts/pre-deploy-cleanup.bash | bash"
    DOCKER_COMMIT: industrial_ci_image
  script:
    - .ci_config/gitlab.sh
    - cd $(mktemp -d)
    - wget https://git.code.tecnalia.com/tecnalia_robotics-public/gitlab_templates/-/archive/master/gitlab_templates-master.zip
    - unzip gitlab_templates-master.zip && cd gitlab_templates-master/deploy
    - cd base
    - chmod a+x ros_entrypoint.bash
    - docker build -t ${ARTIFACT_DOCKER_URL}/${CI_PROJECT_NAME}:${CI_COMMIT_REF_NAME} .
    - docker push ${ARTIFACT_DOCKER_URL}/${CI_PROJECT_NAME}:${CI_COMMIT_REF_NAME}
    - cd ..
    - cd dev
    - docker build --build-arg APPLICATION_IMAGE=${ARTIFACT_DOCKER_URL}/${CI_PROJECT_NAME}:${CI_COMMIT_REF_NAME} -t ${ARTIFACT_DOCKER_URL}/${CI_PROJECT_NAME}:${CI_COMMIT_REF_NAME}-dev .
    - docker push ${ARTIFACT_DOCKER_URL}/${CI_PROJECT_NAME}:${CI_COMMIT_REF_NAME}-dev
    - cd ..
  rules:
    - if: $DEPLOY
