Compare commits

...

5 Commits

Author SHA1 Message Date
715d0934e7 chore(deps): update redis docker tag to v7
All checks were successful
renovate/stability-days Updates have met minimum release age requirement
Validate / validate (push) Successful in 9s
2026-04-16 10:13:02 +00:00
c034912846 chore(deps): update https://gitea.t000-n.de/t.behrendt/k_deploy_workflows action to v0.0.10 (#4)
This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
| [https://gitea.t000-n.de/t.behrendt/k_deploy_workflows](https://gitea.t000-n.de/t.behrendt/k_deploy_workflows) | action | patch | `0.0.6` → `0.0.10` |
| [https://gitea.t000-n.de/t.behrendt/k_deploy_workflows](https://gitea.t000-n.de/t.behrendt/k_deploy_workflows) | action | patch | `0.0.7` → `0.0.10` |

---

### Release Notes

<details>
<summary>t.behrendt/k_deploy_workflows (https://gitea.t000-n.de/t.behrendt/k_deploy_workflows)</summary>

### [`v0.0.10`](https://gitea.t000-n.de/t.behrendt/k_deploy_workflows/compare/0.0.9...0.0.10)

[Compare Source](https://gitea.t000-n.de/t.behrendt/k_deploy_workflows/compare/0.0.9...0.0.10)

### [`v0.0.9`](https://gitea.t000-n.de/t.behrendt/k_deploy_workflows/compare/0.0.8...0.0.9)

[Compare Source](https://gitea.t000-n.de/t.behrendt/k_deploy_workflows/compare/0.0.8...0.0.9)

### [`v0.0.8`](https://gitea.t000-n.de/t.behrendt/k_deploy_workflows/compare/0.0.7...0.0.8)

[Compare Source](https://gitea.t000-n.de/t.behrendt/k_deploy_workflows/compare/0.0.7...0.0.8)

### [`v0.0.7`](https://gitea.t000-n.de/t.behrendt/k_deploy_workflows/compare/0.0.6...0.0.7)

[Compare Source](https://gitea.t000-n.de/t.behrendt/k_deploy_workflows/compare/0.0.6...0.0.7)

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about these updates again.

---

 - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box

---

This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My41LjQiLCJ1cGRhdGVkSW5WZXIiOiI0My41LjQiLCJ0YXJnZXRCcmFuY2giOiJtYWluIiwibGFiZWxzIjpbImFjdGlvbiIsImRlcHMiXX0=-->

Reviewed-on: #4
Reviewed-by: t.behrendt <t.behrendt@noreply.localhost>
Co-authored-by: Renovate Bot <renovate@t00n.de>
Co-committed-by: Renovate Bot <renovate@t00n.de>
2026-04-15 11:41:44 +02:00
fd17b168ff chore(deps): pin dependencies (#3)
All checks were successful
Deploy / deploy (push) Successful in 53s
This PR contains the following updates:

| Package | Update | Change |
|---|---|---|
| photoprism/photoprism | pinDigest |  → `5229f68` |
| redis | pinDigest |  → `46884be` |

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

👻 **Immortal**: This PR will be recreated if closed unmerged. Get [config help](https://github.com/renovatebot/renovate/discussions) if that's undesired.

---

 - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box

---

This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My41LjQiLCJ1cGRhdGVkSW5WZXIiOiI0My41LjQiLCJ0YXJnZXRCcmFuY2giOiJtYWluIiwibGFiZWxzIjpbImRlcHMiLCJrOHMiXX0=-->

Reviewed-on: #3
Reviewed-by: t.behrendt <t.behrendt@noreply.localhost>
Co-authored-by: Renovate Bot <renovate@t00n.de>
Co-committed-by: Renovate Bot <renovate@t00n.de>
2026-04-06 18:45:44 +02:00
2fd23f2bf3 Merge pull request 'feat: add backup' (#2) from feat-add-backup into main
All checks were successful
Deploy / deploy (push) Successful in 47s
Reviewed-on: #2
Reviewed-by: branch-buddy <branch-buddy@t00n.de>
2026-04-06 15:05:54 +02:00
fd306bc351 feat: add backup
All checks were successful
Validate / validate (push) Successful in 7s
2026-04-06 15:01:58 +02:00
5 changed files with 88 additions and 5 deletions

View File

@@ -12,7 +12,7 @@ jobs:
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
- uses: https://gitea.t000-n.de/t.behrendt/k_deploy_workflows/.gitea/actions/extract-namespace-from-repo-name@c373c34c836716e663e2d6379e686997bfd7746c # 0.0.6 - uses: https://gitea.t000-n.de/t.behrendt/k_deploy_workflows/.gitea/actions/extract-namespace-from-repo-name@7993842765aaa808493ab79c5f3c21cf2d30f300 # 0.0.10
id: namespace id: namespace
with: with:
repo: ${{ github.repository }} repo: ${{ github.repository }}
@@ -28,7 +28,7 @@ jobs:
uses: azure/k8s-create-secret@6e0ba8047235646753f2a3a3b359b4d0006ff218 # v5.0.1 uses: azure/k8s-create-secret@6e0ba8047235646753f2a3a3b359b4d0006ff218 # v5.0.1
with: with:
namespace: ${{ steps.namespace.outputs.namespace }} namespace: ${{ steps.namespace.outputs.namespace }}
secret-name: backupsidecar-secret secret-name: backup-secret
secret-type: generic secret-type: generic
data: | data: |
{ {

View File

@@ -0,0 +1,20 @@
name: Run Scan
on:
workflow_dispatch:
jobs:
run-renovate:
runs-on: ubuntu-latest
steps:
- uses: https://gitea.t000-n.de/t.behrendt/k_deploy_workflows/.gitea/actions/extract-namespace-from-repo-name@7993842765aaa808493ab79c5f3c21cf2d30f300 # 0.0.10
id: namespace
with:
repo: ${{ github.repository }}
- uses: azure/setup-kubectl@15650b3ad78fff148532a140b8a4c821796b2d7b # v5.0.0
- uses: azure/k8s-set-context@ae59a723ba9abe7a9655538854a025448dbab4aa # v4.0.2
with:
method: kubeconfig
kubeconfig: ${{ secrets.KUBECONFIG }}
- run: |
kubectl -n photoprism create job --from=cronjob/backup backup-photoprism-${{ github.run_id }}

View File

@@ -10,7 +10,7 @@ jobs:
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
- uses: https://gitea.t000-n.de/t.behrendt/k_deploy_workflows/.gitea/actions/extract-namespace-from-repo-name@c373c34c836716e663e2d6379e686997bfd7746c # 0.0.6 - uses: https://gitea.t000-n.de/t.behrendt/k_deploy_workflows/.gitea/actions/extract-namespace-from-repo-name@7993842765aaa808493ab79c5f3c21cf2d30f300 # 0.0.10
id: namespace id: namespace
with: with:
repo: ${{ github.repository }} repo: ${{ github.repository }}

View File

@@ -18,7 +18,7 @@ spec:
kubernetes.io/hostname: k3sh0 kubernetes.io/hostname: k3sh0
containers: containers:
- name: photoprism - name: photoprism
image: photoprism/photoprism:latest image: photoprism/photoprism:latest@sha256:5229f68bce0293320547f35c733de584d7c2d5725a0efbddb68d7a118a8fc21c
imagePullPolicy: Always imagePullPolicy: Always
resources: resources:
limits: limits:
@@ -91,7 +91,7 @@ spec:
- mountPath: /photoprism/storage - mountPath: /photoprism/storage
name: storage name: storage
- name: redis - name: redis
image: redis:6-alpine image: redis:7-alpine@sha256:8b81dd37ff027bec4e516d41acfbe9fe2460070dc6d4a4570a2ac5b9d59df065
resources: resources:
limits: limits:
cpu: "500m" cpu: "500m"

View File

@@ -0,0 +1,63 @@
apiVersion: batch/v1
kind: CronJob
metadata:
name: backup
spec:
schedule: "0 20 */14 * *"
concurrencyPolicy: Forbid
successfulJobsHistoryLimit: 5
failedJobsHistoryLimit: 3
jobTemplate:
metadata:
labels:
t00n.de/restic-backup: "true"
spec:
backoffLimit: 3
activeDeadlineSeconds: 300
template:
spec:
nodeSelector:
kubernetes.io/hostname: k3sh0
restartPolicy: OnFailure
containers:
- name: backup-photoprism
image: gitea.t000-n.de/t.behrendt/backupsidecar:6ff6e8759e827b9aa8ec7ecec4356cc04e4ca75a@sha256:f0841b9d74c6c9db8445d130b79c631a5526a2890ce34371859b3bb65f0ee5be
env:
- name: BACKUP_MODE
value: "directory"
- name: RESTIC_REPOSITORY
value: "rest:http://restserver.restic.svc.cluster.local:8000/photoprism"
- name: RESTIC_PASSWORD
valueFrom:
secretKeyRef:
name: backup-secret
key: restic_password
- name: RESTIC_REST_USERNAME
valueFrom:
secretKeyRef:
name: backup-secret
key: restic_rest_username
- name: RESTIC_REST_PASSWORD
valueFrom:
secretKeyRef:
name: backup-secret
key: restic_rest_password
- name: GOTIFYHOST
value: "https://gotify.t000-n.de"
- name: GOTIFYTOKEN
valueFrom:
secretKeyRef:
name: backup-secret
key: gotify_token
- name: GOTIFYTOPIC
value: "Photoprism Backup"
- name: SOURCEDIR
value: "/data"
volumeMounts:
- name: source-data
mountPath: /data
volumes:
- name: source-data
hostPath:
path: /mnt/longhorn1/svc/photoprism/main
type: Directory