diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md
index 40c1bc5..3676f36 100644
--- a/CONTRIBUTING.md
+++ b/CONTRIBUTING.md
@@ -18,14 +18,14 @@ Large or architectural changes are best discussed first (see [Contact](#contact)
- [.NET SDK](https://dotnet.microsoft.com/download) compatible with the `TargetFramework` values in the `.csproj` files under `src/` (the main solution currently targets **.NET 10**).
- Optional but recommended for end-to-end checks: **Docker** or **Podman**, as in the README installation sections.
-- **Visual Studio 2022** or another editor with C# support works well; the solution file is `src/MaksIT.CertsUI.sln`.
+- **Visual Studio 2022** (17.14+) or another editor with C# support works well; the solution file is `src/MaksIT.CertsUI.slnx` (SLNX; requires a recent `dotnet` SDK, e.g. 9.0.200+).
### Build
From the repository root:
```bash
-dotnet build src/MaksIT.CertsUI.sln -c Release
+dotnet build src/MaksIT.CertsUI.slnx -c Release
```
Use `Debug` while iterating locally if you prefer.
diff --git a/src/MaksIT.CertsUI.sln b/src/MaksIT.CertsUI.sln
deleted file mode 100644
index 8c1e257..0000000
--- a/src/MaksIT.CertsUI.sln
+++ /dev/null
@@ -1,125 +0,0 @@
-
-Microsoft Visual Studio Solution File, Format Version 12.00
-# Visual Studio Version 17
-VisualStudioVersion = 17.6.33815.320
-MinimumVisualStudioVersion = 10.0.40219.1
-Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "LetsEncrypt", "LetsEncrypt\LetsEncrypt.csproj", "{7DE431E5-889C-434E-AD02-9F89D7A0ED27}"
-EndProject
-Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Documentation", "Documentation", "{3374FDB1-C95E-4103-8E14-5BBF0BDC4E9D}"
- ProjectSection(SolutionItems) = preProject
- ..\CHANGELOG.md = ..\CHANGELOG.md
- ..\CONTRIBUTING.md = ..\CONTRIBUTING.md
- ..\LICENSE.md = ..\LICENSE.md
- ..\README.md = ..\README.md
- EndProjectSection
-EndProject
-Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "MaksIT.Webapi", "MaksIT.Webapi\MaksIT.Webapi.csproj", "{B5F39E04-C2E3-49BF-82C2-9DEBAA949E3D}"
-EndProject
-Project("{E53339B2-1760-4266-BCC7-CA923CBCF16C}") = "docker-compose", "docker-compose.dcproj", "{0233E43F-435D-4309-B20C-ECD4BFBD2E63}"
-EndProject
-Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "MaksIT.Models", "MaksIT.Models\MaksIT.Models.csproj", "{6814169B-D4D0-40B2-9FA9-89997DD44C30}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ReverseProxy", "ReverseProxy\ReverseProxy.csproj", "{BE051147-7AB7-4358-9C24-5CB40FAFF4FC}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "LetsEncrypt.Tests", "LetsEncrypt.Tests\LetsEncrypt.Tests.csproj", "{65DEB577-FB14-488C-AEB1-3172F0812950}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "MaksIT.Webapi.Tests", "MaksIT.Webapi.Tests\MaksIT.Webapi.Tests.csproj", "{EB57DB1C-DEEE-4952-9326-FB09903651F4}"
-EndProject
-Global
- GlobalSection(SolutionConfigurationPlatforms) = preSolution
- Debug|Any CPU = Debug|Any CPU
- Debug|x64 = Debug|x64
- Debug|x86 = Debug|x86
- Release|Any CPU = Release|Any CPU
- Release|x64 = Release|x64
- Release|x86 = Release|x86
- EndGlobalSection
- GlobalSection(ProjectConfigurationPlatforms) = postSolution
- {7DE431E5-889C-434E-AD02-9F89D7A0ED27}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {7DE431E5-889C-434E-AD02-9F89D7A0ED27}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {7DE431E5-889C-434E-AD02-9F89D7A0ED27}.Debug|x64.ActiveCfg = Debug|Any CPU
- {7DE431E5-889C-434E-AD02-9F89D7A0ED27}.Debug|x64.Build.0 = Debug|Any CPU
- {7DE431E5-889C-434E-AD02-9F89D7A0ED27}.Debug|x86.ActiveCfg = Debug|Any CPU
- {7DE431E5-889C-434E-AD02-9F89D7A0ED27}.Debug|x86.Build.0 = Debug|Any CPU
- {7DE431E5-889C-434E-AD02-9F89D7A0ED27}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {7DE431E5-889C-434E-AD02-9F89D7A0ED27}.Release|Any CPU.Build.0 = Release|Any CPU
- {7DE431E5-889C-434E-AD02-9F89D7A0ED27}.Release|x64.ActiveCfg = Release|Any CPU
- {7DE431E5-889C-434E-AD02-9F89D7A0ED27}.Release|x64.Build.0 = Release|Any CPU
- {7DE431E5-889C-434E-AD02-9F89D7A0ED27}.Release|x86.ActiveCfg = Release|Any CPU
- {7DE431E5-889C-434E-AD02-9F89D7A0ED27}.Release|x86.Build.0 = Release|Any CPU
- {B5F39E04-C2E3-49BF-82C2-9DEBAA949E3D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {B5F39E04-C2E3-49BF-82C2-9DEBAA949E3D}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {B5F39E04-C2E3-49BF-82C2-9DEBAA949E3D}.Debug|x64.ActiveCfg = Debug|Any CPU
- {B5F39E04-C2E3-49BF-82C2-9DEBAA949E3D}.Debug|x64.Build.0 = Debug|Any CPU
- {B5F39E04-C2E3-49BF-82C2-9DEBAA949E3D}.Debug|x86.ActiveCfg = Debug|Any CPU
- {B5F39E04-C2E3-49BF-82C2-9DEBAA949E3D}.Debug|x86.Build.0 = Debug|Any CPU
- {B5F39E04-C2E3-49BF-82C2-9DEBAA949E3D}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {B5F39E04-C2E3-49BF-82C2-9DEBAA949E3D}.Release|Any CPU.Build.0 = Release|Any CPU
- {B5F39E04-C2E3-49BF-82C2-9DEBAA949E3D}.Release|x64.ActiveCfg = Release|Any CPU
- {B5F39E04-C2E3-49BF-82C2-9DEBAA949E3D}.Release|x64.Build.0 = Release|Any CPU
- {B5F39E04-C2E3-49BF-82C2-9DEBAA949E3D}.Release|x86.ActiveCfg = Release|Any CPU
- {B5F39E04-C2E3-49BF-82C2-9DEBAA949E3D}.Release|x86.Build.0 = Release|Any CPU
- {0233E43F-435D-4309-B20C-ECD4BFBD2E63}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {0233E43F-435D-4309-B20C-ECD4BFBD2E63}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {0233E43F-435D-4309-B20C-ECD4BFBD2E63}.Debug|x64.ActiveCfg = Debug|x64
- {0233E43F-435D-4309-B20C-ECD4BFBD2E63}.Debug|x86.ActiveCfg = Debug|x86
- {0233E43F-435D-4309-B20C-ECD4BFBD2E63}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {0233E43F-435D-4309-B20C-ECD4BFBD2E63}.Release|Any CPU.Build.0 = Release|Any CPU
- {0233E43F-435D-4309-B20C-ECD4BFBD2E63}.Release|x64.ActiveCfg = Release|x64
- {0233E43F-435D-4309-B20C-ECD4BFBD2E63}.Release|x86.ActiveCfg = Release|x86
- {6814169B-D4D0-40B2-9FA9-89997DD44C30}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {6814169B-D4D0-40B2-9FA9-89997DD44C30}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {6814169B-D4D0-40B2-9FA9-89997DD44C30}.Debug|x64.ActiveCfg = Debug|Any CPU
- {6814169B-D4D0-40B2-9FA9-89997DD44C30}.Debug|x64.Build.0 = Debug|Any CPU
- {6814169B-D4D0-40B2-9FA9-89997DD44C30}.Debug|x86.ActiveCfg = Debug|Any CPU
- {6814169B-D4D0-40B2-9FA9-89997DD44C30}.Debug|x86.Build.0 = Debug|Any CPU
- {6814169B-D4D0-40B2-9FA9-89997DD44C30}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {6814169B-D4D0-40B2-9FA9-89997DD44C30}.Release|Any CPU.Build.0 = Release|Any CPU
- {6814169B-D4D0-40B2-9FA9-89997DD44C30}.Release|x64.ActiveCfg = Release|Any CPU
- {6814169B-D4D0-40B2-9FA9-89997DD44C30}.Release|x64.Build.0 = Release|Any CPU
- {6814169B-D4D0-40B2-9FA9-89997DD44C30}.Release|x86.ActiveCfg = Release|Any CPU
- {6814169B-D4D0-40B2-9FA9-89997DD44C30}.Release|x86.Build.0 = Release|Any CPU
- {BE051147-7AB7-4358-9C24-5CB40FAFF4FC}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {BE051147-7AB7-4358-9C24-5CB40FAFF4FC}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {BE051147-7AB7-4358-9C24-5CB40FAFF4FC}.Debug|x64.ActiveCfg = Debug|Any CPU
- {BE051147-7AB7-4358-9C24-5CB40FAFF4FC}.Debug|x64.Build.0 = Debug|Any CPU
- {BE051147-7AB7-4358-9C24-5CB40FAFF4FC}.Debug|x86.ActiveCfg = Debug|Any CPU
- {BE051147-7AB7-4358-9C24-5CB40FAFF4FC}.Debug|x86.Build.0 = Debug|Any CPU
- {BE051147-7AB7-4358-9C24-5CB40FAFF4FC}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {BE051147-7AB7-4358-9C24-5CB40FAFF4FC}.Release|Any CPU.Build.0 = Release|Any CPU
- {BE051147-7AB7-4358-9C24-5CB40FAFF4FC}.Release|x64.ActiveCfg = Release|Any CPU
- {BE051147-7AB7-4358-9C24-5CB40FAFF4FC}.Release|x64.Build.0 = Release|Any CPU
- {BE051147-7AB7-4358-9C24-5CB40FAFF4FC}.Release|x86.ActiveCfg = Release|Any CPU
- {BE051147-7AB7-4358-9C24-5CB40FAFF4FC}.Release|x86.Build.0 = Release|Any CPU
- {65DEB577-FB14-488C-AEB1-3172F0812950}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {65DEB577-FB14-488C-AEB1-3172F0812950}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {65DEB577-FB14-488C-AEB1-3172F0812950}.Debug|x64.ActiveCfg = Debug|Any CPU
- {65DEB577-FB14-488C-AEB1-3172F0812950}.Debug|x64.Build.0 = Debug|Any CPU
- {65DEB577-FB14-488C-AEB1-3172F0812950}.Debug|x86.ActiveCfg = Debug|Any CPU
- {65DEB577-FB14-488C-AEB1-3172F0812950}.Debug|x86.Build.0 = Debug|Any CPU
- {65DEB577-FB14-488C-AEB1-3172F0812950}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {65DEB577-FB14-488C-AEB1-3172F0812950}.Release|Any CPU.Build.0 = Release|Any CPU
- {65DEB577-FB14-488C-AEB1-3172F0812950}.Release|x64.ActiveCfg = Release|Any CPU
- {65DEB577-FB14-488C-AEB1-3172F0812950}.Release|x64.Build.0 = Release|Any CPU
- {65DEB577-FB14-488C-AEB1-3172F0812950}.Release|x86.ActiveCfg = Release|Any CPU
- {65DEB577-FB14-488C-AEB1-3172F0812950}.Release|x86.Build.0 = Release|Any CPU
- {EB57DB1C-DEEE-4952-9326-FB09903651F4}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {EB57DB1C-DEEE-4952-9326-FB09903651F4}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {EB57DB1C-DEEE-4952-9326-FB09903651F4}.Debug|x64.ActiveCfg = Debug|Any CPU
- {EB57DB1C-DEEE-4952-9326-FB09903651F4}.Debug|x64.Build.0 = Debug|Any CPU
- {EB57DB1C-DEEE-4952-9326-FB09903651F4}.Debug|x86.ActiveCfg = Debug|Any CPU
- {EB57DB1C-DEEE-4952-9326-FB09903651F4}.Debug|x86.Build.0 = Debug|Any CPU
- {EB57DB1C-DEEE-4952-9326-FB09903651F4}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {EB57DB1C-DEEE-4952-9326-FB09903651F4}.Release|Any CPU.Build.0 = Release|Any CPU
- {EB57DB1C-DEEE-4952-9326-FB09903651F4}.Release|x64.ActiveCfg = Release|Any CPU
- {EB57DB1C-DEEE-4952-9326-FB09903651F4}.Release|x64.Build.0 = Release|Any CPU
- {EB57DB1C-DEEE-4952-9326-FB09903651F4}.Release|x86.ActiveCfg = Release|Any CPU
- {EB57DB1C-DEEE-4952-9326-FB09903651F4}.Release|x86.Build.0 = Release|Any CPU
- EndGlobalSection
- GlobalSection(SolutionProperties) = preSolution
- HideSolutionNode = FALSE
- EndGlobalSection
- GlobalSection(ExtensibilityGlobals) = postSolution
- SolutionGuid = {B78BD325-B2C1-456C-8EA8-42F9B89E0351}
- EndGlobalSection
-EndGlobal
diff --git a/src/MaksIT.CertsUI.slnx b/src/MaksIT.CertsUI.slnx
new file mode 100644
index 0000000..1b30467
--- /dev/null
+++ b/src/MaksIT.CertsUI.slnx
@@ -0,0 +1,22 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/MaksIT.WebUI/.env.prod b/src/MaksIT.WebUI/.env.prod
index 9470eae..bc8d02d 100644
--- a/src/MaksIT.WebUI/.env.prod
+++ b/src/MaksIT.WebUI/.env.prod
@@ -1,4 +1,4 @@
VITE_APP_TITLE=MaksIT.CertsUI
VITE_COMPANY=MaksIT
VITE_COMPANY_URL=https://maks-it.com
-VITE_API_URL=http://172.16.0.5:8080/api
\ No newline at end of file
+VITE_API_URL=http://localhost:8080/api
\ No newline at end of file
diff --git a/src/MaksIT.WebUI/public/config.js b/src/MaksIT.WebUI/public/config.js
index 6e9b5f4..92c0e00 100644
--- a/src/MaksIT.WebUI/public/config.js
+++ b/src/MaksIT.WebUI/public/config.js
@@ -1,3 +1,3 @@
window.RUNTIME_CONFIG = {
- API_URL: "http://172.16.0.5:8080/api"
+ API_URL: "http://localhost:8080/api"
};
\ No newline at end of file
diff --git a/src/docker-compose.override.yml b/src/docker-compose.override.yml
index ef76fd0..acf3d8b 100644
--- a/src/docker-compose.override.yml
+++ b/src/docker-compose.override.yml
@@ -13,7 +13,6 @@ services:
container_name: certs-ui-client
environment:
- ASPNETCORE_ENVIRONMENT=Development
- - LETSENCRYPT_SERVER=http://localhost:8080
volumes:
- ./MaksIT.WebUI:/app
networks:
diff --git a/src/helm/templates/NOTES.txt b/src/helm/templates/NOTES.txt
index 3e0790c..36bd3bf 100644
--- a/src/helm/templates/NOTES.txt
+++ b/src/helm/templates/NOTES.txt
@@ -18,9 +18,9 @@ Port-forward API example:
------------------------------------------------------------
## Images
-Image tag: `components.*.image.tag`, then `global.image.tag`, then Chart `appVersion`.
+Image tag: **`global.image.tag` when set**, else **`components.*.image.tag`**. There is **no** fallback to Chart `appVersion`; set tags explicitly (chart default is `latest` per component when **`global.image.tag`** is omitted). To force one tag for all images, uncomment **`global.image.tag`** in **`values.yaml`** (see commented examples).
-**imagePullPolicy** resolves as: `components.*.image.pullPolicy` (if set in your values), else `global.image.pullPolicy`, else `IfNotPresent`. Values may use **`always`** / **`Always`** (normalized for the Pod spec).
+**imagePullPolicy**: **`global.image.pullPolicy` when set**, else **`components.*.image.pullPolicy`**, else **`IfNotPresent`** in the template. Chart **`values.yaml`** sets per-component **`pullPolicy: IfNotPresent`** and omits **`global.image.pullPolicy`** so components win by default. Uncomment the example under **`global.image`** to override all. Values may use **`always`** / **`Always`** (normalized for the Pod spec).
With **`Always`**, the chart sets pod annotation **`rollme`**: by default **`r-`** so each **`helm upgrade`** bumps the revision even when the tag is unchanged. For **`helm template`** output committed to git, revision is usually **1** and epoch is frozen until you re-render — then pass **`global.rolloutNonce`** from CI (unique per deploy, e.g. pipeline id) so the applied manifest changes every image push. Pin **`global.rollme`** to a string you bump when you need a stable, deterministic rollout key.
@@ -28,6 +28,8 @@ With **`IfNotPresent`** (default), **`rollme`** is omitted; the node may keep a
Pod annotation **certs-ui.io/image** is the resolved `registry/repository:tag` for debugging.
+Optional per workload under **`components.`**: **`livenessProbe`**, **`readinessProbe`**, **`resources`** (standard Kubernetes container fields). Omit a key to leave it unset.
+
------------------------------------------------------------
## Config
diff --git a/src/helm/templates/_helpers.tpl b/src/helm/templates/_helpers.tpl
index 86aeb4e..3f4533b 100644
--- a/src/helm/templates/_helpers.tpl
+++ b/src/helm/templates/_helpers.tpl
@@ -25,6 +25,7 @@ app.kubernetes.io/name: {{ include "certs-ui.name" . }}
app.kubernetes.io/instance: {{ .Release.Name }}
app.kubernetes.io/version: {{ .Chart.AppVersion | quote }}
helm.sh/chart: {{ include "certs-ui.chart" . }}
+app.kubernetes.io/managed-by: {{ .Release.Service }}
{{- end }}
{{- /* Kubernetes imagePullPolicy; accepts common casing (always / IfNotPresent). */ -}}
@@ -44,12 +45,15 @@ imagePullSecrets:
{{- end }}
{{- end }}
-{{- /* image tag: component, global.image.tag, Chart.AppVersion */ -}}
+{{- /* image tag: global.image.tag when set (non-empty), else components.*.image.tag. No Chart.AppVersion. */ -}}
{{- define "certs-ui.component.imageTag" -}}
{{- $root := .root }}
{{- $comp := .comp }}
{{- $g := default dict $root.Values.global.image }}
-{{- $comp.image.tag | default $g.tag | default $root.Chart.AppVersion }}
+{{- $gt := $g.tag | default "" | toString | trim -}}
+{{- $ct := $comp.image.tag | default "" | toString | trim -}}
+{{- $tag := ternary $gt $ct (ne $gt "") }}
+{{- required "certs-ui: set global.image.tag and/or each components.*.image.tag" $tag }}
{{- end }}
{{- define "certs-ui.podLabels" -}}
diff --git a/src/helm/templates/deployments.yaml b/src/helm/templates/deployments.yaml
index f291e82..a999228 100644
--- a/src/helm/templates/deployments.yaml
+++ b/src/helm/templates/deployments.yaml
@@ -1,8 +1,11 @@
{{- $root := . -}}
-{{- $globalPull := $root.Values.global.image.pullPolicy | default "" }}
+{{- $gimg := $root.Values.global.image | default dict -}}
+{{- $globalPull := $gimg.pullPolicy | default "" | toString | trim }}
{{- range $compName, $comp := .Values.components }}
{{- $imageTag := include "certs-ui.component.imageTag" (dict "root" $root "comp" $comp) }}
-{{- $pullPolicy := include "certs-ui.normalizePullPolicy" (coalesce $comp.image.pullPolicy $globalPull "IfNotPresent") | trim }}
+{{- $compPull := $comp.image.pullPolicy | default "" | toString | trim }}
+{{- $pullRaw := ternary $globalPull $compPull (ne $globalPull "") }}
+{{- $pullPolicy := include "certs-ui.normalizePullPolicy" (default "IfNotPresent" $pullRaw) | trim }}
{{- $alwaysPull := eq $pullPolicy "Always" }}
{{- $rollEpoch := now | unixEpoch | toString }}
{{- $rollRev := $root.Release.Revision | toString }}
@@ -16,6 +19,8 @@
{{- $secretName := ternary $sf.existingSecret (printf "%s-%s-secrets" (include "certs-ui.fullname" $root) $compName) (ne ($sf.existingSecret | default "") "") }}
{{- $hasCm := or (ne ($cf.existingConfigMap | default "") "") (and $cf.key (hasKey $cf "content")) }}
{{- $hasSecret := or (ne ($sf.existingSecret | default "") "") (and $sf.key (hasKey $sf "content")) }}
+{{- $svc := default dict $comp.service }}
+{{- $tgt := default 8080 $svc.targetPort }}
---
apiVersion: apps/v1
kind: Deployment
@@ -53,8 +58,6 @@ spec:
- name: {{ $compName }}
image: "{{ $comp.image.registry }}/{{ $comp.image.repository }}:{{ $imageTag }}"
imagePullPolicy: {{ $pullPolicy }}
- {{ $svc := default dict $comp.service }}
- {{ $tgt := default 8080 $svc.targetPort }}
ports:
- name: http
containerPort: {{ $tgt }}
@@ -65,6 +68,18 @@ spec:
value: {{ .value | quote }}
{{- end }}
{{- end }}
+ {{- with $comp.livenessProbe }}
+ livenessProbe:
+{{- toYaml . | nindent 12 }}
+ {{- end }}
+ {{- with $comp.readinessProbe }}
+ readinessProbe:
+{{- toYaml . | nindent 12 }}
+ {{- end }}
+ {{- with $comp.resources }}
+ resources:
+{{- toYaml . | nindent 12 }}
+ {{- end }}
{{- $p := default dict $comp.persistence -}}
{{- $vols := default (list) $p.volumes -}}
{{- $hasVols := gt (len $vols) 0 -}}
diff --git a/src/helm/values.yaml b/src/helm/values.yaml
index 37d3380..e7e3cb7 100644
--- a/src/helm/values.yaml
+++ b/src/helm/values.yaml
@@ -1,10 +1,13 @@
global:
imagePullSecrets: []
image:
- tag: "" # used if component image.tag is empty; else Chart appVersion
- # pullPolicy: always # optional; default IfNotPresent. Use always (any casing) for same-tag registry updates.
- # rollme: "" # optional; when Always — fixed rollme; bump manually to roll
- # rolloutNonce: "" # optional; when Always — set per CI run (e.g. build id) if you apply frozen manifests (git-rendered YAML); changes rollme without re-helm timing
+ # Uncomment to override every component (global wins when set). Otherwise use each components.*.image.
+ # No Chart.appVersion.
+ # tag: "latest"
+ # pullPolicy: IfNotPresent
+ # Optional rollout tuning (see NOTES): pin a fixed pod annotation or add a nonce for frozen/git-rendered manifests.
+ # rollme: ""
+ # rolloutNonce: ""
nameOverride: ""
fullnameOverride: ""
@@ -47,7 +50,8 @@ components:
image:
registry: cr.maks-it.com
repository: certs-ui/server
- tag: ""
+ tag: latest
+ pullPolicy: IfNotPresent
env:
- name: ASPNETCORE_ENVIRONMENT
value: Production
@@ -143,7 +147,8 @@ components:
image:
registry: cr.maks-it.com
repository: certs-ui/client
- tag: ""
+ tag: latest
+ pullPolicy: IfNotPresent
service:
enabled: true
type: ClusterIP
@@ -159,12 +164,24 @@ components:
window.RUNTIME_CONFIG = {
API_URL: {{ .Values.certsClientRuntime.apiUrl | toJson }}
};
+ livenessProbe:
+ tcpSocket:
+ port: http
+ initialDelaySeconds: 10
+ periodSeconds: 10
+ readinessProbe:
+ tcpSocket:
+ port: http
+ initialDelaySeconds: 5
+ periodSeconds: 5
+ resources: {}
reverseproxy:
image:
registry: cr.maks-it.com
repository: certs-ui/reverseproxy
- tag: ""
+ tag: latest
+ pullPolicy: IfNotPresent
env:
- name: ASPNETCORE_ENVIRONMENT
value: Production
@@ -175,3 +192,14 @@ components:
type: ClusterIP
port: 8080
targetPort: 8080
+ livenessProbe:
+ tcpSocket:
+ port: http
+ initialDelaySeconds: 15
+ periodSeconds: 10
+ readinessProbe:
+ tcpSocket:
+ port: http
+ initialDelaySeconds: 5
+ periodSeconds: 5
+ resources: {}