mirror of
https://github.com/portainer/portainer.git
synced 2025-07-19 05:19:39 +02:00
* refactor(app): backport technical changes * refactor(app): remove EE only features * feat(app): small review changes to match EE codebase layout on some files Co-authored-by: xAt0mZ <baron_l@epitech.eu>
34 lines
1.2 KiB
JavaScript
34 lines
1.2 KiB
JavaScript
import * as JsonPatch from 'fast-json-patch';
|
|
|
|
import { KubernetesStorageClass } from 'Kubernetes/models/storage-class/models';
|
|
import { KubernetesStorageClassCreatePayload } from 'Kubernetes/models/storage-class/payload';
|
|
|
|
class KubernetesStorageClassConverter {
|
|
/**
|
|
* API StorageClass to front StorageClass
|
|
*/
|
|
static apiToStorageClass(data) {
|
|
const res = new KubernetesStorageClass();
|
|
res.Name = data.metadata.name;
|
|
res.Provisioner = data.provisioner;
|
|
res.AllowVolumeExpansion = data.allowVolumeExpansion;
|
|
return res;
|
|
}
|
|
|
|
static createPayload(storageClass) {
|
|
const res = new KubernetesStorageClassCreatePayload();
|
|
res.metadata.name = storageClass.Name;
|
|
res.provisioner = storageClass.Provisioner;
|
|
res.allowVolumeExpansion = storageClass.AllowVolumeExpansion;
|
|
return res;
|
|
}
|
|
|
|
static patchPayload(oldStorageClass, newStorageClass) {
|
|
const oldPayload = KubernetesStorageClassConverter.createPayload(oldStorageClass);
|
|
const newPayload = KubernetesStorageClassConverter.createPayload(newStorageClass);
|
|
const payload = JsonPatch.compare(oldPayload, newPayload);
|
|
return payload;
|
|
}
|
|
}
|
|
|
|
export default KubernetesStorageClassConverter;
|