1
0
Fork 0
mirror of https://github.com/portainer/portainer.git synced 2025-07-25 08:19:40 +02:00

refactor(docker/containers): migrate env vars to react [EE-5211] (#10345)

This commit is contained in:
Chaim Lev-Ari 2023-09-21 04:11:18 +03:00 committed by GitHub
parent 54112b56f2
commit 16ccf5871e
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
8 changed files with 103 additions and 24 deletions

View file

@ -1,6 +1,5 @@
import _ from 'lodash-es';
import * as envVarsUtils from '@/react/components/form-components/EnvironmentVariablesFieldset/utils';
import { PorImageRegistryModel } from 'Docker/models/porImageRegistry';
import { confirmDestructive } from '@@/modals/confirm';
@ -13,6 +12,7 @@ import { AccessControlFormData } from '@/portainer/components/accessControlForm/
import { ContainerDetailsViewModel } from '@/docker/models/container';
import './createcontainer.css';
import { envVarsTabUtils } from '@/react/docker/containers/CreateView/EnvVarsTab';
angular.module('portainer.docker').controller('CreateContainerController', [
'$q',
@ -89,12 +89,12 @@ angular.module('portainer.docker').controller('CreateContainerController', [
MemoryLimit: 0,
MemoryReservation: 0,
ShmSize: 64,
Env: [],
NodeName: null,
capabilities: [],
Sysctls: [],
RegistryModel: new PorImageRegistryModel(),
commands: commandsTabUtils.getDefaultViewModel(),
envVars: envVarsTabUtils.getDefaultViewModel(),
};
$scope.extraNetworks = {};
@ -114,6 +114,7 @@ angular.module('portainer.docker').controller('CreateContainerController', [
$scope.handlePrivilegedChange = handlePrivilegedChange;
$scope.handleInitChange = handleInitChange;
$scope.handleCommandsChange = handleCommandsChange;
$scope.handleEnvVarsChange = handleEnvVarsChange;
function handleCommandsChange(commands) {
return $scope.$evalAsync(() => {
@ -121,6 +122,12 @@ angular.module('portainer.docker').controller('CreateContainerController', [
});
}
function handleEnvVarsChange(value) {
return $scope.$evalAsync(() => {
$scope.formValues.envVars = value;
});
}
function onAlwaysPullChange(checked) {
return $scope.$evalAsync(() => {
$scope.formValues.alwaysPull = checked;
@ -151,11 +158,6 @@ angular.module('portainer.docker').controller('CreateContainerController', [
});
}
$scope.handleEnvVarChange = handleEnvVarChange;
function handleEnvVarChange(value) {
$scope.formValues.Env = value;
}
$scope.refreshSlider = function () {
$timeout(function () {
$scope.$broadcast('rzSliderForceRender');
@ -281,10 +283,6 @@ angular.module('portainer.docker').controller('CreateContainerController', [
config.HostConfig.PortBindings = bindings;
}
function prepareEnvironmentVariables(config) {
config.Env = envVarsUtils.convertToArrayOfStrings($scope.formValues.Env);
}
function prepareVolumes(config) {
var binds = [];
var volumes = {};
@ -462,11 +460,11 @@ angular.module('portainer.docker').controller('CreateContainerController', [
function prepareConfiguration() {
var config = angular.copy($scope.config);
config = commandsTabUtils.toRequest(config, $scope.formValues.commands);
config = envVarsTabUtils.toRequest(config, $scope.formValues.envVars);
prepareNetworkConfig(config);
prepareImageConfig(config);
preparePortBindings(config);
prepareEnvironmentVariables(config);
prepareVolumes(config);
prepareLabels(config);
prepareDevices(config);
@ -561,10 +559,6 @@ angular.module('portainer.docker').controller('CreateContainerController', [
}
}
function loadFromContainerEnvironmentVariables() {
$scope.formValues.Env = envVarsUtils.parseArrayOfStrings($scope.config.Env);
}
function loadFromContainerLabels() {
for (var l in $scope.config.Labels) {
if ({}.hasOwnProperty.call($scope.config.Labels, l)) {
@ -687,11 +681,12 @@ angular.module('portainer.docker').controller('CreateContainerController', [
$scope.config = ContainerHelper.configFromContainer(fromContainer.Model);
$scope.formValues.commands = commandsTabUtils.toViewModel(d);
$scope.formValues.envVars = envVarsTabUtils.toViewModel(d);
loadFromContainerPortBindings(d);
loadFromContainerVolumes(d);
loadFromContainerNetworkConfig(d);
loadFromContainerEnvironmentVariables(d);
loadFromContainerLabels(d);
loadFromContainerDevices(d);
loadFromContainerDeviceRequests(d);