From d66178fc2d7ec4adb32ed0273f0841f45ce13869 Mon Sep 17 00:00:00 2001
From: Martin Weise <martin.weise@tuwien.ac.at>
Date: Sat, 16 Mar 2024 18:14:16 +0100
Subject: [PATCH] Doing git tags

---
 dbrepo-ui/Dockerfile          |  2 ++
 dbrepo-ui/layouts/default.vue | 22 +++++++++++++-
 dbrepo-ui/nuxt.config.ts      | 57 ++++++++++++++++++-----------------
 3 files changed, 52 insertions(+), 29 deletions(-)

diff --git a/dbrepo-ui/Dockerfile b/dbrepo-ui/Dockerfile
index e92f6c4da5..24dc409ce0 100644
--- a/dbrepo-ui/Dockerfile
+++ b/dbrepo-ui/Dockerfile
@@ -30,6 +30,7 @@ FROM oven/bun:1.0.26-alpine as runtime
 MAINTAINER Martin Weise <martin.weise@tuwien.ac.at>
 
 ARG TAG=""
+ARG CI_COMMIT_SHA=""
 
 USER 1000
 
@@ -38,6 +39,7 @@ WORKDIR /app
 COPY --from=build --chown=1000:1000 /app/.output /app/.output
 
 ENV NUXT_PUBLIC_VERSION="${TAG:-latest}"
+ENV NUXT_PUBLIC_COMMIT="${CI_COMMIT_SHA:-deadbeef}"
 
 EXPOSE 3000
 
diff --git a/dbrepo-ui/layouts/default.vue b/dbrepo-ui/layouts/default.vue
index ca8544ba13..e824897e55 100644
--- a/dbrepo-ui/layouts/default.vue
+++ b/dbrepo-ui/layouts/default.vue
@@ -58,6 +58,12 @@
             text="EN"
             size="x-small"
             @click="setLocale('en')" />
+          <v-btn
+            variant="plain"
+            :text="commitShort"
+            size="x-small"
+            prepend-icon="mdi-source-commit"
+            :href="`https://gitlab.phaidra.org/fair-data-austria-db-repository/fda-services/-/commit/${commit}`" />
           <v-btn
             variant="plain"
             prepend-icon="mdi-tag"
@@ -115,7 +121,9 @@
           to="/user"
           variant="plain"
           :text="user.username" />
-        <v-menu v-if="user" location="bottom">
+        <v-menu
+          v-if="user"
+          location="bottom">
           <template v-slot:activator="{ props }">
             <v-btn
               icon="mdi-dots-vertical"
@@ -144,6 +152,12 @@
   </v-app>
 </template>
 
+<script setup>
+const config = useRuntimeConfig()
+useServerHead({
+  title: config.public.title
+})
+</script>
 <script>
 import { useUserStore } from '@/stores/user'
 import { useCacheStore } from '@/stores/cache'
@@ -190,6 +204,12 @@ export default {
     title () {
       return this.$config.public.title
     },
+    commit () {
+      return this.$config.public.commit
+    },
+    commitShort () {
+      return this.$config.public.commit.substr(0, 8)
+    },
     canListOntologies () {
       if (!this.roles) {
         return false
diff --git a/dbrepo-ui/nuxt.config.ts b/dbrepo-ui/nuxt.config.ts
index 75e3170311..7bc41ddc83 100644
--- a/dbrepo-ui/nuxt.config.ts
+++ b/dbrepo-ui/nuxt.config.ts
@@ -45,15 +45,16 @@ export default defineNuxtConfig({
   ],
   runtimeConfig: {
     public: {
-      title: "Database Repository",
-      logo: "/logo.svg",
-      icon: "/favicon.ico",
-      touch: "/apple-touch-icon.png",
-      version: "bun-dev",
+      commit: 'aeeeeb0bb727616adba057c0907e6c3306a2f45b',
+      title: 'Database Repository',
+      logo: '/logo.svg',
+      icon: '/favicon.ico',
+      touch: '/apple-touch-icon.png',
+      version: 'bun-dev',
       broker: {
-        host: "localhost",
+        host: 'localhost',
         port: {
-          "5672": false
+          '5672': false
         },
         extra: null
       },
@@ -72,11 +73,11 @@ export default defineNuxtConfig({
         }
       },
       api: {
-        client: "http://localhost",
-        server: "http://gateway-service",
+        client: 'http://localhost',
+        server: 'http://gateway-service',
       },
       database: {
-        unsupported: "*,AVG,BIT_AND,BIT_OR,BIT_XOR,COUNT,COUNTDISTINCT,GROUP_CONCAT,JSON_ARRAYAGG,JSON_OBJECTAGG,MAX,MIN,STD,STDDEV,STDDEV_POP,STDDEV_SAMP,SUM,VARIANCE,VAR_POP,VAR_SAMP,--",
+        unsupported: '*,AVG,BIT_AND,BIT_OR,BIT_XOR,COUNT,COUNTDISTINCT,GROUP_CONCAT,JSON_ARRAYAGG,JSON_OBJECTAGG,MAX,MIN,STD,STDDEV,STDDEV_POP,STDDEV_SAMP,SUM,VARIANCE,VAR_POP,VAR_SAMP,--',
         image: {
           width: 400,
           height: 400
@@ -85,31 +86,31 @@ export default defineNuxtConfig({
       },
       pid: {
         default: {
-          publisher: "Example University"
+          publisher: 'Example University'
         }
       },
       doi: {
         enabled: false,
-        endpoint: "https://doi.org"
+        endpoint: 'https://doi.org'
       },
       links: {
         opensearch: {
-          text: "OpenSearch Admin",
-          href: "/admin/dashboard/"
+          text: 'OpenSearch Admin',
+          href: '/admin/dashboard/'
         },
         rabbitmq: {
-          text: "RabbitMQ Admin",
-          href: "/admin/broker/"
+          text: 'RabbitMQ Admin',
+          href: '/admin/broker/'
         },
         keycloak: {
-          text: "Keycloak Admin",
-          href: "/api/auth/"
+          text: 'Keycloak Admin',
+          href: '/api/auth/'
         }
       },
       keycloak: {
         client: {
-          id: "dbrepo-client",
-          secret: "MUwRc7yfXSJwX8AdRMWaQC3Nep1VjwgG"
+          id: 'dbrepo-client',
+          secret: 'MUwRc7yfXSJwX8AdRMWaQC3Nep1VjwgG'
         }
       }
     }
@@ -136,16 +137,16 @@ export default defineNuxtConfig({
     defaultLocale: 'de',
     locales: [
       {
-        "code": "en",
-        "file": "en-US.json",
-        "name": "English (US)",
-        "iso": "en-US"
+        'code': 'en',
+        'file': 'en-US.json',
+        'name': 'English (US)',
+        'iso': 'en-US'
       },
       {
-        "code": "de",
-        "file": "de-AT.json",
-        "name": "German (AT)",
-        "iso": "de-AT"
+        'code': 'de',
+        'file': 'de-AT.json',
+        'name': 'German (AT)',
+        'iso': 'de-AT'
       }
     ]
 
-- 
GitLab