Skip to content
Snippets Groups Projects
Code owners
Assign users and groups as approvers for specific file changes. Learn more.
.gitlab-ci.yml 11.14 KiB
stages:
  - prepare-base
  - prepare
  - build
  - unit_test
  - integration_test
  - dockerize
  - deploy

include:
  - template: 'Workflows/Branch-Pipelines.gitlab-ci.yml'

variables:
  FASTLANE: "false"

#
# PREPARE BASE STAGE
#
prepare_ci_base_docker_image:
  stage: prepare-base
  script:
    - docker build -t ci_base:$CI_COMMIT_SHORT_SHA -f  Docker/lofar-ci/Dockerfile_ci_base .
  interruptible: true

#
# PREPARE STAGE
#
prepare_ci_scu_docker_image:
  stage: prepare
  script:
    - docker build --build-arg BASE_VERSION=$CI_COMMIT_SHORT_SHA -t ci_scu:$CI_COMMIT_SHORT_SHA -f  Docker/lofar-ci/Dockerfile_ci_scu .
  interruptible: true

prepare_ci_lta_docker_image:
  stage: prepare
  script:
    - docker build --build-arg BASE_VERSION=$CI_COMMIT_SHORT_SHA -t ci_lta:$CI_COMMIT_SHORT_SHA -f  Docker/lofar-ci/Dockerfile_ci_lta .
  interruptible: true

prepare_ci_mac_docker_image:
  stage: prepare
  script:
    - docker build --build-arg BASE_VERSION=$CI_COMMIT_SHORT_SHA -t ci_mac:$CI_COMMIT_SHORT_SHA -f  Docker/lofar-ci/Dockerfile_ci_mac .
  interruptible: true

#
# BUILD STAGE
#

build_SCU:
  stage: build
  image: ci_scu:$CI_COMMIT_SHORT_SHA
  script:
    - echo "Building SCU & TMSSFrontend..."
    - mkdir -p build/gnucxx11_opt
    - cd build/gnucxx11_opt
    - cmake -DBUILD_PACKAGES="SCU TMSSFrontend" -DCASACORE_ROOT_DIR=/opt/casacore/ -DCASAREST_ROOT_DIR=/opt/casarest/ -DUSE_LOG4CPLUS=false ../..
    - make -j $(nproc)
    - make install
  interruptible: true
  needs:
    - prepare_ci_scu_docker_image
  artifacts:
    expire_in: 6 hours
    paths:
      - build/gnucxx11_opt

build_LTAIngest:
  stage: build
  image: ci_lta:$CI_COMMIT_SHORT_SHA