diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index a5a2f68946..d65cf43ef0 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -14,7 +14,7 @@ repos: - -c=.yamllint.yml - repo: https://github.com/python-jsonschema/check-jsonschema - rev: 0.29.4 + rev: 0.30.0 hooks: - id: check-jsonschema files: ^applications/.*/secrets(-[^./-]+)?\.yaml @@ -46,7 +46,7 @@ repos: - --template-files=../helm-docs.md.gotmpl - repo: https://github.com/astral-sh/ruff-pre-commit - rev: v0.7.4 + rev: v0.8.1 hooks: - id: ruff args: [--fix, --exit-non-zero-on-fix] diff --git a/applications/alert-stream-broker/charts/alert-database/templates/ingress.yaml b/applications/alert-stream-broker/charts/alert-database/templates/ingress.yaml index 774dadf5a1..2205bd50a7 100644 --- a/applications/alert-stream-broker/charts/alert-database/templates/ingress.yaml +++ b/applications/alert-stream-broker/charts/alert-database/templates/ingress.yaml @@ -10,6 +10,7 @@ config: scopes: all: - "read:alertdb" + service: "alert-stream-broker" template: metadata: name: {{ template "alertDatabase.fullname" . }} diff --git a/applications/argo-workflows/Chart.yaml b/applications/argo-workflows/Chart.yaml index 01ae908e43..265be52294 100644 --- a/applications/argo-workflows/Chart.yaml +++ b/applications/argo-workflows/Chart.yaml @@ -8,5 +8,5 @@ sources: - https://github.com/argoproj/argo-helm dependencies: - name: argo-workflows - version: 0.42.7 + version: 0.45.0 repository: https://argoproj.github.io/argo-helm diff --git a/applications/argo-workflows/templates/ingress.yaml b/applications/argo-workflows/templates/ingress.yaml index 03a5c5ed65..66a2ec497c 100644 --- a/applications/argo-workflows/templates/ingress.yaml +++ b/applications/argo-workflows/templates/ingress.yaml @@ -4,9 +4,10 @@ metadata: name: argo-workflows config: baseUrl: {{ .Values.global.baseUrl | quote }} + loginRedirect: true scopes: all: {{ .Values.ingress.scopes }} - loginRedirect: true + service: "argo-workflows" template: metadata: name: argo-workflows diff --git a/applications/argocd/Chart.yaml b/applications/argocd/Chart.yaml index 11b5e03524..d7c73d2000 100644 --- a/applications/argocd/Chart.yaml +++ b/applications/argocd/Chart.yaml @@ -8,5 +8,5 @@ sources: - https://github.com/argoproj/argo-helm dependencies: - name: argo-cd - version: 7.7.3 + version: 7.7.7 repository: https://argoproj.github.io/argo-helm diff --git a/applications/argocd/values-usdf-cm-dev.yaml b/applications/argocd/values-usdf-cm-dev.yaml index cd292535bc..cd9f3f6702 100644 --- a/applications/argocd/values-usdf-cm-dev.yaml +++ b/applications/argocd/values-usdf-cm-dev.yaml @@ -30,6 +30,7 @@ argo-cd: g, cslater@slac.stanford.edu, role:admin g, yusra@slac.stanford.edu, role:admin g, rra@slac.stanford.edu, role:admin + g, tobyj@slac.stanford.edu, role:admin scopes: "[email]" server: diff --git a/applications/argocd/values-usdf-cm.yaml b/applications/argocd/values-usdf-cm.yaml index 878e4d74d4..6dd18686df 100644 --- a/applications/argocd/values-usdf-cm.yaml +++ b/applications/argocd/values-usdf-cm.yaml @@ -29,6 +29,7 @@ argo-cd: g, fritzm@slac.stanford.edu, role:admin g, cslater@slac.stanford.edu, role:admin g, yusra@slac.stanford.edu, role:admin + g, tobyj@slac.stanford.edu, role:admin scopes: "[email]" server: diff --git a/applications/auxtel/README.md b/applications/auxtel/README.md index 776d27f8ae..ee0124b771 100644 --- a/applications/auxtel/README.md +++ b/applications/auxtel/README.md @@ -28,8 +28,12 @@ Deployment for the Auxiliary Telescope CSCs | atspectrograph-sim.enabled | bool | `false` | Enable the ATSpectograph simulator CSC | | atspectrograph.enabled | bool | `false` | Enable the ATSpectrograph CSC | | hexapod-sim.enabled | bool | `false` | Enable the hexapod controller simulator | +| hexapod-sim.affinity | object | `{}` | This specifies the scheduling constraints of the pod | | hexapod-sim.image | object | `{"pullPolicy":"Always","repository":"ts-dockerhub.lsst.org/hexapod_simulator","tag":"latest"}` | This section holds the configuration of the container image | | hexapod-sim.image.pullPolicy | string | `"Always"` | The policy to apply when pulling an image for deployment | | hexapod-sim.image.repository | string | `"ts-dockerhub.lsst.org/hexapod_simulator"` | The Docker registry name of the container image | | hexapod-sim.image.tag | string | `"latest"` | The tag of the container image | | hexapod-sim.namespace | string | `"auxtel"` | This is the namespace in which the hexapod controller simulator will be placed | +| hexapod-sim.nodeSelector | object | `{}` | This allows the specification of using specific nodes to run the pod | +| hexapod-sim.resources | object | `{}` | This allows the specification of resources (CPU, memory) requires to run the container | +| hexapod-sim.tolerations | list | `[]` | This specifies the tolerations of the pod for any system taints | diff --git a/applications/auxtel/charts/hexapod-sim/README.md b/applications/auxtel/charts/hexapod-sim/README.md index b5a01ae11b..07accd9bd1 100644 --- a/applications/auxtel/charts/hexapod-sim/README.md +++ b/applications/auxtel/charts/hexapod-sim/README.md @@ -6,8 +6,12 @@ Chart for the hexapod simulator that supports the ATHexapod | Key | Type | Default | Description | |-----|------|---------|-------------| +| affinity | object | `{}` | This specifies the scheduling constraints of the pod | | image | object | `{"pullPolicy":"Always","repository":"ts-dockerhub.lsst.org/hexapod_simulator","tag":"latest"}` | This section holds the configuration of the container image | | image.pullPolicy | string | `"Always"` | The policy to apply when pulling an image for deployment | | image.repository | string | `"ts-dockerhub.lsst.org/hexapod_simulator"` | The Docker registry name of the container image | | image.tag | string | `"latest"` | The tag of the container image | | namespace | string | `"auxtel"` | This is the namespace in which the hexapod controller simulator will be placed | +| nodeSelector | object | `{}` | This allows the specification of using specific nodes to run the pod | +| resources | object | `{}` | This allows the specification of resources (CPU, memory) requires to run the container | +| tolerations | list | `[]` | This specifies the tolerations of the pod for any system taints | diff --git a/applications/auxtel/charts/hexapod-sim/templates/deployment.yaml b/applications/auxtel/charts/hexapod-sim/templates/deployment.yaml index 5b874eed64..b03ba53a04 100644 --- a/applications/auxtel/charts/hexapod-sim/templates/deployment.yaml +++ b/applications/auxtel/charts/hexapod-sim/templates/deployment.yaml @@ -23,5 +23,21 @@ spec: imagePullPolicy: {{ .Values.image.pullPolicy }} stdin: true tty: true + {{- with .Values.resources }} + resources: + {{- toYaml . | nindent 12 }} + {{- end }} imagePullSecrets: - name: pull-secret + {{- with .Values.nodeSelector }} + nodeSelector: + {{- toYaml . | nindent 8 }} + {{- end }} + {{- with .Values.affinity }} + affinity: + {{- toYaml . | nindent 8 }} + {{- end }} + {{- with .Values.tolerations }} + tolerations: + {{- toYaml . | nindent 8 }} + {{- end }} diff --git a/applications/auxtel/charts/hexapod-sim/values.yaml b/applications/auxtel/charts/hexapod-sim/values.yaml index e3daccc617..70ed9d97e1 100644 --- a/applications/auxtel/charts/hexapod-sim/values.yaml +++ b/applications/auxtel/charts/hexapod-sim/values.yaml @@ -8,3 +8,11 @@ image: tag: latest # -- The policy to apply when pulling an image for deployment pullPolicy: Always +# -- This allows the specification of resources (CPU, memory) requires to run the container +resources: {} +# -- This allows the specification of using specific nodes to run the pod +nodeSelector: {} +# -- This specifies the tolerations of the pod for any system taints +tolerations: [] +# -- This specifies the scheduling constraints of the pod +affinity: {} diff --git a/applications/auxtel/values-base.yaml b/applications/auxtel/values-base.yaml index c7350107ab..de3ccbcd9d 100644 --- a/applications/auxtel/values-base.yaml +++ b/applications/auxtel/values-base.yaml @@ -45,6 +45,8 @@ atmcs-sim: image: repository: ts-dockerhub.lsst.org/atmcs_sim pullPolicy: Always + env: + RUN_ARG: --simulate atoods: image: @@ -126,6 +128,8 @@ atpneumatics-sim: image: repository: ts-dockerhub.lsst.org/at_pneumatics_sim pullPolicy: Always + env: + RUN_ARG: --simulate atptg: image: @@ -144,3 +148,10 @@ atspectrograph-sim: hexapod-sim: enabled: true + resources: + limits: + cpu: 100m + memory: 500Mi + requests: + cpu: 20m + memory: 200Mi diff --git a/applications/auxtel/values-tucson-teststand.yaml b/applications/auxtel/values-tucson-teststand.yaml index da292e8617..2f11bee094 100644 --- a/applications/auxtel/values-tucson-teststand.yaml +++ b/applications/auxtel/values-tucson-teststand.yaml @@ -45,6 +45,8 @@ atmcs-sim: image: repository: ts-dockerhub.lsst.org/atmcs_sim pullPolicy: Always + env: + RUN_ARG: --simulate atoods: image: @@ -126,6 +128,8 @@ atpneumatics-sim: image: repository: ts-dockerhub.lsst.org/at_pneumatics_sim pullPolicy: Always + env: + RUN_ARG: --simulate atptg: image: diff --git a/applications/butler/templates/ingress-authenticated.yaml b/applications/butler/templates/ingress-authenticated.yaml index bf7127de6e..965aa52561 100644 --- a/applications/butler/templates/ingress-authenticated.yaml +++ b/applications/butler/templates/ingress-authenticated.yaml @@ -5,6 +5,9 @@ metadata: labels: {{- include "butler.labels" . | nindent 4 }} config: + # The Butler server often services large numbers of small requests, + # so this cache reduces the load on Gafaelfawr. + authCacheDuration: 5m baseUrl: {{ .Values.global.baseUrl | quote }} scopes: all: @@ -16,6 +19,7 @@ config: internal: service: "butler" scopes: [] + service: "butler" template: metadata: diff --git a/applications/cert-manager/Chart.yaml b/applications/cert-manager/Chart.yaml index a1e9214962..4304834036 100644 --- a/applications/cert-manager/Chart.yaml +++ b/applications/cert-manager/Chart.yaml @@ -7,5 +7,5 @@ sources: - https://github.com/cert-manager/cert-manager dependencies: - name: cert-manager - version: v1.16.1 + version: v1.16.2 repository: https://charts.jetstack.io diff --git a/applications/checkerboard/templates/ingress.yaml b/applications/checkerboard/templates/ingress.yaml index edf033a11e..fb11ba4d0a 100644 --- a/applications/checkerboard/templates/ingress.yaml +++ b/applications/checkerboard/templates/ingress.yaml @@ -9,6 +9,7 @@ config: scopes: all: - "read:checkerboard" + service: "checkerboard" template: metadata: name: {{ template "checkerboard.fullname" . }} diff --git a/applications/cm-service/templates/ingress.yaml b/applications/cm-service/templates/ingress.yaml index 882de320dc..0820003c40 100644 --- a/applications/cm-service/templates/ingress.yaml +++ b/applications/cm-service/templates/ingress.yaml @@ -10,6 +10,7 @@ config: scopes: all: - "exec:internal-tools" + service: "cm-service" template: metadata: name: "cm-service" diff --git a/applications/consdb/templates/ingress.yaml b/applications/consdb/templates/ingress.yaml index 18a6c605df..1b0dfc38bd 100644 --- a/applications/consdb/templates/ingress.yaml +++ b/applications/consdb/templates/ingress.yaml @@ -11,6 +11,7 @@ config: scopes: all: - "read:image" + service: "consdb" template: metadata: name: "consdb-pq" diff --git a/applications/datalinker/templates/ingress-image.yaml b/applications/datalinker/templates/ingress-image.yaml index 325bfb41e4..7c6c9a3c82 100644 --- a/applications/datalinker/templates/ingress-image.yaml +++ b/applications/datalinker/templates/ingress-image.yaml @@ -9,6 +9,7 @@ config: scopes: all: - "read:image" + service: "datalinker" # Request a delegated token to use for making calls to Butler server with the # end-user's credentials. delegate: diff --git a/applications/datalinker/templates/ingress-tap.yaml b/applications/datalinker/templates/ingress-tap.yaml index 99245d239e..acd37d39aa 100644 --- a/applications/datalinker/templates/ingress-tap.yaml +++ b/applications/datalinker/templates/ingress-tap.yaml @@ -9,6 +9,7 @@ config: scopes: all: - "read:tap" + service: "datalinker" template: metadata: name: {{ include "datalinker.fullname" . }}-tap diff --git a/applications/eas/Chart.yaml b/applications/eas/Chart.yaml index 8b77c6ca92..cb8006fe6b 100644 --- a/applications/eas/Chart.yaml +++ b/applications/eas/Chart.yaml @@ -47,24 +47,34 @@ dependencies: condition: auxtel-ess204-sim.enabled repository: file://../../charts/csc - name: csc - alias: auxtel-ess205 + alias: calibhill-ess301 version: 1.0.0 - condition: auxtel-ess205.enabled + condition: calibhill-ess301.enabled repository: file://../../charts/csc - name: csc - alias: auxtel-ess205-sim + alias: calibhill-ess301-sim version: 1.0.0 - condition: auxtel-ess205-sim.enabled + condition: calibhill-ess301-sim.enabled repository: file://../../charts/csc - name: csc - alias: calibhill-ess301 + alias: camera-ess111 version: 1.0.0 - condition: calibhill-ess301.enabled + condition: camera-ess111.enabled repository: file://../../charts/csc - name: csc - alias: calibhill-ess301-sim + alias: camera-ess111-sim version: 1.0.0 - condition: calibhill-ess301-sim.enabled + condition: camera-ess111-sim.enabled + repository: file://../../charts/csc +- name: csc + alias: cleanroom-ess109 + version: 1.0.0 + condition: cleanroom-ess109.enabled + repository: file://../../charts/csc +- name: csc + alias: cleanroom-ess109-sim + version: 1.0.0 + condition: cleanroom-ess109-sim.enabled repository: file://../../charts/csc - name: csc alias: dimm1 @@ -117,44 +127,34 @@ dependencies: condition: epm1-sim.enabled repository: file://../../charts/csc - name: csc - alias: m2-ess106 - version: 1.0.0 - condition: m2-ess106.enabled - repository: file://../../charts/csc -- name: csc - alias: m2-ess106-sim + alias: m1m3-ess113 version: 1.0.0 - condition: m2-ess106-sim.enabled + condition: m1m3-ess113.enabled repository: file://../../charts/csc - name: csc - alias: mtdome-ess101 + alias: m1m3-ess113-sim version: 1.0.0 - condition: mtdome-ess101.enabled + condition: m1m3-ess113-sim.enabled repository: file://../../charts/csc - name: csc - alias: mtdome-ess101-sim - version: 1.0.0 - condition: mtdome-ess101-sim.enabled - repository: file://../../charts/csc -- name: csc - alias: mtdome-ess102 + alias: m2-ess106 version: 1.0.0 - condition: mtdome-ess102.enabled + condition: m2-ess106.enabled repository: file://../../charts/csc - name: csc - alias: mtdome-ess102-sim + alias: m2-ess106-sim version: 1.0.0 - condition: mtdome-ess102-sim.enabled + condition: m2-ess106-sim.enabled repository: file://../../charts/csc - name: csc - alias: mtdome-ess103 + alias: m2-ess112 version: 1.0.0 - condition: mtdome-ess103.enabled + condition: m2-ess112.enabled repository: file://../../charts/csc - name: csc - alias: mtdome-ess103-sim + alias: m2-ess112-sim version: 1.0.0 - condition: mtdome-ess103-sim.enabled + condition: m2-ess112-sim.enabled repository: file://../../charts/csc - name: csc alias: mtdome-ess107 @@ -206,6 +206,16 @@ dependencies: version: 1.0.0 condition: tma-ess105-sim.enabled repository: file://../../charts/csc +- name: csc + alias: tma-ess110 + version: 1.0.0 + condition: tma-ess110.enabled + repository: file://../../charts/csc +- name: csc + alias: tma-ess110-sim + version: 1.0.0 + condition: tma-ess110-sim.enabled + repository: file://../../charts/csc - name: csc alias: weatherforecast version: 1.0.0 diff --git a/applications/eas/README.md b/applications/eas/README.md index e03edc0f9f..0523a891d1 100644 --- a/applications/eas/README.md +++ b/applications/eas/README.md @@ -14,10 +14,12 @@ Deployment for the Environmental Awareness Systems CSCs | auxtel-ess203.enabled | bool | `false` | Enable the ESS:203 CSC | | auxtel-ess204-sim.enabled | bool | `false` | Enable the ESS:204 simulator CSC | | auxtel-ess204.enabled | bool | `false` | Enable the ESS:204 CSC | -| auxtel-ess205-sim.enabled | bool | `false` | Enable the ESS:205 simulator CSC | -| auxtel-ess205.enabled | bool | `false` | Enable the ESS:205 CSC | | calibhill-ess301-sim.enabled | bool | `false` | Enable the ESS:301 simulator CSC | | calibhill-ess301.enabled | bool | `false` | Enable the ESS:301 CSC | +| camera-ess111-sim.enabled | bool | `false` | Enable the ESS:111 simulator CSC | +| camera-ess111.enabled | bool | `false` | Enable the ESS:111 CSC | +| cleanroom-ess109-sim.enabled | bool | `false` | Enable the ESS:109 simulator CSC | +| cleanroom-ess109.enabled | bool | `false` | Enable the ESS:109 CSC | | dimm1-sim.enabled | bool | `false` | Enable the DIMM:1 simulator CSC | | dimm1.enabled | bool | `false` | Enable the DIMM:1 CSC | | dimm2-sim.enabled | bool | `false` | Enable the DIMM:2 simulator CSC | @@ -39,14 +41,12 @@ Deployment for the Environmental Awareness Systems CSCs | global.controlSystem.topicName | string | Set by ArgoCD | Topic name tag for the control system deployment | | global.host | string | Set by Argo CD | Host name for ingress | | global.vaultSecretsPath | string | Set by Argo CD | Base path for Vault secrets | +| m1m3-ess113-sim.enabled | bool | `false` | Enable the ESS:113 simulator CSC | +| m1m3-ess113.enabled | bool | `false` | Enable the ESS:113 CSC | | m2-ess106-sim.enabled | bool | `false` | Enable the ESS:106 simulator CSC | | m2-ess106.enabled | bool | `false` | Enable the ESS:106 CSC | -| mtdome-ess101-sim.enabled | bool | `false` | Enable the ESS:101 simulator CSC | -| mtdome-ess101.enabled | bool | `false` | Enable the ESS:101 CSC | -| mtdome-ess102-sim.enabled | bool | `false` | Enable the ESS:102 simulator CSC | -| mtdome-ess102.enabled | bool | `false` | Enable the ESS:102 CSC | -| mtdome-ess103-sim.enabled | bool | `false` | Enable the ESS:103 simulator CSC | -| mtdome-ess103.enabled | bool | `false` | Enable the ESS:103 CSC | +| m2-ess112-sim.enabled | bool | `false` | Enable the ESS:112 simulator CSC | +| m2-ess112.enabled | bool | `false` | Enable the ESS:112 CSC | | mtdome-ess107-sim.enabled | bool | `false` | Enable the ESS:107 simulator CSC | | mtdome-ess107.enabled | bool | `false` | Enable the ESS:107 CSC | | mtdome-ess108-sim.enabled | bool | `false` | Enable the ESS:108 simulator CSC | @@ -57,3 +57,5 @@ Deployment for the Environmental Awareness Systems CSCs | tma-ess104.enabled | bool | `false` | Enable the ESS:104 CSC | | tma-ess105-sim.enabled | bool | `false` | Enable the ESS:105 simulator CSC | | tma-ess105.enabled | bool | `false` | Enable the ESS:105 CSC | +| tma-ess110-sim.enabled | bool | `false` | Enable the ESS:110 simulator CSC | +| tma-ess110.enabled | bool | `false` | Enable the ESS:110 CSC | diff --git a/applications/eas/values-base.yaml b/applications/eas/values-base.yaml index 5a3a9c3a69..2a6c08a2f7 100644 --- a/applications/eas/values-base.yaml +++ b/applications/eas/values-base.yaml @@ -62,14 +62,14 @@ auxtel-ess204-sim: cpu: 190m memory: 900Mi -auxtel-ess205-sim: +calibhill-ess301-sim: enabled: true - classifier: ess205 + classifier: ess301 image: repository: ts-dockerhub.lsst.org/ess pullPolicy: Always env: - RUN_ARG: 205 --simulate + RUN_ARG: 301 --simulate resources: requests: cpu: 19m @@ -78,14 +78,30 @@ auxtel-ess205-sim: cpu: 190m memory: 900Mi -calibhill-ess301-sim: +camera-ess111-sim: enabled: true - classifier: ess301 + classifier: ess111 image: repository: ts-dockerhub.lsst.org/ess pullPolicy: Always env: - RUN_ARG: 301 --simulate + RUN_ARG: 111 --simulate + resources: + requests: + cpu: 19m + memory: 90Mi + limits: + cpu: 190m + memory: 900Mi + +cleanroom-ess109-sim: + enabled: true + classifier: ess109 + image: + repository: ts-dockerhub.lsst.org/ess + pullPolicy: Always + env: + RUN_ARG: 109 --simulate resources: requests: cpu: 19m @@ -172,14 +188,14 @@ epm1-sim: cpu: 190m memory: 900Mi -m2-ess106-sim: +m1m3-ess113-sim: enabled: true - classifier: ess106 + classifier: ess113 image: repository: ts-dockerhub.lsst.org/ess pullPolicy: Always env: - RUN_ARG: 106 --simulate + RUN_ARG: 113 --simulate resources: requests: cpu: 19m @@ -188,30 +204,14 @@ m2-ess106-sim: cpu: 190m memory: 900Mi -mtdome-ess101-sim: - enabled: true - classifier: ess101 - image: - repository: ts-dockerhub.lsst.org/ess - pullPolicy: Always - env: - RUN_ARG: 101 --simulate - resources: - requests: - cpu: 19m - memory: 90Mi - limits: - cpu: 190m - memory: 900Mi - -mtdome-ess102-sim: +m2-ess106-sim: enabled: true - classifier: ess102 + classifier: ess106 image: repository: ts-dockerhub.lsst.org/ess pullPolicy: Always env: - RUN_ARG: 102 --simulate + RUN_ARG: 106 --simulate resources: requests: cpu: 19m @@ -220,14 +220,14 @@ mtdome-ess102-sim: cpu: 190m memory: 900Mi -mtdome-ess103-sim: +m2-ess112-sim: enabled: true - classifier: ess103 + classifier: ess112 image: repository: ts-dockerhub.lsst.org/ess pullPolicy: Always env: - RUN_ARG: 103 --simulate + RUN_ARG: 112 --simulate resources: requests: cpu: 19m @@ -316,6 +316,22 @@ tma-ess105-sim: cpu: 190m memory: 900Mi +tma-ess110-sim: + enabled: true + classifier: ess110 + image: + repository: ts-dockerhub.lsst.org/ess + pullPolicy: Always + env: + RUN_ARG: 110 --simulate + resources: + requests: + cpu: 19m + memory: 90Mi + limits: + cpu: 190m + memory: 900Mi + weatherforecast: image: repository: ts-dockerhub.lsst.org/weatherforecast diff --git a/applications/eas/values-tucson-teststand.yaml b/applications/eas/values-tucson-teststand.yaml index 5a3a9c3a69..2a6c08a2f7 100644 --- a/applications/eas/values-tucson-teststand.yaml +++ b/applications/eas/values-tucson-teststand.yaml @@ -62,14 +62,14 @@ auxtel-ess204-sim: cpu: 190m memory: 900Mi -auxtel-ess205-sim: +calibhill-ess301-sim: enabled: true - classifier: ess205 + classifier: ess301 image: repository: ts-dockerhub.lsst.org/ess pullPolicy: Always env: - RUN_ARG: 205 --simulate + RUN_ARG: 301 --simulate resources: requests: cpu: 19m @@ -78,14 +78,30 @@ auxtel-ess205-sim: cpu: 190m memory: 900Mi -calibhill-ess301-sim: +camera-ess111-sim: enabled: true - classifier: ess301 + classifier: ess111 image: repository: ts-dockerhub.lsst.org/ess pullPolicy: Always env: - RUN_ARG: 301 --simulate + RUN_ARG: 111 --simulate + resources: + requests: + cpu: 19m + memory: 90Mi + limits: + cpu: 190m + memory: 900Mi + +cleanroom-ess109-sim: + enabled: true + classifier: ess109 + image: + repository: ts-dockerhub.lsst.org/ess + pullPolicy: Always + env: + RUN_ARG: 109 --simulate resources: requests: cpu: 19m @@ -172,14 +188,14 @@ epm1-sim: cpu: 190m memory: 900Mi -m2-ess106-sim: +m1m3-ess113-sim: enabled: true - classifier: ess106 + classifier: ess113 image: repository: ts-dockerhub.lsst.org/ess pullPolicy: Always env: - RUN_ARG: 106 --simulate + RUN_ARG: 113 --simulate resources: requests: cpu: 19m @@ -188,30 +204,14 @@ m2-ess106-sim: cpu: 190m memory: 900Mi -mtdome-ess101-sim: - enabled: true - classifier: ess101 - image: - repository: ts-dockerhub.lsst.org/ess - pullPolicy: Always - env: - RUN_ARG: 101 --simulate - resources: - requests: - cpu: 19m - memory: 90Mi - limits: - cpu: 190m - memory: 900Mi - -mtdome-ess102-sim: +m2-ess106-sim: enabled: true - classifier: ess102 + classifier: ess106 image: repository: ts-dockerhub.lsst.org/ess pullPolicy: Always env: - RUN_ARG: 102 --simulate + RUN_ARG: 106 --simulate resources: requests: cpu: 19m @@ -220,14 +220,14 @@ mtdome-ess102-sim: cpu: 190m memory: 900Mi -mtdome-ess103-sim: +m2-ess112-sim: enabled: true - classifier: ess103 + classifier: ess112 image: repository: ts-dockerhub.lsst.org/ess pullPolicy: Always env: - RUN_ARG: 103 --simulate + RUN_ARG: 112 --simulate resources: requests: cpu: 19m @@ -316,6 +316,22 @@ tma-ess105-sim: cpu: 190m memory: 900Mi +tma-ess110-sim: + enabled: true + classifier: ess110 + image: + repository: ts-dockerhub.lsst.org/ess + pullPolicy: Always + env: + RUN_ARG: 110 --simulate + resources: + requests: + cpu: 19m + memory: 90Mi + limits: + cpu: 190m + memory: 900Mi + weatherforecast: image: repository: ts-dockerhub.lsst.org/weatherforecast diff --git a/applications/eas/values.yaml b/applications/eas/values.yaml index f46c764372..a05b191fd9 100644 --- a/applications/eas/values.yaml +++ b/applications/eas/values.yaml @@ -30,14 +30,6 @@ auxtel-ess204-sim: # -- Enable the ESS:204 simulator CSC enabled: false -auxtel-ess205: - # -- Enable the ESS:205 CSC - enabled: false - -auxtel-ess205-sim: - # -- Enable the ESS:205 simulator CSC - enabled: false - calibhill-ess301: # -- Enable the ESS:301 CSC enabled: false @@ -46,6 +38,22 @@ calibhill-ess301-sim: # -- Enable the ESS:301 simulator CSC enabled: false +camera-ess111: + # -- Enable the ESS:111 CSC + enabled: false + +camera-ess111-sim: + # -- Enable the ESS:111 simulator CSC + enabled: false + +cleanroom-ess109: + # -- Enable the ESS:109 CSC + enabled: false + +cleanroom-ess109-sim: + # -- Enable the ESS:109 simulator CSC + enabled: false + dimm1: # -- Enable the DIMM:1 CSC enabled: false @@ -86,36 +94,28 @@ epm1-sim: # -- Enable the EPM:1 simulator CSC enabled: false -m2-ess106: - # -- Enable the ESS:106 CSC - enabled: false - -m2-ess106-sim: - # -- Enable the ESS:106 simulator CSC +m1m3-ess113: + # -- Enable the ESS:113 CSC enabled: false -mtdome-ess101: - # -- Enable the ESS:101 CSC +m1m3-ess113-sim: + # -- Enable the ESS:113 simulator CSC enabled: false -mtdome-ess101-sim: - # -- Enable the ESS:101 simulator CSC - enabled: false - -mtdome-ess102: - # -- Enable the ESS:102 CSC +m2-ess106: + # -- Enable the ESS:106 CSC enabled: false -mtdome-ess102-sim: - # -- Enable the ESS:102 simulator CSC +m2-ess106-sim: + # -- Enable the ESS:106 simulator CSC enabled: false -mtdome-ess103: - # -- Enable the ESS:103 CSC +m2-ess112: + # -- Enable the ESS:112 CSC enabled: false -mtdome-ess103-sim: - # -- Enable the ESS:103 simulator CSC +m2-ess112-sim: + # -- Enable the ESS:112 simulator CSC enabled: false mtdome-ess107: @@ -158,6 +158,14 @@ tma-ess105-sim: # -- Enable the ESS:105 simulator CSC enabled: false +tma-ess110: + # -- Enable the ESS:110 CSC + enabled: false + +tma-ess110-sim: + # -- Enable the ESS:110 simulator CSC + enabled: false + # The following will be set by parameters injected by Argo CD and should not # be set in the individual environment values files. global: diff --git a/applications/exposurelog/templates/ingress.yaml b/applications/exposurelog/templates/ingress.yaml index c5eba0a88a..eb85e73506 100644 --- a/applications/exposurelog/templates/ingress.yaml +++ b/applications/exposurelog/templates/ingress.yaml @@ -11,6 +11,7 @@ config: scopes: all: - "exec:internal-tools" + service: "exposurelog" {{- else }} scopes: anonymous: true diff --git a/applications/fastapi-bootcamp/templates/ingress.yaml b/applications/fastapi-bootcamp/templates/ingress.yaml index 8e3c72bf44..8ba9afa2a7 100644 --- a/applications/fastapi-bootcamp/templates/ingress.yaml +++ b/applications/fastapi-bootcamp/templates/ingress.yaml @@ -9,6 +9,7 @@ config: scopes: all: - "read:image" + service: "fastapi-bootcamp" template: metadata: name: "fastapi-bootcamp" diff --git a/applications/gafaelfawr/Chart.yaml b/applications/gafaelfawr/Chart.yaml index c2b7e19a1e..3f21bbb591 100644 --- a/applications/gafaelfawr/Chart.yaml +++ b/applications/gafaelfawr/Chart.yaml @@ -5,7 +5,7 @@ description: "Authentication and identity system" home: "https://gafaelfawr.lsst.io/" sources: - "https://github.com/lsst-sqre/gafaelfawr" -appVersion: 12.1.1 +appVersion: 12.2.0 dependencies: - name: "redis" diff --git a/applications/gafaelfawr/README.md b/applications/gafaelfawr/README.md index 51df4c45c1..c609f0f9e4 100644 --- a/applications/gafaelfawr/README.md +++ b/applications/gafaelfawr/README.md @@ -18,7 +18,7 @@ Authentication and identity system | cloudsql.image.pullPolicy | string | `"IfNotPresent"` | Pull policy for Cloud SQL Auth Proxy images | | cloudsql.image.repository | string | `"gcr.io/cloudsql-docker/gce-proxy"` | Cloud SQL Auth Proxy image to use | | cloudsql.image.schemaUpdateTagSuffix | string | `"-alpine"` | Tag suffix to use for the proxy for schema updates | -| cloudsql.image.tag | string | `"1.37.1"` | Cloud SQL Auth Proxy tag to use | +| cloudsql.image.tag | string | `"1.37.2"` | Cloud SQL Auth Proxy tag to use | | cloudsql.instanceConnectionName | string | None, must be set if Cloud SQL Auth Proxy is enabled | Instance connection name for a Cloud SQL PostgreSQL instance | | cloudsql.nodeSelector | object | `{}` | Node selection rules for the Cloud SQL Proxy pod | | cloudsql.podAnnotations | object | `{}` | Annotations for the Cloud SQL Proxy pod | @@ -33,6 +33,7 @@ Authentication and identity system | config.cilogon.test | bool | `false` | Whether to use the test instance of CILogon | | config.cilogon.usernameClaim | string | `"username"` | Claim from which to get the username | | config.databaseUrl | string | None, must be set if neither `cloudsql.enabled` nor | URL for the PostgreSQL database `config.internalDatabase` are true | +| config.enableSentry | bool | `false` | Whether to send trace and telemetry information to Sentry. This traces every call and therefore should only be enabled in non-production environments. | | config.errorFooter | string | `nil` | HTML footer to add to any login error page (will be enclosed in a

tag). | | config.firestore.project | string | Firestore support is disabled | If set, assign UIDs and GIDs using Google Firestore in the given project. Cloud SQL must be enabled and the Cloud SQL service account must have read/write access to that Firestore instance. | | config.github.clientId | string | `nil` | GitHub client ID. One and only one of this, `config.cilogon.clientId`, or `config.oidc.clientId` must be set. | diff --git a/applications/gafaelfawr/secrets.yaml b/applications/gafaelfawr/secrets.yaml index d4c8227de1..5846f0d884 100644 --- a/applications/gafaelfawr/secrets.yaml +++ b/applications/gafaelfawr/secrets.yaml @@ -58,6 +58,10 @@ redis-password: deployments will then have to be restarted to pick up the new value. generate: type: password +sentry-dsn: + description: >- + DSN URL to which Sentry trace and error logging will be sent. + if: config.enableSentry session-secret: description: >- Encryption key used to encrypt the contents of Redis and the cookie data diff --git a/applications/gafaelfawr/templates/_helpers.tpl b/applications/gafaelfawr/templates/_helpers.tpl index eb32f96cd7..c20121c751 100644 --- a/applications/gafaelfawr/templates/_helpers.tpl +++ b/applications/gafaelfawr/templates/_helpers.tpl @@ -141,4 +141,15 @@ Common environment variables name: "gafaelfawr-kafka" key: "securityProtocol" {{- end }} +{{- if .Values.config.enableSentry }} +- name: SENTRY_DSN + valueFrom: + secretKeyRef: + name: "gafaelfawr" + key: "sentry-dsn" +- name: SENTRY_RELEASE + value: {{ .Chart.Name }}@{{ .Chart.AppVersion }} +- name: SENTRY_ENVIRONMENT + value: {{ .Values.global.host }} +{{- end }} {{- end }} diff --git a/applications/gafaelfawr/templates/cronjob-audit.yaml b/applications/gafaelfawr/templates/cronjob-audit.yaml index df5bbd3453..6bf0c0aa2e 100644 --- a/applications/gafaelfawr/templates/cronjob-audit.yaml +++ b/applications/gafaelfawr/templates/cronjob-audit.yaml @@ -37,7 +37,7 @@ spec: - "gafaelfawr" - "audit" env: - {{- include "gafaelfawr.envVars" (dict "Release" .Release "Values" .Values) | nindent 16 }} + {{- include "gafaelfawr.envVars" (dict "Chart" .Chart "Release" .Release "Values" .Values) | nindent 16 }} {{- if .Values.config.metrics.enabled }} - name: "KAFKA_CLIENT_CERT_PATH" value: "/etc/gafaelfawr-kafka/user.crt" diff --git a/applications/gafaelfawr/templates/cronjob-maintenance.yaml b/applications/gafaelfawr/templates/cronjob-maintenance.yaml index 7108a75266..d842a29cd0 100644 --- a/applications/gafaelfawr/templates/cronjob-maintenance.yaml +++ b/applications/gafaelfawr/templates/cronjob-maintenance.yaml @@ -36,7 +36,7 @@ spec: - "gafaelfawr" - "maintenance" env: - {{- include "gafaelfawr.envVars" (dict "Release" .Release "Values" .Values) | nindent 16 }} + {{- include "gafaelfawr.envVars" (dict "Chart" .Chart "Release" .Release "Values" .Values) | nindent 16 }} {{- if .Values.config.metrics.enabled }} - name: "KAFKA_CLIENT_CERT_PATH" value: "/etc/gafaelfawr-kafka/user.crt" diff --git a/applications/gafaelfawr/templates/deployment-operator.yaml b/applications/gafaelfawr/templates/deployment-operator.yaml index 821ca0fabc..977fefb83c 100644 --- a/applications/gafaelfawr/templates/deployment-operator.yaml +++ b/applications/gafaelfawr/templates/deployment-operator.yaml @@ -42,7 +42,7 @@ spec: - "-m" - "gafaelfawr.operator" env: - {{- include "gafaelfawr.envVars" (dict "Release" .Release "Values" .Values) | nindent 12 }} + {{- include "gafaelfawr.envVars" (dict "Chart" .Chart "Release" .Release "Values" .Values) | nindent 12 }} {{- if .Values.config.metrics.enabled }} - name: "KAFKA_CLIENT_CERT_PATH" value: "/etc/gafaelfawr-kafka/user.crt" diff --git a/applications/gafaelfawr/templates/deployment.yaml b/applications/gafaelfawr/templates/deployment.yaml index 22dc810318..bf8c7be68f 100644 --- a/applications/gafaelfawr/templates/deployment.yaml +++ b/applications/gafaelfawr/templates/deployment.yaml @@ -54,7 +54,7 @@ spec: {{- end }} - name: "gafaelfawr" env: - {{- include "gafaelfawr.envVars" (dict "Release" .Release "Values" .Values "sidecar" true) | nindent 12 }} + {{- include "gafaelfawr.envVars" (dict "Chart" .Chart "Release" .Release "Values" .Values "sidecar" true) | nindent 12 }} {{- if .Values.config.metrics.enabled }} - name: "KAFKA_CLIENT_CERT_PATH" value: "/etc/gafaelfawr-kafka/user.crt" diff --git a/applications/gafaelfawr/templates/job-schema-update.yaml b/applications/gafaelfawr/templates/job-schema-update.yaml index 65bc2b52a0..b945525f3d 100644 --- a/applications/gafaelfawr/templates/job-schema-update.yaml +++ b/applications/gafaelfawr/templates/job-schema-update.yaml @@ -79,7 +79,7 @@ spec: gafaelfawr update-schema touch /lifecycle/main-terminated env: - {{- include "gafaelfawr.envVars" (dict "Release" .Release "Values" .Values "sidecar" true) | nindent 12 }} + {{- include "gafaelfawr.envVars" (dict "Chart" .Chart "Release" .Release "Values" .Values "sidecar" true) | nindent 12 }} image: "{{ .Values.image.repository }}:{{ .Values.image.tag | default .Chart.AppVersion }}" imagePullPolicy: {{ .Values.image.pullPolicy | quote }} {{- with .Values.resources }} diff --git a/applications/gafaelfawr/values-idfprod.yaml b/applications/gafaelfawr/values-idfprod.yaml index 6e55cc5d89..dcbf813f34 100644 --- a/applications/gafaelfawr/values-idfprod.yaml +++ b/applications/gafaelfawr/values-idfprod.yaml @@ -36,6 +36,10 @@ config: - "dp0.2" - "dp0.3" + # Enable metrics reporting. + metrics: + enabled: true + # User quota settings for services. quota: default: diff --git a/applications/gafaelfawr/values.yaml b/applications/gafaelfawr/values.yaml index 95820eabb6..284f2a7fab 100644 --- a/applications/gafaelfawr/values.yaml +++ b/applications/gafaelfawr/values.yaml @@ -51,6 +51,11 @@ config: # `config.internalDatabase` are true databaseUrl: null + # -- Whether to send trace and telemetry information to Sentry. This traces + # every call and therefore should only be enabled in non-production + # environments. + enableSentry: false + # -- HTML footer to add to any login error page (will be enclosed in a

# tag). errorFooter: null @@ -311,7 +316,7 @@ cloudsql: repository: "gcr.io/cloudsql-docker/gce-proxy" # -- Cloud SQL Auth Proxy tag to use - tag: "1.37.1" + tag: "1.37.2" # -- Tag suffix to use for the proxy for schema updates schemaUpdateTagSuffix: "-alpine" diff --git a/applications/ghostwriter/templates/ingress-toplevel.yaml b/applications/ghostwriter/templates/ingress-toplevel.yaml index fb8ebbf3b5..af4ef97d56 100644 --- a/applications/ghostwriter/templates/ingress-toplevel.yaml +++ b/applications/ghostwriter/templates/ingress-toplevel.yaml @@ -11,6 +11,7 @@ config: scopes: all: - "read:image" + service: "ghostwriter" delegate: notebook: {} template: diff --git a/applications/ghostwriter/templates/ingress.yaml b/applications/ghostwriter/templates/ingress.yaml index 1570a890a7..bac29c13a3 100644 --- a/applications/ghostwriter/templates/ingress.yaml +++ b/applications/ghostwriter/templates/ingress.yaml @@ -9,6 +9,7 @@ config: scopes: all: - "read:image" + service: "ghostwriter" delegate: notebook: {} template: diff --git a/applications/giftless/templates/ingress.yaml b/applications/giftless/templates/ingress.yaml index 77e97b5227..bf291fcd7a 100644 --- a/applications/giftless/templates/ingress.yaml +++ b/applications/giftless/templates/ingress.yaml @@ -91,6 +91,7 @@ config: scopes: all: - "write:git-lfs" + service: "giftless" template: metadata: name: {{ template "giftless.fullname" . }}-rw diff --git a/applications/hips/templates/ingress.yaml b/applications/hips/templates/ingress.yaml index 78bfe06ee9..8f87d5e1ac 100644 --- a/applications/hips/templates/ingress.yaml +++ b/applications/hips/templates/ingress.yaml @@ -9,6 +9,7 @@ config: scopes: all: - "read:image" + service: "hips" template: metadata: name: "hips" diff --git a/applications/jira-data-proxy/templates/ingress.yaml b/applications/jira-data-proxy/templates/ingress.yaml index 771d96fc5e..8d91d25dab 100644 --- a/applications/jira-data-proxy/templates/ingress.yaml +++ b/applications/jira-data-proxy/templates/ingress.yaml @@ -6,10 +6,11 @@ metadata: {{- include "jira-data-proxy.labels" . | nindent 4 }} config: baseUrl: {{ .Values.global.baseUrl | quote }} + loginRedirect: false # endpoint is for API use only scopes: all: - "exec:notebook" - loginRedirect: false # endpoint is for API use only + service: "jira-data-proxy" template: metadata: name: "jira-data-proxy" diff --git a/applications/kubernetes-replicator/Chart.yaml b/applications/kubernetes-replicator/Chart.yaml deleted file mode 100644 index 90365efd2c..0000000000 --- a/applications/kubernetes-replicator/Chart.yaml +++ /dev/null @@ -1,11 +0,0 @@ -apiVersion: v2 -name: kubernetes-replicator -version: 1.0.0 -description: Kafka secret replicator -home: https://github.com/mittwald/kubernetes-replicator -sources: - - https://github.com/mittwald/kubernetes-replicator -dependencies: - - name: kubernetes-replicator - version: 2.11.0 - repository: https://helm.mittwald.de diff --git a/applications/kubernetes-replicator/README.md b/applications/kubernetes-replicator/README.md deleted file mode 100644 index 400f41a809..0000000000 --- a/applications/kubernetes-replicator/README.md +++ /dev/null @@ -1,23 +0,0 @@ -# kubernetes-replicator - -Kafka secret replicator - -**Homepage:** - -## Source Code - -* - -## Values - -| Key | Type | Default | Description | -|-----|------|---------|-------------| -| kubernetes-replicator.resources | object | See `values.yaml` | Resource requests and limits for kubernetes-replicator | -| kubernetes-replicator.serviceAccount.annotations | object | `{}` | | -| kubernetes-replicator.serviceAccount.create | bool | `true` | | -| kubernetes-replicator.serviceAccount.name | string | `nil` | | -| kubernetes-replicator.serviceAccount.privileges[0].apiGroups[0] | string | `""` | | -| kubernetes-replicator.serviceAccount.privileges[0].apiGroups[1] | string | `"apps"` | | -| kubernetes-replicator.serviceAccount.privileges[0].apiGroups[2] | string | `"extensions"` | | -| kubernetes-replicator.serviceAccount.privileges[0].resources[0] | string | `"secrets"` | | -| kubernetes-replicator.serviceAccount.privileges[0].resources[1] | string | `"configmaps"` | | diff --git a/applications/kubernetes-replicator/values-roundtable-dev.yaml b/applications/kubernetes-replicator/values-roundtable-dev.yaml deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/applications/kubernetes-replicator/values-roundtable-prod.yaml b/applications/kubernetes-replicator/values-roundtable-prod.yaml deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/applications/kubernetes-replicator/values.yaml b/applications/kubernetes-replicator/values.yaml deleted file mode 100644 index 38c314644b..0000000000 --- a/applications/kubernetes-replicator/values.yaml +++ /dev/null @@ -1,18 +0,0 @@ -kubernetes-replicator: - serviceAccount: - create: true - annotations: {} - name: - privileges: - - apiGroups: ["", "apps", "extensions"] - resources: ["secrets", "configmaps"] - - # -- Resource requests and limits for kubernetes-replicator - # @default -- See `values.yaml` - resources: - limits: - cpu: "1" - memory: "32Mi" - requests: - cpu: "1m" - memory: "14Mi" diff --git a/applications/livetap/README.md b/applications/livetap/README.md index 0884f22fe9..221ada8fcc 100644 --- a/applications/livetap/README.md +++ b/applications/livetap/README.md @@ -15,8 +15,9 @@ IVOA TAP service | cadc-tap.config.pg.database | string | `"lsstdb1"` | Postgres database to connect to | | cadc-tap.config.pg.host | string | `"mock-pg:5432"` (the mock pg) | Postgres hostname:port to connect to | | cadc-tap.config.pg.username | string | `"rubin"` | Postgres username to use to connect | +| cadc-tap.config.serviceName | string | `"livetap"` | Name of the service from Gafaelfawr's perspective | | cadc-tap.config.vaultSecretName | string | `"livetap"` | Vault secret name: the final key in the vault path | -| cadc-tap.ingress.path | string | `"live"` | | +| cadc-tap.ingress.path | string | `"live"` | Ingress path that should be routed to this service | | global.baseUrl | string | Set by Argo CD | Base URL for the environment | | global.host | string | Set by Argo CD | Host name for ingress | | global.vaultSecretsPath | string | Set by Argo CD | Base path for Vault secrets | diff --git a/applications/livetap/values.yaml b/applications/livetap/values.yaml index df18fd489a..778b85d536 100644 --- a/applications/livetap/values.yaml +++ b/applications/livetap/values.yaml @@ -1,12 +1,15 @@ cadc-tap: - # Settings for the ingress rules. ingress: + # -- Ingress path that should be routed to this service path: "live" config: # -- What type of backend? backend: "pg" + # -- Name of the service from Gafaelfawr's perspective + serviceName: "livetap" + pg: # -- Postgres hostname:port to connect to # @default -- `"mock-pg:5432"` (the mock pg) diff --git a/applications/love/README.md b/applications/love/README.md index d0e10912c7..2c4cc73cbe 100644 --- a/applications/love/README.md +++ b/applications/love/README.md @@ -146,7 +146,7 @@ Deployment for the LSST Operators Visualization Environment | love-nginx.affinity | object | `{}` | Affinity rules for the NGINX pod | | love-nginx.image.pullPolicy | string | `"IfNotPresent"` | The pull policy on the NGINX image | | love-nginx.image.repository | string | `"nginx"` | The NGINX image to use | -| love-nginx.image.tag | string | `"1.27.2"` | The tag to use for the NGINX image | +| love-nginx.image.tag | string | `"1.27.3"` | The tag to use for the NGINX image | | love-nginx.imagePullSecrets | list | `[]` | The list of pull secrets needed for the images. If this section is used, each object listed can have the following attributes defined: _name_ (The label identifying the pull-secret to use) | | love-nginx.ingress.annotations | object | `{}` | Annotations for the NGINX ingress | | love-nginx.ingress.className | string | `"nginx"` | Assign the Ingress class name | diff --git a/applications/love/charts/love-nginx/README.md b/applications/love/charts/love-nginx/README.md index 6a1289a87e..d0adb7822a 100644 --- a/applications/love/charts/love-nginx/README.md +++ b/applications/love/charts/love-nginx/README.md @@ -9,7 +9,7 @@ Helm chart for the LOVE Nginx server. | affinity | object | `{}` | Affinity rules for the NGINX pod | | image.pullPolicy | string | `"IfNotPresent"` | The pull policy on the NGINX image | | image.repository | string | `"nginx"` | The NGINX image to use | -| image.tag | string | `"1.27.2"` | The tag to use for the NGINX image | +| image.tag | string | `"1.27.3"` | The tag to use for the NGINX image | | imagePullSecrets | list | `[]` | The list of pull secrets needed for the images. If this section is used, each object listed can have the following attributes defined: _name_ (The label identifying the pull-secret to use) | | ingress.annotations | object | `{}` | Annotations for the NGINX ingress | | ingress.className | string | `"nginx"` | Assign the Ingress class name | diff --git a/applications/love/charts/love-nginx/values.yaml b/applications/love/charts/love-nginx/values.yaml index d4e96320fa..969d18791b 100644 --- a/applications/love/charts/love-nginx/values.yaml +++ b/applications/love/charts/love-nginx/values.yaml @@ -4,7 +4,7 @@ image: # -- The NGINX image to use repository: nginx # -- The tag to use for the NGINX image - tag: 1.27.2 + tag: 1.27.3 # -- The pull policy on the NGINX image pullPolicy: IfNotPresent # -- Service type specification diff --git a/applications/love/values-base.yaml b/applications/love/values-base.yaml index 090346b111..68afdb0fa0 100644 --- a/applications/love/values-base.yaml +++ b/applications/love/values-base.yaml @@ -23,7 +23,6 @@ love-manager: frontend: image: repository: ts-dockerhub.lsst.org/love-manager - tag: k0002 pullPolicy: Always env: SERVER_URL: base-lsp.lsst.codes @@ -63,7 +62,6 @@ love-manager: - name: general image: repository: ts-dockerhub.lsst.org/love-manager - tag: k0002 pullPolicy: Always env: LOVE_SITE: base @@ -127,7 +125,6 @@ love-manager: - name: queue image: repository: ts-dockerhub.lsst.org/love-manager - tag: k0002 pullPolicy: Always env: LOVE_SITE: base @@ -191,7 +188,6 @@ love-manager: - name: m1m3 image: repository: ts-dockerhub.lsst.org/love-manager - tag: k0002 pullPolicy: Always env: LOVE_SITE: base @@ -434,15 +430,18 @@ love-producer: - name: auxteless204 csc: ESS:204 --log-level 10 WEBSOCKET_HOST: love-nginx-service/love/manager/producers/ws/subscription - - name: auxteless205 - csc: ESS:205 --log-level 10 - WEBSOCKET_HOST: love-nginx-service/love/manager/producers/ws/subscription - name: calibhilless301 csc: ESS:301 --log-level 10 WEBSOCKET_HOST: love-nginx-service/love/manager/producers/ws/subscription + - name: cameraess111 + csc: ESS:111 --log-level 10 + WEBSOCKET_HOST: love-nginx-service/love/manager/producers/ws/subscription - name: camerahexapod csc: MTHexapod:1 --log-level 10 WEBSOCKET_HOST: love-nginx-service/love/manager/producers/ws/subscription + - name: cleanroomess109 + csc: ESS:109 --log-level 10 + WEBSOCKET_HOST: love-nginx-service/love/manager/producers/ws/subscription - name: dimm1 csc: DIMM:1 --log-level 10 WEBSOCKET_HOST: love-nginx-service/love/manager/producers/ws/subscription @@ -470,9 +469,15 @@ love-producer: - name: love csc: LOVE:0 --log-level 10 WEBSOCKET_HOST: love-nginx-service/love/manager/producers/ws/subscription + - name: m1m3ess113 + csc: ESS:113 --log-level 10 + WEBSOCKET_HOST: love-nginx-service/love/manager/producers/ws/subscription - name: m2ess106 csc: ESS:106 --log-level 10 WEBSOCKET_HOST: love-nginx-service/love/manager/producers/ws/subscription + - name: m2ess112 + csc: ESS:112 --log-level 10 + WEBSOCKET_HOST: love-nginx-service/love/manager/producers/ws/subscription - name: m2hexapod csc: MTHexapod:2 --log-level 10 WEBSOCKET_HOST: love-nginx-service/love/manager/producers/ws/subscription @@ -488,15 +493,6 @@ love-producer: - name: mtdome csc: MTDome:0 --log-level 10 WEBSOCKET_HOST: love-nginx-service/love/manager/producers/ws/subscription - - name: mtdomeess101 - csc: ESS:101 --log-level 10 - WEBSOCKET_HOST: love-nginx-service/love/manager/producers/ws/subscription - - name: mtdomeess102 - csc: ESS:102 --log-level 10 - WEBSOCKET_HOST: love-nginx-service/love/manager/producers/ws/subscription - - name: mtdomeess103 - csc: ESS:103 --log-level 10 - WEBSOCKET_HOST: love-nginx-service/love/manager/producers/ws/subscription - name: mtdomeess107 csc: ESS:107 --log-level 10 WEBSOCKET_HOST: love-nginx-service/love/manager/producers/ws/subscription @@ -511,10 +507,10 @@ love-producer: WEBSOCKET_HOST: love-nginx-service/love/manager/m1m3/ws/subscription resources: requests: - cpu: 10m - memory: 200Mi - limits: cpu: 100m + memory: 220Mi + limits: + cpu: 500m memory: 600Mi - name: mtm2 csc: MTM2:0 --log-level 10 @@ -549,6 +545,9 @@ love-producer: - name: tmaess105 csc: ESS:105 --log-level 10 WEBSOCKET_HOST: love-nginx-service/love/manager/producers/ws/subscription + - name: tmaess110 + csc: ESS:110 --log-level 10 + WEBSOCKET_HOST: love-nginx-service/love/manager/producers/ws/subscription - name: watcher csc: Watcher:0 --log-level 10 WEBSOCKET_HOST: love-nginx-service/love/manager/producers/ws/subscription diff --git a/applications/love/values-tucson-teststand.yaml b/applications/love/values-tucson-teststand.yaml index 17839b75b6..6892caa197 100644 --- a/applications/love/values-tucson-teststand.yaml +++ b/applications/love/values-tucson-teststand.yaml @@ -59,19 +59,171 @@ love-manager: initialDelaySeconds: 20 periodSeconds: 10 producers: + - name: general image: repository: ts-dockerhub.lsst.org/love-manager pullPolicy: Always env: + LOVE_SITE: tucson SERVER_URL: tucson-teststand.lsst.codes OLE_API_HOSTNAME: tucson-teststand.lsst.codes AUTH_LDAP_1_SERVER_URI: ldap://ipa1.tu.lsst.org AUTH_LDAP_2_SERVER_URI: ldap://ipa2.tu.lsst.org AUTH_LDAP_3_SERVER_URI: ldap://ipa3.tu.lsst.org + COMMANDER_HOSTNAME: love-commander-service + COMMANDER_PORT: 5000 DB_HOST: postgresdb01.tu.lsst.org + DB_ENGINE: postgresql + DB_NAME: love + DB_PORT: 5432 + DB_USER: love + HEARTBEAT_QUERY_COMMANDER: false + JIRA_API_HOSTNAME: rubinobs.atlassian.net + JIRA_PROJECT_ID: 10063 + REDIS_CONFIG_CAPACITY: 5000 + REDIS_CONFIG_EXPIRY: 5 + REDIS_HOST: love-manager-redis-service + REMOTE_STORAGE: true + URL_SUBPATH: /love + envSecrets: + SECRET_KEY: manager-secret-key + PROCESS_CONNECTION_PASS: process-connection-pass + ADMIN_USER_PASS: admin-user-pass + USER_USER_PASS: user-user-pass + CMD_USER_PASS: cmd-user-pass + AUTHLIST_USER_PASS: authlist-user-pass + AUTH_LDAP_BIND_PASSWORD: auth-ldap-bind-password + DB_PASS: db-pass + REDIS_PASS: redis-pass + replicas: 10 + autoscaling: + enabled: false + minReplicas: 2 + maxReplicas: 25 + targetCPUUtilizationPercentage: 50 + scaleDownPolicy: + policies: + - type: Pods + value: 2 + periodSeconds: 120 + - type: Percent + value: 10 + periodSeconds: 120 + selectPolicy: Min + resources: + requests: + cpu: 150m + memory: 200Mi + limits: + cpu: 1000m + memory: 1500Mi + readinessProbe: + tcpSocket: + port: 8000 + initialDelaySeconds: 20 + periodSeconds: 10 + - name: queue + image: + repository: ts-dockerhub.lsst.org/love-manager + pullPolicy: Always + env: LOVE_SITE: tucson + SERVER_URL: tucson-teststand.lsst.codes + OLE_API_HOSTNAME: tucson-teststand.lsst.codes + AUTH_LDAP_1_SERVER_URI: ldap://ipa1.tu.lsst.org + AUTH_LDAP_2_SERVER_URI: ldap://ipa2.tu.lsst.org + AUTH_LDAP_3_SERVER_URI: ldap://ipa3.tu.lsst.org + COMMANDER_HOSTNAME: love-commander-service + COMMANDER_PORT: 5000 + DB_HOST: postgresdb01.tu.lsst.org + DB_ENGINE: postgresql + DB_NAME: love + DB_PORT: 5432 + DB_USER: love + HEARTBEAT_QUERY_COMMANDER: false + JIRA_API_HOSTNAME: rubinobs.atlassian.net + JIRA_PROJECT_ID: 10063 + REDIS_CONFIG_CAPACITY: 5000 + REDIS_CONFIG_EXPIRY: 5 + REDIS_HOST: love-manager-redis-service + REMOTE_STORAGE: true + URL_SUBPATH: /love + envSecrets: + SECRET_KEY: manager-secret-key + PROCESS_CONNECTION_PASS: process-connection-pass + ADMIN_USER_PASS: admin-user-pass + USER_USER_PASS: user-user-pass + CMD_USER_PASS: cmd-user-pass + AUTHLIST_USER_PASS: authlist-user-pass + AUTH_LDAP_BIND_PASSWORD: auth-ldap-bind-password + DB_PASS: db-pass + REDIS_PASS: redis-pass + replicas: 3 autoscaling: - enabled: true + enabled: false + minReplicas: 2 + maxReplicas: 25 + targetCPUUtilizationPercentage: 50 + scaleDownPolicy: + policies: + - type: Pods + value: 2 + periodSeconds: 120 + - type: Percent + value: 10 + periodSeconds: 120 + selectPolicy: Min + resources: + requests: + cpu: 150m + memory: 200Mi + limits: + cpu: 1000m + memory: 1500Mi + readinessProbe: + tcpSocket: + port: 8000 + initialDelaySeconds: 20 + periodSeconds: 10 + - name: m1m3 + image: + repository: ts-dockerhub.lsst.org/love-manager + pullPolicy: Always + env: + LOVE_SITE: tucson + SERVER_URL: tucson-teststand.lsst.codes + OLE_API_HOSTNAME: tucson-teststand.lsst.codes + AUTH_LDAP_1_SERVER_URI: ldap://ipa1.tu.lsst.org + AUTH_LDAP_2_SERVER_URI: ldap://ipa2.tu.lsst.org + AUTH_LDAP_3_SERVER_URI: ldap://ipa3.tu.lsst.org + COMMANDER_HOSTNAME: love-commander-service + COMMANDER_PORT: 5000 + DB_HOST: postgresdb01.tu.lsst.org + DB_ENGINE: postgresql + DB_NAME: love + DB_PORT: 5432 + DB_USER: love + HEARTBEAT_QUERY_COMMANDER: false + JIRA_API_HOSTNAME: rubinobs.atlassian.net + JIRA_PROJECT_ID: 10063 + REDIS_CONFIG_CAPACITY: 5000 + REDIS_CONFIG_EXPIRY: 5 + REDIS_HOST: love-manager-redis-service + REMOTE_STORAGE: true + URL_SUBPATH: /love + envSecrets: + SECRET_KEY: manager-secret-key + PROCESS_CONNECTION_PASS: process-connection-pass + ADMIN_USER_PASS: admin-user-pass + USER_USER_PASS: user-user-pass + CMD_USER_PASS: cmd-user-pass + AUTHLIST_USER_PASS: authlist-user-pass + AUTH_LDAP_BIND_PASSWORD: auth-ldap-bind-password + DB_PASS: db-pass + REDIS_PASS: redis-pass + replicas: 1 + autoscaling: + enabled: false minReplicas: 2 maxReplicas: 25 targetCPUUtilizationPercentage: 50 @@ -200,8 +352,6 @@ love-producer: image: repository: ts-dockerhub.lsst.org/love-producer pullPolicy: Always - env: - WEBSOCKET_HOST: love-nginx-service/love/manager/producers/ws/subscription resources: requests: cpu: 10m @@ -212,121 +362,179 @@ love-producer: producers: - name: ataos csc: ATAOS:0 --log-level 10 + WEBSOCKET_HOST: love-nginx-service/love/manager/producers/ws/subscription - name: atcamera csc: ATCamera:0 --log-level 10 + WEBSOCKET_HOST: love-nginx-service/love/manager/producers/ws/subscription - name: atdome csc: ATDome:0 --log-level 10 + WEBSOCKET_HOST: love-nginx-service/love/manager/producers/ws/subscription - name: atdometrajectory csc: ATDomeTrajectory:0 --log-level 10 + WEBSOCKET_HOST: love-nginx-service/love/manager/producers/ws/subscription - name: atheaderservice csc: ATHeaderService:0 --log-level 10 + WEBSOCKET_HOST: love-nginx-service/love/manager/producers/ws/subscription - name: athexapod csc: ATHexapod:0 --log-level 10 + WEBSOCKET_HOST: love-nginx-service/love/manager/producers/ws/subscription - name: atmcs csc: ATMCS:0 --log-level 10 + WEBSOCKET_HOST: love-nginx-service/love/manager/producers/ws/subscription - name: atocps csc: OCPS:1 --log-level 10 + WEBSOCKET_HOST: love-nginx-service/love/manager/producers/ws/subscription - name: atoods csc: ATOODS:0 --log-level 10 + WEBSOCKET_HOST: love-nginx-service/love/manager/producers/ws/subscription - name: atpneumatics csc: ATPneumatics:0 --log-level 10 + WEBSOCKET_HOST: love-nginx-service/love/manager/producers/ws/subscription - name: atptg csc: ATPtg:0 --log-level 10 + WEBSOCKET_HOST: love-nginx-service/love/manager/producers/ws/subscription - name: atscheduler csc: Scheduler:2 --log-level 10 + WEBSOCKET_HOST: love-nginx-service/love/manager/producers/ws/subscription - name: atscriptqueue csc: ScriptQueue:2 --log-level 10 + WEBSOCKET_HOST: love-nginx-service/love/manager/queue/ws/subscription - name: atspectrograph csc: ATSpectrograph:0 --log-level 10 + WEBSOCKET_HOST: love-nginx-service/love/manager/producers/ws/subscription - name: auxteless201 csc: ESS:201 --log-level 10 + WEBSOCKET_HOST: love-nginx-service/love/manager/producers/ws/subscription - name: auxteless202 csc: ESS:202 --log-level 10 + WEBSOCKET_HOST: love-nginx-service/love/manager/producers/ws/subscription - name: auxteless203 csc: ESS:203 --log-level 10 + WEBSOCKET_HOST: love-nginx-service/love/manager/producers/ws/subscription - name: auxteless204 csc: ESS:204 --log-level 10 - - name: auxteless205 - csc: ESS:205 --log-level 10 + WEBSOCKET_HOST: love-nginx-service/love/manager/producers/ws/subscription - name: calibhilless301 csc: ESS:301 --log-level 10 + WEBSOCKET_HOST: love-nginx-service/love/manager/producers/ws/subscription + - name: cameraess111 + csc: ESS:111 --log-level 10 + WEBSOCKET_HOST: love-nginx-service/love/manager/producers/ws/subscription - name: camerahexapod csc: MTHexapod:1 --log-level 10 - - name: cccamera - csc: CCCamera:0 --log-level 10 - - name: ccheaderservice - csc: CCHeaderService:0 --log-level 10 - - name: ccoods - csc: CCOODS:0 --log-level 10 - - name: ccocps - csc: OCPS:2 --log-level 10 + WEBSOCKET_HOST: love-nginx-service/love/manager/producers/ws/subscription + - name: cleanroomess109 + csc: ESS:109 --log-level 10 + WEBSOCKET_HOST: love-nginx-service/love/manager/producers/ws/subscription - name: dimm1 csc: DIMM:1 --log-level 10 + WEBSOCKET_HOST: love-nginx-service/love/manager/producers/ws/subscription - name: dimm2 csc: DIMM:2 --log-level 10 + WEBSOCKET_HOST: love-nginx-service/love/manager/producers/ws/subscription - name: dsm1 csc: DSM:1 --log-level 10 + WEBSOCKET_HOST: love-nginx-service/love/manager/producers/ws/subscription - name: dsm2 csc: DSM:2 --log-level 10 + WEBSOCKET_HOST: love-nginx-service/love/manager/producers/ws/subscription - name: epm1 csc: EPM:1 --log-level 10 + WEBSOCKET_HOST: love-nginx-service/love/manager/producers/ws/subscription - name: gcheaderservice1 csc: GCHeaderService:1 --log-level 10 + WEBSOCKET_HOST: love-nginx-service/love/manager/producers/ws/subscription - name: genericcamera1 csc: GenericCamera:1 --log-level 10 + WEBSOCKET_HOST: love-nginx-service/love/manager/producers/ws/subscription - name: lasertracker1 csc: LaserTracker:1 --log-level 10 + WEBSOCKET_HOST: love-nginx-service/love/manager/producers/ws/subscription - name: love csc: LOVE:0 --log-level 10 + WEBSOCKET_HOST: love-nginx-service/love/manager/producers/ws/subscription + - name: m1m3ess113 + csc: ESS:113 --log-level 10 + WEBSOCKET_HOST: love-nginx-service/love/manager/producers/ws/subscription - name: m2ess106 csc: ESS:106 --log-level 10 + WEBSOCKET_HOST: love-nginx-service/love/manager/producers/ws/subscription + - name: m2ess112 + csc: ESS:112 --log-level 10 + WEBSOCKET_HOST: love-nginx-service/love/manager/producers/ws/subscription - name: m2hexapod csc: MTHexapod:2 --log-level 10 + WEBSOCKET_HOST: love-nginx-service/love/manager/producers/ws/subscription - name: mtaircompressor1 csc: MTAirCompressor:1 --log-level 10 + WEBSOCKET_HOST: love-nginx-service/love/manager/producers/ws/subscription - name: mtaircompressor2 csc: MTAirCompressor:2 --log-level 10 + WEBSOCKET_HOST: love-nginx-service/love/manager/producers/ws/subscription - name: mtaos csc: MTAOS:0 --log-level 10 + WEBSOCKET_HOST: love-nginx-service/love/manager/producers/ws/subscription - name: mtdome csc: MTDome:0 --log-level 10 - - name: mtdomeess101 - csc: ESS:101 --log-level 10 - - name: mtdomeess102 - csc: ESS:102 --log-level 10 - - name: mtdomeess103 - csc: ESS:103 --log-level 10 + WEBSOCKET_HOST: love-nginx-service/love/manager/producers/ws/subscription - name: mtdomeess107 csc: ESS:107 --log-level 10 + WEBSOCKET_HOST: love-nginx-service/love/manager/producers/ws/subscription - name: mtdomeess108 csc: ESS:108 --log-level 10 + WEBSOCKET_HOST: love-nginx-service/love/manager/producers/ws/subscription - name: mtdometrajectory csc: MTDomeTrajectory:0 --log-level 10 + WEBSOCKET_HOST: love-nginx-service/love/manager/producers/ws/subscription - name: mtm1m3 csc: MTM1M3:0 --log-level 10 + WEBSOCKET_HOST: love-nginx-service/love/manager/m1m3/ws/subscription + resources: + requests: + cpu: 100m + memory: 220Mi + limits: + cpu: 500m + memory: 600Mi - name: mtm2 csc: MTM2:0 --log-level 10 + WEBSOCKET_HOST: love-nginx-service/love/manager/producers/ws/subscription - name: mtmount csc: MTMount:0 --log-level 10 + WEBSOCKET_HOST: love-nginx-service/love/manager/producers/ws/subscription - name: mtptg csc: MTPtg:0 --log-level 10 + WEBSOCKET_HOST: love-nginx-service/love/manager/producers/ws/subscription - name: mtrotator csc: MTRotator:0 --log-level 10 + WEBSOCKET_HOST: love-nginx-service/love/manager/producers/ws/subscription - name: mtscheduler csc: Scheduler:1 --log-level 10 + WEBSOCKET_HOST: love-nginx-service/love/manager/producers/ws/subscription - name: mtscriptqueue csc: ScriptQueue:1 --log-level 10 + WEBSOCKET_HOST: love-nginx-service/love/manager/queue/ws/subscription - name: ocsscheduler csc: Scheduler:3 --log-level 10 + WEBSOCKET_HOST: love-nginx-service/love/manager/producers/ws/subscription - name: ocsscriptqueue csc: ScriptQueue:3 --log-level 10 + WEBSOCKET_HOST: love-nginx-service/love/manager/queue/ws/subscription - name: tmaess001 csc: ESS:1 --log-level 10 + WEBSOCKET_HOST: love-nginx-service/love/manager/producers/ws/subscription - name: tmaess104 csc: ESS:104 --log-level 10 + WEBSOCKET_HOST: love-nginx-service/love/manager/producers/ws/subscription - name: tmaess105 csc: ESS:105 --log-level 10 + WEBSOCKET_HOST: love-nginx-service/love/manager/producers/ws/subscription + - name: tmaess110 + csc: ESS:110 --log-level 10 + WEBSOCKET_HOST: love-nginx-service/love/manager/producers/ws/subscription - name: watcher csc: Watcher:0 --log-level 10 + WEBSOCKET_HOST: love-nginx-service/love/manager/producers/ws/subscription - name: weatherforecast csc: WeatherForecast:0 --log-level 10 + WEBSOCKET_HOST: love-nginx-service/love/manager/producers/ws/subscription diff --git a/applications/mobu/templates/ingress.yaml b/applications/mobu/templates/ingress.yaml index ce60afd027..73d69de2eb 100644 --- a/applications/mobu/templates/ingress.yaml +++ b/applications/mobu/templates/ingress.yaml @@ -6,10 +6,11 @@ metadata: {{- include "mobu.labels" . | nindent 4 }} config: baseUrl: {{ .Values.global.baseUrl | quote }} + loginRedirect: true scopes: all: - "exec:admin" - loginRedirect: true + service: "mobu" template: metadata: name: {{ template "mobu.fullname" . }} diff --git a/applications/monitoring/README.md b/applications/monitoring/README.md index 68e2befc31..b4d77d93ad 100644 --- a/applications/monitoring/README.md +++ b/applications/monitoring/README.md @@ -43,6 +43,7 @@ Monitoring suite: InfluxDB2, Chronograf, telegraf | influxdb2.ingress | object | disabled, must be enabled and configured at each site | InfluxDB2 ingress configuration. | | influxdb2.livenessProbe.failureThreshold | int | `10` | Number of checks to conclude whether InfluxDB has died | | influxdb2.livenessProbe.periodSeconds | int | `10` | Period between checks for whether InfluxDB is still alive | +| influxdb2.pdb | object | disabled; nonsensical for single replica | InfluxDB2 pod disruption budget. | | influxdb2.resources | object | See `values.yaml` | Resource limits and requests for the InfluxDB server instance | | influxdb2.startupProbe.enabled | bool | `true` | Whether to enable a startup probe | | influxdb2.startupProbe.failureThreshold | int | `60` | Number of checks to conclude whether InfluxDB won't start. High to allow up to 10 minutes for startup, because checking many shards can be slow. | diff --git a/applications/monitoring/values.yaml b/applications/monitoring/values.yaml index d0035f2dac..725c06d060 100644 --- a/applications/monitoring/values.yaml +++ b/applications/monitoring/values.yaml @@ -23,6 +23,11 @@ influxdb2: # -- Where we store secrets to run the server existingSecret: monitoring + # -- InfluxDB2 pod disruption budget. + # @default -- disabled; nonsensical for single replica + pdb: + create: false + # -- InfluxDB2 ingress configuration. # @default -- disabled, must be enabled and configured at each site ingress: diff --git a/applications/narrativelog/templates/ingress.yaml b/applications/narrativelog/templates/ingress.yaml index 796e78fd1d..73ad20a4d8 100644 --- a/applications/narrativelog/templates/ingress.yaml +++ b/applications/narrativelog/templates/ingress.yaml @@ -11,6 +11,7 @@ config: scopes: all: - "exec:internal-tools" + service: "narrativelog" {{- else }} scopes: anonymous: true diff --git a/applications/next-visit-fan-out/values-usdfdev-prompt-processing.yaml b/applications/next-visit-fan-out/values-usdfdev-prompt-processing.yaml index fc97581a64..22c4ccfc71 100644 --- a/applications/next-visit-fan-out/values-usdfdev-prompt-processing.yaml +++ b/applications/next-visit-fan-out/values-usdfdev-prompt-processing.yaml @@ -3,7 +3,7 @@ knative: retryRequests: false kafka: - schemaRegistryUrl: http://10.96.181.159:8081 + schemaRegistryUrl: http://10.103.8.219:8081 sasquatchAddress: 10.100.226.209:9094 consumerGroup: test-group-3 nextVisitTopic: test.next-visit diff --git a/applications/next-visit-fan-out/values-usdfprod-prompt-processing.yaml b/applications/next-visit-fan-out/values-usdfprod-prompt-processing.yaml index 75a9eccb55..c2fd7c9667 100644 --- a/applications/next-visit-fan-out/values-usdfprod-prompt-processing.yaml +++ b/applications/next-visit-fan-out/values-usdfprod-prompt-processing.yaml @@ -1,8 +1,8 @@ knative: - maxMessages: 1000 # Kubernetes can't support more pods yet + maxMessages: 1000 # Kubernetes can't support more pods yet kafka: - schemaRegistryUrl: http://10.110.90.252:8081 + schemaRegistryUrl: http://10.96.24.88:8081 sasquatchAddress: 10.96.121.181:9094 consumerGroup: next-visit-fan-out-1 nextVisitTopic: lsst.sal.ScriptQueue.logevent_nextVisit diff --git a/applications/nightreport/templates/ingress.yaml b/applications/nightreport/templates/ingress.yaml index 930d61eab8..a6600c25a5 100644 --- a/applications/nightreport/templates/ingress.yaml +++ b/applications/nightreport/templates/ingress.yaml @@ -11,6 +11,7 @@ config: scopes: all: - "exec:internal-tools" + service: "nightreport" {{- else }} scopes: anonymous: true diff --git a/applications/noteburst/templates/ingress.yaml b/applications/noteburst/templates/ingress.yaml index 2072a48326..c468e359dc 100644 --- a/applications/noteburst/templates/ingress.yaml +++ b/applications/noteburst/templates/ingress.yaml @@ -6,10 +6,11 @@ metadata: {{- include "noteburst.labels" . | nindent 4 }} config: baseUrl: {{ .Values.global.baseUrl | quote }} + loginRedirect: true scopes: all: - "exec:notebook" - loginRedirect: true + service: "noteburst" template: metadata: name: {{ template "noteburst.fullname" . }} diff --git a/applications/noteburst/values-usdfdev.yaml b/applications/noteburst/values-usdfdev.yaml index 612ce2000e..cffd799774 100644 --- a/applications/noteburst/values-usdfdev.yaml +++ b/applications/noteburst/values-usdfdev.yaml @@ -13,6 +13,7 @@ config: - username: "bot-noteburst03" - username: "bot-noteburst04" - username: "bot-noteburst05" + imageSelector: "weekly" # Use SSD for Redis storage. redis: diff --git a/applications/nublado/README.md b/applications/nublado/README.md index 1ecc7508f2..0dff4471ee 100644 --- a/applications/nublado/README.md +++ b/applications/nublado/README.md @@ -17,7 +17,7 @@ JupyterHub and custom spawner for the Rubin Science Platform | cloudsql.image.pullPolicy | string | `"IfNotPresent"` | Pull policy for Cloud SQL Auth Proxy images | | cloudsql.image.repository | string | `"gcr.io/cloudsql-docker/gce-proxy"` | Cloud SQL Auth Proxy image to use | | cloudsql.image.resources | object | See `values.yaml` | Resource requests and limits for Cloud SQL pod | -| cloudsql.image.tag | string | `"1.37.1"` | Cloud SQL Auth Proxy tag to use | +| cloudsql.image.tag | string | `"1.37.2"` | Cloud SQL Auth Proxy tag to use | | cloudsql.instanceConnectionName | string | None, must be set if Cloud SQL Auth Proxy is enabled | Instance connection name for a Cloud SQL PostgreSQL instance | | cloudsql.nodeSelector | object | `{}` | Node selection rules for the Cloud SQL Auth Proxy pod | | cloudsql.podAnnotations | object | `{}` | Annotations for the Cloud SQL Auth Proxy pod | diff --git a/applications/nublado/templates/controller-ingress-admin.yaml b/applications/nublado/templates/controller-ingress-admin.yaml index 43043b1cc4..1778da8f75 100644 --- a/applications/nublado/templates/controller-ingress-admin.yaml +++ b/applications/nublado/templates/controller-ingress-admin.yaml @@ -9,6 +9,7 @@ config: scopes: all: - "exec:admin" + service: "nublado-controller" template: metadata: name: "controller-admin" diff --git a/applications/nublado/templates/controller-ingress-files.yaml b/applications/nublado/templates/controller-ingress-files.yaml index 19d7506b89..de85296010 100644 --- a/applications/nublado/templates/controller-ingress-files.yaml +++ b/applications/nublado/templates/controller-ingress-files.yaml @@ -10,9 +10,10 @@ config: scopes: all: - "write:files" + service: "nublado-files" delegate: internal: - service: "nublado" + service: "nublado-files" scopes: [] template: metadata: diff --git a/applications/nublado/templates/controller-ingress-hub.yaml b/applications/nublado/templates/controller-ingress-hub.yaml index 2c1c00c611..c25dbc96a7 100644 --- a/applications/nublado/templates/controller-ingress-hub.yaml +++ b/applications/nublado/templates/controller-ingress-hub.yaml @@ -9,6 +9,7 @@ config: scopes: all: - "admin:jupyterlab" + service: "nublado-controller" template: metadata: name: "controller-hub" diff --git a/applications/nublado/templates/controller-ingress-user.yaml b/applications/nublado/templates/controller-ingress-user.yaml index 45549f4703..ca6b9d26d8 100644 --- a/applications/nublado/templates/controller-ingress-user.yaml +++ b/applications/nublado/templates/controller-ingress-user.yaml @@ -9,6 +9,7 @@ config: scopes: all: - "exec:notebook" + service: "nublado-controller" delegate: notebook: {} template: diff --git a/applications/nublado/templates/proxy-ingress.yaml b/applications/nublado/templates/proxy-ingress.yaml index 4a7b13f7ce..96dc37c762 100644 --- a/applications/nublado/templates/proxy-ingress.yaml +++ b/applications/nublado/templates/proxy-ingress.yaml @@ -7,10 +7,11 @@ metadata: config: baseUrl: {{ .Values.global.baseUrl | quote }} authCacheDuration: "5m" + loginRedirect: true scopes: all: - "exec:notebook" - loginRedirect: true + service: "nublado" delegate: notebook: {} template: diff --git a/applications/nublado/templates/proxy-spawn-ingress.yaml b/applications/nublado/templates/proxy-spawn-ingress.yaml index 06af378237..54c4761c36 100644 --- a/applications/nublado/templates/proxy-spawn-ingress.yaml +++ b/applications/nublado/templates/proxy-spawn-ingress.yaml @@ -7,10 +7,11 @@ metadata: {{- include "nublado.labels" . | nindent 4 }} config: baseUrl: {{ .Values.global.baseUrl | quote }} + loginRedirect: true scopes: all: - "exec:notebook" - loginRedirect: true + service: "nublado" delegate: {{- if .Values.hub.minimumTokenLifetime }} minimumLifetime: {{ .Values.hub.minimumTokenLifetime }} diff --git a/applications/nublado/values.yaml b/applications/nublado/values.yaml index 79049d8170..524c7c7788 100644 --- a/applications/nublado/values.yaml +++ b/applications/nublado/values.yaml @@ -585,7 +585,7 @@ cloudsql: pullPolicy: "IfNotPresent" # -- Cloud SQL Auth Proxy tag to use - tag: "1.37.1" + tag: "1.37.2" # -- Instance connection name for a Cloud SQL PostgreSQL instance # @default -- None, must be set if Cloud SQL Auth Proxy is enabled diff --git a/applications/obsenv-management/charts/obsenv-ui/templates/ingress.yaml b/applications/obsenv-management/charts/obsenv-ui/templates/ingress.yaml index de30d87046..1ad03831c5 100644 --- a/applications/obsenv-management/charts/obsenv-ui/templates/ingress.yaml +++ b/applications/obsenv-management/charts/obsenv-ui/templates/ingress.yaml @@ -10,9 +10,10 @@ config: scopes: all: - "exec:internal-tools" + service: "obsenv-ui" delegate: internal: - service: "obsenv-api" + service: "obsenv-ui" scopes: [] template: metadata: diff --git a/applications/ook/templates/ingress.yaml b/applications/ook/templates/ingress.yaml index 41fe9578a7..d43bc0a839 100644 --- a/applications/ook/templates/ingress.yaml +++ b/applications/ook/templates/ingress.yaml @@ -6,10 +6,11 @@ metadata: {{- include "ook.labels" . | nindent 4 }} config: baseUrl: {{ .Values.global.baseUrl | quote }} + loginRedirect: true scopes: all: - "exec:admin" - loginRedirect: true + service: "ook" template: metadata: name: {{ template "ook.fullname" . }} diff --git a/applications/plot-navigator/templates/ingress.yaml b/applications/plot-navigator/templates/ingress.yaml index a0c1d19102..e32f7e32e5 100644 --- a/applications/plot-navigator/templates/ingress.yaml +++ b/applications/plot-navigator/templates/ingress.yaml @@ -6,10 +6,11 @@ metadata: {{- include "plot-navigator.labels" . | nindent 4 }} config: baseUrl: {{ .Values.global.baseUrl | quote }} + loginRedirect: true scopes: all: - "exec:portal" - loginRedirect: true + service: "plot-navigator" delegate: internal: scopes: [] diff --git a/applications/portal/templates/ingress-admin.yaml b/applications/portal/templates/ingress-admin.yaml index 2a107ab1f5..65fc675e29 100644 --- a/applications/portal/templates/ingress-admin.yaml +++ b/applications/portal/templates/ingress-admin.yaml @@ -6,10 +6,11 @@ metadata: {{- include "portal.labels" . | nindent 4 }} config: baseUrl: {{ .Values.global.baseUrl | quote }} + loginRedirect: true scopes: all: - "exec:admin" - loginRedirect: true + service: "portal" template: metadata: name: {{ include "portal.fullname" . }}-admin diff --git a/applications/portal/templates/ingress.yaml b/applications/portal/templates/ingress.yaml index 0d7d6fc957..b14411788a 100644 --- a/applications/portal/templates/ingress.yaml +++ b/applications/portal/templates/ingress.yaml @@ -7,10 +7,11 @@ metadata: config: baseUrl: {{ .Values.global.baseUrl | quote }} authCacheDuration: "5m" + loginRedirect: true scopes: all: - "exec:portal" - loginRedirect: true + service: "portal" delegate: internal: service: "portal" diff --git a/applications/ppdb-replication/templates/ingress.yaml b/applications/ppdb-replication/templates/ingress.yaml index 381bce084c..849ae8c296 100644 --- a/applications/ppdb-replication/templates/ingress.yaml +++ b/applications/ppdb-replication/templates/ingress.yaml @@ -9,6 +9,7 @@ config: scopes: all: - "read:image" + service: "ppdb-replication" template: metadata: name: "ppdb-replication" diff --git a/applications/production-tools/templates/ingress.yaml b/applications/production-tools/templates/ingress.yaml index fbf1fb3bde..fab4f59fbf 100644 --- a/applications/production-tools/templates/ingress.yaml +++ b/applications/production-tools/templates/ingress.yaml @@ -6,10 +6,11 @@ metadata: {{- include "production-tools.labels" . | nindent 4 }} config: baseUrl: {{ .Values.global.baseUrl | quote }} + loginRedirect: true scopes: all: - "exec:portal" - loginRedirect: true + service: "production-tools" template: metadata: name: {{ template "production-tools.fullname" . }} diff --git a/applications/prompt-proto-service-hsc-gpu/README.md b/applications/prompt-proto-service-hsc-gpu/README.md index ac15e45b47..8d393c1e28 100644 --- a/applications/prompt-proto-service-hsc-gpu/README.md +++ b/applications/prompt-proto-service-hsc-gpu/README.md @@ -31,9 +31,9 @@ Prompt Proto Service is an event driven service for processing camera images. Th | prompt-proto-service.imageNotifications.topic | string | None, must be set | Topic where raw image arrival notifications appear | | prompt-proto-service.instrument.calibRepo | string | None, must be set | URI to the shared repo used for calibrations, templates, and pipeline outputs. If `registry.centralRepoFile` is set, this URI points to a local redirect instead of the central repo itself. | | prompt-proto-service.instrument.name | string | `"HSC"` | The "short" name of the instrument | -| prompt-proto-service.instrument.pipelines.main | string | None, must be set | Machine-readable string describing which pipeline(s) should be run for which visits. Notation is complex and still in flux; see [the source code](https://github.com/lsst-dm/prompt_processing/blob/main/python/activator/config.py) for examples. | -| prompt-proto-service.instrument.pipelines.preprocessing | string | None, must be set | Machine-readable string describing which pipeline(s) should be run before which visits' raw arrival. | -| prompt-proto-service.instrument.preloadPadding | int | `30` | Number of arcseconds to pad the spatial region in preloading. | +| prompt-proto-service.instrument.pipelines.main | string | None, must be set | YAML-formatted config describing which pipeline(s) should be run for which visits' raws. Fields are still in flux; see [the source code](https://github.com/lsst-dm/prompt_processing/blob/main/python/activator/config.py) for examples. | +| prompt-proto-service.instrument.pipelines.preprocessing | string | None, must be set | YAML-formatted config describing which pipeline(s) should be run before which visits' raw arrival. | +| prompt-proto-service.instrument.preloadPadding | int | `42` | Number of arcseconds to pad the spatial region in preloading. | | prompt-proto-service.instrument.skymap | string | `"hsc_rings_v1"` | Skymap to use with the instrument | | prompt-proto-service.knative.cpuLimit | int | `1` | The maximum cpu cores for the full pod (see `containerConcurrency`). | | prompt-proto-service.knative.cpuRequest | int | `1` | The cpu cores requested for the full pod (see `containerConcurrency`). | diff --git a/applications/prompt-proto-service-hsc-gpu/values-usdfdev-prompt-processing.yaml b/applications/prompt-proto-service-hsc-gpu/values-usdfdev-prompt-processing.yaml index 33666a8bf6..0c3a27f4da 100644 --- a/applications/prompt-proto-service-hsc-gpu/values-usdfdev-prompt-processing.yaml +++ b/applications/prompt-proto-service-hsc-gpu/values-usdfdev-prompt-processing.yaml @@ -12,8 +12,12 @@ prompt-proto-service: instrument: pipelines: - main: (survey="SURVEY")=[${PROMPT_PROCESSING_DIR}/pipelines/HSC/ApPipe.yaml] - preprocessing: (survey="SURVEY")=[${PROMPT_PROCESSING_DIR}/pipelines/HSC/Preprocessing.yaml] + main: |- + - survey: SURVEY + pipelines: ['${PROMPT_PROCESSING_DIR}/pipelines/HSC/ApPipe.yaml'] + preprocessing: |- + - survey: SURVEY + pipelines: ['${PROMPT_PROCESSING_DIR}/pipelines/HSC/Preprocessing.yaml'] calibRepo: s3://rubin-pp-dev-users/central_repo_2 s3: diff --git a/applications/prompt-proto-service-hsc-gpu/values.yaml b/applications/prompt-proto-service-hsc-gpu/values.yaml index 9ccc7af9dd..6cf07db2d8 100644 --- a/applications/prompt-proto-service-hsc-gpu/values.yaml +++ b/applications/prompt-proto-service-hsc-gpu/values.yaml @@ -38,17 +38,17 @@ prompt-proto-service: # -- The "short" name of the instrument name: HSC pipelines: - # -- Machine-readable string describing which pipeline(s) should be run for which visits. - # Notation is complex and still in flux; see [the source code](https://github.com/lsst-dm/prompt_processing/blob/main/python/activator/config.py) for examples. + # -- YAML-formatted config describing which pipeline(s) should be run for which visits' raws. + # Fields are still in flux; see [the source code](https://github.com/lsst-dm/prompt_processing/blob/main/python/activator/config.py) for examples. # @default -- None, must be set main: "" - # -- Machine-readable string describing which pipeline(s) should be run before which visits' raw arrival. + # -- YAML-formatted config describing which pipeline(s) should be run before which visits' raw arrival. # @default -- None, must be set preprocessing: "" # -- Skymap to use with the instrument skymap: hsc_rings_v1 # -- Number of arcseconds to pad the spatial region in preloading. - preloadPadding: 30 + preloadPadding: 42 # -- URI to the shared repo used for calibrations, templates, and pipeline outputs. # If `registry.centralRepoFile` is set, this URI points to a local redirect instead of the central repo itself. # @default -- None, must be set diff --git a/applications/prompt-proto-service-hsc/README.md b/applications/prompt-proto-service-hsc/README.md index ac633519c8..3f6af2f7fb 100644 --- a/applications/prompt-proto-service-hsc/README.md +++ b/applications/prompt-proto-service-hsc/README.md @@ -31,9 +31,9 @@ Prompt Proto Service is an event driven service for processing camera images. Th | prompt-proto-service.imageNotifications.topic | string | None, must be set | Topic where raw image arrival notifications appear | | prompt-proto-service.instrument.calibRepo | string | None, must be set | URI to the shared repo used for calibrations, templates, and pipeline outputs. If `registry.centralRepoFile` is set, this URI points to a local redirect instead of the central repo itself. | | prompt-proto-service.instrument.name | string | `"HSC"` | The "short" name of the instrument | -| prompt-proto-service.instrument.pipelines.main | string | None, must be set | Machine-readable string describing which pipeline(s) should be run for which visits. Notation is complex and still in flux; see [the source code](https://github.com/lsst-dm/prompt_processing/blob/main/python/activator/config.py) for examples. | -| prompt-proto-service.instrument.pipelines.preprocessing | string | None, must be set | Machine-readable string describing which pipeline(s) should be run before which visits' raw arrival. | -| prompt-proto-service.instrument.preloadPadding | int | `30` | Number of arcseconds to pad the spatial region in preloading. | +| prompt-proto-service.instrument.pipelines.main | string | None, must be set | YAML-formatted config describing which pipeline(s) should be run for which visits' raws. Fields are still in flux; see [the source code](https://github.com/lsst-dm/prompt_processing/blob/main/python/activator/config.py) for examples. | +| prompt-proto-service.instrument.pipelines.preprocessing | string | None, must be set | YAML-formatted config describing which pipeline(s) should be run before which visits' raw arrival. | +| prompt-proto-service.instrument.preloadPadding | int | `42` | Number of arcseconds to pad the spatial region in preloading. | | prompt-proto-service.instrument.skymap | string | `"hsc_rings_v1"` | Skymap to use with the instrument | | prompt-proto-service.knative.cpuLimit | int | `1` | The maximum cpu cores for the full pod (see `containerConcurrency`). | | prompt-proto-service.knative.cpuRequest | int | `1` | The cpu cores requested for the full pod (see `containerConcurrency`). | diff --git a/applications/prompt-proto-service-hsc/values-usdfdev-prompt-processing.yaml b/applications/prompt-proto-service-hsc/values-usdfdev-prompt-processing.yaml index 6ef44857a0..66dc8938bc 100644 --- a/applications/prompt-proto-service-hsc/values-usdfdev-prompt-processing.yaml +++ b/applications/prompt-proto-service-hsc/values-usdfdev-prompt-processing.yaml @@ -13,8 +13,12 @@ prompt-proto-service: instrument: pipelines: - main: (survey="SURVEY")=[${PROMPT_PROCESSING_DIR}/pipelines/HSC/ApPipe.yaml] - preprocessing: (survey="SURVEY")=[${PROMPT_PROCESSING_DIR}/pipelines/HSC/Preprocessing.yaml] + main: |- + - survey: SURVEY + pipelines: ['${PROMPT_PROCESSING_DIR}/pipelines/HSC/ApPipe.yaml'] + preprocessing: |- + - survey: SURVEY + pipelines: ['${PROMPT_PROCESSING_DIR}/pipelines/HSC/Preprocessing.yaml'] calibRepo: s3://rubin-pp-dev-users/central_repo_2 s3: @@ -35,7 +39,8 @@ prompt-proto-service: endpointUrl: https://usdf-rsp-dev.slac.stanford.edu/sasquatch-rest-proxy auth_env: false - # A cache efficiency workaround breaks on RC2 tests; see DM-43205. - cacheCalibs: false + debug: + # A cache efficiency workaround breaks on RC2 tests; see DM-43205. + cacheCalibs: false fullnameOverride: "prompt-proto-service-hsc" diff --git a/applications/prompt-proto-service-hsc/values.yaml b/applications/prompt-proto-service-hsc/values.yaml index 46ac0611d7..9cfc798c4e 100644 --- a/applications/prompt-proto-service-hsc/values.yaml +++ b/applications/prompt-proto-service-hsc/values.yaml @@ -38,17 +38,17 @@ prompt-proto-service: # -- The "short" name of the instrument name: HSC pipelines: - # -- Machine-readable string describing which pipeline(s) should be run for which visits. - # Notation is complex and still in flux; see [the source code](https://github.com/lsst-dm/prompt_processing/blob/main/python/activator/config.py) for examples. + # -- YAML-formatted config describing which pipeline(s) should be run for which visits' raws. + # Fields are still in flux; see [the source code](https://github.com/lsst-dm/prompt_processing/blob/main/python/activator/config.py) for examples. # @default -- None, must be set main: "" - # -- Machine-readable string describing which pipeline(s) should be run before which visits' raw arrival. + # -- YAML-formatted config describing which pipeline(s) should be run before which visits' raw arrival. # @default -- None, must be set preprocessing: "" # -- Skymap to use with the instrument skymap: hsc_rings_v1 # -- Number of arcseconds to pad the spatial region in preloading. - preloadPadding: 30 + preloadPadding: 42 # -- URI to the shared repo used for calibrations, templates, and pipeline outputs. # If `registry.centralRepoFile` is set, this URI points to a local redirect instead of the central repo itself. # @default -- None, must be set diff --git a/applications/prompt-proto-service-latiss/README.md b/applications/prompt-proto-service-latiss/README.md index b5028a2171..338d44300f 100644 --- a/applications/prompt-proto-service-latiss/README.md +++ b/applications/prompt-proto-service-latiss/README.md @@ -31,8 +31,8 @@ Prompt Proto Service is an event driven service for processing camera images. Th | prompt-proto-service.imageNotifications.topic | string | None, must be set | Topic where raw image arrival notifications appear | | prompt-proto-service.instrument.calibRepo | string | None, must be set | URI to the shared repo used for calibrations, templates, and pipeline outputs. If `registry.centralRepoFile` is set, this URI points to a local redirect instead of the central repo itself. | | prompt-proto-service.instrument.name | string | `"LATISS"` | The "short" name of the instrument | -| prompt-proto-service.instrument.pipelines.main | string | None, must be set | Machine-readable string describing which pipeline(s) should be run for which visits. Notation is complex and still in flux; see [the source code](https://github.com/lsst-dm/prompt_processing/blob/main/python/activator/config.py) for examples. | -| prompt-proto-service.instrument.pipelines.preprocessing | string | None, must be set | Machine-readable string describing which pipeline(s) should be run before which visits' raw arrival. | +| prompt-proto-service.instrument.pipelines.main | string | None, must be set | YAML-formatted config describing which pipeline(s) should be run for which visits' raws. Fields are still in flux; see [the source code](https://github.com/lsst-dm/prompt_processing/blob/main/python/activator/config.py) for examples. | +| prompt-proto-service.instrument.pipelines.preprocessing | string | None, must be set | YAML-formatted config describing which pipeline(s) should be run before which visits' raw arrival. | | prompt-proto-service.instrument.preloadPadding | int | `30` | Number of arcseconds to pad the spatial region in preloading. | | prompt-proto-service.instrument.skymap | string | `"latiss_v1"` | Skymap to use with the instrument | | prompt-proto-service.knative.cpuLimit | int | `1` | The maximum cpu cores for the full pod (see `containerConcurrency`). | diff --git a/applications/prompt-proto-service-latiss/values-usdfdev-prompt-processing.yaml b/applications/prompt-proto-service-latiss/values-usdfdev-prompt-processing.yaml index 4bd5b8032d..fd5ab7ce4f 100644 --- a/applications/prompt-proto-service-latiss/values-usdfdev-prompt-processing.yaml +++ b/applications/prompt-proto-service-latiss/values-usdfdev-prompt-processing.yaml @@ -11,10 +11,15 @@ prompt-proto-service: instrument: pipelines: - main: >- - (survey="SURVEY")=[${PROMPT_PROCESSING_DIR}/pipelines/LATISS/ApPipe.yaml, - ${PROMPT_PROCESSING_DIR}/pipelines/LATISS/Isr.yaml] - preprocessing: (survey="SURVEY")=[${PROMPT_PROCESSING_DIR}/pipelines/LATISS/Preprocessing.yaml] + main: |- + - survey: SURVEY + pipelines: + - ${PROMPT_PROCESSING_DIR}/pipelines/LATISS/ApPipe.yaml + # Fallback for an upload.py image without templates + - ${PROMPT_PROCESSING_DIR}/pipelines/LATISS/Isr.yaml + preprocessing: |- + - survey: SURVEY + pipelines: ['${PROMPT_PROCESSING_DIR}/pipelines/LATISS/Preprocessing.yaml'] calibRepo: s3://rubin-pp-dev-users/central_repo_2 s3: @@ -35,7 +40,8 @@ prompt-proto-service: endpointUrl: https://usdf-rsp-dev.slac.stanford.edu/sasquatch-rest-proxy auth_env: false - # A cache efficiency workaround breaks when mixing observing dates; see DM-43205, DM-43913. - cacheCalibs: false + debug: + # A cache efficiency workaround breaks when mixing observing dates; see DM-43205, DM-43913. + cacheCalibs: false fullnameOverride: "prompt-proto-service-latiss" diff --git a/applications/prompt-proto-service-latiss/values-usdfprod-prompt-processing.yaml b/applications/prompt-proto-service-latiss/values-usdfprod-prompt-processing.yaml index 8325a34a2a..4cf418992a 100644 --- a/applications/prompt-proto-service-latiss/values-usdfprod-prompt-processing.yaml +++ b/applications/prompt-proto-service-latiss/values-usdfprod-prompt-processing.yaml @@ -14,34 +14,34 @@ prompt-proto-service: image: pullPolicy: IfNotPresent # Overrides the image tag whose default is the chart appVersion. - tag: 4.8.2 + tag: 4.9.0 instrument: pipelines: - # BLOCK-306 is photographic imaging - # BLOCK-T17 is daytime checkout - # BLOCK-271 is photon transfer curve calibrations - # BLOCK-295 is the daily calibration sequence as of May 27, 2024 - main: >- - (survey="BLOCK-306")=[${PROMPT_PROCESSING_DIR}/pipelines/LATISS/ApPipe.yaml, - ${PROMPT_PROCESSING_DIR}/pipelines/LATISS/SingleFrame.yaml, - ${PROMPT_PROCESSING_DIR}/pipelines/LATISS/Isr.yaml] - (survey="BLOCK-T17")=[${PROMPT_PROCESSING_DIR}/pipelines/LATISS/Isr-cal.yaml] - (survey="cwfs")=[] - (survey="cwfs-focus-sweep")=[] - (survey="spec-survey")=[] - (survey="BLOCK-271")=[] - (survey="BLOCK-295")=[] - (survey="")=[] - preprocessing: >- - (survey="BLOCK-306")=[${PROMPT_PROCESSING_DIR}/pipelines/LATISS/Preprocessing.yaml] - (survey="BLOCK-T17")=[] - (survey="cwfs")=[] - (survey="cwfs-focus-sweep")=[] - (survey="spec-survey")=[] - (survey="BLOCK-271")=[] - (survey="BLOCK-295")=[] - (survey="")=[] + main: |- + - survey: BLOCK-306 # photographic imaging + pipelines: + - ${PROMPT_PROCESSING_DIR}/pipelines/LATISS/ApPipe.yaml + - ${PROMPT_PROCESSING_DIR}/pipelines/LATISS/SingleFrame.yaml + - ${PROMPT_PROCESSING_DIR}/pipelines/LATISS/Isr.yaml + - survey: BLOCK-T17 # daytime checkout + pipelines: ['${PROMPT_PROCESSING_DIR}/pipelines/LATISS/Isr-cal.yaml'] + - {survey: cwfs, pipelines: []} + - {survey: cwfs-focus-sweep, pipelines: []} + - {survey: spec-survey, pipelines: []} + - {survey: BLOCK-271, pipelines: []} # photon transfer curve calibrations + - {survey: BLOCK-295, pipelines: []} # the daily calibration sequence as of May 27, 2024 + - {survey: "", pipelines: []} + preprocessing: |- + - survey: BLOCK-306 + pipelines: ['${PROMPT_PROCESSING_DIR}/pipelines/LATISS/Preprocessing.yaml'] + - {survey: BLOCK-T17, pipelines: []} + - {survey: cwfs, pipelines: []} + - {survey: cwfs-focus-sweep, pipelines: []} + - {survey: spec-survey, pipelines: []} + - {survey: BLOCK-271, pipelines: []} + - {survey: BLOCK-295, pipelines: []} + - {survey: "", pipelines: []} calibRepo: s3://rubin-summit-users s3: diff --git a/applications/prompt-proto-service-latiss/values.yaml b/applications/prompt-proto-service-latiss/values.yaml index 9229ff3319..10e1fdcd2b 100644 --- a/applications/prompt-proto-service-latiss/values.yaml +++ b/applications/prompt-proto-service-latiss/values.yaml @@ -39,11 +39,11 @@ prompt-proto-service: # -- The "short" name of the instrument name: LATISS pipelines: - # -- Machine-readable string describing which pipeline(s) should be run for which visits. - # Notation is complex and still in flux; see [the source code](https://github.com/lsst-dm/prompt_processing/blob/main/python/activator/config.py) for examples. + # -- YAML-formatted config describing which pipeline(s) should be run for which visits' raws. + # Fields are still in flux; see [the source code](https://github.com/lsst-dm/prompt_processing/blob/main/python/activator/config.py) for examples. # @default -- None, must be set main: "" - # -- Machine-readable string describing which pipeline(s) should be run before which visits' raw arrival. + # -- YAML-formatted config describing which pipeline(s) should be run before which visits' raw arrival. # @default -- None, must be set preprocessing: "" # -- Skymap to use with the instrument diff --git a/applications/prompt-proto-service-lsstcam/README.md b/applications/prompt-proto-service-lsstcam/README.md index e1071dcac0..9ad358da9f 100644 --- a/applications/prompt-proto-service-lsstcam/README.md +++ b/applications/prompt-proto-service-lsstcam/README.md @@ -31,9 +31,9 @@ Prompt Proto Service is an event driven service for processing camera images. Th | prompt-proto-service.imageNotifications.topic | string | None, must be set | Topic where raw image arrival notifications appear | | prompt-proto-service.instrument.calibRepo | string | None, must be set | URI to the shared repo used for calibrations, templates, and pipeline outputs. If `registry.centralRepoFile` is set, this URI points to a local redirect instead of the central repo itself. | | prompt-proto-service.instrument.name | string | `""` | The "short" name of the instrument | -| prompt-proto-service.instrument.pipelines.main | string | None, must be set | Machine-readable string describing which pipeline(s) should be run for which visits. Notation is complex and still in flux; see [the source code](https://github.com/lsst-dm/prompt_processing/blob/main/python/activator/config.py) for examples. | -| prompt-proto-service.instrument.pipelines.preprocessing | string | None, must be set | Machine-readable string describing which pipeline(s) should be run before which visits' raw arrival. | -| prompt-proto-service.instrument.preloadPadding | int | `30` | Number of arcseconds to pad the spatial region in preloading. | +| prompt-proto-service.instrument.pipelines.main | string | None, must be set | YAML-formatted config describing which pipeline(s) should be run for which visits' raws. Fields are still in flux; see [the source code](https://github.com/lsst-dm/prompt_processing/blob/main/python/activator/config.py) for examples. | +| prompt-proto-service.instrument.pipelines.preprocessing | string | None, must be set | YAML-formatted config describing which pipeline(s) should be run before which visits' raw arrival. | +| prompt-proto-service.instrument.preloadPadding | int | `50` | Number of arcseconds to pad the spatial region in preloading. | | prompt-proto-service.instrument.skymap | string | `""` | Skymap to use with the instrument | | prompt-proto-service.knative.cpuLimit | int | `1` | The maximum cpu cores for the full pod (see `containerConcurrency`). | | prompt-proto-service.knative.cpuRequest | int | `1` | The cpu cores requested for the full pod (see `containerConcurrency`). | diff --git a/applications/prompt-proto-service-lsstcam/values.yaml b/applications/prompt-proto-service-lsstcam/values.yaml index 4ff089ed5e..d5c1b4d8e9 100644 --- a/applications/prompt-proto-service-lsstcam/values.yaml +++ b/applications/prompt-proto-service-lsstcam/values.yaml @@ -38,17 +38,17 @@ prompt-proto-service: # -- The "short" name of the instrument name: "" pipelines: - # -- Machine-readable string describing which pipeline(s) should be run for which visits. - # Notation is complex and still in flux; see [the source code](https://github.com/lsst-dm/prompt_processing/blob/main/python/activator/config.py) for examples. + # -- YAML-formatted config describing which pipeline(s) should be run for which visits' raws. + # Fields are still in flux; see [the source code](https://github.com/lsst-dm/prompt_processing/blob/main/python/activator/config.py) for examples. # @default -- None, must be set main: "" - # -- Machine-readable string describing which pipeline(s) should be run before which visits' raw arrival. + # -- YAML-formatted config describing which pipeline(s) should be run before which visits' raw arrival. # @default -- None, must be set preprocessing: "" # -- Skymap to use with the instrument skymap: "" # -- Number of arcseconds to pad the spatial region in preloading. - preloadPadding: 30 + preloadPadding: 50 # -- URI to the shared repo used for calibrations, templates, and pipeline outputs. # If `registry.centralRepoFile` is set, this URI points to a local redirect instead of the central repo itself. # @default -- None, must be set diff --git a/applications/prompt-proto-service-lsstcomcam/README.md b/applications/prompt-proto-service-lsstcomcam/README.md index f4334af2ea..c08de7a78c 100644 --- a/applications/prompt-proto-service-lsstcomcam/README.md +++ b/applications/prompt-proto-service-lsstcomcam/README.md @@ -31,9 +31,9 @@ Prompt Proto Service is an event driven service for processing camera images. Th | prompt-proto-service.imageNotifications.topic | string | None, must be set | Topic where raw image arrival notifications appear | | prompt-proto-service.instrument.calibRepo | string | None, must be set | URI to the shared repo used for calibrations, templates, and pipeline outputs. If `registry.centralRepoFile` is set, this URI points to a local redirect instead of the central repo itself. | | prompt-proto-service.instrument.name | string | `"LSSTComCam"` | The "short" name of the instrument | -| prompt-proto-service.instrument.pipelines.main | string | None, must be set | Machine-readable string describing which pipeline(s) should be run for which visits. Notation is complex and still in flux; see [the source code](https://github.com/lsst-dm/prompt_processing/blob/main/python/activator/config.py) for examples. | -| prompt-proto-service.instrument.pipelines.preprocessing | string | None, must be set | Machine-readable string describing which pipeline(s) should be run before which visits' raw arrival. | -| prompt-proto-service.instrument.preloadPadding | int | `30` | Number of arcseconds to pad the spatial region in preloading. | +| prompt-proto-service.instrument.pipelines.main | string | None, must be set | YAML-formatted config describing which pipeline(s) should be run for which visits' raws. Fields are still in flux; see [the source code](https://github.com/lsst-dm/prompt_processing/blob/main/python/activator/config.py) for examples. | +| prompt-proto-service.instrument.pipelines.preprocessing | string | None, must be set | YAML-formatted config describing which pipeline(s) should be run before which visits' raw arrival. | +| prompt-proto-service.instrument.preloadPadding | int | `50` | Number of arcseconds to pad the spatial region in preloading. | | prompt-proto-service.instrument.skymap | string | `"lsst_cells_v1"` | Skymap to use with the instrument | | prompt-proto-service.knative.cpuLimit | int | `1` | The maximum cpu cores for the full pod (see `containerConcurrency`). | | prompt-proto-service.knative.cpuRequest | int | `1` | The cpu cores requested for the full pod (see `containerConcurrency`). | diff --git a/applications/prompt-proto-service-lsstcomcam/values-usdfdev-prompt-processing.yaml b/applications/prompt-proto-service-lsstcomcam/values-usdfdev-prompt-processing.yaml index e8fbd39cd6..d7b6b0847e 100644 --- a/applications/prompt-proto-service-lsstcomcam/values-usdfdev-prompt-processing.yaml +++ b/applications/prompt-proto-service-lsstcomcam/values-usdfdev-prompt-processing.yaml @@ -11,10 +11,14 @@ prompt-proto-service: instrument: pipelines: - main: >- - (survey="SURVEY")=[${PROMPT_PROCESSING_DIR}/pipelines/LSSTComCam/ApPipe.yaml, - ${PROMPT_PROCESSING_DIR}/pipelines/LSSTComCam/Isr.yaml] - preprocessing: (survey="SURVEY")=[${PROMPT_PROCESSING_DIR}/pipelines/LSSTComCam/Preprocessing.yaml] + main: |- + - survey: SURVEY + pipelines: + - ${PROMPT_PROCESSING_DIR}/pipelines/LSSTComCam/ApPipe.yaml + - ${PROMPT_PROCESSING_DIR}/pipelines/LSSTComCam/Isr.yaml + preprocessing: |- + - survey: SURVEY + pipelines: ['${PROMPT_PROCESSING_DIR}/pipelines/LSSTComCam/Preprocessing.yaml'] calibRepo: s3://rubin-pp-dev-users/central_repo_2 s3: @@ -35,7 +39,8 @@ prompt-proto-service: endpointUrl: https://usdf-rsp-dev.slac.stanford.edu/sasquatch-rest-proxy auth_env: false - # A cache efficiency workaround breaks when mixing observing dates; see DM-43205, DM-43913. - cacheCalibs: false + debug: + # A cache efficiency workaround breaks when mixing observing dates; see DM-43205, DM-43913. + cacheCalibs: false fullnameOverride: "prompt-proto-service-lsstcomcam" diff --git a/applications/prompt-proto-service-lsstcomcam/values-usdfprod-prompt-processing.yaml b/applications/prompt-proto-service-lsstcomcam/values-usdfprod-prompt-processing.yaml index 6e3885b223..72653c9f52 100644 --- a/applications/prompt-proto-service-lsstcomcam/values-usdfprod-prompt-processing.yaml +++ b/applications/prompt-proto-service-lsstcomcam/values-usdfprod-prompt-processing.yaml @@ -15,45 +15,48 @@ prompt-proto-service: image: pullPolicy: IfNotPresent # Overrides the image tag whose default is the chart appVersion. - tag: 4.8.2 + tag: 4.9.0 instrument: pipelines: - # BLOCK-T60 is optics alignment - # BLOCK-T75 is giant donuts - # BLOCK-T88 is optics alignment - # BLOCK-T215 is evening twilight flats - # BLOCK-T216 is morning twilight flats - # BLOCK-T219 is pretty picture - # BLOCK-T246 is instrument checkout - # BLOCK-T249 is AOS alignment - # BLOCK-T250 is TMA daytime checkout - main: >- - (survey="BLOCK-320")=[${PROMPT_PROCESSING_DIR}/pipelines/LSSTComCam/ApPipe.yaml, - ${PROMPT_PROCESSING_DIR}/pipelines/LSSTComCam/SingleFrame.yaml, - ${PROMPT_PROCESSING_DIR}/pipelines/LSSTComCam/Isr.yaml] - (survey="BLOCK-T60")=[] - (survey="BLOCK-T75")=[] - (survey="BLOCK-T88")=[] - (survey="BLOCK-T215")=[] - (survey="BLOCK-T216")=[] - (survey="BLOCK-T219")=[] - (survey="BLOCK-T246")=[${PROMPT_PROCESSING_DIR}/pipelines/LSSTComCam/Isr-cal.yaml] - (survey="BLOCK-T249")=[] - (survey="BLOCK-T250")=[] - (survey="")=[] - preprocessing: >- - (survey="BLOCK-320")=[${PROMPT_PROCESSING_DIR}/pipelines/LSSTComCam/Preprocessing.yaml] - (survey="BLOCK-T60")=[] - (survey="BLOCK-T75")=[] - (survey="BLOCK-T88")=[] - (survey="BLOCK-T215")=[] - (survey="BLOCK-T216")=[] - (survey="BLOCK-T219")=[] - (survey="BLOCK-T246")=[] - (survey="BLOCK-T249")=[] - (survey="BLOCK-T250")=[] - (survey="")=[] + main: |- + - survey: BLOCK-320 # Science Validation + pipelines: + - ${PROMPT_PROCESSING_DIR}/pipelines/LSSTComCam/ApPipe.yaml + - ${PROMPT_PROCESSING_DIR}/pipelines/LSSTComCam/SingleFrame.yaml + - ${PROMPT_PROCESSING_DIR}/pipelines/LSSTComCam/Isr.yaml + - survey: BLOCK-T60 # optics alignment + pipelines: [] + - survey: BLOCK-T75 # giant donuts + pipelines: [] + - survey: BLOCK-T88 # optics alignment + pipelines: [] + - survey: BLOCK-T215 # twilight flats + pipelines: [] + - survey: BLOCK-T216 # twilight flats + pipelines: [] + - survey: BLOCK-T219 # pretty pictures + pipeliens: [] + - survey: BLOCK-T246 # instrument checkout + pipelines: ['${PROMPT_PROCESSING_DIR}/pipelines/LSSTComCam/Isr-cal.yaml'] + - survey: BLOCK-T249 # AOS alignment + pipelines: [] + - survey: BLOCK-T250 # TMA daytime checkout + pipelines: [] + - {survey: "", pipelines: []} + preprocessing: |- + - survey: BLOCK-320 + pipelines: ['${PROMPT_PROCESSING_DIR}/pipelines/LSSTComCam/Preprocessing.yaml'] + - {survey: BLOCK-T60, pipelines: []} + - {survey: BLOCK-T75, pipelines: []} + - {survey: BLOCK-T88, pipelines: []} + - {survey: BLOCK-T215, pipelines: []} + - {survey: BLOCK-T216, pipelines: []} + - {survey: BLOCK-T219, pipelines: []} + - {survey: BLOCK-T246, pipelines: []} + - {survey: BLOCK-T249, pipelines: []} + - {survey: BLOCK-T250, pipelines: []} + - {survey: "", pipelines: []} calibRepo: s3://rubin-summit-users s3: diff --git a/applications/prompt-proto-service-lsstcomcam/values.yaml b/applications/prompt-proto-service-lsstcomcam/values.yaml index 85b421ac96..4a46d6bb1a 100644 --- a/applications/prompt-proto-service-lsstcomcam/values.yaml +++ b/applications/prompt-proto-service-lsstcomcam/values.yaml @@ -41,17 +41,17 @@ prompt-proto-service: # -- The "short" name of the instrument name: LSSTComCam pipelines: - # -- Machine-readable string describing which pipeline(s) should be run for which visits. - # Notation is complex and still in flux; see [the source code](https://github.com/lsst-dm/prompt_processing/blob/main/python/activator/config.py) for examples. + # -- YAML-formatted config describing which pipeline(s) should be run for which visits' raws. + # Fields are still in flux; see [the source code](https://github.com/lsst-dm/prompt_processing/blob/main/python/activator/config.py) for examples. # @default -- None, must be set main: "" - # -- Machine-readable string describing which pipeline(s) should be run before which visits' raw arrival. + # -- YAML-formatted config describing which pipeline(s) should be run before which visits' raw arrival. # @default -- None, must be set preprocessing: "" # -- Skymap to use with the instrument skymap: "lsst_cells_v1" # -- Number of arcseconds to pad the spatial region in preloading. - preloadPadding: 30 + preloadPadding: 50 # -- URI to the shared repo used for calibrations, templates, and pipeline outputs. # If `registry.centralRepoFile` is set, this URI points to a local redirect instead of the central repo itself. # @default -- None, must be set diff --git a/applications/prompt-proto-service-lsstcomcamsim/README.md b/applications/prompt-proto-service-lsstcomcamsim/README.md index f2874d9eae..9c1fa3e437 100644 --- a/applications/prompt-proto-service-lsstcomcamsim/README.md +++ b/applications/prompt-proto-service-lsstcomcamsim/README.md @@ -31,9 +31,9 @@ Prompt Proto Service is an event driven service for processing camera images. Th | prompt-proto-service.imageNotifications.topic | string | None, must be set | Topic where raw image arrival notifications appear | | prompt-proto-service.instrument.calibRepo | string | None, must be set | URI to the shared repo used for calibrations, templates, and pipeline outputs. If `registry.centralRepoFile` is set, this URI points to a local redirect instead of the central repo itself. | | prompt-proto-service.instrument.name | string | `"LSSTComCamSim"` | The "short" name of the instrument | -| prompt-proto-service.instrument.pipelines.main | string | None, must be set | Machine-readable string describing which pipeline(s) should be run for which visits. Notation is complex and still in flux; see [the source code](https://github.com/lsst-dm/prompt_processing/blob/main/python/activator/config.py) for examples. | -| prompt-proto-service.instrument.pipelines.preprocessing | string | None, must be set | Machine-readable string describing which pipeline(s) should be run before which visits' raw arrival. | -| prompt-proto-service.instrument.preloadPadding | int | `30` | Number of arcseconds to pad the spatial region in preloading. | +| prompt-proto-service.instrument.pipelines.main | string | None, must be set | YAML-formatted config describing which pipeline(s) should be run for which visits' raws. Fields are still in flux; see [the source code](https://github.com/lsst-dm/prompt_processing/blob/main/python/activator/config.py) for examples. | +| prompt-proto-service.instrument.pipelines.preprocessing | string | None, must be set | YAML-formatted config describing which pipeline(s) should be run before which visits' raw arrival. | +| prompt-proto-service.instrument.preloadPadding | int | `50` | Number of arcseconds to pad the spatial region in preloading. | | prompt-proto-service.instrument.skymap | string | `"ops_rehersal_prep_2k_v1"` | Skymap to use with the instrument | | prompt-proto-service.knative.cpuLimit | int | `1` | The maximum cpu cores for the full pod (see `containerConcurrency`). | | prompt-proto-service.knative.cpuRequest | int | `1` | The cpu cores requested for the full pod (see `containerConcurrency`). | diff --git a/applications/prompt-proto-service-lsstcomcamsim/values-usdfdev-prompt-processing.yaml b/applications/prompt-proto-service-lsstcomcamsim/values-usdfdev-prompt-processing.yaml index 17d39cf975..194d937317 100644 --- a/applications/prompt-proto-service-lsstcomcamsim/values-usdfdev-prompt-processing.yaml +++ b/applications/prompt-proto-service-lsstcomcamsim/values-usdfdev-prompt-processing.yaml @@ -11,11 +11,15 @@ prompt-proto-service: instrument: pipelines: - main: >- - (survey="SURVEY")=[${PROMPT_PROCESSING_DIR}/pipelines/LSSTComCamSim/ApPipe.yaml, - ${PROMPT_PROCESSING_DIR}/pipelines/LSSTComCamSim/SingleFrame.yaml, - ${PROMPT_PROCESSING_DIR}/pipelines/LSSTComCamSim/Isr.yaml] - preprocessing: (survey="SURVEY")=[${PROMPT_PROCESSING_DIR}/pipelines/LSSTComCamSim/Preprocessing.yaml] + main: |- + - survey: SURVEY + pipelines: + - ${PROMPT_PROCESSING_DIR}/pipelines/LSSTComCamSim/ApPipe.yaml + - ${PROMPT_PROCESSING_DIR}/pipelines/LSSTComCamSim/SingleFrame.yaml + - ${PROMPT_PROCESSING_DIR}/pipelines/LSSTComCamSim/Isr.yaml + preprocessing: |- + - survey: SURVEY + pipelines: ['${PROMPT_PROCESSING_DIR}/pipelines/LSSTComCamSim/Preprocessing.yaml'] calibRepo: s3://rubin-pp-dev-users/central_repo_2 s3: diff --git a/applications/prompt-proto-service-lsstcomcamsim/values.yaml b/applications/prompt-proto-service-lsstcomcamsim/values.yaml index 1f977a62bb..2b80a022a7 100644 --- a/applications/prompt-proto-service-lsstcomcamsim/values.yaml +++ b/applications/prompt-proto-service-lsstcomcamsim/values.yaml @@ -41,17 +41,17 @@ prompt-proto-service: # -- The "short" name of the instrument name: LSSTComCamSim pipelines: - # -- Machine-readable string describing which pipeline(s) should be run for which visits. - # Notation is complex and still in flux; see [the source code](https://github.com/lsst-dm/prompt_processing/blob/main/python/activator/config.py) for examples. + # -- YAML-formatted config describing which pipeline(s) should be run for which visits' raws. + # Fields are still in flux; see [the source code](https://github.com/lsst-dm/prompt_processing/blob/main/python/activator/config.py) for examples. # @default -- None, must be set main: "" - # -- Machine-readable string describing which pipeline(s) should be run before which visits' raw arrival. + # -- YAML-formatted config describing which pipeline(s) should be run before which visits' raw arrival. # @default -- None, must be set preprocessing: "" # -- Skymap to use with the instrument skymap: ops_rehersal_prep_2k_v1 # -- Number of arcseconds to pad the spatial region in preloading. - preloadPadding: 30 + preloadPadding: 50 # -- URI to the shared repo used for calibrations, templates, and pipeline outputs. # If `registry.centralRepoFile` is set, this URI points to a local redirect instead of the central repo itself. # @default -- None, must be set diff --git a/applications/rubintv/values-summit.yaml b/applications/rubintv/values-summit.yaml index eef9d8dec8..e0ae0f7e77 100644 --- a/applications/rubintv/values-summit.yaml +++ b/applications/rubintv/values-summit.yaml @@ -20,7 +20,7 @@ rubintv: - name: DDV_CLIENT_WS_ADDRESS value: "rubintv/ws/ddv" image: - tag: v2.5.3 + tag: v2.5.5 pullPolicy: Always workers: @@ -42,6 +42,12 @@ rubintv: value: "/sdf/group/rubin/repo/ir2/butler.yaml" - name: DEPLOY_BRANCH value: *dbE + nfsMountpoint: + - name: project-rubintv-ddv-config + containerPath: /var/ddv-config + readOnly: false + server: nfs1.cp.lsst.org + serverPath: /project/rubintv/ddv-config resources: requests: cpu: 0.5 diff --git a/applications/rubintv/values-usdfprod.yaml b/applications/rubintv/values-usdfprod.yaml index 68c74079d4..1d920e76cc 100644 --- a/applications/rubintv/values-usdfprod.yaml +++ b/applications/rubintv/values-usdfprod.yaml @@ -1,4 +1,6 @@ rubintv: + siteTag: "usdf-prod" + imagePullSecrets: - name: pull-secret @@ -16,17 +18,17 @@ rubintv: - name: DDV_CLIENT_WS_ADDRESS value: "rubintv/ws/ddv" image: - tag: v2.5.3 + tag: v2.5.5 pullPolicy: Always workers: - replicas: 0 + replicas: 1 image: - repository: ts-dockerhub.lsst.org/rapid-analysis - tag: c0037 + repository: lsstts/rapid-analysis + tag: c0039_usdf pullPolicy: Always - uid: 73006 - gid: 73006 + uid: 17951 + gid: 4085 scriptsLocation: /repos/rubintv_analysis_service/scripts script: rubintv_worker.py -a rubintv -p 8080 -l usdf env: @@ -38,7 +40,7 @@ rubintv: value: "/sdf/group/rubin/repo/ir2/butler.yaml" - name: DEPLOY_BRANCH value: *dbE - volumes: + pvcMountpoint: - name: sdf-group-rubin persistentVolumeClaim: name: sdf-group-rubin @@ -53,6 +55,14 @@ rubintv: capacity: 1Gi accessMode: ReadOnlyMany mountPath: /sdf/data/rubin + - name: sdf-data-rubin-rubintv-ddv-config + persistentVolumeClaim: + name: sdf-data-rubin-rubintv-ddv-config + storageClassName: sdf-data-rubin + capacity: 1Gi + accessMode: ReadWriteMany + mountPath: /var/ddv-config + subPath: shared/rubintv-ddv-config resources: limits: cpu: 2.0 diff --git a/applications/s3proxy/.helmignore b/applications/s3proxy/.helmignore new file mode 100644 index 0000000000..0e8a0eb36f --- /dev/null +++ b/applications/s3proxy/.helmignore @@ -0,0 +1,23 @@ +# Patterns to ignore when building packages. +# This supports shell glob matching, relative path matching, and +# negation (prefixed with !). Only one pattern per line. +.DS_Store +# Common VCS dirs +.git/ +.gitignore +.bzr/ +.bzrignore +.hg/ +.hgignore +.svn/ +# Common backup files +*.swp +*.bak +*.tmp +*.orig +*~ +# Various IDEs +.project +.idea/ +*.tmproj +.vscode/ diff --git a/applications/s3proxy/Chart.yaml b/applications/s3proxy/Chart.yaml new file mode 100644 index 0000000000..a165868d44 --- /dev/null +++ b/applications/s3proxy/Chart.yaml @@ -0,0 +1,8 @@ +apiVersion: v2 +appVersion: 1.0.0 +description: Simple application to gateway S3 URLs to HTTPS +name: s3proxy +sources: +- https://github.com/lsst-dm/s3proxy +type: application +version: 1.0.0 diff --git a/applications/s3proxy/README.md b/applications/s3proxy/README.md new file mode 100644 index 0000000000..aace497a8f --- /dev/null +++ b/applications/s3proxy/README.md @@ -0,0 +1,30 @@ +# s3proxy + +Simple application to gateway S3 URLs to HTTPS + +## Source Code + +* + +## Values + +| Key | Type | Default | Description | +|-----|------|---------|-------------| +| affinity | object | `{}` | Affinity rules for the s3proxy deployment pod | +| config.logLevel | string | `"INFO"` | Logging level | +| config.logProfile | string | `"production"` | Logging profile (`production` for JSON, `development` for human-friendly) | +| config.pathPrefix | string | `"/s3proxy"` | URL path prefix | +| config.profiles | list | `[]` | Profiles using different endpoint URLs and credentials | +| config.s3EndpointUrl | string | `""` | Default S3 endpoint URL | +| global.baseUrl | string | Set by Argo CD | Base URL for the environment | +| global.host | string | Set by Argo CD | Host name for ingress | +| global.vaultSecretsPath | string | Set by Argo CD | Base path for Vault secrets | +| image.pullPolicy | string | `"IfNotPresent"` | Pull policy for the s3proxy image | +| image.repository | string | `"ghcr.io/lsst-dm/s3proxy"` | Image to use in the s3proxy deployment | +| image.tag | string | The appVersion of the chart | Tag of image to use | +| ingress.annotations | object | `{}` | Additional annotations for the ingress rule | +| nodeSelector | object | `{}` | Node selection rules for the s3proxy deployment pod | +| podAnnotations | object | `{}` | Annotations for the s3proxy deployment pod | +| replicaCount | int | `1` | Number of web deployment pods to start | +| resources | object | See `values.yaml` | Resource limits and requests for the s3proxy deployment pod | +| tolerations | list | `[]` | Tolerations for the s3proxy deployment pod | diff --git a/applications/s3proxy/secrets.yaml b/applications/s3proxy/secrets.yaml new file mode 100644 index 0000000000..fd1f46e6ee --- /dev/null +++ b/applications/s3proxy/secrets.yaml @@ -0,0 +1,8 @@ +"aws-credentials.ini": + description: | + S3 credentials in AWS INI format. + Each section corresponds to a profile. + Each section contains an aws_access_key_id and an aws_secret_access_key. + copy: + application: nublado + key: "aws-credentials.ini" diff --git a/applications/s3proxy/templates/_helpers.tpl b/applications/s3proxy/templates/_helpers.tpl new file mode 100644 index 0000000000..67e025f3fc --- /dev/null +++ b/applications/s3proxy/templates/_helpers.tpl @@ -0,0 +1,26 @@ +{{/* +Create chart name and version as used by the chart label. +*/}} +{{- define "s3proxy.chart" -}} +{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" }} +{{- end }} + +{{/* +Common labels +*/}} +{{- define "s3proxy.labels" -}} +helm.sh/chart: {{ include "s3proxy.chart" . }} +{{ include "s3proxy.selectorLabels" . }} +{{- if .Chart.AppVersion }} +app.kubernetes.io/version: {{ .Chart.AppVersion | quote }} +{{- end }} +app.kubernetes.io/managed-by: {{ .Release.Service }} +{{- end }} + +{{/* +Selector labels +*/}} +{{- define "s3proxy.selectorLabels" -}} +app.kubernetes.io/name: "s3proxy" +app.kubernetes.io/instance: {{ .Release.Name }} +{{- end }} diff --git a/applications/s3proxy/templates/configmap.yaml b/applications/s3proxy/templates/configmap.yaml new file mode 100644 index 0000000000..7284a9598d --- /dev/null +++ b/applications/s3proxy/templates/configmap.yaml @@ -0,0 +1,14 @@ +apiVersion: v1 +kind: ConfigMap +metadata: + name: "s3proxy" + labels: + {{- include "s3proxy.labels" . | nindent 4 }} +data: + S3PROXY_LOG_LEVEL: {{ .Values.config.logLevel | quote }} + S3PROXY_PATH_PREFIX: {{ .Values.config.pathPrefix | quote }} + S3PROXY_PROFILE: {{ .Values.config.logProfile | quote }} + S3_ENDPOINT_URL: {{ .Values.config.s3EndpointUrl | quote }} + {{- range .Values.config.profiles }} + LSST_RESOURCES_S3_PROFILE_{{ .name }}: {{ .url | quote }} + {{- end }} diff --git a/applications/s3proxy/templates/deployment.yaml b/applications/s3proxy/templates/deployment.yaml new file mode 100644 index 0000000000..d96e861819 --- /dev/null +++ b/applications/s3proxy/templates/deployment.yaml @@ -0,0 +1,90 @@ +apiVersion: apps/v1 +kind: Deployment +metadata: + name: "s3proxy" + labels: + {{- include "s3proxy.labels" . | nindent 4 }} +spec: + replicas: {{ .Values.replicaCount }} + selector: + matchLabels: + {{- include "s3proxy.selectorLabels" . | nindent 6 }} + template: + metadata: + annotations: + checksum/config: {{ include (print $.Template.BasePath "/configmap.yaml") . | sha256sum }} + {{- with .Values.podAnnotations }} + {{- toYaml . | nindent 8 }} + {{- end }} + labels: + {{- include "s3proxy.selectorLabels" . | nindent 8 }} + spec: + {{- with .Values.affinity }} + affinity: + {{- toYaml . | nindent 8 }} + {{- end }} + automountServiceAccountToken: false + containers: + - name: {{ .Chart.Name }} + env: + - name: AWS_SHARED_CREDENTIALS_FILE + value: /pod-secrets/secrets/aws-credentials.ini + envFrom: + - configMapRef: + name: "s3proxy" + image: "{{ .Values.image.repository }}:{{ .Values.image.tag | default .Chart.AppVersion }}" + imagePullPolicy: {{ .Values.image.pullPolicy }} + ports: + - name: "http" + containerPort: 8080 + protocol: "TCP" + readinessProbe: + httpGet: + path: "/" + port: "http" + resources: + {{- toYaml .Values.resources | nindent 12 }} + securityContext: + allowPrivilegeEscalation: false + capabilities: + drop: + - "all" + readOnlyRootFilesystem: true + volumeMounts: + - name: pod-secrets + mountPath: /pod-secrets + initContainers: + - name: secret-setup + command: + - /bin/ash + - "-c" + - | + cp -L -r /secrets /pod-secrets + chmod -R go-rwx /pod-secrets/* + image: alpine + volumeMounts: + - name: secret-volume + mountPath: /secrets + readOnly: true + - name: pod-secrets + mountPath: /pod-secrets + {{- with .Values.nodeSelector }} + nodeSelector: + {{- toYaml . | nindent 8 }} + {{- end }} + {{- with .Values.tolerations }} + tolerations: + {{- toYaml . | nindent 8 }} + {{- end }} + securityContext: + runAsNonRoot: true + runAsUser: 1000 + runAsGroup: 1000 + volumes: + - name: pod-secrets + emptyDir: + sizeLimit: 1Mi + - name: secret-volume + secret: + secretName: "s3proxy" + secretKey: "aws-credentials.ini" diff --git a/applications/s3proxy/templates/ingress.yaml b/applications/s3proxy/templates/ingress.yaml new file mode 100644 index 0000000000..ed4bf7d933 --- /dev/null +++ b/applications/s3proxy/templates/ingress.yaml @@ -0,0 +1,35 @@ +apiVersion: gafaelfawr.lsst.io/v1alpha1 +kind: GafaelfawrIngress +metadata: + name: "s3proxy" + labels: + {{- include "s3proxy.labels" . | nindent 4 }} +config: + authCacheDuration: 5m + baseUrl: {{ .Values.global.baseUrl | quote }} + loginRedirect: true + onlyServices: + - portal + scopes: + all: + - "read:image" + service: "s3proxy" +template: + metadata: + name: "s3proxy" + {{- with .Values.ingress.annotations }} + annotations: + {{- toYaml . | nindent 6 }} + {{- end }} + spec: + rules: + - host: {{ required "global.host must be set" .Values.global.host | quote }} + http: + paths: + - path: {{ .Values.config.pathPrefix | quote }} + pathType: "Prefix" + backend: + service: + name: "s3proxy" + port: + number: 8080 diff --git a/applications/s3proxy/templates/networkpolicy.yaml b/applications/s3proxy/templates/networkpolicy.yaml new file mode 100644 index 0000000000..70d2c1e80d --- /dev/null +++ b/applications/s3proxy/templates/networkpolicy.yaml @@ -0,0 +1,21 @@ +apiVersion: networking.k8s.io/v1 +kind: NetworkPolicy +metadata: + name: "s3proxy" +spec: + podSelector: + matchLabels: + {{- include "s3proxy.selectorLabels" . | nindent 6 }} + policyTypes: + - "Ingress" + ingress: + # Allow inbound access from pods (in any namespace) labeled + # gafaelfawr.lsst.io/ingress: true. + - from: + - namespaceSelector: {} + podSelector: + matchLabels: + gafaelfawr.lsst.io/ingress: "true" + ports: + - protocol: "TCP" + port: 8080 diff --git a/applications/s3proxy/templates/service.yaml b/applications/s3proxy/templates/service.yaml new file mode 100644 index 0000000000..ffe65b1110 --- /dev/null +++ b/applications/s3proxy/templates/service.yaml @@ -0,0 +1,15 @@ +apiVersion: v1 +kind: Service +metadata: + name: "s3proxy" + labels: + {{- include "s3proxy.labels" . | nindent 4 }} +spec: + type: "ClusterIP" + ports: + - port: 8080 + targetPort: "http" + protocol: "TCP" + name: "http" + selector: + {{- include "s3proxy.selectorLabels" . | nindent 4 }} diff --git a/applications/s3proxy/templates/vault-secret.yaml b/applications/s3proxy/templates/vault-secret.yaml new file mode 100644 index 0000000000..f1db384244 --- /dev/null +++ b/applications/s3proxy/templates/vault-secret.yaml @@ -0,0 +1,9 @@ +apiVersion: ricoberger.de/v1alpha1 +kind: VaultSecret +metadata: + name: "s3proxy" + labels: + {{- include "s3proxy.labels" . | nindent 4 }} +spec: + path: "{{ .Values.global.vaultSecretsPath }}/s3proxy" + type: Opaque diff --git a/applications/s3proxy/values-usdfdev.yaml b/applications/s3proxy/values-usdfdev.yaml new file mode 100644 index 0000000000..87d1d48df5 --- /dev/null +++ b/applications/s3proxy/values-usdfdev.yaml @@ -0,0 +1,13 @@ +config: + profiles: + - name: embargo + url: "https://sdfembs3.sdf.slac.stanford.edu/" + s3EndpointUrl: "https://s3dfrgw.slac.stanford.edu/" + +resources: + limits: + cpu: 500m + memory: 1Gi + requests: + cpu: 200m + memory: 100Mi diff --git a/applications/s3proxy/values-usdfprod.yaml b/applications/s3proxy/values-usdfprod.yaml new file mode 100644 index 0000000000..87d1d48df5 --- /dev/null +++ b/applications/s3proxy/values-usdfprod.yaml @@ -0,0 +1,13 @@ +config: + profiles: + - name: embargo + url: "https://sdfembs3.sdf.slac.stanford.edu/" + s3EndpointUrl: "https://s3dfrgw.slac.stanford.edu/" + +resources: + limits: + cpu: 500m + memory: 1Gi + requests: + cpu: 200m + memory: 100Mi diff --git a/applications/s3proxy/values.yaml b/applications/s3proxy/values.yaml new file mode 100644 index 0000000000..c422f53ccc --- /dev/null +++ b/applications/s3proxy/values.yaml @@ -0,0 +1,69 @@ +# Default values for s3proxy. +# This is a YAML-formatted file. +# Declare variables to be passed into your templates. + +# -- Number of web deployment pods to start +replicaCount: 1 + +image: + # -- Image to use in the s3proxy deployment + repository: "ghcr.io/lsst-dm/s3proxy" + + # -- Pull policy for the s3proxy image + pullPolicy: "IfNotPresent" + + # -- Tag of image to use + # @default -- The appVersion of the chart + tag: "" + +config: + # -- Logging level + logLevel: "INFO" + + # -- Logging profile (`production` for JSON, `development` for + # human-friendly) + logProfile: "production" + + # -- URL path prefix + pathPrefix: "/s3proxy" + + # -- Profiles using different endpoint URLs and credentials + profiles: [] + + # -- Default S3 endpoint URL + s3EndpointUrl: "" + +ingress: + # -- Additional annotations for the ingress rule + annotations: {} + +# -- Affinity rules for the s3proxy deployment pod +affinity: {} + +# -- Node selection rules for the s3proxy deployment pod +nodeSelector: {} + +# -- Annotations for the s3proxy deployment pod +podAnnotations: {} + +# -- Resource limits and requests for the s3proxy deployment pod +# @default -- See `values.yaml` +resources: {} + +# -- Tolerations for the s3proxy deployment pod +tolerations: [] + +# The following will be set by parameters injected by Argo CD and should not +# be set in the individual environment values files. +global: + # -- Base URL for the environment + # @default -- Set by Argo CD + baseUrl: null + + # -- Host name for ingress + # @default -- Set by Argo CD + host: null + + # -- Base path for Vault secrets + # @default -- Set by Argo CD + vaultSecretsPath: null diff --git a/applications/sasquatch/README.md b/applications/sasquatch/README.md index a3a058d559..f21d37bc5f 100644 --- a/applications/sasquatch/README.md +++ b/applications/sasquatch/README.md @@ -336,7 +336,7 @@ Rubin Observatory's telemetry service | rest-proxy.heapOptions | string | `"-Xms512M -Xmx512M"` | Kafka REST proxy JVM Heap Option | | rest-proxy.image.pullPolicy | string | `"IfNotPresent"` | Image pull policy | | rest-proxy.image.repository | string | `"confluentinc/cp-kafka-rest"` | Kafka REST proxy image repository | -| rest-proxy.image.tag | string | `"7.7.1"` | Kafka REST proxy image tag | +| rest-proxy.image.tag | string | `"7.8.0"` | Kafka REST proxy image tag | | rest-proxy.ingress.annotations | object | See `values.yaml` | Additional annotations to add to the ingress | | rest-proxy.ingress.enabled | bool | `false` | Whether to enable the ingress | | rest-proxy.ingress.hostname | string | None, must be set if ingress is enabled | Ingress hostname | @@ -419,6 +419,7 @@ Rubin Observatory's telemetry service | strimzi-kafka.users.replicator.enabled | bool | `false` | Enable user replicator (used by Mirror Maker 2 and required at both source and target clusters) | | strimzi-kafka.users.telegraf.enabled | bool | `false` | Enable user telegraf (deployed by parent Sasquatch chart) | | strimzi-kafka.users.tsSalKafka.enabled | bool | `false` | Enable user ts-salkafka, used at the telescope environments | +| strimzi-kafka.users.tsSalKafka.topics | list | `[]` | Create lsst.s3.* related topics for the ts-salkafka user. | | telegraf-kafka-consumer.affinity | object | `{}` | Affinity for pod assignment | | telegraf-kafka-consumer.args | list | `[]` | Arguments passed to the Telegraf agent containers | | telegraf-kafka-consumer.enabled | bool | `false` | Wether the Telegraf Kafka Consumer is enabled | diff --git a/applications/sasquatch/charts/rest-proxy/README.md b/applications/sasquatch/charts/rest-proxy/README.md index eea798d3ae..baeb2a47f0 100644 --- a/applications/sasquatch/charts/rest-proxy/README.md +++ b/applications/sasquatch/charts/rest-proxy/README.md @@ -16,7 +16,7 @@ A subchart to deploy Confluent REST proxy for Sasquatch. | heapOptions | string | `"-Xms512M -Xmx512M"` | Kafka REST proxy JVM Heap Option | | image.pullPolicy | string | `"IfNotPresent"` | Image pull policy | | image.repository | string | `"confluentinc/cp-kafka-rest"` | Kafka REST proxy image repository | -| image.tag | string | `"7.7.1"` | Kafka REST proxy image tag | +| image.tag | string | `"7.8.0"` | Kafka REST proxy image tag | | ingress.annotations | object | See `values.yaml` | Additional annotations to add to the ingress | | ingress.enabled | bool | `false` | Whether to enable the ingress | | ingress.hostname | string | None, must be set if ingress is enabled | Ingress hostname | diff --git a/applications/sasquatch/charts/rest-proxy/values.yaml b/applications/sasquatch/charts/rest-proxy/values.yaml index ef0cd8cbac..b61fc87780 100644 --- a/applications/sasquatch/charts/rest-proxy/values.yaml +++ b/applications/sasquatch/charts/rest-proxy/values.yaml @@ -11,7 +11,7 @@ image: pullPolicy: IfNotPresent # -- Kafka REST proxy image tag - tag: 7.7.1 + tag: 7.8.0 service: # -- Kafka REST proxy service port diff --git a/applications/sasquatch/charts/square-events/templates/ook-user.yaml b/applications/sasquatch/charts/square-events/templates/ook-user.yaml index 0c3bb352cc..ee43ce4ca1 100644 --- a/applications/sasquatch/charts/square-events/templates/ook-user.yaml +++ b/applications/sasquatch/charts/square-events/templates/ook-user.yaml @@ -6,12 +6,6 @@ metadata: labels: strimzi.io/cluster: {{ .Values.cluster.name }} spec: - template: - secret: - metadata: - annotations: - replicator.v1.mittwald.de/replication-allowed: "true" - replicator.v1.mittwald.de/replication-allowed-namespaces: "ook" authentication: type: tls authorization: diff --git a/applications/sasquatch/charts/square-events/templates/squarebot-user.yaml b/applications/sasquatch/charts/square-events/templates/squarebot-user.yaml index 1285a4ec6f..65f6bf698b 100644 --- a/applications/sasquatch/charts/square-events/templates/squarebot-user.yaml +++ b/applications/sasquatch/charts/square-events/templates/squarebot-user.yaml @@ -6,12 +6,6 @@ metadata: labels: strimzi.io/cluster: {{ .Values.cluster.name }} spec: - template: - secret: - metadata: - annotations: - replicator.v1.mittwald.de/replication-allowed: "true" - replicator.v1.mittwald.de/replication-allowed-namespaces: "squarebot" authentication: type: tls authorization: diff --git a/applications/sasquatch/charts/square-events/templates/templatebot-user.yaml b/applications/sasquatch/charts/square-events/templates/templatebot-user.yaml index 580bfa028f..e3ea612ed6 100644 --- a/applications/sasquatch/charts/square-events/templates/templatebot-user.yaml +++ b/applications/sasquatch/charts/square-events/templates/templatebot-user.yaml @@ -6,12 +6,6 @@ metadata: labels: strimzi.io/cluster: {{ .Values.cluster.name }} spec: - template: - secret: - metadata: - annotations: - replicator.v1.mittwald.de/replication-allowed: "true" - replicator.v1.mittwald.de/replication-allowed-namespaces: "templatebot" authentication: type: tls authorization: diff --git a/applications/sasquatch/charts/square-events/templates/unfurlbot-user.yaml b/applications/sasquatch/charts/square-events/templates/unfurlbot-user.yaml index fe7a0c965a..1caaa805c2 100644 --- a/applications/sasquatch/charts/square-events/templates/unfurlbot-user.yaml +++ b/applications/sasquatch/charts/square-events/templates/unfurlbot-user.yaml @@ -6,12 +6,6 @@ metadata: labels: strimzi.io/cluster: {{ .Values.cluster.name }} spec: - template: - secret: - metadata: - annotations: - replicator.v1.mittwald.de/replication-allowed: "true" - replicator.v1.mittwald.de/replication-allowed-namespaces: "unfurlbot" authentication: type: tls authorization: diff --git a/applications/sasquatch/charts/strimzi-kafka/README.md b/applications/sasquatch/charts/strimzi-kafka/README.md index 10f3965922..bb6ee20e92 100644 --- a/applications/sasquatch/charts/strimzi-kafka/README.md +++ b/applications/sasquatch/charts/strimzi-kafka/README.md @@ -72,3 +72,4 @@ A subchart to deploy Strimzi Kafka components for Sasquatch. | users.replicator.enabled | bool | `false` | Enable user replicator (used by Mirror Maker 2 and required at both source and target clusters) | | users.telegraf.enabled | bool | `false` | Enable user telegraf (deployed by parent Sasquatch chart) | | users.tsSalKafka.enabled | bool | `false` | Enable user ts-salkafka, used at the telescope environments | +| users.tsSalKafka.topics | list | `[]` | Create lsst.s3.* related topics for the ts-salkafka user. | diff --git a/applications/sasquatch/charts/strimzi-kafka/templates/topics.yaml b/applications/sasquatch/charts/strimzi-kafka/templates/topics.yaml new file mode 100644 index 0000000000..4c323af95b --- /dev/null +++ b/applications/sasquatch/charts/strimzi-kafka/templates/topics.yaml @@ -0,0 +1,15 @@ +{{- if .Values.users.tsSalKafka.enabled }} +{{- $cluster := .Values.cluster.name }} +{{- range $topic := .Values.users.tsSalKafka.topics }} +--- +apiVersion: kafka.strimzi.io/v1beta1 +kind: KafkaTopic +metadata: + name: {{ $topic }} + labels: + strimzi.io/cluster: {{ $cluster }} +spec: + replicas: 3 + partitions: 1 +{{- end }} +{{- end }} diff --git a/applications/sasquatch/charts/strimzi-kafka/values.yaml b/applications/sasquatch/charts/strimzi-kafka/values.yaml index 8f0eab97bf..85abde504a 100644 --- a/applications/sasquatch/charts/strimzi-kafka/values.yaml +++ b/applications/sasquatch/charts/strimzi-kafka/values.yaml @@ -263,6 +263,9 @@ users: # -- Enable user ts-salkafka, used at the telescope environments enabled: false + # -- Create lsst.s3.* related topics for the ts-salkafka user. + topics: [] + kafdrop: # -- Enable user Kafdrop (deployed by parent Sasquatch chart). enabled: false diff --git a/applications/sasquatch/values-base.yaml b/applications/sasquatch/values-base.yaml index d34b7659b3..3700e87ec7 100644 --- a/applications/sasquatch/values-base.yaml +++ b/applications/sasquatch/values-base.yaml @@ -82,6 +82,9 @@ strimzi-kafka: enabled: true tsSalKafka: enabled: true + topics: + - lsst.s3.raw.latiss + - lsst.s3.raw.lsstcam kafdrop: enabled: true telegraf: @@ -161,7 +164,7 @@ telegraf-kafka-consumer: enabled: true database: "efd" topicRegexps: | - [ "lsst.sal.DIMM", "lsst.sal.DSM", "lsst.sal.EPM", "lsst.sal.ESS", "lsst.sal.HVAC", "lsst.sal.WeatherForecast" ] + [ "lsst.sal.DIMM", "lsst.sal.DSM", "lsst.sal.EAS", "lsst.sal.EPM", "lsst.sal.ESS", "lsst.sal.HVAC", "lsst.sal.WeatherForecast" ] debug: true latiss: enabled: true diff --git a/applications/sasquatch/values-summit.yaml b/applications/sasquatch/values-summit.yaml index 24afd30be1..2e8b86a7ff 100644 --- a/applications/sasquatch/values-summit.yaml +++ b/applications/sasquatch/values-summit.yaml @@ -180,7 +180,7 @@ kafka-connect-manager: eas: enabled: true repairerConnector: false - topicsRegex: ".*DIMM|.*DREAM|.*DSM|.*EPM|.*ESS|.*HVAC|.*WeatherForecast" + topicsRegex: ".*DIMM|.*DREAM|.*DSM|.*EAS|.*EPM|.*ESS|.*HVAC|.*WeatherForecast" latiss: enabled: true repairerConnector: false @@ -339,7 +339,7 @@ telegraf-kafka-consumer: database: "efd" timestamp_field: "private_efdStamp" topicRegexps: | - [ "lsst.sal.DIMM", "lsst.sal.DREAM", "lsst.sal.DSM", "lsst.sal.EPM", "lsst.sal.ESS", "lsst.sal.HVAC", "lsst.sal.WeatherForecast" ] + [ "lsst.sal.DIMM", "lsst.sal.DREAM", "lsst.sal.DSM", "lsst.sal.EAS", "lsst.sal.EPM", "lsst.sal.ESS", "lsst.sal.HVAC", "lsst.sal.WeatherForecast" ] debug: true m1m3: enabled: true diff --git a/applications/sasquatch/values-tucson-teststand.yaml b/applications/sasquatch/values-tucson-teststand.yaml index 3cfe4b3025..2fb04f5339 100644 --- a/applications/sasquatch/values-tucson-teststand.yaml +++ b/applications/sasquatch/values-tucson-teststand.yaml @@ -104,7 +104,7 @@ telegraf-kafka-consumer: metric_batch_size: 100 flush_interval: 20s topicRegexps: | - [ "lsst.sal.DIMM", "lsst.sal.DREAM", "lsst.sal.DSM", "lsst.sal.EPM", "lsst.sal.ESS", "lsst.sal.HVAC", "lsst.sal.WeatherForecast" ] + [ "lsst.sal.DIMM", "lsst.sal.DREAM", "lsst.sal.DSM", "lsst.sal.EAS", "lsst.sal.EPM", "lsst.sal.ESS", "lsst.sal.HVAC", "lsst.sal.WeatherForecast" ] debug: true latiss: enabled: true diff --git a/applications/sasquatch/values-usdfprod.yaml b/applications/sasquatch/values-usdfprod.yaml index 035ec26702..5aa6b0e191 100644 --- a/applications/sasquatch/values-usdfprod.yaml +++ b/applications/sasquatch/values-usdfprod.yaml @@ -165,7 +165,7 @@ telegraf-kafka-consumer: database: "efd" timestamp_field: "private_efdStamp" topicRegexps: | - [ "lsst.sal.DIMM", "lsst.sal.DREAM", "lsst.sal.ESS", "lsst.sal.DSM", "lsst.sal.EPM", "lsst.sal.HVAC", "lsst.sal.WeatherForecast" ] + [ "lsst.sal.DIMM", "lsst.sal.DREAM", "lsst.sal.EAS", "lsst.sal.ESS", "lsst.sal.DSM", "lsst.sal.EPM", "lsst.sal.HVAC", "lsst.sal.WeatherForecast" ] debug: true m1m3: enabled: true diff --git a/applications/schedview-snapshot/templates/ingress.yaml b/applications/schedview-snapshot/templates/ingress.yaml index b6cb8ae716..9aa158b2f5 100644 --- a/applications/schedview-snapshot/templates/ingress.yaml +++ b/applications/schedview-snapshot/templates/ingress.yaml @@ -6,10 +6,11 @@ metadata: {{- include "schedview-snapshot.labels" . | nindent 4 }} config: baseUrl: {{ .Values.global.baseUrl | quote }} + loginRedirect: true scopes: all: - "exec:portal" - loginRedirect: true + service: "schedview-snapshot" template: metadata: name: "schedview-snapshot" diff --git a/applications/sia/templates/ingress.yaml b/applications/sia/templates/ingress.yaml index bb9638b596..b548e371bb 100644 --- a/applications/sia/templates/ingress.yaml +++ b/applications/sia/templates/ingress.yaml @@ -9,6 +9,7 @@ config: scopes: all: - "read:image" + service: "sia" delegate: internal: service: "sia" diff --git a/applications/siav2/README.md b/applications/siav2/README.md index 92993339b1..0f33a7137b 100644 --- a/applications/siav2/README.md +++ b/applications/siav2/README.md @@ -28,7 +28,7 @@ Simple Image Access v2 service | uws.affinity | object | `{}` | Affinity rules for the UWS database pod | | uws.image.pullPolicy | string | `"IfNotPresent"` | Pull policy for the UWS database image | | uws.image.repository | string | `"library/postgres"` | UWS database image to use | -| uws.image.tag | string | `"17.0"` | Tag of UWS database image to use | +| uws.image.tag | string | `"17.2"` | Tag of UWS database image to use | | uws.nodeSelector | object | `{}` | Node selection rules for the UWS database pod | | uws.podAnnotations | object | `{}` | Annotations for the UWS databse pod | | uws.resources | object | `{"limits":{"cpu":2,"memory":"4Gi"},"requests":{"cpu":0.25,"memory":"1Gi"}}` | Resource limits and requests for the UWS database pod | diff --git a/applications/siav2/templates/ingress.yaml b/applications/siav2/templates/ingress.yaml index 7f9fa4bd21..2af5227a0e 100644 --- a/applications/siav2/templates/ingress.yaml +++ b/applications/siav2/templates/ingress.yaml @@ -7,16 +7,17 @@ metadata: config: authType: "basic" baseUrl: {{ .Values.global.baseUrl | quote }} + loginRedirect: false + scopes: + all: + - "read:image" + service: "siav2" delegate: internal: scopes: - - read:tap + - "read:tap" service: "siav2" useAuthorization: true - loginRedirect: false - scopes: - all: - - read:image template: metadata: name: "siav2-authenticated" diff --git a/applications/siav2/values.yaml b/applications/siav2/values.yaml index f9ce8acc2f..8c313d75ba 100644 --- a/applications/siav2/values.yaml +++ b/applications/siav2/values.yaml @@ -79,7 +79,7 @@ uws: pullPolicy: "IfNotPresent" # -- Tag of UWS database image to use - tag: "17.0" + tag: "17.2" # -- Resource limits and requests for the UWS database pod resources: diff --git a/applications/sqlproxy-cross-project/README.md b/applications/sqlproxy-cross-project/README.md index 74b079d5d9..cc9e12ac31 100644 --- a/applications/sqlproxy-cross-project/README.md +++ b/applications/sqlproxy-cross-project/README.md @@ -19,7 +19,7 @@ GCP SQL Proxy as a service | fullnameOverride | string | `""` | Override the full name for resources (includes the release name) | | image.pullPolicy | string | `"IfNotPresent"` | Pull policy for the Cloud SQL Proxy image | | image.repository | string | `"gcr.io/cloudsql-docker/gce-proxy"` | Cloud SQL Proxy image to use | -| image.tag | string | `"1.37.1"` | Tag of Cloud SQL Proxy image to use | +| image.tag | string | `"1.37.2"` | Tag of Cloud SQL Proxy image to use | | nameOverride | string | `""` | Override the base name for resources | | nodeSelector | object | `{}` | Node selector rules for the Cloud SQL Proxy pod | | podAnnotations | object | `{}` | Annotations for the Cloud SQL Proxy pod | diff --git a/applications/sqlproxy-cross-project/values.yaml b/applications/sqlproxy-cross-project/values.yaml index ac677e8060..46d9ed7585 100644 --- a/applications/sqlproxy-cross-project/values.yaml +++ b/applications/sqlproxy-cross-project/values.yaml @@ -14,7 +14,7 @@ image: repository: "gcr.io/cloudsql-docker/gce-proxy" # -- Tag of Cloud SQL Proxy image to use - tag: "1.37.1" + tag: "1.37.2" # -- Pull policy for the Cloud SQL Proxy image pullPolicy: "IfNotPresent" diff --git a/applications/squareone/templates/ingress-times-square.yaml b/applications/squareone/templates/ingress-times-square.yaml index e820c1b32e..3c5dad1ac0 100644 --- a/applications/squareone/templates/ingress-times-square.yaml +++ b/applications/squareone/templates/ingress-times-square.yaml @@ -6,10 +6,11 @@ metadata: {{- include "squareone.labels" . | nindent 4 }} config: baseUrl: {{ .Values.global.baseUrl | quote }} + loginRedirect: true scopes: all: - {{ .Values.ingress.timesSquareScope | quote }} - loginRedirect: true + service: "times-square" template: metadata: name: {{ template "squareone.fullname" . }}-times-square diff --git a/applications/ssotap/README.md b/applications/ssotap/README.md index 248e9b3cb4..c436610a22 100644 --- a/applications/ssotap/README.md +++ b/applications/ssotap/README.md @@ -15,9 +15,10 @@ IVOA TAP service for Solar System Objects | cadc-tap.config.pg.database | string | `"dp03_catalogs"` | Postgres database to connect to | | cadc-tap.config.pg.host | string | `"usdf-pg-catalogs.slac.stanford.edu:5432"` | Postgres hostname:port to connect to | | cadc-tap.config.pg.username | string | `"dp03"` | Postgres username to use to connect | +| cadc-tap.config.serviceName | string | `"ssotap"` | Name of the service from Gafaelfawr's perspective | | cadc-tap.config.vaultSecretName | string | `"ssotap"` | Vault secret name: the final key in the vault path | -| cadc-tap.ingress.path | string | `"ssotap"` | | -| cadc-tap.serviceAccount.name | string | `"ssotap"` | | +| cadc-tap.ingress.path | string | `"ssotap"` | Ingress path that should be routed to this service | +| cadc-tap.serviceAccount.name | string | `"ssotap"` | Name of the Kubernetes `ServiceAccount`, used for CloudSQL access | | global.baseUrl | string | Set by Argo CD | Base URL for the environment | | global.host | string | Set by Argo CD | Host name for ingress | | global.vaultSecretsPath | string | Set by Argo CD | Base path for Vault secrets | diff --git a/applications/ssotap/values.yaml b/applications/ssotap/values.yaml index bf5c3b7b82..e70295723c 100644 --- a/applications/ssotap/values.yaml +++ b/applications/ssotap/values.yaml @@ -1,12 +1,15 @@ cadc-tap: - # Settings for the ingress rules. ingress: + # -- Ingress path that should be routed to this service path: "ssotap" config: # -- What type of backend? backend: "pg" + # -- Name of the service from Gafaelfawr's perspective + serviceName: "ssotap" + pg: # -- Postgres hostname:port to connect to host: "usdf-pg-catalogs.slac.stanford.edu:5432" @@ -21,7 +24,7 @@ cadc-tap: vaultSecretName: "ssotap" serviceAccount: - # Name of Service Account + # -- Name of the Kubernetes `ServiceAccount`, used for CloudSQL access name: "ssotap" # The following will be set by parameters injected by Argo CD and should not diff --git a/applications/tap/README.md b/applications/tap/README.md index 62685520be..b72ac23eb7 100644 --- a/applications/tap/README.md +++ b/applications/tap/README.md @@ -12,9 +12,10 @@ IVOA TAP service | Key | Type | Default | Description | |-----|------|---------|-------------| | cadc-tap.config.backend | string | `"qserv"` | What type of backend? | +| cadc-tap.config.serviceName | string | `"tap"` | Name of the service from Gafaelfawr's perspective | | cadc-tap.config.vaultSecretName | string | `"tap"` | Vault secret name: the final key in the vault path | -| cadc-tap.ingress.path | string | `"tap"` | | -| cadc-tap.serviceAccount.name | string | `"tap"` | | +| cadc-tap.ingress.path | string | `"tap"` | Ingress path that should be routed to this service | +| cadc-tap.serviceAccount.name | string | `"tap"` | Name of the Kubernetes `ServiceAccount`, used for CloudSQL access | | global.baseUrl | string | Set by Argo CD | Base URL for the environment | | global.host | string | Set by Argo CD | Host name for ingress | | global.vaultSecretsPath | string | Set by Argo CD | Base path for Vault secrets | diff --git a/applications/tap/values.yaml b/applications/tap/values.yaml index 21e256eeee..2e97e2b4fb 100644 --- a/applications/tap/values.yaml +++ b/applications/tap/values.yaml @@ -1,6 +1,6 @@ cadc-tap: - # Settings for the ingress rules. ingress: + # -- Ingress path that should be routed to this service path: "tap" config: @@ -10,8 +10,11 @@ cadc-tap: # -- Vault secret name: the final key in the vault path vaultSecretName: "tap" + # -- Name of the service from Gafaelfawr's perspective + serviceName: "tap" + serviceAccount: - # Name of Service Account + # -- Name of the Kubernetes `ServiceAccount`, used for CloudSQL access name: "tap" # The following will be set by parameters injected by Argo CD and should not diff --git a/applications/telegraf/README.md b/applications/telegraf/README.md index 84412df72c..574082f499 100644 --- a/applications/telegraf/README.md +++ b/applications/telegraf/README.md @@ -28,6 +28,7 @@ Application telemetry collection service | telegraf.env[0].valueFrom.secretKeyRef.name | string | `"telegraf"` | | | telegraf.mountPoints[0].mountPath | string | `"/etc/telegraf-generated"` | | | telegraf.mountPoints[0].name | string | `"telegraf-generated-config"` | | +| telegraf.pdb.create | bool | `false` | | | telegraf.podLabels."hub.jupyter.org/network-access-hub" | string | `"true"` | | | telegraf.rbac.clusterWide | bool | `true` | | | telegraf.resources.limits.cpu | string | `"1"` | | diff --git a/applications/telegraf/values.yaml b/applications/telegraf/values.yaml index fe48caaf04..3bdbd8065f 100644 --- a/applications/telegraf/values.yaml +++ b/applications/telegraf/values.yaml @@ -13,6 +13,8 @@ telegraf: requests: memory: "350Mi" cpu: "50m" + pdb: + create: false args: - "--config" - "/etc/telegraf-generated/telegraf-generated.conf" diff --git a/applications/times-square/README.md b/applications/times-square/README.md index 366950ca28..3339c5b90e 100644 --- a/applications/times-square/README.md +++ b/applications/times-square/README.md @@ -19,7 +19,7 @@ An API service for managing and rendering parameterized Jupyter notebooks. | cloudsql.image.pullPolicy | string | `"IfNotPresent"` | Pull policy for Cloud SQL Auth Proxy images | | cloudsql.image.repository | string | `"gcr.io/cloudsql-docker/gce-proxy"` | Cloud SQL Auth Proxy image to use | | cloudsql.image.resources | object | see `values.yaml` | Resource requests and limits for Cloud SQL pod | -| cloudsql.image.tag | string | `"1.37.1"` | Cloud SQL Auth Proxy tag to use | +| cloudsql.image.tag | string | `"1.37.2"` | Cloud SQL Auth Proxy tag to use | | cloudsql.instanceConnectionName | string | `""` | Instance connection name for a Cloud SQL PostgreSQL instance | | cloudsql.serviceAccount | string | `""` | The Google service account that has an IAM binding to the `times-square` Kubernetes service accounts and has the `cloudsql.client` role | | config.databaseUrl | string | None, must be set | URL for the PostgreSQL database | diff --git a/applications/times-square/templates/ingress-templates.yaml b/applications/times-square/templates/ingress-templates.yaml index 28a4d8ad51..439a3d2cd8 100644 --- a/applications/times-square/templates/ingress-templates.yaml +++ b/applications/times-square/templates/ingress-templates.yaml @@ -6,10 +6,11 @@ metadata: {{- include "times-square.labels" . | nindent 4 }} config: baseUrl: {{ .Values.global.baseUrl | quote }} + loginRedirect: true scopes: all: - {{ .Values.ingress.templateApiScope | quote }} - loginRedirect: true + service: "times-square" template: metadata: name: "{{ template "times-square.fullname" . }}-templates" diff --git a/applications/times-square/templates/ingress.yaml b/applications/times-square/templates/ingress.yaml index 5f1a447ed5..5a74f8a68e 100644 --- a/applications/times-square/templates/ingress.yaml +++ b/applications/times-square/templates/ingress.yaml @@ -6,10 +6,11 @@ metadata: {{- include "times-square.labels" . | nindent 4 }} config: baseUrl: {{ .Values.global.baseUrl | quote }} + loginRedirect: true scopes: all: - {{ .Values.ingress.defaultScope }} - loginRedirect: true + service: "times-square" template: metadata: name: {{ template "times-square.fullname" . }} diff --git a/applications/times-square/values.yaml b/applications/times-square/values.yaml index f5509e689f..cfe2ff9d4c 100644 --- a/applications/times-square/values.yaml +++ b/applications/times-square/values.yaml @@ -156,7 +156,7 @@ cloudsql: repository: "gcr.io/cloudsql-docker/gce-proxy" # -- Cloud SQL Auth Proxy tag to use - tag: "1.37.1" + tag: "1.37.2" # -- Pull policy for Cloud SQL Auth Proxy images pullPolicy: "IfNotPresent" diff --git a/applications/unfurlbot/Chart.yaml b/applications/unfurlbot/Chart.yaml index 9f739e437f..f6421a6498 100644 --- a/applications/unfurlbot/Chart.yaml +++ b/applications/unfurlbot/Chart.yaml @@ -1,5 +1,5 @@ apiVersion: v2 -appVersion: "0.3.1" +appVersion: "0.3.2" description: Squarebot backend that unfurls Jira issues. name: unfurlbot sources: diff --git a/applications/unfurlbot/README.md b/applications/unfurlbot/README.md index 4d615367d9..fb494f08bb 100644 --- a/applications/unfurlbot/README.md +++ b/applications/unfurlbot/README.md @@ -11,10 +11,6 @@ Squarebot backend that unfurls Jira issues. | Key | Type | Default | Description | |-----|------|---------|-------------| | affinity | object | `{}` | Affinity rules for the unfurlbot deployment pod | -| autoscaling.enabled | bool | `false` | Enable autoscaling of unfurlbot deployment | -| autoscaling.maxReplicas | int | `100` | Maximum number of unfurlbot deployment pods | -| autoscaling.minReplicas | int | `1` | Minimum number of unfurlbot deployment pods | -| autoscaling.targetCPUUtilizationPercentage | int | `80` | Target CPU utilization of unfurlbot deployment pods | | config.jiraProjects | string | See `values.yaml` | Names of Jira projects to unfurl (comma-separated) | | config.jiraUrl | string | `"https://rubinobs.atlassian.net/"` | Jira base URL | | config.logLevel | string | `"INFO"` | Logging level: "DEBUG", "INFO", "WARNING", "ERROR", "CRITICAL" | @@ -29,7 +25,7 @@ Squarebot backend that unfurls Jira issues. | global.vaultSecretsPath | string | Set by Argo CD | Base path for Vault secrets | | image.pullPolicy | string | `"IfNotPresent"` | Pull policy for the unfurlbot image | | image.repository | string | `"ghcr.io/lsst-sqre/unfurlbot"` | Image to use in the unfurlbot deployment | -| image.tag | string | `""` | Overrides the image tag whose default is the chart appVersion. | +| image.tag | string | The appVersion of the chart | Image tag to use | | ingress.annotations | object | `{}` | Additional annotations for the ingress rule | | nodeSelector | object | `{}` | Node selection rules for the unfurlbot deployment pod | | podAnnotations | object | `{}` | Annotations for the unfurlbot deployment pod | diff --git a/applications/unfurlbot/secrets.yaml b/applications/unfurlbot/secrets.yaml index 1ccca0b2c9..da469635b6 100644 --- a/applications/unfurlbot/secrets.yaml +++ b/applications/unfurlbot/secrets.yaml @@ -20,7 +20,8 @@ UNFURLBOT_SLACK_APP_ID: key: SQUAREBOT_SLACK_APP_ID UNFURLBOT_SLACK_TOKEN: description: >- - The Slack bot user oauth token for the Slack App shared by all Squarebot services. + The Slack bot user OAuth token for the Slack App shared by all Squarebot + services. copy: application: squarebot key: SQUAREBOT_SLACK_TOKEN diff --git a/applications/unfurlbot/templates/deployment.yaml b/applications/unfurlbot/templates/deployment.yaml index e511d62527..018fbb3c7f 100644 --- a/applications/unfurlbot/templates/deployment.yaml +++ b/applications/unfurlbot/templates/deployment.yaml @@ -7,9 +7,7 @@ metadata: app.kubernetes.io/component: "server" app.kubernetes.io/part-of: "unfurlbot" spec: - {{- if not .Values.autoscaling.enabled }} replicas: {{ .Values.replicaCount }} - {{- end }} selector: matchLabels: {{- include "unfurlbot.selectorLabels" . | nindent 6 }} diff --git a/applications/unfurlbot/templates/hpa.yaml b/applications/unfurlbot/templates/hpa.yaml deleted file mode 100644 index 01f98ad397..0000000000 --- a/applications/unfurlbot/templates/hpa.yaml +++ /dev/null @@ -1,28 +0,0 @@ -{{- if .Values.autoscaling.enabled }} -apiVersion: autoscaling/v2beta1 -kind: HorizontalPodAutoscaler -metadata: - name: "unfurlbot" - labels: - {{- include "unfurlbot.labels" . | nindent 4 }} -spec: - scaleTargetRef: - apiVersion: apps/v1 - kind: Deployment - name: "unfurlbot" - minReplicas: {{ .Values.autoscaling.minReplicas }} - maxReplicas: {{ .Values.autoscaling.maxReplicas }} - metrics: - {{- if .Values.autoscaling.targetCPUUtilizationPercentage }} - - type: Resource - resource: - name: "cpu" - targetAverageUtilization: {{ .Values.autoscaling.targetCPUUtilizationPercentage }} - {{- end }} - {{- if .Values.autoscaling.targetMemoryUtilizationPercentage }} - - type: Resource - resource: - name: "memory" - targetAverageUtilization: {{ .Values.autoscaling.targetMemoryUtilizationPercentage }} - {{- end }} -{{- end }} diff --git a/applications/unfurlbot/templates/kafkaaccess.yaml b/applications/unfurlbot/templates/kafkaaccess.yaml index 0c1db33801..322ad17ed6 100644 --- a/applications/unfurlbot/templates/kafkaaccess.yaml +++ b/applications/unfurlbot/templates/kafkaaccess.yaml @@ -1,14 +1,16 @@ apiVersion: access.strimzi.io/v1alpha1 kind: KafkaAccess metadata: - name: unfurlbot-kafka + name: "unfurlbot-kafka" + labels: + {{- include "unfurlbot.labels" . | nindent 4 }} spec: kafka: - name: sasquatch - namespace: sasquatch - listener: tls + name: "sasquatch" + namespace: "sasquatch" + listener: "tls" user: - kind: KafkaUser - apiGroup: kafka.strimzi.io - name: unfurlbot - namespace: sasquatch + kind: "KafkaUser" + apiGroup: "kafka.strimzi.io" + name: "unfurlbot" + namespace: "sasquatch" diff --git a/applications/unfurlbot/templates/networkpolicy.yaml b/applications/unfurlbot/templates/networkpolicy.yaml index 914cd78765..bfb84dd0b2 100644 --- a/applications/unfurlbot/templates/networkpolicy.yaml +++ b/applications/unfurlbot/templates/networkpolicy.yaml @@ -2,6 +2,8 @@ apiVersion: networking.k8s.io/v1 kind: NetworkPolicy metadata: name: "unfurlbot" + labels: + {{- include "unfurlbot.labels" . | nindent 4 }} spec: podSelector: matchLabels: diff --git a/applications/unfurlbot/values.yaml b/applications/unfurlbot/values.yaml index 207f34358e..cb997a6f8e 100644 --- a/applications/unfurlbot/values.yaml +++ b/applications/unfurlbot/values.yaml @@ -12,7 +12,8 @@ image: # -- Pull policy for the unfurlbot image pullPolicy: "IfNotPresent" - # -- Overrides the image tag whose default is the chart appVersion. + # -- Image tag to use + # @default -- The appVersion of the chart tag: "" config: @@ -95,6 +96,7 @@ config: PREOPS, OBS, SITCOM, + SP, BLOCK ingress: @@ -102,7 +104,6 @@ ingress: annotations: {} redis: - # -- Resource requests and limits for the redis pod # @default -- see `values.yaml` resources: @@ -113,19 +114,11 @@ redis: cpu: "2m" memory: "3Mi" -autoscaling: - # -- Enable autoscaling of unfurlbot deployment - enabled: false - - # -- Minimum number of unfurlbot deployment pods - minReplicas: 1 - - # -- Maximum number of unfurlbot deployment pods - maxReplicas: 100 +# -- Affinity rules for the unfurlbot deployment pod +affinity: {} - # -- Target CPU utilization of unfurlbot deployment pods - targetCPUUtilizationPercentage: 80 - # targetMemoryUtilizationPercentage: 80 +# -- Node selection rules for the unfurlbot deployment pod +nodeSelector: {} # -- Annotations for the unfurlbot deployment pod podAnnotations: {} @@ -140,15 +133,9 @@ resources: cpu: "9m" memory: "60Mi" -# -- Node selection rules for the unfurlbot deployment pod -nodeSelector: {} - # -- Tolerations for the unfurlbot deployment pod tolerations: [] -# -- Affinity rules for the unfurlbot deployment pod -affinity: {} - # The following will be set by parameters injected by Argo CD and should not # be set in the individual environment values files. global: diff --git a/applications/vault/Chart.yaml b/applications/vault/Chart.yaml index 8226ae401f..ed7fcfcb46 100644 --- a/applications/vault/Chart.yaml +++ b/applications/vault/Chart.yaml @@ -4,5 +4,5 @@ version: 1.0.0 description: Secret Storage dependencies: - name: vault - version: 0.29.0 + version: 0.29.1 repository: https://helm.releases.hashicorp.com diff --git a/applications/vo-cutouts/README.md b/applications/vo-cutouts/README.md index 97213c69f0..0a51e70249 100644 --- a/applications/vo-cutouts/README.md +++ b/applications/vo-cutouts/README.md @@ -14,7 +14,7 @@ Image cutout service complying with IVOA SODA | cloudsql.image.pullPolicy | string | `"IfNotPresent"` | Pull policy for Cloud SQL Auth Proxy images | | cloudsql.image.repository | string | `"gcr.io/cloudsql-docker/gce-proxy"` | Cloud SQL Auth Proxy image to use | | cloudsql.image.schemaUpdateTagSuffix | string | `"-alpine"` | Tag suffix to use for the proxy for schema updates | -| cloudsql.image.tag | string | `"1.37.1"` | Cloud SQL Auth Proxy tag to use | +| cloudsql.image.tag | string | `"1.37.2"` | Cloud SQL Auth Proxy tag to use | | cloudsql.instanceConnectionName | string | None, must be set if Cloud SQL is used | Instance connection name for a Cloud SQL PostgreSQL instance | | cloudsql.resources | object | See `values.yaml` | Resource limits and requests for the Cloud SQL Proxy container | | config.databaseUrl | string | None, must be set if `cloudsql.enabled` is false | URL for the PostgreSQL database if Cloud SQL is not in use | diff --git a/applications/vo-cutouts/templates/ingress.yaml b/applications/vo-cutouts/templates/ingress.yaml index 584bad30ec..cc11ae5341 100644 --- a/applications/vo-cutouts/templates/ingress.yaml +++ b/applications/vo-cutouts/templates/ingress.yaml @@ -9,6 +9,7 @@ config: scopes: all: - "read:image" + service: "vo-cutouts" # Request a delegated token to use for making calls to Butler server with the # end-user's credentials. delegate: diff --git a/applications/vo-cutouts/values.yaml b/applications/vo-cutouts/values.yaml index 199c0ce730..40e4a9aa56 100644 --- a/applications/vo-cutouts/values.yaml +++ b/applications/vo-cutouts/values.yaml @@ -94,7 +94,7 @@ cloudsql: repository: "gcr.io/cloudsql-docker/gce-proxy" # -- Cloud SQL Auth Proxy tag to use - tag: "1.37.1" + tag: "1.37.2" # -- Tag suffix to use for the proxy for schema updates schemaUpdateTagSuffix: "-alpine" diff --git a/charts/cadc-tap/README.md b/charts/cadc-tap/README.md index 8adaa4f4fd..1dcfc1198a 100644 --- a/charts/cadc-tap/README.md +++ b/charts/cadc-tap/README.md @@ -17,7 +17,7 @@ IVOA TAP service | cloudsql.enabled | bool | `false` | Enable the Cloud SQL Auth Proxy sidecar, used with Cloud SQL databases on Google Cloud | | cloudsql.image.pullPolicy | string | `"IfNotPresent"` | Pull policy for Cloud SQL Auth Proxy images | | cloudsql.image.repository | string | `"gcr.io/cloudsql-docker/gce-proxy"` | Cloud SQL Auth Proxy image to use | -| cloudsql.image.tag | string | `"1.37.1"` | Cloud SQL Auth Proxy tag to use | +| cloudsql.image.tag | string | `"1.37.2"` | Cloud SQL Auth Proxy tag to use | | cloudsql.instanceConnectionName | string | `""` | Instance connection name for a Cloud SQL PostgreSQL instance | | cloudsql.resources | object | See `values.yaml` | Resource limits and requests for the Cloud SQL Proxy container | | cloudsql.serviceAccount | string | None, must be set | The Google service account that has an IAM binding to the `cadc-tap` Kubernetes service accounts and has the `cloudsql.client` role, access | @@ -31,14 +31,15 @@ IVOA TAP service | config.pg.host | string | None, must be set if backend is `pg` | Host to connect to | | config.pg.image.pullPolicy | string | `"IfNotPresent"` | Pull policy for the TAP image | | config.pg.image.repository | string | `"ghcr.io/lsst-sqre/tap-postgres-service"` | TAP image to use | -| config.pg.image.tag | string | `"1.18.6"` | Tag of TAP image to use | +| config.pg.image.tag | string | `"1.19.0"` | Tag of TAP image to use | | config.pg.username | string | None, must be set if backend is `pg` | Username to connect with | | config.qserv.host | string | `"mock-db:3306"` (the mock QServ) | QServ hostname:port to connect to | | config.qserv.image.pullPolicy | string | `"IfNotPresent"` | Pull policy for the TAP image | | config.qserv.image.repository | string | `"ghcr.io/lsst-sqre/lsst-tap-service"` | TAP image to use | -| config.qserv.image.tag | string | `"2.4.7"` | Tag of TAP image to use | +| config.qserv.image.tag | string | `"2.5.0"` | Tag of TAP image to use | | config.qserv.jdbcParams | string | `""` | Extra JDBC connection parameters | | config.qserv.passwordEnabled | bool | false | Whether the Qserv database is password protected | +| config.serviceName | string | None, must be set | Name of the service from Gafaelfawr's perspective, used for metrics reporting | | config.tapSchemaAddress | string | `"cadc-tap-schema-db:3306"` | Address to a MySQL database containing TAP schema data | | config.vaultSecretName | string | `""` | Vault secret name, this is appended to the global path to find the vault secrets associated with this deployment. | | fullnameOverride | string | `"cadc-tap"` | Override the full name for resources (includes the release name) | @@ -78,7 +79,7 @@ IVOA TAP service | uws.affinity | object | `{}` | Affinity rules for the UWS database pod | | uws.image.pullPolicy | string | `"IfNotPresent"` | Pull policy for the UWS database image | | uws.image.repository | string | `"ghcr.io/lsst-sqre/lsst-tap-uws-db"` | UWS database image to use | -| uws.image.tag | string | `"2.4.7"` | Tag of UWS database image to use | +| uws.image.tag | string | `"2.5.0"` | Tag of UWS database image to use | | uws.nodeSelector | object | `{}` | Node selection rules for the UWS database pod | | uws.podAnnotations | object | `{}` | Annotations for the UWS databse pod | | uws.resources | object | See `values.yaml` | Resource limits and requests for the UWS database pod | diff --git a/charts/cadc-tap/templates/configmap.yaml b/charts/cadc-tap/templates/configmap.yaml index c7a872633b..4bceb70294 100644 --- a/charts/cadc-tap/templates/configmap.yaml +++ b/charts/cadc-tap/templates/configmap.yaml @@ -6,7 +6,7 @@ metadata: {{- include "cadc-tap.labels" . | nindent 4 }} data: cadc-registry.properties: | - ivo://ivoa.net/sso#OpenID = {{ .Values.global.baseUrl }}/auth/cadc + ivo://ivoa.net/sso#OpenID = {{ .Values.global.baseUrl }} catalina.properties: | # tomcat properties tomcat.connector.connectionTimeout=20000 diff --git a/charts/cadc-tap/templates/tap-ingress-authenticated.yaml b/charts/cadc-tap/templates/tap-ingress-authenticated.yaml index c4c0f4aaea..933baaba60 100644 --- a/charts/cadc-tap/templates/tap-ingress-authenticated.yaml +++ b/charts/cadc-tap/templates/tap-ingress-authenticated.yaml @@ -6,14 +6,15 @@ metadata: {{- include "cadc-tap.labels" . | nindent 4 }} config: baseUrl: {{ .Values.global.baseUrl | quote }} + authType: "basic" scopes: all: - "read:tap" - authType: "basic" + service: {{ required "config.serviceName must be set" .Values.config.serviceName | quote }} delegate: internal: scopes: [] - service: "tap" + service: {{ .Values.config.serviceName | quote }} useAuthorization: true template: metadata: diff --git a/charts/cadc-tap/values.yaml b/charts/cadc-tap/values.yaml index a755e17f89..8f043c830f 100644 --- a/charts/cadc-tap/values.yaml +++ b/charts/cadc-tap/values.yaml @@ -71,7 +71,7 @@ config: pullPolicy: "IfNotPresent" # -- Tag of TAP image to use - tag: "1.18.6" + tag: "1.19.0" qserv: # -- QServ hostname:port to connect to @@ -89,7 +89,7 @@ config: pullPolicy: "IfNotPresent" # -- Tag of TAP image to use - tag: "2.4.7" + tag: "2.5.0" # -- Whether the Qserv database is password protected # @default -- false @@ -115,6 +115,11 @@ config: # maths. jvmMaxHeapSize: 31G + # -- Name of the service from Gafaelfawr's perspective, used for metrics + # reporting + # @default -- None, must be set + serviceName: "" + # -- Vault secret name, this is appended to the global path to find the # vault secrets associated with this deployment. vaultSecretName: "" @@ -195,7 +200,7 @@ uws: pullPolicy: "IfNotPresent" # -- Tag of UWS database image to use - tag: "2.4.7" + tag: "2.5.0" # -- Resource limits and requests for the UWS database pod # @default -- See `values.yaml` @@ -229,7 +234,7 @@ cloudsql: repository: "gcr.io/cloudsql-docker/gce-proxy" # -- Cloud SQL Auth Proxy tag to use - tag: "1.37.1" + tag: "1.37.2" # -- Pull policy for Cloud SQL Auth Proxy images pullPolicy: "IfNotPresent" diff --git a/charts/prompt-proto-service/README.md b/charts/prompt-proto-service/README.md index 06c8d5eff9..f2d8e7f96d 100644 --- a/charts/prompt-proto-service/README.md +++ b/charts/prompt-proto-service/README.md @@ -22,8 +22,9 @@ Event-driven processing of camera images | cache.maxFilters | int | `20` | The maximum number of datasets of a given type the service might load if the filter is unknown. Should be greater than or equal to the number of filters that have e.g. flats or transmission curves. | | cache.patchesPerImage | int | `4` | A factor by which to multiply `baseSize` for templates and other patch-based datasets. | | cache.refcatsPerImage | int | `4` | A factor by which to multiply `baseSize` for refcat datasets. | -| cacheCalibs | bool | `true` | Whether or not calibs should be cached between runs of a pod. This is a temporary flag that should only be unset in specific circumstances, and only in the development environment. | | containerConcurrency | int | `1` | The number of Knative requests that can be handled simultaneously by one container | +| debug.cacheCalibs | bool | `true` | Whether or not calibs should be cached between runs of a pod. This is a temporary flag that should only be unset in specific circumstances, and only in the development environment. | +| debug.exportOutputs | bool | `true` | Whether or not pipeline outputs should be exported to the central repo. This flag does not turn off APDB writes or alert generation; those must be handled at the pipeline level or by setting up an alternative destination. | | fullnameOverride | string | `"prompt-proto-service"` | Override the full name for resources (includes the release name) | | image.pullPolicy | string | `IfNotPresent` in prod, `Always` in dev | Pull policy for the PP image | | image.repository | string | `"ghcr.io/lsst-dm/prompt-service"` | Image to use in the PP deployment | @@ -34,8 +35,8 @@ Event-driven processing of camera images | imagePullSecrets | list | `[]` | | | instrument.calibRepo | string | None, must be set | URI to the shared repo used for calibrations, templates, and pipeline outputs. If `registry.centralRepoFile` is set, this URI points to a local redirect instead of the central repo itself. | | instrument.name | string | None, must be set | The "short" name of the instrument | -| instrument.pipelines.main | string | None, must be set | Machine-readable string describing which pipeline(s) should be run for which visits' raws. Notation is complex and still in flux; see [the source code](https://github.com/lsst-dm/prompt_processing/blob/main/python/activator/config.py) for examples. | -| instrument.pipelines.preprocessing | string | None, must be set | Machine-readable string describing which pipeline(s) should be run before which visits' raw arrival. | +| instrument.pipelines.main | string | None, must be set | YAML-formatted config describing which pipeline(s) should be run for which visits' raws. Fields are still in flux; see [the source code](https://github.com/lsst-dm/prompt_processing/blob/main/python/activator/config.py) for examples. | +| instrument.pipelines.preprocessing | string | None, must be set | YAML-formatted config describing which pipeline(s) should be run before which visits' raw arrival. | | instrument.preloadPadding | int | `30` | Number of arcseconds to pad the spatial region in preloading. | | instrument.skymap | string | `""` | Skymap to use with the instrument | | knative.cpuLimit | int | `1` | The maximum cpu cores for the full pod (see `containerConcurrency`). | diff --git a/charts/prompt-proto-service/templates/prompt-proto-service.yaml b/charts/prompt-proto-service/templates/prompt-proto-service.yaml index aca24d55ba..ac77260360 100644 --- a/charts/prompt-proto-service/templates/prompt-proto-service.yaml +++ b/charts/prompt-proto-service/templates/prompt-proto-service.yaml @@ -42,9 +42,11 @@ spec: - name: RUBIN_INSTRUMENT value: {{ .Values.instrument.name }} - name: PREPROCESSING_PIPELINES_CONFIG - value: {{ .Values.instrument.pipelines.preprocessing }} + value: |- + {{- .Values.instrument.pipelines.preprocessing | nindent 12 }} - name: MAIN_PIPELINES_CONFIG - value: {{ .Values.instrument.pipelines.main }} + value: |- + {{- .Values.instrument.pipelines.main | nindent 12 }} - name: SKYMAP value: {{ .Values.instrument.skymap }} - name: PRELOAD_PADDING @@ -120,7 +122,9 @@ spec: - name: FILTERS_WITH_CALIBS value: {{ .Values.cache.maxFilters | toString | quote }} - name: DEBUG_CACHE_CALIBS - value: {{ if .Values.cacheCalibs }}'1'{{ else }}'0'{{ end }} + value: {{ if .Values.debug.cacheCalibs }}'1'{{ else }}'0'{{ end }} + - name: DEBUG_EXPORT_OUTPUTS + value: {{ if .Values.debug.exportOutputs }}'1'{{ else }}'0'{{ end }} volumeMounts: - mountPath: /tmp-butler name: ephemeral diff --git a/charts/prompt-proto-service/values.yaml b/charts/prompt-proto-service/values.yaml index 04c55b7472..45eea955ed 100644 --- a/charts/prompt-proto-service/values.yaml +++ b/charts/prompt-proto-service/values.yaml @@ -40,11 +40,11 @@ instrument: # @default -- None, must be set name: "" pipelines: - # -- Machine-readable string describing which pipeline(s) should be run for which visits' raws. - # Notation is complex and still in flux; see [the source code](https://github.com/lsst-dm/prompt_processing/blob/main/python/activator/config.py) for examples. + # -- YAML-formatted config describing which pipeline(s) should be run for which visits' raws. + # Fields are still in flux; see [the source code](https://github.com/lsst-dm/prompt_processing/blob/main/python/activator/config.py) for examples. # @default -- None, must be set main: "" - # -- Machine-readable string describing which pipeline(s) should be run before which visits' raw arrival. + # -- YAML-formatted config describing which pipeline(s) should be run before which visits' raw arrival. # @default -- None, must be set preprocessing: "" # -- Skymap to use with the instrument @@ -168,9 +168,13 @@ fullnameOverride: "prompt-proto-service" # -- The number of Knative requests that can be handled simultaneously by one container containerConcurrency: 1 -# -- Whether or not calibs should be cached between runs of a pod. -# This is a temporary flag that should only be unset in specific circumstances, and only in the development environment. -cacheCalibs: true +debug: + # -- Whether or not calibs should be cached between runs of a pod. + # This is a temporary flag that should only be unset in specific circumstances, and only in the development environment. + cacheCalibs: true + # -- Whether or not pipeline outputs should be exported to the central repo. + # This flag does not turn off APDB writes or alert generation; those must be handled at the pipeline level or by setting up an alternative destination. + exportOutputs: true # -- Kubernetes YAML configs for extra container volume(s). # Any volumes required by other config options are automatically handled by the Helm chart. diff --git a/charts/rubintv/templates/deployment-workers.yaml b/charts/rubintv/templates/deployment-workers.yaml index b4784e839e..51010dce2f 100644 --- a/charts/rubintv/templates/deployment-workers.yaml +++ b/charts/rubintv/templates/deployment-workers.yaml @@ -100,6 +100,9 @@ spec: initContainers: - name: "secret-perm-fixer" image: "busybox" + # TODO: Note that rubintv-secrets and butler-secrets share the same + # aws-credentials.ini and postgres-credentials.txt files so this will + # need to be fixed. See DM-47762. command: - "/bin/sh" - "-c" diff --git a/charts/rubintv/templates/ingress.yaml b/charts/rubintv/templates/ingress.yaml index 9234160481..834447a46c 100644 --- a/charts/rubintv/templates/ingress.yaml +++ b/charts/rubintv/templates/ingress.yaml @@ -6,10 +6,11 @@ metadata: {{- include "rubintv.labels" . | nindent 4 }} config: baseUrl: {{ .Values.global.baseUrl | quote }} + loginRedirect: true scopes: all: - "read:image" - loginRedirect: true + service: "rubintv" template: metadata: name: {{ template "rubintv.fullname" . }} diff --git a/docs/applications/kubernetes-replicator/index.rst b/docs/applications/kubernetes-replicator/index.rst deleted file mode 100644 index f7eeb2ccdd..0000000000 --- a/docs/applications/kubernetes-replicator/index.rst +++ /dev/null @@ -1,17 +0,0 @@ -.. px-app:: kubernetes-replicator - -################################################# -kubernetes-replicator — Cross-namespace resources -################################################# - -kubernetes-replicator is a Kubernetes operator that replicates resources across namespaces. - -.. jinja:: kubernetes-replicator - :file: applications/_summary.rst.jinja - -Guides -====== - -.. toctree:: - - values diff --git a/docs/applications/kubernetes-replicator/values.md b/docs/applications/kubernetes-replicator/values.md deleted file mode 100644 index da8e6f4d19..0000000000 --- a/docs/applications/kubernetes-replicator/values.md +++ /dev/null @@ -1,12 +0,0 @@ -```{px-app-values} kubernetes-replicator -``` - -# Kubernetes Helm values reference - -Helm values reference table for the {px-app}`kubernetes-replicator` application. - -```{include} ../../../applications/kubernetes-replicator/README.md ---- -start-after: "## Values" ---- -``` diff --git a/docs/applications/rubin.rst b/docs/applications/rubin.rst index 483f483438..ebd6ab8be3 100644 --- a/docs/applications/rubin.rst +++ b/docs/applications/rubin.rst @@ -23,4 +23,5 @@ Argo CD project: ``rubin`` rapid-analysis/index rubintv/index rubintv-dev/index + s3proxy/index schedview-snapshot/index diff --git a/docs/applications/s3proxy/index.rst b/docs/applications/s3proxy/index.rst new file mode 100644 index 0000000000..7ed9bd8ccc --- /dev/null +++ b/docs/applications/s3proxy/index.rst @@ -0,0 +1,19 @@ +.. px-app:: s3proxy + +######################################################## +s3proxy — Simple application to gateway S3 URLs to HTTPS +######################################################## + +This application provides authenticated internal links to S3 resources. +It is intended for deployment only at the USDF, but it could be used elsewhere. + +.. jinja:: s3proxy + :file: applications/_summary.rst.jinja + +Guides +====== + +.. toctree:: + :maxdepth: 1 + + values diff --git a/docs/applications/s3proxy/values.md b/docs/applications/s3proxy/values.md new file mode 100644 index 0000000000..1e546df95b --- /dev/null +++ b/docs/applications/s3proxy/values.md @@ -0,0 +1,12 @@ +```{px-app-values} s3proxy +``` + +# s3proxy Helm values reference + +Helm values reference table for the {px-app}`s3proxy` application. + +```{include} ../../../applications/s3proxy/README.md +--- +start-after: "## Values" +--- +``` \ No newline at end of file diff --git a/docs/applications/support.rst b/docs/applications/support.rst index 14c67ff93d..b43473ccca 100644 --- a/docs/applications/support.rst +++ b/docs/applications/support.rst @@ -11,7 +11,6 @@ Argo CD project: ``support`` :maxdepth: 1 ghostwriter/index - kubernetes-replicator/index postgres/index sqlproxy-cross-project/index strimzi/index diff --git a/environments/README.md b/environments/README.md index e92de4f65a..1ccb8660e5 100644 --- a/environments/README.md +++ b/environments/README.md @@ -26,7 +26,6 @@ | applications.hips | bool | `false` | Enable the HiPS application | | applications.ingress-nginx | bool | `true` | Enable the ingress-nginx application. This is required for all environments, but is still configurable because currently USDF uses an unsupported configuration with ingress-nginx deployed in a different cluster. | | applications.jira-data-proxy | bool | `false` | Enable the jira-data-proxy application | -| applications.kubernetes-replicator | bool | `false` | Enable the kubernetes-replicator application | | applications.livetap | bool | `false` | Enable the livetap application | | applications.love | bool | `false` | Enable the love control system application | | applications.mobu | bool | `false` | Enable the mobu application | @@ -53,6 +52,7 @@ | applications.prompt-proto-service-lsstcomcamsim | bool | `false` | Enable the prompt-proto-service-lsstcomcamsim application | | applications.rubintv | bool | `false` | Enable the rubintv application | | applications.rubintv-dev | bool | `false` | Enable the rubintv-dev application | +| applications.s3proxy | bool | `false` | Enable the s3proxy application | | applications.sasquatch | bool | `false` | Enable the sasquatch application | | applications.sasquatch-backpack | bool | `false` | Enable the sasquatch-backpack application | | applications.schedview-snapshot | bool | `false` | Enable the schedview-snapshot application | diff --git a/environments/templates/applications/support/kubernetes-replicator.yaml b/environments/templates/applications/rubin/s3proxy.yaml similarity index 74% rename from environments/templates/applications/support/kubernetes-replicator.yaml rename to environments/templates/applications/rubin/s3proxy.yaml index 8cdc7bd1a6..1f33f79960 100644 --- a/environments/templates/applications/support/kubernetes-replicator.yaml +++ b/environments/templates/applications/rubin/s3proxy.yaml @@ -1,23 +1,23 @@ -{{- if (index .Values "applications" "kubernetes-replicator") -}} +{{- if (index .Values "applications" "s3proxy") -}} apiVersion: v1 kind: Namespace metadata: - name: "kubernetes-replicator" + name: "s3proxy" --- apiVersion: argoproj.io/v1alpha1 kind: Application metadata: - name: "kubernetes-replicator" + name: "s3proxy" namespace: "argocd" finalizers: - "resources-finalizer.argocd.argoproj.io" spec: destination: - namespace: "kubernetes-replicator" + namespace: "s3proxy" server: "https://kubernetes.default.svc" - project: "support" + project: "rubin" source: - path: "applications/kubernetes-replicator" + path: "applications/s3proxy" repoURL: {{ .Values.repoUrl | quote }} targetRevision: {{ .Values.targetRevision | quote }} helm: @@ -31,4 +31,4 @@ spec: valueFiles: - "values.yaml" - "values-{{ .Values.name }}.yaml" -{{- end -}} +{{- end -}} \ No newline at end of file diff --git a/environments/values-base.yaml b/environments/values-base.yaml index 03455ce0a7..ea94b64e03 100644 --- a/environments/values-base.yaml +++ b/environments/values-base.yaml @@ -35,6 +35,6 @@ applications: uws: true controlSystem: - imageTag: "k0002" + imageTag: "k0003" siteTag: "base" s3EndpointUrl: "https://s3.ls.lsst.org" diff --git a/environments/values-roundtable-dev.yaml b/environments/values-roundtable-dev.yaml index a447b4b181..d97f6b3e86 100644 --- a/environments/values-roundtable-dev.yaml +++ b/environments/values-roundtable-dev.yaml @@ -13,7 +13,6 @@ vaultPathPrefix: "secret/phalanx/roundtable-dev" applications: giftless: true jira-data-proxy: true - kubernetes-replicator: true mobu: true monitoring: true onepassword-connect: true diff --git a/environments/values-roundtable-prod.yaml b/environments/values-roundtable-prod.yaml index c0625aa465..abf6d60994 100644 --- a/environments/values-roundtable-prod.yaml +++ b/environments/values-roundtable-prod.yaml @@ -14,7 +14,6 @@ applications: checkerboard: true giftless: true jira-data-proxy: true - kubernetes-replicator: true monitoring: true mobu: true onepassword-connect: true diff --git a/environments/values-usdfdev.yaml b/environments/values-usdfdev.yaml index d186cba8d2..ee2390b317 100644 --- a/environments/values-usdfdev.yaml +++ b/environments/values-usdfdev.yaml @@ -29,6 +29,7 @@ applications: postgres: true ppdb-replication: true rubintv: true + s3proxy: true sasquatch: true schedview-snapshot: true semaphore: true diff --git a/environments/values-usdfprod.yaml b/environments/values-usdfprod.yaml index 641d4bad06..16e5b9da08 100644 --- a/environments/values-usdfprod.yaml +++ b/environments/values-usdfprod.yaml @@ -24,6 +24,7 @@ applications: portal: true postgres: true rubintv: true + s3proxy: true sasquatch: true semaphore: true siav2: true diff --git a/environments/values.yaml b/environments/values.yaml index b65965df03..5a4c7efe93 100644 --- a/environments/values.yaml +++ b/environments/values.yaml @@ -100,9 +100,6 @@ applications: # -- Enable the jira-data-proxy application jira-data-proxy: false - # -- Enable the kubernetes-replicator application - kubernetes-replicator: false - # -- Enable the livetap application livetap: false @@ -162,6 +159,9 @@ applications: # -- Enable the rubintv-dev application rubintv-dev: false + # -- Enable the s3proxy application + s3proxy: false + # -- Enable the sasquatch application sasquatch: false diff --git a/requirements/dev.txt b/requirements/dev.txt index 3c3e316dab..36fff76eba 100644 --- a/requirements/dev.txt +++ b/requirements/dev.txt @@ -14,9 +14,9 @@ appnope==0.1.4 ; platform_system == 'Darwin' \ --hash=sha256:1de3860566df9caf38f01f86f65e0e13e379af54f9e4bee1e66b48f2efffd1ee \ --hash=sha256:502575ee11cd7a28c0205f379b525beefebab9d161b7c964670864014ed7213c # via ipykernel -asttokens==2.4.1 \ - --hash=sha256:051ed49c3dcae8913ea7cd08e46a606dba30b79993209636c4875bc1d637bc24 \ - --hash=sha256:b03869718ba9a6eb027e134bfdf69f38a236d681c83c160d510768af11254ba0 +asttokens==3.0.0 \ + --hash=sha256:0dcd8baa8d62b0c1d118b399b2ddba3c4aff271d0d7a9e0d4c1681c79035bbc7 \ + --hash=sha256:e3078351a059199dd5138cb1c706e6430c05eff2ff136af5eb4790f9d28932e2 # via stack-data attrs==24.2.0 \ --hash=sha256:5cfb1b9148b5b086569baec03f20d7b6bf3bcacc9a42bebf87ffaaca362f6346 \ @@ -244,99 +244,99 @@ comm==0.2.2 \ --hash=sha256:3fd7a84065306e07bea1773df6eb8282de51ba82f77c72f9c85716ab11fe980e \ --hash=sha256:e6fb86cb70ff661ee8c9c14e7d36d6de3b4066f1441be4063df9c5009f0a64d3 # via ipykernel -coverage==7.6.7 \ - --hash=sha256:0266b62cbea568bd5e93a4da364d05de422110cbed5056d69339bd5af5685433 \ - --hash=sha256:0573f5cbf39114270842d01872952d301027d2d6e2d84013f30966313cadb529 \ - --hash=sha256:0ddcb70b3a3a57581b450571b31cb774f23eb9519c2aaa6176d3a84c9fc57671 \ - --hash=sha256:108bb458827765d538abcbf8288599fee07d2743357bdd9b9dad456c287e121e \ - --hash=sha256:14045b8bfd5909196a90da145a37f9d335a5d988a83db34e80f41e965fb7cb42 \ - --hash=sha256:1a5407a75ca4abc20d6252efeb238377a71ce7bda849c26c7a9bece8680a5d99 \ - --hash=sha256:2bc3e45c16564cc72de09e37413262b9f99167803e5e48c6156bccdfb22c8327 \ - --hash=sha256:2d608a7808793e3615e54e9267519351c3ae204a6d85764d8337bd95993581a8 \ - --hash=sha256:34d23e28ccb26236718a3a78ba72744212aa383141961dd6825f6595005c8b06 \ - --hash=sha256:37a15573f988b67f7348916077c6d8ad43adb75e478d0910957394df397d2874 \ - --hash=sha256:3c0317288f032221d35fa4cbc35d9f4923ff0dfd176c79c9b356e8ef8ef2dff4 \ - --hash=sha256:3c42ec2c522e3ddd683dec5cdce8e62817afb648caedad9da725001fa530d354 \ - --hash=sha256:3c6b24007c4bcd0b19fac25763a7cac5035c735ae017e9a349b927cfc88f31c1 \ - --hash=sha256:40cca284c7c310d622a1677f105e8507441d1bb7c226f41978ba7c86979609ab \ - --hash=sha256:46f21663e358beae6b368429ffadf14ed0a329996248a847a4322fb2e35d64d3 \ - --hash=sha256:49ed5ee4109258973630c1f9d099c7e72c5c36605029f3a91fe9982c6076c82b \ - --hash=sha256:5c95e0fa3d1547cb6f021ab72f5c23402da2358beec0a8e6d19a368bd7b0fb37 \ - --hash=sha256:5dd4e4a49d9c72a38d18d641135d2fb0bdf7b726ca60a103836b3d00a1182acd \ - --hash=sha256:5e444b8e88339a2a67ce07d41faabb1d60d1004820cee5a2c2b54e2d8e429a0f \ - --hash=sha256:60dcf7605c50ea72a14490d0756daffef77a5be15ed1b9fea468b1c7bda1bc3b \ - --hash=sha256:623e6965dcf4e28a3debaa6fcf4b99ee06d27218f46d43befe4db1c70841551c \ - --hash=sha256:673184b3156cba06154825f25af33baa2671ddae6343f23175764e65a8c4c30b \ - --hash=sha256:6cf96ceaa275f071f1bea3067f8fd43bec184a25a962c754024c973af871e1b7 \ - --hash=sha256:70a56a2ec1869e6e9fa69ef6b76b1a8a7ef709972b9cc473f9ce9d26b5997ce3 \ - --hash=sha256:77256ad2345c29fe59ae861aa11cfc74579c88d4e8dbf121cbe46b8e32aec808 \ - --hash=sha256:796c9b107d11d2d69e1849b2dfe41730134b526a49d3acb98ca02f4985eeff7a \ - --hash=sha256:7c07de0d2a110f02af30883cd7dddbe704887617d5c27cf373362667445a4c76 \ - --hash=sha256:7e61b0e77ff4dddebb35a0e8bb5a68bf0f8b872407d8d9f0c726b65dfabe2469 \ - --hash=sha256:82c809a62e953867cf57e0548c2b8464207f5f3a6ff0e1e961683e79b89f2c55 \ - --hash=sha256:850cfd2d6fc26f8346f422920ac204e1d28814e32e3a58c19c91980fa74d8289 \ - --hash=sha256:87ea64b9fa52bf395272e54020537990a28078478167ade6c61da7ac04dc14bc \ - --hash=sha256:90746521206c88bdb305a4bf3342b1b7316ab80f804d40c536fc7d329301ee13 \ - --hash=sha256:951aade8297358f3618a6e0660dc74f6b52233c42089d28525749fc8267dccd2 \ - --hash=sha256:963e4a08cbb0af6623e61492c0ec4c0ec5c5cf74db5f6564f98248d27ee57d30 \ - --hash=sha256:987a8e3da7da4eed10a20491cf790589a8e5e07656b6dc22d3814c4d88faf163 \ - --hash=sha256:9c2eb378bebb2c8f65befcb5147877fc1c9fbc640fc0aad3add759b5df79d55d \ - --hash=sha256:a1ab9763d291a17b527ac6fd11d1a9a9c358280adb320e9c2672a97af346ac2c \ - --hash=sha256:a3b925300484a3294d1c70f6b2b810d6526f2929de954e5b6be2bf8caa1f12c1 \ - --hash=sha256:acbb8af78f8f91b3b51f58f288c0994ba63c646bc1a8a22ad072e4e7e0a49f1c \ - --hash=sha256:ad32a981bcdedb8d2ace03b05e4fd8dace8901eec64a532b00b15217d3677dd2 \ - --hash=sha256:aee9cf6b0134d6f932d219ce253ef0e624f4fa588ee64830fcba193269e4daa3 \ - --hash=sha256:af05bbba896c4472a29408455fe31b3797b4d8648ed0a2ccac03e074a77e2314 \ - --hash=sha256:b6cce5c76985f81da3769c52203ee94722cd5d5889731cd70d31fee939b74bf0 \ - --hash=sha256:bb684694e99d0b791a43e9fc0fa58efc15ec357ac48d25b619f207c41f2fd384 \ - --hash=sha256:c132b5a22821f9b143f87446805e13580b67c670a548b96da945a8f6b4f2efbb \ - --hash=sha256:c296263093f099da4f51b3dff1eff5d4959b527d4f2f419e16508c5da9e15e8c \ - --hash=sha256:c973b2fe4dc445cb865ab369df7521df9c27bf40715c837a113edaa2aa9faf45 \ - --hash=sha256:cdd94501d65adc5c24f8a1a0eda110452ba62b3f4aeaba01e021c1ed9cb8f34a \ - --hash=sha256:d79d4826e41441c9a118ff045e4bccb9fdbdcb1d02413e7ea6eb5c87b5439d24 \ - --hash=sha256:dbba8210f5067398b2c4d96b4e64d8fb943644d5eb70be0d989067c8ca40c0f8 \ - --hash=sha256:df002e59f2d29e889c37abd0b9ee0d0e6e38c24f5f55d71ff0e09e3412a340ec \ - --hash=sha256:dfd14bcae0c94004baba5184d1c935ae0d1231b8409eb6c103a5fd75e8ecdc56 \ - --hash=sha256:e25bacb53a8c7325e34d45dddd2f2fbae0dbc230d0e2642e264a64e17322a777 \ - --hash=sha256:e2c8e3384c12dfa19fa9a52f23eb091a8fad93b5b81a41b14c17c78e23dd1d8b \ - --hash=sha256:e5f2a0f161d126ccc7038f1f3029184dbdf8f018230af17ef6fd6a707a5b881f \ - --hash=sha256:e69ad502f1a2243f739f5bd60565d14a278be58be4c137d90799f2c263e7049a \ - --hash=sha256:ead9b9605c54d15be228687552916c89c9683c215370c4a44f1f217d2adcc34d \ - --hash=sha256:f07ff574986bc3edb80e2c36391678a271d555f91fd1d332a1e0f4b5ea4b6ea9 \ - --hash=sha256:f2c7a045eef561e9544359a0bf5784b44e55cefc7261a20e730baa9220c83413 \ - --hash=sha256:f3e8796434a8106b3ac025fd15417315d7a58ee3e600ad4dbcfddc3f4b14342c \ - --hash=sha256:f63e21ed474edd23f7501f89b53280014436e383a14b9bd77a648366c81dce7b \ - --hash=sha256:fd49c01e5057a451c30c9b892948976f5d38f2cbd04dc556a82743ba8e27ed8c +coverage==7.6.8 \ + --hash=sha256:093896e530c38c8e9c996901858ac63f3d4171268db2c9c8b373a228f459bbc5 \ + --hash=sha256:09b9f848b28081e7b975a3626e9081574a7b9196cde26604540582da60235fdf \ + --hash=sha256:0b0c69f4f724c64dfbfe79f5dfb503b42fe6127b8d479b2677f2b227478db2eb \ + --hash=sha256:13618bed0c38acc418896005732e565b317aa9e98d855a0e9f211a7ffc2d6638 \ + --hash=sha256:13690e923a3932e4fad4c0ebfb9cb5988e03d9dcb4c5150b5fcbf58fd8bddfc4 \ + --hash=sha256:177f01eeaa3aee4a5ffb0d1439c5952b53d5010f86e9d2667963e632e30082cc \ + --hash=sha256:193e3bffca48ad74b8c764fb4492dd875038a2f9925530cb094db92bb5e47bed \ + --hash=sha256:1defe91d41ce1bd44b40fabf071e6a01a5aa14de4a31b986aa9dfd1b3e3e414a \ + --hash=sha256:1f188a2402f8359cf0c4b1fe89eea40dc13b52e7b4fd4812450da9fcd210181d \ + --hash=sha256:202a2d645c5a46b84992f55b0a3affe4f0ba6b4c611abec32ee88358db4bb649 \ + --hash=sha256:24eda3a24a38157eee639ca9afe45eefa8d2420d49468819ac5f88b10de84f4c \ + --hash=sha256:2e4e0f60cb4bd7396108823548e82fdab72d4d8a65e58e2c19bbbc2f1e2bfa4b \ + --hash=sha256:379c111d3558272a2cae3d8e57e6b6e6f4fe652905692d54bad5ea0ca37c5ad4 \ + --hash=sha256:37cda8712145917105e07aab96388ae76e787270ec04bcb9d5cc786d7cbb8443 \ + --hash=sha256:38c51297b35b3ed91670e1e4efb702b790002e3245a28c76e627478aa3c10d83 \ + --hash=sha256:3985b9be361d8fb6b2d1adc9924d01dec575a1d7453a14cccd73225cb79243ee \ + --hash=sha256:3988665ee376abce49613701336544041f2117de7b7fbfe91b93d8ff8b151c8e \ + --hash=sha256:3ac47fa29d8d41059ea3df65bd3ade92f97ee4910ed638e87075b8e8ce69599e \ + --hash=sha256:3b4b4299dd0d2c67caaaf286d58aef5e75b125b95615dda4542561a5a566a1e3 \ + --hash=sha256:3ea8bb1ab9558374c0ab591783808511d135a833c3ca64a18ec927f20c4030f0 \ + --hash=sha256:3fe47da3e4fda5f1abb5709c156eca207eacf8007304ce3019eb001e7a7204cb \ + --hash=sha256:428ac484592f780e8cd7b6b14eb568f7c85460c92e2a37cb0c0e5186e1a0d076 \ + --hash=sha256:44e6c85bbdc809383b509d732b06419fb4544dca29ebe18480379633623baafb \ + --hash=sha256:4674f0daa1823c295845b6a740d98a840d7a1c11df00d1fd62614545c1583787 \ + --hash=sha256:4be32da0c3827ac9132bb488d331cb32e8d9638dd41a0557c5569d57cf22c9c1 \ + --hash=sha256:4db3ed6a907b555e57cc2e6f14dc3a4c2458cdad8919e40b5357ab9b6db6c43e \ + --hash=sha256:5c52a036535d12590c32c49209e79cabaad9f9ad8aa4cbd875b68c4d67a9cbce \ + --hash=sha256:629a1ba2115dce8bf75a5cce9f2486ae483cb89c0145795603d6554bdc83e801 \ + --hash=sha256:62a66ff235e4c2e37ed3b6104d8b478d767ff73838d1222132a7a026aa548764 \ + --hash=sha256:63068a11171e4276f6ece913bde059e77c713b48c3a848814a6537f35afb8365 \ + --hash=sha256:63c19702db10ad79151a059d2d6336fe0c470f2e18d0d4d1a57f7f9713875dcf \ + --hash=sha256:644ec81edec0f4ad17d51c838a7d01e42811054543b76d4ba2c5d6af741ce2a6 \ + --hash=sha256:6535d996f6537ecb298b4e287a855f37deaf64ff007162ec0afb9ab8ba3b8b71 \ + --hash=sha256:6f4548c5ead23ad13fb7a2c8ea541357474ec13c2b736feb02e19a3085fac002 \ + --hash=sha256:716a78a342679cd1177bc8c2fe957e0ab91405bd43a17094324845200b2fddf4 \ + --hash=sha256:74610105ebd6f33d7c10f8907afed696e79c59e3043c5f20eaa3a46fddf33b4c \ + --hash=sha256:768939f7c4353c0fac2f7c37897e10b1414b571fd85dd9fc49e6a87e37a2e0d8 \ + --hash=sha256:86cffe9c6dfcfe22e28027069725c7f57f4b868a3f86e81d1c62462764dc46d4 \ + --hash=sha256:8aae5aea53cbfe024919715eca696b1a3201886ce83790537d1c3668459c7146 \ + --hash=sha256:8b2b8503edb06822c86d82fa64a4a5cb0760bb8f31f26e138ec743f422f37cfc \ + --hash=sha256:912e95017ff51dc3d7b6e2be158dedc889d9a5cc3382445589ce554f1a34c0ea \ + --hash=sha256:9a7b8ac36fd688c8361cbc7bf1cb5866977ece6e0b17c34aa0df58bda4fa18a4 \ + --hash=sha256:9e89d5c8509fbd6c03d0dd1972925b22f50db0792ce06324ba069f10787429ad \ + --hash=sha256:ae270e79f7e169ccfe23284ff5ea2d52a6f401dc01b337efb54b3783e2ce3f28 \ + --hash=sha256:b07c25d52b1c16ce5de088046cd2432b30f9ad5e224ff17c8f496d9cb7d1d451 \ + --hash=sha256:b39e6011cd06822eb964d038d5dff5da5d98652b81f5ecd439277b32361a3a50 \ + --hash=sha256:bd55f8fc8fa494958772a2a7302b0354ab16e0b9272b3c3d83cdb5bec5bd1779 \ + --hash=sha256:c15b32a7aca8038ed7644f854bf17b663bc38e1671b5d6f43f9a2b2bd0c46f63 \ + --hash=sha256:c1b4474beee02ede1eef86c25ad4600a424fe36cff01a6103cb4533c6bf0169e \ + --hash=sha256:c79c0685f142ca53256722a384540832420dff4ab15fec1863d7e5bc8691bdcc \ + --hash=sha256:c9ebfb2507751f7196995142f057d1324afdab56db1d9743aab7f50289abd022 \ + --hash=sha256:d7ad66e8e50225ebf4236368cc43c37f59d5e6728f15f6e258c8639fa0dd8e6d \ + --hash=sha256:d82ab6816c3277dc962cfcdc85b1efa0e5f50fb2c449432deaf2398a2928ab94 \ + --hash=sha256:d9fd2547e6decdbf985d579cf3fc78e4c1d662b9b0ff7cc7862baaab71c9cc5b \ + --hash=sha256:de38add67a0af869b0d79c525d3e4588ac1ffa92f39116dbe0ed9753f26eba7d \ + --hash=sha256:e19122296822deafce89a0c5e8685704c067ae65d45e79718c92df7b3ec3d331 \ + --hash=sha256:e44961e36cb13c495806d4cac67640ac2866cb99044e210895b506c26ee63d3a \ + --hash=sha256:e4c81ed2820b9023a9a90717020315e63b17b18c274a332e3b6437d7ff70abe0 \ + --hash=sha256:e683e6ecc587643f8cde8f5da6768e9d165cd31edf39ee90ed7034f9ca0eefee \ + --hash=sha256:f39e2f3530ed1626c66e7493be7a8423b023ca852aacdc91fb30162c350d2a92 \ + --hash=sha256:f56f49b2553d7dd85fd86e029515a221e5c1f8cb3d9c38b470bc38bde7b8445a \ + --hash=sha256:fb9fc32399dca861584d96eccd6c980b69bbcd7c228d06fb74fe53e007aa8ef9 # via # -r requirements/dev.in # pytest-cov -debugpy==1.8.8 \ - --hash=sha256:09cc7b162586ea2171eea055985da2702b0723f6f907a423c9b2da5996ad67ba \ - --hash=sha256:0cc94186340be87b9ac5a707184ec8f36547fb66636d1029ff4f1cc020e53996 \ - --hash=sha256:143ef07940aeb8e7316de48f5ed9447644da5203726fca378f3a6952a50a9eae \ - --hash=sha256:19ffbd84e757a6ca0113574d1bf5a2298b3947320a3e9d7d8dc3377f02d9f864 \ - --hash=sha256:26b461123a030e82602a750fb24d7801776aa81cd78404e54ab60e8b5fecdad5 \ - --hash=sha256:3a9c013077a3a0000e83d97cf9cc9328d2b0bbb31f56b0e99ea3662d29d7a6a2 \ - --hash=sha256:4b93e4832fd4a759a0c465c967214ed0c8a6e8914bced63a28ddb0dd8c5f078b \ - --hash=sha256:535f4fb1c024ddca5913bb0eb17880c8f24ba28aa2c225059db145ee557035e9 \ - --hash=sha256:53709d4ec586b525724819dc6af1a7703502f7e06f34ded7157f7b1f963bb854 \ - --hash=sha256:5c0e5a38c7f9b481bf31277d2f74d2109292179081f11108e668195ef926c0f9 \ - --hash=sha256:5c6e885dbf12015aed73770f29dec7023cb310d0dc2ba8bfbeb5c8e43f80edc9 \ - --hash=sha256:64674e95916e53c2e9540a056e5f489e0ad4872645399d778f7c598eacb7b7f9 \ - --hash=sha256:705cd123a773d184860ed8dae99becd879dfec361098edbefb5fc0d3683eb804 \ - --hash=sha256:890fd16803f50aa9cb1a9b9b25b5ec321656dd6b78157c74283de241993d086f \ - --hash=sha256:90244598214bbe704aa47556ec591d2f9869ff9e042e301a2859c57106649add \ - --hash=sha256:a6531d952b565b7cb2fbd1ef5df3d333cf160b44f37547a4e7cf73666aca5d8d \ - --hash=sha256:b01f4a5e5c5fb1d34f4ccba99a20ed01eabc45a4684f4948b5db17a319dfb23f \ - --hash=sha256:c399023146e40ae373753a58d1be0a98bf6397fadc737b97ad612886b53df318 \ - --hash=sha256:d4483836da2a533f4b1454dffc9f668096ac0433de855f0c22cdce8c9f7e10c4 \ - --hash=sha256:e59b1607c51b71545cb3496876544f7186a7a27c00b436a62f285603cc68d1c6 \ - --hash=sha256:e6355385db85cbd666be703a96ab7351bc9e6c61d694893206f8001e22aee091 \ - --hash=sha256:ec684553aba5b4066d4de510859922419febc710df7bba04fe9e7ef3de15d34f \ - --hash=sha256:eea8821d998ebeb02f0625dd0d76839ddde8cbf8152ebbe289dd7acf2cdc6b98 \ - --hash=sha256:f3cbf1833e644a3100eadb6120f25be8a532035e8245584c4f7532937edc652a \ - --hash=sha256:f95651bdcbfd3b27a408869a53fbefcc2bcae13b694daee5f1365b1b83a00113 \ - --hash=sha256:ffe94dd5e9a6739a75f0b85316dc185560db3e97afa6b215628d1b6a17561cb2 +debugpy==1.8.9 \ + --hash=sha256:1339e14c7d980407248f09824d1b25ff5c5616651689f1e0f0e51bdead3ea13e \ + --hash=sha256:17c5e0297678442511cf00a745c9709e928ea4ca263d764e90d233208889a19e \ + --hash=sha256:1efbb3ff61487e2c16b3e033bc8595aea578222c08aaf3c4bf0f93fadbd662ee \ + --hash=sha256:365e556a4772d7d0d151d7eb0e77ec4db03bcd95f26b67b15742b88cacff88e9 \ + --hash=sha256:3d9755e77a2d680ce3d2c5394a444cf42be4a592caaf246dbfbdd100ffcf7ae5 \ + --hash=sha256:3e59842d6c4569c65ceb3751075ff8d7e6a6ada209ceca6308c9bde932bcef11 \ + --hash=sha256:472a3994999fe6c0756945ffa359e9e7e2d690fb55d251639d07208dbc37caea \ + --hash=sha256:54a7e6d3014c408eb37b0b06021366ee985f1539e12fe49ca2ee0d392d9ceca5 \ + --hash=sha256:5e565fc54b680292b418bb809f1386f17081d1346dca9a871bf69a8ac4071afe \ + --hash=sha256:62d22dacdb0e296966d7d74a7141aaab4bec123fa43d1a35ddcb39bf9fd29d70 \ + --hash=sha256:66eeae42f3137eb428ea3a86d4a55f28da9bd5a4a3d369ba95ecc3a92c1bba53 \ + --hash=sha256:6953b335b804a41f16a192fa2e7851bdcfd92173cbb2f9f777bb934f49baab65 \ + --hash=sha256:7c4d65d03bee875bcb211c76c1d8f10f600c305dbd734beaed4077e902606fee \ + --hash=sha256:7e646e62d4602bb8956db88b1e72fe63172148c1e25c041e03b103a25f36673c \ + --hash=sha256:7e8b079323a56f719977fde9d8115590cb5e7a1cba2fcee0986ef8817116e7c1 \ + --hash=sha256:8138efff315cd09b8dcd14226a21afda4ca582284bf4215126d87342bba1cc66 \ + --hash=sha256:8e99c0b1cc7bf86d83fb95d5ccdc4ad0586d4432d489d1f54e4055bcc795f693 \ + --hash=sha256:957363d9a7a6612a37458d9a15e72d03a635047f946e5fceee74b50d52a9c8e2 \ + --hash=sha256:957ecffff80d47cafa9b6545de9e016ae8c9547c98a538ee96ab5947115fb3dd \ + --hash=sha256:ada7fb65102a4d2c9ab62e8908e9e9f12aed9d76ef44880367bc9308ebe49a0f \ + --hash=sha256:b74a49753e21e33e7cf030883a92fa607bddc4ede1aa4145172debc637780040 \ + --hash=sha256:c36856343cbaa448171cba62a721531e10e7ffb0abff838004701454149bc037 \ + --hash=sha256:cc37a6c9987ad743d9c3a14fa1b1a14b7e4e6041f9dd0c8abf8895fe7a97b899 \ + --hash=sha256:cfe1e6c6ad7178265f74981edf1154ffce97b69005212fbc90ca22ddfe3d017e \ + --hash=sha256:e46b420dc1bea64e5bbedd678148be512442bc589b0111bd799367cde051e71a \ + --hash=sha256:ff54ef77ad9f5c425398efb150239f6fe8e20c53ae2f68367eba7ece1e96226d # via ipykernel decorator==5.1.1 \ --hash=sha256:637996211036b6385ef91435e4fae22989472f9d571faba8927ba8253acbc330 \ @@ -367,9 +367,9 @@ executing==2.1.0 \ --hash=sha256:8d63781349375b5ebccc3142f4b30350c0cd9c79f921cde38be2be4637e98eaf \ --hash=sha256:8ea27ddd260da8150fa5a708269c4a10e76161e2496ec3e587da9e3c0fe4b9ab # via stack-data -fastjsonschema==2.20.0 \ - --hash=sha256:3d48fc5300ee96f5d116f10fe6f28d938e6008f59a6a025c2649475b87f76a23 \ - --hash=sha256:5875f0b0fa7a0043a91e93a9b8f793bcbbba9691e7fd83dca95c28ba26d21f0a +fastjsonschema==2.21.1 \ + --hash=sha256:794d4f0a58f848961ba16af7b9c85a3e88cd360df008c59aac6fc5ae9323b5d4 \ + --hash=sha256:c9e5b7e908310918cf494a434eeb31384dd84a98b57a30bcb1f535015b554667 # via nbformat gitdb==4.0.11 \ --hash=sha256:81a3407ddd2ee8df444cbacea00e2d038e40150acfa3001696fe0dcf1d3adfa4 \ @@ -487,9 +487,9 @@ ipykernel==6.29.5 \ --hash=sha256:afdb66ba5aa354b09b91379bac28ae4afebbb30e8b39510c9690afb7a10421b5 \ --hash=sha256:f093a22c4a40f8828f8e330a9c297cb93dcab13bd9678ded6de8e5cf81c56215 # via myst-nb -ipython==8.29.0 \ - --hash=sha256:0188a1bd83267192123ccea7f4a8ed0a78910535dbaa3f37671dca76ebd429c8 \ - --hash=sha256:40b60e15b22591450eef73e40a027cf77bd652e757523eebc5bd7c7c498290eb +ipython==8.30.0 \ + --hash=sha256:85ec56a7e20f6c38fce7727dcca699ae4ffc85985aa7b23635a8008f918ae321 \ + --hash=sha256:cb0a405a306d2995a5cbb9901894d240784a9f341394c6ba3f4fe8c6eb89ff6e # via # ipykernel # myst-nb @@ -677,9 +677,9 @@ myst-parser==4.0.0 \ # via # documenteer # myst-nb -nbclient==0.10.0 \ - --hash=sha256:4b3f1b7dba531e498449c4db4f53da339c91d449dc11e9af3a43b4eb5c5abb09 \ - --hash=sha256:f13e3529332a1f1f81d82a53210322476a168bb7090a0289c795fe9cc11c9d3f +nbclient==0.10.1 \ + --hash=sha256:3e93e348ab27e712acd46fccd809139e356eb9a31aab641d1a7991a6eb4e6f68 \ + --hash=sha256:949019b9240d66897e442888cfb618f69ef23dc71c01cb5fced8499c2cfc084d # via # jupyter-cache # myst-nb @@ -766,104 +766,115 @@ pycparser==2.22 ; implementation_name == 'pypy' \ # via # -c requirements/main.txt # cffi -pydantic==2.9.2 \ - --hash=sha256:d155cef71265d1e9807ed1c32b4c8deec042a44a50a4188b25ac67ecd81a9c0f \ - --hash=sha256:f048cec7b26778210e28a0459867920654d48e5e62db0958433636cde4254f12 +pydantic==2.10.2 \ + --hash=sha256:2bc2d7f17232e0841cbba4641e65ba1eb6fafb3a08de3a091ff3ce14a197c4fa \ + --hash=sha256:cfb96e45951117c3024e6b67b25cdc33a3cb7b2fa62e239f7af1378358a1d99e # via # -c requirements/main.txt # autodoc-pydantic # documenteer # pydantic-settings -pydantic-core==2.23.4 \ - --hash=sha256:0a7df63886be5e270da67e0966cf4afbae86069501d35c8c1b3b6c168f42cb36 \ - --hash=sha256:0cb3da3fd1b6a5d0279a01877713dbda118a2a4fc6f0d821a57da2e464793f05 \ - --hash=sha256:0dbd8dbed2085ed23b5c04afa29d8fd2771674223135dc9bc937f3c09284d071 \ - --hash=sha256:0dff76e0602ca7d4cdaacc1ac4c005e0ce0dcfe095d5b5259163a80d3a10d327 \ - --hash=sha256:1278e0d324f6908e872730c9102b0112477a7f7cf88b308e4fc36ce1bdb6d58c \ - --hash=sha256:128585782e5bfa515c590ccee4b727fb76925dd04a98864182b22e89a4e6ed36 \ - --hash=sha256:1498bec4c05c9c787bde9125cfdcc63a41004ff167f495063191b863399b1a29 \ - --hash=sha256:19442362866a753485ba5e4be408964644dd6a09123d9416c54cd49171f50744 \ - --hash=sha256:1b84d168f6c48fabd1f2027a3d1bdfe62f92cade1fb273a5d68e621da0e44e6d \ - --hash=sha256:1e90d2e3bd2c3863d48525d297cd143fe541be8bbf6f579504b9712cb6b643ec \ - --hash=sha256:20152074317d9bed6b7a95ade3b7d6054845d70584216160860425f4fbd5ee9e \ - --hash=sha256:216f9b2d7713eb98cb83c80b9c794de1f6b7e3145eef40400c62e86cee5f4e1e \ - --hash=sha256:233710f069d251feb12a56da21e14cca67994eab08362207785cf8c598e74577 \ - --hash=sha256:255a8ef062cbf6674450e668482456abac99a5583bbafb73f9ad469540a3a232 \ - --hash=sha256:2584f7cf844ac4d970fba483a717dbe10c1c1c96a969bf65d61ffe94df1b2863 \ - --hash=sha256:2971bb5ffe72cc0f555c13e19b23c85b654dd2a8f7ab493c262071377bfce9f6 \ - --hash=sha256:29d2c342c4bc01b88402d60189f3df065fb0dda3654744d5a165a5288a657368 \ - --hash=sha256:2e203fdf807ac7e12ab59ca2bfcabb38c7cf0b33c41efeb00f8e5da1d86af480 \ - --hash=sha256:33e3d65a85a2a4a0dc3b092b938a4062b1a05f3a9abde65ea93b233bca0e03f2 \ - --hash=sha256:374a5e5049eda9e0a44c696c7ade3ff355f06b1fe0bb945ea3cac2bc336478a2 \ - --hash=sha256:37b0fe330e4a58d3c58b24d91d1eb102aeec675a3db4c292ec3928ecd892a9a6 \ - --hash=sha256:3d5639516376dce1940ea36edf408c554475369f5da2abd45d44621cb616f769 \ - --hash=sha256:42c6dcb030aefb668a2b7009c85b27f90e51e6a3b4d5c9bc4c57631292015b0d \ - --hash=sha256:4a7cd62e831afe623fbb7aabbb4fe583212115b3ef38a9f6b71869ba644624a2 \ - --hash=sha256:4ba762ed58e8d68657fc1281e9bb72e1c3e79cc5d464be146e260c541ec12d84 \ - --hash=sha256:4fc714bdbfb534f94034efaa6eadd74e5b93c8fa6315565a222f7b6f42ca1166 \ - --hash=sha256:4ffa2ebd4c8530079140dd2d7f794a9d9a73cbb8e9d59ffe24c63436efa8f271 \ - --hash=sha256:5a1504ad17ba4210df3a045132a7baeeba5a200e930f57512ee02909fc5c4cb5 \ - --hash=sha256:5c364564d17da23db1106787675fc7af45f2f7b58b4173bfdd105564e132e6fb \ - --hash=sha256:5e11661ce0fd30a6790e8bcdf263b9ec5988e95e63cf901972107efc49218b13 \ - --hash=sha256:5f54b118ce5de9ac21c363d9b3caa6c800341e8c47a508787e5868c6b79c9323 \ - --hash=sha256:5f5ff8d839f4566a474a969508fe1c5e59c31c80d9e140566f9a37bba7b8d556 \ - --hash=sha256:61817945f2fe7d166e75fbfb28004034b48e44878177fc54d81688e7b85a3665 \ - --hash=sha256:624e278a7d29b6445e4e813af92af37820fafb6dcc55c012c834f9e26f9aaaef \ - --hash=sha256:63e46b3169866bd62849936de036f901a9356e36376079b05efa83caeaa02ceb \ - --hash=sha256:6531b7ca5f951d663c339002e91aaebda765ec7d61b7d1e3991051906ddde119 \ - --hash=sha256:68665f4c17edcceecc112dfed5dbe6f92261fb9d6054b47d01bf6371a6196126 \ - --hash=sha256:696dd8d674d6ce621ab9d45b205df149399e4bb9aa34102c970b721554828510 \ - --hash=sha256:6f783e0ec4803c787bcea93e13e9932edab72068f68ecffdf86a99fd5918878b \ - --hash=sha256:723314c1d51722ab28bfcd5240d858512ffd3116449c557a1336cbe3919beb87 \ - --hash=sha256:74b9127ffea03643e998e0c5ad9bd3811d3dac8c676e47db17b0ee7c3c3bf35f \ - --hash=sha256:7530e201d10d7d14abce4fb54cfe5b94a0aefc87da539d0346a484ead376c3cc \ - --hash=sha256:77733e3892bb0a7fa797826361ce8a9184d25c8dffaec60b7ffe928153680ba8 \ - --hash=sha256:78ddaaa81421a29574a682b3179d4cf9e6d405a09b99d93ddcf7e5239c742e21 \ - --hash=sha256:7c9129eb40958b3d4500fa2467e6a83356b3b61bfff1b414c7361d9220f9ae8f \ - --hash=sha256:7d32706badfe136888bdea71c0def994644e09fff0bfe47441deaed8e96fdbc6 \ - --hash=sha256:81965a16b675b35e1d09dd14df53f190f9129c0202356ed44ab2728b1c905658 \ - --hash=sha256:8394d940e5d400d04cad4f75c0598665cbb81aecefaca82ca85bd28264af7f9b \ - --hash=sha256:86d2f57d3e1379a9525c5ab067b27dbb8a0642fb5d454e17a9ac434f9ce523e3 \ - --hash=sha256:883a91b5dd7d26492ff2f04f40fbb652de40fcc0afe07e8129e8ae779c2110eb \ - --hash=sha256:88ad334a15b32a791ea935af224b9de1bf99bcd62fabf745d5f3442199d86d59 \ - --hash=sha256:9261d3ce84fa1d38ed649c3638feefeae23d32ba9182963e465d58d62203bd24 \ - --hash=sha256:97df63000f4fea395b2824da80e169731088656d1818a11b95f3b173747b6cd9 \ - --hash=sha256:98d134c954828488b153d88ba1f34e14259284f256180ce659e8d83e9c05eaa3 \ - --hash=sha256:996a38a83508c54c78a5f41456b0103c30508fed9abcad0a59b876d7398f25fd \ - --hash=sha256:9a5bce9d23aac8f0cf0836ecfc033896aa8443b501c58d0602dbfd5bd5b37753 \ - --hash=sha256:9a6b5099eeec78827553827f4c6b8615978bb4b6a88e5d9b93eddf8bb6790f55 \ - --hash=sha256:9d18368b137c6295db49ce7218b1a9ba15c5bc254c96d7c9f9e924a9bc7825ad \ - --hash=sha256:a4fa4fc04dff799089689f4fd502ce7d59de529fc2f40a2c8836886c03e0175a \ - --hash=sha256:a5c7ba8ffb6d6f8f2ab08743be203654bb1aaa8c9dcb09f82ddd34eadb695605 \ - --hash=sha256:aea443fffa9fbe3af1a9ba721a87f926fe548d32cab71d188a6ede77d0ff244e \ - --hash=sha256:b10bd51f823d891193d4717448fab065733958bdb6a6b351967bd349d48d5c9b \ - --hash=sha256:ba1a0996f6c2773bd83e63f18914c1de3c9dd26d55f4ac302a7efe93fb8e7433 \ - --hash=sha256:bb2802e667b7051a1bebbfe93684841cc9351004e2badbd6411bf357ab8d5ac8 \ - --hash=sha256:cfdd16ab5e59fc31b5e906d1a3f666571abc367598e3e02c83403acabc092e07 \ - --hash=sha256:d06b0c8da4f16d1d1e352134427cb194a0a6e19ad5db9161bf32b2113409e728 \ - --hash=sha256:d0776dea117cf5272382634bd2a5c1b6eb16767c223c6a5317cd3e2a757c61a0 \ - --hash=sha256:d18ca8148bebe1b0a382a27a8ee60350091a6ddaf475fa05ef50dc35b5df6327 \ - --hash=sha256:d4488a93b071c04dc20f5cecc3631fc78b9789dd72483ba15d423b5b3689b555 \ - --hash=sha256:d5f7a395a8cf1621939692dba2a6b6a830efa6b3cee787d82c7de1ad2930de64 \ - --hash=sha256:d7a80d21d613eec45e3d41eb22f8f94ddc758a6c4720842dc74c0581f54993d6 \ - --hash=sha256:d97683ddee4723ae8c95d1eddac7c192e8c552da0c73a925a89fa8649bf13eea \ - --hash=sha256:dcedcd19a557e182628afa1d553c3895a9f825b936415d0dbd3cd0bbcfd29b4b \ - --hash=sha256:de6d1d1b9e5101508cb37ab0d972357cac5235f5c6533d1071964c47139257df \ - --hash=sha256:df49e7a0861a8c36d089c1ed57d308623d60416dab2647a4a17fe050ba85de0e \ - --hash=sha256:df933278128ea1cd77772673c73954e53a1c95a4fdf41eef97c2b779271bd0bd \ - --hash=sha256:e08277a400de01bc72436a0ccd02bdf596631411f592ad985dcee21445bd0068 \ - --hash=sha256:e38e63e6f3d1cec5a27e0afe90a085af8b6806ee208b33030e65b6516353f1a3 \ - --hash=sha256:e55541f756f9b3ee346b840103f32779c695a19826a4c442b7954550a0972040 \ - --hash=sha256:ec4e55f79b1c4ffb2eecd8a0cfba9955a2588497d96851f4c8f99aa4a1d39b12 \ - --hash=sha256:ed1a53de42fbe34853ba90513cea21673481cd81ed1be739f7f2efb931b24916 \ - --hash=sha256:ed541d70698978a20eb63d8c5d72f2cc6d7079d9d90f6b50bad07826f1320f5f \ - --hash=sha256:f09e2ff1f17c2b51f2bc76d1cc33da96298f0a036a137f5440ab3ec5360b624f \ - --hash=sha256:f220b0eea5965dec25480b6333c788fb72ce5f9129e8759ef876a1d805d00801 \ - --hash=sha256:f3e0da4ebaef65158d4dfd7d3678aad692f7666877df0002b8a522cdf088f231 \ - --hash=sha256:f455ee30a9d61d3e1a15abd5068827773d6e4dc513e795f380cdd59932c782d5 \ - --hash=sha256:f5ef8f42bec47f21d07668a043f077d507e5bf4e668d5c6dfe6aaba89de1a5b8 \ - --hash=sha256:f69a8e0b033b747bb3e36a44e7732f0c99f7edd5cea723d45bc0d6e95377ffee \ - --hash=sha256:ff02b6d461a6de369f07ec15e465a88895f3223eb75073ffea56b84d9331f607 +pydantic-core==2.27.1 \ + --hash=sha256:00e6424f4b26fe82d44577b4c842d7df97c20be6439e8e685d0d715feceb9fb9 \ + --hash=sha256:029d9757eb621cc6e1848fa0b0310310de7301057f623985698ed7ebb014391b \ + --hash=sha256:02a3d637bd387c41d46b002f0e49c52642281edacd2740e5a42f7017feea3f2c \ + --hash=sha256:0325336f348dbee6550d129b1627cb8f5351a9dc91aad141ffb96d4937bd9529 \ + --hash=sha256:062f60e512fc7fff8b8a9d680ff0ddaaef0193dba9fa83e679c0c5f5fbd018bc \ + --hash=sha256:0b3dfe500de26c52abe0477dde16192ac39c98f05bf2d80e76102d394bd13854 \ + --hash=sha256:0e4216e64d203e39c62df627aa882f02a2438d18a5f21d7f721621f7a5d3611d \ + --hash=sha256:121ceb0e822f79163dd4699e4c54f5ad38b157084d97b34de8b232bcaad70278 \ + --hash=sha256:159cac0a3d096f79ab6a44d77a961917219707e2a130739c64d4dd46281f5c2a \ + --hash=sha256:15aae984e46de8d376df515f00450d1522077254ef6b7ce189b38ecee7c9677c \ + --hash=sha256:15cc53a3179ba0fcefe1e3ae50beb2784dede4003ad2dfd24f81bba4b23a454f \ + --hash=sha256:161c27ccce13b6b0c8689418da3885d3220ed2eae2ea5e9b2f7f3d48f1d52c27 \ + --hash=sha256:19910754e4cc9c63bc1c7f6d73aa1cfee82f42007e407c0f413695c2f7ed777f \ + --hash=sha256:1ba5e3963344ff25fc8c40da90f44b0afca8cfd89d12964feb79ac1411a260ac \ + --hash=sha256:1c00666a3bd2f84920a4e94434f5974d7bbc57e461318d6bb34ce9cdbbc1f6b2 \ + --hash=sha256:1c39b07d90be6b48968ddc8c19e7585052088fd7ec8d568bb31ff64c70ae3c97 \ + --hash=sha256:206b5cf6f0c513baffaeae7bd817717140770c74528f3e4c3e1cec7871ddd61a \ + --hash=sha256:258c57abf1188926c774a4c94dd29237e77eda19462e5bb901d88adcab6af919 \ + --hash=sha256:2cdf7d86886bc6982354862204ae3b2f7f96f21a3eb0ba5ca0ac42c7b38598b9 \ + --hash=sha256:2d4567c850905d5eaaed2f7a404e61012a51caf288292e016360aa2b96ff38d4 \ + --hash=sha256:35c14ac45fcfdf7167ca76cc80b2001205a8d5d16d80524e13508371fb8cdd9c \ + --hash=sha256:38de0a70160dd97540335b7ad3a74571b24f1dc3ed33f815f0880682e6880131 \ + --hash=sha256:3af385b0cee8df3746c3f406f38bcbfdc9041b5c2d5ce3e5fc6637256e60bbc5 \ + --hash=sha256:3b748c44bb9f53031c8cbc99a8a061bc181c1000c60a30f55393b6e9c45cc5bd \ + --hash=sha256:3bbd5d8cc692616d5ef6fbbbd50dbec142c7e6ad9beb66b78a96e9c16729b089 \ + --hash=sha256:3ccaa88b24eebc0f849ce0a4d09e8a408ec5a94afff395eb69baf868f5183107 \ + --hash=sha256:3fa80ac2bd5856580e242dbc202db873c60a01b20309c8319b5c5986fbe53ce6 \ + --hash=sha256:4228b5b646caa73f119b1ae756216b59cc6e2267201c27d3912b592c5e323b60 \ + --hash=sha256:42b0e23f119b2b456d07ca91b307ae167cc3f6c846a7b169fca5326e32fdc6cf \ + --hash=sha256:45cf8588c066860b623cd11c4ba687f8d7175d5f7ef65f7129df8a394c502de5 \ + --hash=sha256:45d9c5eb9273aa50999ad6adc6be5e0ecea7e09dbd0d31bd0c65a55a2592ca08 \ + --hash=sha256:4603137322c18eaf2e06a4495f426aa8d8388940f3c457e7548145011bb68e05 \ + --hash=sha256:46ccfe3032b3915586e469d4972973f893c0a2bb65669194a5bdea9bacc088c2 \ + --hash=sha256:4fefee876e07a6e9aad7a8c8c9f85b0cdbe7df52b8a9552307b09050f7512c7e \ + --hash=sha256:5556470f1a2157031e676f776c2bc20acd34c1990ca5f7e56f1ebf938b9ab57c \ + --hash=sha256:57866a76e0b3823e0b56692d1a0bf722bffb324839bb5b7226a7dbd6c9a40b17 \ + --hash=sha256:5897bec80a09b4084aee23f9b73a9477a46c3304ad1d2d07acca19723fb1de62 \ + --hash=sha256:58ca98a950171f3151c603aeea9303ef6c235f692fe555e883591103da709b23 \ + --hash=sha256:5ca038c7f6a0afd0b2448941b6ef9d5e1949e999f9e5517692eb6da58e9d44be \ + --hash=sha256:5f6c8a66741c5f5447e047ab0ba7a1c61d1e95580d64bce852e3df1f895c4067 \ + --hash=sha256:5f8c4718cd44ec1580e180cb739713ecda2bdee1341084c1467802a417fe0f02 \ + --hash=sha256:5fde892e6c697ce3e30c61b239330fc5d569a71fefd4eb6512fc6caec9dd9e2f \ + --hash=sha256:62a763352879b84aa31058fc931884055fd75089cccbd9d58bb6afd01141b235 \ + --hash=sha256:62ba45e21cf6571d7f716d903b5b7b6d2617e2d5d67c0923dc47b9d41369f840 \ + --hash=sha256:64c65f40b4cd8b0e049a8edde07e38b476da7e3aaebe63287c899d2cff253fa5 \ + --hash=sha256:655d7dd86f26cb15ce8a431036f66ce0318648f8853d709b4167786ec2fa4807 \ + --hash=sha256:66ff044fd0bb1768688aecbe28b6190f6e799349221fb0de0e6f4048eca14c16 \ + --hash=sha256:672ebbe820bb37988c4d136eca2652ee114992d5d41c7e4858cdd90ea94ffe5c \ + --hash=sha256:6b9af86e1d8e4cfc82c2022bfaa6f459381a50b94a29e95dcdda8442d6d83864 \ + --hash=sha256:6e0bd57539da59a3e4671b90a502da9a28c72322a4f17866ba3ac63a82c4498e \ + --hash=sha256:71a5e35c75c021aaf400ac048dacc855f000bdfed91614b4a726f7432f1f3d6a \ + --hash=sha256:7597c07fbd11515f654d6ece3d0e4e5093edc30a436c63142d9a4b8e22f19c35 \ + --hash=sha256:764be71193f87d460a03f1f7385a82e226639732214b402f9aa61f0d025f0737 \ + --hash=sha256:7699b1df36a48169cdebda7ab5a2bac265204003f153b4bd17276153d997670a \ + --hash=sha256:7ccebf51efc61634f6c2344da73e366c75e735960b5654b63d7e6f69a5885fa3 \ + --hash=sha256:7f7059ca8d64fea7f238994c97d91f75965216bcbe5f695bb44f354893f11d52 \ + --hash=sha256:8065914ff79f7eab1599bd80406681f0ad08f8e47c880f17b416c9f8f7a26d05 \ + --hash=sha256:816f5aa087094099fff7edabb5e01cc370eb21aa1a1d44fe2d2aefdfb5599b31 \ + --hash=sha256:81f2ec23ddc1b476ff96563f2e8d723830b06dceae348ce02914a37cb4e74b89 \ + --hash=sha256:84286494f6c5d05243456e04223d5a9417d7f443c3b76065e75001beb26f88de \ + --hash=sha256:8bf7b66ce12a2ac52d16f776b31d16d91033150266eb796967a7e4621707e4f6 \ + --hash=sha256:8f1edcea27918d748c7e5e4d917297b2a0ab80cad10f86631e488b7cddf76a36 \ + --hash=sha256:981fb88516bd1ae8b0cbbd2034678a39dedc98752f264ac9bc5839d3923fa04c \ + --hash=sha256:98476c98b02c8e9b2eec76ac4156fd006628b1b2d0ef27e548ffa978393fd154 \ + --hash=sha256:992cea5f4f3b29d6b4f7f1726ed8ee46c8331c6b4eed6db5b40134c6fe1768bb \ + --hash=sha256:9a3b0793b1bbfd4146304e23d90045f2a9b5fd5823aa682665fbdaf2a6c28f3e \ + --hash=sha256:9a42d6a8156ff78981f8aa56eb6394114e0dedb217cf8b729f438f643608cbcd \ + --hash=sha256:9c10c309e18e443ddb108f0ef64e8729363adbfd92d6d57beec680f6261556f3 \ + --hash=sha256:9cbd94fc661d2bab2bc702cddd2d3370bbdcc4cd0f8f57488a81bcce90c7a54f \ + --hash=sha256:9fdcf339322a3fae5cbd504edcefddd5a50d9ee00d968696846f089b4432cf78 \ + --hash=sha256:a0697803ed7d4af5e4c1adf1670af078f8fcab7a86350e969f454daf598c4960 \ + --hash=sha256:a28af0695a45f7060e6f9b7092558a928a28553366519f64083c63a44f70e618 \ + --hash=sha256:a2e02889071850bbfd36b56fd6bc98945e23670773bc7a76657e90e6b6603c08 \ + --hash=sha256:a33cd6ad9017bbeaa9ed78a2e0752c5e250eafb9534f308e7a5f7849b0b1bfb4 \ + --hash=sha256:a3cb37038123447cf0f3ea4c74751f6a9d7afef0eb71aa07bf5f652b5e6a132c \ + --hash=sha256:a57847b090d7892f123726202b7daa20df6694cbd583b67a592e856bff603d6c \ + --hash=sha256:a5a8e19d7c707c4cadb8c18f5f60c843052ae83c20fa7d44f41594c644a1d330 \ + --hash=sha256:ac3b20653bdbe160febbea8aa6c079d3df19310d50ac314911ed8cc4eb7f8cb8 \ + --hash=sha256:ac6c2c45c847bbf8f91930d88716a0fb924b51e0c6dad329b793d670ec5db792 \ + --hash=sha256:acc07b2cfc5b835444b44a9956846b578d27beeacd4b52e45489e93276241025 \ + --hash=sha256:aee66be87825cdf72ac64cb03ad4c15ffef4143dbf5c113f64a5ff4f81477bf9 \ + --hash=sha256:af52d26579b308921b73b956153066481f064875140ccd1dfd4e77db89dbb12f \ + --hash=sha256:b94d4ba43739bbe8b0ce4262bcc3b7b9f31459ad120fb595627eaeb7f9b9ca01 \ + --hash=sha256:ba630d5e3db74c79300d9a5bdaaf6200172b107f263c98a0539eeecb857b2337 \ + --hash=sha256:bed0f8a0eeea9fb72937ba118f9db0cb7e90773462af7962d382445f3005e5a4 \ + --hash=sha256:bf99c8404f008750c846cb4ac4667b798a9f7de673ff719d705d9b2d6de49c5f \ + --hash=sha256:c3027001c28434e7ca5a6e1e527487051136aa81803ac812be51802150d880dd \ + --hash=sha256:c65af9088ac534313e1963443d0ec360bb2b9cba6c2909478d22c2e363d98a51 \ + --hash=sha256:d0165ab2914379bd56908c02294ed8405c252250668ebcb438a55494c69f44ab \ + --hash=sha256:d1b26e1dff225c31897696cab7d4f0a315d4c0d9e8666dbffdb28216f3b17fdc \ + --hash=sha256:d950caa237bb1954f1b8c9227b5065ba6875ac9771bb8ec790d956a699b78676 \ + --hash=sha256:dc61505e73298a84a2f317255fcc72b710b72980f3a1f670447a21efc88f8381 \ + --hash=sha256:e173486019cc283dc9778315fa29a363579372fe67045e971e89b6365cc035ed \ + --hash=sha256:e1f735dc43da318cad19b4173dd1ffce1d84aafd6c9b782b3abc04a0d5a6f5bb \ + --hash=sha256:e9386266798d64eeb19dd3677051f5705bf873e98e15897ddb7d76f477131967 \ + --hash=sha256:f216dbce0e60e4d03e0c4353c7023b202d95cbaeff12e5fd2e82ea0a66905073 \ + --hash=sha256:f4e5658dbffe8843a0f12366a4c2d1c316dbe09bb4dfbdc9d2d9cd6031de8aae \ + --hash=sha256:f5a823165e6d04ccea61a9f0576f345f8ce40ed533013580e087bd4d7442b52c \ + --hash=sha256:f69ed81ab24d5a3bd93861c8c4436f54afdf8e8cc421562b0c7504cf3be58206 \ + --hash=sha256:f82d068a2d6ecfc6e054726080af69a6764a10015467d7d7b9f66d6ed5afa23b # via # -c requirements/main.txt # pydantic @@ -886,9 +897,9 @@ pygments==2.18.0 \ pylatexenc==2.10 \ --hash=sha256:3dd8fd84eb46dc30bee1e23eaab8d8fb5a7f507347b23e5f38ad9675c84f40d3 # via documenteer -pytest==8.3.3 \ - --hash=sha256:70b98107bd648308a7952b06e6ca9a50bc660be218d53c257cc1fc94fda10181 \ - --hash=sha256:a6853c7375b2663155079443d2e45de913a911a11d669df02a50814944db57b2 +pytest==8.3.4 \ + --hash=sha256:50e16d954148559c9a74109af1eaf0c945ba2d8f30f0a3d3335edde19788b6f6 \ + --hash=sha256:965370d062bce11e73868e0335abac31b4d3de0e82f4007408d242b4f8610761 # via # -r requirements/dev.in # pytest-cov @@ -1121,103 +1132,114 @@ requests==2.32.3 \ # documenteer # sphinx # sphinxcontrib-youtube -rpds-py==0.21.0 \ - --hash=sha256:031819f906bb146561af051c7cef4ba2003d28cff07efacef59da973ff7969ba \ - --hash=sha256:0626238a43152918f9e72ede9a3b6ccc9e299adc8ade0d67c5e142d564c9a83d \ - --hash=sha256:085ed25baac88953d4283e5b5bd094b155075bb40d07c29c4f073e10623f9f2e \ - --hash=sha256:0a9e0759e7be10109645a9fddaaad0619d58c9bf30a3f248a2ea57a7c417173a \ - --hash=sha256:0c025820b78817db6a76413fff6866790786c38f95ea3f3d3c93dbb73b632202 \ - --hash=sha256:1ff2eba7f6c0cb523d7e9cff0903f2fe1feff8f0b2ceb6bd71c0e20a4dcee271 \ - --hash=sha256:20cc1ed0bcc86d8e1a7e968cce15be45178fd16e2ff656a243145e0b439bd250 \ - --hash=sha256:241e6c125568493f553c3d0fdbb38c74babf54b45cef86439d4cd97ff8feb34d \ - --hash=sha256:2c51d99c30091f72a3c5d126fad26236c3f75716b8b5e5cf8effb18889ced928 \ - --hash=sha256:2d6129137f43f7fa02d41542ffff4871d4aefa724a5fe38e2c31a4e0fd343fb0 \ - --hash=sha256:30b912c965b2aa76ba5168fd610087bad7fcde47f0a8367ee8f1876086ee6d1d \ - --hash=sha256:30bdc973f10d28e0337f71d202ff29345320f8bc49a31c90e6c257e1ccef4333 \ - --hash=sha256:320c808df533695326610a1b6a0a6e98f033e49de55d7dc36a13c8a30cfa756e \ - --hash=sha256:32eb88c30b6a4f0605508023b7141d043a79b14acb3b969aa0b4f99b25bc7d4a \ - --hash=sha256:3b766a9f57663396e4f34f5140b3595b233a7b146e94777b97a8413a1da1be18 \ - --hash=sha256:3b929c2bb6e29ab31f12a1117c39f7e6d6450419ab7464a4ea9b0b417174f044 \ - --hash=sha256:3e30a69a706e8ea20444b98a49f386c17b26f860aa9245329bab0851ed100677 \ - --hash=sha256:3e53861b29a13d5b70116ea4230b5f0f3547b2c222c5daa090eb7c9c82d7f664 \ - --hash=sha256:40c91c6e34cf016fa8e6b59d75e3dbe354830777fcfd74c58b279dceb7975b75 \ - --hash=sha256:4991ca61656e3160cdaca4851151fd3f4a92e9eba5c7a530ab030d6aee96ec89 \ - --hash=sha256:4ab2c2a26d2f69cdf833174f4d9d86118edc781ad9a8fa13970b527bf8236027 \ - --hash=sha256:4e8921a259f54bfbc755c5bbd60c82bb2339ae0324163f32868f63f0ebb873d9 \ - --hash=sha256:4eb2de8a147ffe0626bfdc275fc6563aa7bf4b6db59cf0d44f0ccd6ca625a24e \ - --hash=sha256:5145282a7cd2ac16ea0dc46b82167754d5e103a05614b724457cffe614f25bd8 \ - --hash=sha256:520ed8b99b0bf86a176271f6fe23024323862ac674b1ce5b02a72bfeff3fff44 \ - --hash=sha256:52c041802a6efa625ea18027a0723676a778869481d16803481ef6cc02ea8cb3 \ - --hash=sha256:5555db3e618a77034954b9dc547eae94166391a98eb867905ec8fcbce1308d95 \ - --hash=sha256:58a0e345be4b18e6b8501d3b0aa540dad90caeed814c515e5206bb2ec26736fd \ - --hash=sha256:590ef88db231c9c1eece44dcfefd7515d8bf0d986d64d0caf06a81998a9e8cab \ - --hash=sha256:5afb5efde74c54724e1a01118c6e5c15e54e642c42a1ba588ab1f03544ac8c7a \ - --hash=sha256:688c93b77e468d72579351a84b95f976bd7b3e84aa6686be6497045ba84be560 \ - --hash=sha256:6b4ef7725386dc0762857097f6b7266a6cdd62bfd209664da6712cb26acef035 \ - --hash=sha256:6bc0e697d4d79ab1aacbf20ee5f0df80359ecf55db33ff41481cf3e24f206919 \ - --hash=sha256:6dcc4949be728ede49e6244eabd04064336012b37f5c2200e8ec8eb2988b209c \ - --hash=sha256:6f54e7106f0001244a5f4cf810ba8d3f9c542e2730821b16e969d6887b664266 \ - --hash=sha256:808f1ac7cf3b44f81c9475475ceb221f982ef548e44e024ad5f9e7060649540e \ - --hash=sha256:8404b3717da03cbf773a1d275d01fec84ea007754ed380f63dfc24fb76ce4592 \ - --hash=sha256:878f6fea96621fda5303a2867887686d7a198d9e0f8a40be100a63f5d60c88c9 \ - --hash=sha256:8a7ff941004d74d55a47f916afc38494bd1cfd4b53c482b77c03147c91ac0ac3 \ - --hash=sha256:95a5bad1ac8a5c77b4e658671642e4af3707f095d2b78a1fdd08af0dfb647624 \ - --hash=sha256:97ef67d9bbc3e15584c2f3c74bcf064af36336c10d2e21a2131e123ce0f924c9 \ - --hash=sha256:98486337f7b4f3c324ab402e83453e25bb844f44418c066623db88e4c56b7c7b \ - --hash=sha256:98e4fe5db40db87ce1c65031463a760ec7906ab230ad2249b4572c2fc3ef1f9f \ - --hash=sha256:998a8080c4495e4f72132f3d66ff91f5997d799e86cec6ee05342f8f3cda7dca \ - --hash=sha256:9afe42102b40007f588666bc7de82451e10c6788f6f70984629db193849dced1 \ - --hash=sha256:9e20da3957bdf7824afdd4b6eeb29510e83e026473e04952dca565170cd1ecc8 \ - --hash=sha256:a017f813f24b9df929674d0332a374d40d7f0162b326562daae8066b502d0590 \ - --hash=sha256:a429b99337062877d7875e4ff1a51fe788424d522bd64a8c0a20ef3021fdb6ed \ - --hash=sha256:a58ce66847711c4aa2ecfcfaff04cb0327f907fead8945ffc47d9407f41ff952 \ - --hash=sha256:a78d8b634c9df7f8d175451cfeac3810a702ccb85f98ec95797fa98b942cea11 \ - --hash=sha256:a89a8ce9e4e75aeb7fa5d8ad0f3fecdee813802592f4f46a15754dcb2fd6b061 \ - --hash=sha256:a8eeec67590e94189f434c6d11c426892e396ae59e4801d17a93ac96b8c02a6c \ - --hash=sha256:aaeb25ccfb9b9014a10eaf70904ebf3f79faaa8e60e99e19eef9f478651b9b74 \ - --hash=sha256:ad116dda078d0bc4886cb7840e19811562acdc7a8e296ea6ec37e70326c1b41c \ - --hash=sha256:af04ac89c738e0f0f1b913918024c3eab6e3ace989518ea838807177d38a2e94 \ - --hash=sha256:af4a644bf890f56e41e74be7d34e9511e4954894d544ec6b8efe1e21a1a8da6c \ - --hash=sha256:b21747f79f360e790525e6f6438c7569ddbfb1b3197b9e65043f25c3c9b489d8 \ - --hash=sha256:b229ce052ddf1a01c67d68166c19cb004fb3612424921b81c46e7ea7ccf7c3bf \ - --hash=sha256:b4de1da871b5c0fd5537b26a6fc6814c3cc05cabe0c941db6e9044ffbb12f04a \ - --hash=sha256:b80b4690bbff51a034bfde9c9f6bf9357f0a8c61f548942b80f7b66356508bf5 \ - --hash=sha256:b876f2bc27ab5954e2fd88890c071bd0ed18b9c50f6ec3de3c50a5ece612f7a6 \ - --hash=sha256:b8f107395f2f1d151181880b69a2869c69e87ec079c49c0016ab96860b6acbe5 \ - --hash=sha256:b9b76e2afd585803c53c5b29e992ecd183f68285b62fe2668383a18e74abe7a3 \ - --hash=sha256:c2b2f71c6ad6c2e4fc9ed9401080badd1469fa9889657ec3abea42a3d6b2e1ed \ - --hash=sha256:c3761f62fcfccf0864cc4665b6e7c3f0c626f0380b41b8bd1ce322103fa3ef87 \ - --hash=sha256:c38dbf31c57032667dd5a2f0568ccde66e868e8f78d5a0d27dcc56d70f3fcd3b \ - --hash=sha256:ca9989d5d9b1b300bc18e1801c67b9f6d2c66b8fd9621b36072ed1df2c977f72 \ - --hash=sha256:cbd7504a10b0955ea287114f003b7ad62330c9e65ba012c6223dba646f6ffd05 \ - --hash=sha256:d167e4dbbdac48bd58893c7e446684ad5d425b407f9336e04ab52e8b9194e2ed \ - --hash=sha256:d2132377f9deef0c4db89e65e8bb28644ff75a18df5293e132a8d67748397b9f \ - --hash=sha256:da52d62a96e61c1c444f3998c434e8b263c384f6d68aca8274d2e08d1906325c \ - --hash=sha256:daa8efac2a1273eed2354397a51216ae1e198ecbce9036fba4e7610b308b6153 \ - --hash=sha256:dc5695c321e518d9f03b7ea6abb5ea3af4567766f9852ad1560f501b17588c7b \ - --hash=sha256:de552f4a1916e520f2703ec474d2b4d3f86d41f353e7680b597512ffe7eac5d0 \ - --hash=sha256:de609a6f1b682f70bb7163da745ee815d8f230d97276db049ab447767466a09d \ - --hash=sha256:e12bb09678f38b7597b8346983d2323a6482dcd59e423d9448108c1be37cac9d \ - --hash=sha256:e168afe6bf6ab7ab46c8c375606298784ecbe3ba31c0980b7dcbb9631dcba97e \ - --hash=sha256:e78868e98f34f34a88e23ee9ccaeeec460e4eaf6db16d51d7a9b883e5e785a5e \ - --hash=sha256:e860f065cc4ea6f256d6f411aba4b1251255366e48e972f8a347cf88077b24fd \ - --hash=sha256:ea3a6ac4d74820c98fcc9da4a57847ad2cc36475a8bd9683f32ab6d47a2bd682 \ - --hash=sha256:ebf64e281a06c904a7636781d2e973d1f0926a5b8b480ac658dc0f556e7779f4 \ - --hash=sha256:ed6378c9d66d0de903763e7706383d60c33829581f0adff47b6535f1802fa6db \ - --hash=sha256:ee1e4fc267b437bb89990b2f2abf6c25765b89b72dd4a11e21934df449e0c976 \ - --hash=sha256:ee4eafd77cc98d355a0d02f263efc0d3ae3ce4a7c24740010a8b4012bbb24937 \ - --hash=sha256:efec946f331349dfc4ae9d0e034c263ddde19414fe5128580f512619abed05f1 \ - --hash=sha256:f414da5c51bf350e4b7960644617c130140423882305f7574b6cf65a3081cecb \ - --hash=sha256:f71009b0d5e94c0e86533c0b27ed7cacc1239cb51c178fd239c3cfefefb0400a \ - --hash=sha256:f983e4c2f603c95dde63df633eec42955508eefd8d0f0e6d236d31a044c882d7 \ - --hash=sha256:faa5e8496c530f9c71f2b4e1c49758b06e5f4055e17144906245c99fa6d45356 \ - --hash=sha256:fed5dfefdf384d6fe975cc026886aece4f292feaf69d0eeb716cfd3c5a4dd8be +rpds-py==0.22.0 \ + --hash=sha256:034964ea0ea09645bdde13038b38abb14be0aa747f20fcfab6181207dd9e0483 \ + --hash=sha256:0686f2c16eafdc2c6b4ce6e86e5b3092e87db09ae64be2787616444eb35b9756 \ + --hash=sha256:0903ffdb5b9007e503203b6285e4ff0faf96d875c19f1d103b475acf7d9f7311 \ + --hash=sha256:1212cb231f2002934cd8d71a0d718fdd9d9a2dd671e0feef8501038df3508026 \ + --hash=sha256:1357c3092702078b7782b6ebd5ba9b22c1a291c34fbf9d8f1a48237466ac7758 \ + --hash=sha256:1a6cc4eb1e86364331928acafb2bb41d8ab735ca3caf2d6019b9f6dac3f4f65d \ + --hash=sha256:208ce1d8e3af138d1d9b21d7206356b7f29b96675e0113aea652cf024e4ddfdc \ + --hash=sha256:2498ff422823be087b48bc82710deb87ac34f6b7c8034ee39920647647de1e60 \ + --hash=sha256:24c28df05bd284879d0fac850ba697077d2a33b7ebcaea6318d6b6cdfdc86ddc \ + --hash=sha256:2a57300cc8b034c5707085249efd09f19116bb80278d0ec925d7f3710165c510 \ + --hash=sha256:2d2fc3ab021be3e0b5aec6d4164f2689d231b8bfc5185cc454314746aa4aee72 \ + --hash=sha256:2f513758e7cda8bc262e80299a8e3395d7ef7f4ae705be62632f229bc6c33208 \ + --hash=sha256:306da3dfa174b489a3fc63b0872e2226a5ddf94c59875a770d72aff945d5ed96 \ + --hash=sha256:326e42f2b49462e05f8527a1311ce98f9f97c484b3e443ec0ea4638bed3aebcf \ + --hash=sha256:32a0e24cab2daae0503b06666d516e90a080c1a95aff0406b9f03c6489177c4b \ + --hash=sha256:32de71c393f126d8203e9815557c7ff4d72ed1ad3aa3f52f6c7938413176750a \ + --hash=sha256:341a07a4b55126bfae68c9bf24220a73d456111e5eb3dcbdab9fd16de2341224 \ + --hash=sha256:38cacf1f378571450576f2c8ce87da6f3fddc59d744de5c12b37acc23285b1e1 \ + --hash=sha256:3b94b074dcce39976db22ea75c7aea8b22d95e6d3b62f76e20e1179a278521d8 \ + --hash=sha256:3dc7c64b56b82428894f056e9ff6e8ee917ff74fc26b65211a33602c2372e928 \ + --hash=sha256:3f7a048ec1ebc991331d709be4884dc318c9eaafa66dcde8be0933ac0e702149 \ + --hash=sha256:41f65a97bf2c4b161c9f8f89bc37058346bec9b36e373c8ad00a16c957bff625 \ + --hash=sha256:48c95997af9314f4034fe5ba2d837399e786586e220835a578d28fe8161e6ae5 \ + --hash=sha256:49e084d47a66027ac72844f9f52f13d347a9a1f05d4f84381b420e47f836a7fd \ + --hash=sha256:4b5d17d8f5b885ce50e0cda85f99c0719e365e98b587338535fa566a48375afb \ + --hash=sha256:4c0321bc03a1c513eca1837e3bba948b975bcf3a172aebc197ab3573207f137a \ + --hash=sha256:4e7c9aa2353eb0b0d845323857197daa036c2ff8624df990b0d886d22a8f665e \ + --hash=sha256:4fc4824e38c1e91a73bc820e7caacaf19d0acd557465aceef0420ca59489b390 \ + --hash=sha256:54d8f94dec5765a9edc19610fecf0fdf9cab36cbb9def1213188215f735a6f98 \ + --hash=sha256:574c5c94213bc9990805bfd7e4ba3826d3c098516cbc19f0d0ef0433ad93fa06 \ + --hash=sha256:59e63da174ff287db05ef7c21d75974a5bac727ed60452aeb3a14278477842a8 \ + --hash=sha256:5ae7927cd2b869ca4dc645169d8af5494a29c99afd0ea0f24dd00c811ab1d8b8 \ + --hash=sha256:5f21e1278c9456cd601832375c778ca44614d3433996488221a56572c223f04a \ + --hash=sha256:5fdf91a7c07f40e47b193f2acae0ed9da35d09325d7c3c3279f722b7cbf3d264 \ + --hash=sha256:62ab12fe03ffc49978d29de9c31bbb216610157f7e5ca8e172fed6642aead3be \ + --hash=sha256:632d2fdddd9fbe3ac8896a119fd18a71fc95ca9c4cbe5223096c142d8c4a2b1d \ + --hash=sha256:64a0c965a1e299c9b280006bdb15c276c427c45360aed676305dc36bcaa4d13c \ + --hash=sha256:67e013a17a3db4d98cc228fd5aeb36a51b0f5cf7330b9102a552060f1fe4e560 \ + --hash=sha256:6b639a19e1791b646d27f15d17530a51722cc728d43b2dff3aeb904f92d91bac \ + --hash=sha256:6b6e4bcfc32f831bfe3d6d8a5acedfbfd5e252a03c83fa24813b277a3a8a13ca \ + --hash=sha256:7539dbb8f705e13629ba6f23388976aad809e387f32a6e5c0712e4e8d9bfcce7 \ + --hash=sha256:758098b38c344d9a7f279baf0689261777e601f620078ef5afdc9bd3339965c3 \ + --hash=sha256:762206ba3bf1d6c8c9e0055871d3c0d5b074b7c3120193e6c067e7866f106ab1 \ + --hash=sha256:771c9a3851beaa617d8c8115d65f834a2b52490f42ee2b88b13f1fc5529e9e0c \ + --hash=sha256:81e7a27365b02fe70a77f1365376879917235b3fec551d19b4c91b51d0bc1d07 \ + --hash=sha256:8338db3c76833d02dc21c3e2c42534091341d26e4f7ba32c6032bb558a02e07b \ + --hash=sha256:8426f97117b914b9bfb2a7bd46edc148e8defda728a55a5df3a564abe70cd7a4 \ + --hash=sha256:842855bbb113a19c393c6de5aa6ed9a26c6b13c2fead5e49114d39f0d08b94d8 \ + --hash=sha256:87453d491369cd8018016d2714a13e8461975161703c18ee31eecf087a8ae5d4 \ + --hash=sha256:875fe8dffb43c20f68379ee098b035a7038d7903c795d46715f66575a7050b19 \ + --hash=sha256:8ad4dfda52e64af3202ceb2143a62deba97894b71c64a4405ee80f6b3ea77285 \ + --hash=sha256:8c48fc7458fe3a74dcdf56ba3534ff41bd421f69436df09ff3497fdaac18b431 \ + --hash=sha256:8cbb040fec8eddd5a6a75e737fd73c9ce37e51f94bacdd0b178d0174a4758395 \ + --hash=sha256:92d28a608127b357da47c99e0d0e0655ca2060286540fe9f2a25a2e8ac666e05 \ + --hash=sha256:931bf3d0705b2834fed29354f35170fa022fe22a95542b61b7c66aca5f8a224f \ + --hash=sha256:93bbd66f46dddc41e8c656130c97c0fb515e0fa44e1eebb2592769dbbd41b2f5 \ + --hash=sha256:9ad4640a409bc2b7d22b7921e7660f0db96c5c8c69fbb2e8f3261d4f71d33983 \ + --hash=sha256:a4366f264fa60d3c109f0b27af0cd9eb8d46746bd70bd3d9d425f035b6c7e286 \ + --hash=sha256:a73ed43d64209e853bba567a543170267a5cd64f359540b0ca2d597e329ba172 \ + --hash=sha256:a810a57ce5e8ecf8eac6ec4dab534ff80c34e5a2c31db60e992009cd20f58e0f \ + --hash=sha256:b4660943030406aaa40ec9f51960dd88049903d9536bc3c8ebb5cc4e1f119bbe \ + --hash=sha256:b8906f537978da3f7f0bd1ba37b69f6a877bb43312023b086582707d2835bf2f \ + --hash=sha256:b91bfef5daa2a5a4fe62f8d317fc91a626073639f951f851bd2cb252d01bc6c5 \ + --hash=sha256:ba1fc34d0b2f6fd53377a4c954116251eba6d076bf64f903311f4a7d27d10acd \ + --hash=sha256:ba235e00e0878ba1080b0f2a761f143b2a2d1c354f3d8e507fbf2f3de401bf18 \ + --hash=sha256:bb11809b0de643a292a82f728c494a2bbef0e30a7c42d37464abbd6bef7ca7b1 \ + --hash=sha256:c17b43fe9c6da16885e3fe28922bcd1a029e61631fb771c7d501019b40bcc904 \ + --hash=sha256:c1c21030ed494deb10226f90e2dbd84a012d59810c409832714a3dd576527be2 \ + --hash=sha256:c398a5a8e258dfdc5ea2aa4e5aa2ca3207f654a8eb268693dd1a76939074a588 \ + --hash=sha256:c637188b930175c256f13adbfc427b83ec7e64476d1ec9d6608f312bb84e06c3 \ + --hash=sha256:c7b4450093c0c909299770226fb0285be47b0a57545bae25b5c4e51566b0e587 \ + --hash=sha256:c8fd7a16f7a047e06c747cfcf2acef3ac316132df1c6077445b29ee6f3f3a70b \ + --hash=sha256:ca505fd3767a09a139737f3278bc8a485cb64043062da89bcba27e2f2ea78d33 \ + --hash=sha256:d1522025cda9e57329aade769f56e5793b2a5da7759a21914ee10e67e17e601e \ + --hash=sha256:d276280649305c1da6cdd84585d48ae1f0efa67434d8b10d2df95228e59a05bb \ + --hash=sha256:d33622dc63c295788eed09dbb1d11bed178909d3267b02d873116ee6be368244 \ + --hash=sha256:d4f2af3107fe4dc40c0d1a2409863f5249c6796398a1d83c1d99a0b3fa6cfb8d \ + --hash=sha256:d5469b347445d1c31105f33e7bfc9a8ba213d48e42641a610dda65bf9e3c83f5 \ + --hash=sha256:d80fd710b3307a3c63809048b72c536689b9b0b31a2518339c3f1a4d29c73d7a \ + --hash=sha256:d9bb9242b38a664f307b3b897f093896f7ed51ef4fe25a0502e5a368de9151ea \ + --hash=sha256:d9ceca96df54cb1675a0b7f52f1c6d5d1df62c5b40741ba211780f1b05a282a2 \ + --hash=sha256:dc2c00acdf68f1f69a476b770af311a7dc3955b7de228b04a40bcc51ac4d743b \ + --hash=sha256:dfdabdf8519c93908b2bf0f87c3f86f9e88bab279fb4acfd0907519ca5a1739f \ + --hash=sha256:e04919ffa9a728c446b27b6b625fa1d00ece221bdb9d633e978a7e0353a12c0e \ + --hash=sha256:e0abcce5e874474d3eab5ad53be03dae2abe651d248bdeaabe83708e82969e78 \ + --hash=sha256:e1c04fb380bc8efaae2fdf17ed6cd5d223da78a8b0b18a610f53d4c5d6e31dfd \ + --hash=sha256:e23dcdd4b2ff9c6b3317ea7921b210d39592f8ca1cdea58ada25b202c65c0a69 \ + --hash=sha256:e34a3e665d38d0749072e6565400c8ce9abae976e338919a0dfbfb0e1ba43068 \ + --hash=sha256:e6da2e0500742e0f157f005924a0589f2e2dcbfdd6cd0cc0abce367433e989be \ + --hash=sha256:e9aa4af6b879bb75a3c7766fbf49d77f4097dd12b548ecbbd8b3f85caa833281 \ + --hash=sha256:e9bbdba9e75b1a9ee1dd1335034dad998ef1acc08492226c6fd50aa773bdfa7d \ + --hash=sha256:e9d4293b21c69ee4f9e1a99ac4f772951d345611c614a0cfae2ec6b565279bc9 \ + --hash=sha256:eadd2417e83a77ce3ae4a0efd08cb0ebdfd317b6406d11020354a53ad458ec84 \ + --hash=sha256:ed0102146574e5e9f079b2e1a06e6b5b12a691f9c74a65b93b7f3d4feda566c6 \ + --hash=sha256:f0fb8efc9e579acf1e556fd86277fecec320c21ca9b5d39db96433ad8c45bc4a \ + --hash=sha256:f4e9946c8c7def17e4fcb5eddb14c4eb6ebc7f6f309075e6c8d23b133c104607 \ + --hash=sha256:f7649c8b8e4bd1ccc5fcbd51a855d57a617deeba19c66e3d04b1abecc61036b2 \ + --hash=sha256:f980a0640599a74f27fd9d50c84c293f1cb7afc2046c5c6d3efaf8ec7cdbc326 \ + --hash=sha256:f9dc2113e0cf0dd637751ca736186fca63664939ceb9f9f67e93ade88c69c0c9 \ + --hash=sha256:fde778947304e55fc732bc8ea5c6063e74244ac1808471cb498983a210aaf62c \ + --hash=sha256:fe23687924b25a2dee52fab15976fd6577ed8518072bcda9ff2e2b88ab1f168b # via # jsonschema # referencing -setuptools==75.5.0 \ - --hash=sha256:5c4ccb41111392671f02bb5f8436dfc5a9a7185e80500531b133f5775c4163ef \ - --hash=sha256:87cb777c3b96d638ca02031192d40390e0ad97737e27b6b4fa831bea86f2f829 +setuptools==75.6.0 \ + --hash=sha256:8199222558df7c86216af4f84c30e9b34a61d8ba19366cc914424cdbd28252f6 \ + --hash=sha256:ce74b49e8f7110f9bf04883b730f4765b774ef3ef28f722cce7c273d253aaf7d # via # documenteer # sphinxcontrib-bibtex @@ -1226,7 +1248,6 @@ six==1.16.0 \ --hash=sha256:8abb2f1d86890a2dfb989f9a77cfcfd3e47c2a354b01111771326f8aa26e0254 # via # -c requirements/main.txt - # asttokens # pybtex # python-dateutil # sphinxcontrib-redoc @@ -1427,18 +1448,18 @@ tomlkit==0.13.2 \ --hash=sha256:7a974427f6e119197f670fbbbeae7bef749a6c14e793db934baefc1b5f03efde \ --hash=sha256:fff5fe59a87295b278abd31bec92c15d9bc4a06885ab12bcea52c71119392e79 # via documenteer -tornado==6.4.1 \ - --hash=sha256:163b0aafc8e23d8cdc3c9dfb24c5368af84a81e3364745ccb4427669bf84aec8 \ - --hash=sha256:25486eb223babe3eed4b8aecbac33b37e3dd6d776bc730ca14e1bf93888b979f \ - --hash=sha256:454db8a7ecfcf2ff6042dde58404164d969b6f5d58b926da15e6b23817950fc4 \ - --hash=sha256:613bf4ddf5c7a95509218b149b555621497a6cc0d46ac341b30bd9ec19eac7f3 \ - --hash=sha256:6d5ce3437e18a2b66fbadb183c1d3364fb03f2be71299e7d10dbeeb69f4b2a14 \ - --hash=sha256:8ae50a504a740365267b2a8d1a90c9fbc86b780a39170feca9bcc1787ff80842 \ - --hash=sha256:92d3ab53183d8c50f8204a51e6f91d18a15d5ef261e84d452800d4ff6fc504e9 \ - --hash=sha256:a02a08cc7a9314b006f653ce40483b9b3c12cda222d6a46d4ac63bb6c9057698 \ - --hash=sha256:b24b8982ed444378d7f21d563f4180a2de31ced9d8d84443907a0a64da2072e7 \ - --hash=sha256:d9a566c40b89757c9aa8e6f032bcdb8ca8795d7c1a9762910c722b1635c9de4d \ - --hash=sha256:e2e20b9113cd7293f164dc46fffb13535266e713cdb87bd2d15ddb336e96cfc4 +tornado==6.4.2 \ + --hash=sha256:072ce12ada169c5b00b7d92a99ba089447ccc993ea2143c9ede887e0937aa803 \ + --hash=sha256:1a017d239bd1bb0919f72af256a970624241f070496635784d9bf0db640d3fec \ + --hash=sha256:2876cef82e6c5978fde1e0d5b1f919d756968d5b4282418f3146b79b58556482 \ + --hash=sha256:304463bd0772442ff4d0f5149c6f1c2135a1fae045adf070821c6cdc76980634 \ + --hash=sha256:908b71bf3ff37d81073356a5fadcc660eb10c1476ee6e2725588626ce7e5ca38 \ + --hash=sha256:92bad5b4746e9879fd7bf1eb21dce4e3fc5128d71601f80005afa39237ad620b \ + --hash=sha256:932d195ca9015956fa502c6b56af9eb06106140d844a335590c1ec7f5277d10c \ + --hash=sha256:bca9eb02196e789c9cb5c3c7c0f04fb447dc2adffd95265b2c7223a8a615ccbf \ + --hash=sha256:c36e62ce8f63409301537222faffcef7dfc5284f27eec227389f2ad11b09d946 \ + --hash=sha256:c82c46813ba483a385ab2a99caeaedf92585a1f90defb5693351fa7e4ea0bf73 \ + --hash=sha256:e828cce1123e9e44ae2a50a9de3055497ab1d0aeb440c5ac23064d9e44880da1 # via # ipykernel # jupyter-client diff --git a/requirements/main.txt b/requirements/main.txt index 489a168c0c..714a655a93 100644 --- a/requirements/main.txt +++ b/requirements/main.txt @@ -10,34 +10,32 @@ anyio==4.6.2.post1 \ # via # httpcore # starlette -bcrypt==4.2.0 \ - --hash=sha256:096a15d26ed6ce37a14c1ac1e48119660f21b24cba457f160a4b830f3fe6b5cb \ - --hash=sha256:0da52759f7f30e83f1e30a888d9163a81353ef224d82dc58eb5bb52efcabc399 \ - --hash=sha256:1bb429fedbe0249465cdd85a58e8376f31bb315e484f16e68ca4c786dcc04291 \ - --hash=sha256:1d84cf6d877918620b687b8fd1bf7781d11e8a0998f576c7aa939776b512b98d \ - --hash=sha256:1ee38e858bf5d0287c39b7a1fc59eec64bbf880c7d504d3a06a96c16e14058e7 \ - --hash=sha256:1ff39b78a52cf03fdf902635e4c81e544714861ba3f0efc56558979dd4f09170 \ - --hash=sha256:27fe0f57bb5573104b5a6de5e4153c60814c711b29364c10a75a54bb6d7ff48d \ - --hash=sha256:3413bd60460f76097ee2e0a493ccebe4a7601918219c02f503984f0a7ee0aebe \ - --hash=sha256:3698393a1b1f1fd5714524193849d0c6d524d33523acca37cd28f02899285060 \ - --hash=sha256:373db9abe198e8e2c70d12b479464e0d5092cc122b20ec504097b5f2297ed184 \ - --hash=sha256:39e1d30c7233cfc54f5c3f2c825156fe044efdd3e0b9d309512cc514a263ec2a \ - --hash=sha256:3bbbfb2734f0e4f37c5136130405332640a1e46e6b23e000eeff2ba8d005da68 \ - --hash=sha256:3d3a6d28cb2305b43feac298774b997e372e56c7c7afd90a12b3dc49b189151c \ - --hash=sha256:5a1e8aa9b28ae28020a3ac4b053117fb51c57a010b9f969603ed885f23841458 \ - --hash=sha256:61ed14326ee023917ecd093ee6ef422a72f3aec6f07e21ea5f10622b735538a9 \ - --hash=sha256:655ea221910bcac76ea08aaa76df427ef8625f92e55a8ee44fbf7753dbabb328 \ - --hash=sha256:762a2c5fb35f89606a9fde5e51392dad0cd1ab7ae64149a8b935fe8d79dd5ed7 \ - --hash=sha256:77800b7147c9dc905db1cba26abe31e504d8247ac73580b4aa179f98e6608f34 \ - --hash=sha256:8ac68872c82f1add6a20bd489870c71b00ebacd2e9134a8aa3f98a0052ab4b0e \ - --hash=sha256:8d7bb9c42801035e61c109c345a28ed7e84426ae4865511eb82e913df18f58c2 \ - --hash=sha256:8f6ede91359e5df88d1f5c1ef47428a4420136f3ce97763e31b86dd8280fbdf5 \ - --hash=sha256:9c1c4ad86351339c5f320ca372dfba6cb6beb25e8efc659bedd918d921956bae \ - --hash=sha256:c02d944ca89d9b1922ceb8a46460dd17df1ba37ab66feac4870f6862a1533c00 \ - --hash=sha256:c52aac18ea1f4a4f65963ea4f9530c306b56ccd0c6f8c8da0c06976e34a6e841 \ - --hash=sha256:cb2a8ec2bc07d3553ccebf0746bbf3d19426d1c6d1adbd4fa48925f66af7b9e8 \ - --hash=sha256:cf69eaf5185fd58f268f805b505ce31f9b9fc2d64b376642164e9244540c1221 \ - --hash=sha256:f4f4acf526fcd1c34e7ce851147deedd4e26e6402369304220250598b26448db +bcrypt==4.2.1 \ + --hash=sha256:041fa0155c9004eb98a232d54da05c0b41d4b8e66b6fc3cb71b4b3f6144ba837 \ + --hash=sha256:04e56e3fe8308a88b77e0afd20bec516f74aecf391cdd6e374f15cbed32783d6 \ + --hash=sha256:1340411a0894b7d3ef562fb233e4b6ed58add185228650942bdc885362f32c17 \ + --hash=sha256:533e7f3bcf2f07caee7ad98124fab7499cb3333ba2274f7a36cf1daee7409d99 \ + --hash=sha256:6765386e3ab87f569b276988742039baab087b2cdb01e809d74e74503c2faafe \ + --hash=sha256:687cf30e6681eeda39548a93ce9bfbb300e48b4d445a43db4298d2474d2a1e54 \ + --hash=sha256:76132c176a6d9953cdc83c296aeaed65e1a708485fd55abf163e0d9f8f16ce0e \ + --hash=sha256:76d3e352b32f4eeb34703370e370997065d28a561e4a18afe4fef07249cb4396 \ + --hash=sha256:807261df60a8b1ccd13e6599c779014a362ae4e795f5c59747f60208daddd96d \ + --hash=sha256:89df2aea2c43be1e1fa066df5f86c8ce822ab70a30e4c210968669565c0f4685 \ + --hash=sha256:8ad2f4528cbf0febe80e5a3a57d7a74e6635e41af1ea5675282a33d769fba413 \ + --hash=sha256:8c458cd103e6c5d1d85cf600e546a639f234964d0228909d8f8dbeebff82d526 \ + --hash=sha256:8dbd0747208912b1e4ce730c6725cb56c07ac734b3629b60d4398f082ea718ad \ + --hash=sha256:909faa1027900f2252a9ca5dfebd25fc0ef1417943824783d1c8418dd7d6df4a \ + --hash=sha256:aaa2e285be097050dba798d537b6efd9b698aa88eef52ec98d23dcd6d7cf6fea \ + --hash=sha256:adadd36274510a01f33e6dc08f5824b97c9580583bd4487c564fc4617b328005 \ + --hash=sha256:b1ee315739bc8387aa36ff127afc99120ee452924e0df517a8f3e4c0187a0f5f \ + --hash=sha256:b588af02b89d9fad33e5f98f7838bf590d6d692df7153647724a7f20c186f6bf \ + --hash=sha256:b7703ede632dc945ed1172d6f24e9f30f27b1b1a067f32f68bf169c5f08d0425 \ + --hash=sha256:c6f5fa3775966cca251848d4d5393ab016b3afed251163c1436fefdec3b02c84 \ + --hash=sha256:cde78d385d5e93ece5479a0a87f73cd6fa26b171c786a884f955e165032b262c \ + --hash=sha256:cfdf3d7530c790432046c40cda41dfee8c83e29482e6a604f8930b9930e94139 \ + --hash=sha256:e158009a54c4c8bc91d5e0da80920d048f918c61a581f0a63e4e93bb556d362f \ + --hash=sha256:e84e0e6f8e40a242b11bce56c313edc2be121cec3e0ec2d76fce01f6af33c07c \ + --hash=sha256:f85b1ffa09240c89aa2e1ae9f3b1c687104f7b2b9d2098da4e923f1b7082d331 # via phalanx (pyproject.toml) certifi==2024.8.30 \ --hash=sha256:922820b53db7a7257ffbda3f597266d435245903d80737e34f8a45ff3e3230d8 \ @@ -380,109 +378,120 @@ pycparser==2.22 ; platform_python_implementation != 'PyPy' \ --hash=sha256:491c8be9c040f5390f5bf44a5b07752bd07f56edf992381b05c701439eec10f6 \ --hash=sha256:c3702b6d3dd8c7abc1afa565d7e63d53a1d0bd86cdc24edd75470f4de499cfcc # via cffi -pydantic==2.9.2 \ - --hash=sha256:d155cef71265d1e9807ed1c32b4c8deec042a44a50a4188b25ac67ecd81a9c0f \ - --hash=sha256:f048cec7b26778210e28a0459867920654d48e5e62db0958433636cde4254f12 +pydantic==2.10.2 \ + --hash=sha256:2bc2d7f17232e0841cbba4641e65ba1eb6fafb3a08de3a091ff3ce14a197c4fa \ + --hash=sha256:cfb96e45951117c3024e6b67b25cdc33a3cb7b2fa62e239f7af1378358a1d99e # via # phalanx (pyproject.toml) # fastapi # safir -pydantic-core==2.23.4 \ - --hash=sha256:0a7df63886be5e270da67e0966cf4afbae86069501d35c8c1b3b6c168f42cb36 \ - --hash=sha256:0cb3da3fd1b6a5d0279a01877713dbda118a2a4fc6f0d821a57da2e464793f05 \ - --hash=sha256:0dbd8dbed2085ed23b5c04afa29d8fd2771674223135dc9bc937f3c09284d071 \ - --hash=sha256:0dff76e0602ca7d4cdaacc1ac4c005e0ce0dcfe095d5b5259163a80d3a10d327 \ - --hash=sha256:1278e0d324f6908e872730c9102b0112477a7f7cf88b308e4fc36ce1bdb6d58c \ - --hash=sha256:128585782e5bfa515c590ccee4b727fb76925dd04a98864182b22e89a4e6ed36 \ - --hash=sha256:1498bec4c05c9c787bde9125cfdcc63a41004ff167f495063191b863399b1a29 \ - --hash=sha256:19442362866a753485ba5e4be408964644dd6a09123d9416c54cd49171f50744 \ - --hash=sha256:1b84d168f6c48fabd1f2027a3d1bdfe62f92cade1fb273a5d68e621da0e44e6d \ - --hash=sha256:1e90d2e3bd2c3863d48525d297cd143fe541be8bbf6f579504b9712cb6b643ec \ - --hash=sha256:20152074317d9bed6b7a95ade3b7d6054845d70584216160860425f4fbd5ee9e \ - --hash=sha256:216f9b2d7713eb98cb83c80b9c794de1f6b7e3145eef40400c62e86cee5f4e1e \ - --hash=sha256:233710f069d251feb12a56da21e14cca67994eab08362207785cf8c598e74577 \ - --hash=sha256:255a8ef062cbf6674450e668482456abac99a5583bbafb73f9ad469540a3a232 \ - --hash=sha256:2584f7cf844ac4d970fba483a717dbe10c1c1c96a969bf65d61ffe94df1b2863 \ - --hash=sha256:2971bb5ffe72cc0f555c13e19b23c85b654dd2a8f7ab493c262071377bfce9f6 \ - --hash=sha256:29d2c342c4bc01b88402d60189f3df065fb0dda3654744d5a165a5288a657368 \ - --hash=sha256:2e203fdf807ac7e12ab59ca2bfcabb38c7cf0b33c41efeb00f8e5da1d86af480 \ - --hash=sha256:33e3d65a85a2a4a0dc3b092b938a4062b1a05f3a9abde65ea93b233bca0e03f2 \ - --hash=sha256:374a5e5049eda9e0a44c696c7ade3ff355f06b1fe0bb945ea3cac2bc336478a2 \ - --hash=sha256:37b0fe330e4a58d3c58b24d91d1eb102aeec675a3db4c292ec3928ecd892a9a6 \ - --hash=sha256:3d5639516376dce1940ea36edf408c554475369f5da2abd45d44621cb616f769 \ - --hash=sha256:42c6dcb030aefb668a2b7009c85b27f90e51e6a3b4d5c9bc4c57631292015b0d \ - --hash=sha256:4a7cd62e831afe623fbb7aabbb4fe583212115b3ef38a9f6b71869ba644624a2 \ - --hash=sha256:4ba762ed58e8d68657fc1281e9bb72e1c3e79cc5d464be146e260c541ec12d84 \ - --hash=sha256:4fc714bdbfb534f94034efaa6eadd74e5b93c8fa6315565a222f7b6f42ca1166 \ - --hash=sha256:4ffa2ebd4c8530079140dd2d7f794a9d9a73cbb8e9d59ffe24c63436efa8f271 \ - --hash=sha256:5a1504ad17ba4210df3a045132a7baeeba5a200e930f57512ee02909fc5c4cb5 \ - --hash=sha256:5c364564d17da23db1106787675fc7af45f2f7b58b4173bfdd105564e132e6fb \ - --hash=sha256:5e11661ce0fd30a6790e8bcdf263b9ec5988e95e63cf901972107efc49218b13 \ - --hash=sha256:5f54b118ce5de9ac21c363d9b3caa6c800341e8c47a508787e5868c6b79c9323 \ - --hash=sha256:5f5ff8d839f4566a474a969508fe1c5e59c31c80d9e140566f9a37bba7b8d556 \ - --hash=sha256:61817945f2fe7d166e75fbfb28004034b48e44878177fc54d81688e7b85a3665 \ - --hash=sha256:624e278a7d29b6445e4e813af92af37820fafb6dcc55c012c834f9e26f9aaaef \ - --hash=sha256:63e46b3169866bd62849936de036f901a9356e36376079b05efa83caeaa02ceb \ - --hash=sha256:6531b7ca5f951d663c339002e91aaebda765ec7d61b7d1e3991051906ddde119 \ - --hash=sha256:68665f4c17edcceecc112dfed5dbe6f92261fb9d6054b47d01bf6371a6196126 \ - --hash=sha256:696dd8d674d6ce621ab9d45b205df149399e4bb9aa34102c970b721554828510 \ - --hash=sha256:6f783e0ec4803c787bcea93e13e9932edab72068f68ecffdf86a99fd5918878b \ - --hash=sha256:723314c1d51722ab28bfcd5240d858512ffd3116449c557a1336cbe3919beb87 \ - --hash=sha256:74b9127ffea03643e998e0c5ad9bd3811d3dac8c676e47db17b0ee7c3c3bf35f \ - --hash=sha256:7530e201d10d7d14abce4fb54cfe5b94a0aefc87da539d0346a484ead376c3cc \ - --hash=sha256:77733e3892bb0a7fa797826361ce8a9184d25c8dffaec60b7ffe928153680ba8 \ - --hash=sha256:78ddaaa81421a29574a682b3179d4cf9e6d405a09b99d93ddcf7e5239c742e21 \ - --hash=sha256:7c9129eb40958b3d4500fa2467e6a83356b3b61bfff1b414c7361d9220f9ae8f \ - --hash=sha256:7d32706badfe136888bdea71c0def994644e09fff0bfe47441deaed8e96fdbc6 \ - --hash=sha256:81965a16b675b35e1d09dd14df53f190f9129c0202356ed44ab2728b1c905658 \ - --hash=sha256:8394d940e5d400d04cad4f75c0598665cbb81aecefaca82ca85bd28264af7f9b \ - --hash=sha256:86d2f57d3e1379a9525c5ab067b27dbb8a0642fb5d454e17a9ac434f9ce523e3 \ - --hash=sha256:883a91b5dd7d26492ff2f04f40fbb652de40fcc0afe07e8129e8ae779c2110eb \ - --hash=sha256:88ad334a15b32a791ea935af224b9de1bf99bcd62fabf745d5f3442199d86d59 \ - --hash=sha256:9261d3ce84fa1d38ed649c3638feefeae23d32ba9182963e465d58d62203bd24 \ - --hash=sha256:97df63000f4fea395b2824da80e169731088656d1818a11b95f3b173747b6cd9 \ - --hash=sha256:98d134c954828488b153d88ba1f34e14259284f256180ce659e8d83e9c05eaa3 \ - --hash=sha256:996a38a83508c54c78a5f41456b0103c30508fed9abcad0a59b876d7398f25fd \ - --hash=sha256:9a5bce9d23aac8f0cf0836ecfc033896aa8443b501c58d0602dbfd5bd5b37753 \ - --hash=sha256:9a6b5099eeec78827553827f4c6b8615978bb4b6a88e5d9b93eddf8bb6790f55 \ - --hash=sha256:9d18368b137c6295db49ce7218b1a9ba15c5bc254c96d7c9f9e924a9bc7825ad \ - --hash=sha256:a4fa4fc04dff799089689f4fd502ce7d59de529fc2f40a2c8836886c03e0175a \ - --hash=sha256:a5c7ba8ffb6d6f8f2ab08743be203654bb1aaa8c9dcb09f82ddd34eadb695605 \ - --hash=sha256:aea443fffa9fbe3af1a9ba721a87f926fe548d32cab71d188a6ede77d0ff244e \ - --hash=sha256:b10bd51f823d891193d4717448fab065733958bdb6a6b351967bd349d48d5c9b \ - --hash=sha256:ba1a0996f6c2773bd83e63f18914c1de3c9dd26d55f4ac302a7efe93fb8e7433 \ - --hash=sha256:bb2802e667b7051a1bebbfe93684841cc9351004e2badbd6411bf357ab8d5ac8 \ - --hash=sha256:cfdd16ab5e59fc31b5e906d1a3f666571abc367598e3e02c83403acabc092e07 \ - --hash=sha256:d06b0c8da4f16d1d1e352134427cb194a0a6e19ad5db9161bf32b2113409e728 \ - --hash=sha256:d0776dea117cf5272382634bd2a5c1b6eb16767c223c6a5317cd3e2a757c61a0 \ - --hash=sha256:d18ca8148bebe1b0a382a27a8ee60350091a6ddaf475fa05ef50dc35b5df6327 \ - --hash=sha256:d4488a93b071c04dc20f5cecc3631fc78b9789dd72483ba15d423b5b3689b555 \ - --hash=sha256:d5f7a395a8cf1621939692dba2a6b6a830efa6b3cee787d82c7de1ad2930de64 \ - --hash=sha256:d7a80d21d613eec45e3d41eb22f8f94ddc758a6c4720842dc74c0581f54993d6 \ - --hash=sha256:d97683ddee4723ae8c95d1eddac7c192e8c552da0c73a925a89fa8649bf13eea \ - --hash=sha256:dcedcd19a557e182628afa1d553c3895a9f825b936415d0dbd3cd0bbcfd29b4b \ - --hash=sha256:de6d1d1b9e5101508cb37ab0d972357cac5235f5c6533d1071964c47139257df \ - --hash=sha256:df49e7a0861a8c36d089c1ed57d308623d60416dab2647a4a17fe050ba85de0e \ - --hash=sha256:df933278128ea1cd77772673c73954e53a1c95a4fdf41eef97c2b779271bd0bd \ - --hash=sha256:e08277a400de01bc72436a0ccd02bdf596631411f592ad985dcee21445bd0068 \ - --hash=sha256:e38e63e6f3d1cec5a27e0afe90a085af8b6806ee208b33030e65b6516353f1a3 \ - --hash=sha256:e55541f756f9b3ee346b840103f32779c695a19826a4c442b7954550a0972040 \ - --hash=sha256:ec4e55f79b1c4ffb2eecd8a0cfba9955a2588497d96851f4c8f99aa4a1d39b12 \ - --hash=sha256:ed1a53de42fbe34853ba90513cea21673481cd81ed1be739f7f2efb931b24916 \ - --hash=sha256:ed541d70698978a20eb63d8c5d72f2cc6d7079d9d90f6b50bad07826f1320f5f \ - --hash=sha256:f09e2ff1f17c2b51f2bc76d1cc33da96298f0a036a137f5440ab3ec5360b624f \ - --hash=sha256:f220b0eea5965dec25480b6333c788fb72ce5f9129e8759ef876a1d805d00801 \ - --hash=sha256:f3e0da4ebaef65158d4dfd7d3678aad692f7666877df0002b8a522cdf088f231 \ - --hash=sha256:f455ee30a9d61d3e1a15abd5068827773d6e4dc513e795f380cdd59932c782d5 \ - --hash=sha256:f5ef8f42bec47f21d07668a043f077d507e5bf4e668d5c6dfe6aaba89de1a5b8 \ - --hash=sha256:f69a8e0b033b747bb3e36a44e7732f0c99f7edd5cea723d45bc0d6e95377ffee \ - --hash=sha256:ff02b6d461a6de369f07ec15e465a88895f3223eb75073ffea56b84d9331f607 +pydantic-core==2.27.1 \ + --hash=sha256:00e6424f4b26fe82d44577b4c842d7df97c20be6439e8e685d0d715feceb9fb9 \ + --hash=sha256:029d9757eb621cc6e1848fa0b0310310de7301057f623985698ed7ebb014391b \ + --hash=sha256:02a3d637bd387c41d46b002f0e49c52642281edacd2740e5a42f7017feea3f2c \ + --hash=sha256:0325336f348dbee6550d129b1627cb8f5351a9dc91aad141ffb96d4937bd9529 \ + --hash=sha256:062f60e512fc7fff8b8a9d680ff0ddaaef0193dba9fa83e679c0c5f5fbd018bc \ + --hash=sha256:0b3dfe500de26c52abe0477dde16192ac39c98f05bf2d80e76102d394bd13854 \ + --hash=sha256:0e4216e64d203e39c62df627aa882f02a2438d18a5f21d7f721621f7a5d3611d \ + --hash=sha256:121ceb0e822f79163dd4699e4c54f5ad38b157084d97b34de8b232bcaad70278 \ + --hash=sha256:159cac0a3d096f79ab6a44d77a961917219707e2a130739c64d4dd46281f5c2a \ + --hash=sha256:15aae984e46de8d376df515f00450d1522077254ef6b7ce189b38ecee7c9677c \ + --hash=sha256:15cc53a3179ba0fcefe1e3ae50beb2784dede4003ad2dfd24f81bba4b23a454f \ + --hash=sha256:161c27ccce13b6b0c8689418da3885d3220ed2eae2ea5e9b2f7f3d48f1d52c27 \ + --hash=sha256:19910754e4cc9c63bc1c7f6d73aa1cfee82f42007e407c0f413695c2f7ed777f \ + --hash=sha256:1ba5e3963344ff25fc8c40da90f44b0afca8cfd89d12964feb79ac1411a260ac \ + --hash=sha256:1c00666a3bd2f84920a4e94434f5974d7bbc57e461318d6bb34ce9cdbbc1f6b2 \ + --hash=sha256:1c39b07d90be6b48968ddc8c19e7585052088fd7ec8d568bb31ff64c70ae3c97 \ + --hash=sha256:206b5cf6f0c513baffaeae7bd817717140770c74528f3e4c3e1cec7871ddd61a \ + --hash=sha256:258c57abf1188926c774a4c94dd29237e77eda19462e5bb901d88adcab6af919 \ + --hash=sha256:2cdf7d86886bc6982354862204ae3b2f7f96f21a3eb0ba5ca0ac42c7b38598b9 \ + --hash=sha256:2d4567c850905d5eaaed2f7a404e61012a51caf288292e016360aa2b96ff38d4 \ + --hash=sha256:35c14ac45fcfdf7167ca76cc80b2001205a8d5d16d80524e13508371fb8cdd9c \ + --hash=sha256:38de0a70160dd97540335b7ad3a74571b24f1dc3ed33f815f0880682e6880131 \ + --hash=sha256:3af385b0cee8df3746c3f406f38bcbfdc9041b5c2d5ce3e5fc6637256e60bbc5 \ + --hash=sha256:3b748c44bb9f53031c8cbc99a8a061bc181c1000c60a30f55393b6e9c45cc5bd \ + --hash=sha256:3bbd5d8cc692616d5ef6fbbbd50dbec142c7e6ad9beb66b78a96e9c16729b089 \ + --hash=sha256:3ccaa88b24eebc0f849ce0a4d09e8a408ec5a94afff395eb69baf868f5183107 \ + --hash=sha256:3fa80ac2bd5856580e242dbc202db873c60a01b20309c8319b5c5986fbe53ce6 \ + --hash=sha256:4228b5b646caa73f119b1ae756216b59cc6e2267201c27d3912b592c5e323b60 \ + --hash=sha256:42b0e23f119b2b456d07ca91b307ae167cc3f6c846a7b169fca5326e32fdc6cf \ + --hash=sha256:45cf8588c066860b623cd11c4ba687f8d7175d5f7ef65f7129df8a394c502de5 \ + --hash=sha256:45d9c5eb9273aa50999ad6adc6be5e0ecea7e09dbd0d31bd0c65a55a2592ca08 \ + --hash=sha256:4603137322c18eaf2e06a4495f426aa8d8388940f3c457e7548145011bb68e05 \ + --hash=sha256:46ccfe3032b3915586e469d4972973f893c0a2bb65669194a5bdea9bacc088c2 \ + --hash=sha256:4fefee876e07a6e9aad7a8c8c9f85b0cdbe7df52b8a9552307b09050f7512c7e \ + --hash=sha256:5556470f1a2157031e676f776c2bc20acd34c1990ca5f7e56f1ebf938b9ab57c \ + --hash=sha256:57866a76e0b3823e0b56692d1a0bf722bffb324839bb5b7226a7dbd6c9a40b17 \ + --hash=sha256:5897bec80a09b4084aee23f9b73a9477a46c3304ad1d2d07acca19723fb1de62 \ + --hash=sha256:58ca98a950171f3151c603aeea9303ef6c235f692fe555e883591103da709b23 \ + --hash=sha256:5ca038c7f6a0afd0b2448941b6ef9d5e1949e999f9e5517692eb6da58e9d44be \ + --hash=sha256:5f6c8a66741c5f5447e047ab0ba7a1c61d1e95580d64bce852e3df1f895c4067 \ + --hash=sha256:5f8c4718cd44ec1580e180cb739713ecda2bdee1341084c1467802a417fe0f02 \ + --hash=sha256:5fde892e6c697ce3e30c61b239330fc5d569a71fefd4eb6512fc6caec9dd9e2f \ + --hash=sha256:62a763352879b84aa31058fc931884055fd75089cccbd9d58bb6afd01141b235 \ + --hash=sha256:62ba45e21cf6571d7f716d903b5b7b6d2617e2d5d67c0923dc47b9d41369f840 \ + --hash=sha256:64c65f40b4cd8b0e049a8edde07e38b476da7e3aaebe63287c899d2cff253fa5 \ + --hash=sha256:655d7dd86f26cb15ce8a431036f66ce0318648f8853d709b4167786ec2fa4807 \ + --hash=sha256:66ff044fd0bb1768688aecbe28b6190f6e799349221fb0de0e6f4048eca14c16 \ + --hash=sha256:672ebbe820bb37988c4d136eca2652ee114992d5d41c7e4858cdd90ea94ffe5c \ + --hash=sha256:6b9af86e1d8e4cfc82c2022bfaa6f459381a50b94a29e95dcdda8442d6d83864 \ + --hash=sha256:6e0bd57539da59a3e4671b90a502da9a28c72322a4f17866ba3ac63a82c4498e \ + --hash=sha256:71a5e35c75c021aaf400ac048dacc855f000bdfed91614b4a726f7432f1f3d6a \ + --hash=sha256:7597c07fbd11515f654d6ece3d0e4e5093edc30a436c63142d9a4b8e22f19c35 \ + --hash=sha256:764be71193f87d460a03f1f7385a82e226639732214b402f9aa61f0d025f0737 \ + --hash=sha256:7699b1df36a48169cdebda7ab5a2bac265204003f153b4bd17276153d997670a \ + --hash=sha256:7ccebf51efc61634f6c2344da73e366c75e735960b5654b63d7e6f69a5885fa3 \ + --hash=sha256:7f7059ca8d64fea7f238994c97d91f75965216bcbe5f695bb44f354893f11d52 \ + --hash=sha256:8065914ff79f7eab1599bd80406681f0ad08f8e47c880f17b416c9f8f7a26d05 \ + --hash=sha256:816f5aa087094099fff7edabb5e01cc370eb21aa1a1d44fe2d2aefdfb5599b31 \ + --hash=sha256:81f2ec23ddc1b476ff96563f2e8d723830b06dceae348ce02914a37cb4e74b89 \ + --hash=sha256:84286494f6c5d05243456e04223d5a9417d7f443c3b76065e75001beb26f88de \ + --hash=sha256:8bf7b66ce12a2ac52d16f776b31d16d91033150266eb796967a7e4621707e4f6 \ + --hash=sha256:8f1edcea27918d748c7e5e4d917297b2a0ab80cad10f86631e488b7cddf76a36 \ + --hash=sha256:981fb88516bd1ae8b0cbbd2034678a39dedc98752f264ac9bc5839d3923fa04c \ + --hash=sha256:98476c98b02c8e9b2eec76ac4156fd006628b1b2d0ef27e548ffa978393fd154 \ + --hash=sha256:992cea5f4f3b29d6b4f7f1726ed8ee46c8331c6b4eed6db5b40134c6fe1768bb \ + --hash=sha256:9a3b0793b1bbfd4146304e23d90045f2a9b5fd5823aa682665fbdaf2a6c28f3e \ + --hash=sha256:9a42d6a8156ff78981f8aa56eb6394114e0dedb217cf8b729f438f643608cbcd \ + --hash=sha256:9c10c309e18e443ddb108f0ef64e8729363adbfd92d6d57beec680f6261556f3 \ + --hash=sha256:9cbd94fc661d2bab2bc702cddd2d3370bbdcc4cd0f8f57488a81bcce90c7a54f \ + --hash=sha256:9fdcf339322a3fae5cbd504edcefddd5a50d9ee00d968696846f089b4432cf78 \ + --hash=sha256:a0697803ed7d4af5e4c1adf1670af078f8fcab7a86350e969f454daf598c4960 \ + --hash=sha256:a28af0695a45f7060e6f9b7092558a928a28553366519f64083c63a44f70e618 \ + --hash=sha256:a2e02889071850bbfd36b56fd6bc98945e23670773bc7a76657e90e6b6603c08 \ + --hash=sha256:a33cd6ad9017bbeaa9ed78a2e0752c5e250eafb9534f308e7a5f7849b0b1bfb4 \ + --hash=sha256:a3cb37038123447cf0f3ea4c74751f6a9d7afef0eb71aa07bf5f652b5e6a132c \ + --hash=sha256:a57847b090d7892f123726202b7daa20df6694cbd583b67a592e856bff603d6c \ + --hash=sha256:a5a8e19d7c707c4cadb8c18f5f60c843052ae83c20fa7d44f41594c644a1d330 \ + --hash=sha256:ac3b20653bdbe160febbea8aa6c079d3df19310d50ac314911ed8cc4eb7f8cb8 \ + --hash=sha256:ac6c2c45c847bbf8f91930d88716a0fb924b51e0c6dad329b793d670ec5db792 \ + --hash=sha256:acc07b2cfc5b835444b44a9956846b578d27beeacd4b52e45489e93276241025 \ + --hash=sha256:aee66be87825cdf72ac64cb03ad4c15ffef4143dbf5c113f64a5ff4f81477bf9 \ + --hash=sha256:af52d26579b308921b73b956153066481f064875140ccd1dfd4e77db89dbb12f \ + --hash=sha256:b94d4ba43739bbe8b0ce4262bcc3b7b9f31459ad120fb595627eaeb7f9b9ca01 \ + --hash=sha256:ba630d5e3db74c79300d9a5bdaaf6200172b107f263c98a0539eeecb857b2337 \ + --hash=sha256:bed0f8a0eeea9fb72937ba118f9db0cb7e90773462af7962d382445f3005e5a4 \ + --hash=sha256:bf99c8404f008750c846cb4ac4667b798a9f7de673ff719d705d9b2d6de49c5f \ + --hash=sha256:c3027001c28434e7ca5a6e1e527487051136aa81803ac812be51802150d880dd \ + --hash=sha256:c65af9088ac534313e1963443d0ec360bb2b9cba6c2909478d22c2e363d98a51 \ + --hash=sha256:d0165ab2914379bd56908c02294ed8405c252250668ebcb438a55494c69f44ab \ + --hash=sha256:d1b26e1dff225c31897696cab7d4f0a315d4c0d9e8666dbffdb28216f3b17fdc \ + --hash=sha256:d950caa237bb1954f1b8c9227b5065ba6875ac9771bb8ec790d956a699b78676 \ + --hash=sha256:dc61505e73298a84a2f317255fcc72b710b72980f3a1f670447a21efc88f8381 \ + --hash=sha256:e173486019cc283dc9778315fa29a363579372fe67045e971e89b6365cc035ed \ + --hash=sha256:e1f735dc43da318cad19b4173dd1ffce1d84aafd6c9b782b3abc04a0d5a6f5bb \ + --hash=sha256:e9386266798d64eeb19dd3677051f5705bf873e98e15897ddb7d76f477131967 \ + --hash=sha256:f216dbce0e60e4d03e0c4353c7023b202d95cbaeff12e5fd2e82ea0a66905073 \ + --hash=sha256:f4e5658dbffe8843a0f12366a4c2d1c316dbe09bb4dfbdc9d2d9cd6031de8aae \ + --hash=sha256:f5a823165e6d04ccea61a9f0576f345f8ce40ed533013580e087bd4d7442b52c \ + --hash=sha256:f69ed81ab24d5a3bd93861c8c4436f54afdf8e8cc421562b0c7504cf3be58206 \ + --hash=sha256:f82d068a2d6ecfc6e054726080af69a6764a10015467d7d7b9f66d6ed5afa23b # via # pydantic # safir -pyjwt==2.10.0 \ - --hash=sha256:543b77207db656de204372350926bed5a86201c4cbff159f623f79c7bb487a15 \ - --hash=sha256:7628a7eb7938959ac1b26e819a1df0fd3259505627b575e4bad6d08f76db695c +pyjwt==2.10.1 \ + --hash=sha256:3cc5772eb20009233caf06e9d8a0577824723b44e6648ee0a2aedb6cf9381953 \ + --hash=sha256:dcdd193e30abefd5debf142f9adfcdd2b58004e644f25406ffaebd50bd98dacb # via gidgethub python-dateutil==2.9.0.post0 \ --hash=sha256:37dd54208da7e1cd875388217d5e00ebd4179249f90fb72437e91a35459a0ad3 \ @@ -574,9 +583,9 @@ sniffio==1.3.1 \ # anyio # httpcore # httpx -starlette==0.41.2 \ - --hash=sha256:9834fd799d1a87fd346deb76158668cfa0b0d56f85caefe8268e2d97c3468b62 \ - --hash=sha256:fbc189474b4731cf30fcef52f18a8d070e3f3b46c6a04c97579e85e6ffca942d +starlette==0.41.3 \ + --hash=sha256:0e4ab3d16522a255be6b28260b938eae2482f98ce5cc934cb08dce8dc3ba5835 \ + --hash=sha256:44cedb2b7c77a9de33a8b74b2b90e9f50d11fcf25d8270ea525ad71a25374ff7 # via # fastapi # safir diff --git a/requirements/tox.txt b/requirements/tox.txt index a3206bec05..136300fdd7 100644 --- a/requirements/tox.txt +++ b/requirements/tox.txt @@ -60,27 +60,27 @@ tox-uv==1.16.0 \ --hash=sha256:71b2e2fa6c35c1360b91a302df1d65b3e5a1f656b321c5ebf7b84545804c9f01 \ --hash=sha256:e6f0b525a687e745ab878d07cbf5c7e85d582028d4a7c8935f95e84350651432 # via -r requirements/tox.in -uv==0.5.2 \ - --hash=sha256:15c7ffa08ae21abd221dbdf9ba25c8969235f587cec6df8035552434e5ca1cc5 \ - --hash=sha256:2597e91be45b3f4458d0d16a5a1cda7e93af7d6dbfddf251aae5377f9187fa88 \ - --hash=sha256:27d666da8fbb0f87d9df67abf9feea0da4ee1336730f2c4be29a11f3feaa0a29 \ - --hash=sha256:374e9498e155fcaa8728a6770b84f03781106d705332f4ec059e1cc93c8f4d8a \ - --hash=sha256:5052758d374dd769efd0c70b4789ffb08439567eb114ad8fe728536bb5cc5299 \ - --hash=sha256:675ca34829ceca3e9de395cf05e8f881334a24488f97dd923c463830270d52a7 \ - --hash=sha256:67776d34cba359c63919c5ad50331171261d2ec7a83fd07f032eb8cc22e22b8e \ - --hash=sha256:71467545d51883d1af7094c8f6da69b55e7d49b742c2dc707d644676dcb66515 \ - --hash=sha256:772b32d157ec8f27c0099ecac94cf5cd298bce72f1a1f512205591de4e9f0c5c \ - --hash=sha256:7bde66f13571e437fd45f32f5742ab53d5e011b4edb1c74cb74cb8b1cbb828b5 \ - --hash=sha256:89e60ad9601f35f187326de84f35e7517c6eb1438359da42ec85cfd9c1895957 \ - --hash=sha256:a4d4fdad03e6dc3e8216192b8a12bcf2c71c8b12046e755575c7f262cbb61924 \ - --hash=sha256:a8a9897dd7657258c53f41aecdbe787da99f4fc0775f19826ab65cc0a7136cbf \ - --hash=sha256:c9795b990fb0b2a18d3a8cef8822e13c6a6f438bc16d34ccf01d931c76cfd5da \ - --hash=sha256:cfba5b0070652da4174083b78852f3ab3d262ba1c8b63a4d5ae497263b02b834 \ - --hash=sha256:d0834c6b37750c045bbea80600d3ae3e95becc4db148f5c0d0bc3ec6a7924e8f \ - --hash=sha256:d1fe4e025dbb9ec5c9250bfc1231847b8487706538f94d10c769f0a54db3e0af \ - --hash=sha256:dfcd8275ff8cb59d5f26f826a44270b2fe8f38aa7188d7355c48d3e9b759d0c0 +uv==0.5.5 \ + --hash=sha256:0314a4b9a25bf00afe4e5472c338c8c6bd34688c23d63ce1ad35462cf087b492 \ + --hash=sha256:0f7f04ae5a5430873d8610d8ea0a5d35df92e60bf701f80b3cf24857e0ac5e72 \ + --hash=sha256:29286cd6b9f8e040d02894a67c6b6304811ea393ca9dfade109e93cf4b3b842c \ + --hash=sha256:34e894c922ba29a59bbe812a458a7095a575f76b87dfc362e0c3f4f650d6f631 \ + --hash=sha256:365715e7247c2cd8ef661e8f96927b181248f689c07e48b076c9dbc78a4a0877 \ + --hash=sha256:3dee9517ebba13d07d8f139c439c5ff63e438d31ebda4d7eb0af8d0f0cc6a181 \ + --hash=sha256:553901e95cb5a4da1da19e288c29c5f886793f981750400e5cef48e3031b970b \ + --hash=sha256:59d53cce11718ce5d5367afc8c93ebcfc5e1cddfa4a44aedbf08d08d9b738381 \ + --hash=sha256:5a47345ccafc0105b2f0cc22fcb0bb05be4d0e60df67f5beea28069b0bb372c8 \ + --hash=sha256:69e15f24493d86c3a2da3764891e35a033ceda09404c1f9b386671d509db95f3 \ + --hash=sha256:7f8db4bdf7eaef6be271457c4b2a167f41ad115434944a09f5034018a29b4093 \ + --hash=sha256:9af7018430da1f0960eee1592c820c343e2619f2d71f66c3be62da330826c537 \ + --hash=sha256:a4f0c7647187044056dc6f6f5d31b01f445d8695eb7d2f442b29fd5c9216a56f \ + --hash=sha256:b55d507bfe2bd2330c41680e4b0077972381f40975a59b53007254196abc4477 \ + --hash=sha256:d091e88a9c2c830169c3ccf95fd972759e0ab629dacc2d5eff525e5ba3583904 \ + --hash=sha256:f0bfc7ced2fe0c85b3070dfa219072a1406133e18aab2f2fe10b6455ede0f8b2 \ + --hash=sha256:f4e9ddcffc29f009f692cda699912b02f6a12089d741b71d2fcd0b181eb71c5d \ + --hash=sha256:f5569798fc8eaad58fbb4fb70ced8f09ebe607fbbfb95fa42c559f57bbe0cabd # via tox-uv -virtualenv==20.27.1 \ - --hash=sha256:142c6be10212543b32c6c45d3d3893dff89112cc588b7d0879ae5a1ec03a47ba \ - --hash=sha256:f11f1b8a29525562925f745563bfd48b189450f61fb34c4f9cc79dd5aa32a1f4 +virtualenv==20.28.0 \ + --hash=sha256:23eae1b4516ecd610481eda647f3a7c09aea295055337331bb4e6892ecce47b0 \ + --hash=sha256:2c9c3262bb8e7b87ea801d715fae4495e6032450c71d2309be9550e7364049aa # via tox diff --git a/ruff-shared.toml b/ruff-shared.toml index dc46f19b43..3617fad62c 100644 --- a/ruff-shared.toml +++ b/ruff-shared.toml @@ -57,9 +57,9 @@ ignore = [ "S607", # using PATH is not a security vulnerability "SIM102", # sometimes the formatting of nested if statements is clearer "SIM117", # sometimes nested with contexts are clearer - "TCH001", # we decided to not maintain separate TYPE_CHECKING blocks - "TCH002", # we decided to not maintain separate TYPE_CHECKING blocks - "TCH003", # we decided to not maintain separate TYPE_CHECKING blocks + "TC001", # we decided to not maintain separate TYPE_CHECKING blocks + "TC002", # we decided to not maintain separate TYPE_CHECKING blocks + "TC003", # we decided to not maintain separate TYPE_CHECKING blocks "TD003", # we don't require issues be created for TODOs "TID252", # if we're going to use relative imports, use them always "TRY003", # good general advice but lint is way too aggressive diff --git a/src/phalanx/cli.py b/src/phalanx/cli.py index fb1a6c4ba8..5401b4ee2f 100644 --- a/src/phalanx/cli.py +++ b/src/phalanx/cli.py @@ -34,8 +34,6 @@ P = ParamSpec("P") __all__ = [ - "main", - "help", "application", "application_add_helm_repos", "application_create", @@ -47,6 +45,8 @@ "environment_lint", "environment_schema", "environment_template", + "help", + "main", "secrets", "secrets_audit", "secrets_list", diff --git a/starters/fastapi-safir-uws/templates/ingress.yaml b/starters/fastapi-safir-uws/templates/ingress.yaml index 8b59497224..377d44ca08 100644 --- a/starters/fastapi-safir-uws/templates/ingress.yaml +++ b/starters/fastapi-safir-uws/templates/ingress.yaml @@ -9,6 +9,7 @@ config: scopes: all: - "read:image" + service: "" # Request a delegated token to use for making calls to Butler server with the # end-user's credentials. delegate: diff --git a/starters/fastapi-safir-uws/values.yaml b/starters/fastapi-safir-uws/values.yaml index 44d1783c3b..8a08de91f7 100644 --- a/starters/fastapi-safir-uws/values.yaml +++ b/starters/fastapi-safir-uws/values.yaml @@ -86,7 +86,7 @@ cloudsql: repository: "gcr.io/cloudsql-docker/gce-proxy" # -- Cloud SQL Auth Proxy tag to use - tag: "1.37.1" + tag: "1.37.2" # -- Pull policy for Cloud SQL Auth Proxy images pullPolicy: "IfNotPresent" diff --git a/starters/fastapi-safir/templates/ingress.yaml b/starters/fastapi-safir/templates/ingress.yaml index ddbe364182..8d326fb9f3 100644 --- a/starters/fastapi-safir/templates/ingress.yaml +++ b/starters/fastapi-safir/templates/ingress.yaml @@ -9,6 +9,7 @@ config: scopes: all: - "read:image" + service: "" template: metadata: name: "" diff --git a/starters/web-service/templates/ingress.yaml b/starters/web-service/templates/ingress.yaml index b3a26d8bbf..e66ab1a80f 100644 --- a/starters/web-service/templates/ingress.yaml +++ b/starters/web-service/templates/ingress.yaml @@ -9,6 +9,7 @@ config: scopes: all: - "read:image" + service: "" template: metadata: name: ""