mirror of https://github.com/portainer/portainer
feat(service-creation): pass volume driver and options when mapping a… (#1360)
* feat(service-creation): pass volume driver and options when mapping an existing volume * refactor(service-creation): remove commented codepull/1363/head
parent
9ceb3a8051
commit
4a291247ac
|
@ -198,10 +198,32 @@ function ($q, $scope, $state, $timeout, Service, ServiceHelper, ConfigService, C
|
||||||
config.TaskTemplate.ContainerSpec.Labels = LabelHelper.fromKeyValueToLabelHash(input.ContainerLabels);
|
config.TaskTemplate.ContainerSpec.Labels = LabelHelper.fromKeyValueToLabelHash(input.ContainerLabels);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function createMountObjectFromVolume(volumeObject, target, readonly) {
|
||||||
|
return {
|
||||||
|
Target: target,
|
||||||
|
Source: volumeObject.Id,
|
||||||
|
Type: 'volume',
|
||||||
|
ReadOnly: readonly,
|
||||||
|
VolumeOptions: {
|
||||||
|
Labels: volumeObject.Labels,
|
||||||
|
DriverConfig: {
|
||||||
|
Name: volumeObject.Driver,
|
||||||
|
Options: volumeObject.Options
|
||||||
|
}
|
||||||
|
}
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
function prepareVolumes(config, input) {
|
function prepareVolumes(config, input) {
|
||||||
input.Volumes.forEach(function (volume) {
|
input.Volumes.forEach(function (volume) {
|
||||||
if (volume.Source && volume.Target) {
|
if (volume.Source && volume.Target) {
|
||||||
|
if (volume.Type !== 'volume') {
|
||||||
config.TaskTemplate.ContainerSpec.Mounts.push(volume);
|
config.TaskTemplate.ContainerSpec.Mounts.push(volume);
|
||||||
|
} else {
|
||||||
|
var volumeObject = volume.Source;
|
||||||
|
var mount = createMountObjectFromVolume(volumeObject, volume.Target, volume.ReadOnly);
|
||||||
|
config.TaskTemplate.ContainerSpec.Mounts.push(mount);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
|
@ -241,9 +241,8 @@
|
||||||
<!-- volume -->
|
<!-- volume -->
|
||||||
<div class="input-group input-group-sm col-sm-6" ng-if="volume.Type === 'volume'">
|
<div class="input-group input-group-sm col-sm-6" ng-if="volume.Type === 'volume'">
|
||||||
<span class="input-group-addon">volume</span>
|
<span class="input-group-addon">volume</span>
|
||||||
<select class="form-control" ng-model="volume.Source">
|
<select class="form-control" ng-model="volume.Source" ng-options="vol.Id|truncate:30 for vol in availableVolumes">
|
||||||
<option selected disabled hidden value="">Select a volume</option>
|
<option selected disabled hidden value="">Select a volume</option>
|
||||||
<option ng-repeat="vol in availableVolumes" ng-value="vol.Id">{{ vol.Id|truncate:30 }}</option>
|
|
||||||
</select>
|
</select>
|
||||||
</div>
|
</div>
|
||||||
<!-- !volume -->
|
<!-- !volume -->
|
||||||
|
|
Loading…
Reference in New Issue