Welcome to Debusine’s documentation!
debusine is a general purpose software factory tailored to the needs of a Debian-based distribution. It brings together:
- an artifact storage system 
- a task scheduler 
- a workflow management system 
Documentation for Administrators:
Documentation for Users:
Documentation for Developers:
- Why this project
- Debusine design- Design goals
- Debusine concepts
- Ontology
- Models- Artifact- Artifact.DoesNotExist
- Artifact.MultipleObjectsReturned
- Artifact.category
- Artifact.created_at
- Artifact.created_by
- Artifact.created_by_id
- Artifact.created_by_work_request
- Artifact.created_by_work_request_id
- Artifact.data
- Artifact.expire_at
- Artifact.expired()
- Artifact.fileinartifact_set
- Artifact.files
- Artifact.get_next_by_created_at()
- Artifact.get_previous_by_created_at()
- Artifact.id
- Artifact.objects
- Artifact.relations
- Artifact.targeted_by
- Artifact.workspace
- Artifact.workspace_id
 
- ArtifactManager
- ArtifactRelation- ArtifactRelation.DoesNotExist
- ArtifactRelation.MultipleObjectsReturned
- ArtifactRelation.Relations
- ArtifactRelation.artifact
- ArtifactRelation.artifact_id
- ArtifactRelation.get_type_display()
- ArtifactRelation.id
- ArtifactRelation.objects
- ArtifactRelation.target
- ArtifactRelation.target_id
- ArtifactRelation.type
 
- File
- FileInArtifact
- FileInStore
- FileStore- FileStore.BackendChoices
- FileStore.DoesNotExist
- FileStore.MultipleObjectsReturned
- FileStore.backend
- FileStore.configuration
- FileStore.default()
- FileStore.default_workspaces
- FileStore.fileinstore_set
- FileStore.files
- FileStore.get_backend_display()
- FileStore.get_backend_object()
- FileStore.id
- FileStore.name
- FileStore.objects
- FileStore.other_workspaces
 
- FileUpload- FileUpload.DoesNotExist
- FileUpload.MultipleObjectsReturned
- FileUpload.absolute_file_path()
- FileUpload.current_size()
- FileUpload.delete()
- FileUpload.file_in_artifact
- FileUpload.file_in_artifact_id
- FileUpload.get_next_by_last_activity_at()
- FileUpload.get_previous_by_last_activity_at()
- FileUpload.id
- FileUpload.last_activity_at
- FileUpload.objects
- FileUpload.path
 
- NotificationChannel- NotificationChannel.DoesNotExist
- NotificationChannel.Methods
- NotificationChannel.MultipleObjectsReturned
- NotificationChannel.clean()
- NotificationChannel.data
- NotificationChannel.data_jsonschemas
- NotificationChannel.get_method_display()
- NotificationChannel.id
- NotificationChannel.method
- NotificationChannel.name
- NotificationChannel.objects
- NotificationChannel.save()
 
- Token
- TokenManager
- User
- WorkRequest- WorkRequest.DoesNotExist
- WorkRequest.MultipleObjectsReturned
- WorkRequest.Results
- WorkRequest.Statuses
- WorkRequest.artifact_set
- WorkRequest.assign_worker()
- WorkRequest.completed_at
- WorkRequest.created_at
- WorkRequest.created_by
- WorkRequest.created_by_id
- WorkRequest.duration
- WorkRequest.get_next_by_created_at()
- WorkRequest.get_previous_by_created_at()
- WorkRequest.get_result_display()
- WorkRequest.get_status_display()
- WorkRequest.id
- WorkRequest.mark_aborted()
- WorkRequest.mark_completed()
- WorkRequest.mark_running()
- WorkRequest.objects
- WorkRequest.result
- WorkRequest.started_at
- WorkRequest.status
- WorkRequest.task_data
- WorkRequest.task_name
- WorkRequest.worker
- WorkRequest.worker_id
- WorkRequest.workspace
- WorkRequest.workspace_id
 
- WorkRequestManager
- Worker- Worker.DoesNotExist
- Worker.MultipleObjectsReturned
- Worker.assigned_work_requests
- Worker.connected()
- Worker.connected_at
- Worker.dynamic_metadata
- Worker.dynamic_metadata_updated_at
- Worker.get_next_by_registered_at()
- Worker.get_previous_by_registered_at()
- Worker.id
- Worker.mark_connected()
- Worker.mark_disconnected()
- Worker.metadata()
- Worker.name
- Worker.objects
- Worker.registered_at
- Worker.set_dynamic_metadata()
- Worker.static_metadata
- Worker.token
- Worker.token_id
 
- WorkerManager
- Workspace
- WorkspaceManager
- default_file_store()
- default_workspace()
 
- Tasks- Task- Task.TASK_DATA_SCHEMA
- Task.TASK_VERSION
- Task.__init__()
- Task.abort()
- Task.aborted
- Task.analyze_worker()
- Task.analyze_worker_all_tasks()
- Task.can_run_on()
- Task.class_from_name()
- Task.configure()
- Task.configure_server_access()
- Task.create_debug_log_file()
- Task.execute()
- Task.execute_logging_exceptions()
- Task.is_valid_task_name()
- Task.logger
- Task.name
- Task.prefix_with_task_name()
- Task.task_names()
 
- TaskConfigError
 
- Worker
 
- Contributing
- Coding practices