LabObjects

class controller.models.domain.lab.LabObjects(env_config_map, quota, pod, namespace, config_maps, network_policy, pvcs, secrets, service)

Bases: LabStateObjects

All of the Kubernetes objects making up a user’s lab.

Parameters:
  • env_config_map (V1ConfigMap)

  • quota (V1ResourceQuota | None)

  • pod (V1Pod)

  • namespace (V1Namespace)

  • config_maps (list[V1ConfigMap])

  • network_policy (V1NetworkPolicy)

  • pvcs (list[V1PersistentVolumeClaim])

  • secrets (list[V1Secret])

  • service (V1Service)

Attributes Summary

config_maps

Config maps used by the lab pod other than that for the environment.

env_config_map

Config map used to hold the environment of the spawned lab.

namespace

Namespace holding the user's lab.

network_policy

Network policy for the lab.

pod

User's lab pod.

pvcs

Persistent volume claims.

quota

Quota for the user's namespace, if any.

secrets

Secrets for the user's lab.

service

Service for talking to the user's pod.

Attributes Documentation

config_maps: list[V1ConfigMap] = <dataclasses._MISSING_TYPE object>

Config maps used by the lab pod other than that for the environment.

env_config_map: V1ConfigMap = <dataclasses._MISSING_TYPE object>

Config map used to hold the environment of the spawned lab.

namespace: V1Namespace = <dataclasses._MISSING_TYPE object>

Namespace holding the user’s lab.

network_policy: V1NetworkPolicy = <dataclasses._MISSING_TYPE object>

Network policy for the lab.

pod: V1Pod = <dataclasses._MISSING_TYPE object>

User’s lab pod.

pvcs: list[V1PersistentVolumeClaim] = <dataclasses._MISSING_TYPE object>

Persistent volume claims.

quota: V1ResourceQuota | None = <dataclasses._MISSING_TYPE object>

Quota for the user’s namespace, if any.

secrets: list[V1Secret] = <dataclasses._MISSING_TYPE object>

Secrets for the user’s lab.

service: V1Service = <dataclasses._MISSING_TYPE object>

Service for talking to the user’s pod.