From 2f7af952e880811ddaf78086f17ff9ba0b5eebb5 Mon Sep 17 00:00:00 2001 From: Michael Reuter Date: Tue, 19 Nov 2024 14:26:28 -0700 Subject: [PATCH 01/65] Add topic creation to ts-salkafka user in strimzi-kafka chart. --- applications/sasquatch/README.md | 1 + .../sasquatch/charts/strimzi-kafka/README.md | 1 + .../charts/strimzi-kafka/templates/topics.yaml | 15 +++++++++++++++ .../sasquatch/charts/strimzi-kafka/values.yaml | 3 +++ 4 files changed, 20 insertions(+) create mode 100644 applications/sasquatch/charts/strimzi-kafka/templates/topics.yaml diff --git a/applications/sasquatch/README.md b/applications/sasquatch/README.md index a3a058d559..148e7b4ed9 100644 --- a/applications/sasquatch/README.md +++ b/applications/sasquatch/README.md @@ -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 topics for the ts-salkafka user not controlled by CSCs | | 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/strimzi-kafka/README.md b/applications/sasquatch/charts/strimzi-kafka/README.md index 10f3965922..7fbeddcc65 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 topics for the ts-salkafka user not controlled by CSCs | 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..47ded52266 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 topics for the ts-salkafka user not controlled by CSCs + topics: [] + kafdrop: # -- Enable user Kafdrop (deployed by parent Sasquatch chart). enabled: false From be5f538788b43a188d9631a5723eab69cf15b7c5 Mon Sep 17 00:00:00 2001 From: Michael Reuter Date: Tue, 19 Nov 2024 14:29:15 -0700 Subject: [PATCH 02/65] Add ts-salkafka topics to base. --- applications/sasquatch/values-base.yaml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/applications/sasquatch/values-base.yaml b/applications/sasquatch/values-base.yaml index d34b7659b3..142a86e212 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: From e684503955db5230153c96a728e8f4cc80d3de77 Mon Sep 17 00:00:00 2001 From: Kian-Tat Lim Date: Sat, 16 Nov 2024 18:38:53 -0800 Subject: [PATCH 03/65] Add s3proxy application. --- applications/s3proxy/.helmignore | 23 +++++ applications/s3proxy/Chart.yaml | 8 ++ applications/s3proxy/README.md | 30 +++++++ applications/s3proxy/secrets.yaml | 8 ++ applications/s3proxy/templates/_helpers.tpl | 26 ++++++ applications/s3proxy/templates/configmap.yaml | 14 +++ .../s3proxy/templates/deployment.yaml | 89 +++++++++++++++++++ applications/s3proxy/templates/ingress.yaml | 34 +++++++ .../s3proxy/templates/networkpolicy.yaml | 21 +++++ applications/s3proxy/templates/service.yaml | 15 ++++ .../s3proxy/templates/vault-secret.yaml | 9 ++ applications/s3proxy/values-usdfdev.yaml | 16 ++++ applications/s3proxy/values.yaml | 69 ++++++++++++++ docs/applications/rubin.rst | 1 + docs/applications/s3proxy/index.rst | 19 ++++ docs/applications/s3proxy/values.md | 12 +++ environments/README.md | 1 + .../templates/applications/rubin/s3proxy.yaml | 34 +++++++ environments/values-usdfdev.yaml | 1 + environments/values.yaml | 3 + 20 files changed, 433 insertions(+) create mode 100644 applications/s3proxy/.helmignore create mode 100644 applications/s3proxy/Chart.yaml create mode 100644 applications/s3proxy/README.md create mode 100644 applications/s3proxy/secrets.yaml create mode 100644 applications/s3proxy/templates/_helpers.tpl create mode 100644 applications/s3proxy/templates/configmap.yaml create mode 100644 applications/s3proxy/templates/deployment.yaml create mode 100644 applications/s3proxy/templates/ingress.yaml create mode 100644 applications/s3proxy/templates/networkpolicy.yaml create mode 100644 applications/s3proxy/templates/service.yaml create mode 100644 applications/s3proxy/templates/vault-secret.yaml create mode 100644 applications/s3proxy/values-usdfdev.yaml create mode 100644 applications/s3proxy/values.yaml create mode 100644 docs/applications/s3proxy/index.rst create mode 100644 docs/applications/s3proxy/values.md create mode 100644 environments/templates/applications/rubin/s3proxy.yaml 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..53fe481e1c --- /dev/null +++ b/applications/s3proxy/Chart.yaml @@ -0,0 +1,8 @@ +apiVersion: v2 +appVersion: 0.1.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..d8c3df29e6 --- /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-sqre/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..261cbd8bf3 --- /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 | quote }}: {{ .url | quote }} + {{- end }} diff --git a/applications/s3proxy/templates/deployment.yaml b/applications/s3proxy/templates/deployment.yaml new file mode 100644 index 0000000000..0a93824c54 --- /dev/null +++ b/applications/s3proxy/templates/deployment.yaml @@ -0,0 +1,89 @@ +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/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 + volumes: + - name: pod-secrets + mountPath: /pod-secrets + initContainers: + - name: secret-setup + command: + - /bin/ash + - "-c" + - | + cp -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: "aws-credentials.ini" diff --git a/applications/s3proxy/templates/ingress.yaml b/applications/s3proxy/templates/ingress.yaml new file mode 100644 index 0000000000..61ce54a2ff --- /dev/null +++ b/applications/s3proxy/templates/ingress.yaml @@ -0,0 +1,34 @@ +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" +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..783b055acc --- /dev/null +++ b/applications/s3proxy/values-usdfdev.yaml @@ -0,0 +1,16 @@ +image: + tag: tickets/DM-47606 + +config: + profiles: + - name: embargo + url: "https://sdfembs3.sdf.slac.stanford.edu/" + s3EndpointUrl: "https://s3dfrgw.slac.stanford.edu/" + +resources: + limits: + compute: 500m + memory: 1Gi + requests: + compute: 200m + memory: 100Mi diff --git a/applications/s3proxy/values.yaml b/applications/s3proxy/values.yaml new file mode 100644 index 0000000000..ed8ba92582 --- /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-sqre/s3proxy" + + # -- Pull policy for the s3proxy image + pullPolicy: "IfNotPresent" + + # -- Tag of image to use + # @default -- The appVersion of the chart + tag: 0.1.0 + +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/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/environments/README.md b/environments/README.md index e92de4f65a..3fce8c9d31 100644 --- a/environments/README.md +++ b/environments/README.md @@ -53,6 +53,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/rubin/s3proxy.yaml b/environments/templates/applications/rubin/s3proxy.yaml new file mode 100644 index 0000000000..1f33f79960 --- /dev/null +++ b/environments/templates/applications/rubin/s3proxy.yaml @@ -0,0 +1,34 @@ +{{- if (index .Values "applications" "s3proxy") -}} +apiVersion: v1 +kind: Namespace +metadata: + name: "s3proxy" +--- +apiVersion: argoproj.io/v1alpha1 +kind: Application +metadata: + name: "s3proxy" + namespace: "argocd" + finalizers: + - "resources-finalizer.argocd.argoproj.io" +spec: + destination: + namespace: "s3proxy" + server: "https://kubernetes.default.svc" + project: "rubin" + source: + path: "applications/s3proxy" + repoURL: {{ .Values.repoUrl | quote }} + targetRevision: {{ .Values.targetRevision | quote }} + helm: + parameters: + - name: "global.host" + value: {{ .Values.fqdn | quote }} + - name: "global.baseUrl" + value: "https://{{ .Values.fqdn }}" + - name: "global.vaultSecretsPath" + value: {{ .Values.vaultPathPrefix | quote }} + valueFiles: + - "values.yaml" + - "values-{{ .Values.name }}.yaml" +{{- end -}} \ No newline at end of file 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.yaml b/environments/values.yaml index b65965df03..25500c34d3 100644 --- a/environments/values.yaml +++ b/environments/values.yaml @@ -162,6 +162,9 @@ applications: # -- Enable the rubintv-dev application rubintv-dev: false + # -- Enable the s3proxy application + s3proxy: false + # -- Enable the sasquatch application sasquatch: false From 2d700a7e56b9c00c755eddeedbb9bb7033044a39 Mon Sep 17 00:00:00 2001 From: Kian-Tat Lim Date: Wed, 20 Nov 2024 12:34:25 -0800 Subject: [PATCH 04/65] Use tagged version. --- applications/s3proxy/Chart.yaml | 2 +- applications/s3proxy/values-usdfdev.yaml | 3 --- 2 files changed, 1 insertion(+), 4 deletions(-) diff --git a/applications/s3proxy/Chart.yaml b/applications/s3proxy/Chart.yaml index 53fe481e1c..a165868d44 100644 --- a/applications/s3proxy/Chart.yaml +++ b/applications/s3proxy/Chart.yaml @@ -1,5 +1,5 @@ apiVersion: v2 -appVersion: 0.1.0 +appVersion: 1.0.0 description: Simple application to gateway S3 URLs to HTTPS name: s3proxy sources: diff --git a/applications/s3proxy/values-usdfdev.yaml b/applications/s3proxy/values-usdfdev.yaml index 783b055acc..13cfe53903 100644 --- a/applications/s3proxy/values-usdfdev.yaml +++ b/applications/s3proxy/values-usdfdev.yaml @@ -1,6 +1,3 @@ -image: - tag: tickets/DM-47606 - config: profiles: - name: embargo From cd198addf97e0e53a9f02caf6fe813768bb9908f Mon Sep 17 00:00:00 2001 From: Hsin-Fang Chiang Date: Tue, 19 Nov 2024 14:02:31 -0800 Subject: [PATCH 05/65] Update the preload padding configs --- applications/prompt-proto-service-hsc-gpu/README.md | 2 +- applications/prompt-proto-service-hsc-gpu/values.yaml | 2 +- applications/prompt-proto-service-hsc/README.md | 2 +- applications/prompt-proto-service-hsc/values.yaml | 2 +- applications/prompt-proto-service-lsstcam/README.md | 2 +- applications/prompt-proto-service-lsstcam/values.yaml | 2 +- applications/prompt-proto-service-lsstcomcam/README.md | 2 +- applications/prompt-proto-service-lsstcomcam/values.yaml | 2 +- applications/prompt-proto-service-lsstcomcamsim/README.md | 2 +- applications/prompt-proto-service-lsstcomcamsim/values.yaml | 2 +- 10 files changed, 10 insertions(+), 10 deletions(-) diff --git a/applications/prompt-proto-service-hsc-gpu/README.md b/applications/prompt-proto-service-hsc-gpu/README.md index ac15e45b47..7f119bce01 100644 --- a/applications/prompt-proto-service-hsc-gpu/README.md +++ b/applications/prompt-proto-service-hsc-gpu/README.md @@ -33,7 +33,7 @@ Prompt Proto Service is an event driven service for processing camera images. Th | 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.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.yaml b/applications/prompt-proto-service-hsc-gpu/values.yaml index 9ccc7af9dd..4fbc4354e8 100644 --- a/applications/prompt-proto-service-hsc-gpu/values.yaml +++ b/applications/prompt-proto-service-hsc-gpu/values.yaml @@ -48,7 +48,7 @@ prompt-proto-service: # -- 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..33a4a6d8b7 100644 --- a/applications/prompt-proto-service-hsc/README.md +++ b/applications/prompt-proto-service-hsc/README.md @@ -33,7 +33,7 @@ Prompt Proto Service is an event driven service for processing camera images. Th | 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.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.yaml b/applications/prompt-proto-service-hsc/values.yaml index 46ac0611d7..f2e5eba4a8 100644 --- a/applications/prompt-proto-service-hsc/values.yaml +++ b/applications/prompt-proto-service-hsc/values.yaml @@ -48,7 +48,7 @@ prompt-proto-service: # -- 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-lsstcam/README.md b/applications/prompt-proto-service-lsstcam/README.md index e1071dcac0..ca502f5749 100644 --- a/applications/prompt-proto-service-lsstcam/README.md +++ b/applications/prompt-proto-service-lsstcam/README.md @@ -33,7 +33,7 @@ Prompt Proto Service is an event driven service for processing camera images. Th | 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.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..3eecc4bf32 100644 --- a/applications/prompt-proto-service-lsstcam/values.yaml +++ b/applications/prompt-proto-service-lsstcam/values.yaml @@ -48,7 +48,7 @@ prompt-proto-service: # -- 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..bb28592707 100644 --- a/applications/prompt-proto-service-lsstcomcam/README.md +++ b/applications/prompt-proto-service-lsstcomcam/README.md @@ -33,7 +33,7 @@ Prompt Proto Service is an event driven service for processing camera images. Th | 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.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.yaml b/applications/prompt-proto-service-lsstcomcam/values.yaml index 85b421ac96..13339b8fb8 100644 --- a/applications/prompt-proto-service-lsstcomcam/values.yaml +++ b/applications/prompt-proto-service-lsstcomcam/values.yaml @@ -51,7 +51,7 @@ prompt-proto-service: # -- 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..2dd70b63f0 100644 --- a/applications/prompt-proto-service-lsstcomcamsim/README.md +++ b/applications/prompt-proto-service-lsstcomcamsim/README.md @@ -33,7 +33,7 @@ Prompt Proto Service is an event driven service for processing camera images. Th | 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.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.yaml b/applications/prompt-proto-service-lsstcomcamsim/values.yaml index 1f977a62bb..fc8dce6b9b 100644 --- a/applications/prompt-proto-service-lsstcomcamsim/values.yaml +++ b/applications/prompt-proto-service-lsstcomcamsim/values.yaml @@ -51,7 +51,7 @@ prompt-proto-service: # -- 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 From f16fa67dc326e7e762c407a4c8aab8ede79b36c9 Mon Sep 17 00:00:00 2001 From: Michael Reuter Date: Wed, 20 Nov 2024 14:58:30 -0700 Subject: [PATCH 06/65] Make doc string more specific. --- applications/sasquatch/README.md | 2 +- applications/sasquatch/charts/strimzi-kafka/README.md | 2 +- applications/sasquatch/charts/strimzi-kafka/values.yaml | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/applications/sasquatch/README.md b/applications/sasquatch/README.md index 148e7b4ed9..7ed157c4f2 100644 --- a/applications/sasquatch/README.md +++ b/applications/sasquatch/README.md @@ -419,7 +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 topics for the ts-salkafka user not controlled by CSCs | +| 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/strimzi-kafka/README.md b/applications/sasquatch/charts/strimzi-kafka/README.md index 7fbeddcc65..bb6ee20e92 100644 --- a/applications/sasquatch/charts/strimzi-kafka/README.md +++ b/applications/sasquatch/charts/strimzi-kafka/README.md @@ -72,4 +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 topics for the ts-salkafka user not controlled by CSCs | +| users.tsSalKafka.topics | list | `[]` | Create lsst.s3.* related topics for the ts-salkafka user. | diff --git a/applications/sasquatch/charts/strimzi-kafka/values.yaml b/applications/sasquatch/charts/strimzi-kafka/values.yaml index 47ded52266..85abde504a 100644 --- a/applications/sasquatch/charts/strimzi-kafka/values.yaml +++ b/applications/sasquatch/charts/strimzi-kafka/values.yaml @@ -263,7 +263,7 @@ users: # -- Enable user ts-salkafka, used at the telescope environments enabled: false - # -- Create topics for the ts-salkafka user not controlled by CSCs + # -- Create lsst.s3.* related topics for the ts-salkafka user. topics: [] kafdrop: From 33ec664f471cde61e1fde6482a2ffabfed498109 Mon Sep 17 00:00:00 2001 From: Kian-Tat Lim Date: Wed, 20 Nov 2024 14:52:55 -0800 Subject: [PATCH 07/65] Remove quoting. --- applications/s3proxy/templates/configmap.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/applications/s3proxy/templates/configmap.yaml b/applications/s3proxy/templates/configmap.yaml index 261cbd8bf3..7284a9598d 100644 --- a/applications/s3proxy/templates/configmap.yaml +++ b/applications/s3proxy/templates/configmap.yaml @@ -10,5 +10,5 @@ data: S3PROXY_PROFILE: {{ .Values.config.logProfile | quote }} S3_ENDPOINT_URL: {{ .Values.config.s3EndpointUrl | quote }} {{- range .Values.config.profiles }} - LSST_RESOURCES_S3_PROFILE_{{ .name | quote }}: {{ .url | quote }} + LSST_RESOURCES_S3_PROFILE_{{ .name }}: {{ .url | quote }} {{- end }} From 43ecca7bf38935ff206de9e6681586c6c8e4e88d Mon Sep 17 00:00:00 2001 From: Kian-Tat Lim Date: Wed, 20 Nov 2024 14:54:55 -0800 Subject: [PATCH 08/65] Fix resources. --- applications/s3proxy/values-usdfdev.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/applications/s3proxy/values-usdfdev.yaml b/applications/s3proxy/values-usdfdev.yaml index 13cfe53903..87d1d48df5 100644 --- a/applications/s3proxy/values-usdfdev.yaml +++ b/applications/s3proxy/values-usdfdev.yaml @@ -6,8 +6,8 @@ config: resources: limits: - compute: 500m + cpu: 500m memory: 1Gi requests: - compute: 200m + cpu: 200m memory: 100Mi From 7200734d0db2814ffdae4ca4013170a298e0b457 Mon Sep 17 00:00:00 2001 From: Kian-Tat Lim Date: Wed, 20 Nov 2024 15:24:51 -0800 Subject: [PATCH 09/65] Fix volumes. --- applications/s3proxy/templates/deployment.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/applications/s3proxy/templates/deployment.yaml b/applications/s3proxy/templates/deployment.yaml index 0a93824c54..b3630f7b9c 100644 --- a/applications/s3proxy/templates/deployment.yaml +++ b/applications/s3proxy/templates/deployment.yaml @@ -50,7 +50,7 @@ spec: drop: - "all" readOnlyRootFilesystem: true - volumes: + volumeMounts: - name: pod-secrets mountPath: /pod-secrets initContainers: From 2a5b1d8a90439bb6629bffa5b6e2769ac4e90336 Mon Sep 17 00:00:00 2001 From: Kian-Tat Lim Date: Wed, 20 Nov 2024 15:31:16 -0800 Subject: [PATCH 10/65] Fix secret. --- applications/s3proxy/templates/deployment.yaml | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/applications/s3proxy/templates/deployment.yaml b/applications/s3proxy/templates/deployment.yaml index b3630f7b9c..35b5856c22 100644 --- a/applications/s3proxy/templates/deployment.yaml +++ b/applications/s3proxy/templates/deployment.yaml @@ -28,7 +28,7 @@ spec: - name: {{ .Chart.Name }} env: - name: AWS_SHARED_CREDENTIALS_FILE - value: /pod-secrets/aws-credentials.ini + value: /pod-secrets/secrets/aws-credentials.ini envFrom: - configMapRef: name: "s3proxy" @@ -86,4 +86,5 @@ spec: sizeLimit: 1Mi - name: secret-volume secret: - secretName: "aws-credentials.ini" + secretName: "s3proxy" + secretKey: "aws-credentials.ini" From c5c3da1930482a266b5a91faa067d9021ff47a59 Mon Sep 17 00:00:00 2001 From: Kian-Tat Lim Date: Wed, 20 Nov 2024 15:34:05 -0800 Subject: [PATCH 11/65] Fix command. --- applications/s3proxy/templates/deployment.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/applications/s3proxy/templates/deployment.yaml b/applications/s3proxy/templates/deployment.yaml index 35b5856c22..d96e861819 100644 --- a/applications/s3proxy/templates/deployment.yaml +++ b/applications/s3proxy/templates/deployment.yaml @@ -59,8 +59,8 @@ spec: - /bin/ash - "-c" - | - cp -R /secrets /pod-secrets - chmod -R go-rwx /pod-secrets + cp -L -r /secrets /pod-secrets + chmod -R go-rwx /pod-secrets/* image: alpine volumeMounts: - name: secret-volume From ef2f4a077f198af58b4763897e2d9464d1322861 Mon Sep 17 00:00:00 2001 From: Kian-Tat Lim Date: Wed, 20 Nov 2024 15:40:38 -0800 Subject: [PATCH 12/65] Don't override app version. --- applications/s3proxy/values.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/applications/s3proxy/values.yaml b/applications/s3proxy/values.yaml index ed8ba92582..4c855a038b 100644 --- a/applications/s3proxy/values.yaml +++ b/applications/s3proxy/values.yaml @@ -14,7 +14,7 @@ image: # -- Tag of image to use # @default -- The appVersion of the chart - tag: 0.1.0 + tag: "" config: # -- Logging level From 70a011ba6300a5efac29c7c2bf31935c52dcac33 Mon Sep 17 00:00:00 2001 From: Kian-Tat Lim Date: Wed, 20 Nov 2024 15:41:55 -0800 Subject: [PATCH 13/65] Fix org. --- applications/s3proxy/README.md | 2 +- applications/s3proxy/values.yaml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/applications/s3proxy/README.md b/applications/s3proxy/README.md index d8c3df29e6..aace497a8f 100644 --- a/applications/s3proxy/README.md +++ b/applications/s3proxy/README.md @@ -20,7 +20,7 @@ Simple application to gateway S3 URLs to HTTPS | 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-sqre/s3proxy"` | Image to use in the s3proxy deployment | +| 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 | diff --git a/applications/s3proxy/values.yaml b/applications/s3proxy/values.yaml index 4c855a038b..c422f53ccc 100644 --- a/applications/s3proxy/values.yaml +++ b/applications/s3proxy/values.yaml @@ -7,7 +7,7 @@ replicaCount: 1 image: # -- Image to use in the s3proxy deployment - repository: "ghcr.io/lsst-sqre/s3proxy" + repository: "ghcr.io/lsst-dm/s3proxy" # -- Pull policy for the s3proxy image pullPolicy: "IfNotPresent" From 2eaea20ce1649f45a843cec95eb0490cf1b68461 Mon Sep 17 00:00:00 2001 From: Sebastian Aranda Sanchez Date: Wed, 20 Nov 2024 17:10:29 -0300 Subject: [PATCH 14/65] rubintv: add NFS mount for ddv configurations on summit prod. --- applications/rubintv/values-summit.yaml | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/applications/rubintv/values-summit.yaml b/applications/rubintv/values-summit.yaml index eef9d8dec8..6fe16e6ee8 100644 --- a/applications/rubintv/values-summit.yaml +++ b/applications/rubintv/values-summit.yaml @@ -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 From 8fb1565d2a1829502abffc5eaf11798d177c3e2e Mon Sep 17 00:00:00 2001 From: Sebastian Aranda Sanchez Date: Wed, 20 Nov 2024 17:27:36 -0300 Subject: [PATCH 15/65] rubintv: add PVC mount for ddv configurations on usdfprod. --- applications/rubintv/values-usdfprod.yaml | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/applications/rubintv/values-usdfprod.yaml b/applications/rubintv/values-usdfprod.yaml index 68c74079d4..3d433d5d0b 100644 --- a/applications/rubintv/values-usdfprod.yaml +++ b/applications/rubintv/values-usdfprod.yaml @@ -53,6 +53,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 From b68060725d9f9ff19583974caf5f1f6aa34efba0 Mon Sep 17 00:00:00 2001 From: Sebastian Aranda Sanchez Date: Wed, 20 Nov 2024 17:28:35 -0300 Subject: [PATCH 16/65] rubintv: activate 1 workers replica on usdfprod. --- applications/rubintv/values-usdfprod.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/applications/rubintv/values-usdfprod.yaml b/applications/rubintv/values-usdfprod.yaml index 3d433d5d0b..0d7df00a4b 100644 --- a/applications/rubintv/values-usdfprod.yaml +++ b/applications/rubintv/values-usdfprod.yaml @@ -20,7 +20,7 @@ rubintv: pullPolicy: Always workers: - replicas: 0 + replicas: 1 image: repository: ts-dockerhub.lsst.org/rapid-analysis tag: c0037 From 3f818e8172293796c03ec4acef60938dfe9c65f2 Mon Sep 17 00:00:00 2001 From: Sebastian Aranda Sanchez Date: Wed, 20 Nov 2024 17:31:17 -0300 Subject: [PATCH 17/65] rubintv: rename volumes entry to pvcMountpoint on usdfprod. --- applications/rubintv/values-usdfprod.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/applications/rubintv/values-usdfprod.yaml b/applications/rubintv/values-usdfprod.yaml index 0d7df00a4b..753dc8bcd6 100644 --- a/applications/rubintv/values-usdfprod.yaml +++ b/applications/rubintv/values-usdfprod.yaml @@ -38,7 +38,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 From bd9036e4b9803b4385dc9c7aef7c13cdbc863765 Mon Sep 17 00:00:00 2001 From: Sebastian Aranda Sanchez Date: Wed, 20 Nov 2024 17:34:38 -0300 Subject: [PATCH 18/65] rubintv: change workers image to use usdf version and match user permissions. --- applications/rubintv/values-usdfprod.yaml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/applications/rubintv/values-usdfprod.yaml b/applications/rubintv/values-usdfprod.yaml index 753dc8bcd6..2390b798fa 100644 --- a/applications/rubintv/values-usdfprod.yaml +++ b/applications/rubintv/values-usdfprod.yaml @@ -22,11 +22,11 @@ rubintv: workers: 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: From 26e31d022af3055d7bfac95332287f7467b3b60d Mon Sep 17 00:00:00 2001 From: Sebastian Aranda Sanchez Date: Thu, 21 Nov 2024 16:43:19 -0300 Subject: [PATCH 19/65] rubintv: add siteTag on usdfprod. --- applications/rubintv/values-usdfprod.yaml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/applications/rubintv/values-usdfprod.yaml b/applications/rubintv/values-usdfprod.yaml index 2390b798fa..bbb17cccc6 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 From 2a5ba2e58e862a3f704790bf78a6faa18ef8ec9f Mon Sep 17 00:00:00 2001 From: adam Date: Thu, 21 Nov 2024 14:26:32 -0700 Subject: [PATCH 20/65] Turn off PDB for monitoring/telegraf --- applications/monitoring/README.md | 1 + applications/monitoring/values.yaml | 5 +++++ applications/telegraf/README.md | 1 + applications/telegraf/values.yaml | 2 ++ 4 files changed, 9 insertions(+) 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/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" From a0a1652479568a8ad685ad3d508a88a11ed7bc4a Mon Sep 17 00:00:00 2001 From: Russ Allbery Date: Thu, 21 Nov 2024 15:13:40 -0800 Subject: [PATCH 21/65] Use weekly images for noteburst on usdfdev --- applications/noteburst/values-usdfdev.yaml | 1 + 1 file changed, 1 insertion(+) 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: From 4aa2ed55e0e733be7f7ef50cbba2f5471b0592df Mon Sep 17 00:00:00 2001 From: Tim Jenness Date: Thu, 21 Nov 2024 17:10:06 -0700 Subject: [PATCH 22/65] Add SP jira tickets to unfurlbot --- applications/unfurlbot/values.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/applications/unfurlbot/values.yaml b/applications/unfurlbot/values.yaml index 207f34358e..d27c557272 100644 --- a/applications/unfurlbot/values.yaml +++ b/applications/unfurlbot/values.yaml @@ -95,6 +95,7 @@ config: PREOPS, OBS, SITCOM, + SP, BLOCK ingress: From adabe189fccc2fc09cf672aa8f98fafeef2312db Mon Sep 17 00:00:00 2001 From: Michael Reuter Date: Fri, 22 Nov 2024 07:42:28 -0700 Subject: [PATCH 23/65] BTS: Update to k0003 tag. --- environments/values-base.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) 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" From f40c3deedfdac0b0d06aaef99d55206e2cfbecb4 Mon Sep 17 00:00:00 2001 From: Sebastian Aranda Sanchez Date: Fri, 22 Nov 2024 15:30:55 -0300 Subject: [PATCH 24/65] rubintv: Add TODO for better handling of secrets. --- charts/rubintv/templates/deployment-workers.yaml | 3 +++ 1 file changed, 3 insertions(+) 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" From c6e0954ed97f5a89abcee519d9b9232e11f27e8d Mon Sep 17 00:00:00 2001 From: Erin Howard Date: Fri, 22 Nov 2024 15:28:35 -0500 Subject: [PATCH 25/65] Update Prompt Processing to 4.9.0. --- .../values-usdfprod-prompt-processing.yaml | 2 +- .../values-usdfprod-prompt-processing.yaml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) 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..b8ff8138bc 100644 --- a/applications/prompt-proto-service-latiss/values-usdfprod-prompt-processing.yaml +++ b/applications/prompt-proto-service-latiss/values-usdfprod-prompt-processing.yaml @@ -14,7 +14,7 @@ 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: 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..ca5eec290a 100644 --- a/applications/prompt-proto-service-lsstcomcam/values-usdfprod-prompt-processing.yaml +++ b/applications/prompt-proto-service-lsstcomcam/values-usdfprod-prompt-processing.yaml @@ -15,7 +15,7 @@ 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: From 8e7da4c10811d795291f3569a79bc939ad692dc4 Mon Sep 17 00:00:00 2001 From: Michael Reuter Date: Fri, 22 Nov 2024 13:56:36 -0700 Subject: [PATCH 26/65] Add EAS to TTS, BTS, summit and USDF-prod sasquatch consumers. --- applications/sasquatch/values-base.yaml | 2 +- applications/sasquatch/values-summit.yaml | 4 ++-- applications/sasquatch/values-tucson-teststand.yaml | 2 +- applications/sasquatch/values-usdfprod.yaml | 2 +- 4 files changed, 5 insertions(+), 5 deletions(-) diff --git a/applications/sasquatch/values-base.yaml b/applications/sasquatch/values-base.yaml index 142a86e212..3700e87ec7 100644 --- a/applications/sasquatch/values-base.yaml +++ b/applications/sasquatch/values-base.yaml @@ -164,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 From d8490f25894fcd7331f3200399cb28f31731aacf Mon Sep 17 00:00:00 2001 From: dspeck1 Date: Fri, 22 Nov 2024 16:12:21 -0600 Subject: [PATCH 27/65] Updated IP addresses for schema registry as they changed during sasquatch maintenance. --- .../next-visit-fan-out/values-usdfdev-prompt-processing.yaml | 2 +- .../next-visit-fan-out/values-usdfprod-prompt-processing.yaml | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) 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 From 03f04ca71991e3daa997e8f088cc9b8ad2418e2a Mon Sep 17 00:00:00 2001 From: "David H. Irving" Date: Wed, 20 Nov 2024 14:45:23 -0700 Subject: [PATCH 28/65] Enable Gafaelfawr caching for Butler server Butler clients often make large numbers of small requests using the same access token. Enabling this cache avoids hitting the Gafaelfawr service repeatedly for these requests, reducing load on the service and improving request latency. --- applications/butler/templates/ingress-authenticated.yaml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/applications/butler/templates/ingress-authenticated.yaml b/applications/butler/templates/ingress-authenticated.yaml index bf7127de6e..d20e8bc8a2 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: From 96378fdea71bd78eb26728778c8af4b33d58f208 Mon Sep 17 00:00:00 2001 From: Russ Allbery Date: Fri, 22 Nov 2024 17:19:04 -0800 Subject: [PATCH 29/65] Remove kubernetes-replicator kubernetes-replicator was previously used to copy Kafka secrets to other namespaces, but the new `KafkaAccess` Kubernetes resource now handles this in a cleaner way. Remove the replication annotations and the kubernetes-replicator application. --- applications/kubernetes-replicator/Chart.yaml | 11 ------ applications/kubernetes-replicator/README.md | 23 ------------- .../values-roundtable-dev.yaml | 0 .../values-roundtable-prod.yaml | 0 .../kubernetes-replicator/values.yaml | 18 ---------- .../square-events/templates/ook-user.yaml | 6 ---- .../templates/squarebot-user.yaml | 6 ---- .../templates/templatebot-user.yaml | 6 ---- .../templates/unfurlbot-user.yaml | 6 ---- .../kubernetes-replicator/index.rst | 17 ---------- .../kubernetes-replicator/values.md | 12 ------- docs/applications/support.rst | 1 - environments/README.md | 1 - .../support/kubernetes-replicator.yaml | 34 ------------------- environments/values-roundtable-dev.yaml | 1 - environments/values-roundtable-prod.yaml | 1 - environments/values.yaml | 3 -- 17 files changed, 146 deletions(-) delete mode 100644 applications/kubernetes-replicator/Chart.yaml delete mode 100644 applications/kubernetes-replicator/README.md delete mode 100644 applications/kubernetes-replicator/values-roundtable-dev.yaml delete mode 100644 applications/kubernetes-replicator/values-roundtable-prod.yaml delete mode 100644 applications/kubernetes-replicator/values.yaml delete mode 100644 docs/applications/kubernetes-replicator/index.rst delete mode 100644 docs/applications/kubernetes-replicator/values.md delete mode 100644 environments/templates/applications/support/kubernetes-replicator.yaml 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/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/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/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 3fce8c9d31..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 | diff --git a/environments/templates/applications/support/kubernetes-replicator.yaml b/environments/templates/applications/support/kubernetes-replicator.yaml deleted file mode 100644 index 8cdc7bd1a6..0000000000 --- a/environments/templates/applications/support/kubernetes-replicator.yaml +++ /dev/null @@ -1,34 +0,0 @@ -{{- if (index .Values "applications" "kubernetes-replicator") -}} -apiVersion: v1 -kind: Namespace -metadata: - name: "kubernetes-replicator" ---- -apiVersion: argoproj.io/v1alpha1 -kind: Application -metadata: - name: "kubernetes-replicator" - namespace: "argocd" - finalizers: - - "resources-finalizer.argocd.argoproj.io" -spec: - destination: - namespace: "kubernetes-replicator" - server: "https://kubernetes.default.svc" - project: "support" - source: - path: "applications/kubernetes-replicator" - repoURL: {{ .Values.repoUrl | quote }} - targetRevision: {{ .Values.targetRevision | quote }} - helm: - parameters: - - name: "global.host" - value: {{ .Values.fqdn | quote }} - - name: "global.baseUrl" - value: "https://{{ .Values.fqdn }}" - - name: "global.vaultSecretsPath" - value: {{ .Values.vaultPathPrefix | quote }} - valueFiles: - - "values.yaml" - - "values-{{ .Values.name }}.yaml" -{{- end -}} 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.yaml b/environments/values.yaml index 25500c34d3..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 From 39598a2e7c24b85ff70fc07bc8f039c94e0e0496 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Mon, 25 Nov 2024 10:34:19 +0000 Subject: [PATCH 30/65] Update Helm release argo-cd to v7.7.5 --- applications/argocd/Chart.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/applications/argocd/Chart.yaml b/applications/argocd/Chart.yaml index 11b5e03524..5a010b856e 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.5 repository: https://argoproj.github.io/argo-helm From 75d99c1ca573b4854cf84f60115106b6889f5ef7 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Mon, 25 Nov 2024 10:34:22 +0000 Subject: [PATCH 31/65] Update Helm release cert-manager to v1.16.2 --- applications/cert-manager/Chart.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) 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 From 4ddb65f44197b07835b3e2976329c30e6583beee Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Mon, 25 Nov 2024 17:05:27 +0000 Subject: [PATCH 32/65] Update Helm release vault to v0.29.1 --- applications/vault/Chart.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) 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 From b393b8cde1b24418fc81d23c3c2136a12ae5ff23 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Mon, 25 Nov 2024 17:05:33 +0000 Subject: [PATCH 33/65] Update gcr.io/cloudsql-docker/gce-proxy Docker tag to v1.37.2 --- applications/gafaelfawr/values.yaml | 2 +- applications/nublado/values.yaml | 2 +- applications/sqlproxy-cross-project/values.yaml | 2 +- applications/times-square/values.yaml | 2 +- applications/vo-cutouts/values.yaml | 2 +- charts/cadc-tap/values.yaml | 2 +- starters/fastapi-safir-uws/values.yaml | 2 +- 7 files changed, 7 insertions(+), 7 deletions(-) diff --git a/applications/gafaelfawr/values.yaml b/applications/gafaelfawr/values.yaml index 95820eabb6..d51d343ee3 100644 --- a/applications/gafaelfawr/values.yaml +++ b/applications/gafaelfawr/values.yaml @@ -311,7 +311,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/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/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/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/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/values.yaml b/charts/cadc-tap/values.yaml index a755e17f89..e54ff5e156 100644 --- a/charts/cadc-tap/values.yaml +++ b/charts/cadc-tap/values.yaml @@ -229,7 +229,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-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" From 205fe3e1522ff9c5837e4293de23eef61e3e0771 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Mon, 25 Nov 2024 17:05:38 +0000 Subject: [PATCH 34/65] Update Helm release argo-workflows to v0.45.0 --- applications/argo-workflows/Chart.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) 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 From 434bc4f55ce573d19a386429b5e32019921c978b Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Mon, 25 Nov 2024 17:05:45 +0000 Subject: [PATCH 35/65] Update postgres Docker tag to v17.2 --- applications/siav2/values.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) 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: From 409383c9bf8ac86458c898c6e29d23708a8f8aa7 Mon Sep 17 00:00:00 2001 From: Russ Allbery Date: Mon, 25 Nov 2024 09:29:09 -0800 Subject: [PATCH 36/65] Regenerate Helm docs --- applications/gafaelfawr/README.md | 2 +- applications/nublado/README.md | 2 +- applications/sqlproxy-cross-project/README.md | 2 +- applications/times-square/README.md | 2 +- applications/vo-cutouts/README.md | 2 +- charts/cadc-tap/README.md | 2 +- 6 files changed, 6 insertions(+), 6 deletions(-) diff --git a/applications/gafaelfawr/README.md b/applications/gafaelfawr/README.md index 51df4c45c1..39c62850a4 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 | 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/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/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/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/charts/cadc-tap/README.md b/charts/cadc-tap/README.md index 8adaa4f4fd..d66a03be28 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 | From ad89bca9937ba80a9fe4d5395ddccaf229f65661 Mon Sep 17 00:00:00 2001 From: Russ Allbery Date: Mon, 25 Nov 2024 09:29:50 -0800 Subject: [PATCH 37/65] Regenerate Helm docs --- applications/siav2/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) 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 | From eab1b5c59250ea9da39f1f3496dc21bb26d12e93 Mon Sep 17 00:00:00 2001 From: Russ Allbery Date: Mon, 25 Nov 2024 09:33:41 -0800 Subject: [PATCH 38/65] Update pre-commit and Python dependencies Update the shared Ruff configuration file for some diagnostic renamings in Ruff 0.8.0. --- .pre-commit-config.yaml | 2 +- requirements/dev.txt | 407 +++++++++++++++++++++------------------- requirements/main.txt | 257 +++++++++++++------------ requirements/tox.txt | 38 ++-- ruff-shared.toml | 6 +- src/phalanx/cli.py | 4 +- 6 files changed, 367 insertions(+), 347 deletions(-) diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index a5a2f68946..5a4d453fff 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.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.0 hooks: - id: ruff args: [--fix, --exit-non-zero-on-fix] diff --git a/requirements/dev.txt b/requirements/dev.txt index 3c3e316dab..367b8ee354 100644 --- a/requirements/dev.txt +++ b/requirements/dev.txt @@ -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 \ @@ -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.1 \ + --hash=sha256:a4daca2dc0aa429555e0656d6bf94873a7dc5f54ee42b1f5873d666fb3f35560 \ + --hash=sha256:a8d20db84de64cf4a7d59e899c2caf0fe9d660c7cfc482528e7020d7dd189a7e # 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 @@ -1215,9 +1226,9 @@ rpds-py==0.21.0 \ # 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 @@ -1427,18 +1438,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..bbd62ceaae 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,103 +378,114 @@ 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.1 \ + --hash=sha256:a4daca2dc0aa429555e0656d6bf94873a7dc5f54ee42b1f5873d666fb3f35560 \ + --hash=sha256:a8d20db84de64cf4a7d59e899c2caf0fe9d660c7cfc482528e7020d7dd189a7e # 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 @@ -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..dcbc6bf87d 100644 --- a/requirements/tox.txt +++ b/requirements/tox.txt @@ -60,25 +60,25 @@ 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.4 \ + --hash=sha256:05b45c7eefb178dcdab0d49cd642fb7487377d00727102a8d6d306cc034c0d83 \ + --hash=sha256:2118bb99cbc9787cb5e5cc4a507201e25a3fe88a9f389e8ffb84f242d96038c2 \ + --hash=sha256:30ce031e36c54d4ba791d743d992d0a4fd8d70480db781d30a2f6f5125f39194 \ + --hash=sha256:4432215deb8d5c1ccab17ee51cb80f5de1a20865ee02df47532f87442a3d6a58 \ + --hash=sha256:493aedc3c758bbaede83ecc8d5f7e6a9279ebec151c7f756aa9ea898c73f8ddb \ + --hash=sha256:69079e900bd26b0f65069ac6fa684c74662ed87121c076f2b1cbcf042539034c \ + --hash=sha256:8d7a4a3df943a7c16cd032ccbaab8ed21ff64f4cb090b3a0a15a8b7502ccd876 \ + --hash=sha256:928ed95fefe4e1338d0a7ad2f6b635de59e2ec92adaed4a267f7501a3b252263 \ + --hash=sha256:a79a0885df364b897da44aae308e6ed9cca3a189d455cf1c205bd6f7b03daafa \ + --hash=sha256:ca72e6a4c3c6b8b5605867e16a7f767f5c99b7f526de6bbb903c60eb44fd1e01 \ + --hash=sha256:cd7a5a3a36f975a7678f27849a2d49bafe7272143d938e9b6f3bf28392a3ba00 \ + --hash=sha256:dd2df2ba823e6684230ab4c581f2320be38d7f46de11ce21d2dbba631470d7b6 \ + --hash=sha256:df3cb58b7da91f4fc647d09c3e96006cd6c7bd424a81ce2308a58593c6887c39 \ + --hash=sha256:ed5659cde099f39995f4cb793fd939d2260b4a26e4e29412c91e7537f53d8d25 \ + --hash=sha256:f07e5e0df40a09154007da41b76932671333f9fecb0735c698b19da25aa08927 \ + --hash=sha256:f40c6c6c3a1b398b56d3a8b28f7b455ac1ce4cbb1469f8d35d3bbc804d83daa4 \ + --hash=sha256:f511faf719b797ef0f14688f1abe20b3fd126209cf58512354d1813249745119 \ + --hash=sha256:f806af0ee451a81099c449c4cff0e813056fdf7dd264f3d3a8fd321b17ff9efc # via tox-uv virtualenv==20.27.1 \ --hash=sha256:142c6be10212543b32c6c45d3d3893dff89112cc588b7d0879ae5a1ec03a47ba \ 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", From 23e76e7f6a32273ca44f329106989dd217a2b956 Mon Sep 17 00:00:00 2001 From: Sebastian Aranda Sanchez Date: Mon, 25 Nov 2024 16:59:48 -0300 Subject: [PATCH 39/65] Update rubintv app version to v2.5.4 for summit and usdf production deployments. --- applications/rubintv/values-summit.yaml | 2 +- applications/rubintv/values-usdfprod.yaml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/applications/rubintv/values-summit.yaml b/applications/rubintv/values-summit.yaml index 6fe16e6ee8..2f0cc03489 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.4 pullPolicy: Always workers: diff --git a/applications/rubintv/values-usdfprod.yaml b/applications/rubintv/values-usdfprod.yaml index bbb17cccc6..c86a44f612 100644 --- a/applications/rubintv/values-usdfprod.yaml +++ b/applications/rubintv/values-usdfprod.yaml @@ -18,7 +18,7 @@ rubintv: - name: DDV_CLIENT_WS_ADDRESS value: "rubintv/ws/ddv" image: - tag: v2.5.3 + tag: v2.5.4 pullPolicy: Always workers: From d7b0880629c3bbead336e4b4b05498885d0804f8 Mon Sep 17 00:00:00 2001 From: Krzysztof Findeisen Date: Tue, 12 Nov 2024 14:25:07 -0800 Subject: [PATCH 40/65] Switch Prompt Processing pipelines config from Python-like to YAML. Delegating parsing to YAML makes it much easier to add more fields to the pipelines spec. The parsing is done by Prompt Processing instead of during Helm processing to keep the expanded configuration easier to read in Argo. --- .../prompt-proto-service-hsc-gpu/README.md | 4 +- .../values-usdfdev-prompt-processing.yaml | 8 +- .../prompt-proto-service-hsc-gpu/values.yaml | 6 +- .../prompt-proto-service-hsc/README.md | 4 +- .../values-usdfdev-prompt-processing.yaml | 8 +- .../prompt-proto-service-hsc/values.yaml | 6 +- .../prompt-proto-service-latiss/README.md | 4 +- .../values-usdfdev-prompt-processing.yaml | 13 +++- .../values-usdfprod-prompt-processing.yaml | 48 ++++++------ .../prompt-proto-service-latiss/values.yaml | 6 +- .../prompt-proto-service-lsstcam/README.md | 4 +- .../prompt-proto-service-lsstcam/values.yaml | 6 +- .../prompt-proto-service-lsstcomcam/README.md | 4 +- .../values-usdfdev-prompt-processing.yaml | 12 ++- .../values-usdfprod-prompt-processing.yaml | 73 ++++++++++--------- .../values.yaml | 6 +- .../README.md | 4 +- .../values-usdfdev-prompt-processing.yaml | 14 ++-- .../values.yaml | 6 +- charts/prompt-proto-service/README.md | 4 +- .../templates/prompt-proto-service.yaml | 6 +- charts/prompt-proto-service/values.yaml | 6 +- 22 files changed, 139 insertions(+), 113 deletions(-) diff --git a/applications/prompt-proto-service-hsc-gpu/README.md b/applications/prompt-proto-service-hsc-gpu/README.md index 7f119bce01..8d393c1e28 100644 --- a/applications/prompt-proto-service-hsc-gpu/README.md +++ b/applications/prompt-proto-service-hsc-gpu/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 | `"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.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`). | 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 4fbc4354e8..6cf07db2d8 100644 --- a/applications/prompt-proto-service-hsc-gpu/values.yaml +++ b/applications/prompt-proto-service-hsc-gpu/values.yaml @@ -38,11 +38,11 @@ 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 diff --git a/applications/prompt-proto-service-hsc/README.md b/applications/prompt-proto-service-hsc/README.md index 33a4a6d8b7..3f6af2f7fb 100644 --- a/applications/prompt-proto-service-hsc/README.md +++ b/applications/prompt-proto-service-hsc/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 | `"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.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`). | 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..d7faeaf5c0 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: diff --git a/applications/prompt-proto-service-hsc/values.yaml b/applications/prompt-proto-service-hsc/values.yaml index f2e5eba4a8..9cfc798c4e 100644 --- a/applications/prompt-proto-service-hsc/values.yaml +++ b/applications/prompt-proto-service-hsc/values.yaml @@ -38,11 +38,11 @@ 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 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..fbc8b126c0 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: 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 b8ff8138bc..4cf418992a 100644 --- a/applications/prompt-proto-service-latiss/values-usdfprod-prompt-processing.yaml +++ b/applications/prompt-proto-service-latiss/values-usdfprod-prompt-processing.yaml @@ -18,30 +18,30 @@ prompt-proto-service: 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 ca502f5749..9ad358da9f 100644 --- a/applications/prompt-proto-service-lsstcam/README.md +++ b/applications/prompt-proto-service-lsstcam/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 | `""` | 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 | `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`). | diff --git a/applications/prompt-proto-service-lsstcam/values.yaml b/applications/prompt-proto-service-lsstcam/values.yaml index 3eecc4bf32..d5c1b4d8e9 100644 --- a/applications/prompt-proto-service-lsstcam/values.yaml +++ b/applications/prompt-proto-service-lsstcam/values.yaml @@ -38,11 +38,11 @@ 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 diff --git a/applications/prompt-proto-service-lsstcomcam/README.md b/applications/prompt-proto-service-lsstcomcam/README.md index bb28592707..c08de7a78c 100644 --- a/applications/prompt-proto-service-lsstcomcam/README.md +++ b/applications/prompt-proto-service-lsstcomcam/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 | `"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.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`). | 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..deacc0bbc8 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: 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 ca5eec290a..72653c9f52 100644 --- a/applications/prompt-proto-service-lsstcomcam/values-usdfprod-prompt-processing.yaml +++ b/applications/prompt-proto-service-lsstcomcam/values-usdfprod-prompt-processing.yaml @@ -19,41 +19,44 @@ prompt-proto-service: 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 13339b8fb8..4a46d6bb1a 100644 --- a/applications/prompt-proto-service-lsstcomcam/values.yaml +++ b/applications/prompt-proto-service-lsstcomcam/values.yaml @@ -41,11 +41,11 @@ 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 diff --git a/applications/prompt-proto-service-lsstcomcamsim/README.md b/applications/prompt-proto-service-lsstcomcamsim/README.md index 2dd70b63f0..9c1fa3e437 100644 --- a/applications/prompt-proto-service-lsstcomcamsim/README.md +++ b/applications/prompt-proto-service-lsstcomcamsim/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 | `"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.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`). | 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 fc8dce6b9b..2b80a022a7 100644 --- a/applications/prompt-proto-service-lsstcomcamsim/values.yaml +++ b/applications/prompt-proto-service-lsstcomcamsim/values.yaml @@ -41,11 +41,11 @@ 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 diff --git a/charts/prompt-proto-service/README.md b/charts/prompt-proto-service/README.md index 06c8d5eff9..41c08554c0 100644 --- a/charts/prompt-proto-service/README.md +++ b/charts/prompt-proto-service/README.md @@ -34,8 +34,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..23eb47fd11 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 diff --git a/charts/prompt-proto-service/values.yaml b/charts/prompt-proto-service/values.yaml index 04c55b7472..66fd0642e3 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 From 6061ca5722f5e7fbfb1353e29fda101c44d00714 Mon Sep 17 00:00:00 2001 From: Michael Reuter Date: Tue, 26 Nov 2024 08:31:03 -0700 Subject: [PATCH 41/65] BTS: Remove tags from love config. --- applications/love/values-base.yaml | 4 ---- 1 file changed, 4 deletions(-) diff --git a/applications/love/values-base.yaml b/applications/love/values-base.yaml index 090346b111..5beb740aeb 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 From 796498662913223177a35decde94132fd2352659 Mon Sep 17 00:00:00 2001 From: pav511 <38131208+pav511@users.noreply.github.com> Date: Tue, 26 Nov 2024 11:11:55 -0800 Subject: [PATCH 42/65] tobyj usdf-cm[-dev] argocd rbac --- applications/argocd/values-usdf-cm-dev.yaml | 1 + applications/argocd/values-usdf-cm.yaml | 1 + 2 files changed, 2 insertions(+) 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: From f8fdfc67a8f74947fd00157ceb96f1462c002a40 Mon Sep 17 00:00:00 2001 From: Kian-Tat Lim Date: Mon, 25 Nov 2024 13:33:49 -0800 Subject: [PATCH 43/65] Add s3proxy to usdfprod. --- applications/s3proxy/values-usdfprod.yaml | 13 +++++++++++++ 1 file changed, 13 insertions(+) create mode 100644 applications/s3proxy/values-usdfprod.yaml 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 From ede1cf78407b78a79bd5ec2ab80f80fc6413b42f Mon Sep 17 00:00:00 2001 From: Kian-Tat Lim Date: Mon, 25 Nov 2024 13:44:06 -0800 Subject: [PATCH 44/65] Enable s3proxy in usdfprod environment. --- environments/values-usdfprod.yaml | 1 + 1 file changed, 1 insertion(+) 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 From 374f3d9e15345cfcadd937bd8262d26f257611a1 Mon Sep 17 00:00:00 2001 From: Russ Allbery Date: Wed, 20 Nov 2024 16:09:23 -0800 Subject: [PATCH 45/65] Update to Gafaelfawr 12.2.0 Update Gafaelfawr to the 12.2.0 release, which allows the new CADC authentication code to use the OpenID Connect userinfo route, hopefully allowing us to drop the old CADC-specific route. This release also fixes some performance issues and adds optional Sentry support, which will let us send traces, errors, and other telemetry to Sentry. --- applications/gafaelfawr/Chart.yaml | 2 +- applications/gafaelfawr/README.md | 1 + applications/gafaelfawr/secrets.yaml | 4 ++++ applications/gafaelfawr/templates/_helpers.tpl | 11 +++++++++++ applications/gafaelfawr/templates/cronjob-audit.yaml | 2 +- .../gafaelfawr/templates/cronjob-maintenance.yaml | 2 +- .../gafaelfawr/templates/deployment-operator.yaml | 2 +- applications/gafaelfawr/templates/deployment.yaml | 2 +- .../gafaelfawr/templates/job-schema-update.yaml | 2 +- applications/gafaelfawr/values.yaml | 5 +++++ 10 files changed, 27 insertions(+), 6 deletions(-) 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 39c62850a4..c609f0f9e4 100644 --- a/applications/gafaelfawr/README.md +++ b/applications/gafaelfawr/README.md @@ -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.yaml b/applications/gafaelfawr/values.yaml index d51d343ee3..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 From d45505b6447d190937b665ac34e533e8868db0a3 Mon Sep 17 00:00:00 2001 From: Krzysztof Findeisen Date: Tue, 26 Nov 2024 14:09:03 -0800 Subject: [PATCH 46/65] Move Prompt Processing debugging flags into a debug block. This change keeps temporary "hack" settings together. --- .../values-usdfdev-prompt-processing.yaml | 5 +++-- .../values-usdfdev-prompt-processing.yaml | 5 +++-- .../values-usdfdev-prompt-processing.yaml | 5 +++-- charts/prompt-proto-service/README.md | 2 +- .../templates/prompt-proto-service.yaml | 2 +- charts/prompt-proto-service/values.yaml | 7 ++++--- 6 files changed, 15 insertions(+), 11 deletions(-) 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 d7faeaf5c0..66dc8938bc 100644 --- a/applications/prompt-proto-service-hsc/values-usdfdev-prompt-processing.yaml +++ b/applications/prompt-proto-service-hsc/values-usdfdev-prompt-processing.yaml @@ -39,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-latiss/values-usdfdev-prompt-processing.yaml b/applications/prompt-proto-service-latiss/values-usdfdev-prompt-processing.yaml index fbc8b126c0..fd5ab7ce4f 100644 --- a/applications/prompt-proto-service-latiss/values-usdfdev-prompt-processing.yaml +++ b/applications/prompt-proto-service-latiss/values-usdfdev-prompt-processing.yaml @@ -40,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-lsstcomcam/values-usdfdev-prompt-processing.yaml b/applications/prompt-proto-service-lsstcomcam/values-usdfdev-prompt-processing.yaml index deacc0bbc8..d7b6b0847e 100644 --- a/applications/prompt-proto-service-lsstcomcam/values-usdfdev-prompt-processing.yaml +++ b/applications/prompt-proto-service-lsstcomcam/values-usdfdev-prompt-processing.yaml @@ -39,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/charts/prompt-proto-service/README.md b/charts/prompt-proto-service/README.md index 41c08554c0..c50a573380 100644 --- a/charts/prompt-proto-service/README.md +++ b/charts/prompt-proto-service/README.md @@ -22,8 +22,8 @@ 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. | | 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 | diff --git a/charts/prompt-proto-service/templates/prompt-proto-service.yaml b/charts/prompt-proto-service/templates/prompt-proto-service.yaml index 23eb47fd11..18eb30c683 100644 --- a/charts/prompt-proto-service/templates/prompt-proto-service.yaml +++ b/charts/prompt-proto-service/templates/prompt-proto-service.yaml @@ -122,7 +122,7 @@ 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 }} volumeMounts: - mountPath: /tmp-butler name: ephemeral diff --git a/charts/prompt-proto-service/values.yaml b/charts/prompt-proto-service/values.yaml index 66fd0642e3..d32ef08132 100644 --- a/charts/prompt-proto-service/values.yaml +++ b/charts/prompt-proto-service/values.yaml @@ -168,9 +168,10 @@ 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 # -- Kubernetes YAML configs for extra container volume(s). # Any volumes required by other config options are automatically handled by the Helm chart. From 93ac0ead5a054150d45fdcc978736d4490e4ba26 Mon Sep 17 00:00:00 2001 From: Krzysztof Findeisen Date: Tue, 26 Nov 2024 14:14:02 -0800 Subject: [PATCH 47/65] Add Prompt Processing config for turning off repo export. This flag is used for tests where we want to avoid conflicting updates to the central repo. --- charts/prompt-proto-service/README.md | 1 + .../prompt-proto-service/templates/prompt-proto-service.yaml | 2 ++ charts/prompt-proto-service/values.yaml | 3 +++ 3 files changed, 6 insertions(+) diff --git a/charts/prompt-proto-service/README.md b/charts/prompt-proto-service/README.md index c50a573380..f2d8e7f96d 100644 --- a/charts/prompt-proto-service/README.md +++ b/charts/prompt-proto-service/README.md @@ -24,6 +24,7 @@ Event-driven processing of camera images | cache.refcatsPerImage | int | `4` | A factor by which to multiply `baseSize` for refcat datasets. | | 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 | diff --git a/charts/prompt-proto-service/templates/prompt-proto-service.yaml b/charts/prompt-proto-service/templates/prompt-proto-service.yaml index 18eb30c683..ac77260360 100644 --- a/charts/prompt-proto-service/templates/prompt-proto-service.yaml +++ b/charts/prompt-proto-service/templates/prompt-proto-service.yaml @@ -123,6 +123,8 @@ spec: value: {{ .Values.cache.maxFilters | toString | quote }} - name: DEBUG_CACHE_CALIBS 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 d32ef08132..45eea955ed 100644 --- a/charts/prompt-proto-service/values.yaml +++ b/charts/prompt-proto-service/values.yaml @@ -172,6 +172,9 @@ 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. From 10d8ce5f31711d52e329e0dc0d3244ee0fbf9d65 Mon Sep 17 00:00:00 2001 From: Michael Reuter Date: Mon, 25 Nov 2024 16:54:08 -0700 Subject: [PATCH 48/65] Add resources to hexapod-sim chart. --- applications/auxtel/README.md | 4 ++++ applications/auxtel/charts/hexapod-sim/README.md | 4 ++++ .../charts/hexapod-sim/templates/deployment.yaml | 16 ++++++++++++++++ .../auxtel/charts/hexapod-sim/values.yaml | 8 ++++++++ applications/auxtel/values-base.yaml | 7 +++++++ 5 files changed, 39 insertions(+) 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..07cd34b437 100644 --- a/applications/auxtel/values-base.yaml +++ b/applications/auxtel/values-base.yaml @@ -144,3 +144,10 @@ atspectrograph-sim: hexapod-sim: enabled: true + resources: + limits: + cpu: 100m + memory: 500Mi + requests: + cpu: 20m + memory: 200Mi From 4008e23a815a0bedd86f7053af57379e0e25bb21 Mon Sep 17 00:00:00 2001 From: Michael Reuter Date: Wed, 27 Nov 2024 08:38:32 -0700 Subject: [PATCH 49/65] Bump resource requests on M1M3 LOVE producer. --- applications/love/values-base.yaml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/applications/love/values-base.yaml b/applications/love/values-base.yaml index 5beb740aeb..97398a15ff 100644 --- a/applications/love/values-base.yaml +++ b/applications/love/values-base.yaml @@ -507,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 From a849d04d7c87c90466925dcf52f39ba07ad1ab98 Mon Sep 17 00:00:00 2001 From: Michael Reuter Date: Wed, 27 Nov 2024 08:59:11 -0700 Subject: [PATCH 50/65] Add simulate flag to ATMCS and ATPneumatics. --- applications/auxtel/values-base.yaml | 4 ++++ applications/auxtel/values-tucson-teststand.yaml | 4 ++++ 2 files changed, 8 insertions(+) diff --git a/applications/auxtel/values-base.yaml b/applications/auxtel/values-base.yaml index 07cd34b437..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: 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: From 5466fab191f542f5ebad629ba10bd52593c5cbf0 Mon Sep 17 00:00:00 2001 From: Michael Reuter Date: Wed, 27 Nov 2024 10:22:34 -0700 Subject: [PATCH 51/65] Handle ESS reindexing changes. --- applications/eas/Chart.yaml | 70 ++++++++------ applications/eas/README.md | 18 ++-- applications/eas/values-base.yaml | 62 ++++++------- applications/eas/values-tucson-teststand.yaml | 62 ++++++------- applications/eas/values.yaml | 64 +++++++------ applications/love/values-base.yaml | 27 +++--- .../love/values-tucson-teststand.yaml | 92 +++++++++++++++---- 7 files changed, 237 insertions(+), 158 deletions(-) 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..38497e55c6 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,14 @@ 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 @@ -172,30 +172,14 @@ epm1-sim: cpu: 190m memory: 900Mi -m2-ess106-sim: - enabled: true - classifier: ess106 - image: - repository: ts-dockerhub.lsst.org/ess - pullPolicy: Always - env: - RUN_ARG: 106 --simulate - resources: - requests: - cpu: 19m - memory: 90Mi - limits: - cpu: 190m - memory: 900Mi - -mtdome-ess101-sim: +m1m3-ess113-sim: enabled: true - classifier: ess101 + classifier: ess113 image: repository: ts-dockerhub.lsst.org/ess pullPolicy: Always env: - RUN_ARG: 101 --simulate + RUN_ARG: 113 --simulate resources: requests: cpu: 19m @@ -204,14 +188,14 @@ mtdome-ess101-sim: 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 +204,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 +300,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..38497e55c6 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,14 @@ 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 @@ -172,30 +172,14 @@ epm1-sim: cpu: 190m memory: 900Mi -m2-ess106-sim: - enabled: true - classifier: ess106 - image: - repository: ts-dockerhub.lsst.org/ess - pullPolicy: Always - env: - RUN_ARG: 106 --simulate - resources: - requests: - cpu: 19m - memory: 90Mi - limits: - cpu: 190m - memory: 900Mi - -mtdome-ess101-sim: +m1m3-ess113-sim: enabled: true - classifier: ess101 + classifier: ess113 image: repository: ts-dockerhub.lsst.org/ess pullPolicy: Always env: - RUN_ARG: 101 --simulate + RUN_ARG: 113 --simulate resources: requests: cpu: 19m @@ -204,14 +188,14 @@ mtdome-ess101-sim: 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 +204,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 +300,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/love/values-base.yaml b/applications/love/values-base.yaml index 97398a15ff..68afdb0fa0 100644 --- a/applications/love/values-base.yaml +++ b/applications/love/values-base.yaml @@ -430,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 @@ -466,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 @@ -484,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 @@ -545,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..e7333ceb30 100644 --- a/applications/love/values-tucson-teststand.yaml +++ b/applications/love/values-tucson-teststand.yaml @@ -200,8 +200,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 +210,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 From 899da0f1805bcaef6126ce33553a3eab8c2698ae Mon Sep 17 00:00:00 2001 From: Michael Reuter Date: Wed, 27 Nov 2024 10:55:44 -0700 Subject: [PATCH 52/65] Update LOVE config for TTS. --- .../love/values-tucson-teststand.yaml | 154 +++++++++++++++++- 1 file changed, 153 insertions(+), 1 deletion(-) diff --git a/applications/love/values-tucson-teststand.yaml b/applications/love/values-tucson-teststand.yaml index e7333ceb30..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 From 2d068d43359d73798f659ce800d97904fe784ab2 Mon Sep 17 00:00:00 2001 From: Stelios Voutsinas Date: Mon, 25 Nov 2024 11:36:30 -0700 Subject: [PATCH 53/65] Change OIDC provider in the cadc-tap config to base path --- charts/cadc-tap/README.md | 6 +++--- charts/cadc-tap/templates/configmap.yaml | 2 +- charts/cadc-tap/values.yaml | 6 +++--- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/charts/cadc-tap/README.md b/charts/cadc-tap/README.md index d66a03be28..9e9367dc3d 100644 --- a/charts/cadc-tap/README.md +++ b/charts/cadc-tap/README.md @@ -31,12 +31,12 @@ 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.tapSchemaAddress | string | `"cadc-tap-schema-db:3306"` | Address to a MySQL database containing TAP schema data | @@ -78,7 +78,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/values.yaml b/charts/cadc-tap/values.yaml index e54ff5e156..da92d70b04 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 @@ -195,7 +195,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` From 3ea497f2d8c834f707bdedb37f3ddf3b4178e36f Mon Sep 17 00:00:00 2001 From: Michael Reuter Date: Wed, 27 Nov 2024 12:05:11 -0700 Subject: [PATCH 54/65] Add ESS:109. --- applications/eas/values-base.yaml | 16 ++++++++++++++++ applications/eas/values-tucson-teststand.yaml | 16 ++++++++++++++++ 2 files changed, 32 insertions(+) diff --git a/applications/eas/values-base.yaml b/applications/eas/values-base.yaml index 38497e55c6..2a6c08a2f7 100644 --- a/applications/eas/values-base.yaml +++ b/applications/eas/values-base.yaml @@ -94,6 +94,22 @@ camera-ess111-sim: 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 + memory: 90Mi + limits: + cpu: 190m + memory: 900Mi + dimm1-sim: enabled: true image: diff --git a/applications/eas/values-tucson-teststand.yaml b/applications/eas/values-tucson-teststand.yaml index 38497e55c6..2a6c08a2f7 100644 --- a/applications/eas/values-tucson-teststand.yaml +++ b/applications/eas/values-tucson-teststand.yaml @@ -94,6 +94,22 @@ camera-ess111-sim: 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 + memory: 90Mi + limits: + cpu: 190m + memory: 900Mi + dimm1-sim: enabled: true image: From 85ac91f33ff6f424f4a30e55f9524b3de4ee2cb0 Mon Sep 17 00:00:00 2001 From: Russ Allbery Date: Wed, 27 Nov 2024 15:36:45 -0800 Subject: [PATCH 55/65] Enable Gafaelfawr metrics on idfprod --- applications/gafaelfawr/values-idfprod.yaml | 4 ++++ 1 file changed, 4 insertions(+) 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: From 8e060e1514647d4ca12054be1ea521dc68516b13 Mon Sep 17 00:00:00 2001 From: Russ Allbery Date: Wed, 27 Nov 2024 16:05:48 -0800 Subject: [PATCH 56/65] Tag every GafaelfawrIngress with a service Add service information to every authenticated `GafaelfawrIngress` resource. This will be used for metrics reporting. --- .../charts/alert-database/templates/ingress.yaml | 1 + applications/argo-workflows/templates/ingress.yaml | 3 ++- .../butler/templates/ingress-authenticated.yaml | 1 + applications/checkerboard/templates/ingress.yaml | 1 + applications/cm-service/templates/ingress.yaml | 1 + applications/consdb/templates/ingress.yaml | 1 + applications/datalinker/templates/ingress-image.yaml | 1 + applications/datalinker/templates/ingress-tap.yaml | 1 + applications/exposurelog/templates/ingress.yaml | 1 + applications/fastapi-bootcamp/templates/ingress.yaml | 1 + .../ghostwriter/templates/ingress-toplevel.yaml | 1 + applications/ghostwriter/templates/ingress.yaml | 1 + applications/giftless/templates/ingress.yaml | 1 + applications/hips/templates/ingress.yaml | 1 + applications/jira-data-proxy/templates/ingress.yaml | 3 ++- applications/livetap/README.md | 3 ++- applications/livetap/values.yaml | 5 ++++- applications/mobu/templates/ingress.yaml | 3 ++- applications/narrativelog/templates/ingress.yaml | 1 + applications/nightreport/templates/ingress.yaml | 1 + applications/noteburst/templates/ingress.yaml | 3 ++- .../nublado/templates/controller-ingress-admin.yaml | 1 + .../nublado/templates/controller-ingress-files.yaml | 3 ++- .../nublado/templates/controller-ingress-hub.yaml | 1 + .../nublado/templates/controller-ingress-user.yaml | 1 + applications/nublado/templates/proxy-ingress.yaml | 3 ++- .../nublado/templates/proxy-spawn-ingress.yaml | 3 ++- .../charts/obsenv-ui/templates/ingress.yaml | 3 ++- applications/ook/templates/ingress.yaml | 3 ++- applications/plot-navigator/templates/ingress.yaml | 3 ++- applications/portal/templates/ingress-admin.yaml | 3 ++- applications/portal/templates/ingress.yaml | 3 ++- applications/ppdb-replication/templates/ingress.yaml | 1 + applications/production-tools/templates/ingress.yaml | 3 ++- applications/s3proxy/templates/ingress.yaml | 1 + .../schedview-snapshot/templates/ingress.yaml | 3 ++- applications/sia/templates/ingress.yaml | 1 + applications/siav2/templates/ingress.yaml | 11 ++++++----- .../squareone/templates/ingress-times-square.yaml | 3 ++- applications/ssotap/README.md | 5 +++-- applications/ssotap/values.yaml | 7 +++++-- applications/tap/README.md | 5 +++-- applications/tap/values.yaml | 7 +++++-- .../times-square/templates/ingress-templates.yaml | 3 ++- applications/times-square/templates/ingress.yaml | 3 ++- applications/vo-cutouts/templates/ingress.yaml | 1 + charts/cadc-tap/README.md | 1 + .../cadc-tap/templates/tap-ingress-authenticated.yaml | 5 +++-- charts/cadc-tap/values.yaml | 5 +++++ charts/rubintv/templates/ingress.yaml | 3 ++- starters/fastapi-safir-uws/templates/ingress.yaml | 1 + starters/fastapi-safir/templates/ingress.yaml | 1 + starters/web-service/templates/ingress.yaml | 1 + 53 files changed, 98 insertions(+), 35 deletions(-) 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/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/butler/templates/ingress-authenticated.yaml b/applications/butler/templates/ingress-authenticated.yaml index bf7127de6e..8837ae054a 100644 --- a/applications/butler/templates/ingress-authenticated.yaml +++ b/applications/butler/templates/ingress-authenticated.yaml @@ -16,6 +16,7 @@ config: internal: service: "butler" scopes: [] + service: "butler" template: metadata: 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/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/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/livetap/README.md b/applications/livetap/README.md index 0884f22fe9..cbcac45566 100644 --- a/applications/livetap/README.md +++ b/applications/livetap/README.md @@ -16,7 +16,8 @@ IVOA TAP service | 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.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 | +| cadc-tap.service | string | `"livetap"` | Name of the service from Gafaelfawr's perspective | | 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..3c5c686e26 100644 --- a/applications/livetap/values.yaml +++ b/applications/livetap/values.yaml @@ -1,6 +1,6 @@ cadc-tap: - # Settings for the ingress rules. ingress: + # -- Ingress path that should be routed to this service path: "live" config: @@ -21,6 +21,9 @@ cadc-tap: # -- Vault secret name: the final key in the vault path vaultSecretName: "livetap" + # -- Name of the service from Gafaelfawr's perspective + service: "livetap" + # 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/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/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/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/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/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/s3proxy/templates/ingress.yaml b/applications/s3proxy/templates/ingress.yaml index 61ce54a2ff..ed4bf7d933 100644 --- a/applications/s3proxy/templates/ingress.yaml +++ b/applications/s3proxy/templates/ingress.yaml @@ -13,6 +13,7 @@ config: scopes: all: - "read:image" + service: "s3proxy" template: metadata: name: "s3proxy" 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/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/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..7c2d741eef 100644 --- a/applications/ssotap/README.md +++ b/applications/ssotap/README.md @@ -16,8 +16,9 @@ IVOA TAP service for Solar System Objects | 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.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.service | string | `"ssotap"` | Name of the service from Gafaelfawr's perspective | +| 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..b22e4e2e99 100644 --- a/applications/ssotap/values.yaml +++ b/applications/ssotap/values.yaml @@ -1,6 +1,6 @@ cadc-tap: - # Settings for the ingress rules. ingress: + # -- Ingress path that should be routed to this service path: "ssotap" config: @@ -21,9 +21,12 @@ cadc-tap: vaultSecretName: "ssotap" serviceAccount: - # Name of Service Account + # -- Name of the Kubernetes `ServiceAccount`, used for CloudSQL access name: "ssotap" + # -- Name of the service from Gafaelfawr's perspective + service: "ssotap" + # 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/tap/README.md b/applications/tap/README.md index 62685520be..92ccd1b29e 100644 --- a/applications/tap/README.md +++ b/applications/tap/README.md @@ -13,8 +13,9 @@ IVOA TAP service |-----|------|---------|-------------| | cadc-tap.config.backend | string | `"qserv"` | What type of backend? | | 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 | +| cadc-tap.serviceName | string | `"tap"` | Name of the service from Gafaelfawr's perspective | | 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..e7b34a6998 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: @@ -11,9 +11,12 @@ cadc-tap: vaultSecretName: "tap" serviceAccount: - # Name of Service Account + # -- Name of the Kubernetes `ServiceAccount`, used for CloudSQL access name: "tap" + # -- Name of the service from Gafaelfawr's perspective + serviceName: "tap" + # 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/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/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/charts/cadc-tap/README.md b/charts/cadc-tap/README.md index 9e9367dc3d..1dcfc1198a 100644 --- a/charts/cadc-tap/README.md +++ b/charts/cadc-tap/README.md @@ -39,6 +39,7 @@ IVOA TAP service | 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) | 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 da92d70b04..8f043c830f 100644 --- a/charts/cadc-tap/values.yaml +++ b/charts/cadc-tap/values.yaml @@ -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: "" 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/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/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: "" From 62a010aa5a2009eb953f287aa904e4c0cd789e75 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Mon, 2 Dec 2024 14:49:05 +0000 Subject: [PATCH 57/65] Update Helm release argo-cd to v7.7.7 --- applications/argocd/Chart.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/applications/argocd/Chart.yaml b/applications/argocd/Chart.yaml index 5a010b856e..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.5 + version: 7.7.7 repository: https://argoproj.github.io/argo-helm From bab2624e878cfb3364e37a646bd43c2e55db82e3 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Mon, 2 Dec 2024 16:53:59 +0000 Subject: [PATCH 58/65] Update nginx Docker tag to v1.27.3 --- applications/love/charts/love-nginx/values.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) 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 From 3a8db1a40bbd1c7d5de2b519c3a39f31f9f74d44 Mon Sep 17 00:00:00 2001 From: Russ Allbery Date: Mon, 2 Dec 2024 09:08:07 -0800 Subject: [PATCH 59/65] Update Helm docs --- applications/love/README.md | 2 +- applications/love/charts/love-nginx/README.md | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) 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 | From 7057440d414bad2cda9a34189edbeda2bf9b7a5c Mon Sep 17 00:00:00 2001 From: Russ Allbery Date: Mon, 2 Dec 2024 09:48:53 -0800 Subject: [PATCH 60/65] Fix GafaelfawrIngress for TAP services Move the setting of the service name to the correct location so that the GafaelfawrIngress resources are generated correctly for TAP services. --- applications/livetap/README.md | 2 +- applications/livetap/values.yaml | 6 +++--- applications/ssotap/README.md | 2 +- applications/ssotap/values.yaml | 6 +++--- applications/tap/README.md | 2 +- applications/tap/values.yaml | 6 +++--- 6 files changed, 12 insertions(+), 12 deletions(-) diff --git a/applications/livetap/README.md b/applications/livetap/README.md index cbcac45566..d5a049e88c 100644 --- a/applications/livetap/README.md +++ b/applications/livetap/README.md @@ -15,9 +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.service | 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"` | Ingress path that should be routed to this service | -| cadc-tap.service | string | `"livetap"` | Name of the service from Gafaelfawr's perspective | | 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 3c5c686e26..d397e4eb58 100644 --- a/applications/livetap/values.yaml +++ b/applications/livetap/values.yaml @@ -7,6 +7,9 @@ cadc-tap: # -- What type of backend? backend: "pg" + # -- Name of the service from Gafaelfawr's perspective + service: "livetap" + pg: # -- Postgres hostname:port to connect to # @default -- `"mock-pg:5432"` (the mock pg) @@ -21,9 +24,6 @@ cadc-tap: # -- Vault secret name: the final key in the vault path vaultSecretName: "livetap" - # -- Name of the service from Gafaelfawr's perspective - service: "livetap" - # 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/ssotap/README.md b/applications/ssotap/README.md index 7c2d741eef..1fb274fc57 100644 --- a/applications/ssotap/README.md +++ b/applications/ssotap/README.md @@ -15,9 +15,9 @@ 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.service | 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"` | Ingress path that should be routed to this service | -| cadc-tap.service | string | `"ssotap"` | Name of the service from Gafaelfawr's perspective | | 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 | diff --git a/applications/ssotap/values.yaml b/applications/ssotap/values.yaml index b22e4e2e99..2a9372f439 100644 --- a/applications/ssotap/values.yaml +++ b/applications/ssotap/values.yaml @@ -7,6 +7,9 @@ cadc-tap: # -- What type of backend? backend: "pg" + # -- Name of the service from Gafaelfawr's perspective + service: "ssotap" + pg: # -- Postgres hostname:port to connect to host: "usdf-pg-catalogs.slac.stanford.edu:5432" @@ -24,9 +27,6 @@ cadc-tap: # -- Name of the Kubernetes `ServiceAccount`, used for CloudSQL access name: "ssotap" - # -- Name of the service from Gafaelfawr's perspective - service: "ssotap" - # 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/tap/README.md b/applications/tap/README.md index 92ccd1b29e..b72ac23eb7 100644 --- a/applications/tap/README.md +++ b/applications/tap/README.md @@ -12,10 +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"` | Ingress path that should be routed to this service | | cadc-tap.serviceAccount.name | string | `"tap"` | Name of the Kubernetes `ServiceAccount`, used for CloudSQL access | -| cadc-tap.serviceName | string | `"tap"` | Name of the service from Gafaelfawr's perspective | | 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 e7b34a6998..2e97e2b4fb 100644 --- a/applications/tap/values.yaml +++ b/applications/tap/values.yaml @@ -10,13 +10,13 @@ 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 the Kubernetes `ServiceAccount`, used for CloudSQL access name: "tap" - # -- Name of the service from Gafaelfawr's perspective - serviceName: "tap" - # The following will be set by parameters injected by Argo CD and should not # be set in the individual environment values files. global: From 943b17fbb09f60473f32cb8d99af390bfba711d6 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Mon, 2 Dec 2024 15:15:47 +0000 Subject: [PATCH 61/65] Update confluentinc/cp-kafka-rest Docker tag to v7.8.0 --- applications/sasquatch/README.md | 2 +- applications/sasquatch/charts/rest-proxy/README.md | 2 +- applications/sasquatch/charts/rest-proxy/values.yaml | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/applications/sasquatch/README.md b/applications/sasquatch/README.md index 7ed157c4f2..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 | 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 From ddc3521760ef977993da8acf360b1b11aacabd79 Mon Sep 17 00:00:00 2001 From: Russ Allbery Date: Mon, 2 Dec 2024 10:54:40 -0800 Subject: [PATCH 62/65] Fix Gafaelfawr service name for ssotap and livetap --- applications/livetap/README.md | 2 +- applications/livetap/values.yaml | 2 +- applications/ssotap/README.md | 2 +- applications/ssotap/values.yaml | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/applications/livetap/README.md b/applications/livetap/README.md index d5a049e88c..221ada8fcc 100644 --- a/applications/livetap/README.md +++ b/applications/livetap/README.md @@ -15,7 +15,7 @@ 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.service | string | `"livetap"` | Name of the service from Gafaelfawr's perspective | +| 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"` | Ingress path that should be routed to this service | | global.baseUrl | string | Set by Argo CD | Base URL for the environment | diff --git a/applications/livetap/values.yaml b/applications/livetap/values.yaml index d397e4eb58..778b85d536 100644 --- a/applications/livetap/values.yaml +++ b/applications/livetap/values.yaml @@ -8,7 +8,7 @@ cadc-tap: backend: "pg" # -- Name of the service from Gafaelfawr's perspective - service: "livetap" + serviceName: "livetap" pg: # -- Postgres hostname:port to connect to diff --git a/applications/ssotap/README.md b/applications/ssotap/README.md index 1fb274fc57..c436610a22 100644 --- a/applications/ssotap/README.md +++ b/applications/ssotap/README.md @@ -15,7 +15,7 @@ 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.service | string | `"ssotap"` | Name of the service from Gafaelfawr's perspective | +| 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"` | Ingress path that should be routed to this service | | cadc-tap.serviceAccount.name | string | `"ssotap"` | Name of the Kubernetes `ServiceAccount`, used for CloudSQL access | diff --git a/applications/ssotap/values.yaml b/applications/ssotap/values.yaml index 2a9372f439..e70295723c 100644 --- a/applications/ssotap/values.yaml +++ b/applications/ssotap/values.yaml @@ -8,7 +8,7 @@ cadc-tap: backend: "pg" # -- Name of the service from Gafaelfawr's perspective - service: "ssotap" + serviceName: "ssotap" pg: # -- Postgres hostname:port to connect to From f405684a5cf53f22fa8b45eccfea8dc377dd0840 Mon Sep 17 00:00:00 2001 From: Russ Allbery Date: Mon, 2 Dec 2024 10:56:12 -0800 Subject: [PATCH 63/65] Update Python and pre-commit dependencies --- .pre-commit-config.yaml | 4 +- requirements/dev.txt | 230 +++++++++++++++++++++------------------- requirements/main.txt | 12 +-- requirements/tox.txt | 44 ++++---- 4 files changed, 150 insertions(+), 140 deletions(-) diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index 5a4d453fff..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.8.0 + rev: v0.8.1 hooks: - id: ruff args: [--fix, --exit-non-zero-on-fix] diff --git a/requirements/dev.txt b/requirements/dev.txt index 367b8ee354..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 \ @@ -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,9 +766,9 @@ pycparser==2.22 ; implementation_name == 'pypy' \ # via # -c requirements/main.txt # cffi -pydantic==2.10.1 \ - --hash=sha256:a4daca2dc0aa429555e0656d6bf94873a7dc5f54ee42b1f5873d666fb3f35560 \ - --hash=sha256:a8d20db84de64cf4a7d59e899c2caf0fe9d660c7cfc482528e7020d7dd189a7e +pydantic==2.10.2 \ + --hash=sha256:2bc2d7f17232e0841cbba4641e65ba1eb6fafb3a08de3a091ff3ce14a197c4fa \ + --hash=sha256:cfb96e45951117c3024e6b67b25cdc33a3cb7b2fa62e239f7af1378358a1d99e # via # -c requirements/main.txt # autodoc-pydantic @@ -897,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 @@ -1132,97 +1132,108 @@ 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 @@ -1237,7 +1248,6 @@ six==1.16.0 \ --hash=sha256:8abb2f1d86890a2dfb989f9a77cfcfd3e47c2a354b01111771326f8aa26e0254 # via # -c requirements/main.txt - # asttokens # pybtex # python-dateutil # sphinxcontrib-redoc diff --git a/requirements/main.txt b/requirements/main.txt index bbd62ceaae..714a655a93 100644 --- a/requirements/main.txt +++ b/requirements/main.txt @@ -378,9 +378,9 @@ pycparser==2.22 ; platform_python_implementation != 'PyPy' \ --hash=sha256:491c8be9c040f5390f5bf44a5b07752bd07f56edf992381b05c701439eec10f6 \ --hash=sha256:c3702b6d3dd8c7abc1afa565d7e63d53a1d0bd86cdc24edd75470f4de499cfcc # via cffi -pydantic==2.10.1 \ - --hash=sha256:a4daca2dc0aa429555e0656d6bf94873a7dc5f54ee42b1f5873d666fb3f35560 \ - --hash=sha256:a8d20db84de64cf4a7d59e899c2caf0fe9d660c7cfc482528e7020d7dd189a7e +pydantic==2.10.2 \ + --hash=sha256:2bc2d7f17232e0841cbba4641e65ba1eb6fafb3a08de3a091ff3ce14a197c4fa \ + --hash=sha256:cfb96e45951117c3024e6b67b25cdc33a3cb7b2fa62e239f7af1378358a1d99e # via # phalanx (pyproject.toml) # fastapi @@ -489,9 +489,9 @@ pydantic-core==2.27.1 \ # 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 \ diff --git a/requirements/tox.txt b/requirements/tox.txt index dcbc6bf87d..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.4 \ - --hash=sha256:05b45c7eefb178dcdab0d49cd642fb7487377d00727102a8d6d306cc034c0d83 \ - --hash=sha256:2118bb99cbc9787cb5e5cc4a507201e25a3fe88a9f389e8ffb84f242d96038c2 \ - --hash=sha256:30ce031e36c54d4ba791d743d992d0a4fd8d70480db781d30a2f6f5125f39194 \ - --hash=sha256:4432215deb8d5c1ccab17ee51cb80f5de1a20865ee02df47532f87442a3d6a58 \ - --hash=sha256:493aedc3c758bbaede83ecc8d5f7e6a9279ebec151c7f756aa9ea898c73f8ddb \ - --hash=sha256:69079e900bd26b0f65069ac6fa684c74662ed87121c076f2b1cbcf042539034c \ - --hash=sha256:8d7a4a3df943a7c16cd032ccbaab8ed21ff64f4cb090b3a0a15a8b7502ccd876 \ - --hash=sha256:928ed95fefe4e1338d0a7ad2f6b635de59e2ec92adaed4a267f7501a3b252263 \ - --hash=sha256:a79a0885df364b897da44aae308e6ed9cca3a189d455cf1c205bd6f7b03daafa \ - --hash=sha256:ca72e6a4c3c6b8b5605867e16a7f767f5c99b7f526de6bbb903c60eb44fd1e01 \ - --hash=sha256:cd7a5a3a36f975a7678f27849a2d49bafe7272143d938e9b6f3bf28392a3ba00 \ - --hash=sha256:dd2df2ba823e6684230ab4c581f2320be38d7f46de11ce21d2dbba631470d7b6 \ - --hash=sha256:df3cb58b7da91f4fc647d09c3e96006cd6c7bd424a81ce2308a58593c6887c39 \ - --hash=sha256:ed5659cde099f39995f4cb793fd939d2260b4a26e4e29412c91e7537f53d8d25 \ - --hash=sha256:f07e5e0df40a09154007da41b76932671333f9fecb0735c698b19da25aa08927 \ - --hash=sha256:f40c6c6c3a1b398b56d3a8b28f7b455ac1ce4cbb1469f8d35d3bbc804d83daa4 \ - --hash=sha256:f511faf719b797ef0f14688f1abe20b3fd126209cf58512354d1813249745119 \ - --hash=sha256:f806af0ee451a81099c449c4cff0e813056fdf7dd264f3d3a8fd321b17ff9efc +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 From 2aa62a8ec08729e0d67ba9b2a2c627874054bdef Mon Sep 17 00:00:00 2001 From: Sebastian Aranda Sanchez Date: Mon, 2 Dec 2024 16:26:19 -0300 Subject: [PATCH 64/65] Update rubintv app version to v2.5.5 for summit and usdf production deployments. --- applications/rubintv/values-summit.yaml | 2 +- applications/rubintv/values-usdfprod.yaml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/applications/rubintv/values-summit.yaml b/applications/rubintv/values-summit.yaml index 2f0cc03489..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.4 + tag: v2.5.5 pullPolicy: Always workers: diff --git a/applications/rubintv/values-usdfprod.yaml b/applications/rubintv/values-usdfprod.yaml index c86a44f612..1d920e76cc 100644 --- a/applications/rubintv/values-usdfprod.yaml +++ b/applications/rubintv/values-usdfprod.yaml @@ -18,7 +18,7 @@ rubintv: - name: DDV_CLIENT_WS_ADDRESS value: "rubintv/ws/ddv" image: - tag: v2.5.4 + tag: v2.5.5 pullPolicy: Always workers: From 1cab9994243cb3d3a13e0cc5071bcf8ab10d785a Mon Sep 17 00:00:00 2001 From: Russ Allbery Date: Mon, 2 Dec 2024 15:35:31 -0800 Subject: [PATCH 65/65] Bump Unfurlbot to version 0.3.2 Reorganize `values.yaml` somewhat to match the current starter and remove the obsolete (unused) autoscaling configuration. If we later want to autoscale this service, we'll need to write a new configuration for the current API version anyway. Add labels to a few Kubernetes resources that didn't have them. --- applications/unfurlbot/Chart.yaml | 2 +- applications/unfurlbot/README.md | 6 +--- applications/unfurlbot/secrets.yaml | 3 +- .../unfurlbot/templates/deployment.yaml | 2 -- applications/unfurlbot/templates/hpa.yaml | 28 ------------------- .../unfurlbot/templates/kafkaaccess.yaml | 18 ++++++------ .../unfurlbot/templates/networkpolicy.yaml | 2 ++ applications/unfurlbot/values.yaml | 26 ++++------------- 8 files changed, 22 insertions(+), 65 deletions(-) delete mode 100644 applications/unfurlbot/templates/hpa.yaml 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 d27c557272..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: @@ -103,7 +104,6 @@ ingress: annotations: {} redis: - # -- Resource requests and limits for the redis pod # @default -- see `values.yaml` resources: @@ -114,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: {} @@ -141,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: