Compare commits

..

5 Commits

9 changed files with 108 additions and 2 deletions

17
.gitlab-ci.yml Normal file
View File

@ -0,0 +1,17 @@
stages:
- build
rust-latest:
stage: build
image: rust:latest
script:
- cargo build
- cargo test
tags:
- local
artifacts:
paths:
- target/debug/telegram-leetbot
name: "leetbot-debug"
expose_as: "leetbot"

View File

@ -1,7 +1,7 @@
FROM debian FROM debian
RUN apt update RUN apt update
RUN apt install libssl1.1 openssl ca-certificates RUN apt install -y libssl1.1 openssl ca-certificates
ADD target/release/telegram-leetbot /bin/. ADD target/release/telegram-leetbot /bin/.

2
Jenkinsfile vendored
View File

@ -32,7 +32,7 @@ pipeline {
success { success {
unstash 'app' unstash 'app'
archiveArtifacts artifacts: 'target/debug/telegram-leetbot', fingerprint: true archiveArtifacts artifacts: 'target/release/telegram-leetbot', fingerprint: true
} }
} }
} }

16
chart/Chart.yaml Normal file
View File

@ -0,0 +1,16 @@
apiVersion: v2
name: leetbot
description: Telegram bot that counts leet points
type: application
# This is the chart version. This version number should be incremented each time you make changes
# to the chart and its templates, including the app version.
# Versions are expected to follow Semantic Versioning (https://semver.org/)
version: 0.1.0
# This is the version number of the application being deployed. This version number should be
# incremented each time you make changes to the application. Versions are not expected to
# follow Semantic Versioning. They should reflect the version the application is using.
# It is recommended to use it with quotes.
appVersion: "0.1.0"

6
chart/templates/cm.yml Normal file
View File

@ -0,0 +1,6 @@
apiVersion: v1
kind: ConfigMap
metadata:
name: {{ .Release.Name }}-cm
data:
TZ: {{ .Values.app.tz }}

View File

@ -0,0 +1,36 @@
apiVersion: apps/v1
kind: Deployment
metadata:
name: {{ .Release.Name }}
labels:
release: {{ .Release.Name }}
spec:
selector:
matchLabels:
release: {{ .Release.Name }}
replicas: 1
template:
metadata:
labels:
release: {{ .Release.Name }}
spec:
containers:
- image: {{ .Values.image.repository }}:{{ .Values.image.tag | default "latest" }}
name: leetbot
envFrom:
- secretRef:
name: {{ .Release.Name }}-token
- configMapRef:
name: {{ .Release.Name }}-cm
{{- if .Values.storage.enabled }}
volumeMounts:
- name: app-data
mountPath: '/app'
readOnly: false
{{- end }}
volumes:
{{- if .Values.storage.enabled }}
- name: app-data
persistentVolumeClaim:
claimName: {{ .Release.Name }}-pvc
{{- end }}

15
chart/templates/pvc.yml Normal file
View File

@ -0,0 +1,15 @@
{{- if .Values.storage.enabled }}
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: {{ .Release.Name }}-pvc
labels:
release: {{ .Release.Name }}
spec:
accessModes:
- ReadWriteOnce
storageClassName: {{ .Values.storage.storageClass }}
resources:
requests:
storage: 1Gi
{{- end }}

View File

@ -0,0 +1,6 @@
apiVersion: v1
kind: Secret
metadata:
name: {{ .Release.Name }}-token
data:
TELEGRAM_BOT_TOKEN: {{ .Values.app.token }}

10
chart/values.yaml Normal file
View File

@ -0,0 +1,10 @@
image:
repository: registry.local/northcode/leetbot
app:
token: blabla
tz: Europe/Oslo
storage:
enabled: true
storageClass: local-path