diff --git a/functions/start-instance.ts b/functions/start-instance.ts index 6903830..0c49df7 100644 --- a/functions/start-instance.ts +++ b/functions/start-instance.ts @@ -7,11 +7,14 @@ import type { ContextData } from 'wildebeest/backend/src/types/context' import type { InstanceConfig } from 'wildebeest/backend/src/config' import * as config from 'wildebeest/backend/src/config' +import * as frontend from '../frontend/server/entry.cloudflare-pages' + export const onRequestPost: PagesFunction = async ({ request, env }) => { return handlePostRequest(request, env.DATABASE, env.ACCESS_AUTH_DOMAIN, env.ACCESS_AUD) } -export const onRequestGet: PagesFunction = async ({ request, env, next }) => { +export const onRequestGet: PagesFunction = async (ctx) => { + const { request, env, next } = ctx const cookie = parse(request.headers.get('Cookie') || '') const jwt = cookie['CF_Authorization'] if (!jwt) { @@ -24,7 +27,7 @@ export const onRequestGet: PagesFunction = async ({ request, env, next return Response.redirect(url) } - return next() + return frontend.onRequest(ctx) } export async function handlePostRequest( diff --git a/tf/main.tf b/tf/main.tf index d64e59c..6e87e8b 100644 --- a/tf/main.tf +++ b/tf/main.tf @@ -97,6 +97,11 @@ resource "cloudflare_pages_domain" "domain" { account_id = var.cloudflare_account_id project_name = "wildebeest-${var.gh_username}" domain = var.cloudflare_zone_name + + depends_on = [ + cloudflare_pages_project.wildebeest_pages_project, + cloudflare_record.record, + ] } resource "cloudflare_access_application" "wildebeest_access" {