Commit 4cebcdfd authored by Dimitrios Laskaratos's avatar Dimitrios Laskaratos
Browse files

Merge branch 'dev' into 'main'

Added gitlab CI file

See merge request !5
parents 63e66ed6 f6d72cf7
Loading
Loading
Loading
Loading
Loading

.gitlab-ci.yml

0 → 100644
+30 −0
Original line number Diff line number Diff line
stages:
  - build
  - push

variables:
  IMAGE_NAME: $CI_REGISTRY/$CI_PROJECT_PATH
  IMAGE_TAG: latest

before_script:
  - docker info

build:
  tags: 
    - "shell"
  stage: build
  script:
    - docker build -t $IMAGE_NAME:$IMAGE_TAG .
  only:
    - main

push:
  tags: 
    - "shell"
  stage: push
  script:
    - echo "$CI_REGISTRY_PASSWORD" | docker login -u "$CI_REGISTRY_USER" $CI_REGISTRY --password-stdin
    - docker tag $IMAGE_NAME:$IMAGE_TAG $CI_REGISTRY_IMAGE:$IMAGE_TAG
    - docker push $CI_REGISTRY_IMAGE:$IMAGE_TAG
  only:
    - main
+6 −7
Original line number Diff line number Diff line
@@ -33,9 +33,9 @@ spec:
      containers:
        - env:
            - name: KUBERNETES_MASTER_IP
              value: 
              value: k3d-sunriseop-server-0
            - name: KUBERNETES_MASTER_PORT
              value: 
              value: "6443"
            - name: K8S_NAMESPACE
              value: 
            - name: KUBERNETES_USERNAME
@@ -43,7 +43,7 @@ spec:
            - name: EMP_STORAGE_URI
              value: 
            - name: KUBERNETES_MASTER_TOKEN
              value: 
              value: eyJhbGciOiJSUzI1NiIsImtpZCI6IkRRS3VMNktkc1BOYk5ZeDhfSnFvVmJQdkJ6em1FODhPeHNIMHFya3JEQzgifQ.eyJpc3MiOiJrdWJlcm5ldGVzL3NlcnZpY2VhY2NvdW50Iiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9uYW1lc3BhY2UiOiJkZWZhdWx0Iiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9zZWNyZXQubmFtZSI6InNybS1zZWNyZXQiLCJrdWJlcm5ldGVzLmlvL3NlcnZpY2VhY2NvdW50L3NlcnZpY2UtYWNjb3VudC5uYW1lIjoiY2x1c3Rlci1hZG1pbiIsImt1YmVybmV0ZXMuaW8vc2VydmljZWFjY291bnQvc2VydmljZS1hY2NvdW50LnVpZCI6ImU1MjUxZjhiLWY2ODItNDU0Ni1hOTgxLWNlNTk0YTg2NmZiNCIsInN1YiI6InN5c3RlbTpzZXJ2aWNlYWNjb3VudDpkZWZhdWx0OmNsdXN0ZXItYWRtaW4ifQ.rnZyHFEE1ywceWqcio0UKQrp5GdfVGQOCXxx3RJpb_vvDj65GvNwN0VgA_anOlzj8kKJ9JQjWrA7an2k-5w0ycjeu8Ei_5Z0dvgRSpvKc4O5kCHddOB1kJl480hKWtZqgL0Vi6YbOziFGqvPd8hxHSTquxUgXEN2BStqII8MpVEK8z8iU2pJE5CNIaukGBozjlgc1Vb6HiEU4_UhlqG61uO6ReRVrzaYa4T1j4Zvvx1JN8t2HYcuv50QlHPrEAfW2F3ed0SBbb_X8AT0pGJrVas_uqZgMcN1j5BLO51RNmCY27ADHwCbj8HWuiHhyuLKQxYw8yKB-iMNQmq2fk3ezw
            - name: ARTIFACT_MANAGER_ADDRESS
              value: 
            - name: EDGE_CLOUD_ADAPTER_NAME
@@ -296,11 +296,10 @@ metadata:
    io.kompose.service: oeg
  name: oeg
spec:
  type: NodePort
  type: LoadBalancer
  ports:
    - name: "8080"
      nodePort: 32414
      port: 8080
      port: 8081
      targetPort: 8080
  selector:
    io.kompose.service: oegcontroller
+235 −33
Original line number Diff line number Diff line
@@ -33,18 +33,20 @@ spec:
            - name: KUBERNETES_USERNAME
              value: cluster-admin
            - name: K8S_NAMESPACE
              value: sunrise6g  
              value: test  
            - name: EMP_STORAGE_URI
              value: mongodb://mongopiedge:27017
              value: mongodb://mongosrm:27017
            - name: KUBERNETES_MASTER_TOKEN
              value: eyJhbGciOiJSUzI1NiIsImtpZCI6IkRRS3VMNktkc1BOYk5ZeDhfSnFvVmJQdkJ6em1FODhPeHNIMHFya3JEQzgifQ.eyJpc3MiOiJrdWJlcm5ldGVzL3NlcnZpY2VhY2NvdW50Iiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9uYW1lc3BhY2UiOiJkZWZhdWx0Iiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9zZWNyZXQubmFtZSI6InNybS1zZWNyZXQiLCJrdWJlcm5ldGVzLmlvL3NlcnZpY2VhY2NvdW50L3NlcnZpY2UtYWNjb3VudC5uYW1lIjoiY2x1c3Rlci1hZG1pbiIsImt1YmVybmV0ZXMuaW8vc2VydmljZWFjY291bnQvc2VydmljZS1hY2NvdW50LnVpZCI6ImU1MjUxZjhiLWY2ODItNDU0Ni1hOTgxLWNlNTk0YTg2NmZiNCIsInN1YiI6InN5c3RlbTpzZXJ2aWNlYWNjb3VudDpkZWZhdWx0OmNsdXN0ZXItYWRtaW4ifQ.rnZyHFEE1ywceWqcio0UKQrp5GdfVGQOCXxx3RJpb_vvDj65GvNwN0VgA_anOlzj8kKJ9JQjWrA7an2k-5w0ycjeu8Ei_5Z0dvgRSpvKc4O5kCHddOB1kJl480hKWtZqgL0Vi6YbOziFGqvPd8hxHSTquxUgXEN2BStqII8MpVEK8z8iU2pJE5CNIaukGBozjlgc1Vb6HiEU4_UhlqG61uO6ReRVrzaYa4T1j4Zvvx1JN8t2HYcuv50QlHPrEAfW2F3ed0SBbb_X8AT0pGJrVas_uqZgMcN1j5BLO51RNmCY27ADHwCbj8HWuiHhyuLKQxYw8yKB-iMNQmq2fk3ezw
              value: eyJhbGciOiJSUzI1NiIsImtpZCI6Img4UWI1cDR5MzRlV1FzZ0dsTTdIYmdwa1RKVlQ5aWZtSjJ3M2V2Q1RqazgifQ.eyJhdWQiOlsiaHR0cHM6Ly9rdWJlcm5ldGVzLmRlZmF1bHQuc3ZjLmNsdXN0ZXIubG9jYWwiLCJrM3MiXSwiZXhwIjoxNzg0NjQyNjMwLCJpYXQiOjE3NTMxMDY2MzAsImlzcyI6Imh0dHBzOi8va3ViZXJuZXRlcy5kZWZhdWx0LnN2Yy5jbHVzdGVyLmxvY2FsIiwianRpIjoiNWU4MDc0NDYtYmMzYy00OTI1LThhNWMtNjUxODQ2YWQ1ZGVmIiwia3ViZXJuZXRlcy5pbyI6eyJuYW1lc3BhY2UiOiJzdW5yaXNlNmciLCJzZXJ2aWNlYWNjb3VudCI6eyJuYW1lIjoic3VucmlzZS11c2VyIiwidWlkIjoiODFhMzAyNmQtYjcxMS00ZDJiLWEwYzktYjUwNmIwZjMwZTQyIn19LCJuYmYiOjE3NTMxMDY2MzAsInN1YiI6InN5c3RlbTpzZXJ2aWNlYWNjb3VudDpzdW5yaXNlNmc6c3VucmlzZS11c2VyIn0.c6EbyUuXhCp6M1qkte7nGLFI8fDvWNPvMo0X3HIAq26pezXKEpTAafbHdGgk5o37zdgFW5RU6y6eduzdA65G8FXmHfGWIn_3h5EUvlg7ZGz-Pxl4rXehidlN-7ct8Kb9qChoIocdQWOEpCSuBTb1dS5Opc6DAXTchDkSDKoRLys4F7gu8_0djmwbDNh-17xrdeFMP76qUnBANCv3xCMzFUmYyJIj4P3ZAju7ru6xVjJOi9CveeFfuQZpYXIt_1H3zKe9zxHma5G3d6zmsfsrbfPSGXazuphC98O4M8xAJvvbRAx56tpdFs6y-BgMyEBffPxpRCW0FU3Ey8idSUK-WQ
            - name: ARTIFACT_MANAGER_ADDRESS
              value: http://artefact-manager-service:8000
            - name: EDGE_CLOUD_ADAPTER_NAME
              value: kubernetes
            - name: ADAPTER_BASE_URL
              value: k3d-sunriseop-server-0  
            - name: PLATFORM_PROVIDER
              value: ISI
          image: ghcr.io/sunriseopenoperatorplatform/srm/srm:1.0.0
          image: ghcr.io/sunriseopenoperatorplatform/srm/srm:1.0.1
          name: srmcontroller
          ports:
            - containerPort: 8080
@@ -75,26 +77,6 @@ spec:
    io.kompose.service: srmcontroller
status:
  loadBalancer: {}

---
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  name: srm-ingress
  annotations:
    #traefik.ingress.kubernetes.io/router.entrypoints: web
spec:
  ingressClassName: nginx
  rules:
  - http:
        paths:
          - path: /srm
            pathType: Prefix
            backend:
              service:
                name: srm
                port:
                  number: 8080
---
kind: PersistentVolume
apiVersion: v1
@@ -102,7 +84,7 @@ metadata:
  name: mongodb-pv-volume  # Sets PV's name
  labels:
    type: local  # Sets PV's type to local
    app: mongopiedge
    app: mongosrm
spec:
  storageClassName: manual
  capacity:
@@ -136,13 +118,13 @@ metadata:
    kompose.version: 1.26.0 (40646f47)
  creationTimestamp: null
  labels:
    io.kompose.service: mongopiedge
  name: mongopiedge
    io.kompose.service: mongosrm
  name: mongosrm
spec:
  replicas: 1
  selector:
    matchLabels:
      io.kompose.service: mongopiedge
      io.kompose.service: mongosrm
  strategy:
    type: Recreate
  template:
@@ -153,11 +135,11 @@ spec:
      creationTimestamp: null
      labels:
        #io.kompose.network/netEMPkub: "true"
        io.kompose.service: mongopiedge
        io.kompose.service: mongosrm
    spec:
      containers:
        - image: mongo
          name: mongopiedge
          name: mongosrm
          ports:
            - containerPort: 27017
          resources: {}
@@ -179,8 +161,8 @@ metadata:
    kompose.version: 1.26.0 (40646f47)
  creationTimestamp: null
  labels:
    io.kompose.service: mongopiedge
  name: mongopiedge
    io.kompose.service: mongosrm
  name: mongosrm
spec:
  type: ClusterIP
  ports:
@@ -188,6 +170,226 @@ spec:
      port: 27017
      targetPort: 27017
  selector:
    io.kompose.service: mongopiedge
    io.kompose.service: mongosrm
status:
  loadBalancer: {}
---
kind: PersistentVolume
apiVersion: v1
metadata:
  name: mongodb-oeg-pv-volume  # Sets PV's name
  labels:
    type: local  # Sets PV's type to local
    app: oegmongo
spec:
  storageClassName: manual
  capacity:
    storage: 50Mi # Sets PV Volume
  accessModes:
    - ReadWriteOnce
  hostPath:
    path: "/mnt/data/mongodb_oeg"
---
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
  creationTimestamp: null
  labels:
    io.kompose.service: mongo-oeg
  name: mongo-oeg
spec:
  storageClassName: manual
  accessModes:
    - ReadWriteOnce
  resources:
    requests:
      storage: 50Mi
status: {}
---
apiVersion: apps/v1
kind: Deployment
metadata:
  annotations:
    kompose.cmd: kompose convert
    kompose.version: 1.26.0 (40646f47)
  creationTimestamp: null
  labels:
    io.kompose.service: oegmongo
  name: oegmongo
spec:
  replicas: 1
  selector:
    matchLabels:
      io.kompose.service: oegmongo
  strategy:
    type: Recreate
  template:
    metadata:
      annotations:
        kompose.cmd: kompose convert
        kompose.version: 1.26.0 (40646f47)
      creationTimestamp: null
      labels:
        #io.kompose.network/netEMPkub: "true"
        io.kompose.service: oegmongo
    spec:
      containers:
        - image: mongo
          name: oegmongo
          ports:
            - containerPort: 27017
          resources: {}
          volumeMounts:
            - mountPath: /data/db
              name: mongo-db
      restartPolicy: Always
      volumes:
        - name: mongo-db
          persistentVolumeClaim:
            claimName: mongo-oeg
status: {}
---
apiVersion: v1
kind: Service
metadata:
  annotations:
    kompose.cmd: kompose convert
    kompose.version: 1.26.0 (40646f47)
  creationTimestamp: null
  labels:
    io.kompose.service: oegmongo
  name: oegmongo
spec:
  type: ClusterIP
  ports:
    - name: "27017"
      port: 27017
      targetPort: 27017
  selector:
    io.kompose.service: oegmongo
status:
  loadBalancer: {}
---
apiVersion: apps/v1
kind: Deployment
metadata:
  annotations:
    kompose.cmd: kompose convert
    kompose.version: 1.26.0 (40646f47)
  creationTimestamp: null
  labels:
    io.kompose.service: oegcontroller
  name: oegcontroller
spec:
  replicas: 1
  selector:
    matchLabels:
      io.kompose.service: oegcontroller
  strategy: {}
  template:
    metadata:
      annotations:
        kompose.cmd: kompose convert
        kompose.version: 1.26.0 (40646f47)
      creationTimestamp: null
      labels:
        io.kompose.service: oegcontroller
    spec:
      containers:
        - env:
            - name: MONGO_URI
              value: mongodb://oegmongo:27017
            - name: SRM_HOST
              value: http://srm:8080/srm/1.0.0
            - name: JWT_ISSUER
              value: http://isiath.duckdns.org:8081/realms/federation
            - name: JWT_PUBLIC_KEY
              value: MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAnFHYObBh4Ar/s5/OG2swoUvmw25DNfX5j30itd3lFCzNnzXWobin/Jfywtj9HIXJ1euqiJMHchRgn7n0iY8X227/1+f+eml/bNs+roHtwP3GpO77ZLV/uP4RsGYbHUXKlGIf2EYglWNLs8ZNDFnpEIZzAEVzQrt1etr0HkwgwAKKkMbSdyRQTXoBgCPheyFgaLRtSHod4IijnBptolbK7LLKfkVaImQcs5R3GF81lM7cCtd1c+ERqZ2/pWAdlKHjt7zMuWWQypwVav59MgJprWv3oE9dvh5M0Ma+J4iH4DNiIzz6kYqAHpIJ1q813kjWlcUmwm4qSdgkDXwdGHxitwIDAQAB
            - name: FEDERATION_MANAGER_HOST
              value: http://federation-manager.federation-manager.svc.cluster.local:8989/operatorplatform/federation/v1
          image: ghcr.io/sunriseopenoperatorplatform/oeg/oeg:1.0.1
          name: oegcontroller
          ports:
            - containerPort: 8080
          resources: {}
          imagePullPolicy: Always
      restartPolicy: Always

status: {}
---
apiVersion: v1
kind: Service
metadata:
  name: oeg
  namespace: sunrise6g
spec:
  type: ClusterIP
  selector:
    io.kompose.service: oegcontroller
  ports:
    - name: http
      port: 80
      targetPort: 8080
---
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  name: oegcontroller-ingress
  namespace: sunrise6g
  annotations:
    traefik.ingress.kubernetes.io/router.entrypoints: web
    # traefik.ingress.kubernetes.io/rewrite-target: /$2
spec:
  ingressClassName: traefik
  rules:
    - host: isiath.duckdns.org
      http:
        paths:
          - path: /oeg
            pathType: Prefix
            backend:
              service:
                name: oeg
                port:
                  number: 80
---
apiVersion: apps/v1
kind: Deployment
metadata:
  name: artefact-manager
  namespace: sunrise6g
spec:
  replicas: 1
  selector:
    matchLabels:
      app: artefact-manager
  template:
    metadata:
      labels:
        app: artefact-manager
    spec:
      containers:
      - name: artefact-manager
        image: ghcr.io/sunriseopenoperatorplatform/artefactmanager:0.5
        ports:
        - containerPort: 8000
        env:
        - name: PYTHONPATH
          value: "/app"
---
apiVersion: v1
kind: Service
metadata:
  name: artefact-manager-service
  namespace: sunrise6g
spec:
  type: NodePort
  selector:
    app: artefact-manager
  ports:
  - protocol: TCP
    port: 8000
    targetPort: 8000
    nodePort: 30080  # Optional, must be between 30000–32767. Omit to let Kubernetes assign.