From 34db2893714c19892b0d5bcbffce74edce8a2a72 Mon Sep 17 00:00:00 2001 From: aarontsharp Date: Tue, 30 Aug 2022 08:47:21 -0700 Subject: [PATCH] Fix GCS also Signed-off-by: aarontsharp --- .../src/stages/publish/googleStorage.test.ts | 8 ++++---- .../src/stages/publish/googleStorage.ts | 12 ++++-------- 2 files changed, 8 insertions(+), 12 deletions(-) diff --git a/plugins/techdocs-node/src/stages/publish/googleStorage.test.ts b/plugins/techdocs-node/src/stages/publish/googleStorage.test.ts index b347f185c6..896e528644 100644 --- a/plugins/techdocs-node/src/stages/publish/googleStorage.test.ts +++ b/plugins/techdocs-node/src/stages/publish/googleStorage.test.ts @@ -527,13 +527,13 @@ describe('GoogleGCSPublish', () => { app = express().use(publisher.docsRouter()); const pngResponse = await request(app).get( - `/${rootPath}/${entityTripletPath}/img/with%20spaces.png`, + `/${entityTripletPath}/img/with%20spaces.png`, ); expect(Buffer.from(pngResponse.body).toString('utf8')).toEqual( 'found it', ); const jsResponse = await request(app).get( - `/${rootPath}/${entityTripletPath}/some%20folder/also%20with%20spaces.js`, + `/${entityTripletPath}/some%20folder/also%20with%20spaces.js`, ); expect(jsResponse.text).toEqual('found it too'); }); @@ -548,13 +548,13 @@ describe('GoogleGCSPublish', () => { app = express().use(publisher.docsRouter()); const pngResponse = await request(app).get( - `/${rootPath}/${entityTripletPath}/img/with%20spaces.png`, + `/${entityTripletPath}/img/with%20spaces.png`, ); expect(Buffer.from(pngResponse.body).toString('utf8')).toEqual( 'found it', ); const jsResponse = await request(app).get( - `/${rootPath}/${entityTripletPath}/some%20folder/also%20with%20spaces.js`, + `/${entityTripletPath}/some%20folder/also%20with%20spaces.js`, ); expect(jsResponse.text).toEqual('found it too'); }); diff --git a/plugins/techdocs-node/src/stages/publish/googleStorage.ts b/plugins/techdocs-node/src/stages/publish/googleStorage.ts index 987dfc6f09..7e862722a7 100644 --- a/plugins/techdocs-node/src/stages/publish/googleStorage.ts +++ b/plugins/techdocs-node/src/stages/publish/googleStorage.ts @@ -274,18 +274,14 @@ export class GoogleGCSPublish implements PublisherBase { */ docsRouter(): express.Handler { return (req, res) => { - // Decode and trim the leading forward slash const decodedUri = decodeURI(req.path.replace(/^\//, '')); - // Root path is removed from the Uri so that legacy casing can be applied - // to the entity triplet without manipulating the root path - const decodedUriNoRoot = path.relative(this.bucketRootPath, decodedUri); - + // filePath example - /default/component/documented-component/index.html const filePathNoRoot = this.legacyPathCasing - ? decodedUriNoRoot - : lowerCaseEntityTripletInStoragePath(decodedUriNoRoot); + ? decodedUri + : lowerCaseEntityTripletInStoragePath(decodedUri); - // Re-prepend the root path to the relative file path + // Prepend the root path to the relative file path const filePath = path.posix.join(this.bucketRootPath, filePathNoRoot); // Files with different extensions (CSS, HTML) need to be served with different headers