Skip to content

Instantly share code, notes, and snippets.

View JonHolman's full-sized avatar

Jon Holman JonHolman

View GitHub Profile
AWSTemplateFormatVersion: 2010-09-09
Description: multi-region-sam-poc
Parameters:
DomainName:
Type: String
Route53ZoneId:
Type: String
Resources:
@JonHolman
JonHolman / part-5-adding-cloudfront-add-output-with-info-for-dns-record
Created January 3, 2021 03:49
part-5-adding-cloudfront-add-output-with-info-for-dns-record
DnsTaskToDo:
Condition: CreateDnsAlias
Value: !Sub CNAME ${CloudFrontDnsAlias} to ${CloudFrontDistribution.DomainName}
Description: DNS TODO Task
@JonHolman
JonHolman / part-5-adding-cloudfront-conditionally-add-alias-to-cloudfront-resource
Last active January 5, 2021 00:47
part-5-adding-cloudfront-conditionally-add-alias-to-cloudfront-resource
Aliases:
!If
- CreateDnsAlias
- - !Ref CloudFrontDnsAlias
- !Ref AWS::NoValue
ViewerCertificate:
!If
- CreateDnsAlias
-
AcmCertificateArn: !Ref AcmCertArn
@JonHolman
JonHolman / part-5-adding-cloudfront-adding-parameters-and-conditions-for-alias
Created January 3, 2021 03:33
part-5-adding-cloudfront-adding-parameters-and-conditions-for-alias
Parameters:
CloudFrontDnsAlias:
Type: String
AcmCertArn:
Type: String
Conditions:
HasCloudFrontDnsAlias: !Not
- !Equals
- !Ref CloudFrontDnsAlias
@JonHolman
JonHolman / part-5-adding-cloudfront-distribution-output
Created January 2, 2021 18:22
part-5-adding-cloudfront-distribution-output
CloudFrontDistribution:
Value: !Sub https://${CloudFrontDistribution.DomainName}/
@JonHolman
JonHolman / part-5-adding-cloudfront-distribution-resource
Created January 2, 2021 18:16
part-5-adding-cloudfront-distribution-resource
CloudFrontDistribution:
Type: AWS::CloudFront::Distribution
Properties:
DistributionConfig:
Origins:
- Id: apiGatewayRestApi
DomainName: !Sub ${RestAPI}.execute-api.${AWS::Region}.amazonaws.com
OriginPath: /Prod
CustomOriginConfig:
OriginProtocolPolicy: https-only
@JonHolman
JonHolman / part-4-adding-category-landing-and-home-page: openapi.yaml adding root route for the home page
Created December 15, 2020 23:33
part-4-adding-category-landing-and-home-page: openapi.yaml adding root route for the home page
/:
get:
responses:
200:
description: "200 response"
content:
text/html:
schema:
$ref: "#/components/schemas/Empty"
x-amazon-apigateway-integration:
@JonHolman
JonHolman / part-4-adding-category-landing-and-home-page: page.yaml new main content section
Last active December 16, 2020 14:31
part-4-adding-category-landing-and-home-page: page.yaml new main content section
<div class="w3-col l8 s12">
#if($type =='article')
<!-- Blog entry -->
<div class="w3-card-4 w3-margin w3-white">
<div class="w3-container">
<h3>
#set($buildingPath = '')
#foreach($pathPiece in $items[0].sk.S.split('/'))
#if(!$foreach.first and !$foreach.last)
#set($buildingPath = "${buildingPath}/${pathPiece}")
@JonHolman
JonHolman / part-4-adding-category-landing-and-home-page: page.yaml setting page title based on conditions
Created December 15, 2020 23:10
part-4-adding-category-landing-and-home-page: page.yaml setting page title based on conditions
#if($type =='article')
<title>W3.CSS Template - $items[0].heading.S</title>
#elseif($context.path.split('/').size() > 2)
<title>W3.CSS Template - $context.path.split('/')[-1] category</title>
#else
<title>W3.CSS Template</title>
#end
@JonHolman
JonHolman / part-4-adding-category-landing-and-home-page: page.yaml handling invalid requests and setting a type variable to use later
Last active December 16, 2020 14:29
part-4-adding-category-landing-and-home-page: page.yaml handling invalid requests and setting a type variable to use later
#set($count = $items.size())
#if($count == 0)
#set($context.responseOverride.status = 404)
#set($_ = $items.add( {'heading':{'S':'Page not found'},'content': {'S':'<p><a href="/Prod/"><button>Go to the Home Page</button></a></p>'}} )) #elseif($count == 1 and $context.path.contains($items[0].sk.S))
#set($type = 'article')
#else
#set($type = 'category')
#end