models

package
v1.4.4 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Oct 20, 2025 License: Apache-2.0 Imports: 14 Imported by: 6

Documentation

Index

Constants

View Source
const (
	LifecycleStageNew              = "NEW"
	LifecycleStageBuffered         = "BUFFERED"
	LifecycleStageRunning          = "RUNNING"
	LifecycleStageCompleted        = "COMPLETED"
	LifecycleStageFailed           = "FAILED"
	LifecycleStageSchedulingFailed = "SCHEDULING_FAILED"
	LifecycleStageDeadlineExceeded = "DEADLINE_EXCEEDED"
	LifecycleStageCancelled        = "CANCELLED"

	JobTemplateNameKey          = "science.sneaksanddata.com/algorithm-template-name"
	JobLabelFrameworkVersionKey = "science.sneaksanddata.com/nexus-version"
	NexusComponentLabel         = "science.sneaksanddata.com/nexus-component"
	JobLabelAlgorithmRun        = "algorithm-run"
)

Variables

View Source
var CheckpointedRequestTable = table.New(table.Metadata{
	Name:    tableName,
	Columns: checkpointColumns,
	PartKey: []string{
		"algorithm",
		"id",
	},
	SortKey: []string{},
})
View Source
var CheckpointedRequestTableIndexByHost = table.New(table.Metadata{
	Name:    tableName,
	Columns: checkpointColumns,
	PartKey: []string{
		"received_by_host",
		"lifecycle_stage",
	},
	SortKey: []string{},
})
View Source
var CheckpointedRequestTableIndexByTag = table.New(table.Metadata{
	Name:    tableName,
	Columns: checkpointColumns,
	PartKey: []string{
		"tag",
	},
	SortKey: []string{},
})
View Source
var SubmissionBufferTable = table.New(table.Metadata{
	Name: "nexus.submission_buffer",
	Columns: []string{
		"algorithm",
		"id",
		"template",
	},
	PartKey: []string{
		"algorithm",
		"id",
	},
	SortKey: []string{},
})

Functions

This section is empty.

Types

type AlgorithmRequest

type AlgorithmRequest struct {
	AlgorithmParameters map[string]interface{} `json:"algorithmParameters" binding:"required"`
	CustomConfiguration *v1.NexusAlgorithmSpec `json:"customConfiguration,omitempty"`
	RequestApiVersion   string                 `json:"requestApiVersion,omitempty"`
	Tag                 string                 `json:"tag,omitempty"`
	ParentRequest       *AlgorithmRequestRef   `json:"parentRequest,omitempty"`
	PayloadValidFor     string                 `json:"payloadValidFor,omitempty"`
}

type AlgorithmRequestRef added in v1.0.0

type AlgorithmRequestRef struct {
	RequestId     string `json:"requestId" binding:"required"`
	AlgorithmName string `json:"algorithmName" binding:"required"`
}

func (*AlgorithmRequestRef) DeepCopy added in v1.3.6

type CheckpointedRequest

type CheckpointedRequest struct {
	Algorithm               string                 `json:"algorithm"`
	Id                      string                 `json:"id"`
	LifecycleStage          string                 `json:"lifecycle_stage"`
	PayloadUri              string                 `json:"payload_uri"`
	ResultUri               string                 `json:"result_uri"`
	AlgorithmFailureCause   string                 `json:"algorithm_failure_cause"`
	AlgorithmFailureDetails string                 `json:"algorithm_failure_details"`
	ReceivedByHost          string                 `json:"received_by_host"`
	ReceivedAt              time.Time              `json:"received_at"`
	SentAt                  time.Time              `json:"sent_at"`
	AppliedConfiguration    *v1.NexusAlgorithmSpec `json:"applied_configuration,omitempty"`
	ConfigurationOverrides  *v1.NexusAlgorithmSpec `json:"configuration_overrides,omitempty"`
	ContentHash             string                 `json:"content_hash"`
	LastModified            time.Time              `json:"last_modified"`
	Tag                     string                 `json:"tag,omitempty"`
	ApiVersion              string                 `json:"api_version"`
	JobUid                  string                 `json:"job_uid,omitempty"`
	Parent                  *AlgorithmRequestRef   `json:"parent,omitempty"`
	PayloadValidFor         string                 `json:"payload_valid_for,omitempty"`
}

func FromAlgorithmRequest

func FromAlgorithmRequest(requestId string, algorithmName string, request *AlgorithmRequest, config *v1.NexusAlgorithmSpec) (*CheckpointedRequest, []byte, error)

func (*CheckpointedRequest) DeepCopy

func (*CheckpointedRequest) IsFinished added in v0.4.0

func (c *CheckpointedRequest) IsFinished() bool

func (*CheckpointedRequest) PayloadValidityPeriod added in v1.1.0

func (c *CheckpointedRequest) PayloadValidityPeriod() *time.Duration

func (*CheckpointedRequest) ToCqlModel

func (*CheckpointedRequest) ToV1Job

func (c *CheckpointedRequest) ToV1Job(appVersion string, workgroup *v1.NexusAlgorithmWorkgroupSpec, parent *metav1.OwnerReference) batchv1.Job

type CheckpointedRequestCqlModel

type CheckpointedRequestCqlModel struct {
	Algorithm               string
	Id                      string
	LifecycleStage          string
	PayloadUri              string
	ResultUri               string
	AlgorithmFailureCause   string
	AlgorithmFailureDetails string
	ReceivedByHost          string
	ReceivedAt              time.Time
	SentAt                  time.Time
	AppliedConfiguration    string
	ConfigurationOverrides  string
	ContentHash             string
	LastModified            time.Time
	Tag                     string
	ApiVersion              string
	JobUid                  string
	Parent                  string
	PayloadValidFor         string
}

func (*CheckpointedRequestCqlModel) FromCqlModel added in v0.4.0

type LifecycleStage added in v0.4.0

type LifecycleStage string

type SubmissionBufferEntry

type SubmissionBufferEntry struct {
	Algorithm string `json:"algorithm"`
	Id        string `json:"id"`
	Cluster   string `json:"cluster"`
	Template  string `json:"template,omitempty"`
}

func FromCheckpoint

func FromCheckpoint(checkpoint *CheckpointedRequest, resolvedWorkgroup *v1.NexusAlgorithmWorkgroupSpec, resolvedParent *metav1.OwnerReference) *SubmissionBufferEntry

func (*SubmissionBufferEntry) SubmissionTemplate

func (sbe *SubmissionBufferEntry) SubmissionTemplate() (*batchv1.Job, error)

SubmissionTemplate returns a Kubernetes Job object generated for the algorithm request

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL