diff --git a/app-of-apps/application-dev.yaml b/app-of-apps/application-dev.yaml new file mode 100644 index 0000000..08a5a36 --- /dev/null +++ b/app-of-apps/application-dev.yaml @@ -0,0 +1,25 @@ +apiVersion: argoproj.io/v1alpha1 +kind: Application +metadata: + name: test-missingvars-nov8-app + namespace: ai-rhdh + finalizers: ["resources-finalizer.argocd.argoproj.io"] +spec: + project: default + source: + path: ./components/test-missingvars-nov8/overlays/development + repoURL: https://github.com/jdubrick-ai/test-missingvars-nov8-gitops.git + targetRevision: main + destination: + namespace: rhdh-app + server: https://kubernetes.default.svc + syncPolicy: + managedNamespaceMetadata: + labels: + argocd.argoproj.io/managed-by: ai-rhdh + automated: + prune: true + selfHeal: true + syncOptions: + - CreateNamespace=true + - PruneLast=true diff --git a/app-of-apps/kustomization.yaml b/app-of-apps/kustomization.yaml new file mode 100644 index 0000000..742e06f --- /dev/null +++ b/app-of-apps/kustomization.yaml @@ -0,0 +1,10 @@ +apiVersion: kustomize.config.k8s.io/v1beta1 +kind: Kustomization +commonLabels: + rhtap/gitops: test-missingvars-nov8 + janus-idp.io/tekton: test-missingvars-nov8 + backstage.io/kubernetes-id: test-missingvars-nov8 + backstage.io/kubernetes-namespace: rhdh-app + app.kubernetes.io/part-of: test-missingvars-nov8 +resources: +- application-dev.yaml \ No newline at end of file diff --git a/application.yaml b/application.yaml new file mode 100644 index 0000000..355d477 --- /dev/null +++ b/application.yaml @@ -0,0 +1,25 @@ +apiVersion: argoproj.io/v1alpha1 +kind: Application +metadata: + name: test-missingvars-nov8 + namespace: ai-rhdh + finalizers: ["resources-finalizer.argocd.argoproj.io"] +spec: + project: default + source: + path: ./app-of-apps + repoURL: https://github.com/jdubrick-ai/test-missingvars-nov8-gitops.git + targetRevision: main + destination: + namespace: rhdh-app + server: https://kubernetes.default.svc + syncPolicy: + managedNamespaceMetadata: + labels: + argocd.argoproj.io/managed-by: ai-rhdh + automated: + prune: true + selfHeal: true + syncOptions: + - CreateNamespace=true + - PruneLast=true diff --git a/catalog-info.yaml b/catalog-info.yaml new file mode 100644 index 0000000..4774607 --- /dev/null +++ b/catalog-info.yaml @@ -0,0 +1,21 @@ +apiVersion: backstage.io/v1alpha1 +kind: Resource +metadata: + name: test-missingvars-nov8-gitops + description: This is GitOps manifest for test-missingvars-nov8 + links: + - url: https://www.redhat.com/en/solutions/trusted-software-supply-chain + title: Trusted Secure Supply Chain + icon: dashboard + type: admin-dashboard + annotations: + argocd/app-name: test-missingvars-nov8 + janus-idp.io/tekton: test-missingvars-nov8 + backstage.io/kubernetes-id: test-missingvars-nov8 + backstage.io/techdocs-ref: dir:. +spec: + type: gitops + owner: user:guest + lifecycle: experimental + dependsOn: + - component:test-missingvars-nov8 diff --git a/components/test-missingvars-nov8/base/database-config.yaml b/components/test-missingvars-nov8/base/database-config.yaml new file mode 100644 index 0000000..fe20d11 --- /dev/null +++ b/components/test-missingvars-nov8/base/database-config.yaml @@ -0,0 +1,7 @@ +apiVersion: v1 +kind: ConfigMap +metadata: + name: test-missingvars-nov8-database-config +data: + VECTORDB_HOST: "test-missingvars-nov8-database" + VECTORDB_PORT: "" diff --git a/components/test-missingvars-nov8/base/deployment-database.yaml b/components/test-missingvars-nov8/base/deployment-database.yaml new file mode 100644 index 0000000..20ccb71 --- /dev/null +++ b/components/test-missingvars-nov8/base/deployment-database.yaml @@ -0,0 +1,38 @@ +apiVersion: apps/v1 +kind: Deployment +metadata: + labels: + app.kubernetes.io/instance: test-missingvars-nov8-database + app.kubernetes.io/managed-by: kustomize + app.kubernetes.io/name: test-missingvars-nov8-database + app.kubernetes.io/part-of: test-missingvars-nov8 + name: test-missingvars-nov8-database +spec: + replicas: 1 + selector: + matchLabels: + app.kubernetes.io/instance: test-missingvars-nov8-database + template: + metadata: + labels: + app.kubernetes.io/instance: test-missingvars-nov8-database + spec: + containers: + - image: + name: database + args: [ + "--workers", + "1", + "--host", + "0.0.0.0", + "--port", + "", + "--proxy-headers", + "--log-config", + "chromadb/log_config.yml", + "--timeout-keep-alive", + "30"] + ports: + - containerPort: + securityContext: + runAsNonRoot: true diff --git a/components/test-missingvars-nov8/base/deployment-model-server.yaml b/components/test-missingvars-nov8/base/deployment-model-server.yaml new file mode 100644 index 0000000..8c01687 --- /dev/null +++ b/components/test-missingvars-nov8/base/deployment-model-server.yaml @@ -0,0 +1,48 @@ +apiVersion: apps/v1 +kind: Deployment +metadata: + labels: + app.kubernetes.io/instance: test-missingvars-nov8-model-server + app.kubernetes.io/managed-by: kustomize + app.kubernetes.io/name: test-missingvars-nov8-model-server + app.kubernetes.io/part-of: test-missingvars-nov8 + name: test-missingvars-nov8-model-server +spec: + replicas: 1 + selector: + matchLabels: + app.kubernetes.io/instance: test-missingvars-nov8-model-server + template: + metadata: + labels: + app.kubernetes.io/instance: test-missingvars-nov8-model-server + spec: + initContainers: + - name: model-file + image: quay.io/redhat-ai-dev/granite-7b-lab:latest + command: ['/usr/bin/install', '/model/model.file', '/shared/'] + volumeMounts: + - name: model-file + mountPath: /shared + containers: + - env: + - name: HOST + value: "0.0.0.0" + - name: PORT + value: "8001" + - name: MODEL_PATH + value: /model/model.file + - name: CHAT_FORMAT + value: openchat + image: quay.io/ai-lab/llamacpp_python:latest + volumeMounts: + - name: model-file + mountPath: /model + name: app-model-service + ports: + - containerPort: 8001 + securityContext: + runAsNonRoot: true + volumes: + - name: model-file + emptyDir: {} diff --git a/components/test-missingvars-nov8/base/deployment.yaml b/components/test-missingvars-nov8/base/deployment.yaml new file mode 100644 index 0000000..3cbedfe --- /dev/null +++ b/components/test-missingvars-nov8/base/deployment.yaml @@ -0,0 +1,34 @@ +apiVersion: apps/v1 +kind: Deployment +metadata: + annotations: + tad.gitops.set/image: ".spec.template.spec.containers[0].image" + tad.gitops.get/image: ".spec.template.spec.containers[0].image" + tad.gitops.set/replicas: ".spec.replicas" + tad.gitops.get/replicas: ".spec.replicas" + labels: + app.kubernetes.io/instance: test-missingvars-nov8 + app.kubernetes.io/managed-by: kustomize + app.kubernetes.io/name: test-missingvars-nov8 + app.kubernetes.io/part-of: test-missingvars-nov8 + name: test-missingvars-nov8 +spec: + replicas: 1 + selector: + matchLabels: + app.kubernetes.io/instance: test-missingvars-nov8 + template: + metadata: + labels: + app.kubernetes.io/instance: test-missingvars-nov8 + spec: + containers: + - image: quay.io/redhat-ai-dev/ai-template-bootstrap-app:latest + name: app-inference + envFrom: + - configMapRef: + name: test-missingvars-nov8-model-config + ports: + - containerPort: 8501 + securityContext: + runAsNonRoot: true diff --git a/components/test-missingvars-nov8/base/initialize-namespace.yaml b/components/test-missingvars-nov8/base/initialize-namespace.yaml new file mode 100644 index 0000000..8b36a2d --- /dev/null +++ b/components/test-missingvars-nov8/base/initialize-namespace.yaml @@ -0,0 +1,42 @@ +apiVersion: batch/v1 +kind: Job +metadata: + name: initialize-namespace-test-missingvars-nov8-gitops +spec: + template: + metadata: + name: initialize-namespace-test-missingvars-nov8-gitops + spec: + serviceAccountName: pipeline + containers: + - name: initialize-namespace + image: quay.io/redhat-ai-dev/utils:latest + command: + - /bin/bash + - -c + - | + NS=$(cat /var/run/secrets/kubernetes.io/serviceaccount/namespace) + echo "Initialize RHDH Namespace: $NS" + cat </dev/null 2>&1 ; then + echo "The image stream does not exist, a new image stream will be created" + cat <