Value: string,
Protected?: boolean,
}
+ },
+ TrustAllContent: boolean
+ };
+ Volumes: {
+ [key: string]: {
+ StorageClasses: {
+ [key: string]: boolean;
+ }
}
};
}
return config;
};
+export const getStorageClasses = (config: Config): string[] => {
+ const classes: Set<string> = new Set(['default']);
+ const volumes = config.clusterConfig.Volumes;
+ Object.keys(volumes).forEach(v => {
+ Object.keys(volumes[v].StorageClasses || {}).forEach(sc => {
+ if (volumes[v].StorageClasses[sc]) {
+ classes.add(sc);
+ }
+ });
+ });
+ return Array.from(classes);
+};
+
const getApiRevision = async (apiUrl: string) => {
try {
const dd = (await Axios.get<any>(`${apiUrl}/${DISCOVERY_DOC_PATH}`)).data;
const removeTrailingSlashes = (config: ClusterConfigJSON): ClusterConfigJSON => {
const svcs: any = {};
- Object.keys(config.Services).map((s) => {
+ Object.keys(config.Services).forEach((s) => {
svcs[s] = config.Services[s];
if (svcs[s].hasOwnProperty('ExternalURL')) {
svcs[s].ExternalURL = svcs[s].ExternalURL.replace(/\/+$/, '');
},
Collections: {
ForwardSlashNameSubstitution: "",
+ TrustAllContent: false,
},
+ Volumes: {},
...config
});