[flant] init repo

This commit is contained in:
Мостовой Владимир Андреевич 2026-09-09 17:09:02 +03:00
commit 7b548f3f0a
6 changed files with 162 additions and 0 deletions

3
.gitignore vendored Normal file
View File

@ -0,0 +1,3 @@
*.swp
.werf_secret_key
.idea

View File

@ -0,0 +1,7 @@
---
apiVersion: v1
kind: ServiceAccount
metadata:
name: {{ .Chart.Name }}-sa
annotations:
werf.io/weight: "-31"

View File

@ -0,0 +1,13 @@
---
apiVersion: deckhouse.io/v1alpha1
kind: SecretsStoreImport
metadata:
name: {{ .Chart.Name }}-ssi
spec:
type: CSI
role: "{{ .Values.werf.env }}-{{ .Chart.Name }}-role"
files:
- name: "s3.json"
source:
path: "{{ .Values.werf.env }}/data/{{ .Chart.Name }}"
key: "CONFIG"

View File

@ -0,0 +1,101 @@
{{- $nodeSelector := dig .Values.werf.env .Values.seaweedfs.nodeSelector._default .Values.seaweedfs.nodeSelector }}
{{- $tolerations := dig .Values.werf.env .Values.seaweedfs.tolerations._default .Values.seaweedfs.tolerations }}
---
apiVersion: apps/v1
kind: StatefulSet
metadata:
name: {{ .Chart.Name }}
labels:
app: {{ .Chart.Name }}
spec:
replicas: 1
selector:
matchLabels:
app: {{ .Chart.Name }}
template:
metadata:
labels:
app: {{ .Chart.Name }}
annotations:
secrets-store.deckhouse.io/role: "{{ .Values.werf.env }}-{{ .Chart.Name }}-role"
secrets-store.deckhouse.io/env-from-path: "{{ .Values.werf.env }}/data/{{ .Chart.Name }}"
spec:
serviceAccountName: {{ .Chart.Name }}-sa
imagePullSecrets:
- name: registrysecret
{{- if $nodeSelector }}
nodeSelector: {{ toYaml $nodeSelector | nindent 8 }}
{{- end }}
{{- if $tolerations }}
tolerations: {{ toYaml $tolerations | nindent 6 }}
{{- end }}
containers:
- name: seaweedfs
image: {{ .Values.werf.image.seaweedfs }}
command:
- weed
- server
- -dir=/data
- -s3
- -s3.config=/mnt/secrets/s3.json
- -metricsPort
- {{ .Values.seaweedfs.metricsPort | quote }}
imagePullPolicy: IfNotPresent
resources:
requests:
cpu: {{ dig .Values.werf.env .Values.seaweedfs.resources.requests.cpu._default .Values.seaweedfs.resources.requests.cpu }}
memory: {{ dig .Values.werf.env .Values.seaweedfs.resources.requests.memory._default .Values.seaweedfs.resources.requests.memory }}
limits:
memory: {{ dig .Values.werf.env .Values.seaweedfs.resources.limits.memory._default .Values.seaweedfs.resources.limits.memory }}
volumeMounts:
- name: data
mountPath: /data
subPath: seaweedfs
- name: secrets
mountPath: "/mnt/secrets"
readinessProbe:
tcpSocket:
port: {{ dig .Values.werf.env .Values.seaweedfs.port._default .Values.seaweedfs.port }}
initialDelaySeconds: 5
timeoutSeconds: 1
livenessProbe:
tcpSocket:
port: {{ dig .Values.werf.env .Values.seaweedfs.port._default .Values.seaweedfs.port }}
initialDelaySeconds: 30
periodSeconds: 5
ports:
- name: app
containerPort: {{ dig .Values.werf.env .Values.seaweedfs.port._default .Values.seaweedfs.port }}
- name: http-metrics
containerPort: {{ .Values.seaweedfs.metricsPort }}
volumes:
- name: secrets
csi:
driver: secrets-store.csi.deckhouse.io
volumeAttributes:
secretsStoreImport: {{ .Chart.Name }}-ssi
volumeClaimTemplates:
- metadata:
name: data
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: {{ dig .Values.werf.env .Values.seaweedfs.storage._default .Values.seaweedfs.storage }}
storageClassName: {{ dig .Values.werf.env .Values.seaweedfs.storageClassName._default .Values.seaweedfs.storageClassName }}
---
apiVersion: v1
kind: Service
metadata:
name: {{ .Chart.Name }}
labels:
prometheus.deckhouse.io/custom-target: {{ .Chart.Name }}
spec:
selector:
app: {{ .Chart.Name }}
ports:
- name: app
port: {{ dig .Values.werf.env .Values.seaweedfs.port._default .Values.seaweedfs.port }}
- name: http-metrics
port: {{ .Values.seaweedfs.metricsPort }}

29
.helm/values.yaml Normal file
View File

@ -0,0 +1,29 @@
seaweedfs:
port:
_default: "8333"
metricsPort: "9327"
storage:
_default: 10Gi
preprod: 50Gi
prod: 100Gi
storageClassName:
_default: local-storage-class-worker
resources:
requests:
cpu:
_default: 200m
memory:
_default: 512Mi
preprod: 1Gi
prod: 2Gi
limits:
memory:
_default: 1Gi
preprod: 2Gi
prod: 4Gi
nodeSelector:
_default:
node-role.deckhouse.io/worker: ""
tolerations:
_default: []

9
werf.yaml Normal file
View File

@ -0,0 +1,9 @@
---
configVersion: 1
project: seaweedfs
deploy:
namespace: '[[ env ]]'
helmRelease: '[[ project ]]-[[ env ]]'
---
image: seaweedfs
from: registry.lukoil.ru:8123/external-pub/chrislusf/seaweedfs:3.99