Compare commits

..

1 Commits

Author SHA1 Message Date
Andrei Kvapil
891615993a fix: Flux does not tolerate kubectl edits
https://fluxcd.io/flux/faq/#why-are-kubectl-edits-rolled-back-by-flux

Signed-off-by: Andrei Kvapil <kvapss@gmail.com>
2024-04-23 21:10:51 +02:00
77 changed files with 184 additions and 239 deletions

View File

@@ -20,28 +20,9 @@ miss_map=$(echo "$new_map" | awk 'NR==FNR { new_map[$1 " " $2] = $3; next } { if
resolved_miss_map=$( resolved_miss_map=$(
echo "$miss_map" | while read chart version commit; do echo "$miss_map" | while read chart version commit; do
if [ "$commit" = HEAD ]; then if [ "$commit" = HEAD ]; then
line=$(awk '/^version:/ {print NR; exit}' "./$chart/Chart.yaml") line=$(git show HEAD:"./$chart/Chart.yaml" | awk '/^version:/ {print NR; exit}')
change_commit=$(git --no-pager blame -L"$line",+1 -- "$chart/Chart.yaml" | awk '{print $1}') change_commit=$(git --no-pager blame -L"$line",+1 HEAD -- "$chart/Chart.yaml" | awk '{print $1}')
commit=$(git describe --always "$change_commit~1")
if [ "$change_commit" = "00000000" ]; then
# Not commited yet, use previus commit
line=$(git show HEAD:"./$chart/Chart.yaml" | awk '/^version:/ {print NR; exit}')
commit=$(git --no-pager blame -L"$line",+1 HEAD -- "$chart/Chart.yaml" | awk '{print $1}')
if [ $(echo $commit | cut -c1) = "^" ]; then
# Previus commit not exists
commit=$(echo $commit | cut -c2-)
fi
else
# Commited, but version_map wasn't updated
line=$(git show HEAD:"./$chart/Chart.yaml" | awk '/^version:/ {print NR; exit}')
change_commit=$(git --no-pager blame -L"$line",+1 HEAD -- "$chart/Chart.yaml" | awk '{print $1}')
if [ $(echo $change_commit | cut -c1) = "^" ]; then
# Previus commit not exists
commit=$(echo $change_commit | cut -c2-)
else
commit=$(git describe --always "$change_commit~1")
fi
fi
fi fi
echo "$chart $version $commit" echo "$chart $version $commit"
done done

25
hack/prepare_release.sh Executable file
View File

@@ -0,0 +1,25 @@
#!/bin/sh
set -e
if [ -e $1 ]; then
echo "Please pass version in the first argument"
echo "Example: $0 0.2.0"
exit 1
fi
version=$1
talos_version=$(awk '/^version:/ {print $2}' packages/core/installer/images/talos/profiles/installer.yaml)
set -x
sed -i "/^TAG / s|=.*|= v${version}|" \
packages/apps/http-cache/Makefile \
packages/apps/kubernetes/Makefile \
packages/core/installer/Makefile \
packages/system/dashboard/Makefile
sed -i "/^VERSION / s|=.*|= ${version}|" \
packages/core/Makefile \
packages/system/Makefile
make -C packages/core fix-chartnames
make -C packages/system fix-chartnames

View File

@@ -16,10 +16,10 @@ type: application
# This is the chart version. This version number should be incremented each time you make changes # 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. # to the chart and its templates, including the app version.
# Versions are expected to follow Semantic Versioning (https://semver.org/) # Versions are expected to follow Semantic Versioning (https://semver.org/)
version: 0.2.0 version: 0.1.0
# This is the version number of the application being deployed. This version number should be # 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 # 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. # follow Semantic Versioning. They should reflect the version the application is using.
# It is recommended to use it with quotes. # It is recommended to use it with quotes.
appVersion: "24.3.0" appVersion: "1.16.0"

View File

@@ -21,8 +21,8 @@ spec:
clusters: clusters:
- name: "clickhouse" - name: "clickhouse"
layout: layout:
shardsCount: {{ .Values.shards }} shardsCount: 1
replicasCount: {{ .Values.replicas }} replicasCount: 2
{{- with .Values.size }} {{- with .Values.size }}
templates: templates:
volumeClaimTemplates: volumeClaimTemplates:

View File

@@ -1,6 +1,4 @@
size: 10Gi size: 10Gi
shards: 1
replicas: 2
users: users:
user1: user1:

View File

@@ -16,10 +16,10 @@ type: application
# This is the chart version. This version number should be incremented each time you make changes # 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. # to the chart and its templates, including the app version.
# Versions are expected to follow Semantic Versioning (https://semver.org/) # Versions are expected to follow Semantic Versioning (https://semver.org/)
version: 0.2.0 version: 0.1.0
# This is the version number of the application being deployed. This version number should be # 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 # 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. # follow Semantic Versioning. They should reflect the version the application is using.
# It is recommended to use it with quotes. # It is recommended to use it with quotes.
appVersion: "1.25.3" appVersion: "1.16.0"

View File

@@ -1,20 +1,22 @@
PUSH := 1
LOAD := 0
REGISTRY := ghcr.io/aenix-io/cozystack
NGINX_CACHE_TAG = v0.1.0 NGINX_CACHE_TAG = v0.1.0
TAG := v0.3.1
include ../../../scripts/common-envs.mk
image: image-nginx image: image-nginx
image-nginx: image-nginx:
docker buildx build --platform linux/amd64 --build-arg ARCH=amd64 images/nginx-cache \ docker buildx build --platform linux/amd64 --build-arg ARCH=amd64 images/nginx-cache \
--provenance false \ --provenance false \
--tag $(REGISTRY)/nginx-cache:$(call settag,$(NGINX_CACHE_TAG)) \ --tag $(REGISTRY)/nginx-cache:$(NGINX_CACHE_TAG) \
--tag $(REGISTRY)/nginx-cache:$(call settag,$(NGINX_CACHE_TAG)-$(TAG)) \ --tag $(REGISTRY)/nginx-cache:$(NGINX_CACHE_TAG)-$(TAG) \
--cache-from type=registry,ref=$(REGISTRY)/nginx-cache:latest \ --cache-from type=registry,ref=$(REGISTRY)/nginx-cache:$(NGINX_CACHE_TAG) \
--cache-to type=inline \ --cache-to type=inline \
--metadata-file images/nginx-cache.json \ --metadata-file images/nginx-cache.json \
--push=$(PUSH) \ --push=$(PUSH) \
--load=$(LOAD) --load=$(LOAD)
echo "$(REGISTRY)/nginx-cache:$(call settag,$(NGINX_CACHE_TAG))" > images/nginx-cache.tag echo "$(REGISTRY)/nginx-cache:$(NGINX_CACHE_TAG)" > images/nginx-cache.tag
update: update:
tag=$$(git ls-remote --tags --sort="v:refname" https://github.com/chrislim2888/IP2Location-C-Library | awk -F'[/^]' 'END{print $$3}') && \ tag=$$(git ls-remote --tags --sort="v:refname" https://github.com/chrislim2888/IP2Location-C-Library | awk -F'[/^]' 'END{print $$3}') && \

View File

@@ -74,7 +74,7 @@ data:
option redispatch 1 option redispatch 1
default-server observe layer7 error-limit 10 on-error mark-down default-server observe layer7 error-limit 10 on-error mark-down
{{- range $i, $e := until (int $.Values.nginx.replicas) }} {{- range $i, $e := until (int $.Values.replicas) }}
server cache{{ $i }} {{ $.Release.Name }}-nginx-cache-{{ $i }}:80 check server cache{{ $i }} {{ $.Release.Name }}-nginx-cache-{{ $i }}:80 check
{{- end }} {{- end }}
{{- range $i, $e := $.Values.endpoints }} {{- range $i, $e := $.Values.endpoints }}

View File

@@ -7,7 +7,7 @@ metadata:
app.kubernetes.io/instance: {{ .Release.Name }} app.kubernetes.io/instance: {{ .Release.Name }}
app.kubernetes.io/managed-by: {{ .Release.Service }} app.kubernetes.io/managed-by: {{ .Release.Service }}
spec: spec:
replicas: {{ .Values.haproxy.replicas }} replicas: 2
selector: selector:
matchLabels: matchLabels:
app: {{ .Release.Name }}-haproxy app: {{ .Release.Name }}-haproxy

View File

@@ -11,7 +11,7 @@ spec:
selector: selector:
matchLabels: matchLabels:
app: {{ $.Release.Name }}-nginx-cache app: {{ $.Release.Name }}-nginx-cache
{{- range $i := until (int $.Values.nginx.replicas) }} {{- range $i := until 3 }}
--- ---
apiVersion: apps/v1 apiVersion: apps/v1
kind: Deployment kind: Deployment

View File

@@ -1,10 +1,4 @@
external: false external: false
haproxy:
replicas: 2
nginx:
replicas: 2
size: 10Gi size: 10Gi
endpoints: endpoints:
- 10.100.3.1:80 - 10.100.3.1:80

View File

@@ -22,4 +22,4 @@ version: 0.1.0
# incremented each time you make changes to the application. Versions are not expected to # 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. # follow Semantic Versioning. They should reflect the version the application is using.
# It is recommended to use it with quotes. # It is recommended to use it with quotes.
appVersion: "3.7.0" appVersion: "1.16.0"

View File

@@ -7,7 +7,7 @@ metadata:
app.kubernetes.io/managed-by: {{ .Release.Service }} app.kubernetes.io/managed-by: {{ .Release.Service }}
spec: spec:
kafka: kafka:
replicas: {{ .Values.replicas }} replicas: 3
listeners: listeners:
- name: plain - name: plain
port: 9092 port: 9092
@@ -41,7 +41,7 @@ spec:
{{- end }} {{- end }}
deleteClaim: true deleteClaim: true
zookeeper: zookeeper:
replicas: {{ .Values.replicas }} replicas: 3
storage: storage:
type: persistent-claim type: persistent-claim
{{- with .Values.zookeeper.size }} {{- with .Values.zookeeper.size }}

View File

@@ -1,10 +1,8 @@
external: false external: false
kafka: kafka:
size: 10Gi size: 10Gi
replicas: 3
zookeeper: zookeeper:
size: 5Gi size: 5Gi
replicas: 3
topics: topics:
- name: Results - name: Results

View File

@@ -16,10 +16,10 @@ type: application
# This is the chart version. This version number should be incremented each time you make changes # 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. # to the chart and its templates, including the app version.
# Versions are expected to follow Semantic Versioning (https://semver.org/) # Versions are expected to follow Semantic Versioning (https://semver.org/)
version: 0.2.0 version: 0.1.0
# This is the version number of the application being deployed. This version number should be # 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 # 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. # follow Semantic Versioning. They should reflect the version the application is using.
# It is recommended to use it with quotes. # It is recommended to use it with quotes.
appVersion: "1.19.0" appVersion: "1.16.0"

View File

@@ -1,17 +1,19 @@
PUSH := 1
LOAD := 0
REGISTRY := ghcr.io/aenix-io/cozystack
TAG := v0.3.1
UBUNTU_CONTAINER_DISK_TAG = v1.29.1 UBUNTU_CONTAINER_DISK_TAG = v1.29.1
include ../../../scripts/common-envs.mk
image: image-ubuntu-container-disk image: image-ubuntu-container-disk
image-ubuntu-container-disk: image-ubuntu-container-disk:
docker buildx build --platform linux/amd64 --build-arg ARCH=amd64 images/ubuntu-container-disk \ docker buildx build --platform linux/amd64 --build-arg ARCH=amd64 images/ubuntu-container-disk \
--provenance false \ --provenance false \
--tag $(REGISTRY)/ubuntu-container-disk:$(call settag,$(UBUNTU_CONTAINER_DISK_TAG)) \ --tag $(REGISTRY)/ubuntu-container-disk:$(UBUNTU_CONTAINER_DISK_TAG) \
--tag $(REGISTRY)/ubuntu-container-disk:$(call settag,$(UBUNTU_CONTAINER_DISK_TAG)-$(TAG)) \ --tag $(REGISTRY)/ubuntu-container-disk:$(UBUNTU_CONTAINER_DISK_TAG)-$(TAG) \
--cache-from type=registry,ref=$(REGISTRY)/ubuntu-container-disk:latest \ --cache-from type=registry,ref=$(REGISTRY)/ubuntu-container-disk:$(UBUNTU_CONTAINER_DISK_TAG) \
--cache-to type=inline \ --cache-to type=inline \
--metadata-file images/ubuntu-container-disk.json \ --metadata-file images/ubuntu-container-disk.json \
--push=$(PUSH) \ --push=$(PUSH) \
--load=$(LOAD) --load=$(LOAD)
echo "$(REGISTRY)/ubuntu-container-disk:$(call settag,$(UBUNTU_CONTAINER_DISK_TAG))" > images/ubuntu-container-disk.tag echo "$(REGISTRY)/ubuntu-container-disk:$(UBUNTU_CONTAINER_DISK_TAG)" > images/ubuntu-container-disk.tag

View File

@@ -64,13 +64,12 @@ metadata:
cluster.x-k8s.io/managed-by: kamaji cluster.x-k8s.io/managed-by: kamaji
name: {{ .Release.Name }} name: {{ .Release.Name }}
namespace: {{ .Release.Namespace }} namespace: {{ .Release.Namespace }}
{{- range $groupName, $group := .Values.nodeGroups }}
--- ---
apiVersion: bootstrap.cluster.x-k8s.io/v1beta1 apiVersion: bootstrap.cluster.x-k8s.io/v1beta1
kind: KubeadmConfigTemplate kind: KubeadmConfigTemplate
metadata: metadata:
name: {{ $.Release.Name }}-{{ $groupName }} name: {{ .Release.Name }}-md-0
namespace: {{ $.Release.Namespace }} namespace: {{ .Release.Namespace }}
spec: spec:
template: template:
spec: spec:
@@ -79,7 +78,7 @@ spec:
kubeletExtraArgs: {} kubeletExtraArgs: {}
discovery: discovery:
bootstrapToken: bootstrapToken:
apiServerEndpoint: {{ $.Release.Name }}.{{ $.Release.Namespace }}.svc:6443 apiServerEndpoint: {{ .Release.Name }}.{{ .Release.Namespace }}.svc:6443
initConfiguration: initConfiguration:
skipPhases: skipPhases:
- addon/kube-proxy - addon/kube-proxy
@@ -87,8 +86,8 @@ spec:
apiVersion: infrastructure.cluster.x-k8s.io/v1alpha1 apiVersion: infrastructure.cluster.x-k8s.io/v1alpha1
kind: KubevirtMachineTemplate kind: KubevirtMachineTemplate
metadata: metadata:
name: {{ $.Release.Name }}-{{ $groupName }} name: {{ .Release.Name }}-md-0
namespace: {{ $.Release.Namespace }} namespace: {{ .Release.Namespace }}
spec: spec:
template: template:
spec: spec:
@@ -96,7 +95,7 @@ spec:
checkStrategy: ssh checkStrategy: ssh
virtualMachineTemplate: virtualMachineTemplate:
metadata: metadata:
namespace: {{ $.Release.Namespace }} namespace: {{ .Release.Namespace }}
spec: spec:
runStrategy: Always runStrategy: Always
template: template:
@@ -104,7 +103,7 @@ spec:
domain: domain:
cpu: cpu:
threads: 1 threads: 1
cores: {{ $group.resources.cpu }} cores: 2
sockets: 1 sockets: 1
devices: devices:
disks: disks:
@@ -113,7 +112,7 @@ spec:
name: containervolume name: containervolume
networkInterfaceMultiqueue: true networkInterfaceMultiqueue: true
memory: memory:
guest: {{ $group.resources.memory }} guest: 1024Mi
evictionStrategy: External evictionStrategy: External
volumes: volumes:
- containerDisk: - containerDisk:
@@ -123,28 +122,29 @@ spec:
apiVersion: cluster.x-k8s.io/v1beta1 apiVersion: cluster.x-k8s.io/v1beta1
kind: MachineDeployment kind: MachineDeployment
metadata: metadata:
name: {{ $.Release.Name }}-{{ $groupName }} name: {{ .Release.Name }}-md-0
namespace: {{ $.Release.Namespace }} namespace: {{ .Release.Namespace }}
annotations: annotations:
cluster.x-k8s.io/cluster-api-autoscaler-node-group-min-size: "{{ $group.minReplicas }}" cluster.x-k8s.io/cluster-api-autoscaler-node-group-max-size: "2"
cluster.x-k8s.io/cluster-api-autoscaler-node-group-max-size: "{{ $group.maxReplicas }}" cluster.x-k8s.io/cluster-api-autoscaler-node-group-min-size: "0"
capacity.cluster-autoscaler.kubernetes.io/memory: "{{ $group.resources.memory }}" capacity.cluster-autoscaler.kubernetes.io/memory: "1024Mi"
capacity.cluster-autoscaler.kubernetes.io/cpu: "{{ $group.resources.cpu }}" capacity.cluster-autoscaler.kubernetes.io/cpu: "2"
spec: spec:
clusterName: {{ $.Release.Name }} clusterName: {{ .Release.Name }}
selector:
matchLabels: null
template: template:
spec: spec:
bootstrap: bootstrap:
configRef: configRef:
apiVersion: bootstrap.cluster.x-k8s.io/v1beta1 apiVersion: bootstrap.cluster.x-k8s.io/v1beta1
kind: KubeadmConfigTemplate kind: KubeadmConfigTemplate
name: {{ $.Release.Name }}-{{ $groupName }} name: {{ .Release.Name }}-md-0
namespace: default namespace: default
clusterName: {{ $.Release.Name }} clusterName: {{ .Release.Name }}
infrastructureRef: infrastructureRef:
apiVersion: infrastructure.cluster.x-k8s.io/v1alpha1 apiVersion: infrastructure.cluster.x-k8s.io/v1alpha1
kind: KubevirtMachineTemplate kind: KubevirtMachineTemplate
name: {{ $.Release.Name }}-{{ $groupName }} name: {{ .Release.Name }}-md-0
namespace: default namespace: default
version: v1.29.0 version: v1.23.10
{{- end }}

View File

@@ -0,0 +1,11 @@
{
"$schema": "http://json-schema.org/schema#",
"type": "object",
"properties": {
"host": {
"type": "string",
"title": "Domain name for this kubernetes cluster",
"description": "This host will be used for all apps deployed in this tenant"
}
}
}

View File

@@ -1,10 +1 @@
host: "" host: ""
controlPlane:
replicas: 2
nodeGroups:
md0:
minReplicas: 0
maxReplicas: 10
resources:
cpu: 2
memory: 1024Mi

View File

@@ -16,10 +16,10 @@ type: application
# This is the chart version. This version number should be incremented each time you make changes # 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. # to the chart and its templates, including the app version.
# Versions are expected to follow Semantic Versioning (https://semver.org/) # Versions are expected to follow Semantic Versioning (https://semver.org/)
version: 0.3.0 version: 0.2.0
# This is the version number of the application being deployed. This version number should be # 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 # 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. # follow Semantic Versioning. They should reflect the version the application is using.
# It is recommended to use it with quotes. # It is recommended to use it with quotes.
appVersion: "11.0.2" appVersion: "1.16.0"

View File

@@ -12,7 +12,7 @@ spec:
port: 3306 port: 3306
replicas: {{ .Values.replicas }} replicas: 2
affinity: affinity:
podAntiAffinity: podAntiAffinity:
requiredDuringSchedulingIgnoredDuringExecution: requiredDuringSchedulingIgnoredDuringExecution:
@@ -28,13 +28,11 @@ spec:
- {{ .Release.Name }} - {{ .Release.Name }}
topologyKey: "kubernetes.io/hostname" topologyKey: "kubernetes.io/hostname"
{{- if gt (int .Values.replicas) 1 }}
replication: replication:
enabled: true enabled: true
#primary: #primary:
# podIndex: 0 # podIndex: 0
# automaticFailover: true # automaticFailover: true
{{- end }}
metrics: metrics:
enabled: true enabled: true

View File

@@ -1,8 +1,6 @@
external: false external: false
size: 10Gi size: 10Gi
replicas: 2
users: users:
root: root:
password: strongpassword password: strongpassword

View File

@@ -16,10 +16,10 @@ type: application
# This is the chart version. This version number should be incremented each time you make changes # 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. # to the chart and its templates, including the app version.
# Versions are expected to follow Semantic Versioning (https://semver.org/) # Versions are expected to follow Semantic Versioning (https://semver.org/)
version: 0.2.0 version: 0.1.0
# This is the version number of the application being deployed. This version number should be # 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 # 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. # follow Semantic Versioning. They should reflect the version the application is using.
# It is recommended to use it with quotes. # It is recommended to use it with quotes.
appVersion: "16.2" appVersion: "1.16.0"

View File

@@ -4,7 +4,7 @@ kind: Cluster
metadata: metadata:
name: {{ .Release.Name }} name: {{ .Release.Name }}
spec: spec:
instances: {{ .Values.replicas }} instances: 2
enableSuperuserAccess: true enableSuperuserAccess: true
postgresql: postgresql:

View File

@@ -1,6 +1,5 @@
external: false external: false
size: 10Gi size: 10Gi
replicas: 2
users: users:
user1: user1:

View File

@@ -16,10 +16,10 @@ type: application
# This is the chart version. This version number should be incremented each time you make changes # 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. # to the chart and its templates, including the app version.
# Versions are expected to follow Semantic Versioning (https://semver.org/) # Versions are expected to follow Semantic Versioning (https://semver.org/)
version: 0.2.0 version: 0.1.0
# This is the version number of the application being deployed. This version number should be # 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 # 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. # follow Semantic Versioning. They should reflect the version the application is using.
# It is recommended to use it with quotes. # It is recommended to use it with quotes.
appVersion: "3.12.2" appVersion: "1.16.0"

View File

@@ -6,7 +6,7 @@ metadata:
app.kubernetes.io/instance: {{ .Release.Name }} app.kubernetes.io/instance: {{ .Release.Name }}
app.kubernetes.io/managed-by: {{ .Release.Service }} app.kubernetes.io/managed-by: {{ .Release.Service }}
spec: spec:
replicas: {{ .Values.replicas }} replicas: 3
{{- if .Values.external }} {{- if .Values.external }}
service: service:
type: LoadBalancer type: LoadBalancer

View File

@@ -5,10 +5,6 @@
"external": { "external": {
"type": "boolean", "type": "boolean",
"title": "Enable external Access" "title": "Enable external Access"
},
"replicas": {
"type": "integer",
"title": "Replicas"
} }
} }
} }

View File

@@ -1,2 +1 @@
replicas: 3
external: false external: false

View File

@@ -16,10 +16,10 @@ type: application
# This is the chart version. This version number should be incremented each time you make changes # 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. # to the chart and its templates, including the app version.
# Versions are expected to follow Semantic Versioning (https://semver.org/) # Versions are expected to follow Semantic Versioning (https://semver.org/)
version: 0.2.0 version: 0.1.1
# This is the version number of the application being deployed. This version number should be # 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 # 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. # follow Semantic Versioning. They should reflect the version the application is using.
# It is recommended to use it with quotes. # It is recommended to use it with quotes.
appVersion: "6.2.6" appVersion: "1.16.0"

View File

@@ -14,7 +14,7 @@ spec:
limits: limits:
memory: 100Mi memory: 100Mi
redis: redis:
replicas: {{ .Values.replicas }} replicas: 3
resources: resources:
requests: requests:
cpu: 150m cpu: 150m

View File

@@ -9,10 +9,6 @@
"size": { "size": {
"type": "string", "type": "string",
"title": "Disk Size" "title": "Disk Size"
},
"replicas": {
"type": "integer",
"title": "Replicas"
} }
} }
} }

View File

@@ -1,3 +1,2 @@
replicas: 2
external: false external: false
size: 5Gi size: 5Gi

View File

@@ -16,10 +16,10 @@ type: application
# This is the chart version. This version number should be incremented each time you make changes # 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. # to the chart and its templates, including the app version.
# Versions are expected to follow Semantic Versioning (https://semver.org/) # Versions are expected to follow Semantic Versioning (https://semver.org/)
version: 0.2.0 version: 0.1.0
# This is the version number of the application being deployed. This version number should be # 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 # 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. # follow Semantic Versioning. They should reflect the version the application is using.
# It is recommended to use it with quotes. # It is recommended to use it with quotes.
appVersion: "2.9.7" appVersion: "1.16.0"

View File

@@ -7,7 +7,7 @@ metadata:
app.kubernetes.io/instance: {{ .Release.Name }} app.kubernetes.io/instance: {{ .Release.Name }}
app.kubernetes.io/managed-by: {{ .Release.Service }} app.kubernetes.io/managed-by: {{ .Release.Service }}
spec: spec:
replicas: {{ .Values.replicas }} replicas: 2
selector: selector:
matchLabels: matchLabels:
app: {{ .Release.Name }}-haproxy app: {{ .Release.Name }}-haproxy

View File

@@ -1,5 +1,4 @@
external: false external: false
replicas: 2
httpAndHttps: httpAndHttps:
mode: tcp mode: tcp
targetPorts: targetPorts:

View File

@@ -1,26 +1,17 @@
clickhouse 0.1.0 ca79f72 clickhouse 0.1.0 HEAD
clickhouse 0.2.0 HEAD http-cache 0.1.0 HEAD
http-cache 0.1.0 a956713
http-cache 0.2.0 HEAD
kafka 0.1.0 HEAD kafka 0.1.0 HEAD
kubernetes 0.1.0 f642698 kubernetes 0.1.0 HEAD
kubernetes 0.2.0 HEAD
mysql 0.1.0 f642698 mysql 0.1.0 f642698
mysql 0.2.0 8b975ff0 mysql 0.2.0 HEAD
mysql 0.3.0 HEAD postgres 0.1.0 HEAD
postgres 0.1.0 f642698 rabbitmq 0.1.0 HEAD
postgres 0.2.0 HEAD redis 0.1.1 HEAD
rabbitmq 0.1.0 f642698 tcp-balancer 0.1.0 HEAD
rabbitmq 0.2.0 HEAD
redis 0.1.1 f642698
redis 0.2.0 HEAD
tcp-balancer 0.1.0 f642698
tcp-balancer 0.2.0 HEAD
tenant 0.1.3 3d1b86c tenant 0.1.3 3d1b86c
tenant 0.1.4 d200480 tenant 0.1.4 d200480
tenant 0.1.5 e3ab858 tenant 0.1.5 e3ab858
tenant 1.0.0 HEAD tenant 1.0.0 HEAD
virtual-machine 0.1.4 f2015d6 virtual-machine 0.1.4 f2015d6
virtual-machine 0.1.5 HEAD virtual-machine 0.1.5 HEAD
vpn 0.1.0 f642698 vpn 0.1.0 HEAD
vpn 0.2.0 HEAD

View File

@@ -1,6 +1,6 @@
apiVersion: v2 apiVersion: v2
name: vpn name: vpn
description: Managed VPN service description: Establish a connection from your computer
icon: https://upload.wikimedia.org/wikipedia/commons/thumb/6/60/Outline_VPN_icon.png/600px-Outline_VPN_icon.png icon: https://upload.wikimedia.org/wikipedia/commons/thumb/6/60/Outline_VPN_icon.png/600px-Outline_VPN_icon.png
# A chart can be either an 'application' or a 'library' chart. # A chart can be either an 'application' or a 'library' chart.
@@ -16,10 +16,10 @@ type: application
# This is the chart version. This version number should be incremented each time you make changes # 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. # to the chart and its templates, including the app version.
# Versions are expected to follow Semantic Versioning (https://semver.org/) # Versions are expected to follow Semantic Versioning (https://semver.org/)
version: 0.2.0 version: 0.1.0
# This is the version number of the application being deployed. This version number should be # 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 # 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. # follow Semantic Versioning. They should reflect the version the application is using.
# It is recommended to use it with quotes. # It is recommended to use it with quotes.
appVersion: "1.8.1" appVersion: "1.16.0"

View File

@@ -4,7 +4,7 @@ kind: Deployment
metadata: metadata:
name: {{ .Release.Name }}-vpn name: {{ .Release.Name }}-vpn
spec: spec:
replicas: {{ .Values.replicas }} replicas: 2
selector: selector:
matchLabels: matchLabels:
app: {{ .Release.Name }}-vpn app: {{ .Release.Name }}-vpn

View File

@@ -1,5 +1,4 @@
external: false external: false
replicas: 2
users: users:
user1: user1:

6
packages/core/Makefile Normal file
View File

@@ -0,0 +1,6 @@
VERSION := 0.3.1
gen: fix-chartnames
fix-chartnames:
find . -name Chart.yaml -maxdepth 2 | awk -F/ '{print $$2}' | while read i; do printf "name: cozy-%s\nversion: $(VERSION)\n" "$$i" > "$$i/Chart.yaml"; done

View File

@@ -1,3 +1,2 @@
apiVersion: v2
name: cozy-fluxcd name: cozy-fluxcd
version: 0.0.0 # Placeholder, the actual version will be automatically set during the build process version: 0.3.1

View File

@@ -1,3 +1,2 @@
apiVersion: v2
name: cozy-installer name: cozy-installer
version: 0.0.0 # Placeholder, the actual version will be automatically set during the build process version: 0.3.1

View File

@@ -1,10 +1,11 @@
NAME=installer NAME=installer
NAMESPACE=cozy-system NAMESPACE=cozy-system
PUSH := 1
LOAD := 0
REGISTRY := ghcr.io/aenix-io/cozystack
TAG := v0.3.1
TALOS_VERSION=$(shell awk '/^version:/ {print $$2}' images/talos/profiles/installer.yaml) TALOS_VERSION=$(shell awk '/^version:/ {print $$2}' images/talos/profiles/installer.yaml)
include ../../../scripts/common-envs.mk
show: show:
helm template -n $(NAMESPACE) $(NAME) . helm template -n $(NAMESPACE) $(NAME) .
@@ -23,33 +24,33 @@ image-cozystack:
make -C ../../.. repos make -C ../../.. repos
docker buildx build -f images/cozystack/Dockerfile ../../.. \ docker buildx build -f images/cozystack/Dockerfile ../../.. \
--provenance false \ --provenance false \
--tag $(REGISTRY)/cozystack:$(call settag,$(TAG)) \ --tag $(REGISTRY)/cozystack:$(TAG) \
--cache-from type=registry,ref=$(REGISTRY)/cozystack:latest \ --cache-from type=registry,ref=$(REGISTRY)/cozystack:$(TAG) \
--cache-to type=inline \ --cache-to type=inline \
--metadata-file images/cozystack.json \ --metadata-file images/cozystack.json \
--push=$(PUSH) \ --push=$(PUSH) \
--load=$(LOAD) --load=$(LOAD)
echo "$(REGISTRY)/cozystack:$(call settag,$(TAG))" > images/cozystack.tag echo "$(REGISTRY)/cozystack:$(TAG)" > images/cozystack.tag
image-talos: image-talos:
test -f ../../../_out/assets/installer-amd64.tar || make talos-installer test -f ../../../_out/assets/installer-amd64.tar || make talos-installer
docker load -i ../../../_out/assets/installer-amd64.tar docker load -i ../../../_out/assets/installer-amd64.tar
docker tag ghcr.io/siderolabs/installer:$(TALOS_VERSION) ghcr.io/aenix-io/cozystack/talos:$(call settag,$(TALOS_VERSION)) docker tag ghcr.io/siderolabs/installer:$(TALOS_VERSION) ghcr.io/aenix-io/cozystack/talos:$(TALOS_VERSION)
docker push ghcr.io/aenix-io/cozystack/talos:$(call settag,$(TALOS_VERSION)) docker push ghcr.io/aenix-io/cozystack/talos:$(TALOS_VERSION)
image-matchbox: image-matchbox:
test -f ../../../_out/assets/kernel-amd64 || make talos-kernel test -f ../../../_out/assets/kernel-amd64 || make talos-kernel
test -f ../../../_out/assets/initramfs-metal-amd64.xz || make talos-initramfs test -f ../../../_out/assets/initramfs-metal-amd64.xz || make talos-initramfs
docker buildx build -f images/matchbox/Dockerfile ../../.. \ docker buildx build -f images/matchbox/Dockerfile ../../.. \
--provenance false \ --provenance false \
--tag $(REGISTRY)/matchbox:$(call settag,$(TAG)) \ --tag $(REGISTRY)/matchbox:$(TAG) \
--tag $(REGISTRY)/matchbox:$(call settag,$(TALOS_VERSION)-$(TAG)) \ --tag $(REGISTRY)/matchbox:$(TALOS_VERSION)-$(TAG) \
--cache-from type=registry,ref=$(REGISTRY)/matchbox:latest \ --cache-from type=registry,ref=$(REGISTRY)/matchbox:$(TALOS_VERSION) \
--cache-to type=inline \ --cache-to type=inline \
--metadata-file images/matchbox.json \ --metadata-file images/matchbox.json \
--push=$(PUSH) \ --push=$(PUSH) \
--load=$(LOAD) --load=$(LOAD)
echo "$(REGISTRY)/matchbox:$(call settag,$(TALOS_VERSION))" > images/matchbox.tag echo "$(REGISTRY)/matchbox:$(TALOS_VERSION)" > images/matchbox.tag
assets: talos-iso talos-nocloud assets: talos-iso talos-nocloud

View File

@@ -1,3 +1,2 @@
apiVersion: v2
name: cozy-platform name: cozy-platform
version: 0.0.0 # Placeholder, the actual version will be automatically set during the build process version: 0.3.1

View File

@@ -1,12 +1,13 @@
OUT=../../_out/repos/system OUT=../../_out/repos/system
VERSION := 0.3.1
include ../../scripts/common-envs.mk gen: fix-chartnames
repo: repo: fix-chartnames
rm -rf "$(OUT)" rm -rf "$(OUT)"
mkdir -p "$(OUT)" mkdir -p "$(OUT)"
helm package -d "$(OUT)" $$(find . -mindepth 2 -maxdepth 2 -name Chart.yaml | awk 'sub("/Chart.yaml", "")') --version $(VERSION) helm package -d "$(OUT)" $$(find . -mindepth 2 -maxdepth 2 -name Chart.yaml | awk 'sub("/Chart.yaml", "")')
cd "$(OUT)" && helm repo index . cd "$(OUT)" && helm repo index .
fix-chartnames: fix-chartnames:
find . -name Chart.yaml -maxdepth 2 | awk -F/ '{print $$2}' | while read i; do sed -i "s/^name: .*/name: cozy-$$i/" "$$i/Chart.yaml"; done find . -name Chart.yaml -maxdepth 2 | awk -F/ '{print $$2}' | while read i; do printf "name: cozy-%s\nversion: $(VERSION)\n" "$$i" > "$$i/Chart.yaml"; done

View File

@@ -1,3 +1,2 @@
apiVersion: v2
name: cozy-capi-operator name: cozy-capi-operator
version: 0.0.0 # Placeholder, the actual version will be automatically set during the build process version: 0.3.1

View File

@@ -1,3 +1,2 @@
apiVersion: v2
name: cozy-capi-providers name: cozy-capi-providers
version: 0.0.0 # Placeholder, the actual version will be automatically set during the build process version: 0.3.1

View File

@@ -1,3 +1,2 @@
apiVersion: v2
name: cozy-cert-manager-issuers name: cozy-cert-manager-issuers
version: 0.0.0 # Placeholder, the actual version will be automatically set during the build process version: 0.3.1

View File

@@ -1,3 +1,2 @@
apiVersion: v2
name: cozy-cert-manager name: cozy-cert-manager
version: 0.0.0 # Placeholder, the actual version will be automatically set during the build process version: 0.3.1

View File

@@ -1,3 +1,2 @@
apiVersion: v2
name: cozy-cilium name: cozy-cilium
version: 0.0.0 # Placeholder, the actual version will be automatically set during the build process version: 0.3.1

View File

@@ -1,3 +1,2 @@
apiVersion: v2
name: cozy-clickhouse-operator name: cozy-clickhouse-operator
version: 0.0.0 # Placeholder, the actual version will be automatically set during the build process version: 0.3.1

View File

@@ -1,3 +1,2 @@
apiVersion: v2
name: cozy-dashboard name: cozy-dashboard
version: 0.0.0 # Placeholder, the actual version will be automatically set during the build process version: 0.3.1

View File

@@ -1,7 +1,10 @@
NAME=dashboard NAME=dashboard
NAMESPACE=cozy-$(NAME) NAMESPACE=cozy-$(NAME)
PUSH := 1
LOAD := 0
REPOSITORY := ghcr.io/aenix-io/cozystack
TAG := v0.3.1
include ../../../scripts/common-envs.mk
include ../../../scripts/package-system.mk include ../../../scripts/package-system.mk
update: update-chart update-dockerfiles update: update-chart update-dockerfiles
@@ -27,21 +30,21 @@ update-dockerfiles:
image-dashboard: image-dashboard:
docker buildx build images/dashboard \ docker buildx build images/dashboard \
--provenance false \ --provenance false \
--tag $(REGISTRY)/dashboard:$(call settag,$(TAG)) \ --tag $(REPOSITORY)/dashboard:$(TAG) \
--cache-from type=registry,ref=$(REGISTRY)/dashboard:latest \ --cache-from type=registry,ref=$(REPOSITORY)/dashboard:$(TAG) \
--cache-to type=inline \ --cache-to type=inline \
--metadata-file images/dashboard.json \ --metadata-file images/dashboard.json \
--push=$(PUSH) \ --push=$(PUSH) \
--load=$(LOAD) --load=$(LOAD)
echo "$(REGISTRY)/dashboard:$(call settag,$(TAG))" > images/dashboard.tag echo "$(REPOSITORY)/dashboard:$(TAG)" > images/dashboard.tag
image-kubeapps-apis: image-kubeapps-apis:
docker buildx build images/kubeapps-apis \ docker buildx build images/kubeapps-apis \
--provenance false \ --provenance false \
--tag $(REGISTRY)/kubeapps-apis:$(call settag,$(TAG)) \ --tag $(REPOSITORY)/kubeapps-apis:$(TAG) \
--cache-from type=registry,ref=$(REGISTRY)/kubeapps-apis:latest \ --cache-from type=registry,ref=$(REPOSITORY)/kubeapps-apis:$(TAG) \
--cache-to type=inline \ --cache-to type=inline \
--metadata-file images/kubeapps-apis.json \ --metadata-file images/kubeapps-apis.json \
--push=$(PUSH) \ --push=$(PUSH) \
--load=$(LOAD) --load=$(LOAD)
echo "$(REGISTRY)/kubeapps-apis:$(call settag,$(TAG))" > images/kubeapps-apis.tag echo "$(REPOSITORY)/kubeapps-apis:$(TAG)" > images/kubeapps-apis.tag

View File

@@ -1,3 +1,2 @@
apiVersion: v2
name: cozy-grafana-oncall name: cozy-grafana-oncall
version: 0.0.0 # Placeholder, the actual version will be automatically set during the build process version: 0.3.1

View File

@@ -1,3 +1,2 @@
apiVersion: v2
name: cozy-grafana-operator name: cozy-grafana-operator
version: 0.0.0 # Placeholder, the actual version will be automatically set during the build process version: 0.3.1

View File

@@ -1,3 +1,2 @@
apiVersion: v2
name: cozy-ingress-nginx name: cozy-ingress-nginx
version: 0.0.0 # Placeholder, the actual version will be automatically set during the build process version: 0.3.1

View File

@@ -1,3 +1,2 @@
apiVersion: v2
name: cozy-kafka-operator name: cozy-kafka-operator
version: 0.0.0 # Placeholder, the actual version will be automatically set during the build process version: 0.3.1

View File

@@ -1,3 +1,2 @@
apiVersion: v2
name: cozy-kamaji-etcd name: cozy-kamaji-etcd
version: 0.0.0 # Placeholder, the actual version will be automatically set during the build process version: 0.3.1

View File

@@ -1,3 +1,2 @@
apiVersion: v2
name: cozy-kamaji name: cozy-kamaji
version: 0.0.0 # Placeholder, the actual version will be automatically set during the build process version: 0.3.1

View File

@@ -1,3 +1,2 @@
apiVersion: v2
name: cozy-kubeovn name: cozy-kubeovn
version: 0.0.0 # Placeholder, the actual version will be automatically set during the build process version: 0.3.1

View File

@@ -1,3 +1,2 @@
apiVersion: v2
name: cozy-kubevirt-cdi-operator name: cozy-kubevirt-cdi-operator
version: 0.0.0 # Placeholder, the actual version will be automatically set during the build process version: 0.3.1

View File

@@ -1,3 +1,2 @@
apiVersion: v2
name: cozy-kubevirt-cdi name: cozy-kubevirt-cdi
version: 0.0.0 # Placeholder, the actual version will be automatically set during the build process version: 0.3.1

View File

@@ -1,3 +1,2 @@
apiVersion: v2
name: cozy-kubevirt-csi-node name: cozy-kubevirt-csi-node
version: 0.0.0 # Placeholder, the actual version will be automatically set during the build process version: 0.3.1

View File

@@ -1,3 +1,2 @@
apiVersion: v2
name: cozy-kubevirt-operator name: cozy-kubevirt-operator
version: 0.0.0 # Placeholder, the actual version will be automatically set during the build process version: 0.3.1

View File

@@ -1,3 +1,2 @@
apiVersion: v2
name: cozy-kubevirt name: cozy-kubevirt
version: 0.0.0 # Placeholder, the actual version will be automatically set during the build process version: 0.3.1

View File

@@ -1,3 +1,2 @@
apiVersion: v2
name: cozy-linstor name: cozy-linstor
version: 0.0.0 # Placeholder, the actual version will be automatically set during the build process version: 0.3.1

View File

@@ -1,3 +1,2 @@
apiVersion: v2
name: cozy-mariadb-operator name: cozy-mariadb-operator
version: 0.0.0 # Placeholder, the actual version will be automatically set during the build process version: 0.3.1

View File

@@ -1,3 +1,2 @@
apiVersion: v2
name: cozy-metallb name: cozy-metallb
version: 0.0.0 # Placeholder, the actual version will be automatically set during the build process version: 0.3.1

View File

@@ -1,3 +1,2 @@
apiVersion: v2
name: cozy-monitoring name: cozy-monitoring
version: 0.0.0 # Placeholder, the actual version will be automatically set during the build process version: 0.3.1

View File

@@ -1,3 +1,2 @@
apiVersion: v2
name: cozy-piraeus-operator name: cozy-piraeus-operator
version: 0.0.0 # Placeholder, the actual version will be automatically set during the build process version: 0.3.1

View File

@@ -1,3 +1,2 @@
apiVersion: v2
name: cozy-postgres-operator name: cozy-postgres-operator
version: 0.0.0 # Placeholder, the actual version will be automatically set during the build process version: 0.3.1

View File

@@ -1,3 +1,2 @@
apiVersion: v2
name: cozy-rabbitmq-operator name: cozy-rabbitmq-operator
version: 0.0.0 # Placeholder, the actual version will be automatically set during the build process version: 0.3.1

View File

@@ -1,3 +1,2 @@
apiVersion: v2
name: cozy-redis-operator name: cozy-redis-operator
version: 0.0.0 # Placeholder, the actual version will be automatically set during the build process version: 0.3.1

View File

@@ -1,3 +1,2 @@
apiVersion: v2
name: cozy-telepresence name: cozy-telepresence
version: 0.0.0 # Placeholder, the actual version will be automatically set during the build process version: 0.3.1

View File

@@ -1,3 +1,2 @@
apiVersion: v2
name: cozy-victoria-metrics-operator name: cozy-victoria-metrics-operator
version: 0.0.0 # Placeholder, the actual version will be automatically set during the build process version: 0.3.1

View File

@@ -1,10 +0,0 @@
REGISTRY := ghcr.io/aenix-io/cozystack
PUSH := 1
LOAD := 0
VERSION = $(patsubst v%,%,$(shell git describe --tags --abbrev=0))
TAG = $(shell git describe --tags --exact-match 2>/dev/null || echo latest)
# Returns 'latest' if the git tag is not assigned, otherwise returns the provided value
define settag
$(if $(filter $(TAG),latest),latest,$(1))
endef