Search in sources :

Example 6 with V1PersistentVolume

use of io.kubernetes.client.models.V1PersistentVolume in project java by kubernetes-client.

the class CoreV1Api method readPersistentVolumeStatusAsync.

/**
 *  (asynchronously)
 * read status of the specified PersistentVolume
 * @param name name of the PersistentVolume (required)
 * @param pretty If 'true', then the output is pretty printed. (optional)
 * @param callback The callback to be executed when the API call finishes
 * @return The request call
 * @throws ApiException If fail to process the API call, e.g. serializing the request body object
 */
public com.squareup.okhttp.Call readPersistentVolumeStatusAsync(String name, String pretty, final ApiCallback<V1PersistentVolume> callback) throws ApiException {
    ProgressResponseBody.ProgressListener progressListener = null;
    ProgressRequestBody.ProgressRequestListener progressRequestListener = null;
    if (callback != null) {
        progressListener = new ProgressResponseBody.ProgressListener() {

            @Override
            public void update(long bytesRead, long contentLength, boolean done) {
                callback.onDownloadProgress(bytesRead, contentLength, done);
            }
        };
        progressRequestListener = new ProgressRequestBody.ProgressRequestListener() {

            @Override
            public void onRequestProgress(long bytesWritten, long contentLength, boolean done) {
                callback.onUploadProgress(bytesWritten, contentLength, done);
            }
        };
    }
    com.squareup.okhttp.Call call = readPersistentVolumeStatusValidateBeforeCall(name, pretty, progressListener, progressRequestListener);
    Type localVarReturnType = new TypeToken<V1PersistentVolume>() {
    }.getType();
    apiClient.executeAsync(call, localVarReturnType, callback);
    return call;
}
Also used : V1PersistentVolume(io.kubernetes.client.models.V1PersistentVolume) ProgressResponseBody(io.kubernetes.client.ProgressResponseBody) Type(java.lang.reflect.Type) ProgressRequestBody(io.kubernetes.client.ProgressRequestBody)

Example 7 with V1PersistentVolume

use of io.kubernetes.client.models.V1PersistentVolume in project java by kubernetes-client.

the class CoreV1ApiTest method replacePersistentVolumeStatusTest.

/**
 * replace status of the specified PersistentVolume
 *
 * @throws ApiException
 *          if the Api call fails
 */
@Test
public void replacePersistentVolumeStatusTest() throws ApiException {
    String name = null;
    V1PersistentVolume body = null;
    String pretty = null;
    V1PersistentVolume response = api.replacePersistentVolumeStatus(name, body, pretty);
// TODO: test validations
}
Also used : V1PersistentVolume(io.kubernetes.client.models.V1PersistentVolume) Test(org.junit.Test)

Example 8 with V1PersistentVolume

use of io.kubernetes.client.models.V1PersistentVolume in project java by kubernetes-client.

the class CoreV1Api method patchPersistentVolumeStatusWithHttpInfo.

/**
 * partially update status of the specified PersistentVolume
 * @param name name of the PersistentVolume (required)
 * @param body  (required)
 * @param pretty If &#39;true&#39;, then the output is pretty printed. (optional)
 * @return ApiResponse&lt;V1PersistentVolume&gt;
 * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
 */
public ApiResponse<V1PersistentVolume> patchPersistentVolumeStatusWithHttpInfo(String name, Object body, String pretty) throws ApiException {
    com.squareup.okhttp.Call call = patchPersistentVolumeStatusValidateBeforeCall(name, body, pretty, null, null);
    Type localVarReturnType = new TypeToken<V1PersistentVolume>() {
    }.getType();
    return apiClient.execute(call, localVarReturnType);
}
Also used : Type(java.lang.reflect.Type) V1PersistentVolume(io.kubernetes.client.models.V1PersistentVolume)

Example 9 with V1PersistentVolume

use of io.kubernetes.client.models.V1PersistentVolume in project java by kubernetes-client.

the class CoreV1Api method replacePersistentVolumeStatusAsync.

/**
 *  (asynchronously)
 * replace status of the specified PersistentVolume
 * @param name name of the PersistentVolume (required)
 * @param body  (required)
 * @param pretty If &#39;true&#39;, then the output is pretty printed. (optional)
 * @param callback The callback to be executed when the API call finishes
 * @return The request call
 * @throws ApiException If fail to process the API call, e.g. serializing the request body object
 */
public com.squareup.okhttp.Call replacePersistentVolumeStatusAsync(String name, V1PersistentVolume body, String pretty, final ApiCallback<V1PersistentVolume> callback) throws ApiException {
    ProgressResponseBody.ProgressListener progressListener = null;
    ProgressRequestBody.ProgressRequestListener progressRequestListener = null;
    if (callback != null) {
        progressListener = new ProgressResponseBody.ProgressListener() {

            @Override
            public void update(long bytesRead, long contentLength, boolean done) {
                callback.onDownloadProgress(bytesRead, contentLength, done);
            }
        };
        progressRequestListener = new ProgressRequestBody.ProgressRequestListener() {

            @Override
            public void onRequestProgress(long bytesWritten, long contentLength, boolean done) {
                callback.onUploadProgress(bytesWritten, contentLength, done);
            }
        };
    }
    com.squareup.okhttp.Call call = replacePersistentVolumeStatusValidateBeforeCall(name, body, pretty, progressListener, progressRequestListener);
    Type localVarReturnType = new TypeToken<V1PersistentVolume>() {
    }.getType();
    apiClient.executeAsync(call, localVarReturnType, callback);
    return call;
}
Also used : V1PersistentVolume(io.kubernetes.client.models.V1PersistentVolume) ProgressResponseBody(io.kubernetes.client.ProgressResponseBody) Type(java.lang.reflect.Type) ProgressRequestBody(io.kubernetes.client.ProgressRequestBody)

Example 10 with V1PersistentVolume

use of io.kubernetes.client.models.V1PersistentVolume in project weblogic-kubernetes-operator by oracle.

the class HealthCheckHelper method verifyPersistentVolume.

/**
 * Verify a persistent volume exists for a domain and the permissions are correct.
 *
 * @throws ApiException exception for k8s API
 */
private void verifyPersistentVolume(HashMap<String, Domain> domainUIDMap) throws ApiException {
    CallBuilderFactory factory = ContainerResolver.getInstance().getContainer().getSPI(CallBuilderFactory.class);
    V1PersistentVolumeList pvList = factory.create().listPersistentVolume();
    for (Domain domain : domainUIDMap.values()) {
        LOGGER.finest(MessageKeys.WEBLOGIC_DOMAIN, domain.toString());
        String domainUID = domain.getSpec().getDomainUID();
        boolean foundLabel = false;
        for (V1PersistentVolume pv : pvList.getItems()) {
            Map<String, String> labels = pv.getMetadata().getLabels();
            if (labels != null && labels.get(DOMAIN_UID_LABEL) != null && labels.get(DOMAIN_UID_LABEL).equals(domainUID)) {
                foundLabel = true;
                List<String> accessModes = pv.getSpec().getAccessModes();
                boolean foundAccessMode = false;
                for (String accessMode : accessModes) {
                    if (accessMode.equals(READ_WRITE_MANY_ACCESS)) {
                        foundAccessMode = true;
                        break;
                    }
                }
                // Persistent volume does not have ReadWriteMany access mode,
                if (!foundAccessMode) {
                    logHealthCheckEvent(MessageKeys.PV_ACCESS_MODE_FAILED, pv.getMetadata().getName(), domain.getMetadata().getName(), domainUID, READ_WRITE_MANY_ACCESS);
                }
            // TODO: Should we verify the claim, also?
            }
        }
        // Persistent volume for domain UID not found
        if (!foundLabel) {
            logHealthCheckEvent(MessageKeys.PV_NOT_FOUND_FOR_DOMAIN_UID, domain.getMetadata().getName(), domainUID);
        }
    }
}
Also used : V1PersistentVolume(io.kubernetes.client.models.V1PersistentVolume) Domain(oracle.kubernetes.weblogic.domain.v1.Domain) V1PersistentVolumeList(io.kubernetes.client.models.V1PersistentVolumeList)

Aggregations

V1PersistentVolume (io.kubernetes.client.models.V1PersistentVolume)24 Type (java.lang.reflect.Type)14 ProgressRequestBody (io.kubernetes.client.ProgressRequestBody)7 ProgressResponseBody (io.kubernetes.client.ProgressResponseBody)7 Test (org.junit.Test)7 V1PersistentVolumeList (io.kubernetes.client.models.V1PersistentVolumeList)1 Domain (oracle.kubernetes.weblogic.domain.v1.Domain)1