Skip to content
Snippets Groups Projects
Commit 039f458d authored by Lorenz Boguhn's avatar Lorenz Boguhn
Browse files

Merge branch 'feature/147-add-beam-implementations' of...

Merge branch 'feature/147-add-beam-implementations' of git.se.informatik.uni-kiel.de:stu203404/theodolite into feature/147-add-beam-implementations
parents ba916c0d 59888afb
No related branches found
No related tags found
1 merge request!187Migrate Beam benchmark implementation
include:
- template: 'Workflows/Branch-Pipelines.gitlab-ci.yml'
stages: stages:
- build - build
- test - test
- check - check
- deploy - deploy
default:
tags:
- exec-docker
.dind: .dind:
tags: tags:
- exec-dind - exec-dind
...@@ -15,15 +22,15 @@ stages: ...@@ -15,15 +22,15 @@ stages:
variables: variables:
DOCKER_TLS_CERTDIR: "/certs" DOCKER_TLS_CERTDIR: "/certs"
# Theodolite Helm Chart # Theodolite Helm Chart
lint-helm: lint-helm:
stage: check stage: check
needs: []
image: image:
name: alpine/helm:3.5.2 name: alpine/helm:3.5.2
entrypoint: [""] entrypoint: [""]
tags:
- exec-docker
script: helm lint helm/ script: helm lint helm/
...@@ -31,8 +38,6 @@ lint-helm: ...@@ -31,8 +38,6 @@ lint-helm:
.benchmarks: .benchmarks:
image: openjdk:11-jdk image: openjdk:11-jdk
tags:
- exec-docker
variables: variables:
GRADLE_OPTS: "-Dorg.gradle.daemon=false" GRADLE_OPTS: "-Dorg.gradle.daemon=false"
cache: cache:
...@@ -42,6 +47,11 @@ lint-helm: ...@@ -42,6 +47,11 @@ lint-helm:
before_script: before_script:
- export GRADLE_USER_HOME=`pwd`/.gradle - export GRADLE_USER_HOME=`pwd`/.gradle
- cd theodolite-benchmarks - cd theodolite-benchmarks
rules:
- changes:
- theodolite-benchmarks/**/*
- when: manual
allow_failure: true
build-benchmarks: build-benchmarks:
stage: build stage: build
...@@ -124,177 +134,154 @@ spotbugs-benchmarks: ...@@ -124,177 +134,154 @@ spotbugs-benchmarks:
- docker push $CR_HOST/$CR_ORG/$IMAGE_NAME - docker push $CR_HOST/$CR_ORG/$IMAGE_NAME
- docker logout - docker logout
rules: rules:
- if: "$CR_HOST && $CR_ORG && $CR_USER && $CR_PW && $IMAGE_NAME && $JAVA_PROJECT_NAME && $CI_COMMIT_TAG"
when: always
- changes: - changes:
- theodolite-benchmarks/* - theodolite-benchmarks/*
- theodolite-benchmarks/$JAVA_PROJECT_NAME/**/* - theodolite-benchmarks/$JAVA_PROJECT_NAME/**/*
- theodolite-benchmarks/kstreams-commons/**/* - theodolite-benchmarks/{$JAVA_PROJECT_DEPS}/**/*
- theodolite-benchmarks/flink-commons/**/* if: "$CR_HOST && $CR_ORG && $CR_USER && $CR_PW && $IMAGE_NAME && $JAVA_PROJECT_NAME && $JAVA_PROJECT_DEPS"
- theodolite-benchmarks/beam-commons/**/*
- theodolite-benchmarks/load-generator-commons/**/*
if: "$CR_HOST && $CR_ORG && $CR_USER && $CR_PW && $IMAGE_NAME && $JAVA_PROJECT_NAME"
when: always
- if: "$CR_HOST && $CR_ORG && $CR_USER && $CR_PW && $IMAGE_NAME && $JAVA_PROJECT_NAME" - if: "$CR_HOST && $CR_ORG && $CR_USER && $CR_PW && $IMAGE_NAME && $JAVA_PROJECT_NAME"
when: manual when: manual
allow_failure: true allow_failure: true
# ---------------------- Kstreams:
deploy-uc1-kstreams: deploy-uc1-kstreams:
extends: .deploy-benchmarks extends: .deploy-benchmarks
variables: variables:
IMAGE_NAME: "theodolite-uc1-kstreams-app" IMAGE_NAME: "theodolite-uc1-kstreams-app"
JAVA_PROJECT_NAME: "uc1-kstreams" JAVA_PROJECT_NAME: "uc1-kstreams"
JAVA_PROJECT_DEPS: "kstreams-commons"
deploy-uc2-kstreams: deploy-uc2-kstreams:
extends: .deploy-benchmarks extends: .deploy-benchmarks
variables: variables:
IMAGE_NAME: "theodolite-uc2-kstreams-app" IMAGE_NAME: "theodolite-uc2-kstreams-app"
JAVA_PROJECT_NAME: "uc2-kstreams" JAVA_PROJECT_NAME: "uc2-kstreams"
JAVA_PROJECT_DEPS: "kstreams-commons"
deploy-uc3-kstreams: deploy-uc3-kstreams:
extends: .deploy-benchmarks extends: .deploy-benchmarks
variables: variables:
IMAGE_NAME: "theodolite-uc3-kstreams-app" IMAGE_NAME: "theodolite-uc3-kstreams-app"
JAVA_PROJECT_NAME: "uc3-kstreams" JAVA_PROJECT_NAME: "uc3-kstreams"
JAVA_PROJECT_DEPS: "kstreams-commons"
deploy-uc4-kstreams: deploy-uc4-kstreams:
extends: .deploy-benchmarks extends: .deploy-benchmarks
variables: variables:
IMAGE_NAME: "theodolite-uc4-kstreams-app" IMAGE_NAME: "theodolite-uc4-kstreams-app"
JAVA_PROJECT_NAME: "uc4-kstreams" JAVA_PROJECT_NAME: "uc4-kstreams"
JAVA_PROJECT_DEPS: "kstreams-commons"
# ---------------------- Flink:
deploy-uc1-flink: deploy-uc1-flink:
extends: .deploy-benchmarks extends: .deploy-benchmarks
variables: variables:
IMAGE_NAME: "theodolite-uc1-flink" IMAGE_NAME: "theodolite-uc1-flink"
JAVA_PROJECT_NAME: "uc1-flink" JAVA_PROJECT_NAME: "uc1-flink"
JAVA_PROJECT_DEPS: "flink-commons"
deploy-uc2-flink: deploy-uc2-flink:
extends: .deploy-benchmarks extends: .deploy-benchmarks
variables: variables:
IMAGE_NAME: "theodolite-uc2-flink" IMAGE_NAME: "theodolite-uc2-flink"
JAVA_PROJECT_NAME: "uc2-flink" JAVA_PROJECT_NAME: "uc2-flink"
JAVA_PROJECT_DEPS: "flink-commons"
deploy-uc3-flink: deploy-uc3-flink:
extends: .deploy-benchmarks extends: .deploy-benchmarks
variables: variables:
IMAGE_NAME: "theodolite-uc3-flink" IMAGE_NAME: "theodolite-uc3-flink"
JAVA_PROJECT_NAME: "uc3-flink" JAVA_PROJECT_NAME: "uc3-flink"
JAVA_PROJECT_DEPS: "flink-commons"
deploy-uc4-flink: deploy-uc4-flink:
extends: .deploy-benchmarks extends: .deploy-benchmarks
variables: variables:
IMAGE_NAME: "theodolite-uc4-flink" IMAGE_NAME: "theodolite-uc4-flink"
JAVA_PROJECT_NAME: "uc4-flink" JAVA_PROJECT_NAME: "uc4-flink"
JAVA_PROJECT_DEPS: "flink-commons"
# ---------------------- Beam - Flink :
deploy-uc1-beam-flink: deploy-uc1-beam-flink:
extends: .deploy-benchmarks extends: .deploy-benchmarks
rules:
- changes:
- theodolite-benchmarks/uc1-beam/**/*
when: always
variables: variables:
IMAGE_NAME: "theodolite-uc1-beam-flink" IMAGE_NAME: "theodolite-uc1-beam-flink"
JAVA_PROJECT_NAME: "uc1-beam-flink" JAVA_PROJECT_NAME: "uc1-beam-flink"
JAVA_PROJECT_DEPS: "beam-commons,uc1-beam"
deploy-uc2-beam-flink: deploy-uc2-beam-flink:
extends: .deploy-benchmarks extends: .deploy-benchmarks
rules:
- changes:
- theodolite-benchmarks/uc2-beam/**/*
when: always
variables: variables:
IMAGE_NAME: "theodolite-uc2-beam-flink" IMAGE_NAME: "theodolite-uc2-beam-flink"
JAVA_PROJECT_NAME: "uc2-beam-flink" JAVA_PROJECT_NAME: "uc2-beam-flink"
JAVA_PROJECT_DEPS: "beam-commons,uc2-beam"
deploy-uc3-beam-flink: deploy-uc3-beam-flink:
extends: .deploy-benchmarks extends: .deploy-benchmarks
rules:
- changes:
- theodolite-benchmarks/uc3-beam/**/*
when: always
variables: variables:
IMAGE_NAME: "theodolite-uc3-beam-flink" IMAGE_NAME: "theodolite-uc3-beam-flink"
JAVA_PROJECT_NAME: "uc3-beam-flink" JAVA_PROJECT_NAME: "uc3-beam-flink"
JAVA_PROJECT_DEPS: "beam-commons,uc3-beam"
deploy-uc4-beam-flink: deploy-uc4-beam-flink:
extends: .deploy-benchmarks extends: .deploy-benchmarks
rules:
- changes:
- theodolite-benchmarks/uc4-beam/**/*
when: always
variables: variables:
IMAGE_NAME: "theodolite-uc4-beam-flink" IMAGE_NAME: "theodolite-uc4-beam-flink"
JAVA_PROJECT_NAME: "uc4-beam-flink" JAVA_PROJECT_NAME: "uc4-beam-flink"
JAVA_PROJECT_DEPS: "beam-commons,uc4-beam"
# ---------------------- Beam - Samza:
deploy-uc1-beam-samza: deploy-uc1-beam-samza:
extends: .deploy-benchmarks extends: .deploy-benchmarks
rules:
- changes:
- theodolite-benchmarks/uc1-beam/**/*
when: always
variables: variables:
IMAGE_NAME: "theodolite-uc1-beam-samza" IMAGE_NAME: "theodolite-uc1-beam-samza"
JAVA_PROJECT_NAME: "uc1-beam-samza" JAVA_PROJECT_NAME: "uc1-beam-samza"
JAVA_PROJECT_DEPS: "beam-commons,uc1-beam"
deploy-uc2-beam-samza: deploy-uc2-beam-samza:
extends: .deploy-benchmarks extends: .deploy-benchmarks
rules:
- changes:
- theodolite-benchmarks/uc2-beam/**/*
when: always
variables: variables:
IMAGE_NAME: "theodolite-uc2-beam-samza" IMAGE_NAME: "theodolite-uc2-beam-samza"
JAVA_PROJECT_NAME: "uc2-beam-samza" JAVA_PROJECT_NAME: "uc2-beam-samza"
JAVA_PROJECT_DEPS: "beam-commons,uc2-beam"
deploy-uc3-beam-samza: deploy-uc3-beam-samza:
extends: .deploy-benchmarks extends: .deploy-benchmarks
rules:
- changes:
- theodolite-benchmarks/uc3-beam/**/*
when: always
variables: variables:
IMAGE_NAME: "theodolite-uc3-beam-samza" IMAGE_NAME: "theodolite-uc3-beam-samza"
JAVA_PROJECT_NAME: "uc3-beam-samza" JAVA_PROJECT_NAME: "uc3-beam-samza"
JAVA_PROJECT_DEPS: "beam-commons,uc3-beam"
deploy-uc4-beam-samza: deploy-uc4-beam-samza:
extends: .deploy-benchmarks extends: .deploy-benchmarks
rules:
- changes:
- theodolite-benchmarks/uc4-beam/**/*
when: always
variables: variables:
IMAGE_NAME: "theodolite-uc4-beam-samza" IMAGE_NAME: "theodolite-uc4-beam-samza"
JAVA_PROJECT_NAME: "uc4-beam-samza" JAVA_PROJECT_NAME: "uc4-beam-samza"
JAVA_PROJECT_DEPS: "beam-commons,uc4-beam"
# ---------------------- Loadgenerator:
deploy-uc1-load-generator: deploy-uc1-load-generator:
extends: .deploy-benchmarks extends: .deploy-benchmarks
variables: variables:
IMAGE_NAME: "theodolite-uc1-workload-generator" IMAGE_NAME: "theodolite-uc1-workload-generator"
JAVA_PROJECT_NAME: "uc1-load-generator" JAVA_PROJECT_NAME: "uc1-load-generator"
JAVA_PROJECT_DEPS: "load-generator-commons"
deploy-uc2-load-generator: deploy-uc2-load-generator:
extends: .deploy-benchmarks extends: .deploy-benchmarks
variables: variables:
IMAGE_NAME: "theodolite-uc2-workload-generator" IMAGE_NAME: "theodolite-uc2-workload-generator"
JAVA_PROJECT_NAME: "uc2-load-generator" JAVA_PROJECT_NAME: "uc2-load-generator"
JAVA_PROJECT_DEPS: "load-generator-commons"
deploy-uc3-load-generator: deploy-uc3-load-generator:
extends: .deploy-benchmarks extends: .deploy-benchmarks
variables: variables:
IMAGE_NAME: "theodolite-uc3-workload-generator" IMAGE_NAME: "theodolite-uc3-workload-generator"
JAVA_PROJECT_NAME: "uc3-load-generator" JAVA_PROJECT_NAME: "uc3-load-generator"
JAVA_PROJECT_DEPS: "load-generator-commons"
deploy-uc4-load-generator: deploy-uc4-load-generator:
extends: .deploy-benchmarks extends: .deploy-benchmarks
variables: variables:
IMAGE_NAME: "theodolite-uc4-workload-generator" IMAGE_NAME: "theodolite-uc4-workload-generator"
JAVA_PROJECT_NAME: "uc4-load-generator" JAVA_PROJECT_NAME: "uc4-load-generator"
JAVA_PROJECT_DEPS: "load-generator-commons"
# Theodolite Framework # Theodolite Framework
...@@ -303,8 +290,6 @@ deploy-uc4-load-generator: ...@@ -303,8 +290,6 @@ deploy-uc4-load-generator:
image: image:
name: ghcr.io/graalvm/native-image:java11-21.1.0 name: ghcr.io/graalvm/native-image:java11-21.1.0
entrypoint: [""] entrypoint: [""]
tags:
- exec-docker
variables: variables:
GRADLE_OPTS: "-Dorg.gradle.daemon=false" GRADLE_OPTS: "-Dorg.gradle.daemon=false"
cache: cache:
...@@ -386,40 +371,47 @@ deploy-theodolite: ...@@ -386,40 +371,47 @@ deploy-theodolite:
- docker push $CR_HOST/$CR_ORG/theodolite - docker push $CR_HOST/$CR_ORG/theodolite
- docker logout - docker logout
rules: rules:
- if: "$CR_HOST && $CR_ORG && $CR_USER && $CR_PW && $CI_COMMIT_TAG"
when: always
- changes: - changes:
- theodolite/**/* - theodolite/**/*
if: "$CR_HOST && $CR_ORG && $CR_USER && $CR_PW" if: "$CR_HOST && $CR_ORG && $CR_USER && $CR_PW"
when: always
- if: "$CR_HOST && $CR_ORG && $CR_USER && $CR_PW" - if: "$CR_HOST && $CR_ORG && $CR_USER && $CR_PW"
when: manual when: manual
allow_failure: true allow_failure: true
# Theodolite SLO Checker: Lag Trend # Theodolite SLO Checker
test-slo-checker-lag-trend: test-slo-checker-lag-trend:
stage: test stage: test
needs: []
image: python:3.7-slim image: python:3.7-slim
tags: before_script:
- exec-docker
script:
- cd slo-checker/record-lag - cd slo-checker/record-lag
script:
- pip install -r requirements.txt - pip install -r requirements.txt
- cd app - cd app
- python -m unittest - python -m unittest
rules:
- changes:
- slo-checker/record-lag/**/*
- when: manual
allow_failure: true
test-slo-checker-dropped-records-kstreams: test-slo-checker-dropped-records-kstreams:
stage: test stage: test
needs: []
image: python:3.7-slim image: python:3.7-slim
tags: before_script:
- exec-docker
script:
- cd slo-checker/dropped-records - cd slo-checker/dropped-records
script:
- pip install -r requirements.txt - pip install -r requirements.txt
- cd app - cd app
- python -m unittest - python -m unittest
rules:
- changes:
- slo-checker/dropped-records/**/*
- when: manual
allow_failure: true
deploy-slo-checker-lag-trend: deploy-slo-checker-lag-trend:
stage: deploy stage: deploy
...@@ -436,12 +428,9 @@ deploy-slo-checker-lag-trend: ...@@ -436,12 +428,9 @@ deploy-slo-checker-lag-trend:
- docker push $CR_HOST/$CR_ORG/theodolite-slo-checker-lag-trend - docker push $CR_HOST/$CR_ORG/theodolite-slo-checker-lag-trend
- docker logout - docker logout
rules: rules:
- if: "$CR_HOST && $CR_ORG && $CR_USER && $CR_PW && $CI_COMMIT_TAG"
when: always
- changes: - changes:
- slo-checker/record-lag/**/* - slo-checker/record-lag/**/*
if: "$CR_HOST && $CR_ORG && $CR_USER && $CR_PW" if: "$CR_HOST && $CR_ORG && $CR_USER && $CR_PW"
when: always
- if: "$CR_HOST && $CR_ORG && $CR_USER && $CR_PW" - if: "$CR_HOST && $CR_ORG && $CR_USER && $CR_PW"
when: manual when: manual
allow_failure: true allow_failure: true
...@@ -461,12 +450,9 @@ deploy-slo-checker-dropped-records-kstreams: ...@@ -461,12 +450,9 @@ deploy-slo-checker-dropped-records-kstreams:
- docker push $CR_HOST/$CR_ORG/theodolite-slo-checker-dropped-records-kstreams - docker push $CR_HOST/$CR_ORG/theodolite-slo-checker-dropped-records-kstreams
- docker logout - docker logout
rules: rules:
- if: "$CR_HOST && $CR_ORG && $CR_USER && $CR_PW && $CI_COMMIT_TAG"
when: always
- changes: - changes:
- slo-checker/dropped-records/**/* - slo-checker/dropped-records/**/*
if: "$CR_HOST && $CR_ORG && $CR_USER && $CR_PW" if: "$CR_HOST && $CR_ORG && $CR_USER && $CR_PW"
when: always
- if: "$CR_HOST && $CR_ORG && $CR_USER && $CR_PW" - if: "$CR_HOST && $CR_ORG && $CR_USER && $CR_PW"
when: manual when: manual
allow_failure: true allow_failure: true
...@@ -488,12 +474,9 @@ deploy-random-scheduler: ...@@ -488,12 +474,9 @@ deploy-random-scheduler:
- docker push $CR_HOST/$CR_ORG/theodolite-random-scheduler - docker push $CR_HOST/$CR_ORG/theodolite-random-scheduler
- docker logout - docker logout
rules: rules:
- if: "$CR_HOST && $CR_ORG && $CR_USER && $CR_PW && $CI_COMMIT_TAG"
when: always
- changes: - changes:
- execution/infrastructure/random-scheduler/**/* - execution/infrastructure/random-scheduler/**/*
if: "$CR_HOST && $CR_ORG && $CR_USER && $CR_PW" if: "$CR_HOST && $CR_ORG && $CR_USER && $CR_PW"
when: always
- if: "$CR_HOST && $CR_ORG && $CR_USER && $CR_PW" - if: "$CR_HOST && $CR_ORG && $CR_USER && $CR_PW"
when: manual when: manual
allow_failure: true allow_failure: true
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment