mirror of
https://github.com/fosrl/docs.git
synced 2025-05-12 21:30:43 +01:00
42 lines
1.1 KiB
TypeScript
42 lines
1.1 KiB
TypeScript
import { StackContext, StaticSite, use } from "sst/constructs";
|
|
import * as route53 from "aws-cdk-lib/aws-route53";
|
|
import { ViewerProtocolPolicy } from "aws-cdk-lib/aws-cloudfront";
|
|
|
|
export function DocusaurusStack({ stack }: StackContext) {
|
|
const hostedZone = route53.HostedZone.fromLookup(stack, "HostedZone", {
|
|
domainName: "fossorial.io",
|
|
});
|
|
|
|
const site = new StaticSite(stack, "DocusaurusSite", {
|
|
path: "packages/docusaurus",
|
|
buildOutput: "build",
|
|
buildCommand: "npm run build",
|
|
customDomain: {
|
|
domainName: "docs.fossorial.io",
|
|
hostedZone: hostedZone.zoneName,
|
|
isExternalDomain: false,
|
|
},
|
|
cdk: {
|
|
distribution: {
|
|
defaultBehavior: {
|
|
viewerProtocolPolicy: ViewerProtocolPolicy.REDIRECT_TO_HTTPS,
|
|
compress: true,
|
|
},
|
|
errorResponses: [
|
|
{
|
|
httpStatus: 403,
|
|
responseHttpStatus: 200,
|
|
responsePagePath: "/index.html",
|
|
},
|
|
{
|
|
httpStatus: 404,
|
|
responseHttpStatus: 200,
|
|
responsePagePath: "/index.html",
|
|
},
|
|
],
|
|
},
|
|
},
|
|
});
|
|
|
|
stack.addOutputs({});
|
|
}
|