diff --git a/web/src/pages/AddUpdatePipeline/AddUpdatePipeline.tsx b/web/src/pages/AddUpdatePipeline/AddUpdatePipeline.tsx index 05274d967..f995a0861 100644 --- a/web/src/pages/AddUpdatePipeline/AddUpdatePipeline.tsx +++ b/web/src/pages/AddUpdatePipeline/AddUpdatePipeline.tsx @@ -252,6 +252,10 @@ const AddUpdatePipeline = (): JSX.Element => { ) const renderCTA = useCallback(() => { + /* Do not render CTA till pipeline existence info is obtained */ + if (fetchingPipeline || !pipelineData) { + return <> + } switch (selectedOption?.action) { case PipelineSaveAndRunAction.RUN: return ( @@ -310,7 +314,18 @@ const AddUpdatePipeline = (): JSX.Element => { default: return <> } - }, [loading, fetchingPipeline, isDirty, repoMetadata, pipeline, selectedOption, isExistingPipeline, pipelineAsYAML]) + }, [ + loading, + fetchingPipeline, + fetchingPipelineYAMLFileContent, + isDirty, + repoMetadata, + pipeline, + selectedOption, + isExistingPipeline, + pipelineAsYAML, + pipelineData + ]) if (fetchingPipeline || fetchingPipelineYAMLFileContent) { return diff --git a/web/src/pages/ExecutionList/ExecutionList.tsx b/web/src/pages/ExecutionList/ExecutionList.tsx index bd70533a5..17c080110 100644 --- a/web/src/pages/ExecutionList/ExecutionList.tsx +++ b/web/src/pages/ExecutionList/ExecutionList.tsx @@ -1,4 +1,5 @@ import React, { useCallback, useEffect, useMemo, useState } from 'react' +import { isEmpty } from 'lodash' import { Button, ButtonVariation, @@ -58,7 +59,8 @@ const ExecutionList = () => { data: executions, error: executionsError, response, - refetch: executionsRefetch + refetch: executionsRefetch, + loading: isFetchingExecutions } = useGet({ path: `/api/v1/repos/${repoMetadata?.path}/+/pipelines/${pipeline}/executions`, queryParams: { page, limit: LIST_FETCHING_LIMIT }, @@ -204,34 +206,41 @@ const ExecutionList = () => { message: getString('executions.noData'), button: NewExecutionButton }}> - + - - {NewExecutionButton} -