Skip to content

Commit cc976aa

Browse files
committed
Merge branch 'dev' into main
2 parents 55ccf1b + f81920b commit cc976aa

3 files changed

Lines changed: 29 additions & 24 deletions

File tree

‎.github/workflows/deploy.yml‎

Lines changed: 12 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -28,26 +28,20 @@ jobs:
2828
- name: Install dependencies
2929
run: pnpm install --frozen-lockfile
3030

31-
- name: Deploy Sanity Studio
32-
run: npx sanity deploy -y
33-
working-directory: apps/sanity
34-
env:
35-
SANITY_AUTH_TOKEN: ${{ secrets.SANITY_AUTH_TOKEN }}
36-
SANITY_STUDIO_HOSTNAME: ${{ vars.SANITY_STUDIO_HOSTNAME }}
37-
SANITY_STUDIO_DATASET: ${{ vars.SANITY_STUDIO_DATASET }}
38-
SANITY_STUDIO_PROJECT_ID: ${{ vars.SANITY_STUDIO_PROJECT_ID }}
39-
40-
- name: Deploy Sanity Blueprints
41-
continue-on-error: true
31+
- name: Deploy Sanity via Blueprints (Studio & Functions)
4232
run: |
33+
npx sanity blueprints promote --project-id ${{ vars.SANITY_STUDIO_PROJECT_ID }} --stack ${{ vars.SANITY_STUDIO_DATASET }} --force || true
34+
npx sanity blueprints deploy --stack ${{ vars.SANITY_STUDIO_DATASET }} || \
4335
npx sanity blueprints deploy --project-id ${{ vars.SANITY_STUDIO_PROJECT_ID }} --stack ${{ vars.SANITY_STUDIO_DATASET }} || \
44-
npx sanity blueprints init . --blueprint-type ts --project-id ${{ vars.SANITY_STUDIO_PROJECT_ID }} --stack-name ${{ vars.SANITY_STUDIO_DATASET }} || true
36+
npx sanity deploy -y
4537
working-directory: apps/sanity
4638
env:
4739
SANITY_AUTH_TOKEN: ${{ secrets.SANITY_AUTH_TOKEN }}
4840
SANITY_PROJECT_ID: ${{ vars.SANITY_STUDIO_PROJECT_ID }}
4941
SANITY_STUDIO_PROJECT_ID: ${{ vars.SANITY_STUDIO_PROJECT_ID }}
5042
SANITY_STUDIO_DATASET: ${{ vars.SANITY_STUDIO_DATASET }}
43+
SANITY_STUDIO_HOSTNAME: ${{ vars.SANITY_STUDIO_HOSTNAME }}
44+
YOUTUBE_API_KEY: ${{ secrets.YOUTUBE_API_KEY }}
5145

5246
deploy-production:
5347
if: github.ref == 'refs/heads/main'
@@ -67,24 +61,18 @@ jobs:
6761
- name: Install dependencies
6862
run: pnpm install --frozen-lockfile
6963

70-
- name: Deploy Sanity Studio
71-
run: npx sanity deploy -y
72-
working-directory: apps/sanity
73-
env:
74-
SANITY_AUTH_TOKEN: ${{ secrets.SANITY_AUTH_TOKEN }}
75-
SANITY_STUDIO_HOSTNAME: ${{ vars.SANITY_STUDIO_HOSTNAME }}
76-
SANITY_STUDIO_DATASET: ${{ vars.SANITY_STUDIO_DATASET }}
77-
SANITY_STUDIO_PROJECT_ID: ${{ vars.SANITY_STUDIO_PROJECT_ID }}
78-
79-
- name: Deploy Sanity Blueprints
80-
continue-on-error: true
64+
- name: Deploy Sanity via Blueprints (Studio & Functions)
8165
run: |
66+
npx sanity blueprints promote --project-id ${{ vars.SANITY_STUDIO_PROJECT_ID }} --stack ${{ vars.SANITY_STUDIO_DATASET }} --force || true
67+
npx sanity blueprints deploy --stack ${{ vars.SANITY_STUDIO_DATASET }} || \
8268
npx sanity blueprints deploy --project-id ${{ vars.SANITY_STUDIO_PROJECT_ID }} --stack ${{ vars.SANITY_STUDIO_DATASET }} || \
83-
npx sanity blueprints init . --blueprint-type ts --project-id ${{ vars.SANITY_STUDIO_PROJECT_ID }} --stack-name ${{ vars.SANITY_STUDIO_DATASET }} || true
69+
npx sanity deploy -y
8470
working-directory: apps/sanity
8571
env:
8672
SANITY_AUTH_TOKEN: ${{ secrets.SANITY_AUTH_TOKEN }}
8773
SANITY_PROJECT_ID: ${{ vars.SANITY_STUDIO_PROJECT_ID }}
8874
SANITY_STUDIO_PROJECT_ID: ${{ vars.SANITY_STUDIO_PROJECT_ID }}
8975
SANITY_STUDIO_DATASET: ${{ vars.SANITY_STUDIO_DATASET }}
76+
SANITY_STUDIO_HOSTNAME: ${{ vars.SANITY_STUDIO_HOSTNAME }}
77+
YOUTUBE_API_KEY: ${{ secrets.YOUTUBE_API_KEY }}
9078

‎apps/sanity/sanity.blueprint.ts‎

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,10 +2,21 @@ import {
22
defineBlueprint,
33
defineDocumentFunction,
44
defineScheduledFunction,
5+
defineStudio,
56
} from "@sanity/blueprints";
67

78
export default defineBlueprint({
89
resources: [
10+
defineStudio({
11+
name: "studio",
12+
title: "CodingCatDev Studio",
13+
project: process.env.SANITY_STUDIO_PROJECT_ID || "hfh83o0w",
14+
root: ".",
15+
slug: process.env.SANITY_STUDIO_HOSTNAME || "codingcat-prod",
16+
autoUpdates: {
17+
enabled: true,
18+
},
19+
}),
920
defineDocumentFunction({
1021
name: "syndicate-content",
1122
displayName: "Syndicate Content (Dev.to & Hashnode)",

‎apps/sanity/sanity.cli.ts‎

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,12 @@ export default defineCliConfig({
77
},
88
// Set via SANITY_STUDIO_HOSTNAME in CI: e.g. "codingcat.dev" (prod), "codingcat-dev" (dev)
99
studioHost: process.env.SANITY_STUDIO_HOSTNAME,
10+
deployment: {
11+
appId:
12+
process.env.SANITY_STUDIO_DATASET === "dev"
13+
? "v3ekp24b18rznov8t8r8p8v7"
14+
: "kkqlvww6axzooqsa23pm0075",
15+
},
1016
typegen: {
1117
// Queries must live in .ts files — TypeGen cannot parse .astro frontmatter,
1218
// so defineQuery calls inside .astro are silently skipped.

0 commit comments

Comments
 (0)