Просмотр исходного кода

Added issuer email to provision calls

jnfrati 4 лет назад
Родитель
Сommit
38cb8a1305

+ 6 - 0
dashboard/src/main/home/onboarding/Onboarding.tsx

@@ -109,6 +109,12 @@ const Onboarding = () => {
     };
     };
   }, [context.currentProject]);
   }, [context.currentProject]);
 
 
+  useEffect(() => {
+    if (context?.user?.email) {
+      OFState.StateHandler.user_email = context.user.email;
+    }
+  }, [context.user]);
+
   return (
   return (
     <StyledOnboarding>{isLoading ? <Loading /> : <Routes />}</StyledOnboarding>
     <StyledOnboarding>{isLoading ? <Loading /> : <Routes />}</StyledOnboarding>
   );
   );

+ 2 - 0
dashboard/src/main/home/onboarding/state/StateHandler.ts

@@ -31,6 +31,7 @@ export type ConnectedSourceData = {
 };
 };
 
 
 export type OnboardingState = {
 export type OnboardingState = {
+  user_email: string;
   project: ProjectData | null;
   project: ProjectData | null;
   connected_source: ConnectedSourceData | null;
   connected_source: ConnectedSourceData | null;
   connected_registry: any | null;
   connected_registry: any | null;
@@ -45,6 +46,7 @@ export type OnboardingState = {
 export type StateKeys = keyof Omit<OnboardingState, "actions">;
 export type StateKeys = keyof Omit<OnboardingState, "actions">;
 
 
 export const StateHandler = proxy({
 export const StateHandler = proxy({
+  user_email: null,
   project: null,
   project: null,
   connected_source: null,
   connected_source: null,
   connected_registry: null,
   connected_registry: null,

+ 2 - 0
dashboard/src/main/home/onboarding/steps/ProvisionResources/forms/_AWSProvisionerForm.tsx

@@ -187,6 +187,7 @@ export const SettingsForm: React.FC<{
           {
           {
             aws_integration_id: awsIntegrationId,
             aws_integration_id: awsIntegrationId,
             ecr_name: `${project.name}-registry`,
             ecr_name: `${project.name}-registry`,
+            issuer_email: snap.StateHandler.user_email,
           },
           },
           { id: project.id }
           { id: project.id }
         )
         )
@@ -205,6 +206,7 @@ export const SettingsForm: React.FC<{
             aws_integration_id: awsIntegrationId,
             aws_integration_id: awsIntegrationId,
             eks_name: clusterName,
             eks_name: clusterName,
             machine_type: machineType,
             machine_type: machineType,
+            issuer_email: snap.StateHandler.user_email,
           },
           },
           { id: project.id }
           { id: project.id }
         )
         )

+ 2 - 0
dashboard/src/main/home/onboarding/steps/ProvisionResources/forms/_DOProvisionerForm.tsx

@@ -115,6 +115,7 @@ export const SettingsForm: React.FC<{
             do_integration_id: integrationId,
             do_integration_id: integrationId,
             docr_name: project.name,
             docr_name: project.name,
             docr_subscription_tier: tier,
             docr_subscription_tier: tier,
+            issuer_email: snap.StateHandler.user_email,
           },
           },
           {
           {
             project_id: project.id,
             project_id: project.id,
@@ -140,6 +141,7 @@ export const SettingsForm: React.FC<{
             do_integration_id: integrationId,
             do_integration_id: integrationId,
             doks_name: clusterName,
             doks_name: clusterName,
             do_region: region,
             do_region: region,
+            issuer_email: snap.StateHandler.user_email,
           },
           },
           {
           {
             project_id: project.id,
             project_id: project.id,

+ 2 - 0
dashboard/src/main/home/onboarding/steps/ProvisionResources/forms/_GCPProvisionerForm.tsx

@@ -200,6 +200,7 @@ export const SettingsForm: React.FC<{
         "<token>",
         "<token>",
         {
         {
           gcp_integration_id: id,
           gcp_integration_id: id,
+          issuer_email: snap.StateHandler.user_email,
         },
         },
         { project_id: project.id }
         { project_id: project.id }
       )
       )
@@ -216,6 +217,7 @@ export const SettingsForm: React.FC<{
         {
         {
           gke_name: clusterName,
           gke_name: clusterName,
           gcp_integration_id: id,
           gcp_integration_id: id,
+          issuer_email: snap.StateHandler.user_email,
         },
         },
         { project_id: project.id }
         { project_id: project.id }
       )
       )

+ 6 - 0
dashboard/src/shared/api.tsx

@@ -75,6 +75,7 @@ const createDOCR = baseApi<
     do_integration_id: number;
     do_integration_id: number;
     docr_name: string;
     docr_name: string;
     docr_subscription_tier: string;
     docr_subscription_tier: string;
+    issuer_email: string;
   },
   },
   {
   {
     project_id: number;
     project_id: number;
@@ -88,6 +89,7 @@ const createDOKS = baseApi<
     do_integration_id: number;
     do_integration_id: number;
     doks_name: string;
     doks_name: string;
     do_region: string;
     do_region: string;
+    issuer_email: string;
   },
   },
   {
   {
     project_id: number;
     project_id: number;
@@ -116,6 +118,7 @@ const createGCPIntegration = baseApi<
 const createGCR = baseApi<
 const createGCR = baseApi<
   {
   {
     gcp_integration_id: number;
     gcp_integration_id: number;
+    issuer_email: string;
   },
   },
   {
   {
     project_id: number;
     project_id: number;
@@ -128,6 +131,7 @@ const createGKE = baseApi<
   {
   {
     gcp_integration_id: number;
     gcp_integration_id: number;
     gke_name: string;
     gke_name: string;
+    issuer_email: string;
   },
   },
   {
   {
     project_id: number;
     project_id: number;
@@ -827,6 +831,7 @@ const provisionECR = baseApi<
   {
   {
     ecr_name: string;
     ecr_name: string;
     aws_integration_id: number;
     aws_integration_id: number;
+    issuer_email: string;
   },
   },
   { id: number }
   { id: number }
 >("POST", (pathParams) => {
 >("POST", (pathParams) => {
@@ -838,6 +843,7 @@ const provisionEKS = baseApi<
     eks_name: string;
     eks_name: string;
     aws_integration_id: number;
     aws_integration_id: number;
     machine_type: string;
     machine_type: string;
+    issuer_email: string;
   },
   },
   { id: number }
   { id: number }
 >("POST", (pathParams) => {
 >("POST", (pathParams) => {