Press n or j to go to the next uncovered block, b, p or k for the previous block.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 | 1x 9x 9x 9x 9x 18x 4x 4x 4x 4x 4x 1x 3x 3x 1x 4x | <script> import { GlLoadingIcon } from '@gitlab/ui'; import { createAlert } from '~/alert'; import { visitUrl } from '~/lib/utils/url_utility'; import glFeatureFlagsMixin from '~/vue_shared/mixins/gl_feature_flags_mixin'; import getEnvironment from '../graphql/queries/environment.query.graphql'; import updateEnvironment from '../graphql/mutations/update_environment.mutation.graphql'; import EnvironmentForm from './environment_form.vue'; export default { components: { GlLoadingIcon, EnvironmentForm, }, mixins: [glFeatureFlagsMixin()], inject: ['projectEnvironmentsPath', 'projectPath', 'environmentName'], apollo: { environment: { query: getEnvironment, variables() { return { environmentName: this.environmentName, projectFullPath: this.projectPath, }; }, update(data) { const result = data?.project?.environment || {}; this.formEnvironment = { ...result, clusterAgentId: result?.clusterAgent?.id }; }, }, }, data() { return { loading: false, formEnvironment: null, }; }, computed: { isQueryLoading() { return this.$apollo.queries.environment.loading; }, }, methods: { onChange(environment) { this.formEnvironment = environment; }, async onSubmit() { this.loading = true; try { const { data } = await this.$apollo.mutate({ mutation: updateEnvironment, variables: { input: { id: this.formEnvironment.id, externalUrl: this.formEnvironment.externalUrl, clusterAgentId: this.formEnvironment.clusterAgentId, kubernetesNamespace: this.formEnvironment.kubernetesNamespace, fluxResourcePath: this.formEnvironment.fluxResourcePath, }, }, }); const { errors } = data.environmentUpdate; if (errors.length > 0) { throw new Error(errors[0]?.message ?? errors[0]); } const { path } = data.environmentUpdate.environment; if (path) { visitUrl(path); } } catch (error) { const { message } = error; createAlert({ message }); } finally { this.loading = false; } }, }, }; </script> <template> <gl-loading-icon v-if="isQueryLoading" class="gl-mt-5" /> <environment-form v-else-if="formEnvironment" :cancel-path="projectEnvironmentsPath" :environment="formEnvironment" :title="__('Edit environment')" :loading="loading" @change="onChange" @submit="onSubmit" /> </template> |