From c7541ec2eb310bf89dcc125d53664aacd269eb79 Mon Sep 17 00:00:00 2001 From: Kelly Date: Mon, 15 Dec 2025 07:19:33 -0700 Subject: [PATCH] chore: Rename all references from dispensary-scraper to cannaiq --- .woodpecker.yml | 2 +- .woodpecker/ci.yml | 191 -------------------- backend/k8s/scraper-worker-statefulset.yaml | 6 +- backend/src/routes/deploy-status.ts | 2 +- backend/src/routes/k8s.ts | 2 +- backend/src/routes/workers.ts | 2 +- 6 files changed, 7 insertions(+), 198 deletions(-) delete mode 100644 .woodpecker/ci.yml diff --git a/.woodpecker.yml b/.woodpecker.yml index 042285db..27805ff9 100644 --- a/.woodpecker.yml +++ b/.woodpecker.yml @@ -58,7 +58,7 @@ steps: -H "Authorization: token $GITEA_TOKEN" \ -H "Content-Type: application/json" \ -d '{"Do":"merge"}' \ - "https://git.spdy.io/api/v1/repos/Creationshop/dispensary-scraper/pulls/${CI_COMMIT_PULL_REQUEST}/merge" + "https://git.spdy.io/api/v1/repos/Creationshop/cannaiq/pulls/${CI_COMMIT_PULL_REQUEST}/merge" depends_on: - typecheck-backend - typecheck-cannaiq diff --git a/.woodpecker/ci.yml b/.woodpecker/ci.yml deleted file mode 100644 index 7b106d7d..00000000 --- a/.woodpecker/ci.yml +++ /dev/null @@ -1,191 +0,0 @@ -steps: - # =========================================== - # PR VALIDATION: Only typecheck changed projects - # =========================================== - typecheck-backend: - image: code.cannabrands.app/creationshop/node:20 - commands: - - npm config set cache /npm-cache/backend --global - - cd backend - - npm ci --prefer-offline - - npx tsc --noEmit - volumes: - - npm-cache:/npm-cache - depends_on: [] - when: - event: pull_request - path: - include: ['backend/**'] - - typecheck-cannaiq: - image: code.cannabrands.app/creationshop/node:20 - commands: - - npm config set cache /npm-cache/cannaiq --global - - cd cannaiq - - npm ci --prefer-offline - - npx tsc --noEmit - volumes: - - npm-cache:/npm-cache - depends_on: [] - when: - event: pull_request - path: - include: ['cannaiq/**'] - - # findadispo/findagram typechecks skipped - they have || true anyway - - # =========================================== - # AUTO-MERGE: Merge PR after all checks pass - # =========================================== - auto-merge: - image: alpine:latest - environment: - GITEA_TOKEN: - from_secret: gitea_token - commands: - - apk add --no-cache curl - - | - echo "Merging PR #${CI_COMMIT_PULL_REQUEST}..." - curl -s -X POST \ - -H "Authorization: token $GITEA_TOKEN" \ - -H "Content-Type: application/json" \ - -d '{"Do":"merge"}' \ - "https://code.cannabrands.app/api/v1/repos/Creationshop/dispensary-scraper/pulls/${CI_COMMIT_PULL_REQUEST}/merge" - depends_on: - - typecheck-backend - - typecheck-cannaiq - when: - event: pull_request - - # =========================================== - # MASTER DEPLOY: Parallel Docker builds - # =========================================== - docker-backend: - image: woodpeckerci/plugin-docker-buildx - settings: - registry: code.cannabrands.app - repo: code.cannabrands.app/creationshop/dispensary-scraper - tags: - - latest - - ${CI_COMMIT_SHA:0:8} - dockerfile: backend/Dockerfile - context: backend - username: - from_secret: registry_username - password: - from_secret: registry_password - platforms: linux/amd64 - provenance: false - cache_from: type=registry,ref=code.cannabrands.app/creationshop/dispensary-scraper:cache - cache_to: type=registry,ref=code.cannabrands.app/creationshop/dispensary-scraper:cache,mode=max - build_args: - APP_BUILD_VERSION: ${CI_COMMIT_SHA:0:8} - APP_GIT_SHA: ${CI_COMMIT_SHA} - APP_BUILD_TIME: ${CI_PIPELINE_CREATED} - CONTAINER_IMAGE_TAG: ${CI_COMMIT_SHA:0:8} - depends_on: [] - when: - branch: master - event: push - - docker-cannaiq: - image: woodpeckerci/plugin-docker-buildx - settings: - registry: code.cannabrands.app - repo: code.cannabrands.app/creationshop/cannaiq-frontend - tags: - - latest - - ${CI_COMMIT_SHA:0:8} - dockerfile: cannaiq/Dockerfile - context: cannaiq - username: - from_secret: registry_username - password: - from_secret: registry_password - platforms: linux/amd64 - provenance: false - cache_from: type=registry,ref=code.cannabrands.app/creationshop/cannaiq-frontend:cache - cache_to: type=registry,ref=code.cannabrands.app/creationshop/cannaiq-frontend:cache,mode=max - depends_on: [] - when: - branch: master - event: push - - docker-findadispo: - image: woodpeckerci/plugin-docker-buildx - settings: - registry: code.cannabrands.app - repo: code.cannabrands.app/creationshop/findadispo-frontend - tags: - - latest - - ${CI_COMMIT_SHA:0:8} - dockerfile: findadispo/frontend/Dockerfile - context: findadispo/frontend - username: - from_secret: registry_username - password: - from_secret: registry_password - platforms: linux/amd64 - provenance: false - cache_from: type=registry,ref=code.cannabrands.app/creationshop/findadispo-frontend:cache - cache_to: type=registry,ref=code.cannabrands.app/creationshop/findadispo-frontend:cache,mode=max - depends_on: [] - when: - branch: master - event: push - - docker-findagram: - image: woodpeckerci/plugin-docker-buildx - settings: - registry: code.cannabrands.app - repo: code.cannabrands.app/creationshop/findagram-frontend - tags: - - latest - - ${CI_COMMIT_SHA:0:8} - dockerfile: findagram/frontend/Dockerfile - context: findagram/frontend - username: - from_secret: registry_username - password: - from_secret: registry_password - platforms: linux/amd64 - provenance: false - cache_from: type=registry,ref=code.cannabrands.app/creationshop/findagram-frontend:cache - cache_to: type=registry,ref=code.cannabrands.app/creationshop/findagram-frontend:cache,mode=max - depends_on: [] - when: - branch: master - event: push - - # =========================================== - # STAGE 3: Deploy and Run Migrations - # =========================================== - deploy: - image: bitnami/kubectl:latest - environment: - KUBECONFIG_CONTENT: - from_secret: kubeconfig_data - commands: - - mkdir -p ~/.kube - - echo "$KUBECONFIG_CONTENT" | tr -d '[:space:]' | base64 -d > ~/.kube/config - - chmod 600 ~/.kube/config - # Deploy backend first - - kubectl set image deployment/scraper scraper=code.cannabrands.app/creationshop/dispensary-scraper:${CI_COMMIT_SHA:0:8} -n dispensary-scraper - - kubectl rollout status deployment/scraper -n dispensary-scraper --timeout=300s - # Note: Migrations run automatically at startup via auto-migrate - # Deploy remaining services - # Resilience: ensure workers are scaled up if at 0 - - REPLICAS=$(kubectl get deployment scraper-worker -n dispensary-scraper -o jsonpath='{.spec.replicas}'); if [ "$REPLICAS" = "0" ]; then echo "Scaling workers from 0 to 5"; kubectl scale deployment/scraper-worker --replicas=5 -n dispensary-scraper; fi - - kubectl set image deployment/scraper-worker worker=code.cannabrands.app/creationshop/dispensary-scraper:${CI_COMMIT_SHA:0:8} -n dispensary-scraper - - kubectl set image deployment/cannaiq-frontend cannaiq-frontend=code.cannabrands.app/creationshop/cannaiq-frontend:${CI_COMMIT_SHA:0:8} -n dispensary-scraper - - kubectl set image deployment/findadispo-frontend findadispo-frontend=code.cannabrands.app/creationshop/findadispo-frontend:${CI_COMMIT_SHA:0:8} -n dispensary-scraper - - kubectl set image deployment/findagram-frontend findagram-frontend=code.cannabrands.app/creationshop/findagram-frontend:${CI_COMMIT_SHA:0:8} -n dispensary-scraper - - kubectl rollout status deployment/cannaiq-frontend -n dispensary-scraper --timeout=120s - depends_on: - - docker-backend - - docker-cannaiq - - docker-findadispo - - docker-findagram - when: - branch: master - event: push diff --git a/backend/k8s/scraper-worker-statefulset.yaml b/backend/k8s/scraper-worker-statefulset.yaml index 25973abd..bf85ad1f 100644 --- a/backend/k8s/scraper-worker-statefulset.yaml +++ b/backend/k8s/scraper-worker-statefulset.yaml @@ -2,7 +2,7 @@ apiVersion: v1 kind: Service metadata: name: scraper-worker - namespace: dispensary-scraper + namespace: cannaiq labels: app: scraper-worker spec: @@ -17,7 +17,7 @@ apiVersion: apps/v1 kind: StatefulSet metadata: name: scraper-worker - namespace: dispensary-scraper + namespace: cannaiq spec: serviceName: scraper-worker replicas: 8 @@ -37,7 +37,7 @@ spec: - name: regcred containers: - name: worker - image: code.cannabrands.app/creationshop/dispensary-scraper:latest + image: git.spdy.io/creationshop/cannaiq:latest imagePullPolicy: Always command: ["node"] args: ["dist/tasks/task-worker.js"] diff --git a/backend/src/routes/deploy-status.ts b/backend/src/routes/deploy-status.ts index 8368ba8a..7fbd6bda 100644 --- a/backend/src/routes/deploy-status.ts +++ b/backend/src/routes/deploy-status.ts @@ -9,7 +9,7 @@ const WOODPECKER_TOKEN = process.env.WOODPECKER_TOKEN; const GITEA_SERVER = process.env.GITEA_SERVER || 'https://code.cannabrands.app'; const GITEA_TOKEN = process.env.GITEA_TOKEN; const REPO_OWNER = 'Creationshop'; -const REPO_NAME = 'dispensary-scraper'; +const REPO_NAME = 'cannaiq'; interface PipelineStep { name: string; diff --git a/backend/src/routes/k8s.ts b/backend/src/routes/k8s.ts index 7c9e96e4..55a0066f 100644 --- a/backend/src/routes/k8s.ts +++ b/backend/src/routes/k8s.ts @@ -46,7 +46,7 @@ function getK8sClient(): k8s.AppsV1Api | null { } } -const NAMESPACE = process.env.K8S_NAMESPACE || 'dispensary-scraper'; +const NAMESPACE = process.env.K8S_NAMESPACE || 'cannaiq'; const WORKER_DEPLOYMENT = 'scraper-worker'; /** diff --git a/backend/src/routes/workers.ts b/backend/src/routes/workers.ts index d6914650..f194b41a 100644 --- a/backend/src/routes/workers.ts +++ b/backend/src/routes/workers.ts @@ -49,7 +49,7 @@ const router = Router(); // Per TASK_WORKFLOW_2024-12-10.md: Admin can scale workers from UI // ============================================================ -const K8S_NAMESPACE = process.env.K8S_NAMESPACE || 'dispensary-scraper'; +const K8S_NAMESPACE = process.env.K8S_NAMESPACE || 'cannaiq'; const K8S_DEPLOYMENT_NAME = process.env.K8S_WORKER_DEPLOYMENT || 'scraper-worker'; // Initialize K8s client - uses in-cluster config when running in K8s,