@@ -20,11 +20,11 @@ const DEFAULT_BRANCH_DEFAULT_NAME = 'master'
20
20
* based on the host name specified by the request, and sets that file as the URI of the request.
21
21
* The options are:
22
22
* - HTML for latest app version on the main branch
23
- * e.g. app.staging .example.com and app.example.com
23
+ * e.g. app.dev .example.com and app.example.com
24
24
* - HTML for latest app version on a feature branch (branch preview deployment)
25
- * e.g. my-branch.staging .example.com
25
+ * e.g. my-branch.dev .example.com
26
26
* - HTML for a specific app version (hash preview deployment)
27
- * e.g. preview-b104213fc39ecca4f237a7bd6544d428ad46ec7e.app.staging .example.com
27
+ * e.g. preview-b104213fc39ecca4f237a7bd6544d428ad46ec7e.app.dev .example.com
28
28
*
29
29
* If the translations are enabled via configuration, this lambda will also fetch the current translation
30
30
* version from S3 and pass it to the response lambda via custom headers on the request object.
@@ -34,9 +34,6 @@ export function getHandler(config: Config, s3: S3Client) {
34
34
const request = event . Records [ 0 ] . cf . request
35
35
36
36
try {
37
- // Get app version and translation version in parallel to avoid the double network penalty.
38
- // Translation hash is only fetched if translations are enabled. Fetching translation cursor
39
- // can never throw here, as in case of a failure we're returning a default value.
40
37
const appVersion = await getAppVersion ( request , config , s3 )
41
38
42
39
// Set app version header on request, so it can be picked up by the viewer response lambda
@@ -83,7 +80,7 @@ function getUri(request: CloudFrontRequest, appVersion: string) {
83
80
async function getAppVersion ( request : CloudFrontRequest , config : Config , s3 : S3Client ) {
84
81
const host = getHeader ( request , 'host' ) ?? null
85
82
86
- // Preview name is the first segment of the url e.g. my-branch for my-branch.app.staging .example.com
83
+ // Preview name is the first segment of the url e.g. my-branch for my-branch.app.dev .example.com
87
84
// Preview name is either a sanitized branch name or it follows the preview-[hash] pattern
88
85
let previewName : string
89
86
@@ -105,11 +102,11 @@ async function getAppVersion(request: CloudFrontRequest, config: Config, s3: S3C
105
102
}
106
103
107
104
/**
108
- * We serve a preview for each app version at e.g.preview-[hash].app.staging .example.com
105
+ * We serve a preview for each app version at e.g.preview-[hash].app.dev .example.com
109
106
* If the preview name matches that pattern, we assume it's a hash preview link
110
107
*/
111
108
function getPreviewHash ( previewName ?: string ) {
112
- const matchHash = / ^ p r e v i e w - (?< hash > [ a - z 0 - 9 ] { 40 } ) $ / . exec ( previewName || '' )
109
+ const matchHash = / ^ p r e v i e w - (?< hash > [ a - z 0 - 9 ] { 16 } | [ a - z 0 - 9 ] { 40 } ) $ / . exec ( previewName || '' )
113
110
return matchHash ?. groups ?. hash
114
111
}
115
112
0 commit comments