Skip to content
Snippets Groups Projects
.gitlab-ci.yml 5.09 KiB
image: ${BENCHMARKS_REGISTRY}/${BENCHMARKS_CONTAINER}:${BENCHMARKS_TAG}

variables:
  DETECTOR: epic
  DETECTOR_CONFIG: epic_craterlake
  DETECTOR_REPOSITORYURL: 'https://github.com/eic/epic.git'
  GITHUB_SHA: ''
  GITHUB_REPOSITORY: ''

workflow:
  name: '$PIPELINE_NAME'
  rules:
    - if: '$CI_PIPELINE_SOURCE == "merge_request_event"'
    - if: '$CI_PIPELINE_SOURCE == "web"'
    - if: '$CI_PIPELINE_SOURCE == "webide"'
    - if: '$CI_PIPELINE_SOURCE == "trigger"'
    - if: '$CI_COMMIT_BRANCH == "master"'
    - if: '$CI_COMMIT_TAG'

default:
  tags:
    - phy-scratch
  artifacts:
    expire_in: 72 hours 
    paths:
      - .local/detector
      - .local/lib
      - .local/bin
      - .local/include
      - .local/share
      - results
      - config
      - .env
      - summary.txt
    reports:
      dotenv: .env

stages:
  - status-pending
  - config
  - initialize
  - data_init
  - simulate
  - calibrate
  - benchmarks
  - collect
  - deploy
  - status-report

.status:
  image: curlimages/curl:latest
  script:
    - |
      if [ -n "${GITHUB_SHA}" ] ; then
        curl \
          -X POST \
          -H "Accept: application/vnd.github+json" \
          -H "Authorization: token ${GITHUB_REPO_STATUS_TOKEN}" \
          "https://api.github.com/repos/${GITHUB_REPOSITORY}/statuses/${GITHUB_SHA}" \
          -d '{"state":"'"${STATE}"'",
               "target_url":"'"${CI_PIPELINE_URL}"'",
               "description":"'"${DESCRIPTION} $(TZ=America/New_York date)"'",
               "context":"eicweb/detector_benchmarks ('"$DETECTOR_CONFIG"')"
              }' ;
      fi


benchmarks:detector:pending:
  stage: status-pending
  extends: .status