1574 extensibility twenty cli use workspace migration v2 to synchronize serverless function triggers (#14830)

twenty-cli serverless triggers follow up. Fixes:
- eventName don't support wildcard
- universalIdentifier not used to create or update trigger : update does
not work properly (does deletion then creation)
- add a base project in twenty-cli that is copied when creating a new
app
This commit is contained in:
martmull
2025-10-02 14:06:56 +02:00
committed by GitHub
parent 326d2a99ed
commit 0368d2a094
24 changed files with 1143 additions and 407 deletions
@@ -1,4 +1,4 @@
import { Field, InputType } from '@nestjs/graphql';
import { Field, HideField, InputType } from '@nestjs/graphql';
import { IsNotEmpty, IsObject, IsUUID } from 'class-validator';
import GraphQLJSON from 'graphql-type-json';
@@ -16,4 +16,7 @@ export class CreateCronTriggerInput {
@IsNotEmpty()
@Field()
serverlessFunctionId: string;
@HideField()
universalIdentifier?: string;
}
@@ -1,4 +1,4 @@
import { v4 as uuidv4 } from 'uuid';
import { v4 } from 'uuid';
import { type CreateCronTriggerInput } from 'src/engine/metadata-modules/cron-trigger/dtos/create-cron-trigger.input';
import { type FlatCronTrigger } from 'src/engine/metadata-modules/cron-trigger/types/flat-cron-trigger.type';
@@ -13,8 +13,8 @@ export const fromCreateCronTriggerInputToFlatCronTrigger = ({
const now = new Date();
return {
id: uuidv4(),
universalIdentifier: uuidv4(),
id: v4(),
universalIdentifier: createCronTriggerInput.universalIdentifier ?? v4(),
settings: createCronTriggerInput.settings,
serverlessFunctionId: createCronTriggerInput.serverlessFunctionId,
workspaceId,