Compare commits
1 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 1952f546b5 |
@@ -4,10 +4,10 @@ description: Atlantis map and simulation service
|
|||||||
type: application
|
type: application
|
||||||
# This is the chart version. This version number should be incremented each time you make changes
|
# This is the chart version. This version number should be incremented each time you make changes
|
||||||
# to the chart and its templates, including the app version.
|
# to the chart and its templates, including the app version.
|
||||||
version: v1.42.23
|
version: v2.6.6
|
||||||
# This is the version number of the application being deployed. This version number should be
|
# This is the version number of the application being deployed. This version number should be
|
||||||
# incremented each time you make changes to the application.
|
# incremented each time you make changes to the application.
|
||||||
appVersion: v1.42.23
|
appVersion: v2.6.6
|
||||||
dependencies:
|
dependencies:
|
||||||
- name: diagrid-dashboard
|
- name: diagrid-dashboard
|
||||||
version: "0.1.0"
|
version: "0.1.0"
|
||||||
|
|||||||
@@ -4,7 +4,7 @@
|
|||||||
replicaCount: 1
|
replicaCount: 1
|
||||||
image:
|
image:
|
||||||
repository: git.oceanbox.io/oceanbox/poseidon/atlantis
|
repository: git.oceanbox.io/oceanbox/poseidon/atlantis
|
||||||
tag: v1.42.23
|
tag: v2.6.6
|
||||||
pullPolicy: IfNotPresent
|
pullPolicy: IfNotPresent
|
||||||
init:
|
init:
|
||||||
enabled: false
|
enabled: false
|
||||||
|
|||||||
@@ -13,9 +13,9 @@ type: application
|
|||||||
# This is the chart version. This version number should be incremented each time you make changes
|
# This is the chart version. This version number should be incremented each time you make changes
|
||||||
# to the chart and its templates, including the app version.
|
# to the chart and its templates, including the app version.
|
||||||
# Versions are expected to follow Semantic Versioning (https://semver.org/)
|
# Versions are expected to follow Semantic Versioning (https://semver.org/)
|
||||||
version: v1.42.23
|
version: v2.6.6
|
||||||
# This is the version number of the application being deployed. This version number should be
|
# This is the version number of the application being deployed. This version number should be
|
||||||
# incremented each time you make changes to the application. Versions are not expected to
|
# incremented each time you make changes to the application. Versions are not expected to
|
||||||
# follow Semantic Versioning. They should reflect the version the application is using.
|
# follow Semantic Versioning. They should reflect the version the application is using.
|
||||||
# It is recommended to use it with quotes.
|
# It is recommended to use it with quotes.
|
||||||
appVersion: "v1.42.23"
|
appVersion: "v2.6.6"
|
||||||
|
|||||||
@@ -10,7 +10,7 @@ image:
|
|||||||
# This sets the pull policy for images.
|
# This sets the pull policy for images.
|
||||||
pullPolicy: IfNotPresent
|
pullPolicy: IfNotPresent
|
||||||
# Overrides the image tag whose default is the chart appVersion.
|
# Overrides the image tag whose default is the chart appVersion.
|
||||||
tag: v1.42.23
|
tag: v2.6.6
|
||||||
# This is for the secrets for pulling an image from a private repository more information can be found here: https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry/
|
# This is for the secrets for pulling an image from a private repository more information can be found here: https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry/
|
||||||
imagePullSecrets:
|
imagePullSecrets:
|
||||||
- name: gitlab-pull-secret
|
- name: gitlab-pull-secret
|
||||||
|
|||||||
@@ -4,10 +4,10 @@ description: A Helm chart for Kubernetes
|
|||||||
type: application
|
type: application
|
||||||
# This is the chart version. This version number should be incremented each time you make changes
|
# This is the chart version. This version number should be incremented each time you make changes
|
||||||
# to the chart and its templates, including the app version.
|
# to the chart and its templates, including the app version.
|
||||||
version: v1.42.23
|
version: v2.6.6
|
||||||
# This is the version number of the application being deployed. This version number should be
|
# This is the version number of the application being deployed. This version number should be
|
||||||
# incremented each time you make changes to the application.
|
# incremented each time you make changes to the application.
|
||||||
appVersion: v1.42.23
|
appVersion: v2.6.6
|
||||||
dependencies:
|
dependencies:
|
||||||
- name: diagrid-dashboard
|
- name: diagrid-dashboard
|
||||||
version: "0.1.0"
|
version: "0.1.0"
|
||||||
|
|||||||
@@ -5,7 +5,7 @@
|
|||||||
replicaCount: 1
|
replicaCount: 1
|
||||||
image:
|
image:
|
||||||
repository: git.oceanbox.io/oceanbox/poseidon/sorcerer
|
repository: git.oceanbox.io/oceanbox/poseidon/sorcerer
|
||||||
tag: v1.42.23
|
tag: v2.6.6
|
||||||
pullPolicy: IfNotPresent
|
pullPolicy: IfNotPresent
|
||||||
init:
|
init:
|
||||||
enabled: false
|
enabled: false
|
||||||
|
|||||||
@@ -15,7 +15,7 @@ releases:
|
|||||||
- name: argocd
|
- name: argocd
|
||||||
namespace: argocd
|
namespace: argocd
|
||||||
chart: argo/argo-cd
|
chart: argo/argo-cd
|
||||||
version: 9.5.15
|
version: 9.5.12
|
||||||
condition: argo.enabled
|
condition: argo.enabled
|
||||||
values:
|
values:
|
||||||
- ../values/argo/values/argocd.yaml.gotmpl
|
- ../values/argo/values/argocd.yaml.gotmpl
|
||||||
@@ -27,7 +27,7 @@ releases:
|
|||||||
- name: argocd-apps
|
- name: argocd-apps
|
||||||
namespace: argocd
|
namespace: argocd
|
||||||
chart: argo/argocd-apps
|
chart: argo/argocd-apps
|
||||||
version: 2.0.5
|
version: 2.0.4
|
||||||
condition: argo.apps.enabled
|
condition: argo.apps.enabled
|
||||||
values:
|
values:
|
||||||
- ../values/argo/values/apps.yaml.gotmpl
|
- ../values/argo/values/apps.yaml.gotmpl
|
||||||
@@ -43,7 +43,7 @@ releases:
|
|||||||
- name: argo-workflows
|
- name: argo-workflows
|
||||||
namespace: argocd
|
namespace: argocd
|
||||||
chart: argo/argo-workflows
|
chart: argo/argo-workflows
|
||||||
version: 1.0.14
|
version: 1.0.13
|
||||||
condition: argo.workflows.enabled
|
condition: argo.workflows.enabled
|
||||||
missingFileHandler: Info
|
missingFileHandler: Info
|
||||||
- name: manifests
|
- name: manifests
|
||||||
|
|||||||
@@ -10,7 +10,7 @@ releases:
|
|||||||
- name: jobset
|
- name: jobset
|
||||||
namespace: jobset-system
|
namespace: jobset-system
|
||||||
chart: jobset/jobset
|
chart: jobset/jobset
|
||||||
version: 0.11.1
|
version: 0.12.0
|
||||||
condition: jobset.enabled
|
condition: jobset.enabled
|
||||||
values:
|
values:
|
||||||
- ../values/jobset/values/jobset.yaml.gotmpl
|
- ../values/jobset/values/jobset.yaml.gotmpl
|
||||||
|
|||||||
@@ -15,7 +15,7 @@ releases:
|
|||||||
- name: kyverno
|
- name: kyverno
|
||||||
namespace: kyverno
|
namespace: kyverno
|
||||||
chart: kyverno/kyverno
|
chart: kyverno/kyverno
|
||||||
version: 3.8.1
|
version: 3.8.0
|
||||||
condition: kyverno.enabled
|
condition: kyverno.enabled
|
||||||
values:
|
values:
|
||||||
- ../values/kyverno/values/kyverno.yaml.gotmpl
|
- ../values/kyverno/values/kyverno.yaml.gotmpl
|
||||||
|
|||||||
@@ -16,7 +16,7 @@ releases:
|
|||||||
namespace: {{ .Environment.Name }}-openfga
|
namespace: {{ .Environment.Name }}-openfga
|
||||||
{{- end }}
|
{{- end }}
|
||||||
chart: openfga/openfga
|
chart: openfga/openfga
|
||||||
version: 0.3.5
|
version: 0.3.3
|
||||||
condition: openfga.enabled
|
condition: openfga.enabled
|
||||||
values:
|
values:
|
||||||
- ../values/openfga/values/values.yaml
|
- ../values/openfga/values/values.yaml
|
||||||
|
|||||||
@@ -12,7 +12,7 @@ releases:
|
|||||||
- name: opentelemetry-collector
|
- name: opentelemetry-collector
|
||||||
namespace: otel
|
namespace: otel
|
||||||
chart: open-telemetry/opentelemetry-collector
|
chart: open-telemetry/opentelemetry-collector
|
||||||
version: 0.156.2
|
version: 0.153.0
|
||||||
condition: otel.enabled
|
condition: otel.enabled
|
||||||
values:
|
values:
|
||||||
- ../values/opentelemetry-collector/values/values.yaml
|
- ../values/opentelemetry-collector/values/values.yaml
|
||||||
|
|||||||
@@ -15,7 +15,7 @@ releases:
|
|||||||
- name: postgres-operator
|
- name: postgres-operator
|
||||||
namespace: cnpg
|
namespace: cnpg
|
||||||
chart: cloudnative-pg/cloudnative-pg
|
chart: cloudnative-pg/cloudnative-pg
|
||||||
version: 0.28.2
|
version: 0.28.0
|
||||||
condition: postgres_operator.enabled
|
condition: postgres_operator.enabled
|
||||||
values:
|
values:
|
||||||
- ../values/postgres-operator/values/postgres-operator.yaml.gotmpl
|
- ../values/postgres-operator/values/postgres-operator.yaml.gotmpl
|
||||||
|
|||||||
@@ -15,7 +15,7 @@ releases:
|
|||||||
- name: prometheus
|
- name: prometheus
|
||||||
namespace: prometheus
|
namespace: prometheus
|
||||||
chart: prometheus/kube-prometheus-stack
|
chart: prometheus/kube-prometheus-stack
|
||||||
version: 82.18.0
|
version: 82.15.1
|
||||||
condition: prometheus.enabled
|
condition: prometheus.enabled
|
||||||
values:
|
values:
|
||||||
- ../values/prometheus/values/prometheus.yaml.gotmpl
|
- ../values/prometheus/values/prometheus.yaml.gotmpl
|
||||||
|
|||||||
@@ -3,8 +3,7 @@ kind: ConfigMap
|
|||||||
metadata:
|
metadata:
|
||||||
name: beta-atlantis-actor-config
|
name: beta-atlantis-actor-config
|
||||||
data:
|
data:
|
||||||
KUEUE_NAMESPACE: "prod-queue"
|
XTRACT_IMAGE: "git.oceanbox.io/oceanbox/katamari/excavator:v1.2.8"
|
||||||
XTRACT_IMAGE: "git.oceanbox.io/oceanbox/katamari/excavator:v1.2.14"
|
|
||||||
XTRACT_QUEUE: "prod-queue"
|
XTRACT_QUEUE: "prod-queue"
|
||||||
PLUME_IMAGE: "git.oceanbox.io/oceanbox/katamari/plume:v1.2.14"
|
PLUME_IMAGE: "git.oceanbox.io/oceanbox/katamari/plume:v1.2.8"
|
||||||
PLUME_QUEUE: "prod-queue"
|
PLUME_QUEUE: "prod-queue"
|
||||||
|
|||||||
@@ -3,7 +3,6 @@ kind: ConfigMap
|
|||||||
metadata:
|
metadata:
|
||||||
name: prod-atlantis-actor-config
|
name: prod-atlantis-actor-config
|
||||||
data:
|
data:
|
||||||
KUEUE_NAMESPACE: "prod-queue"
|
|
||||||
XTRACT_IMAGE: "git.oceanbox.io/oceanbox/katamari/excavator:v1.2.8"
|
XTRACT_IMAGE: "git.oceanbox.io/oceanbox/katamari/excavator:v1.2.8"
|
||||||
XTRACT_QUEUE: "prod-queue"
|
XTRACT_QUEUE: "prod-queue"
|
||||||
PLUME_IMAGE: "git.oceanbox.io/oceanbox/katamari/plume:v1.2.8"
|
PLUME_IMAGE: "git.oceanbox.io/oceanbox/katamari/plume:v1.2.8"
|
||||||
|
|||||||
@@ -3,7 +3,7 @@ kind: ConfigMap
|
|||||||
metadata:
|
metadata:
|
||||||
name: staging-atlantis-actor-config
|
name: staging-atlantis-actor-config
|
||||||
data:
|
data:
|
||||||
XTRACT_IMAGE: "git.oceanbox.io/oceanbox/katamari/excavator:v1.2.14"
|
XTRACT_IMAGE: "git.oceanbox.io/oceanbox/katamari/excavator:v1.2.12"
|
||||||
XTRACT_QUEUE: "dev-queue"
|
XTRACT_QUEUE: "dev-queue"
|
||||||
PLUME_IMAGE: "git.oceanbox.io/oceanbox/katamari/plume:v1.2.14"
|
PLUME_IMAGE: "git.oceanbox.io/oceanbox/katamari/plume:v1.2.12"
|
||||||
PLUME_QUEUE: "dev-queue"
|
PLUME_QUEUE: "dev-queue"
|
||||||
|
|||||||
@@ -2,7 +2,7 @@ replicaCount: 1
|
|||||||
|
|
||||||
image:
|
image:
|
||||||
repository: git.oceanbox.io/oceanbox/poseidon/atlantis
|
repository: git.oceanbox.io/oceanbox/poseidon/atlantis
|
||||||
tag: v2.8.0
|
tag: v2.6.6
|
||||||
|
|
||||||
podAnnotations:
|
podAnnotations:
|
||||||
dapr.io/app-id: "beta-atlantis"
|
dapr.io/app-id: "beta-atlantis"
|
||||||
@@ -11,7 +11,7 @@ env:
|
|||||||
- name: APP_NAMESPACE
|
- name: APP_NAMESPACE
|
||||||
value: beta-atlantis
|
value: beta-atlantis
|
||||||
- name: APP_VERSION
|
- name: APP_VERSION
|
||||||
value: "2.8.0-beta"
|
value: "2.6.6-beta"
|
||||||
- name: LOG_LEVEL
|
- name: LOG_LEVEL
|
||||||
value: "1"
|
value: "1"
|
||||||
- name: ANALYTICS_WEB_ID
|
- name: ANALYTICS_WEB_ID
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
replicaCount: 1
|
replicaCount: 1
|
||||||
image:
|
image:
|
||||||
repository: git.oceanbox.io/oceanbox/poseidon/atlantis
|
repository: git.oceanbox.io/oceanbox/poseidon/atlantis
|
||||||
tag: d46af365-debug
|
tag: 0042495a-debug
|
||||||
podAnnotations:
|
podAnnotations:
|
||||||
dapr.io/app-id: "staging-atlantis"
|
dapr.io/app-id: "staging-atlantis"
|
||||||
env:
|
env:
|
||||||
|
|||||||
@@ -38,4 +38,4 @@ volumeMounts:
|
|||||||
readOnly: true
|
readOnly: true
|
||||||
subPath: appsettings.json
|
subPath: appsettings.json
|
||||||
image:
|
image:
|
||||||
tag: 10c7cef3-debug
|
tag: 0042495a-debug
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
replicaCount: 1
|
replicaCount: 1
|
||||||
image:
|
image:
|
||||||
tag: "4147901d-debug"
|
tag: "5e339995-debug"
|
||||||
env:
|
env:
|
||||||
- name: APP_VERSION
|
- name: APP_VERSION
|
||||||
value: "0.0.0"
|
value: "0.0.0"
|
||||||
|
|||||||
@@ -1,42 +1,3 @@
|
|||||||
---
|
|
||||||
apiVersion: v1
|
|
||||||
kind: PersistentVolume
|
|
||||||
metadata:
|
|
||||||
name: pv-prod-queue-ceph-archives
|
|
||||||
spec:
|
|
||||||
accessModes:
|
|
||||||
- ReadWriteMany
|
|
||||||
capacity:
|
|
||||||
storage: 1Gi
|
|
||||||
csi:
|
|
||||||
driver: rook-ceph.cephfs.csi.ceph.com
|
|
||||||
nodeStageSecretRef:
|
|
||||||
name: rook-csi-cephfs-node
|
|
||||||
namespace: rook-ceph
|
|
||||||
volumeAttributes:
|
|
||||||
clusterID: rook-ceph
|
|
||||||
fsName: data
|
|
||||||
rootPath: /
|
|
||||||
staticVolume: "true"
|
|
||||||
volumeHandle: pv-prod-queue-ceph-archives
|
|
||||||
persistentVolumeReclaimPolicy: Retain
|
|
||||||
volumeMode: Filesystem
|
|
||||||
---
|
|
||||||
apiVersion: v1
|
|
||||||
kind: PersistentVolumeClaim
|
|
||||||
metadata:
|
|
||||||
name: prod-queue-ceph-archives
|
|
||||||
namespace: prod-queue
|
|
||||||
spec:
|
|
||||||
accessModes:
|
|
||||||
- ReadWriteMany
|
|
||||||
resources:
|
|
||||||
requests:
|
|
||||||
storage: 1Gi
|
|
||||||
storageClassName: ""
|
|
||||||
volumeMode: Filesystem
|
|
||||||
volumeName: pv-prod-queue-ceph-archives
|
|
||||||
---
|
|
||||||
# Cross-namespace RBAC: allow sorcerer ServiceAccounts to manage JobSets in dev-queue
|
# Cross-namespace RBAC: allow sorcerer ServiceAccounts to manage JobSets in dev-queue
|
||||||
apiVersion: rbac.authorization.k8s.io/v1
|
apiVersion: rbac.authorization.k8s.io/v1
|
||||||
kind: Role
|
kind: Role
|
||||||
|
|||||||
@@ -21,7 +21,7 @@
|
|||||||
path: /spec/template/spec/containers/0/envFrom/-
|
path: /spec/template/spec/containers/0/envFrom/-
|
||||||
value:
|
value:
|
||||||
secretRef:
|
secretRef:
|
||||||
name: beta-sorcerer-env
|
name: prod-sorcerer-env
|
||||||
- op: add
|
- op: add
|
||||||
path: /spec/template/spec/containers/0/envFrom/-
|
path: /spec/template/spec/containers/0/envFrom/-
|
||||||
value:
|
value:
|
||||||
|
|||||||
@@ -2,7 +2,7 @@ replicaCount: 1
|
|||||||
|
|
||||||
image:
|
image:
|
||||||
repository: git.oceanbox.io/oceanbox/poseidon/sorcerer
|
repository: git.oceanbox.io/oceanbox/poseidon/sorcerer
|
||||||
tag: v2.8.0
|
tag: v2.6.6
|
||||||
|
|
||||||
podAnnotations:
|
podAnnotations:
|
||||||
dapr.io/enabled: "true"
|
dapr.io/enabled: "true"
|
||||||
@@ -19,7 +19,7 @@ podAnnotations:
|
|||||||
|
|
||||||
env:
|
env:
|
||||||
- name: APP_VERSION
|
- name: APP_VERSION
|
||||||
value: "2.8.0-beta"
|
value: "2.6.6-beta"
|
||||||
- name: LOG_LEVEL
|
- name: LOG_LEVEL
|
||||||
value: "1"
|
value: "1"
|
||||||
- name: REDIS_USER
|
- name: REDIS_USER
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
replicaCount: 1
|
replicaCount: 1
|
||||||
image:
|
image:
|
||||||
repository: git.oceanbox.io/oceanbox/poseidon/sorcerer
|
repository: git.oceanbox.io/oceanbox/poseidon/sorcerer
|
||||||
tag: f583579d-debug
|
tag: 0042495a-debug
|
||||||
podAnnotations:
|
podAnnotations:
|
||||||
dapr.io/enabled: "true"
|
dapr.io/enabled: "true"
|
||||||
dapr.io/app-id: "staging-sorcerer"
|
dapr.io/app-id: "staging-sorcerer"
|
||||||
|
|||||||
@@ -23,8 +23,8 @@ SELECT
|
|||||||
*
|
*
|
||||||
FROM
|
FROM
|
||||||
crosstab(
|
crosstab(
|
||||||
'SELECT "group", sim_type, count::text FROM weekly_sim_submit_count WHERE sim_type <> ''lice-network'' AND sim_type <> ''lice-delousing'' ORDER BY 1, 2',
|
'SELECT "group", sim_type, count::text FROM weekly_sim_submit_count_v2 ORDER BY 1, 2',
|
||||||
'SELECT DISTINCT sim_type FROM weekly_sim_submit_count WHERE sim_type <> ''lice-network'' AND sim_type <> ''lice-delousing'' ORDER BY 1'
|
'SELECT DISTINCT sim_type FROM weekly_sim_submit_count_v2 ORDER BY 1'
|
||||||
) AS ct (
|
) AS ct (
|
||||||
group_name text,
|
group_name text,
|
||||||
lice bigint,
|
lice bigint,
|
||||||
@@ -33,9 +33,3 @@ FROM
|
|||||||
virus bigint,
|
virus bigint,
|
||||||
watercontact bigint
|
watercontact bigint
|
||||||
)
|
)
|
||||||
WHERE
|
|
||||||
(lice + sedimentation + transport + virus + watercontact) <> 0
|
|
||||||
AND "group" <> '@oceanbox.io'
|
|
||||||
ORDER BY
|
|
||||||
(lice + sedimentation + transport + virus + watercontact) DESC
|
|
||||||
;
|
|
||||||
|
|||||||
@@ -9,11 +9,9 @@ WITH base AS (
|
|||||||
WHERE
|
WHERE
|
||||||
w.website_id = '16e7d807-4db5-45fd-92a9-27393445a153'
|
w.website_id = '16e7d807-4db5-45fd-92a9-27393445a153'
|
||||||
AND w.event_type = 1
|
AND w.event_type = 1
|
||||||
-- NOTE: This is only available in grafana
|
AND w.created_at BETWEEN '2025-10-13' AND '2025-10-19'
|
||||||
-- AND $__timeFilter(w.created_at)
|
|
||||||
AND w.created_at BETWEEN current_timestamp - '7 days'::interval and current_timestamp
|
|
||||||
AND s.distinct_id IS NOT NULL
|
AND s.distinct_id IS NOT NULL
|
||||||
-- AND substring(s.distinct_id SIMILAR '%#"@%#"' ESCAPE '#') IN ($groups)
|
-- AND substring(s.distinct_id SIMILAR '%#"@%#"' ESCAPE '#') IN ('@leroyseafood.com')
|
||||||
),
|
),
|
||||||
unique_totals AS (
|
unique_totals AS (
|
||||||
SELECT
|
SELECT
|
||||||
@@ -30,12 +28,9 @@ unique_users AS (
|
|||||||
GROUP BY "Group"
|
GROUP BY "Group"
|
||||||
)
|
)
|
||||||
SELECT
|
SELECT
|
||||||
t."Group",
|
SUM("Users in range")
|
||||||
t."Users in range" AS "Weekly users"
|
FROM
|
||||||
FROM unique_totals t
|
unique_totals
|
||||||
LEFT JOIN
|
|
||||||
unique_users u USING ("Group")
|
|
||||||
WHERE
|
WHERE
|
||||||
t."Group" <> '@oceanbox.io'
|
LOWER("Group") NOT IN ('@oceanbox.io')
|
||||||
ORDER BY
|
;
|
||||||
"Users in range" DESC;
|
|
||||||
|
|||||||
@@ -14,10 +14,6 @@ WHERE
|
|||||||
AND w.event_type = 1
|
AND w.event_type = 1
|
||||||
AND s.distinct_id IS NOT NULL
|
AND s.distinct_id IS NOT NULL
|
||||||
AND substring(s.distinct_id SIMILAR '%#"@%#"' ESCAPE '#') <> '@oceanbox.io'
|
AND substring(s.distinct_id SIMILAR '%#"@%#"' ESCAPE '#') <> '@oceanbox.io'
|
||||||
AND 2025 < EXTRACT(YEAR FROM w.created_at)
|
|
||||||
-- NOTE(simkir): We started with umami at this time, so the data that week was not complete
|
|
||||||
AND (NOT (EXTRACT(YEAR FROM w.created_at) = 2025 AND EXTRACT(WEEK FROM w.created_at) = 37))
|
|
||||||
AND (NOT (EXTRACT(YEAR FROM w.created_at) = 2025 AND EXTRACT(WEEK FROM w.created_at) = 1))
|
|
||||||
GROUP BY
|
GROUP BY
|
||||||
week
|
week
|
||||||
ORDER BY
|
ORDER BY
|
||||||
|
|||||||
Reference in New Issue
Block a user