mirror of
https://github.com/coder/coder.git
synced 2026-06-02 20:48:20 +00:00
fix(site): ignore empty file path segments in template file tree (#24980)
This commit is contained in:
@@ -0,0 +1,25 @@
|
||||
import { TarReader, TarWriter } from "./tar";
|
||||
import { createTemplateVersionFileTree } from "./templateVersion";
|
||||
|
||||
test("createTemplateVersionFileTree ignores empty path segments", async () => {
|
||||
const writer = new TarWriter();
|
||||
writer.addFolder("files/etc/apt/");
|
||||
writer.addFile(
|
||||
"files/etc/apt/sources.list",
|
||||
"deb http://example.com stable main",
|
||||
);
|
||||
|
||||
const tarFile = await writer.write();
|
||||
const reader = new TarReader();
|
||||
await reader.readFile(tarFile);
|
||||
|
||||
expect(createTemplateVersionFileTree(reader)).toEqual({
|
||||
files: {
|
||||
etc: {
|
||||
apt: {
|
||||
"sources.list": "deb http://example.com stable main",
|
||||
},
|
||||
},
|
||||
},
|
||||
});
|
||||
});
|
||||
@@ -30,7 +30,7 @@ export const createTemplateVersionFileTree = (
|
||||
for (const file of tarReader.fileInfo) {
|
||||
fileTree = set(
|
||||
fileTree,
|
||||
file.name.split("/"),
|
||||
file.name.split("/").filter((part) => part !== ""),
|
||||
file.type === TarFileTypeCodes.Dir
|
||||
? {}
|
||||
: (tarReader.getTextFile(file.name) as string),
|
||||
|
||||
Reference in New Issue
Block a user