def detect()

in opentelemetry-resourcedetector-gcp/src/opentelemetry/resourcedetector/gcp_resource_detector/_detector.py [0:0]


    def detect(self) -> Resource:
        # pylint: disable=too-many-return-statements
        if not _metadata.is_available():
            return Resource.get_empty()

        if _gke.on_gke():
            return _gke_resource()
        if _faas.on_cloud_functions():
            return _cloud_functions_resource()
        if _faas.on_cloud_run():
            return _cloud_run_resource()
        if _gae.on_app_engine():
            return _gae_resource()
        if _gce.on_gce():
            return _gce_resource()

        return Resource.get_empty()