@Override
    public ResourceStatus status(String namespace, Manifest manifest, K8sAuthorisation authConfig) throws Exception {
        /*
         * For each resource kind and name, using resource handler Get resource from
         * cluster Get status of the fetched resource
         */
        ApiClient apiClient = clientProvider.get(authConfig);
        YAMLManifest yamlManifest = (YAMLManifest) manifest;
        try {
            KubernetesResource resource = KubernetesResourceUtil.getKubernetesResource(yamlManifest, namespace);
            String kind = resource.getKind();
            ResourceLifeCycleHandler lifeCycleHandler = ResourceHandlers.getHandlerOf(kind);
            String resourceName = resource.getV1ObjectMeta().getName();

            return lifeCycleHandler.status(lifeCycleHandler.get(apiClient, resourceName, namespace));
        } catch (Exception e) {
            logger.error("Error while preparing client, error {} ", e.toString());
            throw e;
        }
    }
Wait for Pod scheduled, creation and Readiness state
deployer/deployer-services/src/main/java/io/hyscale/deployer/services/deployer/impl/KubernetesDeployer.java