diff --git a/backend/src/controllers/v1/integrationController.ts b/backend/src/controllers/v1/integrationController.ts index 8b18fcb17..3adbcb9e2 100644 --- a/backend/src/controllers/v1/integrationController.ts +++ b/backend/src/controllers/v1/integrationController.ts @@ -1,6 +1,6 @@ import { Request, Response } from "express"; import { Types } from "mongoose"; -import { IWorkspace, Integration, Folder, IntegrationAuth } from "../../models"; +import { Folder, IWorkspace, Integration, IntegrationAuth } from "../../models"; import { EventService } from "../../services"; import { eventStartIntegration } from "../../events"; import { getFolderByPath } from "../../services/FolderService"; @@ -38,7 +38,8 @@ export const createIntegration = async (req: Request, res: Response) => { targetServiceId, integrationAuthId, targetEnvironment, - targetEnvironmentId + targetEnvironmentId, + metadata } } = await validateRequest(reqValidator.CreateIntegrationV1, req); @@ -52,7 +53,7 @@ export const createIntegration = async (req: Request, res: Response) => { const { permission } = await getUserProjectPermissions( req.user._id, - integrationAuth.workspace.toString() + integrationAuth.workspace._id.toString() ); ForbiddenError.from(permission).throwUnlessCan( ProjectPermissionActions.Create, @@ -91,7 +92,8 @@ export const createIntegration = async (req: Request, res: Response) => { region, secretPath, integration: integrationAuth.integration, - integrationAuth: new Types.ObjectId(integrationAuthId) + integrationAuth: new Types.ObjectId(integrationAuthId), + metadata }).save(); if (integration) { diff --git a/backend/src/integrations/sync.ts b/backend/src/integrations/sync.ts index 34cb67a22..a3264d351 100644 --- a/backend/src/integrations/sync.ts +++ b/backend/src/integrations/sync.ts @@ -2012,7 +2012,6 @@ const syncSecretsCheckly = async ({ secrets: Record; accessToken: string; }) => { - const getSecretsRes = ( await standardRequest.get(`${INTEGRATION_CHECKLY_API_URL}/v1/variables`, { headers: { @@ -2890,4 +2889,4 @@ const syncSecretsNorthflank = async ({ ); }; -export { syncSecrets }; +export { syncSecrets }; \ No newline at end of file diff --git a/backend/src/validation/integration.ts b/backend/src/validation/integration.ts index db8b0ee8b..7ec0d0875 100644 --- a/backend/src/validation/integration.ts +++ b/backend/src/validation/integration.ts @@ -64,18 +64,21 @@ export const validateClientForIntegration = async ({ export const CreateIntegrationV1 = z.object({ body: z.object({ integrationAuthId: z.string().trim(), - app: z.string().trim(), + app: z.string().trim().optional(), isActive: z.boolean(), - appId: z.string().trim(), + appId: z.string().trim().optional(), secretPath: z.string().trim().default("/"), sourceEnvironment: z.string().trim(), - targetEnvironment: z.string().trim(), - targetEnvironmentId: z.string().trim(), - targetService: z.string().trim(), - targetServiceId: z.string().trim(), - owner: z.string().trim(), - path: z.string().trim(), - region: z.string().trim() + targetEnvironment: z.string().trim().optional(), + targetEnvironmentId: z.string().trim().optional(), + targetService: z.string().trim().optional(), + targetServiceId: z.string().trim().optional(), + owner: z.string().trim().optional(), + path: z.string().trim().optional(), + region: z.string().trim().optional(), + metadata: z.object({ + secretSuffix: z.string().optional() + }).optional() }) }); diff --git a/backend/src/validation/integrationAuth.ts b/backend/src/validation/integrationAuth.ts index dbefd7cec..18ff191af 100644 --- a/backend/src/validation/integrationAuth.ts +++ b/backend/src/validation/integrationAuth.ts @@ -79,11 +79,11 @@ export const OauthExchangeV1 = z.object({ export const SaveIntegrationAccessTokenV1 = z.object({ body: z.object({ workspaceId: z.string().trim(), + integration: z.string().trim(), accessId: z.string().trim().optional(), accessToken: z.string().trim().optional(), - url: z.string().url().trim(), - namespace: z.string().trim(), - integration: z.string().trim(), + url: z.string().url().trim().optional(), + namespace: z.string().trim().optional(), refreshToken:z.string().trim().optional() }) }); @@ -93,8 +93,8 @@ export const GetIntegrationAuthAppsV1 = z.object({ integrationAuthId: z.string().trim() }), query: z.object({ - teamId: z.string().trim(), - workspaceSlug: z.string().trim() + teamId: z.string().trim().optional(), + workspaceSlug: z.string().trim().optional() }) }); diff --git a/frontend/src/hooks/api/integrationAuth/queries.tsx b/frontend/src/hooks/api/integrationAuth/queries.tsx index 84d22ce5b..37e8df768 100644 --- a/frontend/src/hooks/api/integrationAuth/queries.tsx +++ b/frontend/src/hooks/api/integrationAuth/queries.tsx @@ -408,8 +408,8 @@ export const useSaveIntegrationAccessToken = () => { refreshToken?: string; accessId?: string; accessToken?: string; - url: string | null; - namespace: string | null; + url?: string; + namespace?: string; }) => { const { data: { integrationAuth } } = await apiRequest.post("/api/v1/integration-auth/access-token", { workspaceId, diff --git a/frontend/src/hooks/api/integrations/queries.tsx b/frontend/src/hooks/api/integrations/queries.tsx index 214f7de93..8857da834 100644 --- a/frontend/src/hooks/api/integrations/queries.tsx +++ b/frontend/src/hooks/api/integrations/queries.tsx @@ -49,13 +49,13 @@ export const useCreateIntegration = () => { app?: string; appId?: string; sourceEnvironment: string; - targetEnvironment: string | null; - targetEnvironmentId: string | null; - targetService: string | null; - targetServiceId: string | null; - owner: string | null; - path: string | null; - region: string | null; + targetEnvironment?: string; + targetEnvironmentId?: string; + targetService?: string; + targetServiceId?: string; + owner?: string; + path?: string; + region?: string; metadata?: { secretSuffix?: string; } diff --git a/frontend/src/pages/integrations/aws-parameter-store/authorize.tsx b/frontend/src/pages/integrations/aws-parameter-store/authorize.tsx index d71273fa5..80952191c 100644 --- a/frontend/src/pages/integrations/aws-parameter-store/authorize.tsx +++ b/frontend/src/pages/integrations/aws-parameter-store/authorize.tsx @@ -39,9 +39,7 @@ export default function AWSParameterStoreAuthorizeIntegrationPage() { workspaceId: localStorage.getItem("projectData.id"), integration: "aws-parameter-store", accessId: accessKey, - accessToken: accessSecretKey, - url: null, - namespace: null + accessToken: accessSecretKey }); setAccessKey(""); diff --git a/frontend/src/pages/integrations/aws-parameter-store/create.tsx b/frontend/src/pages/integrations/aws-parameter-store/create.tsx index 60d8849e4..a3759d17b 100644 --- a/frontend/src/pages/integrations/aws-parameter-store/create.tsx +++ b/frontend/src/pages/integrations/aws-parameter-store/create.tsx @@ -98,11 +98,6 @@ export default function AWSParameterStoreCreateIntegrationPage() { integrationAuthId: integrationAuth?._id, isActive: true, sourceEnvironment: selectedSourceEnvironment, - targetEnvironment: null, - targetEnvironmentId: null, - targetService: null, - targetServiceId: null, - owner: null, path, region: selectedAWSRegion, secretPath diff --git a/frontend/src/pages/integrations/aws-secret-manager/authorize.tsx b/frontend/src/pages/integrations/aws-secret-manager/authorize.tsx index 11da85224..f150a5a28 100644 --- a/frontend/src/pages/integrations/aws-secret-manager/authorize.tsx +++ b/frontend/src/pages/integrations/aws-secret-manager/authorize.tsx @@ -37,9 +37,7 @@ export default function AWSSecretManagerCreateIntegrationPage() { workspaceId: localStorage.getItem("projectData.id"), integration: "aws-secret-manager", accessId: accessKey, - accessToken: accessSecretKey, - url: null, - namespace: null + accessToken: accessSecretKey }); setAccessKey(""); diff --git a/frontend/src/pages/integrations/aws-secret-manager/create.tsx b/frontend/src/pages/integrations/aws-secret-manager/create.tsx index fb6fdf90d..99b89b0fb 100644 --- a/frontend/src/pages/integrations/aws-secret-manager/create.tsx +++ b/frontend/src/pages/integrations/aws-secret-manager/create.tsx @@ -98,12 +98,6 @@ export default function AWSSecretManagerCreateIntegrationPage() { isActive: true, app: targetSecretName.trim(), sourceEnvironment: selectedSourceEnvironment, - targetEnvironment: null, - targetEnvironmentId: null, - targetService: null, - targetServiceId: null, - owner: null, - path: null, region: selectedAWSRegion, secretPath }); diff --git a/frontend/src/pages/integrations/azure-key-vault/create.tsx b/frontend/src/pages/integrations/azure-key-vault/create.tsx index d6b843923..0797ecc03 100644 --- a/frontend/src/pages/integrations/azure-key-vault/create.tsx +++ b/frontend/src/pages/integrations/azure-key-vault/create.tsx @@ -61,13 +61,6 @@ export default function AzureKeyVaultCreateIntegrationPage() { isActive: true, app: vaultBaseUrl, sourceEnvironment: selectedSourceEnvironment, - targetEnvironment: null, - targetEnvironmentId: null, - targetService: null, - targetServiceId: null, - owner: null, - path: null, - region: null, secretPath }); setIsLoading(false); diff --git a/frontend/src/pages/integrations/bitbucket/create.tsx b/frontend/src/pages/integrations/bitbucket/create.tsx index 1901360af..f696ea592 100644 --- a/frontend/src/pages/integrations/bitbucket/create.tsx +++ b/frontend/src/pages/integrations/bitbucket/create.tsx @@ -91,11 +91,6 @@ export default function BitBucketCreateIntegrationPage() { sourceEnvironment: selectedSourceEnvironment, targetEnvironment: targetEnvironment.name, targetEnvironmentId: targetEnvironment.slug, - targetService: null, - targetServiceId: null, - owner: null, - path: null, - region: null, secretPath }); diff --git a/frontend/src/pages/integrations/checkly/authorize.tsx b/frontend/src/pages/integrations/checkly/authorize.tsx index b99e8dfe4..a84c9fe28 100644 --- a/frontend/src/pages/integrations/checkly/authorize.tsx +++ b/frontend/src/pages/integrations/checkly/authorize.tsx @@ -28,9 +28,7 @@ export default function ChecklyCreateIntegrationPage() { const integrationAuth = await mutateAsync({ workspaceId: localStorage.getItem("projectData.id"), integration: "checkly", - accessToken, - url: null, - namespace: null + accessToken }); setIsLoading(false); diff --git a/frontend/src/pages/integrations/checkly/create.tsx b/frontend/src/pages/integrations/checkly/create.tsx index 6b3febfb8..97db4c118 100644 --- a/frontend/src/pages/integrations/checkly/create.tsx +++ b/frontend/src/pages/integrations/checkly/create.tsx @@ -72,13 +72,6 @@ export default function ChecklyCreateIntegrationPage() { app: targetApp, appId: targetAppId, sourceEnvironment: selectedSourceEnvironment, - targetEnvironment: null, - targetEnvironmentId: null, - targetService: null, - targetServiceId: null, - owner: null, - path: null, - region: null, secretPath, metadata: { secretSuffix diff --git a/frontend/src/pages/integrations/circleci/authorize.tsx b/frontend/src/pages/integrations/circleci/authorize.tsx index d5c741a18..592056bbe 100644 --- a/frontend/src/pages/integrations/circleci/authorize.tsx +++ b/frontend/src/pages/integrations/circleci/authorize.tsx @@ -28,9 +28,7 @@ export default function CircleCICreateIntegrationPage() { const integrationAuth = await mutateAsync({ workspaceId: localStorage.getItem("projectData.id"), integration: "circleci", - accessToken: apiKey, - url: null, - namespace:null + accessToken: apiKey }); setIsLoading(false); diff --git a/frontend/src/pages/integrations/circleci/create.tsx b/frontend/src/pages/integrations/circleci/create.tsx index 5620b10c8..dda2fd089 100644 --- a/frontend/src/pages/integrations/circleci/create.tsx +++ b/frontend/src/pages/integrations/circleci/create.tsx @@ -68,13 +68,6 @@ export default function CircleCICreateIntegrationPage() { app: targetApp, appId: integrationAuthApps?.find((integrationAuthApp) => integrationAuthApp.name === targetApp)?.appId, sourceEnvironment: selectedSourceEnvironment, - targetEnvironment: null, - targetEnvironmentId: null, - targetService: null, - targetServiceId: null, - owner: null, - path: null, - region: null, secretPath }); diff --git a/frontend/src/pages/integrations/cloud-66/authorize.tsx b/frontend/src/pages/integrations/cloud-66/authorize.tsx index 4f7d3b010..70c115337 100644 --- a/frontend/src/pages/integrations/cloud-66/authorize.tsx +++ b/frontend/src/pages/integrations/cloud-66/authorize.tsx @@ -28,9 +28,7 @@ export default function Cloud66CreateIntegrationPage() { const integrationAuth = await mutateAsync({ workspaceId: localStorage.getItem("projectData.id"), integration: "cloud-66", - accessToken: apiKey, - url: null, - namespace: null + accessToken: apiKey }); setIsLoading(false); diff --git a/frontend/src/pages/integrations/cloud-66/create.tsx b/frontend/src/pages/integrations/cloud-66/create.tsx index 5b51e3d99..5313f82cb 100644 --- a/frontend/src/pages/integrations/cloud-66/create.tsx +++ b/frontend/src/pages/integrations/cloud-66/create.tsx @@ -66,13 +66,6 @@ export default function Cloud66CreateIntegrationPage() { app: targetApp, appId: integrationAuthApps?.find((integrationAuthApp) => integrationAuthApp.name === targetApp)?.appId, sourceEnvironment: selectedSourceEnvironment, - targetEnvironment: null, - targetEnvironmentId: null, - targetService: null, - targetServiceId: null, - owner: null, - path: null, - region: null, secretPath }); diff --git a/frontend/src/pages/integrations/cloudflare-pages/authorize.tsx b/frontend/src/pages/integrations/cloudflare-pages/authorize.tsx index d63a3de43..a16756c79 100644 --- a/frontend/src/pages/integrations/cloudflare-pages/authorize.tsx +++ b/frontend/src/pages/integrations/cloudflare-pages/authorize.tsx @@ -33,9 +33,7 @@ export default function CloudflarePagesIntegrationPage() { workspaceId: localStorage.getItem("projectData.id"), integration: "cloudflare-pages", accessId: accountId, - accessToken: accessKey, - url: null, - namespace: null + accessToken: accessKey }); setAccessKey(""); diff --git a/frontend/src/pages/integrations/cloudflare-pages/create.tsx b/frontend/src/pages/integrations/cloudflare-pages/create.tsx index 49ea9b191..0f4d171a4 100644 --- a/frontend/src/pages/integrations/cloudflare-pages/create.tsx +++ b/frontend/src/pages/integrations/cloudflare-pages/create.tsx @@ -64,12 +64,6 @@ export default function CloudflarePagesIntegrationPage() { appId: targetAppId, sourceEnvironment: selectedSourceEnvironment, targetEnvironment, - targetEnvironmentId: null, - targetService: null, - targetServiceId: null, - owner: null, - path: null, - region: null, secretPath: "/", }); diff --git a/frontend/src/pages/integrations/codefresh/authorize.tsx b/frontend/src/pages/integrations/codefresh/authorize.tsx index e74b8e1ce..b6f96c1a2 100644 --- a/frontend/src/pages/integrations/codefresh/authorize.tsx +++ b/frontend/src/pages/integrations/codefresh/authorize.tsx @@ -28,9 +28,7 @@ export default function CodefreshCreateIntegrationPage() { const integrationAuth = await mutateAsync({ workspaceId: localStorage.getItem("projectData.id"), integration: "codefresh", - accessToken: apiKey, - url: null, - namespace: null + accessToken: apiKey }); setIsLoading(false); diff --git a/frontend/src/pages/integrations/codefresh/create.tsx b/frontend/src/pages/integrations/codefresh/create.tsx index c4d4a0e5a..4ce9a4c53 100644 --- a/frontend/src/pages/integrations/codefresh/create.tsx +++ b/frontend/src/pages/integrations/codefresh/create.tsx @@ -66,13 +66,6 @@ export default function CodefreshCreateIntegrationPage() { app: targetApp, appId: integrationAuthApps?.find((integrationAuthApp) => integrationAuthApp.name === targetApp)?.appId, sourceEnvironment: selectedSourceEnvironment, - targetEnvironment: null, - targetEnvironmentId: null, - targetService: null, - targetServiceId: null, - owner: null, - path: null, - region: null, secretPath }); diff --git a/frontend/src/pages/integrations/digital-ocean-app-platform/authorize.tsx b/frontend/src/pages/integrations/digital-ocean-app-platform/authorize.tsx index 8e84cdef6..ec4652b9e 100644 --- a/frontend/src/pages/integrations/digital-ocean-app-platform/authorize.tsx +++ b/frontend/src/pages/integrations/digital-ocean-app-platform/authorize.tsx @@ -28,9 +28,7 @@ export default function DigitalOceanAppPlatformCreateIntegrationPage() { const integrationAuth = await mutateAsync({ workspaceId: localStorage.getItem("projectData.id"), integration: "digital-ocean-app-platform", - accessToken: apiKey, - url: null, - namespace: null + accessToken: apiKey }); setIsLoading(false); diff --git a/frontend/src/pages/integrations/digital-ocean-app-platform/create.tsx b/frontend/src/pages/integrations/digital-ocean-app-platform/create.tsx index f7f1ec633..3dddaf831 100644 --- a/frontend/src/pages/integrations/digital-ocean-app-platform/create.tsx +++ b/frontend/src/pages/integrations/digital-ocean-app-platform/create.tsx @@ -66,13 +66,6 @@ export default function DigitalOceanAppPlatformCreateIntegrationPage() { app: targetApp, appId: integrationAuthApps?.find((integrationAuthApp) => integrationAuthApp.name === targetApp)?.appId, sourceEnvironment: selectedSourceEnvironment, - targetEnvironment: null, - targetEnvironmentId: null, - targetService: null, - targetServiceId: null, - owner: null, - path: null, - region: null, secretPath }); diff --git a/frontend/src/pages/integrations/flyio/authorize.tsx b/frontend/src/pages/integrations/flyio/authorize.tsx index 2d7735427..2af0fa2ab 100644 --- a/frontend/src/pages/integrations/flyio/authorize.tsx +++ b/frontend/src/pages/integrations/flyio/authorize.tsx @@ -28,9 +28,7 @@ export default function FlyioCreateIntegrationPage() { const integrationAuth = await mutateAsync({ workspaceId: localStorage.getItem("projectData.id"), integration: "flyio", - accessToken, - url: null, - namespace: null + accessToken }); setIsLoading(false); diff --git a/frontend/src/pages/integrations/flyio/create.tsx b/frontend/src/pages/integrations/flyio/create.tsx index 082ce81a4..8a49d4c06 100644 --- a/frontend/src/pages/integrations/flyio/create.tsx +++ b/frontend/src/pages/integrations/flyio/create.tsx @@ -68,13 +68,6 @@ export default function FlyioCreateIntegrationPage() { isActive: true, app: targetApp, sourceEnvironment: selectedSourceEnvironment, - targetEnvironment: null, - targetEnvironmentId: null, - targetService: null, - targetServiceId: null, - owner: null, - path: null, - region: null, secretPath }); diff --git a/frontend/src/pages/integrations/gcp-secret-manager/authorize.tsx b/frontend/src/pages/integrations/gcp-secret-manager/authorize.tsx index 746980601..c49513b75 100644 --- a/frontend/src/pages/integrations/gcp-secret-manager/authorize.tsx +++ b/frontend/src/pages/integrations/gcp-secret-manager/authorize.tsx @@ -34,9 +34,7 @@ export default function GCPSecretManagerAuthorizeIntegrationPage() { const integrationAuth = await mutateAsync({ workspaceId: localStorage.getItem("projectData.id"), integration: "gcp-secret-manager", - refreshToken: accessToken, - url: null, - namespace: null + refreshToken: accessToken }); setIsLoading(false); diff --git a/frontend/src/pages/integrations/gcp-secret-manager/create.tsx b/frontend/src/pages/integrations/gcp-secret-manager/create.tsx index f90d5f158..a452b42cc 100644 --- a/frontend/src/pages/integrations/gcp-secret-manager/create.tsx +++ b/frontend/src/pages/integrations/gcp-secret-manager/create.tsx @@ -67,13 +67,6 @@ export default function GCPSecretManagerCreateIntegrationPage() { app: integrationAuthApps?.find((integrationAuthApp) => integrationAuthApp.appId === targetAppId)?.name, appId: targetAppId, sourceEnvironment: selectedSourceEnvironment, - targetEnvironment: null, - targetEnvironmentId: null, - targetService: null, - targetServiceId: null, - owner: null, - path: null, - region: null, secretPath }); @@ -83,7 +76,7 @@ export default function GCPSecretManagerCreateIntegrationPage() { console.error(err); } }; - + return integrationAuth && workspace && selectedSourceEnvironment && diff --git a/frontend/src/pages/integrations/gcp-secret-manager/pat/create.tsx b/frontend/src/pages/integrations/gcp-secret-manager/pat/create.tsx index f21a37304..3bc98b615 100644 --- a/frontend/src/pages/integrations/gcp-secret-manager/pat/create.tsx +++ b/frontend/src/pages/integrations/gcp-secret-manager/pat/create.tsx @@ -63,13 +63,6 @@ export default function GCPSecretManagerCreateIntegrationPage() { app: integrationAuthApps?.find((integrationAuthApp) => integrationAuthApp.appId === targetAppId)?.name, appId: targetAppId, sourceEnvironment: selectedSourceEnvironment, - targetEnvironment: null, - targetEnvironmentId: null, - targetService: null, - targetServiceId: null, - owner: null, - path: null, - region: null, secretPath }); diff --git a/frontend/src/pages/integrations/github/create.tsx b/frontend/src/pages/integrations/github/create.tsx index c99c60342..4a319ceb8 100644 --- a/frontend/src/pages/integrations/github/create.tsx +++ b/frontend/src/pages/integrations/github/create.tsx @@ -72,13 +72,7 @@ export default function GitHubCreateIntegrationPage() { isActive: true, app: targetApp.name, sourceEnvironment: selectedSourceEnvironment, - targetEnvironment: null, - targetEnvironmentId: null, - targetService: null, - targetServiceId: null, owner: targetApp.owner, - path: null, - region: null, secretPath }); diff --git a/frontend/src/pages/integrations/gitlab/create.tsx b/frontend/src/pages/integrations/gitlab/create.tsx index 6b4c5e769..66e68303e 100644 --- a/frontend/src/pages/integrations/gitlab/create.tsx +++ b/frontend/src/pages/integrations/gitlab/create.tsx @@ -98,12 +98,6 @@ export default function GitLabCreateIntegrationPage() { appId: String(targetAppId), sourceEnvironment: selectedSourceEnvironment, targetEnvironment: targetEnvironment === "" ? "*" : targetEnvironment, - targetEnvironmentId: null, - targetService: null, - targetServiceId: null, - owner: null, - path: null, - region: null, secretPath }); diff --git a/frontend/src/pages/integrations/hashicorp-vault/create.tsx b/frontend/src/pages/integrations/hashicorp-vault/create.tsx index 0134c66bc..e4c560361 100644 --- a/frontend/src/pages/integrations/hashicorp-vault/create.tsx +++ b/frontend/src/pages/integrations/hashicorp-vault/create.tsx @@ -66,13 +66,7 @@ export default function HashiCorpVaultCreateIntegrationPage() { isActive: true, app: vaultEnginePath, sourceEnvironment: selectedSourceEnvironment, - targetEnvironment: null, - targetEnvironmentId: null, - targetService: null, - targetServiceId: null, - owner: null, path: vaultSecretPath, - region: null, secretPath }); diff --git a/frontend/src/pages/integrations/heroku/create.tsx b/frontend/src/pages/integrations/heroku/create.tsx index cedd6e44c..d73eb408b 100644 --- a/frontend/src/pages/integrations/heroku/create.tsx +++ b/frontend/src/pages/integrations/heroku/create.tsx @@ -66,13 +66,6 @@ export default function HerokuCreateIntegrationPage() { isActive: true, app: targetApp, sourceEnvironment: selectedSourceEnvironment, - targetEnvironment: null, - targetEnvironmentId: null, - targetService: null, - targetServiceId: null, - owner: null, - path: null, - region: null, secretPath }); diff --git a/frontend/src/pages/integrations/laravel-forge/authorize.tsx b/frontend/src/pages/integrations/laravel-forge/authorize.tsx index 98c5569c1..cf8d7020e 100644 --- a/frontend/src/pages/integrations/laravel-forge/authorize.tsx +++ b/frontend/src/pages/integrations/laravel-forge/authorize.tsx @@ -38,9 +38,7 @@ export default function LaravelForgeCreateIntegrationPage() { workspaceId: localStorage.getItem("projectData.id"), integration: "laravel-forge", accessId: serverId, - accessToken: apiKey, - url: null, - namespace: null + accessToken: apiKey }); setIsLoading(false); diff --git a/frontend/src/pages/integrations/laravel-forge/create.tsx b/frontend/src/pages/integrations/laravel-forge/create.tsx index 08ea2d6b5..91ff2a2d0 100644 --- a/frontend/src/pages/integrations/laravel-forge/create.tsx +++ b/frontend/src/pages/integrations/laravel-forge/create.tsx @@ -64,15 +64,8 @@ export default function LaravelForgeCreateIntegrationPage() { integrationAuthId: integrationAuth?._id, isActive: true, app: targetApp, - appId: integrationAuthApps?.find((integrationAuthApp) => integrationAuthApp.name === targetApp)?.appId, + appId: String(integrationAuthApps?.find((integrationAuthApp) => integrationAuthApp.name === targetApp)?.appId), sourceEnvironment: selectedSourceEnvironment, - targetEnvironment: null, - targetEnvironmentId: null, - targetService: null, - targetServiceId: null, - owner: null, - path: null, - region: null, secretPath }); diff --git a/frontend/src/pages/integrations/netlify/create.tsx b/frontend/src/pages/integrations/netlify/create.tsx index c649ad5ed..eff335f97 100644 --- a/frontend/src/pages/integrations/netlify/create.tsx +++ b/frontend/src/pages/integrations/netlify/create.tsx @@ -76,12 +76,6 @@ export default function NetlifyCreateIntegrationPage() { appId: integrationAuthApps?.find((integrationAuthApp) => integrationAuthApp.name === targetApp)?.appId, sourceEnvironment: selectedSourceEnvironment, targetEnvironment, - targetEnvironmentId: null, - targetService: null, - targetServiceId: null, - owner: null, - path: null, - region: null, secretPath }); diff --git a/frontend/src/pages/integrations/northflank/authorize.tsx b/frontend/src/pages/integrations/northflank/authorize.tsx index 809f0a63f..ad1ba9b1e 100644 --- a/frontend/src/pages/integrations/northflank/authorize.tsx +++ b/frontend/src/pages/integrations/northflank/authorize.tsx @@ -28,9 +28,7 @@ export default function NorthflankCreateIntegrationPage() { const integrationAuth = await mutateAsync({ workspaceId: localStorage.getItem("projectData.id"), integration: "northflank", - accessToken: apiKey, - url: null, - namespace: null + accessToken: apiKey }); setIsLoading(false); diff --git a/frontend/src/pages/integrations/northflank/create.tsx b/frontend/src/pages/integrations/northflank/create.tsx index 9869a9030..055c937e1 100644 --- a/frontend/src/pages/integrations/northflank/create.tsx +++ b/frontend/src/pages/integrations/northflank/create.tsx @@ -29,7 +29,7 @@ export default function NorthflankCreateIntegrationPage() { const [selectedSourceEnvironment, setSelectedSourceEnvironment] = useState(""); const [secretPath, setSecretPath] = useState("/"); const [targetAppId, setTargetAppId] = useState(""); - const [targetSecretGroupId, setTargetSecretGroupId] = useState(null); + const [targetSecretGroupId, setTargetSecretGroupId] = useState(""); const [isLoading, setIsLoading] = useState(false); @@ -88,13 +88,7 @@ export default function NorthflankCreateIntegrationPage() { app: integrationAuthApps?.find((integrationAuthApp) => integrationAuthApp.appId === targetAppId)?.name, appId: targetAppId, sourceEnvironment: selectedSourceEnvironment, - targetEnvironment: null, - targetEnvironmentId: null, - targetService: null, targetServiceId: targetSecretGroupId, - owner: null, - path: null, - region: null, secretPath }); @@ -160,7 +154,7 @@ export default function NorthflankCreateIntegrationPage() { )} - {targetSecretGroupId && integrationAuthSecretGroups && ( + {targetSecretGroupId !== "" && integrationAuthSecretGroups && (