🎉 Init

This commit is contained in:
andreas.dinauer 2025-10-26 15:19:02 +01:00
commit c8df276dc1
13 changed files with 128 additions and 0 deletions

8
.idea/.gitignore generated vendored Normal file
View File

@ -0,0 +1,8 @@
# Default ignored files
/shelf/
/workspace.xml
# Editor-based HTTP Client requests
/httpRequests/
# Datasource local storage ignored files
/dataSources/
/dataSources.local.xml

6
.idea/misc.xml generated Normal file
View File

@ -0,0 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ProjectRootManager">
<output url="file://$PROJECT_DIR$/out" />
</component>
</project>

8
.idea/modules.xml generated Normal file
View File

@ -0,0 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ProjectModuleManager">
<modules>
<module fileurl="file://$PROJECT_DIR$/helm.iml" filepath="$PROJECT_DIR$/helm.iml" />
</modules>
</component>
</project>

6
.idea/vcs.xml generated Normal file
View File

@ -0,0 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="VcsDirectoryMappings">
<mapping directory="$PROJECT_DIR$" vcs="Git" />
</component>
</project>

28
Jenkinsfile vendored Normal file
View File

@ -0,0 +1,28 @@
pipeline {
agent any
stages {
stage('Log into harbor') {
steps {
withCredentials([usernamePassword(credentialsId: 'harbor', usernameVariable: 'USERNAME', passwordVariable: 'PASSWORD')]) {
sh 'helm registry login harbor.dinauer.dev -u ${USERNAME} -p ${PASSWORD}'
}
}
}
stage('Package helm chart') {
steps {
sh 'helm package ./chart'
}
}
stage('Push helm chart') {
steps {
sh 'helm push kubooboo-chart-*.tgz oci://harbor.dinauer.dev/kubooboo'
}
}
stage('Clean workspace') {
steps {
cleanWs()
}
}
}
}

3
chart/Chart.yaml Normal file
View File

@ -0,0 +1,3 @@
apiVersion: v2
name: kubooboo-chart
version: 0.0.1

View File

View File

View File

@ -0,0 +1,27 @@
apiVersion: apps/v1
kind: Deployment
metadata:
name: frontend-deployment
labels:
app: frontend
spec:
replicas: {{ .Values.frontend.replicas }}
selector:
matchLabels:
app: frontend
template:
metadata:
labels:
app: frontend
spec:
containers:
- name: frontend-pod
resources:
requests:
memory: "64Mi"
cpu: "100m"
limits:
memory: "128Mi"
image: harbor.dinauer.dev/kubooboo/frontend:4
ports:
- containerPort: 3000

View File

@ -0,0 +1,13 @@
apiVersion: v1
kind: Service
metadata:
name: frontend-service
labels:
app: frontend
spec:
ports:
- port: 80
protocol: TCP
targetPort: 3000
selector:
app: frontend

View File

@ -0,0 +1,19 @@
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: ingress
annotations:
nginx.ingress.kubernetes.io/rewrite-target: /
spec:
ingressClassName: nginx
rules:
- host: kubooboo.dinauer.dev
http:
paths:
- path: /
pathType: Prefix
backend:
service:
name: frontend
port:
number: 80

2
chart/values.yaml Normal file
View File

@ -0,0 +1,2 @@
frontend:
replicas: 1

8
helm.iml Normal file
View File

@ -0,0 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<module type="GENERAL_MODULE" version="4">
<component name="NewModuleRootManager" inherit-compiler-output="true">
<exclude-output />
<content url="file://$MODULE_DIR$" />
<orderEntry type="sourceFolder" forTests="false" />
</component>
</module>