diff --git a/app.yaml b/app.yaml index 44c3d0f..73f7d43 100644 --- a/app.yaml +++ b/app.yaml @@ -3,8 +3,12 @@ env: flex resources: cpu: 1 - memory_gb: 0.5 + memory_gb: 1 disk_size_gb: 10 -health_check: - enable_health_check: False +liveness_check: + path: "/" + check_interval_sec: 30 + timeout_sec: 4 + failure_threshold: 2 + success_threshold: 2 diff --git a/modules/middleware/findFile.js b/modules/middleware/findFile.js index 860c974..15dcc67 100644 --- a/modules/middleware/findFile.js +++ b/modules/middleware/findFile.js @@ -94,26 +94,24 @@ function searchEntries(tarballStream, entryName, wantsIndex) { const chunks = []; - stream - .on('data', chunk => chunks.push(chunk)) - .on('end', () => { - const content = Buffer.concat(chunks); + stream.on('data', chunk => chunks.push(chunk)).on('end', () => { + const content = Buffer.concat(chunks); - // Set some extra properties for files that we will - // need to serve them and for ?meta listings. - entry.contentType = getContentType(entry.name); - entry.integrity = getIntegrity(content); - entry.lastModified = header.mtime.toUTCString(); - entry.size = content.length; + // Set some extra properties for files that we will + // need to serve them and for ?meta listings. + entry.contentType = getContentType(entry.name); + entry.integrity = getIntegrity(content); + entry.lastModified = header.mtime.toUTCString(); + entry.size = content.length; - // Set the content only for the foundEntry and - // discard the buffer for all others. - if (entry === foundEntry) { - entry.content = content; - } + // Set the content only for the foundEntry and + // discard the buffer for all others. + if (entry === foundEntry) { + entry.content = content; + } - next(); - }); + next(); + }); }); }); } @@ -139,6 +137,10 @@ export default function findFile(req, res, next) { if (!foundEntry) { return res .status(404) + .set({ + 'Cache-Control': 'public, max-age=31536000', // 1 year + 'Cache-Tag': 'missing, missing-entry' + }) .type('text') .send(`Cannot find "${req.filename}" in ${req.packageSpec}`); } @@ -158,6 +160,10 @@ export default function findFile(req, res, next) { } else { return res .status(404) + .set({ + 'Cache-Control': 'public, max-age=31536000', // 1 year + 'Cache-Tag': 'missing, missing-index' + }) .type('text') .send( `Cannot find an index in "${req.filename}" in ${