Charmed-Kubernetes/kubernetes-control-plane/hooks/relations/prometheus-manual/docs/common.md

1.9 KiB

class JobRequest(BaseRequest)

Base class for requests using the request / response pattern.

Subclasses must set the RESPONSE_CLASS attribute to a subclass of the :class:BaseResponse which defines the fields that the response will use. They must also define additional attributes as :class:Fields.

For example::

class TLSResponse(BaseResponse):
    key = Field('Private key for the cert')
    cert = Field('Public cert info')


class TLSRequest(BaseRequest):
    RESPONSE_CLASS = TLSResponse

    common_name = Field('Common Name (CN) for the cert to be created')
    sans = Field('List of Subject Alternative Names (SANs)')

egress_subnets

Subnets over which network traffic to the requester will flow.

None

Returns a new dict with keys from iterable and values equal to value.

ingress_address

Address to use if a connection to the requester is required.

is_created

Whether this request was created by this side of the relation.

is_received

Whether this request was received by the other side of the relation.

def respond(self, success, reason=None)

Acknowledge this request, and indicate success or failure with an optional explanation.

def to_json(self)

Render the job request to JSON string which can be included directly into Prometheus config.

Keys will be sorted in the rendering to ensure a stable ordering for comparisons to detect changes.

class JobResponse(BaseResponse)

Base class for responses using the request / response pattern.

None

Returns a new dict with keys from iterable and values equal to value.