fix(timetagger) switch to nonroot image **BREAKING CHANGES** (#18918)

Changes timetagger to non root image. 
adds option for Proxy auth.
removes old credential env tg_user and tg_pass no longer referenced by
upstream
<!--

-->
⚒️ Fixes  #18907 

**⚙️ Type of change**

- [ ] ⚙️ Feature/App addition
- [ ] 🪛 Bugfix
- [x] ⚠️ Breaking change (fix or feature that would cause existing
functionality to not work as expected)
- [ ] 🔃 Refactor of current code

**🧪 How Has This Been Tested?**
<!--
Please describe the tests that you ran to verify your changes. Provide
instructions so we can reproduce. Please also list any relevant details
for your test configuration
-->

**📃 Notes:**
<!-- Please enter any other relevant information here -->

**✔️ Checklist:**

- [x] ⚖️ My code follows the style guidelines of this project
- [x] 👀 I have performed a self-review of my own code
- [ ] #️⃣ I have commented my code, particularly in hard-to-understand
areas
- [ ] 📄 I have made corresponding changes to the documentation
- [ ] ⚠️ My changes generate no new warnings
- [ ] 🧪 I have added tests to this description that prove my fix is
effective or that my feature works
- [ ] ⬆️ I increased versions for any altered app according to semantic
versioning

** App addition**

If this PR is an app addition please make sure you have done the
following.

- [ ] 🖼️ I have added an icon in the Chart's root directory called
`icon.png`

---

_Please don't blindly check all the boxes. Read them and only check
those that apply.
Those checkboxes are there for the reviewer to see what is this all
about and
the status of this PR with a quick glance._
This commit is contained in:
shadofall 2024-03-05 09:55:44 -05:00 committed by GitHub
parent 376ee6c6f8
commit 6c8f86673b
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
5 changed files with 34 additions and 20 deletions

View File

@ -35,4 +35,4 @@ sources:
- https://github.com/truecharts/charts/tree/master/charts/stable/timetagger
- https://ghcr.io/almarklein/timetagger
type: application
version: 5.2.0
version: 6.0.0

View File

@ -0,0 +1,6 @@
# Credential Generation Basic Auth
To Setup Credentials for Basic Authg proceed to <https://timetagger.app/cred> and enter the user name and password you wish to use
You may then copy the Last sectionfrom the output entited "Double dollar signs, for docker-compose scrip" and place it in to the Credential field for Basic Auth. this should set your user name and password
![Example](./img/image.png)

Binary file not shown.

After

Width:  |  Height:  |  Size: 42 KiB

View File

@ -15,19 +15,32 @@ questions:
additional_attrs: true
type: dict
attrs:
- variable: tg_user
label: "Username"
- variable: TIMETAGGER_CREDENTIALS
label: "Basic Auth User/Pass"
description: "Generate at https://timetagger.app/cred"
schema:
type: string
default: ""
required: true
- variable: tg_pass
label: "Password"
required: false
- variable: TIMETAGGER_PROXY_AUTH_ENABLED
label: "Enable Proxy Auth"
schema:
type: string
default: "false"
required: false
- variable: TIMETAGGER_PROXY_AUTH_TRUSTED
label: "Trusted Proxy"
schema:
type: string
default: ""
required: true
private: true
show_if: [[TIMETAGGER_PROXY_AUTH_ENABLED, "=", "true"]]
- variable: TIMETAGGER_PROXY_AUTH_HEADER
label: "Header"
schema:
type: string
default: "X-Remote-User"
required: false
show_if: [[TIMETAGGER_PROXY_AUTH_ENABLED, "=", "true"]]
- variable: TIMETAGGER_LOG_LEVEL
label: "TIMETAGGER_LOG_LEVEL"
schema:
@ -89,13 +102,13 @@ questions:
description: "The UserID of the user running the application"
schema:
type: int
default: 568
default: 1000
- variable: fsGroup
label: "fsGroup"
description: "The group that should own ALL storage."
schema:
type: int
default: 568
default: 1000
# Include{securityContextContainer}
# Include{securityContextAdvanced}
# Include{securityContextPod}

View File

@ -1,19 +1,19 @@
image:
pullPolicy: IfNotPresent
repository: ghcr.io/almarklein/timetagger
tag: v23.11.4@sha256:df703a7d2a155bbaac27ffa01f42323645798a5dbb3ee1eccd6e050e7c501e53
tag: v23.11.4-nonroot@sha256:0ee74428c5859cb237a04f6cd0aa6f30b73bc80fa6cedb7b8116c63b8907ed6c
persistence:
config:
enabled: true
mountPath: /root/_timetagger
mountPath: /opt/_timetagger
portal:
open:
enabled: true
securityContext:
container:
readOnlyRootFilesystem: false
runAsGroup: 0
runAsUser: 0
runAsGroup: 1000
runAsUser: 1000
service:
main:
ports:
@ -26,9 +26,4 @@ workload:
main:
env:
TIMETAGGER_BIND: 0.0.0.0:{{ .Values.service.main.ports.main.port }}
TIMETAGGER_CREDENTIALS:
"{{ htpasswd .Values.workload.main.podSpec.containers.main.env.tg_user .Values.workload.main.podSpec.containers.main.env.tg_pass
}}"
TIMETAGGER_LOG_LEVEL: info
tg_pass: changeme
tg_user: admin