Fix app install file upload (#18593)

remove wrong file path based file selection

---------

Co-authored-by: cubic-dev-ai[bot] <191113872+cubic-dev-ai[bot]@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <223894421+github-code-quality[bot]@users.noreply.github.com>
This commit is contained in:
martmull
2026-03-13 12:06:14 +01:00
committed by GitHub
parent 0641e07ca6
commit f3e0c12ce6
8 changed files with 251 additions and 82 deletions
@@ -1,7 +1,8 @@
import { Injectable } from '@nestjs/common';
import crypto from 'crypto';
import { join } from 'path';
import { promises as fs } from 'fs';
import { dirname, join } from 'path';
import { FileFolder } from 'twenty-shared/types';
import { isDefined } from 'twenty-shared/utils';
@@ -239,7 +240,16 @@ export class LogicFunctionResourceService {
workspaceId: string;
inMemoryFolderPath: string;
}) {
await Promise.all([
const yarnLockExists = await this.fileStorageService.checkFileExists({
workspaceId,
applicationUniversalIdentifier,
fileFolder: FileFolder.Dependencies,
resourcePath: 'yarn.lock',
});
const promises = [];
promises.push(
this.fileStorageService.downloadFile({
workspaceId,
applicationUniversalIdentifier,
@@ -247,14 +257,35 @@ export class LogicFunctionResourceService {
resourcePath: 'package.json',
localPath: join(inMemoryFolderPath, 'package.json'),
}),
this.fileStorageService.downloadFile({
workspaceId,
applicationUniversalIdentifier,
fileFolder: FileFolder.Dependencies,
resourcePath: 'yarn.lock',
localPath: join(inMemoryFolderPath, 'yarn.lock'),
}),
]);
);
if (yarnLockExists) {
promises.push(
this.fileStorageService.downloadFile({
workspaceId,
applicationUniversalIdentifier,
fileFolder: FileFolder.Dependencies,
resourcePath: 'yarn.lock',
localPath: join(inMemoryFolderPath, 'yarn.lock'),
}),
);
} else {
const yarnLockPath = join(inMemoryFolderPath, 'yarn.lock');
promises.push(
fs.mkdir(dirname(yarnLockPath), { recursive: true }).then(() =>
fs.writeFile(
yarnLockPath,
`# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY.
# yarn lockfile v1
`,
'utf-8',
),
),
);
}
await Promise.all(promises);
}
async getBuiltCode({