Models
Data models for the db application.
- class debusine.db.models.Artifact(*args, **kwargs)[source]
Artifact model.
- exception DoesNotExist
- exception MultipleObjectsReturned
- category
A wrapper for a deferred-loading field. When the value is read from this object the first time, the query is executed.
- created_at
A wrapper for a deferred-loading field. When the value is read from this object the first time, the query is executed.
- created_by
Accessor to the related object on the forward side of a many-to-one or one-to-one (via ForwardOneToOneDescriptor subclass) relation.
In the example:
class Child(Model): parent = ForeignKey(Parent, related_name='children')
Child.parent
is aForwardManyToOneDescriptor
instance.
- created_by_id
- created_by_work_request
Accessor to the related object on the forward side of a many-to-one or one-to-one (via ForwardOneToOneDescriptor subclass) relation.
In the example:
class Child(Model): parent = ForeignKey(Parent, related_name='children')
Child.parent
is aForwardManyToOneDescriptor
instance.
- created_by_work_request_id
- data
A wrapper for a deferred-loading field. When the value is read from this object the first time, the query is executed.
- expire_at
A wrapper for a deferred-loading field. When the value is read from this object the first time, the query is executed.
- expired(at: datetime) bool [source]
Return True if this artifact has expired at a given datetime.
- Parameters:
at – datetime to check if the artifact is expired.
- Return bool:
True if the artifact’s expire_at is on or earlier than the parameter at.
- fileinartifact_set
Accessor to the related objects manager on the reverse side of a many-to-one relation.
In the example:
class Child(Model): parent = ForeignKey(Parent, related_name='children')
Parent.children
is aReverseManyToOneDescriptor
instance.Most of the implementation is delegated to a dynamically defined manager class built by
create_forward_many_to_many_manager()
defined below.
- files
Accessor to the related objects manager on the forward and reverse sides of a many-to-many relation.
In the example:
class Pizza(Model): toppings = ManyToManyField(Topping, related_name='pizzas')
Pizza.toppings
andTopping.pizzas
areManyToManyDescriptor
instances.Most of the implementation is delegated to a dynamically defined manager class built by
create_forward_many_to_many_manager()
defined below.
- get_next_by_created_at(*, field=<django.db.models.fields.DateTimeField: created_at>, is_next=True, **kwargs)
- get_previous_by_created_at(*, field=<django.db.models.fields.DateTimeField: created_at>, is_next=False, **kwargs)
- id
A wrapper for a deferred-loading field. When the value is read from this object the first time, the query is executed.
- objects = <debusine.db.models.ArtifactManager object>
- relations
Accessor to the related objects manager on the reverse side of a many-to-one relation.
In the example:
class Child(Model): parent = ForeignKey(Parent, related_name='children')
Parent.children
is aReverseManyToOneDescriptor
instance.Most of the implementation is delegated to a dynamically defined manager class built by
create_forward_many_to_many_manager()
defined below.
- targeted_by
Accessor to the related objects manager on the reverse side of a many-to-one relation.
In the example:
class Child(Model): parent = ForeignKey(Parent, related_name='children')
Parent.children
is aReverseManyToOneDescriptor
instance.Most of the implementation is delegated to a dynamically defined manager class built by
create_forward_many_to_many_manager()
defined below.
- workspace
Accessor to the related object on the forward side of a many-to-one or one-to-one (via ForwardOneToOneDescriptor subclass) relation.
In the example:
class Child(Model): parent = ForeignKey(Parent, related_name='children')
Child.parent
is aForwardManyToOneDescriptor
instance.
- workspace_id
- class debusine.db.models.ArtifactManager(*args, **kwargs)[source]
Manager for the Artifact model.
- class debusine.db.models.ArtifactRelation(*args, **kwargs)[source]
Model relations between artifacts.
- exception DoesNotExist
- exception MultipleObjectsReturned
- class Relations(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)[source]
- BUILT_USING = 'built-using'
- EXTENDS = 'extends'
- RELATES_TO = 'relates-to'
- artifact
Accessor to the related object on the forward side of a many-to-one or one-to-one (via ForwardOneToOneDescriptor subclass) relation.
In the example:
class Child(Model): parent = ForeignKey(Parent, related_name='children')
Child.parent
is aForwardManyToOneDescriptor
instance.
- artifact_id
- get_type_display(*, field=<django.db.models.fields.CharField: type>)
- id
A wrapper for a deferred-loading field. When the value is read from this object the first time, the query is executed.
- objects = <django.db.models.manager.Manager object>
- target
Accessor to the related object on the forward side of a many-to-one or one-to-one (via ForwardOneToOneDescriptor subclass) relation.
In the example:
class Child(Model): parent = ForeignKey(Parent, related_name='children')
Child.parent
is aForwardManyToOneDescriptor
instance.
- target_id
- type
A wrapper for a deferred-loading field. When the value is read from this object the first time, the query is executed.
- class debusine.db.models.File(*args, **kwargs)[source]
Database model of a file.
Model different attributes of the file.
From outside the class use the property
hash
and do not usesha256
field. This allows, if ever needed, to change the hash algorithm only modifying this class without changing the users of this class.- exception DoesNotExist
- exception MultipleObjectsReturned
- artifact_set
Accessor to the related objects manager on the forward and reverse sides of a many-to-many relation.
In the example:
class Pizza(Model): toppings = ManyToManyField(Topping, related_name='pizzas')
Pizza.toppings
andTopping.pizzas
areManyToManyDescriptor
instances.Most of the implementation is delegated to a dynamically defined manager class built by
create_forward_many_to_many_manager()
defined below.
- current_hash_algorithm = 'sha256'
- fileinartifact_set
Accessor to the related objects manager on the reverse side of a many-to-one relation.
In the example:
class Child(Model): parent = ForeignKey(Parent, related_name='children')
Parent.children
is aReverseManyToOneDescriptor
instance.Most of the implementation is delegated to a dynamically defined manager class built by
create_forward_many_to_many_manager()
defined below.
- fileinstore_set
Accessor to the related objects manager on the reverse side of a many-to-one relation.
In the example:
class Child(Model): parent = ForeignKey(Parent, related_name='children')
Parent.children
is aReverseManyToOneDescriptor
instance.Most of the implementation is delegated to a dynamically defined manager class built by
create_forward_many_to_many_manager()
defined below.
- filestore_set
Accessor to the related objects manager on the forward and reverse sides of a many-to-many relation.
In the example:
class Pizza(Model): toppings = ManyToManyField(Topping, related_name='pizzas')
Pizza.toppings
andTopping.pizzas
areManyToManyDescriptor
instances.Most of the implementation is delegated to a dynamically defined manager class built by
create_forward_many_to_many_manager()
defined below.
- classmethod get_or_create(*, hash_digest: bytes, size: int)[source]
Call File.objects.get_or_create with the correct parameters.
- property hash_digest: bytes
Return the default hash digest of the File.
Use this property instead of the field to allow the algorithm to be changed in the future.
- id
A wrapper for a deferred-loading field. When the value is read from this object the first time, the query is executed.
- objects = <django.db.models.manager.Manager object>
- sha256
A wrapper for a deferred-loading field. When the value is read from this object the first time, the query is executed.
- size
A wrapper for a deferred-loading field. When the value is read from this object the first time, the query is executed.
- class debusine.db.models.FileInArtifact(*args, **kwargs)[source]
File in artifact.
- exception DoesNotExist
- exception MultipleObjectsReturned
- artifact
Accessor to the related object on the forward side of a many-to-one or one-to-one (via ForwardOneToOneDescriptor subclass) relation.
In the example:
class Child(Model): parent = ForeignKey(Parent, related_name='children')
Child.parent
is aForwardManyToOneDescriptor
instance.
- artifact_id
- file
Accessor to the related object on the forward side of a many-to-one or one-to-one (via ForwardOneToOneDescriptor subclass) relation.
In the example:
class Child(Model): parent = ForeignKey(Parent, related_name='children')
Child.parent
is aForwardManyToOneDescriptor
instance.
- file_id
- fileupload
Accessor to the related object on the reverse side of a one-to-one relation.
In the example:
class Restaurant(Model): place = OneToOneField(Place, related_name='restaurant')
Place.restaurant
is aReverseOneToOneDescriptor
instance.
- id
A wrapper for a deferred-loading field. When the value is read from this object the first time, the query is executed.
- objects = <django.db.models.manager.Manager object>
- path
A wrapper for a deferred-loading field. When the value is read from this object the first time, the query is executed.
- class debusine.db.models.FileInStore(*args, **kwargs)[source]
Database model used as “through” from FileStore.
Keeps the relationship between stores, files and attached data.
- exception DoesNotExist
- exception MultipleObjectsReturned
- data
A wrapper for a deferred-loading field. When the value is read from this object the first time, the query is executed.
- file
Accessor to the related object on the forward side of a many-to-one or one-to-one (via ForwardOneToOneDescriptor subclass) relation.
In the example:
class Child(Model): parent = ForeignKey(Parent, related_name='children')
Child.parent
is aForwardManyToOneDescriptor
instance.
- file_id
- id
A wrapper for a deferred-loading field. When the value is read from this object the first time, the query is executed.
- objects = <django.db.models.manager.Manager object>
- store
Accessor to the related object on the forward side of a many-to-one or one-to-one (via ForwardOneToOneDescriptor subclass) relation.
In the example:
class Child(Model): parent = ForeignKey(Parent, related_name='children')
Child.parent
is aForwardManyToOneDescriptor
instance.
- store_id
- class debusine.db.models.FileStore(*args, **kwargs)[source]
Database model of a FileStore.
FileStore has files attached to it.
- BackendChoices
alias of
_FileStoreBackendChoices
- exception DoesNotExist
- exception MultipleObjectsReturned
- backend
A wrapper for a deferred-loading field. When the value is read from this object the first time, the query is executed.
- configuration
A wrapper for a deferred-loading field. When the value is read from this object the first time, the query is executed.
- default_workspaces
Accessor to the related objects manager on the reverse side of a many-to-one relation.
In the example:
class Child(Model): parent = ForeignKey(Parent, related_name='children')
Parent.children
is aReverseManyToOneDescriptor
instance.Most of the implementation is delegated to a dynamically defined manager class built by
create_forward_many_to_many_manager()
defined below.
- fileinstore_set
Accessor to the related objects manager on the reverse side of a many-to-one relation.
In the example:
class Child(Model): parent = ForeignKey(Parent, related_name='children')
Parent.children
is aReverseManyToOneDescriptor
instance.Most of the implementation is delegated to a dynamically defined manager class built by
create_forward_many_to_many_manager()
defined below.
- files
Accessor to the related objects manager on the forward and reverse sides of a many-to-many relation.
In the example:
class Pizza(Model): toppings = ManyToManyField(Topping, related_name='pizzas')
Pizza.toppings
andTopping.pizzas
areManyToManyDescriptor
instances.Most of the implementation is delegated to a dynamically defined manager class built by
create_forward_many_to_many_manager()
defined below.
- get_backend_display(*, field=<django.db.models.fields.CharField: backend>)
- id
A wrapper for a deferred-loading field. When the value is read from this object the first time, the query is executed.
- name
A wrapper for a deferred-loading field. When the value is read from this object the first time, the query is executed.
- objects = <django.db.models.manager.Manager object>
- other_workspaces
Accessor to the related objects manager on the forward and reverse sides of a many-to-many relation.
In the example:
class Pizza(Model): toppings = ManyToManyField(Topping, related_name='pizzas')
Pizza.toppings
andTopping.pizzas
areManyToManyDescriptor
instances.Most of the implementation is delegated to a dynamically defined manager class built by
create_forward_many_to_many_manager()
defined below.
- class debusine.db.models.FileUpload(*args, **kwargs)[source]
File that is being/has been uploaded.
- exception DoesNotExist
- exception MultipleObjectsReturned
- absolute_file_path() Path [source]
Return the absolute file path of the file.
The files are stored in settings.DEBUSINE_UPLOAD_DIRECTORY.
- classmethod current_size(artifact: Artifact, path_in_artifact: str) int [source]
Return current file size.
The current file size might be smaller than the expected size of the file if the file has not finished being uploaded.
Raise ValueError if path_in_artifact does not exist in Artifact or if there’s no FileUpload object for the specific File.
- file_in_artifact
Accessor to the related object on the forward side of a one-to-one relation.
In the example:
class Restaurant(Model): place = OneToOneField(Place, related_name='restaurant')
Restaurant.place
is aForwardOneToOneDescriptor
instance.
- file_in_artifact_id
- get_next_by_last_activity_at(*, field=<django.db.models.fields.DateTimeField: last_activity_at>, is_next=True, **kwargs)
- get_previous_by_last_activity_at(*, field=<django.db.models.fields.DateTimeField: last_activity_at>, is_next=False, **kwargs)
- id
A wrapper for a deferred-loading field. When the value is read from this object the first time, the query is executed.
- last_activity_at
A wrapper for a deferred-loading field. When the value is read from this object the first time, the query is executed.
- objects = <django.db.models.manager.Manager object>
- path
A wrapper for a deferred-loading field. When the value is read from this object the first time, the query is executed.
- class debusine.db.models.NotificationChannel(*args, **kwargs)[source]
Model to store notification configuration.
- exception DoesNotExist
- class Methods(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)[source]
- EMAIL = 'email'
- exception MultipleObjectsReturned
- clean()[source]
Ensure that data is valid for the specific method.
- Raises:
ValidationError – for invalid data.
- data
A wrapper for a deferred-loading field. When the value is read from this object the first time, the query is executed.
- data_jsonschemas = {Methods.EMAIL: {'additionalProperties': False, 'properties': {'cc': {'items': {'format': 'email', 'type': 'string'}, 'type': 'array'}, 'from': {'format': 'email', 'type': 'string'}, 'subject': {'type': 'string'}, 'to': {'items': {'format': 'email', 'type': 'string'}, 'type': 'array'}}, 'required': ['from', 'to'], 'type': 'object'}}
- get_method_display(*, field=<django.db.models.fields.CharField: method>)
- id
A wrapper for a deferred-loading field. When the value is read from this object the first time, the query is executed.
- method
A wrapper for a deferred-loading field. When the value is read from this object the first time, the query is executed.
- name
A wrapper for a deferred-loading field. When the value is read from this object the first time, the query is executed.
- objects = <django.db.models.manager.Manager object>
- class debusine.db.models.Token(*args, **kwargs)[source]
Database model of a token.
A token contains a key and other related data. It’s used as a shared key between debusine server and clients (workers).
This token model is very similar to rest_framework.authtoken.models.Token. The bigger difference is that debusine’s token’s owner is a CharField, the rest_framework owner is a OneToOne foreign key to a user.
- exception DoesNotExist
- exception MultipleObjectsReturned
- comment
A wrapper for a deferred-loading field. When the value is read from this object the first time, the query is executed.
- created_at
A wrapper for a deferred-loading field. When the value is read from this object the first time, the query is executed.
- enabled
A wrapper for a deferred-loading field. When the value is read from this object the first time, the query is executed.
- get_next_by_created_at(*, field=<django.db.models.fields.DateTimeField: created_at>, is_next=True, **kwargs)
- get_previous_by_created_at(*, field=<django.db.models.fields.DateTimeField: created_at>, is_next=False, **kwargs)
- id
A wrapper for a deferred-loading field. When the value is read from this object the first time, the query is executed.
- key
A wrapper for a deferred-loading field. When the value is read from this object the first time, the query is executed.
- objects = <debusine.db.models.TokenManager object>
- user
Accessor to the related object on the forward side of a many-to-one or one-to-one (via ForwardOneToOneDescriptor subclass) relation.
In the example:
class Child(Model): parent = ForeignKey(Parent, related_name='children')
Child.parent
is aForwardManyToOneDescriptor
instance.
- user_id
- worker
Accessor to the related object on the reverse side of a one-to-one relation.
In the example:
class Restaurant(Model): place = OneToOneField(Place, related_name='restaurant')
Place.restaurant
is aReverseOneToOneDescriptor
instance.
- class debusine.db.models.TokenManager(*args, **kwargs)[source]
Manager for Token model.
- class debusine.db.models.User(*args, **kwargs)[source]
Debusine user.
- exception DoesNotExist
- exception MultipleObjectsReturned
- artifact_set
Accessor to the related objects manager on the reverse side of a many-to-one relation.
In the example:
class Child(Model): parent = ForeignKey(Parent, related_name='children')
Parent.children
is aReverseManyToOneDescriptor
instance.Most of the implementation is delegated to a dynamically defined manager class built by
create_forward_many_to_many_manager()
defined below.
- get_next_by_date_joined(*, field=<django.db.models.fields.DateTimeField: date_joined>, is_next=True, **kwargs)
- get_previous_by_date_joined(*, field=<django.db.models.fields.DateTimeField: date_joined>, is_next=False, **kwargs)
- groups
Accessor to the related objects manager on the forward and reverse sides of a many-to-many relation.
In the example:
class Pizza(Model): toppings = ManyToManyField(Topping, related_name='pizzas')
Pizza.toppings
andTopping.pizzas
areManyToManyDescriptor
instances.Most of the implementation is delegated to a dynamically defined manager class built by
create_forward_many_to_many_manager()
defined below.
- id
A wrapper for a deferred-loading field. When the value is read from this object the first time, the query is executed.
- logentry_set
Accessor to the related objects manager on the reverse side of a many-to-one relation.
In the example:
class Child(Model): parent = ForeignKey(Parent, related_name='children')
Parent.children
is aReverseManyToOneDescriptor
instance.Most of the implementation is delegated to a dynamically defined manager class built by
create_forward_many_to_many_manager()
defined below.
- token_set
Accessor to the related objects manager on the reverse side of a many-to-one relation.
In the example:
class Child(Model): parent = ForeignKey(Parent, related_name='children')
Parent.children
is aReverseManyToOneDescriptor
instance.Most of the implementation is delegated to a dynamically defined manager class built by
create_forward_many_to_many_manager()
defined below.
- user_permissions
Accessor to the related objects manager on the forward and reverse sides of a many-to-many relation.
In the example:
class Pizza(Model): toppings = ManyToManyField(Topping, related_name='pizzas')
Pizza.toppings
andTopping.pizzas
areManyToManyDescriptor
instances.Most of the implementation is delegated to a dynamically defined manager class built by
create_forward_many_to_many_manager()
defined below.
- workrequest_set
Accessor to the related objects manager on the reverse side of a many-to-one relation.
In the example:
class Child(Model): parent = ForeignKey(Parent, related_name='children')
Parent.children
is aReverseManyToOneDescriptor
instance.Most of the implementation is delegated to a dynamically defined manager class built by
create_forward_many_to_many_manager()
defined below.
- class debusine.db.models.WorkRequest(*args, **kwargs)[source]
Database model of a request to execute a task.
Time-consuming operations offloaded to Workers and using Artifacts (and associated Files) as input and output.
Submission API needs to check if the request is valid using ontological rules - e.g. whether the specified distribution for a build task exists.
Avoid exposing the status of tasks to the admin interface to avoid runaway changes whilst the scheduler process is running.
The WorkRequest uses the non-Django tasks module to do the checks on whether a task can run on a particular worker.
WorkRequest State Machine
New WorkRequest database entries default to
WorkRequest.Statuses.PENDING
.Once the WorkRequest is assigned to a worker and is running starts running the status is changed to
WorkRequest.Statuses.RUNNING
.If the WorkRequest is aborted, the Scheduled.Task status is
WorkRequest.Statuses.ABORTED
.If the task finish on the Worker the WorkRequest status will be
WorkRequest.Statuses.COMPLETED
and a WorkRequest.Result is then set,WorkRequest.Results.PASSED
orWorkRequest.Results.FAILED
.WorkRequest.started_at
is set when the WorkRequest moves fromWorkRequest.Statuses.PENDING
toWorkRequest.Statuses.RUNNING
.WorkRequest.completed_at
is set when the Task moves fromWorkRequest.Statuses.RUNNING
toWorkRequest.Statuses.COMPLETED
.- exception DoesNotExist
- exception MultipleObjectsReturned
- class Results(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)[source]
- ERROR = 'error'
- FAILURE = 'failure'
- NONE = ''
- SUCCESS = 'success'
- class Statuses(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)[source]
- ABORTED = 'aborted'
- COMPLETED = 'completed'
- PENDING = 'pending'
- RUNNING = 'running'
- artifact_set
Accessor to the related objects manager on the reverse side of a many-to-one relation.
In the example:
class Child(Model): parent = ForeignKey(Parent, related_name='children')
Parent.children
is aReverseManyToOneDescriptor
instance.Most of the implementation is delegated to a dynamically defined manager class built by
create_forward_many_to_many_manager()
defined below.
- completed_at
A wrapper for a deferred-loading field. When the value is read from this object the first time, the query is executed.
- created_at
A wrapper for a deferred-loading field. When the value is read from this object the first time, the query is executed.
- created_by
Accessor to the related object on the forward side of a many-to-one or one-to-one (via ForwardOneToOneDescriptor subclass) relation.
In the example:
class Child(Model): parent = ForeignKey(Parent, related_name='children')
Child.parent
is aForwardManyToOneDescriptor
instance.
- created_by_id
- get_next_by_created_at(*, field=<django.db.models.fields.DateTimeField: created_at>, is_next=True, **kwargs)
- get_previous_by_created_at(*, field=<django.db.models.fields.DateTimeField: created_at>, is_next=False, **kwargs)
- get_result_display(*, field=<django.db.models.fields.CharField: result>)
- get_status_display(*, field=<django.db.models.fields.CharField: status>)
- id
A wrapper for a deferred-loading field. When the value is read from this object the first time, the query is executed.
- mark_aborted() bool [source]
Worker has aborted the task after request from UI.
Task will typically be in CREATED or RUNNING status.
- objects = <debusine.db.models.WorkRequestManager object>
- result
A wrapper for a deferred-loading field. When the value is read from this object the first time, the query is executed.
- started_at
A wrapper for a deferred-loading field. When the value is read from this object the first time, the query is executed.
- status
A wrapper for a deferred-loading field. When the value is read from this object the first time, the query is executed.
- task_data
A wrapper for a deferred-loading field. When the value is read from this object the first time, the query is executed.
- task_name
A wrapper for a deferred-loading field. When the value is read from this object the first time, the query is executed.
- worker
Accessor to the related object on the forward side of a many-to-one or one-to-one (via ForwardOneToOneDescriptor subclass) relation.
In the example:
class Child(Model): parent = ForeignKey(Parent, related_name='children')
Child.parent
is aForwardManyToOneDescriptor
instance.
- worker_id
- workspace
Accessor to the related object on the forward side of a many-to-one or one-to-one (via ForwardOneToOneDescriptor subclass) relation.
In the example:
class Child(Model): parent = ForeignKey(Parent, related_name='children')
Child.parent
is aForwardManyToOneDescriptor
instance.
- workspace_id
- class debusine.db.models.WorkRequestManager(*args, **kwargs)[source]
Manager for WorkRequest model.
- pending(exclude_assigned: bool = False, worker: Optional[Worker] = None) QuerySet [source]
Return a QuerySet of tasks in WorkRequest.Statuses.PENDING status.
QuerySet is ordered by created_at.
Filter out the assigned pending ones if exclude_assigned=True, and include only the WorkRequest for worker.
PENDING is the default status of a task on creation.
- class debusine.db.models.Worker(*args, **kwargs)[source]
Database model of a worker.
- exception DoesNotExist
- exception MultipleObjectsReturned
- assigned_work_requests
Accessor to the related objects manager on the reverse side of a many-to-one relation.
In the example:
class Child(Model): parent = ForeignKey(Parent, related_name='children')
Parent.children
is aReverseManyToOneDescriptor
instance.Most of the implementation is delegated to a dynamically defined manager class built by
create_forward_many_to_many_manager()
defined below.
- connected_at
A wrapper for a deferred-loading field. When the value is read from this object the first time, the query is executed.
- dynamic_metadata
A wrapper for a deferred-loading field. When the value is read from this object the first time, the query is executed.
- dynamic_metadata_updated_at
A wrapper for a deferred-loading field. When the value is read from this object the first time, the query is executed.
- get_next_by_registered_at(*, field=<django.db.models.fields.DateTimeField: registered_at>, is_next=True, **kwargs)
- get_previous_by_registered_at(*, field=<django.db.models.fields.DateTimeField: registered_at>, is_next=False, **kwargs)
- id
A wrapper for a deferred-loading field. When the value is read from this object the first time, the query is executed.
- metadata() dict [source]
Return all metadata with static_metadata and dynamic_metadata merged.
If the same key is in static_metadata and dynamic_metadata: static_metadata takes priority.
- name
A wrapper for a deferred-loading field. When the value is read from this object the first time, the query is executed.
- objects = <debusine.db.models.WorkerManager object>
- registered_at
A wrapper for a deferred-loading field. When the value is read from this object the first time, the query is executed.
- set_dynamic_metadata(metadata: dict) None [source]
Save metadata and update dynamic_metadata_updated_at.
- static_metadata
A wrapper for a deferred-loading field. When the value is read from this object the first time, the query is executed.
- token
Accessor to the related object on the forward side of a one-to-one relation.
In the example:
class Restaurant(Model): place = OneToOneField(Place, related_name='restaurant')
Restaurant.place
is aForwardOneToOneDescriptor
instance.
- token_id
- class debusine.db.models.WorkerManager(*args, **kwargs)[source]
Manager for Worker model.
- classmethod create_with_fqdn(fqdn: str, token: str) Worker [source]
Return a new Worker with its name based on fqdn, with token.
- get_worker_by_token_key_or_none(token_key: str) Optional[Worker] [source]
Return a Worker identified by its associated secret token.
- class debusine.db.models.Workspace(*args, **kwargs)[source]
Workspace model.
- exception DoesNotExist
- exception MultipleObjectsReturned
- artifact_set
Accessor to the related objects manager on the reverse side of a many-to-one relation.
In the example:
class Child(Model): parent = ForeignKey(Parent, related_name='children')
Parent.children
is aReverseManyToOneDescriptor
instance.Most of the implementation is delegated to a dynamically defined manager class built by
create_forward_many_to_many_manager()
defined below.
- default_file_store
Accessor to the related object on the forward side of a many-to-one or one-to-one (via ForwardOneToOneDescriptor subclass) relation.
In the example:
class Child(Model): parent = ForeignKey(Parent, related_name='children')
Child.parent
is aForwardManyToOneDescriptor
instance.
- default_file_store_id
- id
A wrapper for a deferred-loading field. When the value is read from this object the first time, the query is executed.
- is_file_in_workspace(fileobj: File) bool [source]
Return True if fileobj is in any store available for Workspace.
- name
A wrapper for a deferred-loading field. When the value is read from this object the first time, the query is executed.
- objects = <debusine.db.models.WorkspaceManager object>
- other_file_stores
Accessor to the related objects manager on the forward and reverse sides of a many-to-many relation.
In the example:
class Pizza(Model): toppings = ManyToManyField(Topping, related_name='pizzas')
Pizza.toppings
andTopping.pizzas
areManyToManyDescriptor
instances.Most of the implementation is delegated to a dynamically defined manager class built by
create_forward_many_to_many_manager()
defined below.
- public
A wrapper for a deferred-loading field. When the value is read from this object the first time, the query is executed.
- workrequest_set
Accessor to the related objects manager on the reverse side of a many-to-one relation.
In the example:
class Child(Model): parent = ForeignKey(Parent, related_name='children')
Parent.children
is aReverseManyToOneDescriptor
instance.Most of the implementation is delegated to a dynamically defined manager class built by
create_forward_many_to_many_manager()
defined below.