diff --git a/src/lib/ApiConnection.js b/src/lib/ApiConnection.js index 34d50b56..615f650b 100644 --- a/src/lib/ApiConnection.js +++ b/src/lib/ApiConnection.js @@ -34,6 +34,7 @@ const ApiConnection = ({ children }) => ( const wsLink = new WebSocketLink({ uri: publicRuntimeConfig.GRAPHQL_API.replace(/https/, 'wss').replace(/http/, 'ws'), options: { + lazy: true, reconnect: true, connectionParams: { authToken: auth.apiToken, diff --git a/src/lib/subscription/Backups.js b/src/lib/subscription/Backups.js deleted file mode 100644 index b80bab6a..00000000 --- a/src/lib/subscription/Backups.js +++ /dev/null @@ -1,17 +0,0 @@ -import gql from 'graphql-tag'; - -export default gql` - subscription subscribeToBackups($environment: Int!) { - backupChanged(environment: $environment) { - id - source - backupId - created - restore { - id - status - restoreLocation - } - } - } -`; diff --git a/src/lib/subscription/Deployments.js b/src/lib/subscription/Deployments.js deleted file mode 100644 index 472be0bc..00000000 --- a/src/lib/subscription/Deployments.js +++ /dev/null @@ -1,15 +0,0 @@ -import gql from 'graphql-tag'; - -export default gql` - subscription subscribeToDeployments($environment: Int!) { - deploymentChanged(environment: $environment) { - id - name - status - created - started - completed - buildLog - } - } -`; diff --git a/src/lib/subscription/Tasks.js b/src/lib/subscription/Tasks.js deleted file mode 100644 index b2f2fc31..00000000 --- a/src/lib/subscription/Tasks.js +++ /dev/null @@ -1,13 +0,0 @@ -import gql from 'graphql-tag'; - -export default gql` - subscription subscribeToTasks($environment: Int!) { - taskChanged(environment: $environment) { - id - name - status - created - service - } - } -`; diff --git a/src/pages/backups.js b/src/pages/backups.js index e1932671..96b381e9 100644 --- a/src/pages/backups.js +++ b/src/pages/backups.js @@ -15,9 +15,7 @@ import NavTabsSkeleton from 'components/NavTabs/NavTabsSkeleton'; import ResultsLimited from 'components/ResultsLimited'; import MainLayout from 'layouts/MainLayout'; import EnvironmentWithBackupsQuery from 'lib/query/EnvironmentWithBackups'; -import BackupsSubscription from 'lib/subscription/Backups'; import * as R from 'ramda'; - import EnvironmentNotFound from '../components/errors/EnvironmentNotFound'; import QueryError from '../components/errors/QueryError'; import { CommonWrapperWNotification } from '../styles/commonPageStyles'; @@ -34,7 +32,7 @@ export const PageBackups = ({ router }) => { const [resultLimit, setResultLimit] = useState(null); const { continueTour } = useTourContext(); - const { data, error, loading, subscribeToMore } = useQuery(EnvironmentWithBackupsQuery, { + const { data, error, loading } = useQuery(EnvironmentWithBackupsQuery, { variables: { openshiftProjectName: router.query.openshiftProjectName, limit: resultLimit, @@ -117,51 +115,6 @@ export const PageBackups = ({ router }) => { ); } - subscribeToMore({ - document: BackupsSubscription, - variables: { environment: environment.id }, - updateQuery: (prevStore, { subscriptionData }) => { - if (!subscriptionData.data) return prevStore; - const prevBackups = prevStore.environment.backups; - const incomingBackup = subscriptionData.data.backupChanged; - const existingIndex = prevBackups.findIndex(prevBackup => prevBackup.id === incomingBackup.id); - let newBackups; - - // New backup. - if (existingIndex === -1) { - // Don't add new deleted backups. - if (incomingBackup.deleted !== '0000-00-00 00:00:00') { - return prevStore; - } - - newBackups = [incomingBackup, ...prevBackups]; - } - // Existing backup. - else { - // Updated backup - if (incomingBackup.deleted === '0000-00-00 00:00:00') { - newBackups = Object.assign([...prevBackups], { - [existingIndex]: incomingBackup, - }); - } - // Deleted backup - else { - newBackups = R.remove(existingIndex, 1, prevBackups); - } - } - - const newStore = { - ...prevStore, - environment: { - ...prevStore.environment, - backups: newBackups, - }, - }; - - return newStore; - }, - }); - return ( <> diff --git a/src/pages/deployments.js b/src/pages/deployments.js index 4b780716..2742dbf7 100644 --- a/src/pages/deployments.js +++ b/src/pages/deployments.js @@ -17,8 +17,6 @@ import NavTabsSkeleton from 'components/NavTabs/NavTabsSkeleton'; import ResultsLimited from 'components/ResultsLimited'; import MainLayout from 'layouts/MainLayout'; import EnvironmentWithDeploymentsQuery from 'lib/query/EnvironmentWithDeployments'; -import DeploymentsSubscription from 'lib/subscription/Deployments'; - import EnvironmentNotFound from '../components/errors/EnvironmentNotFound'; import QueryError from '../components/errors/QueryError'; import { DeploymentsWrapper } from '../styles/pageStyles'; @@ -36,7 +34,7 @@ export const PageDeployments = ({ router }) => { const [resultLimit, setResultLimit] = useState(null); - const { data, error, loading, subscribeToMore, refetch } = useQuery(EnvironmentWithDeploymentsQuery, { + const { data, error, loading, refetch } = useQuery(EnvironmentWithDeploymentsQuery, { variables: { openshiftProjectName: router.query.openshiftProjectName, limit: resultLimit, @@ -119,39 +117,6 @@ export const PageDeployments = ({ router }) => { ); } - subscribeToMore({ - document: DeploymentsSubscription, - variables: { environment: environment.id }, - updateQuery: (prevStore, { subscriptionData }) => { - if (!subscriptionData.data) return prevStore; - const prevDeployments = prevStore.environment.deployments; - const incomingDeployment = subscriptionData.data.deploymentChanged; - const existingIndex = prevDeployments.findIndex(prevDeployment => prevDeployment.id === incomingDeployment.id); - let newDeployments; - - // New deployment. - if (existingIndex === -1) { - newDeployments = [incomingDeployment, ...prevDeployments]; - } - // Updated deployment - else { - newDeployments = Object.assign([...prevDeployments], { - [existingIndex]: incomingDeployment, - }); - } - - const newStore = { - ...prevStore, - environment: { - ...prevStore.environment, - deployments: newDeployments, - }, - }; - - return newStore; - }, - }); - return ( <> diff --git a/src/pages/tasks.js b/src/pages/tasks.js index 32699d63..58bf27a2 100644 --- a/src/pages/tasks.js +++ b/src/pages/tasks.js @@ -17,8 +17,6 @@ import Tasks from 'components/Tasks'; import TasksSkeleton from 'components/Tasks/TasksSkeleton'; import MainLayout from 'layouts/MainLayout'; import EnvironmentWithTasksQuery from 'lib/query/EnvironmentWithTasks'; -import TasksSubscription from 'lib/subscription/Tasks'; - import EnvironmentNotFound from '../components/errors/EnvironmentNotFound'; import QueryError from '../components/errors/QueryError'; import { TasksWrapper } from '../styles/pageStyles'; @@ -35,7 +33,7 @@ export const PageTasks = ({ router, renderAddTasks }) => { const [resultLimit, setResultLimit] = useState(null); const { continueTour } = useTourContext(); - const { data, error, loading, subscribeToMore, refetch } = useQuery(EnvironmentWithTasksQuery, { + const { data, error, loading, refetch } = useQuery(EnvironmentWithTasksQuery, { variables: { openshiftProjectName: router.query.openshiftProjectName, limit: resultLimit, @@ -120,39 +118,6 @@ export const PageTasks = ({ router, renderAddTasks }) => { ); } - subscribeToMore({ - document: TasksSubscription, - variables: { environment: environment.id }, - updateQuery: (prevStore, { subscriptionData }) => { - if (!subscriptionData.data) return prevStore; - const prevTasks = prevStore.environment.tasks; - const incomingTask = subscriptionData.data.taskChanged; - const existingIndex = prevTasks.findIndex(prevTask => prevTask.id === incomingTask.id); - let newTasks; - - // New task. - if (existingIndex === -1) { - newTasks = [incomingTask, ...prevTasks]; - } - // Updated task - else { - newTasks = Object.assign([...prevTasks], { - [existingIndex]: incomingTask, - }); - } - - const newStore = { - ...prevStore, - environment: { - ...prevStore.environment, - tasks: newTasks, - }, - }; - - return newStore; - }, - }); - return ( <>