base
prefect.workers.base
Classes
BaseJobConfiguration
Methods:
is_using_a_runner
json_template
Returns a dict with job configuration as keys and the corresponding templates as values
Defaults to using the job configuration parameter name as the template variable name.
e.g.
prepare_for_flow_run
Prepare the job configuration for a flow run.
This method is called by the worker before starting a flow run. It should be used to set any configuration values that are dependent on the flow run.
Args:
flow_run
: The flow run to be executed.deployment
: The deployment that the flow run is associated with.flow
: The flow that the flow run is associated with.work_pool
: The work pool that the flow run is running in.worker_name
: The name of the worker that is submitting the flow run.
BaseVariables
Methods:
model_json_schema
TODO: stop overriding this method - use GenerateSchema in ConfigDict instead?
BaseWorkerResult
BaseWorker
Methods:
client
work_pool
limiter
get_documentation_url
get_logo_url
get_description
get_default_base_job_template
get_worker_class_from_type
Returns the worker class for a given worker type. If the worker type is not recognized, returns None.
get_all_available_worker_types
Returns all worker types available in the local registry.
get_name_slug
get_flow_run_logger
is_worker_still_polling
This method is invoked by a webserver healthcheck handler and returns a boolean indicating if the worker has recorded a scheduled flow run poll within a variable amount of time.
The query_interval_seconds
is the same value that is used by
the loop services - we will evaluate if the _last_polled_time
was within that interval x 30 (so 10s -> 5m)
The instance property self._last_polled_time
is currently set/updated in get_and_submit_flow_runs()
get_status
Retrieves the status of the current worker including its name, current worker pool, the work pool queues it is polling, and its local settings.