Skip to content

Commit

Permalink
Merge branch 'project-sunbird:sb-djp' into sb-djp
Browse files Browse the repository at this point in the history
  • Loading branch information
sanketnagdive authored Dec 7, 2023
2 parents 67b898c + 2784775 commit 0396c8e
Show file tree
Hide file tree
Showing 6 changed files with 173 additions and 0 deletions.
5 changes: 5 additions & 0 deletions kubernetes/helm_charts/VABots/kathaasagar/Chart.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
apiVersion: v1
appVersion: "1.0"
description: A Helm chart for Kubernetes
name: kathaasaagra
version: 0.1.0
14 changes: 14 additions & 0 deletions kubernetes/helm_charts/VABots/kathaasagar/templates/configmap.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
apiVersion: v1
kind: ConfigMap
metadata:
name: {{ .Chart.Name }}-config
data:
GOOGLE_APPLICATION_CREDENTIALS: "{{ .Values.ks_gcp_credential_json_path }}"
BUCKET_NAME: "{{ .Values.ks_gcp_bucket_name }}"
DATABASE_NAME: "{{ .Values.ks_postgress_db_name }}"
DATABASE_USERNAME: "{{ .Values.ks_postgres_db_username }}"
DATABASE_PASSWORD: "{{ .Values.ks_postgres_db_password }}"
DATABASE_IP: "{{ .Values.ks_postgres_db_host }}"
DATABASE_PORT: "{{ .Values.ks_postgres_db_port }}"
OPENAI_API_KEY: "{{ .Values.ks_open_api_key }}"

Original file line number Diff line number Diff line change
@@ -0,0 +1,60 @@
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: {{ .Chart.Name }}
namespace: {{ .Values.namespace }}
annotations:
reloader.stakater.com/auto: "true"
spec:
replicas: {{ .Values.replicaCount }}
strategy:
rollingUpdate:
maxSurge: {{ .Values.strategy.maxsurge }}
maxUnavailable: {{ .Values.strategy.maxunavailable }}
selector:
matchLabels:
app: {{ .Chart.Name }}
template:
metadata:
labels:
app: {{ .Chart.Name }}
spec:
{{- if .Values.imagepullsecrets }}
imagePullSecrets:
- name: {{ .Values.imagepullsecrets }}
{{- end }}
containers:
- name: {{ .Chart.Name }}
image: "{{ .Values.dockerhub }}/{{ .Values.repository }}:{{ .Values.image_tag }}"
imagePullPolicy: Always
envFrom:
- configMapRef:
name: {{ .Chart.Name }}-config
resources:
{{ toYaml .Values.resources | indent 10 }}
ports:
- containerPort: {{ .Values.network.port }}
# {{- if .Values.healthcheck }}
# livenessProbe:
#{{ toYaml .Values.livenessProbe | indent 10 }}
# readinessProbe:
#{{ toYaml .Values.readinessProbe | indent 10 }}
#{{- end }}

---

apiVersion: v1
kind: Service
metadata:
name: {{ .Chart.Name }}-service
namespace: {{ .Values.namespace }}
labels:
app: {{ .Chart.Name }}
spec:
ports:
- name: http-{{ .Chart.Name }}
protocol: TCP
port: {{ .Values.network.targetport }}
selector:
app: {{ .Chart.Name }}
31 changes: 31 additions & 0 deletions kubernetes/helm_charts/VABots/kathaasagar/templates/hpa.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
{{- if .Values.autoscaling.enabled }}
apiVersion: autoscaling/v2
kind: HorizontalPodAutoscaler
metadata:
name: {{ .Chart.Name }}
namespace: {{ .Values.namespace }}
spec:
scaleTargetRef:
apiVersion: apps/v1
kind: Deployment
name: {{ .Chart.Name }}
minReplicas: {{ .Values.autoscaling.minReplicas }}
maxReplicas: {{ .Values.autoscaling.maxReplicas }}
metrics:
{{- if .Values.autoscaling.targetCPUUtilizationPercentage }}
- type: Resource
resource:
name: cpu
target:
type: Utilization
averageUtilization: {{ .Values.autoscaling.targetCPUUtilizationPercentage }}
{{- end }}
{{- if .Values.autoscaling.targetMemoryUtilizationPercentage }}
- type: Resource
resource:
name: memory
target:
type: Utilization
averageUtilization: {{ .Values.autoscaling.targetMemoryUtilizationPercentage }}
{{- end }}
{{- end }}
32 changes: 32 additions & 0 deletions kubernetes/helm_charts/VABots/kathaasagar/values.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
### Default variable file for kathaasaagra-service ###

namespace: ""
imagepullsecrets: ""
dockerhub: ""

replicaCount: 1
repository: ""
image_tag: ""
resources:
requests:
cpu: 100m
memory: 100Mi
limits:
cpu: 1
memory: 1024Mi
network:
port: 8000
targetport: 8000
strategy:
type: RollingUpdate
maxsurge: 25
maxunavailable: 25

#{{ kathaasaagra_liveness_readiness | to_nice_yaml }}

autoscaling:
enabled: false
minReplicas: 1
maxReplicas: 2
targetCPUUtilizationPercentage: 60
targetMemoryUtilizationPercentage: ""
31 changes: 31 additions & 0 deletions kubernetes/pipelines/VABots/Jenkinsfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
pipeline {
agent any

stages {
stage('Checkout helm chart') {
steps {
checkout scm
}
}
stage('checkout private repo') {
steps {
dir('private_repo') {
git branch: private_repo_branch, credentialsId: private_repo_credentials, url: private_repo_url
}
}
}
stage('Deploy') {
steps {
script {
jobName = sh(returnStdout: true, script: "echo $JOB_NAME").split('/')[-1].trim().toLowerCase()
currentWs = sh(returnStdout: true, script: 'pwd').trim()
chart_path = "${currentWs}/kubernetes/helm_charts/VABots/$jobName"
values_file = "${currentWs}/private_repo/ansible/inventory/dev/VABots/${jobName}_values.yaml"
sh "helm upgrade --install $jobName $chart_path --namespace $vabots_namespace --kubeconfig $kubeconfig_path -f $values_file"
}
}
}
}

}

0 comments on commit 0396c8e

Please sign in to comment.