diff options
Diffstat (limited to 'app/assets/javascripts/runner/admin_runners/index.js')
-rw-r--r-- | app/assets/javascripts/runner/admin_runners/index.js | 30 |
1 files changed, 11 insertions, 19 deletions
diff --git a/app/assets/javascripts/runner/admin_runners/index.js b/app/assets/javascripts/runner/admin_runners/index.js index 62da6cbfa2b..3b8a8fe9cd1 100644 --- a/app/assets/javascripts/runner/admin_runners/index.js +++ b/app/assets/javascripts/runner/admin_runners/index.js @@ -2,6 +2,8 @@ import { GlToast } from '@gitlab/ui'; import Vue from 'vue'; import VueApollo from 'vue-apollo'; import createDefaultClient from '~/lib/graphql'; +import { visitUrl } from '~/lib/utils/url_utility'; +import { updateOutdatedUrl } from '~/runner/runner_search_utils'; import AdminRunnersApp from './admin_runners_app.vue'; Vue.use(GlToast); @@ -14,18 +16,16 @@ export const initAdminRunners = (selector = '#js-admin-runners') => { return null; } - // TODO `activeRunnersCount` should be implemented using a GraphQL API - // https://gitlab.com/gitlab-org/gitlab/-/issues/333806 - const { - runnerInstallHelpPage, - registrationToken, + // Redirect outdated URLs + const updatedUrlQuery = updateOutdatedUrl(); + if (updatedUrlQuery) { + visitUrl(updatedUrlQuery); - activeRunnersCount, - allRunnersCount, - instanceRunnersCount, - groupRunnersCount, - projectRunnersCount, - } = el.dataset; + // Prevent mounting the rest of the app, redirecting now. + return null; + } + + const { runnerInstallHelpPage, registrationToken } = el.dataset; const apolloProvider = new VueApollo({ defaultClient: createDefaultClient(), @@ -41,14 +41,6 @@ export const initAdminRunners = (selector = '#js-admin-runners') => { return h(AdminRunnersApp, { props: { registrationToken, - - // All runner counts are returned as formatted - // strings, we do not use `parseInt`. - activeRunnersCount, - allRunnersCount, - instanceRunnersCount, - groupRunnersCount, - projectRunnersCount, }, }); }, |