From 3a066d0cd8a8548a1495854d5b5efeb728421d0a Mon Sep 17 00:00:00 2001 From: Felix Han Date: Tue, 7 Sep 2021 00:28:39 +1200 Subject: [PATCH] added RepositoryMechanismTypes constant --- app/kubernetes/models/deploy.js | 5 +++++ app/kubernetes/views/deploy/deployController.js | 4 ++-- .../kubernetes-redeploy-app-git-form.controller.js | 3 ++- .../stack-redeploy-git-form.controller.js | 8 ++++---- app/portainer/services/api/stackService.js | 9 +++++---- .../views/stacks/create/createStackController.js | 12 ++++++------ 6 files changed, 24 insertions(+), 17 deletions(-) diff --git a/app/kubernetes/models/deploy.js b/app/kubernetes/models/deploy.js index e3405be63..ab60cd046 100644 --- a/app/kubernetes/models/deploy.js +++ b/app/kubernetes/models/deploy.js @@ -15,3 +15,8 @@ export const KubernetesDeployRequestMethods = Object.freeze({ STRING: 'string', URL: 'url', }); + +export const RepositoryMechanismTypes = Object.freeze({ + WEBHOOK: 'Webhook', + INTERVAL: 'Interval', +}); diff --git a/app/kubernetes/views/deploy/deployController.js b/app/kubernetes/views/deploy/deployController.js index 898a482e9..dab47d228 100644 --- a/app/kubernetes/views/deploy/deployController.js +++ b/app/kubernetes/views/deploy/deployController.js @@ -4,7 +4,7 @@ import stripAnsi from 'strip-ansi'; import uuidv4 from 'uuid/v4'; import PortainerError from 'Portainer/error'; -import { KubernetesDeployManifestTypes, KubernetesDeployBuildMethods, KubernetesDeployRequestMethods } from 'Kubernetes/models/deploy'; +import { KubernetesDeployManifestTypes, KubernetesDeployBuildMethods, KubernetesDeployRequestMethods, RepositoryMechanismTypes } from 'Kubernetes/models/deploy'; import { buildOption } from '@/portainer/components/box-selector'; class KubernetesDeployController { /* @ngInject */ @@ -51,7 +51,7 @@ class KubernetesDeployController { AdditionalFiles: [], ComposeFilePathInRepository: 'deployment.yml', RepositoryAutomaticUpdates: true, - RepositoryMechanism: 'Interval', + RepositoryMechanism: RepositoryMechanismTypes.INTERVAL, RepositoryFetchInterval: '5m', RepositoryWebhookURL: this.WebhookHelper.returnStackWebhookUrl(uuidv4()), }; diff --git a/app/portainer/components/forms/kubernetes-redeploy-app-git-form/kubernetes-redeploy-app-git-form.controller.js b/app/portainer/components/forms/kubernetes-redeploy-app-git-form/kubernetes-redeploy-app-git-form.controller.js index 96dab7785..f5acc0e3f 100644 --- a/app/portainer/components/forms/kubernetes-redeploy-app-git-form/kubernetes-redeploy-app-git-form.controller.js +++ b/app/portainer/components/forms/kubernetes-redeploy-app-git-form/kubernetes-redeploy-app-git-form.controller.js @@ -1,4 +1,5 @@ import uuidv4 from 'uuid/v4'; +import { RepositoryMechanismTypes } from 'Kubernetes/models/deploy'; class KubernetesRedeployAppGitFormController { /* @ngInject */ constructor($async, $state, $analytics, StackService, ModalService, Notifications, WebhookHelper) { @@ -24,7 +25,7 @@ class KubernetesRedeployAppGitFormController { // auto upadte AutoUpdate: { RepositoryAutomaticUpdates: false, - RepositoryMechanism: 'Interval', + RepositoryMechanism: RepositoryMechanismTypes.INTERVAL, RepositoryFetchInterval: '5m', RepositoryWebhookURL: '', }, diff --git a/app/portainer/components/forms/stack-redeploy-git-form/stack-redeploy-git-form.controller.js b/app/portainer/components/forms/stack-redeploy-git-form/stack-redeploy-git-form.controller.js index 6641f25f0..dc90e0597 100644 --- a/app/portainer/components/forms/stack-redeploy-git-form/stack-redeploy-git-form.controller.js +++ b/app/portainer/components/forms/stack-redeploy-git-form/stack-redeploy-git-form.controller.js @@ -1,5 +1,5 @@ import uuidv4 from 'uuid/v4'; - +import { RepositoryMechanismTypes } from 'Kubernetes/models/deploy'; class StackRedeployGitFormController { /* @ngInject */ constructor($async, $state, StackService, ModalService, Notifications, WebhookHelper, FormHelper) { @@ -28,7 +28,7 @@ class StackRedeployGitFormController { // auto update AutoUpdate: { RepositoryAutomaticUpdates: false, - RepositoryMechanism: 'Interval', + RepositoryMechanism: RepositoryMechanismTypes.INTERVAL, RepositoryFetchInterval: '5m', RepositoryWebhookURL: '', }, @@ -51,9 +51,9 @@ class StackRedeployGitFormController { function autoSyncLabel(type) { switch (type) { - case 'Interval': + case RepositoryMechanismTypes.INTERVAL: return 'polling'; - case 'Webhook': + case RepositoryMechanismTypes.WEBHOOK: return 'webhook'; } return 'off'; diff --git a/app/portainer/services/api/stackService.js b/app/portainer/services/api/stackService.js index 97c5e0de9..78c343844 100644 --- a/app/portainer/services/api/stackService.js +++ b/app/portainer/services/api/stackService.js @@ -1,4 +1,5 @@ import _ from 'lodash-es'; +import { RepositoryMechanismTypes } from 'Kubernetes/models/deploy'; import { StackViewModel, OrphanedStackViewModel } from '../../models/stack'; angular.module('portainer.app').factory('StackService', [ @@ -279,9 +280,9 @@ angular.module('portainer.app').factory('StackService', [ } else { const autoUpdate = {}; if (gitConfig.AutoUpdate && gitConfig.AutoUpdate.RepositoryAutomaticUpdates) { - if (gitConfig.AutoUpdate.RepositoryMechanism === 'Interval') { + if (gitConfig.AutoUpdate.RepositoryMechanism === RepositoryMechanismTypes.INTERVAL) { autoUpdate.Interval = gitConfig.AutoUpdate.RepositoryFetchInterval; - } else if (gitConfig.AutoUpdate.RepositoryMechanism === 'Webhook') { + } else if (gitConfig.AutoUpdate.RepositoryMechanism === RepositoryMechanismTypes.WEBHOOK) { autoUpdate.Webhook = gitConfig.AutoUpdate.RepositoryWebhookURL.split('/').reverse()[0]; } } @@ -465,9 +466,9 @@ angular.module('portainer.app').factory('StackService', [ const autoUpdate = {}; if (gitConfig.AutoUpdate.RepositoryAutomaticUpdates) { - if (gitConfig.AutoUpdate.RepositoryMechanism === 'Interval') { + if (gitConfig.AutoUpdate.RepositoryMechanism === RepositoryMechanismTypes.INTERVAL) { autoUpdate.Interval = gitConfig.AutoUpdate.RepositoryFetchInterval; - } else if (gitConfig.AutoUpdate.RepositoryMechanism === 'Webhook') { + } else if (gitConfig.AutoUpdate.RepositoryMechanism === RepositoryMechanismTypes.WEBHOOK) { autoUpdate.Webhook = gitConfig.AutoUpdate.RepositoryWebhookURL.split('/').reverse()[0]; } } diff --git a/app/portainer/views/stacks/create/createStackController.js b/app/portainer/views/stacks/create/createStackController.js index 93c5ca05d..9cd220e6e 100644 --- a/app/portainer/views/stacks/create/createStackController.js +++ b/app/portainer/views/stacks/create/createStackController.js @@ -1,6 +1,6 @@ import angular from 'angular'; import uuidv4 from 'uuid/v4'; - +import { RepositoryMechanismTypes } from 'Kubernetes/models/deploy'; import { AccessControlFormData } from '../../../components/accessControlForm/porAccessControlFormModel'; angular @@ -42,7 +42,7 @@ angular ComposeFilePathInRepository: 'docker-compose.yml', AccessControlData: new AccessControlFormData(), RepositoryAutomaticUpdates: true, - RepositoryMechanism: 'Interval', + RepositoryMechanism: RepositoryMechanismTypes.INTERVAL, RepositoryFetchInterval: '5m', RepositoryWebhookURL: WebhookHelper.returnStackWebhookUrl(uuidv4()), }; @@ -111,9 +111,9 @@ angular function autoSyncLabel(type) { switch (type) { - case 'Interval': + case RepositoryMechanismTypes.INTERVAL: return 'polling'; - case 'Webhook': + case RepositoryMechanismTypes.WEBHOOK: return 'webhook'; } return 'off'; @@ -166,9 +166,9 @@ angular function getAutoUpdatesProperty(repositoryOptions) { if ($scope.formValues.RepositoryAutomaticUpdates) { repositoryOptions.AutoUpdate = {}; - if ($scope.formValues.RepositoryMechanism === 'Interval') { + if ($scope.formValues.RepositoryMechanism === RepositoryMechanismTypes.INTERVAL) { repositoryOptions.AutoUpdate.Interval = $scope.formValues.RepositoryFetchInterval; - } else if ($scope.formValues.RepositoryMechanism === 'Webhook') { + } else if ($scope.formValues.RepositoryMechanism === RepositoryMechanismTypes.WEBHOOK) { repositoryOptions.AutoUpdate.Webhook = $scope.formValues.RepositoryWebhookURL.split('/').reverse()[0]; } }