Configurable PVC SPEC via env var
parent
7880d8ea91
commit
33356263db
|
|
@ -2371,6 +2371,7 @@ const async_wait_until_1 = __importDefault(__webpack_require__(41299));
|
|||
const core = __importStar(__webpack_require__(42186));
|
||||
const k8s = __importStar(__webpack_require__(89679));
|
||||
const cloud_runner_logger_1 = __importDefault(__webpack_require__(22855));
|
||||
const yaml_1 = __importDefault(__webpack_require__(13552));
|
||||
class KubernetesStorage {
|
||||
static createPersistentVolumeClaim(buildParameters, pvcName, kubeClient, namespace) {
|
||||
return __awaiter(this, void 0, void 0, function* () {
|
||||
|
|
@ -2419,7 +2420,7 @@ class KubernetesStorage {
|
|||
}
|
||||
catch (error) {
|
||||
core.error('Failed to watch PVC');
|
||||
core.error(JSON.stringify(error, undefined, 4));
|
||||
core.error(error.toString());
|
||||
core.error(`PVC Body: ${JSON.stringify((yield kubeClient.readNamespacedPersistentVolumeClaim(name, namespace)).body, undefined, 4)}`);
|
||||
throw error;
|
||||
}
|
||||
|
|
@ -2435,13 +2436,15 @@ class KubernetesStorage {
|
|||
};
|
||||
pvc.spec = {
|
||||
accessModes: ['ReadWriteOnce'],
|
||||
storageClassName: process.env.K8s_STORAGE_CLASS || 'standard',
|
||||
resources: {
|
||||
requests: {
|
||||
storage: buildParameters.kubeVolumeSize,
|
||||
},
|
||||
},
|
||||
};
|
||||
if (process.env.K8S_PVC_SPEC) {
|
||||
pvc.spec = yaml_1.default.parse(process.env.K8S_PVC_SPEC);
|
||||
}
|
||||
const result = yield kubeClient.createNamespacedPersistentVolumeClaim(namespace, pvc);
|
||||
return result;
|
||||
});
|
||||
|
|
|
|||
File diff suppressed because one or more lines are too long
|
|
@ -3,6 +3,7 @@ import * as core from '@actions/core';
|
|||
import * as k8s from '@kubernetes/client-node';
|
||||
import BuildParameters from '../../build-parameters';
|
||||
import CloudRunnerLogger from '../services/cloud-runner-logger';
|
||||
import YAML from 'yaml';
|
||||
|
||||
class KubernetesStorage {
|
||||
public static async createPersistentVolumeClaim(
|
||||
|
|
@ -54,9 +55,9 @@ class KubernetesStorage {
|
|||
intervalBetweenAttempts: 15000,
|
||||
},
|
||||
);
|
||||
} catch (error) {
|
||||
} catch (error: any) {
|
||||
core.error('Failed to watch PVC');
|
||||
core.error(JSON.stringify(error, undefined, 4));
|
||||
core.error(error.toString());
|
||||
core.error(
|
||||
`PVC Body: ${JSON.stringify(
|
||||
(await kubeClient.readNamespacedPersistentVolumeClaim(name, namespace)).body,
|
||||
|
|
@ -82,13 +83,15 @@ class KubernetesStorage {
|
|||
};
|
||||
pvc.spec = {
|
||||
accessModes: ['ReadWriteOnce'],
|
||||
storageClassName: process.env.K8s_STORAGE_CLASS || 'standard',
|
||||
resources: {
|
||||
requests: {
|
||||
storage: buildParameters.kubeVolumeSize,
|
||||
},
|
||||
},
|
||||
};
|
||||
if (process.env.K8S_PVC_SPEC) {
|
||||
pvc.spec = YAML.parse(process.env.K8S_PVC_SPEC);
|
||||
}
|
||||
const result = await kubeClient.createNamespacedPersistentVolumeClaim(namespace, pvc);
|
||||
return result;
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue