mirror of
https://github.com/gitlabhq/gitlabhq.git
synced 2025-07-25 16:00:50 +00:00
Add latest changes from gitlab-org/gitlab@master
This commit is contained in:
@ -34,7 +34,7 @@ build-gdk-image:
|
|||||||
- .base-image-build-buildx
|
- .base-image-build-buildx
|
||||||
- .build-images:rules:build-gdk-image
|
- .build-images:rules:build-gdk-image
|
||||||
tags:
|
tags:
|
||||||
- high-cpu
|
- saas-linux-xlarge-amd64
|
||||||
stage: build-images
|
stage: build-images
|
||||||
needs: []
|
needs: []
|
||||||
script:
|
script:
|
||||||
|
@ -43,6 +43,10 @@
|
|||||||
.not-canonical-project: ¬-canonical-project
|
.not-canonical-project: ¬-canonical-project
|
||||||
if: '$CI_PROJECT_PATH != "gitlab-org/gitlab" && $CI_PROJECT_PATH != "gitlab-cn/gitlab"'
|
if: '$CI_PROJECT_PATH != "gitlab-org/gitlab" && $CI_PROJECT_PATH != "gitlab-cn/gitlab"'
|
||||||
|
|
||||||
|
# If Schedule pipeline
|
||||||
|
.if-schedule-pipeline: &if-schedule-pipeline
|
||||||
|
if: '$CI_PIPELINE_SOURCE == "schedule"'
|
||||||
|
|
||||||
# Selective test execution against omnibus instance have following execution scenarios:
|
# Selective test execution against omnibus instance have following execution scenarios:
|
||||||
# * only e2e spec files changed - runs only changed specs
|
# * only e2e spec files changed - runs only changed specs
|
||||||
# * qa framework changes - runs full test suite
|
# * qa framework changes - runs full test suite
|
||||||
@ -149,6 +153,17 @@
|
|||||||
when: never
|
when: never
|
||||||
- !reference [.rules:test:qa, rules]
|
- !reference [.rules:test:qa, rules]
|
||||||
|
|
||||||
|
.rules:test:never-schedule-pipeline:
|
||||||
|
rules:
|
||||||
|
- <<: *if-schedule-pipeline
|
||||||
|
when: never
|
||||||
|
|
||||||
|
.rules:test:gdk-load-balancer-changes:
|
||||||
|
rules:
|
||||||
|
- changes:
|
||||||
|
- ".gitlab/ci/test-on-gdk/**"
|
||||||
|
- "lib/gitlab/database/load_balancing/**/*"
|
||||||
|
|
||||||
.rules:test:qa-default-branch:
|
.rules:test:qa-default-branch:
|
||||||
rules:
|
rules:
|
||||||
- *qa-run-all-e2e-label
|
- *qa-run-all-e2e-label
|
||||||
|
@ -923,16 +923,9 @@
|
|||||||
- !reference [".qa:rules:package-and-test-never-run", rules]
|
- !reference [".qa:rules:package-and-test-never-run", rules]
|
||||||
- <<: *if-default-branch-schedule-nightly # already executed in the 2-hourly schedule
|
- <<: *if-default-branch-schedule-nightly # already executed in the 2-hourly schedule
|
||||||
when: never
|
when: never
|
||||||
# Rebuild base only when relevant components change
|
|
||||||
- <<: *if-default-branch-refs
|
|
||||||
changes: *gdk-component-patterns
|
|
||||||
variables:
|
|
||||||
BUILD_GDK_BASE: "true"
|
|
||||||
- <<: *if-default-branch-refs
|
- <<: *if-default-branch-refs
|
||||||
- <<: *if-merge-request
|
- <<: *if-merge-request
|
||||||
changes: *gdk-component-patterns
|
changes: *gdk-component-patterns
|
||||||
variables:
|
|
||||||
BUILD_GDK_BASE: "true"
|
|
||||||
# The rest are included to be consistent with .qa:rules:e2e:test-on-gdk
|
# The rest are included to be consistent with .qa:rules:e2e:test-on-gdk
|
||||||
- <<: *if-merge-request-targeting-stable-branch
|
- <<: *if-merge-request-targeting-stable-branch
|
||||||
changes: *setup-test-env-patterns
|
changes: *setup-test-env-patterns
|
||||||
|
@ -146,9 +146,8 @@ gdk-qa-smoke-with-load-balancer:
|
|||||||
reports:
|
reports:
|
||||||
dotenv: ""
|
dotenv: ""
|
||||||
rules:
|
rules:
|
||||||
- changes:
|
- !reference [".rules:test:never-schedule-pipeline", rules]
|
||||||
- ".gitlab/ci/test-on-gdk/**"
|
- !reference [".rules:test:gdk-load-balancer-changes", rules]
|
||||||
- "lib/gitlab/database/load_balancing/**/*"
|
|
||||||
allow_failure: true
|
allow_failure: true
|
||||||
|
|
||||||
gdk-qa-reliable:
|
gdk-qa-reliable:
|
||||||
@ -177,9 +176,8 @@ gdk-qa-reliable-with-load-balancer:
|
|||||||
reports:
|
reports:
|
||||||
dotenv: ""
|
dotenv: ""
|
||||||
rules:
|
rules:
|
||||||
- changes:
|
- !reference [".rules:test:never-schedule-pipeline", rules]
|
||||||
- ".gitlab/ci/test-on-gdk/**"
|
- !reference [".rules:test:gdk-load-balancer-changes", rules]
|
||||||
- "lib/gitlab/database/load_balancing/**/*"
|
|
||||||
allow_failure: true
|
allow_failure: true
|
||||||
|
|
||||||
gdk-qa-non-blocking:
|
gdk-qa-non-blocking:
|
||||||
|
@ -5,7 +5,7 @@ import axios from '~/lib/utils/axios_utils';
|
|||||||
import { BV_HIDE_TOOLTIP } from '~/lib/utils/constants';
|
import { BV_HIDE_TOOLTIP } from '~/lib/utils/constants';
|
||||||
import { dasherize } from '~/lib/utils/text_utility';
|
import { dasherize } from '~/lib/utils/text_utility';
|
||||||
import { __ } from '~/locale';
|
import { __ } from '~/locale';
|
||||||
import { reportToSentry } from '../../utils';
|
import { reportToSentry } from '~/ci/utils';
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Renders either a cancel, retry or play icon button and handles the post request
|
* Renders either a cancel, retry or play icon button and handles the post request
|
@ -1,8 +1,8 @@
|
|||||||
<script>
|
<script>
|
||||||
import { memoize } from 'lodash';
|
import { memoize } from 'lodash';
|
||||||
import { reportToSentry } from '../../utils';
|
import { reportToSentry } from '~/ci/utils';
|
||||||
import { parseData } from '../parsing_utils';
|
import { parseData } from '~/ci/pipeline_details/utils/parsing_utils';
|
||||||
import LinksInner from './links_inner.vue';
|
import LinksInner from '~/ci/pipeline_details/graph/components/links_inner.vue';
|
||||||
|
|
||||||
const parseForLinksBare = (pipeline) => {
|
const parseForLinksBare = (pipeline) => {
|
||||||
const arrayOfJobs = pipeline.flatMap(({ groups }) => groups);
|
const arrayOfJobs = pipeline.flatMap(({ groups }) => groups);
|
@ -1,10 +1,10 @@
|
|||||||
<script>
|
<script>
|
||||||
import * as d3 from 'd3';
|
import * as d3 from 'd3';
|
||||||
import { uniqueId } from 'lodash';
|
import { uniqueId } from 'lodash';
|
||||||
|
import { getMaxNodes, removeOrphanNodes } from '~/ci/pipeline_details/utils/parsing_utils';
|
||||||
import { PARSE_FAILURE } from '../../constants';
|
import { PARSE_FAILURE } from '../../constants';
|
||||||
import { getMaxNodes, removeOrphanNodes } from '../parsing_utils';
|
import { LINK_SELECTOR, NODE_SELECTOR, ADD_NOTE, REMOVE_NOTE, REPLACE_NOTES } from '../constants';
|
||||||
import { LINK_SELECTOR, NODE_SELECTOR, ADD_NOTE, REMOVE_NOTE, REPLACE_NOTES } from './constants';
|
import { calculateClip, createLinkPath, createSankey, labelPosition } from '../drawing_utils';
|
||||||
import { calculateClip, createLinkPath, createSankey, labelPosition } from './drawing_utils';
|
|
||||||
import {
|
import {
|
||||||
currentIsLive,
|
currentIsLive,
|
||||||
getLiveLinksAsDict,
|
getLiveLinksAsDict,
|
||||||
@ -12,7 +12,7 @@ import {
|
|||||||
restoreLinks,
|
restoreLinks,
|
||||||
toggleLinkHighlight,
|
toggleLinkHighlight,
|
||||||
togglePathHighlights,
|
togglePathHighlights,
|
||||||
} from './interactions';
|
} from '../interactions';
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
viewOptions: {
|
viewOptions: {
|
@ -4,12 +4,17 @@ import { GlAlert, GlButton, GlEmptyState, GlLink, GlSprintf } from '@gitlab/ui';
|
|||||||
import { isEmpty } from 'lodash';
|
import { isEmpty } from 'lodash';
|
||||||
import { fetchPolicies } from '~/lib/graphql';
|
import { fetchPolicies } from '~/lib/graphql';
|
||||||
import { __ } from '~/locale';
|
import { __ } from '~/locale';
|
||||||
import { DEFAULT, PARSE_FAILURE, LOAD_FAILURE, UNSUPPORTED_DATA } from '../../constants';
|
import {
|
||||||
import getDagVisData from '../../graphql/queries/get_dag_vis_data.query.graphql';
|
DEFAULT,
|
||||||
import { parseData } from '../parsing_utils';
|
PARSE_FAILURE,
|
||||||
|
LOAD_FAILURE,
|
||||||
|
UNSUPPORTED_DATA,
|
||||||
|
} from '~/ci/pipeline_details/constants';
|
||||||
|
import { parseData } from '~/ci/pipeline_details/utils/parsing_utils';
|
||||||
|
import getDagVisData from './graphql/queries/get_dag_vis_data.query.graphql';
|
||||||
import { ADD_NOTE, REMOVE_NOTE, REPLACE_NOTES } from './constants';
|
import { ADD_NOTE, REMOVE_NOTE, REPLACE_NOTES } from './constants';
|
||||||
import DagAnnotations from './dag_annotations.vue';
|
import DagAnnotations from './components/dag_annotations.vue';
|
||||||
import DagGraph from './dag_graph.vue';
|
import DagGraph from './components/dag_graph.vue';
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
// eslint-disable-next-line @gitlab/require-i18n-strings
|
// eslint-disable-next-line @gitlab/require-i18n-strings
|
@ -1,5 +1,5 @@
|
|||||||
import axios from '~/lib/utils/axios_utils';
|
import axios from '~/lib/utils/axios_utils';
|
||||||
import { reportToSentry } from '../../utils';
|
import { reportToSentry } from '~/ci/utils';
|
||||||
|
|
||||||
export const reportPerformance = (path, stats) => {
|
export const reportPerformance = (path, stats) => {
|
||||||
// FIXME: https://gitlab.com/gitlab-org/gitlab/-/issues/330245
|
// FIXME: https://gitlab.com/gitlab-org/gitlab/-/issues/330245
|
@ -1,15 +1,15 @@
|
|||||||
<script>
|
<script>
|
||||||
import { reportToSentry } from '../../utils';
|
import { reportToSentry } from '~/ci/utils';
|
||||||
import LinkedGraphWrapper from '../graph_shared/linked_graph_wrapper.vue';
|
|
||||||
import LinksLayer from '../graph_shared/links_layer.vue';
|
|
||||||
import {
|
import {
|
||||||
generateColumnsFromLayersListMemoized,
|
generateColumnsFromLayersListMemoized,
|
||||||
keepLatestDownstreamPipelines,
|
keepLatestDownstreamPipelines,
|
||||||
} from '../parsing_utils';
|
} from '~/ci/pipeline_details/utils/parsing_utils';
|
||||||
import { DOWNSTREAM, MAIN, UPSTREAM, ONE_COL_WIDTH, STAGE_VIEW } from './constants';
|
import LinksLayer from '../../../common/private/job_links_layer.vue';
|
||||||
|
import { DOWNSTREAM, MAIN, UPSTREAM, ONE_COL_WIDTH, STAGE_VIEW } from '../constants';
|
||||||
|
import { validateConfigPaths } from '../utils';
|
||||||
|
import LinkedGraphWrapper from './linked_graph_wrapper.vue';
|
||||||
import LinkedPipelinesColumn from './linked_pipelines_column.vue';
|
import LinkedPipelinesColumn from './linked_pipelines_column.vue';
|
||||||
import StageColumnComponent from './stage_column_component.vue';
|
import StageColumnComponent from './stage_column_component.vue';
|
||||||
import { validateConfigPaths } from './utils';
|
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: 'PipelineGraph',
|
name: 'PipelineGraph',
|
@ -1,7 +1,7 @@
|
|||||||
<script>
|
<script>
|
||||||
import { GlAlert, GlButton, GlButtonGroup, GlLoadingIcon, GlToggle } from '@gitlab/ui';
|
import { GlAlert, GlButton, GlButtonGroup, GlLoadingIcon, GlToggle } from '@gitlab/ui';
|
||||||
import { __, s__ } from '~/locale';
|
import { __, s__ } from '~/locale';
|
||||||
import { STAGE_VIEW, LAYER_VIEW } from './constants';
|
import { STAGE_VIEW, LAYER_VIEW } from '../constants';
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: 'GraphViewSelector',
|
name: 'GraphViewSelector',
|
@ -1,6 +1,6 @@
|
|||||||
<script>
|
<script>
|
||||||
import { reportToSentry } from '../../utils';
|
import { reportToSentry } from '~/ci/utils';
|
||||||
import { JOB_DROPDOWN, SINGLE_JOB } from './constants';
|
import { JOB_DROPDOWN, SINGLE_JOB } from '../constants';
|
||||||
import JobItem from './job_item.vue';
|
import JobItem from './job_item.vue';
|
||||||
|
|
||||||
/**
|
/**
|
@ -1,14 +1,14 @@
|
|||||||
<script>
|
<script>
|
||||||
import { GlBadge, GlForm, GlFormCheckbox, GlLink, GlModal, GlTooltipDirective } from '@gitlab/ui';
|
import { GlBadge, GlForm, GlFormCheckbox, GlLink, GlModal, GlTooltipDirective } from '@gitlab/ui';
|
||||||
|
import { reportToSentry } from '~/ci/utils';
|
||||||
import delayedJobMixin from '~/jobs/mixins/delayed_job_mixin';
|
import delayedJobMixin from '~/jobs/mixins/delayed_job_mixin';
|
||||||
import { helpPagePath } from '~/helpers/help_page_helper';
|
import { helpPagePath } from '~/helpers/help_page_helper';
|
||||||
import { BV_HIDE_TOOLTIP } from '~/lib/utils/constants';
|
import { BV_HIDE_TOOLTIP } from '~/lib/utils/constants';
|
||||||
import { __, s__, sprintf } from '~/locale';
|
import { __, s__, sprintf } from '~/locale';
|
||||||
import CiIcon from '~/vue_shared/components/ci_icon.vue';
|
import CiIcon from '~/vue_shared/components/ci_icon.vue';
|
||||||
import { reportToSentry } from '../../utils';
|
import ActionComponent from '../../../common/private/job_action_component.vue';
|
||||||
import ActionComponent from '../jobs_shared/action_component.vue';
|
import JobNameComponent from '../../../common/private/job_name_component.vue';
|
||||||
import JobNameComponent from '../jobs_shared/job_name_component.vue';
|
import { BRIDGE_KIND, RETRY_ACTION_TITLE, SINGLE_JOB, SKIP_RETRY_MODAL_KEY } from '../constants';
|
||||||
import { BRIDGE_KIND, RETRY_ACTION_TITLE, SINGLE_JOB, SKIP_RETRY_MODAL_KEY } from './constants';
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Renders the badge for the pipeline graph and the job's dropdown.
|
* Renders the badge for the pipeline graph and the job's dropdown.
|
@ -14,8 +14,8 @@ import { __, sprintf } from '~/locale';
|
|||||||
import CancelPipelineMutation from '~/ci/pipeline_details/graphql/mutations/cancel_pipeline.mutation.graphql';
|
import CancelPipelineMutation from '~/ci/pipeline_details/graphql/mutations/cancel_pipeline.mutation.graphql';
|
||||||
import RetryPipelineMutation from '~/ci/pipeline_details/graphql/mutations/retry_pipeline.mutation.graphql';
|
import RetryPipelineMutation from '~/ci/pipeline_details/graphql/mutations/retry_pipeline.mutation.graphql';
|
||||||
import CiIcon from '~/vue_shared/components/ci_icon.vue';
|
import CiIcon from '~/vue_shared/components/ci_icon.vue';
|
||||||
import { reportToSentry } from '../../utils';
|
import { reportToSentry } from '~/ci/utils';
|
||||||
import { ACTION_FAILURE, DOWNSTREAM, UPSTREAM } from './constants';
|
import { ACTION_FAILURE, DOWNSTREAM, UPSTREAM } from '../constants';
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
directives: {
|
directives: {
|
@ -1,9 +1,8 @@
|
|||||||
<script>
|
<script>
|
||||||
import getPipelineDetails from 'shared_queries/pipelines/get_pipeline_details.query.graphql';
|
import getPipelineDetails from 'shared_queries/pipelines/get_pipeline_details.query.graphql';
|
||||||
|
import { reportToSentry } from '~/ci/utils';
|
||||||
import { LOAD_FAILURE } from '../../constants';
|
import { LOAD_FAILURE } from '../../constants';
|
||||||
import { reportToSentry } from '../../utils';
|
import { ONE_COL_WIDTH, UPSTREAM, LAYER_VIEW, STAGE_VIEW } from '../constants';
|
||||||
import { ONE_COL_WIDTH, UPSTREAM, LAYER_VIEW, STAGE_VIEW } from './constants';
|
|
||||||
import LinkedPipeline from './linked_pipeline.vue';
|
|
||||||
import {
|
import {
|
||||||
calculatePipelineLayersInfo,
|
calculatePipelineLayersInfo,
|
||||||
getQueryHeaders,
|
getQueryHeaders,
|
||||||
@ -11,7 +10,8 @@ import {
|
|||||||
toggleQueryPollingByVisibility,
|
toggleQueryPollingByVisibility,
|
||||||
unwrapPipelineData,
|
unwrapPipelineData,
|
||||||
validateConfigPaths,
|
validateConfigPaths,
|
||||||
} from './utils';
|
} from '../utils';
|
||||||
|
import LinkedPipeline from './linked_pipeline.vue';
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
components: {
|
components: {
|
@ -1,9 +1,10 @@
|
|||||||
<script>
|
<script>
|
||||||
import { isEmpty } from 'lodash';
|
import { isEmpty } from 'lodash';
|
||||||
|
import { STAGE_VIEW } from '~/ci/pipeline_details/graph/constants';
|
||||||
|
import { createJobsHash, generateJobNeedsDict } from '~/ci/pipeline_details/utils';
|
||||||
|
import { reportToSentry } from '~/ci/utils';
|
||||||
import { DRAW_FAILURE } from '../../constants';
|
import { DRAW_FAILURE } from '../../constants';
|
||||||
import { createJobsHash, generateJobNeedsDict, reportToSentry } from '../../utils';
|
import { generateLinksData } from '../../utils/drawing_utils';
|
||||||
import { STAGE_VIEW } from '../graph/constants';
|
|
||||||
import { generateLinksData } from './drawing_utils';
|
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: 'LinksInner',
|
name: 'LinksInner',
|
@ -1,9 +1,9 @@
|
|||||||
<script>
|
<script>
|
||||||
import { escape, isEmpty } from 'lodash';
|
import { escape, isEmpty } from 'lodash';
|
||||||
|
import ActionComponent from '~/ci/common/private/job_action_component.vue';
|
||||||
import glFeatureFlagMixin from '~/vue_shared/mixins/gl_feature_flags_mixin';
|
import glFeatureFlagMixin from '~/vue_shared/mixins/gl_feature_flags_mixin';
|
||||||
import { reportToSentry } from '../../utils';
|
import { reportToSentry } from '~/ci/utils';
|
||||||
import MainGraphWrapper from '../graph_shared/main_graph_wrapper.vue';
|
import RootGraphLayout from './root_graph_layout.vue';
|
||||||
import ActionComponent from '../jobs_shared/action_component.vue';
|
|
||||||
import JobGroupDropdown from './job_group_dropdown.vue';
|
import JobGroupDropdown from './job_group_dropdown.vue';
|
||||||
import JobItem from './job_item.vue';
|
import JobItem from './job_item.vue';
|
||||||
|
|
||||||
@ -12,7 +12,7 @@ export default {
|
|||||||
ActionComponent,
|
ActionComponent,
|
||||||
JobGroupDropdown,
|
JobGroupDropdown,
|
||||||
JobItem,
|
JobItem,
|
||||||
MainGraphWrapper,
|
RootGraphLayout,
|
||||||
},
|
},
|
||||||
mixins: [glFeatureFlagMixin()],
|
mixins: [glFeatureFlagMixin()],
|
||||||
props: {
|
props: {
|
||||||
@ -135,7 +135,7 @@ export default {
|
|||||||
};
|
};
|
||||||
</script>
|
</script>
|
||||||
<template>
|
<template>
|
||||||
<main-graph-wrapper :class="columnSpacingClass" data-testid="stage-column">
|
<root-graph-layout :class="columnSpacingClass" data-testid="stage-column">
|
||||||
<template #stages>
|
<template #stages>
|
||||||
<div
|
<div
|
||||||
data-testid="stage-column-title"
|
data-testid="stage-column-title"
|
||||||
@ -192,5 +192,5 @@ export default {
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
</main-graph-wrapper>
|
</root-graph-layout>
|
||||||
</template>
|
</template>
|
@ -4,10 +4,10 @@ import getPipelineDetails from 'shared_queries/pipelines/get_pipeline_details.qu
|
|||||||
import getUserCallouts from '~/graphql_shared/queries/get_user_callouts.query.graphql';
|
import getUserCallouts from '~/graphql_shared/queries/get_user_callouts.query.graphql';
|
||||||
import { __, s__ } from '~/locale';
|
import { __, s__ } from '~/locale';
|
||||||
import LocalStorageSync from '~/vue_shared/components/local_storage_sync.vue';
|
import LocalStorageSync from '~/vue_shared/components/local_storage_sync.vue';
|
||||||
import { DEFAULT, DRAW_FAILURE, LOAD_FAILURE } from '../../constants';
|
import { DEFAULT, DRAW_FAILURE, LOAD_FAILURE } from '~/ci/pipeline_details/constants';
|
||||||
import DismissPipelineGraphCallout from '../../graphql/mutations/dismiss_pipeline_notification.graphql';
|
import getPipelineQuery from '~/ci/pipeline_details/header/graphql/queries/get_pipeline_header_data.query.graphql';
|
||||||
import getPipelineQuery from '../../graphql/queries/get_pipeline_header_data.query.graphql';
|
import { reportToSentry, reportMessageToSentry } from '~/ci/utils';
|
||||||
import { reportToSentry, reportMessageToSentry } from '../../utils';
|
import DismissPipelineGraphCallout from './graphql/mutations/dismiss_pipeline_notification.graphql';
|
||||||
import {
|
import {
|
||||||
ACTION_FAILURE,
|
ACTION_FAILURE,
|
||||||
IID_FAILURE,
|
IID_FAILURE,
|
||||||
@ -16,8 +16,8 @@ import {
|
|||||||
STAGE_VIEW,
|
STAGE_VIEW,
|
||||||
VIEW_TYPE_KEY,
|
VIEW_TYPE_KEY,
|
||||||
} from './constants';
|
} from './constants';
|
||||||
import PipelineGraph from './graph_component.vue';
|
import PipelineGraph from './components/graph_component.vue';
|
||||||
import GraphViewSelector from './graph_view_selector.vue';
|
import GraphViewSelector from './components/graph_view_selector.vue';
|
||||||
import {
|
import {
|
||||||
calculatePipelineLayersInfo,
|
calculatePipelineLayersInfo,
|
||||||
getQueryHeaders,
|
getQueryHeaders,
|
@ -8,7 +8,7 @@ import {
|
|||||||
} from '~/performance/constants';
|
} from '~/performance/constants';
|
||||||
|
|
||||||
import { performanceMarkAndMeasure } from '~/performance/utils';
|
import { performanceMarkAndMeasure } from '~/performance/utils';
|
||||||
import { reportPerformance } from '../graph_shared/api';
|
import { reportPerformance } from './api_utils';
|
||||||
|
|
||||||
export const beginPerfMeasure = () => {
|
export const beginPerfMeasure = () => {
|
||||||
performanceMarkAndMeasure({ mark: PIPELINES_DETAIL_LINKS_MARK_CALCULATE_START });
|
performanceMarkAndMeasure({ mark: PIPELINES_DETAIL_LINKS_MARK_CALCULATE_START });
|
@ -1,8 +1,9 @@
|
|||||||
import { isEmpty } from 'lodash';
|
import { isEmpty } from 'lodash';
|
||||||
import { getIdFromGraphQLId, etagQueryHeaders } from '~/graphql_shared/utils';
|
import { getIdFromGraphQLId, etagQueryHeaders } from '~/graphql_shared/utils';
|
||||||
import { reportToSentry } from '../../utils';
|
import { reportToSentry } from '~/ci/utils';
|
||||||
import { listByLayers } from '../parsing_utils';
|
|
||||||
import { unwrapStagesWithNeedsAndLookup } from '../unwrapping_utils';
|
import { listByLayers } from '~/ci/pipeline_details/utils/parsing_utils';
|
||||||
|
import { unwrapStagesWithNeedsAndLookup } from '~/ci/pipeline_details/utils/unwrapping_utils';
|
||||||
import { beginPerfMeasure, finishPerfMeasureAndSend } from './perf_utils';
|
import { beginPerfMeasure, finishPerfMeasureAndSend } from './perf_utils';
|
||||||
|
|
||||||
export { toggleQueryPollingByVisibility } from '~/graphql_shared/utils';
|
export { toggleQueryPollingByVisibility } from '~/graphql_shared/utils';
|
@ -30,8 +30,8 @@ import {
|
|||||||
import cancelPipelineMutation from '../graphql/mutations/cancel_pipeline.mutation.graphql';
|
import cancelPipelineMutation from '../graphql/mutations/cancel_pipeline.mutation.graphql';
|
||||||
import deletePipelineMutation from '../graphql/mutations/delete_pipeline.mutation.graphql';
|
import deletePipelineMutation from '../graphql/mutations/delete_pipeline.mutation.graphql';
|
||||||
import retryPipelineMutation from '../graphql/mutations/retry_pipeline.mutation.graphql';
|
import retryPipelineMutation from '../graphql/mutations/retry_pipeline.mutation.graphql';
|
||||||
import getPipelineQuery from '../graphql/queries/get_pipeline_header_data.query.graphql';
|
import { getQueryHeaders } from '../graph/utils';
|
||||||
import { getQueryHeaders } from './graph/utils';
|
import getPipelineQuery from './graphql/queries/get_pipeline_header_data.query.graphql';
|
||||||
|
|
||||||
const DELETE_MODAL_ID = 'pipeline-delete-modal';
|
const DELETE_MODAL_ID = 'pipeline-delete-modal';
|
||||||
const POLL_INTERVAL = 10000;
|
const POLL_INTERVAL = 10000;
|
@ -6,7 +6,7 @@ import { createAlert } from '~/alert';
|
|||||||
import Tracking from '~/tracking';
|
import Tracking from '~/tracking';
|
||||||
import { redirectTo } from '~/lib/utils/url_utility'; // eslint-disable-line import/no-deprecated
|
import { redirectTo } from '~/lib/utils/url_utility'; // eslint-disable-line import/no-deprecated
|
||||||
import CiBadgeLink from '~/vue_shared/components/ci_badge_link.vue';
|
import CiBadgeLink from '~/vue_shared/components/ci_badge_link.vue';
|
||||||
import RetryFailedJobMutation from '../../graphql/mutations/retry_failed_job.mutation.graphql';
|
import RetryFailedJobMutation from '../graphql/mutations/retry_failed_job.mutation.graphql';
|
||||||
import { DEFAULT_FIELDS, TRACKING_CATEGORIES } from '../../constants';
|
import { DEFAULT_FIELDS, TRACKING_CATEGORIES } from '../../constants';
|
||||||
|
|
||||||
export default {
|
export default {
|
@ -2,8 +2,8 @@
|
|||||||
import { GlLoadingIcon } from '@gitlab/ui';
|
import { GlLoadingIcon } from '@gitlab/ui';
|
||||||
import { s__ } from '~/locale';
|
import { s__ } from '~/locale';
|
||||||
import { createAlert } from '~/alert';
|
import { createAlert } from '~/alert';
|
||||||
import GetFailedJobsQuery from '../../graphql/queries/get_failed_jobs.query.graphql';
|
import GetFailedJobsQuery from './graphql/queries/get_failed_jobs.query.graphql';
|
||||||
import FailedJobsTable from './failed_jobs_table.vue';
|
import FailedJobsTable from './components/failed_jobs_table.vue';
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
components: {
|
components: {
|
@ -6,7 +6,7 @@ import { __ } from '~/locale';
|
|||||||
import eventHub from '~/jobs/components/table/event_hub';
|
import eventHub from '~/jobs/components/table/event_hub';
|
||||||
import JobsTable from '~/jobs/components/table/jobs_table.vue';
|
import JobsTable from '~/jobs/components/table/jobs_table.vue';
|
||||||
import { JOBS_TAB_FIELDS } from '~/jobs/components/table/constants';
|
import { JOBS_TAB_FIELDS } from '~/jobs/components/table/constants';
|
||||||
import getPipelineJobs from '../../graphql/queries/get_pipeline_jobs.query.graphql';
|
import getPipelineJobs from './graphql/queries/get_pipeline_jobs.query.graphql';
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
fields: JOBS_TAB_FIELDS,
|
fields: JOBS_TAB_FIELDS,
|
@ -1,14 +0,0 @@
|
|||||||
export default {
|
|
||||||
props: {
|
|
||||||
hasUpstream: {
|
|
||||||
type: Boolean,
|
|
||||||
required: false,
|
|
||||||
default: false,
|
|
||||||
},
|
|
||||||
},
|
|
||||||
methods: {
|
|
||||||
buildConnnectorClass(index) {
|
|
||||||
return index === 0 && (!this.isFirstColumn || this.hasUpstream) ? 'left-connector' : '';
|
|
||||||
},
|
|
||||||
},
|
|
||||||
};
|
|
@ -1,7 +1,7 @@
|
|||||||
import Vue from 'vue';
|
import Vue from 'vue';
|
||||||
import VueApollo from 'vue-apollo';
|
import VueApollo from 'vue-apollo';
|
||||||
import { parseBoolean } from '~/lib/utils/common_utils';
|
import { parseBoolean } from '~/lib/utils/common_utils';
|
||||||
import PipelineDetailsHeader from './components/pipeline_details_header.vue';
|
import PipelineDetailsHeader from './header/pipeline_details_header.vue';
|
||||||
|
|
||||||
Vue.use(VueApollo);
|
Vue.use(VueApollo);
|
||||||
|
|
||||||
|
@ -4,10 +4,11 @@ import VueRouter from 'vue-router';
|
|||||||
import Vuex from 'vuex';
|
import Vuex from 'vuex';
|
||||||
import VueApollo from 'vue-apollo';
|
import VueApollo from 'vue-apollo';
|
||||||
import { GlToast } from '@gitlab/ui';
|
import { GlToast } from '@gitlab/ui';
|
||||||
import PipelineTabs from 'ee_else_ce/ci/pipeline_details/components/pipeline_tabs.vue';
|
import PipelineTabs from 'ee_else_ce/ci/pipeline_details/tabs/pipeline_tabs.vue';
|
||||||
|
import { reportToSentry } from '~/ci/utils';
|
||||||
import { parseBoolean } from '~/lib/utils/common_utils';
|
import { parseBoolean } from '~/lib/utils/common_utils';
|
||||||
import createTestReportsStore from './stores/test_reports';
|
import createTestReportsStore from './stores/test_reports';
|
||||||
import { getPipelineDefaultTab, reportToSentry } from './utils';
|
import { getPipelineDefaultTab } from './utils';
|
||||||
|
|
||||||
Vue.use(GlToast);
|
Vue.use(GlToast);
|
||||||
Vue.use(VueApollo);
|
Vue.use(VueApollo);
|
||||||
|
@ -10,7 +10,7 @@ import {
|
|||||||
import { doesHashExistInUrl } from '~/lib/utils/url_utility';
|
import { doesHashExistInUrl } from '~/lib/utils/url_utility';
|
||||||
import { __ } from '~/locale';
|
import { __ } from '~/locale';
|
||||||
import Translate from '~/vue_shared/translate';
|
import Translate from '~/vue_shared/translate';
|
||||||
import Pipelines from './components/pipelines_list/pipelines.vue';
|
import Pipelines from './pipelines_list/pipelines.vue';
|
||||||
import PipelinesStore from './stores/pipelines_store';
|
import PipelinesStore from './stores/pipelines_store';
|
||||||
|
|
||||||
Vue.use(Translate);
|
Vue.use(Translate);
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
<script>
|
<script>
|
||||||
import { GlLink, GlPopover, GlSprintf, GlTooltipDirective, GlBadge } from '@gitlab/ui';
|
import { GlLink, GlPopover, GlSprintf, GlTooltipDirective, GlBadge } from '@gitlab/ui';
|
||||||
import { helpPagePath } from '~/helpers/help_page_helper';
|
import { helpPagePath } from '~/helpers/help_page_helper';
|
||||||
import { SCHEDULE_ORIGIN } from '../../constants';
|
import { SCHEDULE_ORIGIN } from '~/ci/pipeline_details/constants';
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
components: {
|
components: {
|
@ -1,8 +1,8 @@
|
|||||||
<script>
|
<script>
|
||||||
import { GlButton, GlTooltipDirective, GlModalDirective } from '@gitlab/ui';
|
import { GlButton, GlTooltipDirective, GlModalDirective } from '@gitlab/ui';
|
||||||
import Tracking from '~/tracking';
|
import Tracking from '~/tracking';
|
||||||
import eventHub from '../../event_hub';
|
|
||||||
import { BUTTON_TOOLTIP_RETRY, BUTTON_TOOLTIP_CANCEL, TRACKING_CATEGORIES } from '../../constants';
|
import { BUTTON_TOOLTIP_RETRY, BUTTON_TOOLTIP_CANCEL, TRACKING_CATEGORIES } from '../../constants';
|
||||||
|
import eventHub from '../../event_hub';
|
||||||
import PipelineMultiActions from './pipeline_multi_actions.vue';
|
import PipelineMultiActions from './pipeline_multi_actions.vue';
|
||||||
import PipelinesManualActions from './pipelines_manual_actions.vue';
|
import PipelinesManualActions from './pipelines_manual_actions.vue';
|
||||||
|
|
@ -5,11 +5,11 @@ import { s__ } from '~/locale';
|
|||||||
import Tracking from '~/tracking';
|
import Tracking from '~/tracking';
|
||||||
import { OPERATORS_IS } from '~/vue_shared/components/filtered_search_bar/constants';
|
import { OPERATORS_IS } from '~/vue_shared/components/filtered_search_bar/constants';
|
||||||
import { TRACKING_CATEGORIES } from '../../constants';
|
import { TRACKING_CATEGORIES } from '../../constants';
|
||||||
import PipelineBranchNameToken from './tokens/pipeline_branch_name_token.vue';
|
import PipelineBranchNameToken from '../tokens/pipeline_branch_name_token.vue';
|
||||||
import PipelineSourceToken from './tokens/pipeline_source_token.vue';
|
import PipelineSourceToken from '../tokens/pipeline_source_token.vue';
|
||||||
import PipelineStatusToken from './tokens/pipeline_status_token.vue';
|
import PipelineStatusToken from '../tokens/pipeline_status_token.vue';
|
||||||
import PipelineTagNameToken from './tokens/pipeline_tag_name_token.vue';
|
import PipelineTagNameToken from '../tokens/pipeline_tag_name_token.vue';
|
||||||
import PipelineTriggerAuthorToken from './tokens/pipeline_trigger_author_token.vue';
|
import PipelineTriggerAuthorToken from '../tokens/pipeline_trigger_author_token.vue';
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
userType: 'username',
|
userType: 'username',
|
@ -8,7 +8,7 @@ import Tracking from '~/tracking';
|
|||||||
import GlCountdown from '~/vue_shared/components/gl_countdown.vue';
|
import GlCountdown from '~/vue_shared/components/gl_countdown.vue';
|
||||||
import eventHub from '../../event_hub';
|
import eventHub from '../../event_hub';
|
||||||
import { TRACKING_CATEGORIES } from '../../constants';
|
import { TRACKING_CATEGORIES } from '../../constants';
|
||||||
import getPipelineActionsQuery from '../../graphql/queries/get_pipeline_actions.query.graphql';
|
import getPipelineActionsQuery from '../graphql/queries/get_pipeline_actions.query.graphql';
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: 'PipelinesManualActions',
|
name: 'PipelinesManualActions',
|
@ -4,9 +4,9 @@ import { cleanLeadingSeparator } from '~/lib/utils/url_utility';
|
|||||||
import { s__, __ } from '~/locale';
|
import { s__, __ } from '~/locale';
|
||||||
import Tracking from '~/tracking';
|
import Tracking from '~/tracking';
|
||||||
import glFeatureFlagMixin from '~/vue_shared/mixins/gl_feature_flags_mixin';
|
import glFeatureFlagMixin from '~/vue_shared/mixins/gl_feature_flags_mixin';
|
||||||
import { keepLatestDownstreamPipelines } from '~/ci/pipeline_details/components/parsing_utils';
|
import { keepLatestDownstreamPipelines } from '~/ci/pipeline_details/utils/parsing_utils';
|
||||||
import LegacyPipelineMiniGraph from '~/ci/pipeline_details/components/pipeline_mini_graph/legacy_pipeline_mini_graph.vue';
|
import LegacyPipelineMiniGraph from '~/ci/pipeline_mini_graph/legacy_pipeline_mini_graph.vue';
|
||||||
import PipelineFailedJobsWidget from '~/ci/pipeline_details/components/pipelines_list/failure_widget/pipeline_failed_jobs_widget.vue';
|
import PipelineFailedJobsWidget from '~/ci/pipeline_details/pipelines_list/failure_widget/pipeline_failed_jobs_widget.vue';
|
||||||
import eventHub from '../../event_hub';
|
import eventHub from '../../event_hub';
|
||||||
import { TRACKING_CATEGORIES } from '../../constants';
|
import { TRACKING_CATEGORIES } from '../../constants';
|
||||||
import PipelineOperations from './pipeline_operations.vue';
|
import PipelineOperations from './pipeline_operations.vue';
|
@ -2,8 +2,8 @@
|
|||||||
import { GlEmptyState } from '@gitlab/ui';
|
import { GlEmptyState } from '@gitlab/ui';
|
||||||
import { s__ } from '~/locale';
|
import { s__ } from '~/locale';
|
||||||
import GitlabExperiment from '~/experimentation/components/gitlab_experiment.vue';
|
import GitlabExperiment from '~/experimentation/components/gitlab_experiment.vue';
|
||||||
import PipelinesCiTemplates from './empty_state/pipelines_ci_templates.vue';
|
import PipelinesCiTemplates from './pipelines_ci_templates.vue';
|
||||||
import IosTemplates from './empty_state/ios_templates.vue';
|
import IosTemplates from './ios_templates.vue';
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
i18n: {
|
i18n: {
|
@ -5,8 +5,8 @@ import { __, s__, sprintf } from '~/locale';
|
|||||||
import { getIdFromGraphQLId } from '~/graphql_shared/utils';
|
import { getIdFromGraphQLId } from '~/graphql_shared/utils';
|
||||||
import CiIcon from '~/vue_shared/components/ci_icon.vue';
|
import CiIcon from '~/vue_shared/components/ci_icon.vue';
|
||||||
import SafeHtml from '~/vue_shared/directives/safe_html';
|
import SafeHtml from '~/vue_shared/directives/safe_html';
|
||||||
import { BRIDGE_KIND } from '~/ci/pipeline_details/components/graph/constants';
|
import { BRIDGE_KIND } from '~/ci/pipeline_details/graph/constants';
|
||||||
import RetryMrFailedJobMutation from '../../../graphql/mutations/retry_mr_failed_job.mutation.graphql';
|
import RetryMrFailedJobMutation from '~/ci/merge_requests/graphql/mutations/retry_mr_failed_job.mutation.graphql';
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
components: {
|
components: {
|
@ -2,9 +2,9 @@
|
|||||||
import { GlLoadingIcon } from '@gitlab/ui';
|
import { GlLoadingIcon } from '@gitlab/ui';
|
||||||
import { createAlert } from '~/alert';
|
import { createAlert } from '~/alert';
|
||||||
import { __, s__, sprintf } from '~/locale';
|
import { __, s__, sprintf } from '~/locale';
|
||||||
import { getQueryHeaders } from '~/ci/pipeline_details/components/graph/utils';
|
import { getQueryHeaders } from '~/ci/pipeline_details/graph/utils';
|
||||||
import { graphqlEtagPipelinePath } from '~/ci/pipeline_details/utils';
|
import { graphqlEtagPipelinePath } from '~/ci/pipeline_details/utils';
|
||||||
import getPipelineFailedJobs from '../../../graphql/queries/get_pipeline_failed_jobs.query.graphql';
|
import getPipelineFailedJobs from '~/ci/pipeline_details/pipelines_list/graphql/queries/get_pipeline_failed_jobs.query.graphql';
|
||||||
import { sortJobsByStatus } from './utils';
|
import { sortJobsByStatus } from './utils';
|
||||||
import FailedJobDetails from './failed_job_details.vue';
|
import FailedJobDetails from './failed_job_details.vue';
|
||||||
|
|
@ -17,19 +17,19 @@ import {
|
|||||||
FILTER_TAG_IDENTIFIER,
|
FILTER_TAG_IDENTIFIER,
|
||||||
PipelineKeyOptions,
|
PipelineKeyOptions,
|
||||||
TRACKING_CATEGORIES,
|
TRACKING_CATEGORIES,
|
||||||
} from '../../constants';
|
} from '../constants';
|
||||||
import PipelinesMixin from '../../mixins/pipelines_mixin';
|
import PipelinesMixin from '../mixins/pipelines_mixin';
|
||||||
import PipelinesService from '../../services/pipelines_service';
|
import PipelinesService from '../services/pipelines_service';
|
||||||
import { validateParams } from '../../utils';
|
import { validateParams } from '../utils';
|
||||||
import EmptyState from './empty_state.vue';
|
import NoCiEmptyState from './empty_state/no_ci_empty_state.vue';
|
||||||
import NavigationControls from './nav_controls.vue';
|
import NavigationControls from './components/nav_controls.vue';
|
||||||
import PipelinesFilteredSearch from './pipelines_filtered_search.vue';
|
import PipelinesFilteredSearch from './components/pipelines_filtered_search.vue';
|
||||||
import PipelinesTableComponent from './pipelines_table.vue';
|
import PipelinesTableComponent from './components/pipelines_table.vue';
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
PipelineKeyOptions,
|
PipelineKeyOptions,
|
||||||
components: {
|
components: {
|
||||||
EmptyState,
|
NoCiEmptyState,
|
||||||
GlCollapsibleListbox,
|
GlCollapsibleListbox,
|
||||||
GlEmptyState,
|
GlEmptyState,
|
||||||
GlIcon,
|
GlIcon,
|
||||||
@ -409,7 +409,7 @@ export default {
|
|||||||
class="prepend-top-20"
|
class="prepend-top-20"
|
||||||
/>
|
/>
|
||||||
|
|
||||||
<empty-state
|
<no-ci-empty-state
|
||||||
v-else-if="stateToRender === $options.stateMap.emptyState"
|
v-else-if="stateToRender === $options.stateMap.emptyState"
|
||||||
:empty-state-svg-path="emptyStateSvgPath"
|
:empty-state-svg-path="emptyStateSvgPath"
|
||||||
:can-set-ci="canCreatePipeline"
|
:can-set-ci="canCreatePipeline"
|
@ -3,7 +3,7 @@ import { GlFilteredSearchToken, GlFilteredSearchSuggestion, GlLoadingIcon } from
|
|||||||
import { debounce } from 'lodash';
|
import { debounce } from 'lodash';
|
||||||
import Api from '~/api';
|
import Api from '~/api';
|
||||||
import { createAlert } from '~/alert';
|
import { createAlert } from '~/alert';
|
||||||
import { FETCH_BRANCH_ERROR_MESSAGE, FILTER_PIPELINES_SEARCH_DELAY } from '../../../constants';
|
import { FETCH_BRANCH_ERROR_MESSAGE, FILTER_PIPELINES_SEARCH_DELAY } from '../../constants';
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
components: {
|
components: {
|
@ -1,6 +1,6 @@
|
|||||||
<script>
|
<script>
|
||||||
import { GlFilteredSearchToken, GlFilteredSearchSuggestion } from '@gitlab/ui';
|
import { GlFilteredSearchToken, GlFilteredSearchSuggestion } from '@gitlab/ui';
|
||||||
import { PIPELINE_SOURCES } from 'ee_else_ce/ci/pipeline_details/components/pipelines_list/tokens/constants';
|
import { PIPELINE_SOURCES } from 'ee_else_ce/ci/pipeline_details/pipelines_list/tokens/constants';
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
PIPELINE_SOURCES,
|
PIPELINE_SOURCES,
|
@ -3,7 +3,7 @@ import { GlFilteredSearchToken, GlFilteredSearchSuggestion, GlLoadingIcon } from
|
|||||||
import { debounce } from 'lodash';
|
import { debounce } from 'lodash';
|
||||||
import Api from '~/api';
|
import Api from '~/api';
|
||||||
import { createAlert } from '~/alert';
|
import { createAlert } from '~/alert';
|
||||||
import { FETCH_TAG_ERROR_MESSAGE, FILTER_PIPELINES_SEARCH_DELAY } from '../../../constants';
|
import { FETCH_TAG_ERROR_MESSAGE, FILTER_PIPELINES_SEARCH_DELAY } from '../../constants';
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
components: {
|
components: {
|
@ -13,7 +13,7 @@ import {
|
|||||||
ANY_TRIGGER_AUTHOR,
|
ANY_TRIGGER_AUTHOR,
|
||||||
FETCH_AUTHOR_ERROR_MESSAGE,
|
FETCH_AUTHOR_ERROR_MESSAGE,
|
||||||
FILTER_PIPELINES_SEARCH_DELAY,
|
FILTER_PIPELINES_SEARCH_DELAY,
|
||||||
} from '../../../constants';
|
} from '../../constants';
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
anyTriggerAuthor: ANY_TRIGGER_AUTHOR,
|
anyTriggerAuthor: ANY_TRIGGER_AUTHOR,
|
@ -1,8 +1,8 @@
|
|||||||
import PipelineGraphWrapper from './components/graph/graph_component_wrapper.vue';
|
import PipelineGraphWrapper from './graph/graph_component_wrapper.vue';
|
||||||
import Dag from './components/dag/dag.vue';
|
import Dag from './dag/dag.vue';
|
||||||
import FailedJobsApp from './components/jobs/failed_jobs_app.vue';
|
import FailedJobsApp from './jobs/failed_jobs_app.vue';
|
||||||
import JobsApp from './components/jobs/jobs_app.vue';
|
import JobsApp from './jobs/jobs_app.vue';
|
||||||
import TestReports from './components/test_reports/test_reports.vue';
|
import TestReports from './test_reports/test_reports.vue';
|
||||||
import {
|
import {
|
||||||
pipelineTabName,
|
pipelineTabName,
|
||||||
needsTabName,
|
needsTabName,
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
<script>
|
<script>
|
||||||
import { GlButton, GlProgressBar } from '@gitlab/ui';
|
import { GlButton, GlProgressBar } from '@gitlab/ui';
|
||||||
import { __ } from '~/locale';
|
import { __ } from '~/locale';
|
||||||
import { formattedTime } from '../../stores/test_reports/utils';
|
import { formattedTime } from '../stores/test_reports/utils';
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: 'TestSummary',
|
name: 'TestSummary',
|
@ -1,4 +1,3 @@
|
|||||||
import * as Sentry from '@sentry/browser';
|
|
||||||
import { pickBy } from 'lodash';
|
import { pickBy } from 'lodash';
|
||||||
import { parseUrlPathname } from '~/lib/utils/url_utility';
|
import { parseUrlPathname } from '~/lib/utils/url_utility';
|
||||||
import {
|
import {
|
||||||
@ -6,7 +5,7 @@ import {
|
|||||||
SUPPORTED_FILTER_PARAMETERS,
|
SUPPORTED_FILTER_PARAMETERS,
|
||||||
validPipelineTabNames,
|
validPipelineTabNames,
|
||||||
pipelineTabName,
|
pipelineTabName,
|
||||||
} from './constants';
|
} from '../constants';
|
||||||
/*
|
/*
|
||||||
The following functions are the main engine in transforming the data as
|
The following functions are the main engine in transforming the data as
|
||||||
received from the endpoint into the format the d3 graph expects.
|
received from the endpoint into the format the d3 graph expects.
|
||||||
@ -128,22 +127,6 @@ export const generateJobNeedsDict = (jobs = {}) => {
|
|||||||
}, {});
|
}, {});
|
||||||
};
|
};
|
||||||
|
|
||||||
export const reportToSentry = (component, failureType) => {
|
|
||||||
Sentry.withScope((scope) => {
|
|
||||||
scope.setTag('component', component);
|
|
||||||
Sentry.captureException(failureType);
|
|
||||||
});
|
|
||||||
};
|
|
||||||
|
|
||||||
export const reportMessageToSentry = (component, message, context) => {
|
|
||||||
Sentry.withScope((scope) => {
|
|
||||||
// eslint-disable-next-line @gitlab/require-i18n-strings
|
|
||||||
scope.setContext('Vue data', context);
|
|
||||||
scope.setTag('component', component);
|
|
||||||
Sentry.captureMessage(message);
|
|
||||||
});
|
|
||||||
};
|
|
||||||
|
|
||||||
export const getPipelineDefaultTab = (url) => {
|
export const getPipelineDefaultTab = (url) => {
|
||||||
const strippedUrl = parseUrlPathname(url);
|
const strippedUrl = parseUrlPathname(url);
|
||||||
const regexp = /\w*$/;
|
const regexp = /\w*$/;
|
@ -1,7 +1,7 @@
|
|||||||
import { memoize } from 'lodash';
|
import { memoize } from 'lodash';
|
||||||
import { createNodeDict } from '../utils';
|
|
||||||
import { EXPLICIT_NEEDS_PROPERTY, NEEDS_PROPERTY } from '../constants';
|
import { EXPLICIT_NEEDS_PROPERTY, NEEDS_PROPERTY } from '../constants';
|
||||||
import { createSankey } from './dag/drawing_utils';
|
import { createSankey } from '../dag/drawing_utils';
|
||||||
|
import { createNodeDict } from './index';
|
||||||
|
|
||||||
/*
|
/*
|
||||||
A peformant alternative to lodash's isEqual. Because findIndex always finds
|
A peformant alternative to lodash's isEqual. Because findIndex always finds
|
@ -1,4 +1,4 @@
|
|||||||
import { reportToSentry } from '../utils';
|
import { reportToSentry } from '~/ci/utils';
|
||||||
import { EXPLICIT_NEEDS_PROPERTY, NEEDS_PROPERTY } from '../constants';
|
import { EXPLICIT_NEEDS_PROPERTY, NEEDS_PROPERTY } from '../constants';
|
||||||
|
|
||||||
const unwrapGroups = (stages) => {
|
const unwrapGroups = (stages) => {
|
@ -1,8 +1,8 @@
|
|||||||
<script>
|
<script>
|
||||||
import { GlAlert } from '@gitlab/ui';
|
import { GlAlert } from '@gitlab/ui';
|
||||||
import { __ } from '~/locale';
|
import { __ } from '~/locale';
|
||||||
import { DRAW_FAILURE, DEFAULT } from '../../constants';
|
import { DRAW_FAILURE, DEFAULT } from '~/ci/pipeline_details/constants';
|
||||||
import LinksLayer from '../graph_shared/links_layer.vue';
|
import LinksLayer from '~/ci/common/private/job_links_layer.vue';
|
||||||
import JobPill from './job_pill.vue';
|
import JobPill from './job_pill.vue';
|
||||||
import StageName from './stage_name.vue';
|
import StageName from './stage_name.vue';
|
||||||
|
|
@ -1,7 +1,7 @@
|
|||||||
<script>
|
<script>
|
||||||
import { __ } from '~/locale';
|
import { __ } from '~/locale';
|
||||||
import { keepLatestDownstreamPipelines } from '~/ci/pipeline_details/components/parsing_utils';
|
import { keepLatestDownstreamPipelines } from '~/ci/pipeline_details/utils/parsing_utils';
|
||||||
import LegacyPipelineMiniGraph from '~/ci/pipeline_details/components/pipeline_mini_graph/legacy_pipeline_mini_graph.vue';
|
import LegacyPipelineMiniGraph from '~/ci/pipeline_mini_graph/legacy_pipeline_mini_graph.vue';
|
||||||
import getLinkedPipelinesQuery from '~/ci/pipeline_details/graphql/queries/get_linked_pipelines.query.graphql';
|
import getLinkedPipelinesQuery from '~/ci/pipeline_details/graphql/queries/get_linked_pipelines.query.graphql';
|
||||||
import { PIPELINE_FAILURE } from '../../constants';
|
import { PIPELINE_FAILURE } from '../../constants';
|
||||||
|
|
||||||
|
@ -5,13 +5,10 @@ import { truncateSha } from '~/lib/utils/text_utility';
|
|||||||
import { s__ } from '~/locale';
|
import { s__ } from '~/locale';
|
||||||
import getPipelineQuery from '~/ci/pipeline_editor/graphql/queries/pipeline.query.graphql';
|
import getPipelineQuery from '~/ci/pipeline_editor/graphql/queries/pipeline.query.graphql';
|
||||||
import getPipelineEtag from '~/ci/pipeline_editor/graphql/queries/client/pipeline_etag.query.graphql';
|
import getPipelineEtag from '~/ci/pipeline_editor/graphql/queries/client/pipeline_etag.query.graphql';
|
||||||
import {
|
import { getQueryHeaders, toggleQueryPollingByVisibility } from '~/ci/pipeline_details/graph/utils';
|
||||||
getQueryHeaders,
|
|
||||||
toggleQueryPollingByVisibility,
|
|
||||||
} from '~/ci/pipeline_details/components/graph/utils';
|
|
||||||
import glFeatureFlagsMixin from '~/vue_shared/mixins/gl_feature_flags_mixin';
|
import glFeatureFlagsMixin from '~/vue_shared/mixins/gl_feature_flags_mixin';
|
||||||
import CiIcon from '~/vue_shared/components/ci_icon.vue';
|
import CiIcon from '~/vue_shared/components/ci_icon.vue';
|
||||||
import PipelineMiniGraph from '~/ci/pipeline_details/components/pipeline_mini_graph/pipeline_mini_graph.vue';
|
import PipelineMiniGraph from '~/ci/pipeline_mini_graph/pipeline_mini_graph.vue';
|
||||||
import PipelineEditorMiniGraph from './pipeline_editor_mini_graph.vue';
|
import PipelineEditorMiniGraph from './pipeline_editor_mini_graph.vue';
|
||||||
|
|
||||||
const POLL_INTERVAL = 10000;
|
const POLL_INTERVAL = 10000;
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
import { GlAlert, GlLoadingIcon, GlTabs } from '@gitlab/ui';
|
import { GlAlert, GlLoadingIcon, GlTabs } from '@gitlab/ui';
|
||||||
import CiEditorHeader from 'ee_else_ce/ci/pipeline_editor/components/editor/ci_editor_header.vue';
|
import CiEditorHeader from 'ee_else_ce/ci/pipeline_editor/components/editor/ci_editor_header.vue';
|
||||||
import { s__, __ } from '~/locale';
|
import { s__, __ } from '~/locale';
|
||||||
import PipelineGraph from '~/ci/pipeline_details/components/pipeline_graph/pipeline_graph.vue';
|
import PipelineGraph from '~/ci/pipeline_editor/components/graph/pipeline_graph.vue';
|
||||||
import { getParameterValues, setUrlParams, updateHistory } from '~/lib/utils/url_utility';
|
import { getParameterValues, setUrlParams, updateHistory } from '~/lib/utils/url_utility';
|
||||||
import {
|
import {
|
||||||
CREATE_TAB,
|
CREATE_TAB,
|
||||||
|
@ -4,7 +4,7 @@ import { fetchPolicies } from '~/lib/graphql';
|
|||||||
import { mergeUrlParams, queryToObject, redirectTo } from '~/lib/utils/url_utility'; // eslint-disable-line import/no-deprecated
|
import { mergeUrlParams, queryToObject, redirectTo } from '~/lib/utils/url_utility'; // eslint-disable-line import/no-deprecated
|
||||||
import { __, s__ } from '~/locale';
|
import { __, s__ } from '~/locale';
|
||||||
|
|
||||||
import { unwrapStagesWithNeeds } from '~/ci/pipeline_details/components/unwrapping_utils';
|
import { unwrapStagesWithNeeds } from '~/ci/pipeline_details/utils/unwrapping_utils';
|
||||||
|
|
||||||
import ConfirmUnsavedChangesDialog from './components/ui/confirm_unsaved_changes_dialog.vue';
|
import ConfirmUnsavedChangesDialog from './components/ui/confirm_unsaved_changes_dialog.vue';
|
||||||
import PipelineEditorEmptyState from './components/ui/pipeline_editor_empty_state.vue';
|
import PipelineEditorEmptyState from './components/ui/pipeline_editor_empty_state.vue';
|
||||||
|
@ -1,11 +1,11 @@
|
|||||||
<script>
|
<script>
|
||||||
import { GlTooltipDirective, GlLink } from '@gitlab/ui';
|
import { GlTooltipDirective, GlLink } from '@gitlab/ui';
|
||||||
|
import ActionComponent from '~/ci/common/private/job_action_component.vue';
|
||||||
|
import JobNameComponent from '~/ci/common/private/job_name_component.vue';
|
||||||
|
import { ICONS } from '~/ci/pipeline_details/constants';
|
||||||
import delayedJobMixin from '~/jobs/mixins/delayed_job_mixin';
|
import delayedJobMixin from '~/jobs/mixins/delayed_job_mixin';
|
||||||
import { s__, sprintf } from '~/locale';
|
import { s__, sprintf } from '~/locale';
|
||||||
import { reportToSentry } from '../../utils';
|
import { reportToSentry } from '../utils';
|
||||||
import ActionComponent from '../jobs_shared/action_component.vue';
|
|
||||||
import JobNameComponent from '../jobs_shared/job_name_component.vue';
|
|
||||||
import { ICONS } from '../../constants';
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Renders the badge for the pipeline graph and the job's dropdown.
|
* Renders the badge for the pipeline graph and the job's dropdown.
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user