mirror of
https://github.com/outbackdingo/cozystack.git
synced 2026-02-06 01:06:27 +00:00
Compare commits
16 Commits
use-shared
...
release-0.
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
e98fa9cd72 | ||
|
|
01d90bb736 | ||
|
|
e04cfaaa58 | ||
|
|
8c86905b22 | ||
|
|
84955d13ac | ||
|
|
46e5044851 | ||
|
|
3a3f44a427 | ||
|
|
0cc35a212c | ||
|
|
0bb79adec0 | ||
|
|
9e89a9d3ad | ||
|
|
ddfb1d65e3 | ||
|
|
efafe16d3b | ||
|
|
e1b4861c8a | ||
|
|
4d0bf14fc3 | ||
|
|
35069ff3e9 | ||
|
|
b9afd69df0 |
44
.github/workflows/pull-requests.yaml
vendored
44
.github/workflows/pull-requests.yaml
vendored
@@ -11,7 +11,7 @@ concurrency:
|
|||||||
jobs:
|
jobs:
|
||||||
build:
|
build:
|
||||||
name: Build
|
name: Build
|
||||||
runs-on: [oracle-4cpu-16gb-x86-64]
|
runs-on: [self-hosted]
|
||||||
permissions:
|
permissions:
|
||||||
contents: read
|
contents: read
|
||||||
packages: write
|
packages: write
|
||||||
@@ -34,38 +34,20 @@ jobs:
|
|||||||
password: ${{ secrets.GITHUB_TOKEN }}
|
password: ${{ secrets.GITHUB_TOKEN }}
|
||||||
registry: ghcr.io
|
registry: ghcr.io
|
||||||
|
|
||||||
- name: Install dependencies
|
|
||||||
run: |
|
|
||||||
set -e
|
|
||||||
sudo mkdir -p -m 755 /etc/apt/keyrings
|
|
||||||
sudo wget -O /etc/apt/keyrings/githubcli-archive-keyring.gpg https://cli.github.com/packages/githubcli-archive-keyring.gpg
|
|
||||||
sudo chmod go+r /etc/apt/keyrings/githubcli-archive-keyring.gpg
|
|
||||||
echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/githubcli-archive-keyring.gpg] https://cli.github.com/packages stable main" | sudo tee /etc/apt/sources.list.d/github-cli.list > /dev/null
|
|
||||||
sudo apt update
|
|
||||||
sudo apt install -y jq skopeo gh gawk
|
|
||||||
sudo wget -qO /usr/local/bin/yq https://github.com/mikefarah/yq/releases/latest/download/yq_linux_amd64
|
|
||||||
sudo chmod +x /usr/local/bin/yq
|
|
||||||
curl https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-3 | sudo bash
|
|
||||||
sudo modprobe loop
|
|
||||||
|
|
||||||
- name: Build
|
- name: Build
|
||||||
run: make build
|
run: make build
|
||||||
|
|
||||||
- name: Build Talos image
|
- name: Build Talos image
|
||||||
run: make -C packages/core/installer talos-nocloud
|
run: make -C packages/core/installer talos-nocloud
|
||||||
|
|
||||||
- name: Upload installer
|
|
||||||
uses: actions/upload-artifact@v4
|
|
||||||
with:
|
|
||||||
name: cozystack-installer
|
|
||||||
path: _out/assets/cozystack-installer.yaml
|
|
||||||
|
|
||||||
- name: Upload Talos image
|
- name: Upload artifacts
|
||||||
uses: actions/upload-artifact@v4
|
uses: actions/upload-artifact@v4
|
||||||
with:
|
with:
|
||||||
name: talos-image
|
name: cozystack-artefacts
|
||||||
path: _out/assets/nocloud-amd64.raw.xz
|
path: |
|
||||||
|
_out/assets/nocloud-amd64.raw.xz
|
||||||
|
_out/assets/cozystack-installer.yaml
|
||||||
|
|
||||||
test:
|
test:
|
||||||
name: Test
|
name: Test
|
||||||
runs-on: [self-hosted]
|
runs-on: [self-hosted]
|
||||||
@@ -76,16 +58,16 @@ jobs:
|
|||||||
!contains(github.event.pull_request.labels.*.name, 'release')
|
!contains(github.event.pull_request.labels.*.name, 'release')
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
- name: Download installer
|
- name: Checkout code
|
||||||
uses: actions/download-artifact@v4
|
uses: actions/checkout@v4
|
||||||
with:
|
with:
|
||||||
name: cozystack-installer
|
fetch-depth: 0
|
||||||
path: _out/assets/
|
fetch-tags: true
|
||||||
|
|
||||||
- name: Download Talos image
|
- name: Download artifacts
|
||||||
uses: actions/download-artifact@v4
|
uses: actions/download-artifact@v4
|
||||||
with:
|
with:
|
||||||
name: talos-image
|
name: cozystack-artefacts
|
||||||
path: _out/assets/
|
path: _out/assets/
|
||||||
|
|
||||||
- name: Test
|
- name: Test
|
||||||
|
|||||||
2
.github/workflows/tags.yaml
vendored
2
.github/workflows/tags.yaml
vendored
@@ -15,7 +15,7 @@ concurrency:
|
|||||||
jobs:
|
jobs:
|
||||||
prepare-release:
|
prepare-release:
|
||||||
name: Prepare Release
|
name: Prepare Release
|
||||||
runs-on: [oracle-4cpu-16gb-x86-64]
|
runs-on: [self-hosted]
|
||||||
permissions:
|
permissions:
|
||||||
contents: write
|
contents: write
|
||||||
packages: write
|
packages: write
|
||||||
|
|||||||
@@ -86,7 +86,7 @@ EOF
|
|||||||
@test "Prepare VM disks" {
|
@test "Prepare VM disks" {
|
||||||
for i in 1 2 3; do
|
for i in 1 2 3; do
|
||||||
cp nocloud-amd64.raw srv${i}/system.img
|
cp nocloud-amd64.raw srv${i}/system.img
|
||||||
qemu-img resize srv${i}/system.img 50G
|
qemu-img resize srv${i}/system.img 20G
|
||||||
qemu-img create srv${i}/data.img 100G
|
qemu-img create srv${i}/data.img 100G
|
||||||
done
|
done
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -23,8 +23,3 @@ version: 0.9.0
|
|||||||
# 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.9.2"
|
appVersion: "24.9.2"
|
||||||
|
|
||||||
dependencies:
|
|
||||||
- name: cozy-lib
|
|
||||||
version: 0.1.0
|
|
||||||
repository: "http://cozystack.cozy-system.svc/repos/library"
|
|
||||||
|
|||||||
@@ -1,32 +1,35 @@
|
|||||||
# Managed Clickhouse Service
|
# Managed Clickhouse Service
|
||||||
|
|
||||||
|
ClickHouse is an open source high-performance and column-oriented SQL database management system (DBMS).
|
||||||
|
It is used for online analytical processing (OLAP).
|
||||||
|
Cozystack platform uses Altinity operator to provide ClickHouse.
|
||||||
|
|
||||||
### How to restore backup:
|
### How to restore backup:
|
||||||
|
|
||||||
find snapshot:
|
1. Find a snapshot:
|
||||||
```
|
```
|
||||||
restic -r s3:s3.example.org/clickhouse-backups/table_name snapshots
|
restic -r s3:s3.example.org/clickhouse-backups/table_name snapshots
|
||||||
```
|
```
|
||||||
|
|
||||||
restore:
|
2. Restore it:
|
||||||
```
|
```
|
||||||
restic -r s3:s3.example.org/clickhouse-backups/table_name restore latest --target /tmp/
|
restic -r s3:s3.example.org/clickhouse-backups/table_name restore latest --target /tmp/
|
||||||
```
|
```
|
||||||
|
|
||||||
more details:
|
For more details, read [Restic: Effective Backup from Stdin](https://blog.aenix.io/restic-effective-backup-from-stdin-4bc1e8f083c1).
|
||||||
- https://itnext.io/restic-effective-backup-from-stdin-4bc1e8f083c1
|
|
||||||
|
|
||||||
## Parameters
|
## Parameters
|
||||||
|
|
||||||
### Common parameters
|
### Common parameters
|
||||||
|
|
||||||
| Name | Description | Value |
|
| Name | Description | Value |
|
||||||
| ---------------- | ----------------------------------- | ------ |
|
| ---------------- | -------------------------------------------------------- | ------ |
|
||||||
| `size` | Persistent Volume size | `10Gi` |
|
| `size` | Size of Persistent Volume for data | `10Gi` |
|
||||||
| `logStorageSize` | Persistent Volume for logs size | `2Gi` |
|
| `logStorageSize` | Size of Persistent Volume for logs | `2Gi` |
|
||||||
| `shards` | Number of Clickhouse replicas | `1` |
|
| `shards` | Number of Clickhouse shards | `1` |
|
||||||
| `replicas` | Number of Clickhouse shards | `2` |
|
| `replicas` | Number of Clickhouse replicas | `2` |
|
||||||
| `storageClass` | StorageClass used to store the data | `""` |
|
| `storageClass` | StorageClass used to store the data | `""` |
|
||||||
| `logTTL` | for query_log and query_thread_log | `15` |
|
| `logTTL` | TTL (expiration time) for query_log and query_thread_log | `15` |
|
||||||
|
|
||||||
### Configuration parameters
|
### Configuration parameters
|
||||||
|
|
||||||
@@ -36,15 +39,32 @@ more details:
|
|||||||
|
|
||||||
### Backup parameters
|
### Backup parameters
|
||||||
|
|
||||||
| Name | Description | Value |
|
| Name | Description | Value |
|
||||||
| ------------------------ | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------ |
|
| ------------------------ | --------------------------------------------------------------------------- | ------------------------------------------------------ |
|
||||||
| `backup.enabled` | Enable pereiodic backups | `false` |
|
| `backup.enabled` | Enable periodic backups | `false` |
|
||||||
| `backup.s3Region` | The AWS S3 region where backups are stored | `us-east-1` |
|
| `backup.s3Region` | AWS S3 region where backups are stored | `us-east-1` |
|
||||||
| `backup.s3Bucket` | The S3 bucket used for storing backups | `s3.example.org/clickhouse-backups` |
|
| `backup.s3Bucket` | S3 bucket used for storing backups | `s3.example.org/clickhouse-backups` |
|
||||||
| `backup.schedule` | Cron schedule for automated backups | `0 2 * * *` |
|
| `backup.schedule` | Cron schedule for automated backups | `0 2 * * *` |
|
||||||
| `backup.cleanupStrategy` | The strategy for cleaning up old backups | `--keep-last=3 --keep-daily=3 --keep-within-weekly=1m` |
|
| `backup.cleanupStrategy` | Retention strategy for cleaning up old backups | `--keep-last=3 --keep-daily=3 --keep-within-weekly=1m` |
|
||||||
| `backup.s3AccessKey` | The access key for S3, used for authentication | `oobaiRus9pah8PhohL1ThaeTa4UVa7gu` |
|
| `backup.s3AccessKey` | Access key for S3, used for authentication | `oobaiRus9pah8PhohL1ThaeTa4UVa7gu` |
|
||||||
| `backup.s3SecretKey` | The secret key for S3, used for authentication | `ju3eum4dekeich9ahM1te8waeGai0oog` |
|
| `backup.s3SecretKey` | Secret key for S3, used for authentication | `ju3eum4dekeich9ahM1te8waeGai0oog` |
|
||||||
| `backup.resticPassword` | The password for Restic backup encryption | `ChaXoveekoh6eigh4siesheeda2quai0` |
|
| `backup.resticPassword` | Password for Restic backup encryption | `ChaXoveekoh6eigh4siesheeda2quai0` |
|
||||||
| `resources` | Resources | `{}` |
|
| `resources` | Explicit CPU/memory resource requests and limits for the Clickhouse service | `{}` |
|
||||||
| `resourcesPreset` | Set container resources according to one common preset (allowed values: none, nano, micro, small, medium, large, xlarge, 2xlarge). This is ignored if resources is set (resources is recommended for production). | `nano` |
|
| `resourcesPreset` | Use a common resources preset when `resources` is not set explicitly. | `nano` |
|
||||||
|
|
||||||
|
|
||||||
|
In production environments, it's recommended to set `resources` explicitly.
|
||||||
|
Example of `resources`:
|
||||||
|
|
||||||
|
```yaml
|
||||||
|
resources:
|
||||||
|
limits:
|
||||||
|
cpu: 4000m
|
||||||
|
memory: 4Gi
|
||||||
|
requests:
|
||||||
|
cpu: 100m
|
||||||
|
memory: 512Mi
|
||||||
|
```
|
||||||
|
|
||||||
|
Allowed values for `resourcesPreset` are `none`, `nano`, `micro`, `small`, `medium`, `large`, `xlarge`, `2xlarge`.
|
||||||
|
This value is ignored if `resources` value is set.
|
||||||
|
|||||||
@@ -122,9 +122,9 @@ spec:
|
|||||||
- name: clickhouse
|
- name: clickhouse
|
||||||
image: clickhouse/clickhouse-server:24.9.2.42
|
image: clickhouse/clickhouse-server:24.9.2.42
|
||||||
{{- if .Values.resources }}
|
{{- if .Values.resources }}
|
||||||
resources: {{- include "cozy-lib.resources.sanitize" (list .Values.resources $) | nindent 16 }}
|
resources: {{- include "cozy-lib.resources.sanitize" .Values.resources | nindent 16 }}
|
||||||
{{- else if ne .Values.resourcesPreset "none" }}
|
{{- else if ne .Values.resourcesPreset "none" }}
|
||||||
resources: {{- include "cozy-lib.resources.preset" (list .Values.resourcesPreset $) | nindent 16 }}
|
resources: {{- include "cozy-lib.resources.preset" .Values.resourcesPreset | nindent 16 }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
volumeMounts:
|
volumeMounts:
|
||||||
- name: data-volume-template
|
- name: data-volume-template
|
||||||
|
|||||||
@@ -4,22 +4,22 @@
|
|||||||
"properties": {
|
"properties": {
|
||||||
"size": {
|
"size": {
|
||||||
"type": "string",
|
"type": "string",
|
||||||
"description": "Persistent Volume size",
|
"description": "Size of Persistent Volume for data",
|
||||||
"default": "10Gi"
|
"default": "10Gi"
|
||||||
},
|
},
|
||||||
"logStorageSize": {
|
"logStorageSize": {
|
||||||
"type": "string",
|
"type": "string",
|
||||||
"description": "Persistent Volume for logs size",
|
"description": "Size of Persistent Volume for logs",
|
||||||
"default": "2Gi"
|
"default": "2Gi"
|
||||||
},
|
},
|
||||||
"shards": {
|
"shards": {
|
||||||
"type": "number",
|
"type": "number",
|
||||||
"description": "Number of Clickhouse replicas",
|
"description": "Number of Clickhouse shards",
|
||||||
"default": 1
|
"default": 1
|
||||||
},
|
},
|
||||||
"replicas": {
|
"replicas": {
|
||||||
"type": "number",
|
"type": "number",
|
||||||
"description": "Number of Clickhouse shards",
|
"description": "Number of Clickhouse replicas",
|
||||||
"default": 2
|
"default": 2
|
||||||
},
|
},
|
||||||
"storageClass": {
|
"storageClass": {
|
||||||
@@ -29,7 +29,7 @@
|
|||||||
},
|
},
|
||||||
"logTTL": {
|
"logTTL": {
|
||||||
"type": "number",
|
"type": "number",
|
||||||
"description": "for query_log and query_thread_log",
|
"description": "TTL (expiration time) for query_log and query_thread_log",
|
||||||
"default": 15
|
"default": 15
|
||||||
},
|
},
|
||||||
"backup": {
|
"backup": {
|
||||||
@@ -37,17 +37,17 @@
|
|||||||
"properties": {
|
"properties": {
|
||||||
"enabled": {
|
"enabled": {
|
||||||
"type": "boolean",
|
"type": "boolean",
|
||||||
"description": "Enable pereiodic backups",
|
"description": "Enable periodic backups",
|
||||||
"default": false
|
"default": false
|
||||||
},
|
},
|
||||||
"s3Region": {
|
"s3Region": {
|
||||||
"type": "string",
|
"type": "string",
|
||||||
"description": "The AWS S3 region where backups are stored",
|
"description": "AWS S3 region where backups are stored",
|
||||||
"default": "us-east-1"
|
"default": "us-east-1"
|
||||||
},
|
},
|
||||||
"s3Bucket": {
|
"s3Bucket": {
|
||||||
"type": "string",
|
"type": "string",
|
||||||
"description": "The S3 bucket used for storing backups",
|
"description": "S3 bucket used for storing backups",
|
||||||
"default": "s3.example.org/clickhouse-backups"
|
"default": "s3.example.org/clickhouse-backups"
|
||||||
},
|
},
|
||||||
"schedule": {
|
"schedule": {
|
||||||
@@ -57,34 +57,34 @@
|
|||||||
},
|
},
|
||||||
"cleanupStrategy": {
|
"cleanupStrategy": {
|
||||||
"type": "string",
|
"type": "string",
|
||||||
"description": "The strategy for cleaning up old backups",
|
"description": "Retention strategy for cleaning up old backups",
|
||||||
"default": "--keep-last=3 --keep-daily=3 --keep-within-weekly=1m"
|
"default": "--keep-last=3 --keep-daily=3 --keep-within-weekly=1m"
|
||||||
},
|
},
|
||||||
"s3AccessKey": {
|
"s3AccessKey": {
|
||||||
"type": "string",
|
"type": "string",
|
||||||
"description": "The access key for S3, used for authentication",
|
"description": "Access key for S3, used for authentication",
|
||||||
"default": "oobaiRus9pah8PhohL1ThaeTa4UVa7gu"
|
"default": "oobaiRus9pah8PhohL1ThaeTa4UVa7gu"
|
||||||
},
|
},
|
||||||
"s3SecretKey": {
|
"s3SecretKey": {
|
||||||
"type": "string",
|
"type": "string",
|
||||||
"description": "The secret key for S3, used for authentication",
|
"description": "Secret key for S3, used for authentication",
|
||||||
"default": "ju3eum4dekeich9ahM1te8waeGai0oog"
|
"default": "ju3eum4dekeich9ahM1te8waeGai0oog"
|
||||||
},
|
},
|
||||||
"resticPassword": {
|
"resticPassword": {
|
||||||
"type": "string",
|
"type": "string",
|
||||||
"description": "The password for Restic backup encryption",
|
"description": "Password for Restic backup encryption",
|
||||||
"default": "ChaXoveekoh6eigh4siesheeda2quai0"
|
"default": "ChaXoveekoh6eigh4siesheeda2quai0"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"resources": {
|
"resources": {
|
||||||
"type": "object",
|
"type": "object",
|
||||||
"description": "Resources",
|
"description": "Explicit CPU/memory resource requests and limits for the Clickhouse service",
|
||||||
"default": {}
|
"default": {}
|
||||||
},
|
},
|
||||||
"resourcesPreset": {
|
"resourcesPreset": {
|
||||||
"type": "string",
|
"type": "string",
|
||||||
"description": "Set container resources according to one common preset (allowed values: none, nano, micro, small, medium, large, xlarge, 2xlarge). This is ignored if resources is set (resources is recommended for production).",
|
"description": "Use a common resources preset when `resources` is not set explicitly.",
|
||||||
"default": "nano"
|
"default": "nano"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,11 +1,11 @@
|
|||||||
## @section Common parameters
|
## @section Common parameters
|
||||||
|
|
||||||
## @param size Persistent Volume size
|
## @param size Size of Persistent Volume for data
|
||||||
## @param logStorageSize Persistent Volume for logs size
|
## @param logStorageSize Size of Persistent Volume for logs
|
||||||
## @param shards Number of Clickhouse replicas
|
## @param shards Number of Clickhouse shards
|
||||||
## @param replicas Number of Clickhouse shards
|
## @param replicas Number of Clickhouse replicas
|
||||||
## @param storageClass StorageClass used to store the data
|
## @param storageClass StorageClass used to store the data
|
||||||
## @param logTTL for query_log and query_thread_log
|
## @param logTTL TTL (expiration time) for query_log and query_thread_log
|
||||||
##
|
##
|
||||||
size: 10Gi
|
size: 10Gi
|
||||||
logStorageSize: 2Gi
|
logStorageSize: 2Gi
|
||||||
@@ -29,14 +29,14 @@ users: {}
|
|||||||
|
|
||||||
## @section Backup parameters
|
## @section Backup parameters
|
||||||
|
|
||||||
## @param backup.enabled Enable pereiodic backups
|
## @param backup.enabled Enable periodic backups
|
||||||
## @param backup.s3Region The AWS S3 region where backups are stored
|
## @param backup.s3Region AWS S3 region where backups are stored
|
||||||
## @param backup.s3Bucket The S3 bucket used for storing backups
|
## @param backup.s3Bucket S3 bucket used for storing backups
|
||||||
## @param backup.schedule Cron schedule for automated backups
|
## @param backup.schedule Cron schedule for automated backups
|
||||||
## @param backup.cleanupStrategy The strategy for cleaning up old backups
|
## @param backup.cleanupStrategy Retention strategy for cleaning up old backups
|
||||||
## @param backup.s3AccessKey The access key for S3, used for authentication
|
## @param backup.s3AccessKey Access key for S3, used for authentication
|
||||||
## @param backup.s3SecretKey The secret key for S3, used for authentication
|
## @param backup.s3SecretKey Secret key for S3, used for authentication
|
||||||
## @param backup.resticPassword The password for Restic backup encryption
|
## @param backup.resticPassword Password for Restic backup encryption
|
||||||
backup:
|
backup:
|
||||||
enabled: false
|
enabled: false
|
||||||
s3Region: us-east-1
|
s3Region: us-east-1
|
||||||
@@ -47,7 +47,7 @@ backup:
|
|||||||
s3SecretKey: ju3eum4dekeich9ahM1te8waeGai0oog
|
s3SecretKey: ju3eum4dekeich9ahM1te8waeGai0oog
|
||||||
resticPassword: ChaXoveekoh6eigh4siesheeda2quai0
|
resticPassword: ChaXoveekoh6eigh4siesheeda2quai0
|
||||||
|
|
||||||
## @param resources Resources
|
## @param resources Explicit CPU/memory resource requests and limits for the Clickhouse service
|
||||||
resources: {}
|
resources: {}
|
||||||
# resources:
|
# resources:
|
||||||
# limits:
|
# limits:
|
||||||
@@ -56,6 +56,6 @@ resources: {}
|
|||||||
# requests:
|
# requests:
|
||||||
# cpu: 100m
|
# cpu: 100m
|
||||||
# memory: 512Mi
|
# memory: 512Mi
|
||||||
|
|
||||||
## @param resourcesPreset Set container resources according to one common preset (allowed values: none, nano, micro, small, medium, large, xlarge, 2xlarge). This is ignored if resources is set (resources is recommended for production).
|
## @param resourcesPreset Use a common resources preset when `resources` is not set explicitly.
|
||||||
resourcesPreset: "nano"
|
resourcesPreset: "nano"
|
||||||
|
|||||||
@@ -1 +1 @@
|
|||||||
ghcr.io/cozystack/cozystack/nginx-cache:0.5.0@sha256:99cd04f09f80eb0c60cc0b2f6bc8180ada7ada00cb594606447674953dfa1b67
|
ghcr.io/cozystack/cozystack/nginx-cache:0.5.0@sha256:c1944c60a449e36e29153a38db6feee41139d38b02fe3670efb673feb3bc0ee6
|
||||||
|
|||||||
@@ -16,7 +16,7 @@ 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.6.0
|
version: 0.6.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
|
||||||
|
|||||||
@@ -14,9 +14,9 @@
|
|||||||
| `zookeeper.replicas` | Number of ZooKeeper replicas | `3` |
|
| `zookeeper.replicas` | Number of ZooKeeper replicas | `3` |
|
||||||
| `zookeeper.storageClass` | StorageClass used to store the ZooKeeper data | `""` |
|
| `zookeeper.storageClass` | StorageClass used to store the ZooKeeper data | `""` |
|
||||||
| `kafka.resources` | Resources | `{}` |
|
| `kafka.resources` | Resources | `{}` |
|
||||||
| `kafka.resourcesPreset` | Set container resources according to one common preset (allowed values: none, nano, micro, small, medium, large, xlarge, 2xlarge). This is ignored if resources is set (resources is recommended for production). | `nano` |
|
| `kafka.resourcesPreset` | Set container resources according to one common preset (allowed values: none, nano, micro, small, medium, large, xlarge, 2xlarge). This is ignored if resources is set (resources is recommended for production). | `small` |
|
||||||
| `zookeeper.resources` | Resources | `{}` |
|
| `zookeeper.resources` | Resources | `{}` |
|
||||||
| `zookeeper.resourcesPreset` | Set container resources according to one common preset (allowed values: none, nano, micro, small, medium, large, xlarge, 2xlarge). This is ignored if resources is set (resources is recommended for production). | `nano` |
|
| `zookeeper.resourcesPreset` | Set container resources according to one common preset (allowed values: none, nano, micro, small, medium, large, xlarge, 2xlarge). This is ignored if resources is set (resources is recommended for production). | `micro` |
|
||||||
|
|
||||||
### Configuration parameters
|
### Configuration parameters
|
||||||
|
|
||||||
|
|||||||
@@ -33,7 +33,7 @@
|
|||||||
"resourcesPreset": {
|
"resourcesPreset": {
|
||||||
"type": "string",
|
"type": "string",
|
||||||
"description": "Set container resources according to one common preset (allowed values: none, nano, micro, small, medium, large, xlarge, 2xlarge). This is ignored if resources is set (resources is recommended for production).",
|
"description": "Set container resources according to one common preset (allowed values: none, nano, micro, small, medium, large, xlarge, 2xlarge). This is ignored if resources is set (resources is recommended for production).",
|
||||||
"default": "nano"
|
"default": "small"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
@@ -63,7 +63,7 @@
|
|||||||
"resourcesPreset": {
|
"resourcesPreset": {
|
||||||
"type": "string",
|
"type": "string",
|
||||||
"description": "Set container resources according to one common preset (allowed values: none, nano, micro, small, medium, large, xlarge, 2xlarge). This is ignored if resources is set (resources is recommended for production).",
|
"description": "Set container resources according to one common preset (allowed values: none, nano, micro, small, medium, large, xlarge, 2xlarge). This is ignored if resources is set (resources is recommended for production).",
|
||||||
"default": "nano"
|
"default": "micro"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -25,7 +25,7 @@ kafka:
|
|||||||
# memory: 512Mi
|
# memory: 512Mi
|
||||||
|
|
||||||
## @param kafka.resourcesPreset Set container resources according to one common preset (allowed values: none, nano, micro, small, medium, large, xlarge, 2xlarge). This is ignored if resources is set (resources is recommended for production).
|
## @param kafka.resourcesPreset Set container resources according to one common preset (allowed values: none, nano, micro, small, medium, large, xlarge, 2xlarge). This is ignored if resources is set (resources is recommended for production).
|
||||||
resourcesPreset: "nano"
|
resourcesPreset: "small"
|
||||||
|
|
||||||
zookeeper:
|
zookeeper:
|
||||||
size: 5Gi
|
size: 5Gi
|
||||||
@@ -42,7 +42,7 @@ zookeeper:
|
|||||||
# memory: 512Mi
|
# memory: 512Mi
|
||||||
|
|
||||||
## @param zookeeper.resourcesPreset Set container resources according to one common preset (allowed values: none, nano, micro, small, medium, large, xlarge, 2xlarge). This is ignored if resources is set (resources is recommended for production).
|
## @param zookeeper.resourcesPreset Set container resources according to one common preset (allowed values: none, nano, micro, small, medium, large, xlarge, 2xlarge). This is ignored if resources is set (resources is recommended for production).
|
||||||
resourcesPreset: "nano"
|
resourcesPreset: "micro"
|
||||||
|
|
||||||
## @section Configuration parameters
|
## @section Configuration parameters
|
||||||
|
|
||||||
|
|||||||
@@ -1 +1 @@
|
|||||||
ghcr.io/cozystack/cozystack/cluster-autoscaler:0.21.0@sha256:7315850634728a5864a3de3150c12f0e1454f3f1ce33cdf21a278f57611dd5e9
|
ghcr.io/cozystack/cozystack/cluster-autoscaler:0.21.0@sha256:3a8170433e1632e5cc2b6d9db34d0605e8e6c63c158282c38450415e700e932e
|
||||||
|
|||||||
@@ -1 +1 @@
|
|||||||
ghcr.io/cozystack/cozystack/kubevirt-cloud-provider:0.21.0@sha256:6962bdf51ab2ff40b420b9cff7c850aeea02187da2a65a67f10e0471744649d7
|
ghcr.io/cozystack/cozystack/kubevirt-cloud-provider:0.21.0@sha256:c53cff22980c754eb45f552cb1ccd3d9ad0b4ce4c12b024012e0ae256fd114f0
|
||||||
|
|||||||
@@ -1 +1 @@
|
|||||||
ghcr.io/cozystack/cozystack/kubevirt-csi-driver:0.21.0@sha256:b1525163cd21938ac934bb1b860f2f3151464fa463b82880ab058167aeaf3e29
|
ghcr.io/cozystack/cozystack/kubevirt-csi-driver:0.21.0@sha256:510e4c8db50126391b94668fccce9f6ed82d298a02882d2585596b5c6213ddc3
|
||||||
|
|||||||
@@ -1 +1 @@
|
|||||||
ghcr.io/cozystack/cozystack/ubuntu-container-disk:v1.32@sha256:bfe568db4b768a4b6c67a8d562892bbba766d0245e140d431754589b347f0b41
|
ghcr.io/cozystack/cozystack/ubuntu-container-disk:v1.32@sha256:e53f2394c7aa76ad10818ffb945e40006cd77406999e47e036d41b8b0bf094cc
|
||||||
|
|||||||
@@ -4,4 +4,4 @@ description: Separated tenant namespace
|
|||||||
icon: /logos/tenant.svg
|
icon: /logos/tenant.svg
|
||||||
|
|
||||||
type: application
|
type: application
|
||||||
version: 1.9.2
|
version: 1.10.0
|
||||||
|
|||||||
1
packages/apps/tenant/charts/cozy-lib
Symbolic link
1
packages/apps/tenant/charts/cozy-lib
Symbolic link
@@ -0,0 +1 @@
|
|||||||
|
../../../library/cozy-lib
|
||||||
@@ -23,8 +23,8 @@ metadata:
|
|||||||
namespace: {{ include "tenant.name" . }}
|
namespace: {{ include "tenant.name" . }}
|
||||||
rules:
|
rules:
|
||||||
- apiGroups: [""]
|
- apiGroups: [""]
|
||||||
resources: ["*"]
|
resources: ["pods", "services", "persistentvolumes", "endpoints", "events", "resourcequotas"]
|
||||||
verbs: ["get", "list", "watch", "create", "update", "patch"]
|
verbs: ["get", "list", "watch"]
|
||||||
- apiGroups: ["networking.k8s.io"]
|
- apiGroups: ["networking.k8s.io"]
|
||||||
resources: ["ingresses"]
|
resources: ["ingresses"]
|
||||||
verbs: ["get", "list", "watch"]
|
verbs: ["get", "list", "watch"]
|
||||||
@@ -94,7 +94,12 @@ rules:
|
|||||||
- apiGroups:
|
- apiGroups:
|
||||||
- ""
|
- ""
|
||||||
resources:
|
resources:
|
||||||
- "*"
|
- pods
|
||||||
|
- services
|
||||||
|
- persistentvolumes
|
||||||
|
- endpoints
|
||||||
|
- events
|
||||||
|
- resourcequotas
|
||||||
verbs:
|
verbs:
|
||||||
- get
|
- get
|
||||||
- list
|
- list
|
||||||
@@ -119,24 +124,7 @@ metadata:
|
|||||||
name: {{ include "tenant.name" . }}-view
|
name: {{ include "tenant.name" . }}-view
|
||||||
namespace: {{ include "tenant.name" . }}
|
namespace: {{ include "tenant.name" . }}
|
||||||
subjects:
|
subjects:
|
||||||
{{- if ne .Release.Namespace "tenant-root" }}
|
{{ include "cozy-lib.rbac.subjectsForTenant" (list "view" (include "tenant.name" .)) | nindent 2 }}
|
||||||
- kind: Group
|
|
||||||
name: tenant-root-view
|
|
||||||
apiGroup: rbac.authorization.k8s.io
|
|
||||||
{{- end }}
|
|
||||||
- kind: Group
|
|
||||||
name: {{ include "tenant.name" . }}-view
|
|
||||||
apiGroup: rbac.authorization.k8s.io
|
|
||||||
{{- if hasPrefix "tenant-" .Release.Namespace }}
|
|
||||||
{{- $parts := splitList "-" .Release.Namespace }}
|
|
||||||
{{- range $i, $v := $parts }}
|
|
||||||
{{- if ne $i 0 }}
|
|
||||||
- kind: Group
|
|
||||||
name: {{ join "-" (slice $parts 0 (add $i 1)) }}-view
|
|
||||||
apiGroup: rbac.authorization.k8s.io
|
|
||||||
{{- end }}
|
|
||||||
{{- end }}
|
|
||||||
{{- end }}
|
|
||||||
roleRef:
|
roleRef:
|
||||||
kind: Role
|
kind: Role
|
||||||
name: {{ include "tenant.name" . }}-view
|
name: {{ include "tenant.name" . }}-view
|
||||||
@@ -165,7 +153,12 @@ rules:
|
|||||||
- watch
|
- watch
|
||||||
- apiGroups: [""]
|
- apiGroups: [""]
|
||||||
resources:
|
resources:
|
||||||
- "*"
|
- pods
|
||||||
|
- services
|
||||||
|
- persistentvolumes
|
||||||
|
- endpoints
|
||||||
|
- events
|
||||||
|
- resourcequotas
|
||||||
verbs:
|
verbs:
|
||||||
- get
|
- get
|
||||||
- list
|
- list
|
||||||
@@ -184,6 +177,12 @@ rules:
|
|||||||
verbs:
|
verbs:
|
||||||
- get
|
- get
|
||||||
- list
|
- list
|
||||||
|
- apiGroups: ["subresources.kubevirt.io"]
|
||||||
|
resources:
|
||||||
|
- virtualmachineinstances/portforward
|
||||||
|
verbs:
|
||||||
|
- get
|
||||||
|
- update
|
||||||
- apiGroups:
|
- apiGroups:
|
||||||
- cozystack.io
|
- cozystack.io
|
||||||
resources:
|
resources:
|
||||||
@@ -196,24 +195,7 @@ metadata:
|
|||||||
name: {{ include "tenant.name" . }}-use
|
name: {{ include "tenant.name" . }}-use
|
||||||
namespace: {{ include "tenant.name" . }}
|
namespace: {{ include "tenant.name" . }}
|
||||||
subjects:
|
subjects:
|
||||||
{{- if ne .Release.Namespace "tenant-root" }}
|
{{ include "cozy-lib.rbac.subjectsForTenant" (list "use" (include "tenant.name" .)) | nindent 2 }}
|
||||||
- kind: Group
|
|
||||||
name: tenant-root-use
|
|
||||||
apiGroup: rbac.authorization.k8s.io
|
|
||||||
{{- end }}
|
|
||||||
- kind: Group
|
|
||||||
name: {{ include "tenant.name" . }}-use
|
|
||||||
apiGroup: rbac.authorization.k8s.io
|
|
||||||
{{- if hasPrefix "tenant-" .Release.Namespace }}
|
|
||||||
{{- $parts := splitList "-" .Release.Namespace }}
|
|
||||||
{{- range $i, $v := $parts }}
|
|
||||||
{{- if ne $i 0 }}
|
|
||||||
- kind: Group
|
|
||||||
name: {{ join "-" (slice $parts 0 (add $i 1)) }}-use
|
|
||||||
apiGroup: rbac.authorization.k8s.io
|
|
||||||
{{- end }}
|
|
||||||
{{- end }}
|
|
||||||
{{- end }}
|
|
||||||
roleRef:
|
roleRef:
|
||||||
kind: Role
|
kind: Role
|
||||||
name: {{ include "tenant.name" . }}-use
|
name: {{ include "tenant.name" . }}-use
|
||||||
@@ -234,7 +216,12 @@ rules:
|
|||||||
- get
|
- get
|
||||||
- apiGroups: [""]
|
- apiGroups: [""]
|
||||||
resources:
|
resources:
|
||||||
- "*"
|
- pods
|
||||||
|
- services
|
||||||
|
- persistentvolumes
|
||||||
|
- endpoints
|
||||||
|
- events
|
||||||
|
- resourcequotas
|
||||||
verbs:
|
verbs:
|
||||||
- get
|
- get
|
||||||
- list
|
- list
|
||||||
@@ -253,6 +240,12 @@ rules:
|
|||||||
verbs:
|
verbs:
|
||||||
- get
|
- get
|
||||||
- list
|
- list
|
||||||
|
- apiGroups: ["subresources.kubevirt.io"]
|
||||||
|
resources:
|
||||||
|
- virtualmachineinstances/portforward
|
||||||
|
verbs:
|
||||||
|
- get
|
||||||
|
- update
|
||||||
- apiGroups: ["apps.cozystack.io"]
|
- apiGroups: ["apps.cozystack.io"]
|
||||||
resources:
|
resources:
|
||||||
- buckets
|
- buckets
|
||||||
@@ -293,24 +286,7 @@ metadata:
|
|||||||
name: {{ include "tenant.name" . }}-admin
|
name: {{ include "tenant.name" . }}-admin
|
||||||
namespace: {{ include "tenant.name" . }}
|
namespace: {{ include "tenant.name" . }}
|
||||||
subjects:
|
subjects:
|
||||||
{{- if ne .Release.Namespace "tenant-root" }}
|
{{ include "cozy-lib.rbac.subjectsForTenant" (list "admin" (include "tenant.name" .)) | nindent 2 }}
|
||||||
- kind: Group
|
|
||||||
name: tenant-root-admin
|
|
||||||
apiGroup: rbac.authorization.k8s.io
|
|
||||||
{{- end }}
|
|
||||||
- kind: Group
|
|
||||||
name: {{ include "tenant.name" . }}-admin
|
|
||||||
apiGroup: rbac.authorization.k8s.io
|
|
||||||
{{- if hasPrefix "tenant-" .Release.Namespace }}
|
|
||||||
{{- $parts := splitList "-" .Release.Namespace }}
|
|
||||||
{{- range $i, $v := $parts }}
|
|
||||||
{{- if ne $i 0 }}
|
|
||||||
- kind: Group
|
|
||||||
name: {{ join "-" (slice $parts 0 (add $i 1)) }}-admin
|
|
||||||
apiGroup: rbac.authorization.k8s.io
|
|
||||||
{{- end }}
|
|
||||||
{{- end }}
|
|
||||||
{{- end }}
|
|
||||||
roleRef:
|
roleRef:
|
||||||
kind: Role
|
kind: Role
|
||||||
name: {{ include "tenant.name" . }}-admin
|
name: {{ include "tenant.name" . }}-admin
|
||||||
@@ -331,7 +307,12 @@ rules:
|
|||||||
- get
|
- get
|
||||||
- apiGroups: [""]
|
- apiGroups: [""]
|
||||||
resources:
|
resources:
|
||||||
- "*"
|
- pods
|
||||||
|
- services
|
||||||
|
- persistentvolumes
|
||||||
|
- endpoints
|
||||||
|
- events
|
||||||
|
- resourcequotas
|
||||||
verbs:
|
verbs:
|
||||||
- get
|
- get
|
||||||
- list
|
- list
|
||||||
@@ -349,6 +330,12 @@ rules:
|
|||||||
verbs:
|
verbs:
|
||||||
- get
|
- get
|
||||||
- list
|
- list
|
||||||
|
- apiGroups: ["subresources.kubevirt.io"]
|
||||||
|
resources:
|
||||||
|
- virtualmachineinstances/portforward
|
||||||
|
verbs:
|
||||||
|
- get
|
||||||
|
- update
|
||||||
- apiGroups: ["apps.cozystack.io"]
|
- apiGroups: ["apps.cozystack.io"]
|
||||||
resources:
|
resources:
|
||||||
- '*'
|
- '*'
|
||||||
@@ -366,24 +353,7 @@ metadata:
|
|||||||
name: {{ include "tenant.name" . }}-super-admin
|
name: {{ include "tenant.name" . }}-super-admin
|
||||||
namespace: {{ include "tenant.name" . }}
|
namespace: {{ include "tenant.name" . }}
|
||||||
subjects:
|
subjects:
|
||||||
{{- if ne .Release.Namespace "tenant-root" }}
|
{{ include "cozy-lib.rbac.subjectsForTenant" (list "super-admin" (include "tenant.name" .) ) | nindent 2 }}
|
||||||
- kind: Group
|
|
||||||
name: tenant-root-super-admin
|
|
||||||
apiGroup: rbac.authorization.k8s.io
|
|
||||||
{{- end }}
|
|
||||||
- kind: Group
|
|
||||||
name: {{ include "tenant.name" . }}-super-admin
|
|
||||||
apiGroup: rbac.authorization.k8s.io
|
|
||||||
{{- if hasPrefix "tenant-" .Release.Namespace }}
|
|
||||||
{{- $parts := splitList "-" .Release.Namespace }}
|
|
||||||
{{- range $i, $v := $parts }}
|
|
||||||
{{- if ne $i 0 }}
|
|
||||||
- kind: Group
|
|
||||||
name: {{ join "-" (slice $parts 0 (add $i 1)) }}-super-admin
|
|
||||||
apiGroup: rbac.authorization.k8s.io
|
|
||||||
{{- end }}
|
|
||||||
{{- end }}
|
|
||||||
{{- end }}
|
|
||||||
roleRef:
|
roleRef:
|
||||||
kind: Role
|
kind: Role
|
||||||
name: {{ include "tenant.name" . }}-super-admin
|
name: {{ include "tenant.name" . }}-super-admin
|
||||||
|
|||||||
@@ -36,7 +36,8 @@ kafka 0.3.2 93c46161
|
|||||||
kafka 0.3.3 8267072d
|
kafka 0.3.3 8267072d
|
||||||
kafka 0.4.0 85ec09b8
|
kafka 0.4.0 85ec09b8
|
||||||
kafka 0.5.0 93bdf411
|
kafka 0.5.0 93bdf411
|
||||||
kafka 0.6.0 HEAD
|
kafka 0.6.0 6130f43d
|
||||||
|
kafka 0.6.1 HEAD
|
||||||
kubernetes 0.1.0 263e47be
|
kubernetes 0.1.0 263e47be
|
||||||
kubernetes 0.2.0 53f2365e
|
kubernetes 0.2.0 53f2365e
|
||||||
kubernetes 0.3.0 007d414f
|
kubernetes 0.3.0 007d414f
|
||||||
@@ -146,7 +147,8 @@ tenant 1.7.0 24fa7222
|
|||||||
tenant 1.8.0 160e4e2a
|
tenant 1.8.0 160e4e2a
|
||||||
tenant 1.9.0 728743db
|
tenant 1.9.0 728743db
|
||||||
tenant 1.9.1 721c12a7
|
tenant 1.9.1 721c12a7
|
||||||
tenant 1.9.2 HEAD
|
tenant 1.9.2 8c86905b
|
||||||
|
tenant 1.10.0 HEAD
|
||||||
virtual-machine 0.1.4 f2015d65
|
virtual-machine 0.1.4 f2015d65
|
||||||
virtual-machine 0.1.5 263e47be
|
virtual-machine 0.1.5 263e47be
|
||||||
virtual-machine 0.2.0 c0685f43
|
virtual-machine 0.2.0 c0685f43
|
||||||
|
|||||||
@@ -1,2 +1,2 @@
|
|||||||
cozystack:
|
cozystack:
|
||||||
image: ghcr.io/cozystack/cozystack/installer:v0.31.1@sha256:b8f418e45dcbf351b13ce743f3528b195159753430d35c619dd82a1c676ae3bb
|
image: ghcr.io/cozystack/cozystack/installer:v0.31.2@sha256:c45ab98465c0077337077f86f5e7d8ab3c051db6092854bbc9c26400c3317f9a
|
||||||
|
|||||||
@@ -167,7 +167,7 @@ releases:
|
|||||||
releaseName: snapshot-controller
|
releaseName: snapshot-controller
|
||||||
chart: cozy-snapshot-controller
|
chart: cozy-snapshot-controller
|
||||||
namespace: cozy-snapshot-controller
|
namespace: cozy-snapshot-controller
|
||||||
dependsOn: [cilium,cert-manager-issuers]
|
dependsOn: [cilium]
|
||||||
|
|
||||||
- name: objectstorage-controller
|
- name: objectstorage-controller
|
||||||
releaseName: objectstorage-controller
|
releaseName: objectstorage-controller
|
||||||
|
|||||||
@@ -69,4 +69,10 @@ kubeapps:
|
|||||||
.appview-first-row section[aria-labelledby="access-urls-title"] {
|
.appview-first-row section[aria-labelledby="access-urls-title"] {
|
||||||
width: 100%;
|
width: 100%;
|
||||||
}
|
}
|
||||||
|
.header-version {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
.label.label-info-secondary {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
|
|||||||
@@ -1,2 +1,2 @@
|
|||||||
e2e:
|
e2e:
|
||||||
image: ghcr.io/cozystack/cozystack/e2e-sandbox:v0.31.1@sha256:55809f10d69d32b47b9ca306482861255408516eab7775498ac71368f362ee96
|
image: ghcr.io/cozystack/cozystack/e2e-sandbox:v0.31.2@sha256:90468a068e64d41135e94104307dfee7c34baa97d1ad3661431a54a2a5742f5f
|
||||||
|
|||||||
@@ -1 +1 @@
|
|||||||
ghcr.io/cozystack/cozystack/matchbox:v0.31.1@sha256:31b267a3a542e4ddabcadb85fbfe1fb0746e57cc29d941d320437cfd0abae7d9
|
ghcr.io/cozystack/cozystack/matchbox:v0.31.2@sha256:b680021f59d717929fe41bc974a0e39ab9b4d361bf8f5189c7a98c2267bd039e
|
||||||
|
|||||||
@@ -3,4 +3,4 @@ name: monitoring
|
|||||||
description: Monitoring and observability stack
|
description: Monitoring and observability stack
|
||||||
icon: /logos/monitoring.svg
|
icon: /logos/monitoring.svg
|
||||||
type: application
|
type: application
|
||||||
version: 1.10.0
|
version: 1.10.1
|
||||||
|
|||||||
@@ -1 +1 @@
|
|||||||
ghcr.io/cozystack/cozystack/grafana:1.10.0@sha256:c63978e1ed0304e8518b31ddee56c4e8115541b997d8efbe1c0a74da57140399
|
ghcr.io/cozystack/cozystack/grafana:1.10.1@sha256:c63978e1ed0304e8518b31ddee56c4e8115541b997d8efbe1c0a74da57140399
|
||||||
|
|||||||
@@ -18,8 +18,8 @@ spec:
|
|||||||
{{- if and .vminsert .vminsert.minAllowed }}
|
{{- if and .vminsert .vminsert.minAllowed }}
|
||||||
{{- toYaml .vminsert.minAllowed | nindent 10 }}
|
{{- toYaml .vminsert.minAllowed | nindent 10 }}
|
||||||
{{- else }}
|
{{- else }}
|
||||||
cpu: 250m
|
cpu: 25m
|
||||||
memory: 256Mi
|
memory: 64Mi
|
||||||
{{- end }}
|
{{- end }}
|
||||||
maxAllowed:
|
maxAllowed:
|
||||||
{{- if and .vminsert .vminsert.maxAllowed }}
|
{{- if and .vminsert .vminsert.maxAllowed }}
|
||||||
@@ -47,8 +47,8 @@ spec:
|
|||||||
{{- if and .vmselect .vmselect.minAllowed }}
|
{{- if and .vmselect .vmselect.minAllowed }}
|
||||||
{{- toYaml .vmselect.minAllowed | nindent 10 }}
|
{{- toYaml .vmselect.minAllowed | nindent 10 }}
|
||||||
{{- else }}
|
{{- else }}
|
||||||
cpu: 250m
|
cpu: 25m
|
||||||
memory: 256Mi
|
memory: 64Mi
|
||||||
{{- end }}
|
{{- end }}
|
||||||
maxAllowed:
|
maxAllowed:
|
||||||
{{- if and .vmselect .vmselect.maxAllowed }}
|
{{- if and .vmselect .vmselect.maxAllowed }}
|
||||||
@@ -76,8 +76,8 @@ spec:
|
|||||||
{{- if and .vmstorage .vmstorage.minAllowed }}
|
{{- if and .vmstorage .vmstorage.minAllowed }}
|
||||||
{{- toYaml .vmstorage.minAllowed | nindent 10 }}
|
{{- toYaml .vmstorage.minAllowed | nindent 10 }}
|
||||||
{{- else }}
|
{{- else }}
|
||||||
cpu: 100m
|
cpu: 25m
|
||||||
memory: 512Mi
|
memory: 64Mi
|
||||||
{{- end }}
|
{{- end }}
|
||||||
maxAllowed:
|
maxAllowed:
|
||||||
{{- if and .vmstorage .vmstorage.maxAllowed }}
|
{{- if and .vmstorage .vmstorage.maxAllowed }}
|
||||||
|
|||||||
@@ -16,7 +16,7 @@ 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.4.0
|
version: 0.4.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
|
||||||
|
|||||||
@@ -13,8 +13,8 @@ spec:
|
|||||||
containerPolicies:
|
containerPolicies:
|
||||||
- containerName: seaweedfs
|
- containerName: seaweedfs
|
||||||
minAllowed:
|
minAllowed:
|
||||||
cpu: 250m
|
cpu: 25m
|
||||||
memory: 256Mi
|
memory: 64Mi
|
||||||
maxAllowed:
|
maxAllowed:
|
||||||
cpu: "1"
|
cpu: "1"
|
||||||
memory: 2048Mi
|
memory: 2048Mi
|
||||||
@@ -36,8 +36,8 @@ spec:
|
|||||||
containerPolicies:
|
containerPolicies:
|
||||||
- containerName: seaweedfs
|
- containerName: seaweedfs
|
||||||
minAllowed:
|
minAllowed:
|
||||||
cpu: 250m
|
cpu: 25m
|
||||||
memory: 256Mi
|
memory: 64Mi
|
||||||
maxAllowed:
|
maxAllowed:
|
||||||
cpu: "1"
|
cpu: "1"
|
||||||
memory: 2048Mi
|
memory: 2048Mi
|
||||||
@@ -59,8 +59,8 @@ spec:
|
|||||||
containerPolicies:
|
containerPolicies:
|
||||||
- containerName: seaweedfs
|
- containerName: seaweedfs
|
||||||
minAllowed:
|
minAllowed:
|
||||||
cpu: 250m
|
cpu: 25m
|
||||||
memory: 256Mi
|
memory: 64Mi
|
||||||
maxAllowed:
|
maxAllowed:
|
||||||
cpu: "1"
|
cpu: "1"
|
||||||
memory: 2048Mi
|
memory: 2048Mi
|
||||||
|
|||||||
@@ -39,9 +39,11 @@ monitoring 1.8.1 8267072d
|
|||||||
monitoring 1.9.0 45a7416c
|
monitoring 1.9.0 45a7416c
|
||||||
monitoring 1.9.1 fd240701
|
monitoring 1.9.1 fd240701
|
||||||
monitoring 1.9.2 f9f8bb2f
|
monitoring 1.9.2 f9f8bb2f
|
||||||
monitoring 1.10.0 HEAD
|
monitoring 1.10.0 632224a3
|
||||||
|
monitoring 1.10.1 HEAD
|
||||||
seaweedfs 0.1.0 71514249
|
seaweedfs 0.1.0 71514249
|
||||||
seaweedfs 0.2.0 5fb9cfe3
|
seaweedfs 0.2.0 5fb9cfe3
|
||||||
seaweedfs 0.2.1 fde4bcfa
|
seaweedfs 0.2.1 fde4bcfa
|
||||||
seaweedfs 0.3.0 45a7416c
|
seaweedfs 0.3.0 45a7416c
|
||||||
seaweedfs 0.4.0 HEAD
|
seaweedfs 0.4.0 632224a3
|
||||||
|
seaweedfs 0.4.1 HEAD
|
||||||
|
|||||||
106
packages/library/cozy-lib/templates/_rbac.tpl
Normal file
106
packages/library/cozy-lib/templates/_rbac.tpl
Normal file
@@ -0,0 +1,106 @@
|
|||||||
|
{{- define "cozy-lib.rbac.accessLevelMap" }}
|
||||||
|
view: 0
|
||||||
|
use: 1
|
||||||
|
admin: 2
|
||||||
|
super-admin: 3
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
{{- define "cozy-lib.rbac.accessLevelToInt" }}
|
||||||
|
{{- $accessMap := include "cozy-lib.rbac.accessLevelMap" "" | fromYaml }}
|
||||||
|
{{- $accessLevel := dig . -1 $accessMap | int }}
|
||||||
|
{{- if eq $accessLevel -1 }}
|
||||||
|
{{- printf "encountered access level of %s, allowed values are %s" . ($accessMap | keys) | fail }}
|
||||||
|
{{- end }}
|
||||||
|
{{- $accessLevel }}
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
{{- define "cozy-lib.rbac.accessLevelsAtOrAbove" }}
|
||||||
|
{{- $minLevelInt := include "cozy-lib.rbac.accessLevelToInt" . | int }}
|
||||||
|
{{- range $k, $v := (include "cozy-lib.rbac.accessLevelMap" "" | fromYaml) }}
|
||||||
|
{{- if ge (int $v) $minLevelInt }}
|
||||||
|
- {{ $k }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
{{- define "cozy-lib.rbac.allParentTenantsAndThis" }}
|
||||||
|
{{- if not (hasPrefix "tenant-" .) }}
|
||||||
|
{{- printf "'%s' is not a valid tenant identifier" . | fail }}
|
||||||
|
{{- end }}
|
||||||
|
{{- $parts := append (splitList "-" .) "" }}
|
||||||
|
{{- $tenants := list }}
|
||||||
|
{{- range untilStep 2 (len $parts) 1 }}
|
||||||
|
{{- $tenants = append $tenants (slice $parts 0 . | join "-") }}
|
||||||
|
{{- end }}
|
||||||
|
{{- range $tenants }}
|
||||||
|
- {{ . }}
|
||||||
|
{{- end }}
|
||||||
|
{{- if not (eq . "tenant-root") }}
|
||||||
|
- tenant-root
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
{{- define "cozy-lib.rbac.groupSubject" -}}
|
||||||
|
- kind: Group
|
||||||
|
name: {{ . }}
|
||||||
|
apiGroup: rbac.authorization.k8s.io
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
{{- define "cozy-lib.rbac.serviceAccountSubject" -}}
|
||||||
|
- kind: ServiceAccount
|
||||||
|
name: {{ . }}
|
||||||
|
namespace: {{ . }}
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
{{- /*
|
||||||
|
A helper function to get a list of groups that should have access, given a
|
||||||
|
minimal access level and the tenant. Invoked as:
|
||||||
|
{{ include "cozy-lib.rbac.subjectsForTenantAndAccessLevel" (list "use" $) }}
|
||||||
|
For an example input of (list "use" $) and a .Release.Namespace of
|
||||||
|
tenant-abc-def it will return:
|
||||||
|
---
|
||||||
|
- kind: Group
|
||||||
|
name: tenant-abc-admin
|
||||||
|
apiGroup: rbac.authorization.k8s.io
|
||||||
|
- kind: Group
|
||||||
|
name: tenant-abc-def-admin
|
||||||
|
apiGroup: rbac.authorization.k8s.io
|
||||||
|
- kind: Group
|
||||||
|
name: tenant-abc-super-admin
|
||||||
|
apiGroup: rbac.authorization.k8s.io
|
||||||
|
- kind: Group
|
||||||
|
name: tenant-abc-def-super-admin
|
||||||
|
apiGroup: rbac.authorization.k8s.io
|
||||||
|
- kind: Group
|
||||||
|
name: tenant-abc-use
|
||||||
|
apiGroup: rbac.authorization.k8s.io
|
||||||
|
- kind: Group
|
||||||
|
name: tenant-abc-def-use
|
||||||
|
apiGroup: rbac.authorization.k8s.io
|
||||||
|
|
||||||
|
in other words, all roles including use and higher and for tenant-abc-def, as
|
||||||
|
well as all parent, grandparent, etc. tenants.
|
||||||
|
*/}}
|
||||||
|
{{- define "cozy-lib.rbac.subjectsForTenantAndAccessLevel" }}
|
||||||
|
{{- include "cozy-lib.checkInput" . }}
|
||||||
|
{{- $level := index . 0 }}
|
||||||
|
{{- $tenant := index . 1 }}
|
||||||
|
{{- $levels := include "cozy-lib.rbac.accessLevelsAtOrAbove" $level | fromYamlArray }}
|
||||||
|
{{- $tenants := include "cozy-lib.rbac.allParentTenantsAndThis" $tenant | fromYamlArray }}
|
||||||
|
{{- range $t := $tenants }}
|
||||||
|
{{- include "cozy-lib.rbac.serviceAccountSubject" $t }}{{ printf "\n" }}
|
||||||
|
{{- range $l := $levels }}
|
||||||
|
{{- include "cozy-lib.rbac.groupSubject" (printf "%s-%s" $t $l) }}{{ printf "\n" }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end}}
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
{{- define "cozy-lib.rbac.subjectsForTenant" }}
|
||||||
|
{{- include "cozy-lib.checkInput" . }}
|
||||||
|
{{- $level := index . 0 }}
|
||||||
|
{{- $tenant := index . 1 }}
|
||||||
|
{{- $tenants := include "cozy-lib.rbac.allParentTenantsAndThis" $tenant | fromYamlArray }}
|
||||||
|
{{- range $t := $tenants }}
|
||||||
|
{{- include "cozy-lib.rbac.groupSubject" (printf "%s-%s" $t $level) }}{{ printf "\n" }}
|
||||||
|
{{- end}}
|
||||||
|
{{- end }}
|
||||||
@@ -1 +1 @@
|
|||||||
ghcr.io/cozystack/cozystack/s3manager:v0.5.0@sha256:87669221b6c51dfdf9d9b0c97b41b90cb9199de3739c1623351f604621a99ae3
|
ghcr.io/cozystack/cozystack/s3manager:v0.5.0@sha256:a634d52923f2f6acc8bd9595b3fa500d1cbdc686dfbeb59e36060d805e5a2684
|
||||||
|
|||||||
@@ -1,2 +1,2 @@
|
|||||||
cozystackAPI:
|
cozystackAPI:
|
||||||
image: ghcr.io/cozystack/cozystack/cozystack-api:v0.31.1@sha256:4b6fc8f5a50ad02486aca663f6d29a800dcc1eb66763ca7f0e8f176b37f97f16
|
image: ghcr.io/cozystack/cozystack/cozystack-api:v0.31.2@sha256:1b545911b21026f22eba46974294b8ac223e76a1ab84b42eae7f7c952547c9ca
|
||||||
|
|||||||
@@ -12,3 +12,6 @@ rules:
|
|||||||
- apiGroups: ["helm.toolkit.fluxcd.io"]
|
- apiGroups: ["helm.toolkit.fluxcd.io"]
|
||||||
resources: ["helmreleases"]
|
resources: ["helmreleases"]
|
||||||
verbs: ["get", "list", "watch", "patch", "update"]
|
verbs: ["get", "list", "watch", "patch", "update"]
|
||||||
|
- apiGroups: [""]
|
||||||
|
resources: ["namespaces"]
|
||||||
|
verbs: ["get", "list", "watch", "patch", "update"]
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
cozystackController:
|
cozystackController:
|
||||||
image: ghcr.io/cozystack/cozystack/cozystack-controller:v0.31.1@sha256:7b415d9cbad18fdfbc13423a930a03164141d1972500fe3a1a45ba240da75c55
|
image: ghcr.io/cozystack/cozystack/cozystack-controller:v0.31.2@sha256:0f07f4f796c3ca9f34ea36876ca2e86c6b10b11dc8122433021769681b0f15bf
|
||||||
debug: false
|
debug: false
|
||||||
disableTelemetry: false
|
disableTelemetry: false
|
||||||
cozystackVersion: "v0.31.1"
|
cozystackVersion: "v0.31.2"
|
||||||
|
|||||||
@@ -76,7 +76,7 @@ data:
|
|||||||
"kubeappsNamespace": {{ .Release.Namespace | quote }},
|
"kubeappsNamespace": {{ .Release.Namespace | quote }},
|
||||||
"helmGlobalNamespace": {{ include "kubeapps.helmGlobalPackagingNamespace" . | quote }},
|
"helmGlobalNamespace": {{ include "kubeapps.helmGlobalPackagingNamespace" . | quote }},
|
||||||
"carvelGlobalNamespace": {{ .Values.kubeappsapis.pluginConfig.kappController.packages.v1alpha1.globalPackagingNamespace | quote }},
|
"carvelGlobalNamespace": {{ .Values.kubeappsapis.pluginConfig.kappController.packages.v1alpha1.globalPackagingNamespace | quote }},
|
||||||
"appVersion": "v0.31.1",
|
"appVersion": "v0.31.2",
|
||||||
"authProxyEnabled": {{ .Values.authProxy.enabled }},
|
"authProxyEnabled": {{ .Values.authProxy.enabled }},
|
||||||
"oauthLoginURI": {{ .Values.authProxy.oauthLoginURI | quote }},
|
"oauthLoginURI": {{ .Values.authProxy.oauthLoginURI | quote }},
|
||||||
"oauthLogoutURI": {{ .Values.authProxy.oauthLogoutURI | quote }},
|
"oauthLogoutURI": {{ .Values.authProxy.oauthLogoutURI | quote }},
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
FROM bitnami/node:20.15.1 AS build
|
FROM bitnami/node:20.15.1 AS build
|
||||||
WORKDIR /app
|
WORKDIR /app
|
||||||
|
|
||||||
ARG COMMIT_REF=190ea544aeb0be74bb6d1aa4bb474910559e7ecd
|
ARG COMMIT_REF=6856b66f9244ef1b2703a2f30899366e0ba040de
|
||||||
RUN wget -O- https://github.com/cozystack/kubeapps/archive/${COMMIT_REF}.tar.gz | tar xzf - --strip-components=2 kubeapps-${COMMIT_REF}/dashboard
|
RUN wget -O- https://github.com/cozystack/kubeapps/archive/${COMMIT_REF}.tar.gz | tar xzf - --strip-components=2 kubeapps-${COMMIT_REF}/dashboard
|
||||||
|
|
||||||
RUN yarn install --frozen-lockfile
|
RUN yarn install --frozen-lockfile
|
||||||
|
|||||||
@@ -4,7 +4,7 @@
|
|||||||
# syntax = docker/dockerfile:1
|
# syntax = docker/dockerfile:1
|
||||||
|
|
||||||
FROM alpine AS source
|
FROM alpine AS source
|
||||||
ARG COMMIT_REF=dd02680d796c962b8dcc4e5ea70960a846c1acdc
|
ARG COMMIT_REF=6856b66f9244ef1b2703a2f30899366e0ba040de
|
||||||
RUN apk add --no-cache patch
|
RUN apk add --no-cache patch
|
||||||
WORKDIR /source
|
WORKDIR /source
|
||||||
RUN wget -O- https://github.com/cozystack/kubeapps/archive/${COMMIT_REF}.tar.gz | tar xzf - --strip-components=1
|
RUN wget -O- https://github.com/cozystack/kubeapps/archive/${COMMIT_REF}.tar.gz | tar xzf - --strip-components=1
|
||||||
|
|||||||
@@ -19,24 +19,26 @@ kubeapps:
|
|||||||
image:
|
image:
|
||||||
registry: ghcr.io/cozystack/cozystack
|
registry: ghcr.io/cozystack/cozystack
|
||||||
repository: dashboard
|
repository: dashboard
|
||||||
tag: v0.31.1
|
tag: v0.31.2
|
||||||
digest: "sha256:a83fe4654f547469cfa469a02bda1273c54bca103a41eb007fdb2e18a7a91e93"
|
digest: "sha256:5e514516bd3dc0c693bb346ddeb9740e0439a59deb2a56b87317286e3ce79ac9"
|
||||||
redis:
|
redis:
|
||||||
master:
|
master:
|
||||||
resourcesPreset: "none"
|
resourcesPreset: "none"
|
||||||
resources:
|
resources:
|
||||||
requests:
|
requests:
|
||||||
cpu: 200m
|
cpu: 20m
|
||||||
memory: 256Mi
|
memory: 32Mi
|
||||||
limits:
|
limits:
|
||||||
memory: 256Mi
|
memory: 256Mi
|
||||||
kubeappsapis:
|
kubeappsapis:
|
||||||
resourcesPreset: "none"
|
resourcesPreset: "none"
|
||||||
|
qps: "250.0"
|
||||||
|
burst: "500"
|
||||||
image:
|
image:
|
||||||
registry: ghcr.io/cozystack/cozystack
|
registry: ghcr.io/cozystack/cozystack
|
||||||
repository: kubeapps-apis
|
repository: kubeapps-apis
|
||||||
tag: v0.31.1
|
tag: v0.31.2
|
||||||
digest: "sha256:07646be7508e443c2fe11b1f33757a716aec487c09b42343e490f9edccb1d57f"
|
digest: "sha256:930f8f4b9e69a82f3de7fee951ead272f5d3a4c5d8eddad33b068f9e9682a962"
|
||||||
pluginConfig:
|
pluginConfig:
|
||||||
flux:
|
flux:
|
||||||
packages:
|
packages:
|
||||||
|
|||||||
@@ -5,3 +5,10 @@ flux-operator:
|
|||||||
operator: Exists
|
operator: Exists
|
||||||
effect: NoSchedule
|
effect: NoSchedule
|
||||||
hostNetwork: true
|
hostNetwork: true
|
||||||
|
resources:
|
||||||
|
limits:
|
||||||
|
cpu: 1000m
|
||||||
|
memory: 1Gi
|
||||||
|
requests:
|
||||||
|
cpu: 10m
|
||||||
|
memory: 64Mi
|
||||||
|
|||||||
@@ -3,7 +3,7 @@ kamaji:
|
|||||||
deploy: false
|
deploy: false
|
||||||
image:
|
image:
|
||||||
pullPolicy: IfNotPresent
|
pullPolicy: IfNotPresent
|
||||||
tag: v0.31.1@sha256:2402c2e4592d79983e074a2de8758a72f8cf2ea653cd30e0550ff2b988eb2e00
|
tag: v0.31.2@sha256:39bd83f5e7dae9c462f25d3aaef4240749dc380469062b9184727d5b12d0d584
|
||||||
repository: ghcr.io/cozystack/cozystack/kamaji
|
repository: ghcr.io/cozystack/cozystack/kamaji
|
||||||
resources:
|
resources:
|
||||||
limits:
|
limits:
|
||||||
|
|||||||
@@ -1,3 +1,3 @@
|
|||||||
portSecurity: true
|
portSecurity: true
|
||||||
routes: ""
|
routes: ""
|
||||||
image: ghcr.io/cozystack/cozystack/kubeovn-webhook:v0.31.1@sha256:c3f68266a7a43f87a392449939c0fe990821325bcb8070efb8e50f1f886b9c2c
|
image: ghcr.io/cozystack/cozystack/kubeovn-webhook:v0.31.2@sha256:afb08b32724c573d5b6503343271ae59cae2e7b554d7d441a276615416b59e71
|
||||||
|
|||||||
@@ -16,6 +16,48 @@ kube-ovn:
|
|||||||
OPENVSWITCH_DIR: "/var/lib/openvswitch"
|
OPENVSWITCH_DIR: "/var/lib/openvswitch"
|
||||||
OVN_DIR: "/var/lib/ovn"
|
OVN_DIR: "/var/lib/ovn"
|
||||||
DISABLE_MODULES_MANAGEMENT: true
|
DISABLE_MODULES_MANAGEMENT: true
|
||||||
|
ovn-central:
|
||||||
|
requests:
|
||||||
|
cpu: "50m"
|
||||||
|
memory: "100Mi"
|
||||||
|
limits:
|
||||||
|
cpu: "3"
|
||||||
|
memory: "4Gi"
|
||||||
|
ovs-ovn:
|
||||||
|
requests:
|
||||||
|
cpu: "10m"
|
||||||
|
memory: "50Mi"
|
||||||
|
limits:
|
||||||
|
cpu: "2"
|
||||||
|
memory: "1000Mi"
|
||||||
|
kube-ovn-controller:
|
||||||
|
requests:
|
||||||
|
cpu: "10m"
|
||||||
|
memory: "100Mi"
|
||||||
|
limits:
|
||||||
|
cpu: "1000m"
|
||||||
|
memory: "1Gi"
|
||||||
|
kube-ovn-cni:
|
||||||
|
requests:
|
||||||
|
cpu: "50m"
|
||||||
|
memory: "50Mi"
|
||||||
|
limits:
|
||||||
|
cpu: "1000m"
|
||||||
|
memory: "1Gi"
|
||||||
|
kube-ovn-pinger:
|
||||||
|
requests:
|
||||||
|
cpu: "10m"
|
||||||
|
memory: "50Mi"
|
||||||
|
limits:
|
||||||
|
cpu: "200m"
|
||||||
|
memory: "400Mi"
|
||||||
|
kube-ovn-monitor:
|
||||||
|
requests:
|
||||||
|
cpu: "10m"
|
||||||
|
memory: "50Mi"
|
||||||
|
limits:
|
||||||
|
cpu: "200m"
|
||||||
|
memory: "200Mi"
|
||||||
global:
|
global:
|
||||||
registry:
|
registry:
|
||||||
address: ghcr.io/cozystack/cozystack
|
address: ghcr.io/cozystack/cozystack
|
||||||
|
|||||||
@@ -4,8 +4,8 @@ metallb:
|
|||||||
controller:
|
controller:
|
||||||
image:
|
image:
|
||||||
repository: ghcr.io/cozystack/cozystack/metallb-controller
|
repository: ghcr.io/cozystack/cozystack/metallb-controller
|
||||||
tag: v0.14.9@sha256:d8fa1a8147f844fb6add20a2147e9be6d1c26424748439c2648a0f6d8e10804d
|
tag: v0.14.9@sha256:9bd71ad21152915dc1c31c79aa1b64ea248d3785b1d6c08ae8c62cc6f688e59a
|
||||||
speaker:
|
speaker:
|
||||||
image:
|
image:
|
||||||
repository: ghcr.io/cozystack/cozystack/metallb-speaker
|
repository: ghcr.io/cozystack/cozystack/metallb-speaker
|
||||||
tag: v0.14.9@sha256:a65437314ef23acf030afb44c3a25c5cb6ee813041e9b36ee7e0988a1e21b762
|
tag: v0.14.9@sha256:f63fe3478101c711d84ba7423f0deb6b0c403ca278ca1b9327c693aaf51a3d1e
|
||||||
|
|||||||
@@ -0,0 +1,8 @@
|
|||||||
|
{{- if not (lookup "helm.toolkit.fluxcd.io/v2" "HelmRelease" "cozy-cert-manager" "cert-manager-issuers") }}
|
||||||
|
apiVersion: cert-manager.io/v1
|
||||||
|
kind: ClusterIssuer
|
||||||
|
metadata:
|
||||||
|
name: selfsigned-cluster-issuer
|
||||||
|
spec:
|
||||||
|
selfSigned: {}
|
||||||
|
{{- end }}
|
||||||
10
scripts/migrations/13
Executable file
10
scripts/migrations/13
Executable file
@@ -0,0 +1,10 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
# Migration 13 --> 14
|
||||||
|
|
||||||
|
# Upgrade tenants.apps to new chart version
|
||||||
|
kubectl get tenants.apps.cozystack.io -A --no-headers --output=custom-columns='NAMESPACE:.metadata.namespace,NAME:.metadata.name' | while read NAMESPACE NAME; do
|
||||||
|
kubectl patch tenants.apps.cozystack.io -n "$NAMESPACE" "$NAME" --type merge -p '{"appVersion":"1.10.0"}'
|
||||||
|
done
|
||||||
|
|
||||||
|
# Write version to cozystack-version config
|
||||||
|
kubectl create configmap -n cozy-system cozystack-version --from-literal=version=14 --dry-run=client -o yaml | kubectl apply -f-
|
||||||
Reference in New Issue
Block a user