Skip to content
Snippets Groups Projects
Verified Commit 90782829 authored by Martin Weise's avatar Martin Weise
Browse files

Merge branch 'release-1.4.6' into dev

parents 45eecbad 5987febf
No related branches found
No related tags found
6 merge requests!345Updated docs and endpoints:,!341Fixed mapping problem where UK and FK share columns they are inserted,!339Fixed mapping problem where UK and FK share columns they are inserted,!338Fixed mapping problem where UK and FK share columns they are inserted,!334Fixed mapping problem where UK and FK share columns they are inserted,!333Fixed mapping problem where UK and FK share columns they are inserted
<?xml version="1.0" encoding="UTF-8"?>
<svg xmlns="http://www.w3.org/2000/svg" width="124" height="20">
<linearGradient id="b" x2="0" y2="100%">
<stop offset="0" stop-color="#bbb" stop-opacity=".1"/>
<stop offset="1" stop-opacity=".1"/>
</linearGradient>
<mask id="anybadge_1">
<rect width="124" height="20" rx="3" fill="#fff"/>
</mask>
<g mask="url(#anybadge_1)">
<path fill="#555" d="M0 0h65v20H0z"/>
<path fill="#A9A9A9" d="M65 0h59v20H65z"/>
<path fill="url(#b)" d="M0 0h124v20H0z"/>
</g>
<g fill="#fff" text-anchor="middle" font-family="DejaVu Sans,Verdana,Geneva,sans-serif" font-size="11">
<text x="33.5" y="15" fill="#010101" fill-opacity=".3">coverage</text>
<text x="32.5" y="14">coverage</text>
</g>
<g fill="#fff" text-anchor="middle" font-family="DejaVu Sans,Verdana,Geneva,sans-serif" font-size="11">
<text x="95.5" y="15" fill="#010101" fill-opacity=".3">unknown</text>
<text x="94.5" y="14">unknown</text>
</g>
</svg>
<?xml version="1.0" encoding="UTF-8"?>
<svg xmlns="http://www.w3.org/2000/svg" width="116" height="20">
<linearGradient id="b" x2="0" y2="100%">
<stop offset="0" stop-color="#bbb" stop-opacity=".1"/>
<stop offset="1" stop-opacity=".1"/>
</linearGradient>
<mask id="anybadge_1">
<rect width="116" height="20" rx="3" fill="#fff"/>
</mask>
<g mask="url(#anybadge_1)">
<path fill="#555" d="M0 0h57v20H0z"/>
<path fill="#A9A9A9" d="M57 0h59v20H57z"/>
<path fill="url(#b)" d="M0 0h116v20H0z"/>
</g>
<g fill="#fff" text-anchor="middle" font-family="DejaVu Sans,Verdana,Geneva,sans-serif" font-size="11">
<text x="29.5" y="15" fill="#010101" fill-opacity=".3">pipeline</text>
<text x="28.5" y="14">pipeline</text>
</g>
<g fill="#fff" text-anchor="middle" font-family="DejaVu Sans,Verdana,Geneva,sans-serif" font-size="11">
<text x="87.5" y="15" fill="#010101" fill-opacity=".3">unknown</text>
<text x="86.5" y="14">unknown</text>
</g>
</svg>
......@@ -2,8 +2,8 @@
author: Martin Weise
---
[![CI/CD Pipeline](https://gitlab.phaidra.org/fair-data-austria-db-repository/fda-services/badges/master/pipeline.svg)](https://gitlab.phaidra.org/fair-data-austria-db-repository/fda-services){ tabindex=-1 }
[![Code Coverage](https://gitlab.phaidra.org/fair-data-austria-db-repository/fda-services/badges/master/coverage.svg)](https://gitlab.phaidra.org/fair-data-austria-db-repository/fda-services){ tabindex=-1 }
[![CI/CD Status](./images/pipeline.svg)](https://gitlab.phaidra.org/fair-data-austria-db-repository/fda-services){ tabindex=-1 }
[![CI/CD Coverage](./images/coverage.svg)](https://gitlab.phaidra.org/fair-data-austria-db-repository/fda-services){ tabindex=-1 }
[![GitLab Release](https://img.shields.io/gitlab/v/release/fair-data-austria-db-repository%2Ffda-services?gitlab_url=https%3A%2F%2Fgitlab.phaidra.org&display_name=release&style=flat&cacheSeconds=3600)](https://gitlab.phaidra.org/fair-data-austria-db-repository/fda-services){ tabindex=-1 }
[![Image Pulls](https://img.shields.io/docker/pulls/dbrepo/data-service?style=flat&cacheSeconds=3600)](https://hub.docker.com/u/dbrepo){ tabindex=-1 }
[![GitLab License](https://img.shields.io/gitlab/license/fair-data-austria-db-repository%2Ffda-services?gitlab_url=https%3A%2F%2Fgitlab.phaidra.org%2F&style=flat&cacheSeconds=3600)](https://gitlab.phaidra.org/fair-data-austria-db-repository/fda-services){ tabindex=-1 }
......@@ -32,11 +32,11 @@ Installing DBRepo is very easy or
- [TU Wien](https://dbrepo1.ec.tuwien.ac.at)
- TU Darmstadt
- [Universität Hamburg](https://dbrepo.fdm.uni-hamburg.de/)
- [Universit&auml;t Hamburg](https://dbrepo.fdm.uni-hamburg.de/)
- [Universiti Teknikal Malaysia Melaka](https://dbrepo.utem.edu.my/)
- University of the Philippines
- [Universiti Sains Malaysia](https://dbrepo.wrfexpress.com/)
## How can I try DBRepo
## How can I try DBRepo?
[:fontawesome-solid-flask: &nbsp;Demonstration Instance](https://test.dbrepo.tuwien.ac.at){ .md-button .md-button--primary target="_blank" }
\ No newline at end of file
......@@ -35,9 +35,6 @@ stages:
build-metadata-service:
image: maven:3-openjdk-17
stage: build
except:
refs:
- /^release-.*/
script:
- "mvn -f ./dbrepo-metadata-service/pom.xml clean install $MAVEN_OPTS -DskipTests"
# Compiled classes are needed for SonarQube in later stages
......@@ -56,9 +53,6 @@ build-metadata-service:
build-analyse-service:
image: docker.io/python:3.11-alpine
stage: build
except:
refs:
- /^release-.*/
variables:
PIPENV_PIPFILE: "./dbrepo-analyse-service/Pipfile"
script:
......@@ -68,9 +62,6 @@ build-analyse-service:
build-data-db-sidecar:
image: docker.io/python:3.11-alpine
stage: build
except:
refs:
- /^release-.*/
variables:
PIPENV_PIPFILE: "./dbrepo-data-db/sidecar/Pipfile"
script:
......@@ -80,9 +71,6 @@ build-data-db-sidecar:
build-lib:
image: docker.io/python:3.11-alpine
stage: build
except:
refs:
- /^release-.*/
variables:
PIPENV_PIPFILE: "./lib/python/Pipfile"
script:
......@@ -92,9 +80,6 @@ build-lib:
build-data-service:
image: maven:3-openjdk-17
stage: build
except:
refs:
- /^release-.*/
needs:
- build-metadata-service
dependencies:
......@@ -114,18 +99,12 @@ build-data-service:
build-ui:
image: oven/bun:1.0.26-alpine
stage: build
except:
refs:
- /^release-.*/
script:
- "cd ./dbrepo-ui && bun install && bun run build"
build-search-service:
image: docker.io/python:3.11-alpine
stage: build
except:
refs:
- /^release-.*/
script:
- "pip install pipenv"
- "cd dbrepo-search-service && pipenv install --system --deploy"
......@@ -133,9 +112,6 @@ build-search-service:
build-docker:
image: docker.io/docker:24-dind
stage: build
except:
refs:
- /^release-.*/
before_script:
- echo "$CI_REGISTRY_PASSWORD" | docker login --username "$CI_REGISTRY_USER" --password-stdin $CI_REGISTRY_URL
script:
......@@ -146,9 +122,6 @@ build-docker:
build-helm:
image: docker.io/docker:24-dind
stage: build
except:
refs:
- /^release-.*/
before_script:
- echo "$CI_GPG_KEYRING" | base64 -d > ./secring.gpg
- echo "$CI_REGISTRY_PASSWORD" | docker login --username "$CI_REGISTRY_USER" --password-stdin $CI_REGISTRY_URL
......@@ -205,9 +178,6 @@ verify-install-script:
lint-helm-chart:
image: docker.io/alpine:3.20
stage: lint
except:
refs:
- /^release-.*/
needs:
- build-metadata-service
dependencies:
......@@ -220,9 +190,6 @@ lint-helm-chart:
test-metadata-service:
image: maven:3-openjdk-17
stage: test
except:
refs:
- /^release-.*/
needs:
- build-metadata-service
dependencies:
......@@ -243,9 +210,6 @@ test-metadata-service:
test-data-service:
image: maven:3-openjdk-17
stage: test
except:
refs:
- /^release-.*/
needs:
- build-data-service
dependencies:
......@@ -266,9 +230,6 @@ test-data-service:
test-analyse-service:
image: docker.io/python:3.11-alpine
stage: test
except:
refs:
- /^release-.*/
variables:
PIPENV_PIPFILE: "./dbrepo-analyse-service/Pipfile"
needs:
......@@ -293,9 +254,6 @@ test-analyse-service:
test-search-service:
image: docker.io/python:3.11-alpine
stage: test
except:
refs:
- /^release-.*/
variables:
PIPENV_PIPFILE: "./dbrepo-search-service/Pipfile"
needs:
......@@ -320,9 +278,6 @@ test-search-service:
test-lib:
image: docker.io/python:3.11-alpine
stage: test
except:
refs:
- /^release-.*/
variables:
PIPENV_PIPFILE: "./lib/python/Pipfile"
needs:
......@@ -404,9 +359,6 @@ release-helm:
refs:
- /^release-.*/
when: manual
except:
refs:
- release-latest
before_script:
- "docker logout ${CI_REGISTRY_URL}"
- "echo ${CI_REGISTRY_PASSWORD} | docker login --username ${CI_REGISTRY_USER} --password-stdin ${CI_REGISTRY_URL}"
......@@ -429,7 +381,7 @@ release-docs:
refs:
- /^release-.*/
before_script:
- "apk add --update alpine-sdk bash sed wget openssh"
- "apk add --update alpine-sdk bash sed wget openssh jq curl"
- "pip install pipenv"
- "pip install -r ./requirements.txt"
- "mkdir -p ./final/${APP_VERSION}/rest"
......@@ -441,6 +393,7 @@ release-docs:
- "cp .docs/.swagger/custom.css ./final/${APP_VERSION}/rest/custom.css" # swagger
- "cp -r ./site/* ./final/${APP_VERSION}" # mkdocs
- "cp .docker/dist.tar.gz ./final/${APP_VERSION}/dist.tar.gz" # dist
- "bash ./.gitlab/gen-badge.sh"
- eval $(ssh-agent -s)
- "mkdir -p /root/.ssh"
- echo "$CI_KEY_PRIVATE" > /root/.ssh/id_rsa && chmod 0600 /root/.ssh/id_rsa
......@@ -468,3 +421,15 @@ release-libs:
script:
- bash ./lib/python/package.sh
- bash ./lib/python/release.sh
release-gitlab:
stage: release
image: docker.io/alpine:3.18
when: manual
only:
refs:
- /^release-.*/
before_script:
- "apk add bash curl"
script:
- bash -ec "curl -fsSL -X POST -H \"Content-Type: application/json\" -H \"PRIVATE-TOKEN: ${CI_TOKEN}\" --data '{\"name\": \"v${APP_VERSION}\", \"tag_name\": \"v${APP_VERSION}\", \"ref\": \"${CI_COMMIT_BRANCH}\", \"description\": \"Automated release from CI/CD\"}' https://gitlab.phaidra.org/api/v4/projects/450/releases"
\ No newline at end of file
#!/bin/bash
GITLAB_URL="https://gitlab.phaidra.org"
# if we reached this script, all the tests have passed
anybadge --label pipeline --value "passed" failed=red passed=green canceled=darkgray > "./final/${APP_VERSION}/images/pipeline.svg"
PIPELINE_COVERAGE=$(curl -fsSL -H "PRIVATE-TOKEN: ${CI_TOKEN}" "${GITLAB_URL}/api/v4/projects/450/pipelines/latest?ref=${CI_COMMIT_BRANCH}" | jq --raw-output .coverage)
echo "[INFO] pipeline coverage: ${PIPELINE_COVERAGE}"
if [ "${PIPELINE_COVERAGE}" != "null" ]; then
anybadge --label coverage --value "${PIPELINE_COVERAGE}" coverage > "./final/${APP_VERSION}/images/coverage.svg"
else
echo "[WARNING] Skipping badge generation, displaying default badge text: unknown"
fi
......@@ -29,5 +29,5 @@ dependencies:
- name: prometheus
repository: https://charts.bitnami.com/bitnami
version: 1.3.22
digest: sha256:8f67589f08da255fba018e5a8eec1c0ae736a5ee775d958eee9b45a5bda57f0a
generated: "2024-09-27T09:21:08.969905261+02:00"
digest: sha256:5d2c18d8f42cdade4d83cc8906d8b3f31104fb7bb46a6b682348fceaa09258b5
generated: "2024-09-28T10:34:39.251599835+02:00"
This diff is collapsed.
No preview for this file type
......@@ -356,6 +356,14 @@
},
"type": "object"
},
"metrics": {
"properties": {
"enabled": {
"type": "boolean"
}
},
"type": "object"
},
"persistence": {
"properties": {
"enabled": {
......@@ -397,22 +405,88 @@
"type": "string"
},
"dashboardservice": {
"properties": {
"dashboardsProvider": {
"properties": {
"enabled": {
"type": "boolean"
}
},
"type": "object"
},
"datasources": {
"properties": {
"secretDefinition": {
"properties": {
"apiVersion": {
"type": "integer"
},
"datasources": {
"items": {
"properties": {
"name": {
"type": "string"
},
"type": {
"type": "string"
},
"uid": {
"type": "string"
},
"envFromSecret": {
"url": {
"type": "string"
}
},
"type": "object"
},
"type": "array"
}
},
"type": "object"
}
},
"type": "object"
},
"enabled": {
"type": "boolean"
},
"fullnameOverride": {
"type": "string"
},
"grafana": {
"properties": {
"extraConfigmaps": {
"items": {
"properties": {
"mountPath": {
"type": "string"
},
"name": {
"type": "string"
},
"readOnly": {
"type": "boolean"
}
},
"type": "object"
},
"type": "array"
},
"extraEnvVarsSecret": {
"type": "string"
}
},
"type": "object"
},
"ldap": {
"properties": {
"allowSignUp": {
"type": "boolean"
},
"enabled": {
"type": "boolean"
},
"existingSecret": {
"secretName": {
"type": "string"
}
},
......@@ -437,12 +511,8 @@
},
"type": "object"
},
"enabled": {
"type": "boolean"
},
"fullnameOverride": {
"type": "string"
},
"database": {
"properties": {
"image": {
"properties": {
"debug": {
......@@ -470,6 +540,15 @@
},
"type": "object"
},
"enabled": {
"type": "boolean"
},
"fullnameOverride": {
"type": "string"
}
},
"type": "object"
},
"dataservice": {
"properties": {
"containerSecurityContext": {
......@@ -1114,6 +1193,79 @@
},
"type": "object"
},
"metricdb": {
"properties": {
"alertmanager": {
"properties": {
"service": {
"properties": {
"type": {
"type": "string"
}
},
"type": "object"
}
},
"type": "object"
},
"enabled": {
"type": "boolean"
},
"fullnameOverride": {
"type": "string"
},
"server": {
"properties": {
"extraScrapeConfigs": {
"items": {
"properties": {
"job_name": {
"type": "string"
},
"metrics_path": {
"type": "string"
},
"static_configs": {
"items": {
"properties": {
"targets": {
"items": {
"type": "string"
},
"type": "array"
}
},
"type": "object"
},
"type": "array"
}
},
"type": "object"
},
"type": "array"
},
"persistence": {
"properties": {
"enabled": {
"type": "boolean"
}
},
"type": "object"
},
"service": {
"properties": {
"type": {
"type": "string"
}
},
"type": "object"
}
},
"type": "object"
}
},
"type": "object"
},
"searchdb": {
"properties": {
"clusterName": {
......@@ -1332,6 +1484,14 @@
"properties": {
"enabled": {
"type": "boolean"
},
"metrics": {
"properties": {
"enabled": {
"type": "boolean"
}
},
"type": "object"
}
},
"type": "object"
......
......@@ -812,11 +812,13 @@ dashboardservice:
grafana:
## @skip dashboardservice.grafana.extraEnvVarsSecret
extraEnvVarsSecret: dashboard-service-secret
## @skip dashboardservice.grafana.extraConfigmaps
extraConfigmaps:
- name: dashboard-service-config
mountPath: /opt/bitnami/grafana/dashboards
readOnly: true
datasources:
## @skip dashboardservice.datasources.secretDefinition
secretDefinition:
apiVersion: 1
datasources:
......@@ -825,6 +827,7 @@ dashboardservice:
type: "prometheus"
url: "http://metric-db-server"
dashboardsProvider:
## @param dashboardservice.dashboardsProvider.enabled Enable the default dashboard provisioning provider to routinely import dashboards from /opt/bitnami/grafana/dashboards
enabled: true
## @section Metric Service
......
......@@ -34,7 +34,7 @@ requires = [
build-backend = "setuptools.build_meta"
[project.urls]
Homepage = "https://www.ifs.tuwien.ac.at/infrastructures/dbrepo/1.4.4/"
Documentation = "https://www.ifs.tuwien.ac.at/infrastructures/dbrepo/1.4.4/python/"
Homepage = "https://www.ifs.tuwien.ac.at/infrastructures/dbrepo/1.4.6/"
Documentation = "https://www.ifs.tuwien.ac.at/infrastructures/dbrepo/1.4.6/python/"
Issues = "https://gitlab.phaidra.org/fair-data-austria-db-repository/fda-services/-/issues"
Source = "https://gitlab.phaidra.org/fair-data-austria-db-repository/fda-services/"
\ No newline at end of file
......@@ -19,8 +19,8 @@ package-config: ## Package the config files
cp ./dbrepo-broker-service/advanced.config ./.docker/config
cp ./dbrepo-dashboard-service/grafana.ini ./.docker/config
cp ./dbrepo-dashboard-service/ldap.toml ./.docker/config
cp ./dbrepo-dashboard-service/dashboards ./.docker/config
cp ./dbrepo-dashboard-service/provisioning ./.docker/config
cp -r ./dbrepo-dashboard-service/dashboards ./.docker/config
cp -r ./dbrepo-dashboard-service/provisioning ./.docker/config
cp ./dbrepo-gateway-service/dbrepo.conf ./.docker/config
cp ./dbrepo-metric-db/prometheus.yml ./.docker/config
cp ./dbrepo-storage-service/s3_config.json ./.docker/config
......
......@@ -15,3 +15,4 @@ pika==1.3.2
pydantic==2.6.4
tuspy==1.0.3
mike==2.0.0
anybadge==1.14.0
\ No newline at end of file
......@@ -2,7 +2,7 @@
sonar.projectKey=fair-data-austria-db-repository_fda-services_a57fa043-ab99-4cdd-a721-162d9a916d77
sonar.host.url=https://s34.datalab.tuwien.ac.at
# project
sonar.projectVersion=1.4.4
sonar.projectVersion=1.4.6
# general
sonar.qualitygate.wait=true
sonar.projectCreation.mainBranchName=master
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please to comment