Documentation
¶
Index ¶
- Variables
- func WithRegion(ctx context.Context, region string) context.Context
- type AnnotationImportItem
- type AnnotationImportItemDetail
- type AnnotationImportJob
- type AnnotationImportJobSummary
- type AnnotationStore
- type AnnotationStoreSummary
- type AnnotationStoreVersion
- type AnnotationStoreVersionSummary
- type Configuration
- type ConfigurationDetails
- type ConfigurationRunConfigurations
- type ConfigurationSummary
- type ConfigurationVpcConfig
- type CreateAnnotationStoreResponse
- type CreateAnnotationStoreVersionResponse
- type CreateSequenceStoreInput
- type CreateWorkflowInput
- type CreateWorkflowVersionInput
- type DefaultRunSetting
- type Handler
- func (h *Handler) BackendFor(region string) StorageBackend
- func (h *Handler) EnableRegions()
- func (h *Handler) ExtractOperation(c *echo.Context) string
- func (h *Handler) ExtractResource(c *echo.Context) string
- func (h *Handler) GetSupportedOperations() []string
- func (h *Handler) Handler() echo.HandlerFunc
- func (h *Handler) MatchPriority() int
- func (h *Handler) Name() string
- func (h *Handler) RegionBackends() []StorageBackend
- func (h *Handler) RegionHandler(region string) *Handler
- func (h *Handler) Reset()
- func (h *Handler) Restore(ctx context.Context, data []byte) error
- func (h *Handler) RouteMatcher() service.Matcher
- func (h *Handler) Snapshot(ctx context.Context) []byte
- type ImportJobFilter
- type InMemoryBackend
- func (b *InMemoryBackend) AbortMultipartReadSetUpload(sequenceStoreID, uploadID string) error
- func (b *InMemoryBackend) AcceptShare(shareID string) (*Share, error)
- func (b *InMemoryBackend) AccountID() string
- func (b *InMemoryBackend) BatchDeleteReadSet(sequenceStoreID string, ids []string) ([]ReadSetBatchError, error)
- func (b *InMemoryBackend) CancelAnnotationImportJob(jobID string) error
- func (b *InMemoryBackend) CancelRun(id string) error
- func (b *InMemoryBackend) CancelRunBatch(id string) error
- func (b *InMemoryBackend) CancelVariantImportJob(jobID string) error
- func (b *InMemoryBackend) CompleteMultipartReadSetUpload(sequenceStoreID, uploadID string) (*ReadSetMetadata, error)
- func (b *InMemoryBackend) CreateAnnotationStore(name, description, storeFormat, versionName string, ...) (*AnnotationStore, error)
- func (b *InMemoryBackend) CreateAnnotationStoreVersion(name, versionName, description string, versionOptions map[string]any, ...) (*AnnotationStoreVersion, error)
- func (b *InMemoryBackend) CreateConfiguration(name, description string, runConfigurations *ConfigurationRunConfigurations, ...) (*Configuration, error)
- func (b *InMemoryBackend) CreateMultipartReadSetUpload(...) (*MultipartReadSetUpload, error)
- func (b *InMemoryBackend) CreateReferenceStore(name, description string, sseConfig map[string]any, tags map[string]string) (*ReferenceStore, error)
- func (b *InMemoryBackend) CreateRunCache(name, description, cacheS3Location, cacheBehavior, cacheBucketOwnerID string, ...) (*RunCache, error)
- func (b *InMemoryBackend) CreateRunGroup(name string, maxCPUs, maxRuns, maxDuration int, maxGPUs int, ...) (*RunGroup, error)
- func (b *InMemoryBackend) CreateSequenceStore(in CreateSequenceStoreInput) (*SequenceStore, error)
- func (b *InMemoryBackend) CreateShare(resourceARN, principalSubscriber, name string) (*Share, error)
- func (b *InMemoryBackend) CreateVariantStore(name, description string, reference, sseConfig map[string]any, ...) (*VariantStore, error)
- func (b *InMemoryBackend) CreateWorkflow(input CreateWorkflowInput) (*Workflow, error)
- func (b *InMemoryBackend) CreateWorkflowVersion(input CreateWorkflowVersionInput) (*WorkflowVersion, error)
- func (b *InMemoryBackend) DeleteAnnotationStore(name string) (*AnnotationStore, error)
- func (b *InMemoryBackend) DeleteAnnotationStoreVersions(name string, versionNames []string) ([]VersionDeleteError, error)
- func (b *InMemoryBackend) DeleteConfiguration(name string) error
- func (b *InMemoryBackend) DeleteReference(referenceStoreID, id string) error
- func (b *InMemoryBackend) DeleteReferenceStore(id string) error
- func (b *InMemoryBackend) DeleteRun(id string) error
- func (b *InMemoryBackend) DeleteRunBatch(id string) error
- func (b *InMemoryBackend) DeleteRunCache(id string) error
- func (b *InMemoryBackend) DeleteRunGroup(id string) error
- func (b *InMemoryBackend) DeleteRunsInBatch(batchID string) error
- func (b *InMemoryBackend) DeleteS3AccessPolicy(s3AccessPointARN string) error
- func (b *InMemoryBackend) DeleteSequenceStore(id string) error
- func (b *InMemoryBackend) DeleteShare(shareID string) (*Share, error)
- func (b *InMemoryBackend) DeleteVariantStore(name string) (*VariantStore, error)
- func (b *InMemoryBackend) DeleteWorkflow(id string) error
- func (b *InMemoryBackend) DeleteWorkflowVersion(workflowID, versionName string) error
- func (b *InMemoryBackend) GetAnnotationImportJob(jobID string) (*AnnotationImportJob, error)
- func (b *InMemoryBackend) GetAnnotationStore(name string) (*AnnotationStore, error)
- func (b *InMemoryBackend) GetAnnotationStoreVersion(name, versionName string) (*AnnotationStoreVersion, error)
- func (b *InMemoryBackend) GetConfiguration(name string) (*Configuration, error)
- func (b *InMemoryBackend) GetReadSetActivationJob(sequenceStoreID, jobID string) (*ReadSetActivationJob, error)
- func (b *InMemoryBackend) GetReadSetBytes(sequenceStoreID, id string) ([]byte, error)
- func (b *InMemoryBackend) GetReadSetExportJob(sequenceStoreID, jobID string) (*ReadSetExportJob, error)
- func (b *InMemoryBackend) GetReadSetImportJob(sequenceStoreID, jobID string) (*ReadSetImportJob, error)
- func (b *InMemoryBackend) GetReadSetMetadata(sequenceStoreID, id string) (*ReadSetMetadata, error)
- func (b *InMemoryBackend) GetReferenceBytes(referenceStoreID, id string) ([]byte, error)
- func (b *InMemoryBackend) GetReferenceImportJob(referenceStoreID, jobID string) (*ReferenceImportJob, error)
- func (b *InMemoryBackend) GetReferenceMetadata(referenceStoreID, id string) (*ReferenceMetadata, error)
- func (b *InMemoryBackend) GetReferenceStore(id string) (*ReferenceStore, error)
- func (b *InMemoryBackend) GetRun(id string) (*Run, error)
- func (b *InMemoryBackend) GetRunBatch(id string) (*RunBatch, error)
- func (b *InMemoryBackend) GetRunBatchSummary(id string) (RunBatchSummary, error)
- func (b *InMemoryBackend) GetRunCache(id string) (*RunCache, error)
- func (b *InMemoryBackend) GetRunGroup(id string) (*RunGroup, error)
- func (b *InMemoryBackend) GetRunTask(runID, taskID string) (*RunTask, error)
- func (b *InMemoryBackend) GetS3AccessPolicy(s3AccessPointARN string) (*S3AccessPolicy, error)
- func (b *InMemoryBackend) GetSequenceStore(id string) (*SequenceStore, error)
- func (b *InMemoryBackend) GetShare(shareID string) (*Share, error)
- func (b *InMemoryBackend) GetVariantImportJob(jobID string) (*VariantImportJob, error)
- func (b *InMemoryBackend) GetVariantStore(name string) (*VariantStore, error)
- func (b *InMemoryBackend) GetWorkflow(id string) (*Workflow, error)
- func (b *InMemoryBackend) GetWorkflowVersion(workflowID, versionName string) (*WorkflowVersion, error)
- func (b *InMemoryBackend) ListAnnotationImportJobs(filter *ImportJobFilter, ids0 []string, maxResults int, nextToken string) ([]*AnnotationImportJob, string, error)
- func (b *InMemoryBackend) ListAnnotationStoreVersions(name string, filter *StoreStatusFilter, maxResults int, nextToken string) ([]*AnnotationStoreVersion, string, error)
- func (b *InMemoryBackend) ListAnnotationStores(filter *StoreStatusFilter, ids0 []string, maxResults int, nextToken string) ([]*AnnotationStore, string, error)
- func (b *InMemoryBackend) ListConfigurations(maxResults int, nextToken string) ([]*Configuration, string, error)
- func (b *InMemoryBackend) ListMultipartReadSetUploads(sequenceStoreID string, maxResults int, nextToken string) ([]*MultipartReadSetUpload, string, error)
- func (b *InMemoryBackend) ListReadSetActivationJobs(sequenceStoreID string, filter *ReadSetJobFilter, maxResults int, ...) ([]*ReadSetActivationJob, string, error)
- func (b *InMemoryBackend) ListReadSetExportJobs(sequenceStoreID string, filter *ReadSetJobFilter, maxResults int, ...) ([]*ReadSetExportJob, string, error)
- func (b *InMemoryBackend) ListReadSetImportJobs(sequenceStoreID string, filter *ReadSetJobFilter, maxResults int, ...) ([]*ReadSetImportJob, string, error)
- func (b *InMemoryBackend) ListReadSetUploadParts(sequenceStoreID, uploadID, partSource string, window *createdWindow, ...) ([]*ReadSetUploadPart, string, error)
- func (b *InMemoryBackend) ListReadSets(sequenceStoreID string, filter *ReadSetFilter, maxResults int, ...) ([]*ReadSetMetadata, string, error)
- func (b *InMemoryBackend) ListReferenceImportJobs(referenceStoreID string, filter *ReferenceImportJobFilter, maxResults int, ...) ([]*ReferenceImportJob, string, error)
- func (b *InMemoryBackend) ListReferenceStores(filter *ReferenceStoreFilter, maxResults int, nextToken string) ([]*ReferenceStore, string, error)
- func (b *InMemoryBackend) ListReferences(referenceStoreID string, filter *ReferenceFilter, maxResults int, ...) ([]*ReferenceMetadata, string, error)
- func (b *InMemoryBackend) ListRunBatches(filter *RunBatchFilter, maxResults int, nextToken string) ([]*RunBatch, string, error)
- func (b *InMemoryBackend) ListRunCaches(maxResults int, nextToken string) ([]*RunCache, string, error)
- func (b *InMemoryBackend) ListRunGroups(filter *RunGroupFilter, maxResults int, nextToken string) ([]*RunGroup, string, error)
- func (b *InMemoryBackend) ListRunTasks(runID string, filter *RunTaskFilter, maxResults int, nextToken string) ([]*RunTask, string, error)
- func (b *InMemoryBackend) ListRuns(filter *RunFilter, maxResults int, nextToken string) ([]*Run, string, error)
- func (b *InMemoryBackend) ListRunsInBatch(batchID string, filter *RunsInBatchFilter, maxResults int, nextToken string) ([]*Run, string, error)
- func (b *InMemoryBackend) ListSequenceStores(filter *SequenceStoreFilter, maxResults int, nextToken string) ([]*SequenceStore, string, error)
- func (b *InMemoryBackend) ListShares(resourceOwner string, filter *ShareFilter, maxResults int, nextToken string) ([]*Share, string, error)
- func (b *InMemoryBackend) ListTagsForResource(resourceARN string) (map[string]string, error)
- func (b *InMemoryBackend) ListVariantImportJobs(filter *ImportJobFilter, ids0 []string, maxResults int, nextToken string) ([]*VariantImportJob, string, error)
- func (b *InMemoryBackend) ListVariantStores(filter *StoreStatusFilter, ids0 []string, maxResults int, nextToken string) ([]*VariantStore, string, error)
- func (b *InMemoryBackend) ListWorkflowVersions(workflowID string, filter *WorkflowVersionFilter, maxResults int, ...) ([]*WorkflowVersion, string, error)
- func (b *InMemoryBackend) ListWorkflows(filter *WorkflowFilter, maxResults int, nextToken string) ([]*Workflow, string, error)
- func (b *InMemoryBackend) PutS3AccessPolicy(s3AccessPointARN, policy string) error
- func (b *InMemoryBackend) Region() string
- func (b *InMemoryBackend) Reset()
- func (b *InMemoryBackend) Restore(ctx context.Context, data []byte) error
- func (b *InMemoryBackend) Snapshot(ctx context.Context) []byte
- func (b *InMemoryBackend) StartAnnotationImportJob(destinationName, roleARN string, items []AnnotationImportItem, ...) (*AnnotationImportJob, error)
- func (b *InMemoryBackend) StartReadSetActivationJob(sequenceStoreID string, sources []ReadSetActivationJobSource) (*ReadSetActivationJob, error)
- func (b *InMemoryBackend) StartReadSetExportJob(sequenceStoreID, destination string, sources []ReadSetExportJobSource) (*ReadSetExportJob, error)
- func (b *InMemoryBackend) StartReadSetImportJob(sequenceStoreID, roleARN string, sources []ReadSetImportJobSource) (*ReadSetImportJob, error)
- func (b *InMemoryBackend) StartReferenceImportJob(referenceStoreID, roleARN string, sources []ReferenceImportJobSource) (*ReferenceImportJob, error)
- func (b *InMemoryBackend) StartRun(input StartRunInput) (*Run, error)
- func (b *InMemoryBackend) StartRunBatch(batchName string, def DefaultRunSetting, inlineSettings []InlineRunSetting, ...) (*RunBatch, error)
- func (b *InMemoryBackend) StartVariantImportJob(destinationName, roleARN string, items []VariantImportItem, ...) (*VariantImportJob, error)
- func (b *InMemoryBackend) TagResource(resourceARN string, tags map[string]string) error
- func (b *InMemoryBackend) UntagResource(resourceARN string, tagKeys []string) error
- func (b *InMemoryBackend) UpdateAnnotationStore(name string, description *string) (*AnnotationStore, error)
- func (b *InMemoryBackend) UpdateAnnotationStoreVersion(name, versionName string, description *string) (*AnnotationStoreVersion, error)
- func (b *InMemoryBackend) UpdateRunCache(id, name, description, cacheBehavior string) error
- func (b *InMemoryBackend) UpdateRunGroup(id, name string, maxCPUs, maxRuns, maxDuration int, maxGPUs int) (*RunGroup, error)
- func (b *InMemoryBackend) UpdateSequenceStore(id string, in UpdateSequenceStoreInput) (*SequenceStore, error)
- func (b *InMemoryBackend) UpdateVariantStore(name string, description *string) (*VariantStore, error)
- func (b *InMemoryBackend) UpdateWorkflow(id, name, description, storageType, readmeMarkdown string, ...) error
- func (b *InMemoryBackend) UpdateWorkflowVersion(workflowID, versionName, description, storageType, readmeMarkdown string, ...) error
- func (b *InMemoryBackend) UploadReadSetPart(sequenceStoreID, uploadID string, partNumber int, partSource string, ...) (string, error)
- type InlineRunSetting
- type MultipartReadSetUpload
- type Provider
- type ReadSetActivationJob
- type ReadSetActivationJobSource
- type ReadSetActivationJobSummary
- type ReadSetBatchError
- type ReadSetExportJob
- type ReadSetExportJobSource
- type ReadSetFilter
- type ReadSetImportJob
- type ReadSetImportJobSource
- type ReadSetImportJobSummary
- type ReadSetJobFilter
- type ReadSetMetadata
- type ReadSetSummary
- type ReadSetUploadPart
- type ReadSetUploadPartSummary
- type ReferenceFilter
- type ReferenceImportJob
- type ReferenceImportJobFilter
- type ReferenceImportJobSource
- type ReferenceImportJobSummary
- type ReferenceMetadata
- type ReferenceStore
- type ReferenceStoreFilter
- type ReferenceSummary
- type Run
- type RunBatch
- type RunBatchFilter
- type RunBatchSummary
- type RunCache
- type RunCacheSummary
- type RunFilter
- type RunGroup
- type RunGroupFilter
- type RunGroupSummary
- type RunInBatchSummary
- type RunSummary
- type RunTask
- type RunTaskFilter
- type RunTaskSummary
- type RunsInBatchFilter
- type S3AccessPolicy
- type SequenceStore
- type SequenceStoreFilter
- type Share
- type ShareFilter
- type StartRunInput
- type StorageBackend
- type StoreStatusFilter
- type UpdateSequenceStoreInput
- type VariantImportItem
- type VariantImportItemDetail
- type VariantImportJob
- type VariantImportJobSummary
- type VariantStore
- type VariantStoreSummary
- type VersionDeleteError
- type Workflow
- type WorkflowFilter
- type WorkflowParameter
- type WorkflowSummary
- type WorkflowVersion
- type WorkflowVersionFilter
- type WorkflowVersionSummary
Constants ¶
This section is empty.
Variables ¶
var ( // ErrNotFound is returned when a resource does not exist. ErrNotFound = awserr.New(errResourceNotFound, awserr.ErrNotFound) // ErrAlreadyExists is returned when a resource already exists. ErrAlreadyExists = awserr.New(errConflict, awserr.ErrAlreadyExists) // ErrValidation is returned on invalid input. ErrValidation = awserr.New(errValidation, awserr.ErrInvalidParameter) // ErrInvalidState is returned when a resource is not in the state // required for the requested operation (e.g. deleting a RunBatch that // hasn't reached a terminal status). ErrInvalidState = awserr.New(errConflict, awserr.ErrConflict) )
var ErrNilAppContext = errors.New("omics: nil app context")
ErrNilAppContext is returned when Init is called with a nil AppContext.
Functions ¶
Types ¶
type AnnotationImportItem ¶
type AnnotationImportItem struct {
Source string `json:"source"`
}
AnnotationImportItem is a source item for an annotation import job -- real types.AnnotationImportItemSource (types.go:91-99, omics@v1.49.5): Source only. This is StartAnnotationImportJobInput.Items' element shape, not the response shape GetAnnotationImportJobOutput.Items uses (see AnnotationImportItemDetail) -- the two are declared separately below rather than one struct serving both, the same trap the ID/jobId field already forced apart for this job type (c41d36cb6).
type AnnotationImportItemDetail ¶ added in v1.3.1
type AnnotationImportItemDetail struct {
JobStatus string `json:"jobStatus"`
Source string `json:"source"`
}
AnnotationImportItemDetail is the real GetAnnotationImportJobOutput.Items element, types.AnnotationImportItemDetail (types.go:75-89): JobStatus and Source, both required. JobStatus is set once from the job's own Status at Start time (annotationImportItemDetails, annotation_stores.go): this backend completes import jobs synchronously in one step, so every item reaches its final status in that same step and there is no async window in which a stored per-item value could go stale.
gopherstack-7s8r assumed ListAnnotationImportJobs also returns this shape; it does not -- the real List element (AnnotationImportJobItem, types.go:102-146) has no Items field at all. See AnnotationImportJobSummary.
type AnnotationImportJob ¶
type AnnotationImportJob struct {
CreationTime time.Time `json:"creationTime"`
CompletionTime *time.Time `json:"completionTime,omitempty"`
UpdateTime time.Time `json:"updateTime"`
FormatOptions map[string]any `json:"formatOptions,omitempty"`
AnnotationFields map[string]string `json:"annotationFields,omitempty"`
ID string `json:"id"`
DestinationName string `json:"destinationName"`
RoleARN string `json:"roleArn"`
Status string `json:"status"`
StatusMessage string `json:"statusMessage"`
VersionName string `json:"versionName"`
Items []AnnotationImportItemDetail `json:"items"`
RunLeftNormalization bool `json:"runLeftNormalization,omitempty"`
}
AnnotationImportJob is the real GetAnnotationImportJobOutput shape (deserializers.go:5949-6015) and this backend's persisted job record.
ID is tagged "id" -- the real GetAnnotationImportJobOutput/ AnnotationImportJobItem wire key (deserializers.go:5954) -- which is right for Get/List but wrong for StartAnnotationImportJobOutput, whose only field is "jobId" (deserializers.go:17434); the two ops don't share a response shape in the real API, so the start handler builds its own {"jobId": ...} response instead of marshaling this struct. ListAnnotationImportJobs doesn't marshal this struct either -- see AnnotationImportJobSummary.
FormatOptions/RunLeftNormalization/VersionName/StatusMessage/UpdateTime are real required GetAnnotationImportJobOutput members (deserializers.go:5949- 6015) that were previously absent from this struct entirely -- a schema gap, not a dropped key. FormatOptions mirrors the Reference/SseConfig/ StoreOptions convention (passthrough map, real shape is a tagged union of tsvOptions/vcfOptions). StatusMessage is always empty: this backend completes import jobs synchronously with no error state to describe.
type AnnotationImportJobSummary ¶ added in v1.3.1
type AnnotationImportJobSummary struct {
CreationTime time.Time `json:"creationTime"`
CompletionTime *time.Time `json:"completionTime,omitempty"`
UpdateTime time.Time `json:"updateTime"`
AnnotationFields map[string]string `json:"annotationFields,omitempty"`
ID string `json:"id"`
DestinationName string `json:"destinationName"`
RoleARN string `json:"roleArn"`
Status string `json:"status"`
VersionName string `json:"versionName"`
RunLeftNormalization bool `json:"runLeftNormalization,omitempty"`
}
AnnotationImportJobSummary is the real ListAnnotationImportJobsOutput element, types.AnnotationImportJobItem (types.go:102-146). It is deliberately narrower than AnnotationImportJob/GetAnnotationImportJobOutput: no Items, FormatOptions or StatusMessage -- List and Get are not the same response shape in the real API, the same class of gap that already forced StartAnnotationImportJobOutput apart to a standalone {"jobId": ...} body.
type AnnotationStore ¶
type AnnotationStore struct {
CreationTime time.Time `json:"creationTime"`
UpdateTime time.Time `json:"updateTime"`
Reference map[string]any `json:"reference,omitempty"`
SseConfig map[string]any `json:"sseConfig,omitempty"`
StoreOptions map[string]any `json:"storeOptions,omitempty"`
Tags map[string]string `json:"tags"`
StoreArn string `json:"storeArn"`
ID string `json:"id"`
Name string `json:"name"`
Description string `json:"description"`
StoreFormat string `json:"storeFormat"`
Status string `json:"status"`
// StatusMessage is real GetAnnotationStoreOutput's required
// "statusMessage" (deserializers.go, GetAnnotationStore/
// ListAnnotationStores) -- previously absent from this struct entirely,
// the same gap fixed for import jobs in c41d36cb6 but missed here.
// Always empty: this backend transitions store status synchronously
// with no error state to describe.
StatusMessage string `json:"statusMessage"`
// NumVersions is real GetAnnotationStoreOutput's required "numVersions"
// (deserializers.go:6225) -- computed live from annotationVersionsByStore
// at read time (GetAnnotationStore/ListAnnotationStores), never stored,
// since a stored counter would drift as versions are added/deleted.
NumVersions int32 `json:"numVersions"`
// StoreSizeBytes is real GetAnnotationStoreOutput's required
// "storeSizeBytes" (deserializers.go:6289). This backend does not track
// actual stored bytes -- always 0 rather than a fabricated number.
StoreSizeBytes int64 `json:"storeSizeBytes"`
// contains filtered or unexported fields
}
AnnotationStore represents an HealthOmics annotation store.
StoreArn is real GetAnnotationStoreOutput/AnnotationStoreItem wire key "storeArn" (omics@v1.49.5 deserializers.go:6266) -- this struct previously tagged it "arn", a key no real Get/ListAnnotationStores deserializer reads.
type AnnotationStoreSummary ¶ added in v1.3.1
type AnnotationStoreSummary struct {
CreationTime time.Time `json:"creationTime"`
UpdateTime time.Time `json:"updateTime"`
Reference map[string]any `json:"reference,omitempty"`
SseConfig map[string]any `json:"sseConfig,omitempty"`
StoreArn string `json:"storeArn"`
ID string `json:"id"`
Name string `json:"name"`
Description string `json:"description"`
StoreFormat string `json:"storeFormat"`
Status string `json:"status"`
StatusMessage string `json:"statusMessage"`
StoreSizeBytes int64 `json:"storeSizeBytes"`
}
AnnotationStoreSummary is the real ListAnnotationStoresOutput element shape (types.AnnotationStoreItem, omics@v1.49.5 types.go:152-211) -- narrower than GetAnnotationStoreOutput: no numVersions, storeOptions or tags. ListAnnotationStores previously marshaled AnnotationStore directly, leaking all three (gopherstack-dv4s).
type AnnotationStoreVersion ¶
type AnnotationStoreVersion struct {
CreationTime time.Time `json:"creationTime"`
UpdateTime time.Time `json:"updateTime"`
VersionOptions map[string]any `json:"versionOptions,omitempty"`
Tags map[string]string `json:"tags"`
VersionArn string `json:"versionArn"`
ID string `json:"id"`
StoreID string `json:"storeId"`
StoreName string `json:"name"`
VersionName string `json:"versionName"`
Description string `json:"description"`
Status string `json:"status"`
// StatusMessage is real GetAnnotationStoreVersionOutput's required
// "statusMessage" -- previously absent from this struct entirely, the
// same gap fixed for import jobs in c41d36cb6 but missed here. Always
// empty: this backend transitions version status synchronously with no
// error state to describe.
StatusMessage string `json:"statusMessage"`
// VersionSizeBytes is real GetAnnotationStoreVersionOutput's required
// "versionSizeBytes" (deserializers.go:6587). This backend does not
// track actual stored bytes -- always 0 rather than a fabricated number.
VersionSizeBytes int64 `json:"versionSizeBytes"`
}
AnnotationStoreVersion represents a version of an annotation store.
VersionArn is real GetAnnotationStoreVersionOutput/AnnotationStoreVersionItem wire key "versionArn" (omics@v1.49.5 deserializers.go:6564) -- this struct previously tagged it "arn", a key no real deserializer for this shape reads.
ID and StoreName's tag are both gopherstack-r80d (batch 7) fixes: Get/Update/CreateAnnotationStoreVersionOutput each require a distinct "id" (the version's own generated ID, api_op_GetAnnotationStoreVersion.go:15-17, deserializers.go:6501) and "name" (the parent store's name, api_op_GetAnnotationStoreVersion.go:19-21, deserializers.go:6510) that this struct never tracked at all -- StoreName held the right value but the wrong wire key ("storeName", a key no real deserializer for this shape reads), and no field existed for "id" at all. Flagged but deliberately left unfixed by two prior passes (lx5h/kb66, dv4s) as "the opposite class" from what those passes targeted; this is exactly gopherstack-r80d's cut.
type AnnotationStoreVersionSummary ¶ added in v1.3.1
type AnnotationStoreVersionSummary struct {
CreationTime time.Time `json:"creationTime"`
UpdateTime time.Time `json:"updateTime"`
VersionArn string `json:"versionArn"`
ID string `json:"id"`
StoreID string `json:"storeId"`
StoreName string `json:"name"`
VersionName string `json:"versionName"`
Description string `json:"description"`
Status string `json:"status"`
StatusMessage string `json:"statusMessage"`
VersionSizeBytes int64 `json:"versionSizeBytes"`
}
AnnotationStoreVersionSummary is the real ListAnnotationStoreVersionsOutput element shape (types.AnnotationStoreVersionItem, omics@v1.49.5 types.go): narrower than GetAnnotationStoreVersionOutput -- no tags.
ID/StoreName ARE real AnnotationStoreVersionItem members too (required "id"/"name", same as Get -- see AnnotationStoreVersion's doc comment); gopherstack-dv4s's note that this type "has no storeName member" was about AnnotationStoreVersion.StoreName's WRONG tag of the time ("storeName", not a real key on any shape), not about the real "name" member being absent from List -- List genuinely has it too, fixed here (gopherstack-r80d batch 7) alongside the identical Get/Update/Create gap.
type Configuration ¶
type Configuration struct {
CreationTime time.Time `json:"creationTime"`
RunConfigurations *ConfigurationRunConfigurations `json:"runConfigurations,omitempty"`
Tags map[string]string `json:"tags,omitempty"`
Name string `json:"name"`
Description string `json:"description,omitempty"`
ARN string `json:"arn,omitempty"`
UUID string `json:"uuid,omitempty"`
Status string `json:"status,omitempty"`
}
Configuration represents an HealthOmics configuration.
type ConfigurationDetails ¶ added in v1.2.0
type ConfigurationDetails struct {
Arn string `json:"arn,omitempty"`
Name string `json:"name,omitempty"`
UUID string `json:"uuid,omitempty"`
}
ConfigurationDetails describes the configuration used for a workflow run (real AWS ConfigurationDetails: arn/name/uuid of the Configuration used).
type ConfigurationRunConfigurations ¶ added in v1.3.1
type ConfigurationRunConfigurations struct {
VpcConfig *ConfigurationVpcConfig `json:"vpcConfig,omitempty"`
}
ConfigurationRunConfigurations mirrors types.RunConfigurations (request) and types.RunConfigurationsResponse (response) (types.go:1523/1532).
type ConfigurationSummary ¶
type ConfigurationSummary struct {
CreationTime time.Time `json:"creationTime"`
Arn string `json:"arn,omitempty"`
Name string `json:"name"`
Description string `json:"description,omitempty"`
Status string `json:"status,omitempty"`
}
ConfigurationSummary is the real ListConfigurationsOutput element shape (types.ConfigurationListItem, omics@v1.49.5 types.go) -- narrower than GetConfigurationOutput: no runConfigurations, tags or uuid.
type ConfigurationVpcConfig ¶ added in v1.3.1
type ConfigurationVpcConfig struct {
VpcID string `json:"vpcId,omitempty"`
SecurityGroupIDs []string `json:"securityGroupIds,omitempty"`
SubnetIDs []string `json:"subnetIds,omitempty"`
}
ConfigurationVpcConfig mirrors types.VpcConfig on the request side and types.VpcConfigResponse on the response side (types.go:2242/2254) -- both wire shapes share the same field set here. VpcID is the response-only "computed from the provided subnet IDs" field; left empty rather than fabricated since this backend does no real VPC/subnet resolution.
type CreateAnnotationStoreResponse ¶ added in v1.5.0
type CreateAnnotationStoreResponse struct {
CreationTime time.Time `json:"creationTime"`
Reference map[string]any `json:"reference,omitempty"`
StoreOptions map[string]any `json:"storeOptions,omitempty"`
ID string `json:"id"`
Name string `json:"name"`
Status string `json:"status"`
VersionName string `json:"versionName"`
StoreFormat string `json:"storeFormat,omitempty"`
}
CreateAnnotationStoreResponse is the real CreateAnnotationStoreOutput shape (omics@v1.49.5 api_op_CreateAnnotationStore.go:68-95) -- narrower than AnnotationStore (no description/reference/sseConfig/storeArn/storeFormat/ storeOptions/tags/updateTime/numVersions/storeSizeBytes/statusMessage) and with one member the domain struct never tracked at all: VersionName, real required "versionName" (deserializers.go:1290, CreateAnnotationStore's own deserializer -- distinct from GetAnnotationStoreOutput, which has no such member). Echoes the caller-supplied CreateAnnotationStoreInput.VersionName (also real, optional, api_op_CreateAnnotationStore.go:61-62) verbatim; left empty rather than fabricated when the caller didn't supply one.
type CreateAnnotationStoreVersionResponse ¶
type CreateAnnotationStoreVersionResponse struct {
CreationTime time.Time `json:"creationTime"`
VersionOptions map[string]any `json:"versionOptions,omitempty"`
ID string `json:"id"`
StoreID string `json:"storeId"`
Name string `json:"name"`
VersionName string `json:"versionName"`
Status string `json:"status"`
}
CreateAnnotationStoreVersionResponse is CreateAnnotationStoreVersionOutput.
type CreateSequenceStoreInput ¶
type CreateSequenceStoreInput struct {
SseConfig map[string]any
Tags map[string]string
Name string
Description string
ETagAlgorithmFamily string
AccessLogLocation string
FallbackLocation string
PropagatedSetLevelTags []string
}
CreateSequenceStoreInput holds CreateSequenceStore's request members.
type CreateWorkflowInput ¶
type CreateWorkflowInput struct {
ContainerRegistryMap map[string]any
ParameterTemplate map[string]WorkflowParameter
StorageCapacity *int
Tags map[string]string
Name string
Description string
DefinitionZip string
DefinitionURI string
Engine string
StorageType string
ReadmeMarkdown string
ReadmePath string
Accelerators string
Main string
WorkflowBucketOwnerID string
}
CreateWorkflowInput holds input for CreateWorkflow (real CreateWorkflowInput fields this backend models; DefinitionZip/DefinitionUri are accepted but discarded -- this backend does not store or execute workflow definition content, see the Engine doc comment in PARITY.md).
type CreateWorkflowVersionInput ¶
type CreateWorkflowVersionInput struct {
ContainerRegistryMap map[string]any
ParameterTemplate map[string]WorkflowParameter
StorageCapacity *int
Tags map[string]string
WorkflowID string
VersionName string
Description string
StorageType string
DefinitionURI string
ReadmeMarkdown string
ReadmePath string
Accelerators string
Main string
Engine string
WorkflowBucketOwnerID string
}
CreateWorkflowVersionInput holds input for CreateWorkflowVersion.
type DefaultRunSetting ¶ added in v1.3.1
type DefaultRunSetting struct {
Priority *int32
StorageCapacity *int
EngineSettings any
Parameters map[string]any
RunTags map[string]string
CacheID string
CacheBehavior string
LogLevel string
NetworkingMode string
RetentionMode string
ScratchStorageMode string
StorageType string
WorkflowOwnerID string
WorkflowType string
WorkflowVersionName string
RoleARN string
WorkflowID string
Name string
OutputURI string
RunGroupID string
}
DefaultRunSetting is the shared configuration StartRunBatch applies to every run in the batch (real types.DefaultRunSetting). ConfigurationName and OutputBucketOwnerId are accepted on the wire but not stored -- see PARITY.md items_still_open.
type Handler ¶
type Handler struct {
Backend StorageBackend
// contains filtered or unexported fields
}
Handler handles HealthOmics HTTP requests.
func (*Handler) BackendFor ¶
func (h *Handler) BackendFor(region string) StorageBackend
BackendFor returns the backend serving region: the home backend, or the sibling built on first use.
func (*Handler) EnableRegions ¶
func (h *Handler) EnableRegions()
EnableRegions makes h serve every other region through lazily built per-region siblings.
func (*Handler) ExtractOperation ¶
ExtractOperation extracts the operation from the request.
func (*Handler) ExtractResource ¶
ExtractResource extracts the resource identifier.
func (*Handler) GetSupportedOperations ¶
GetSupportedOperations returns all supported operation names, derived from the same opDispatch table handleREST dispatches through -- the two can never drift out of sync.
func (*Handler) Handler ¶
func (h *Handler) Handler() echo.HandlerFunc
Handler serves each request from the handler of its region.
func (*Handler) MatchPriority ¶
MatchPriority returns the routing priority.
func (*Handler) RegionBackends ¶
func (h *Handler) RegionBackends() []StorageBackend
RegionBackends returns the home backend followed by every sibling built so far.
func (*Handler) RegionHandler ¶
RegionHandler returns the handler serving region: h itself for the home region, else its sibling.
func (*Handler) RouteMatcher ¶
RouteMatcher returns a matcher for HealthOmics REST paths.
type ImportJobFilter ¶ added in v1.2.0
ImportJobFilter is filter criteria shared by ListAnnotationImportJobs and ListVariantImportJobs (status + owning store name).
type InMemoryBackend ¶
type InMemoryBackend struct {
// contains filtered or unexported fields
}
InMemoryBackend is the in-memory backend for HealthOmics.
Every resource collection that carries its own identity field (ID, Name, or ShareID) is a directly keyed store.Table; every collection that was previously nested by a parent store/workflow/run/annotation-store is a store.Table keyed by the composite "parent|id" string (see parentKey), with a companion store.Index grouping entries by parent for per-parent scans -- the same pattern services/emr and services/codeartifact use for their region-nested resources. HealthOmics's "region" dimension itself was never actually exercised (every pre-refactor call site read/wrote b.region(b.defaultRegion) only -- WithRegion's context value never reached a lookup), so unlike emr/codeartifact no region qualifier is threaded through these keys; only the genuine parent/child nesting is preserved.
uploadParts (order-sensitive: part listing walks it in append order, not sorted order), uploadPartData/readSetBytes/referenceBytes (raw []byte values, not *V), and tags (map[string]string values, not *V) are not eligible for store.Table and remain plain nested maps. Field order below is deliberate: it was determined by running fieldalignment -fix on an isolated scratch copy of this struct (never directly on this package -- see the fieldalignment hazard note in .claude/memories/parity-principles.md-adjacent process docs) and then hand-applied here. It shaves 8 pointer-bytes of padding off the struct; do not reorder without re-checking on a scratch copy.
func NewInMemoryBackend ¶
func NewInMemoryBackend(accountID, region string) *InMemoryBackend
NewInMemoryBackend creates a new InMemoryBackend.
func (*InMemoryBackend) AbortMultipartReadSetUpload ¶
func (b *InMemoryBackend) AbortMultipartReadSetUpload(sequenceStoreID, uploadID string) error
AbortMultipartReadSetUpload aborts a multipart read set upload.
func (*InMemoryBackend) AcceptShare ¶
func (b *InMemoryBackend) AcceptShare(shareID string) (*Share, error)
AcceptShare accepts a share invitation.
func (*InMemoryBackend) AccountID ¶
func (b *InMemoryBackend) AccountID() string
AccountID returns the account ID.
func (*InMemoryBackend) BatchDeleteReadSet ¶
func (b *InMemoryBackend) BatchDeleteReadSet( sequenceStoreID string, ids []string, ) ([]ReadSetBatchError, error)
BatchDeleteReadSet deletes multiple read sets.
func (*InMemoryBackend) CancelAnnotationImportJob ¶
func (b *InMemoryBackend) CancelAnnotationImportJob(jobID string) error
CancelAnnotationImportJob cancels an annotation import job.
func (*InMemoryBackend) CancelRun ¶
func (b *InMemoryBackend) CancelRun(id string) error
CancelRun cancels a run.
func (*InMemoryBackend) CancelRunBatch ¶
func (b *InMemoryBackend) CancelRunBatch(id string) error
CancelRunBatch cancels a run batch.
func (*InMemoryBackend) CancelVariantImportJob ¶
func (b *InMemoryBackend) CancelVariantImportJob(jobID string) error
CancelVariantImportJob cancels a variant import job.
func (*InMemoryBackend) CompleteMultipartReadSetUpload ¶
func (b *InMemoryBackend) CompleteMultipartReadSetUpload( sequenceStoreID, uploadID string, ) (*ReadSetMetadata, error)
CompleteMultipartReadSetUpload completes a multipart read set upload.
func (*InMemoryBackend) CreateAnnotationStore ¶
func (b *InMemoryBackend) CreateAnnotationStore( name, description, storeFormat, versionName string, reference, sseConfig, storeOptions map[string]any, tags map[string]string, ) (*AnnotationStore, error)
CreateAnnotationStore creates a new annotation store.
func (*InMemoryBackend) CreateAnnotationStoreVersion ¶
func (b *InMemoryBackend) CreateAnnotationStoreVersion( name, versionName, description string, versionOptions map[string]any, tags map[string]string, ) (*AnnotationStoreVersion, error)
CreateAnnotationStoreVersion creates a version of an annotation store.
func (*InMemoryBackend) CreateConfiguration ¶
func (b *InMemoryBackend) CreateConfiguration( name, description string, runConfigurations *ConfigurationRunConfigurations, tags map[string]string, ) (*Configuration, error)
CreateConfiguration creates a configuration. runConfigurations is a required CreateConfigurationInput member (verified against validateOpCreateConfigurationInput, validators.go) that the pre-fix request never read at all.
func (*InMemoryBackend) CreateMultipartReadSetUpload ¶
func (b *InMemoryBackend) CreateMultipartReadSetUpload( sequenceStoreID, name, sourceFileType, sampleID, subjectID, generatedFrom, referenceARN, description string, tags map[string]string, ) (*MultipartReadSetUpload, error)
CreateMultipartReadSetUpload creates a multipart read set upload.
func (*InMemoryBackend) CreateReferenceStore ¶
func (b *InMemoryBackend) CreateReferenceStore( name, description string, sseConfig map[string]any, tags map[string]string, ) (*ReferenceStore, error)
CreateReferenceStore creates a new reference store.
func (*InMemoryBackend) CreateRunCache ¶
func (b *InMemoryBackend) CreateRunCache( name, description, cacheS3Location, cacheBehavior, cacheBucketOwnerID string, tags map[string]string, ) (*RunCache, error)
CreateRunCache creates a new run cache. cacheBehavior defaults to CreateRunCacheInput.CacheBehavior's own documented default (CACHE_ON_FAILURE) when empty.
func (*InMemoryBackend) CreateRunGroup ¶
func (b *InMemoryBackend) CreateRunGroup( name string, maxCPUs, maxRuns, maxDuration int, maxGPUs int, tags map[string]string, ) (*RunGroup, error)
CreateRunGroup creates a new run group.
func (*InMemoryBackend) CreateSequenceStore ¶
func (b *InMemoryBackend) CreateSequenceStore(in CreateSequenceStoreInput) (*SequenceStore, error)
CreateSequenceStore creates a new sequence store.
func (*InMemoryBackend) CreateShare ¶
func (b *InMemoryBackend) CreateShare( resourceARN, principalSubscriber, name string, ) (*Share, error)
CreateShare creates a new resource share.
func (*InMemoryBackend) CreateVariantStore ¶
func (b *InMemoryBackend) CreateVariantStore( name, description string, reference, sseConfig map[string]any, tags map[string]string, ) (*VariantStore, error)
CreateVariantStore creates a new variant store.
sseConfig is real CreateVariantStoreInput's optional "sseConfig" (api_op_CreateVariantStore.go) -- previously not even read by the handler, despite GetVariantStoreOutput/VariantStoreItem requiring it on every response (types.go); the same passthrough-map convention AnnotationStore already uses (gopherstack-r80d batch 7).
func (*InMemoryBackend) CreateWorkflow ¶
func (b *InMemoryBackend) CreateWorkflow(input CreateWorkflowInput) (*Workflow, error)
CreateWorkflow creates a new workflow. StorageCapacity/StorageType are stored/echoed exactly as given, with no fabricated default: unlike StartRunInput.StorageType/.StorageCapacity (which do state fixed defaults, applied in startRunDefaults), CreateWorkflowInput's own doc comments for these two fields only describe what the value means for runs that inherit it -- neither states what CreateWorkflow itself defaults to when the field is omitted, so no value is invented here. ParameterTemplate is likewise stored/echoed only when explicitly supplied -- see the doc comment on Workflow.ParameterTemplate.
func (*InMemoryBackend) CreateWorkflowVersion ¶
func (b *InMemoryBackend) CreateWorkflowVersion(input CreateWorkflowVersionInput) (*WorkflowVersion, error)
CreateWorkflowVersion creates a new workflow version. CreateWorkflowVersion creates a new workflow version. StorageCapacity/ StorageType/ParameterTemplate are stored/echoed exactly as given -- see the doc comment on CreateWorkflow for why no default is fabricated.
func (*InMemoryBackend) DeleteAnnotationStore ¶
func (b *InMemoryBackend) DeleteAnnotationStore(name string) (*AnnotationStore, error)
DeleteAnnotationStore deletes an annotation store.
func (*InMemoryBackend) DeleteAnnotationStoreVersions ¶
func (b *InMemoryBackend) DeleteAnnotationStoreVersions( name string, versionNames []string, ) ([]VersionDeleteError, error)
DeleteAnnotationStoreVersions deletes one or more annotation store versions.
func (*InMemoryBackend) DeleteConfiguration ¶
func (b *InMemoryBackend) DeleteConfiguration(name string) error
DeleteConfiguration deletes a configuration.
func (*InMemoryBackend) DeleteReference ¶
func (b *InMemoryBackend) DeleteReference(referenceStoreID, id string) error
DeleteReference deletes a reference by store ID and reference ID. Real AWS requires any read set associated with the reference genome to be deleted first (api_op_DeleteReference.go: "The read set associated with the reference genome must first be deleted before deleting the reference genome.").
func (*InMemoryBackend) DeleteReferenceStore ¶
func (b *InMemoryBackend) DeleteReferenceStore(id string) error
DeleteReferenceStore deletes a reference store by ID. Real AWS only permits this when the store contains no reference genomes (api_op_DeleteReferenceStore.go: "You can only delete a reference store when it does not contain any reference genomes. To empty a reference store, use DeleteReference.").
func (*InMemoryBackend) DeleteRun ¶
func (b *InMemoryBackend) DeleteRun(id string) error
DeleteRun deletes a run.
func (*InMemoryBackend) DeleteRunBatch ¶
func (b *InMemoryBackend) DeleteRunBatch(id string) error
DeleteRunBatch deletes a single run batch resource (real AWS DeleteBatch semantics). Real AWS requires the batch to already be in a terminal state (PROCESSED/FAILED/CANCELLED/RUNS_DELETED) before it will delete the batch metadata; attempting to delete a batch still in progress returns a ConflictException.
func (*InMemoryBackend) DeleteRunCache ¶
func (b *InMemoryBackend) DeleteRunCache(id string) error
DeleteRunCache deletes a run cache.
func (*InMemoryBackend) DeleteRunGroup ¶
func (b *InMemoryBackend) DeleteRunGroup(id string) error
DeleteRunGroup deletes a run group.
func (*InMemoryBackend) DeleteRunsInBatch ¶
func (b *InMemoryBackend) DeleteRunsInBatch(batchID string) error
DeleteRunsInBatch deletes the individual workflow runs that belong to a run batch (real DeleteRunBatch semantics: POST /runBatch/delete with a single batchId in the body). The run batch resource itself is left intact; use DeleteRunBatch (DELETE /runBatch/{batchId}, real DeleteBatch semantics) to remove the batch metadata afterward.
func (*InMemoryBackend) DeleteS3AccessPolicy ¶
func (b *InMemoryBackend) DeleteS3AccessPolicy(s3AccessPointARN string) error
DeleteS3AccessPolicy deletes an S3 access policy.
func (*InMemoryBackend) DeleteSequenceStore ¶
func (b *InMemoryBackend) DeleteSequenceStore(id string) error
DeleteSequenceStore deletes a sequence store by ID. Real AWS only permits this when the store contains no read sets (api_op_DeleteSequenceStore.go: "You can only delete a sequence store when it does not contain any read sets. Use the BatchDeleteReadSet API operation to ensure that all read sets in the sequence store are deleted.").
func (*InMemoryBackend) DeleteShare ¶
func (b *InMemoryBackend) DeleteShare(shareID string) (*Share, error)
DeleteShare deletes a share.
func (*InMemoryBackend) DeleteVariantStore ¶
func (b *InMemoryBackend) DeleteVariantStore(name string) (*VariantStore, error)
DeleteVariantStore deletes a variant store.
func (*InMemoryBackend) DeleteWorkflow ¶
func (b *InMemoryBackend) DeleteWorkflow(id string) error
DeleteWorkflow deletes a workflow.
func (*InMemoryBackend) DeleteWorkflowVersion ¶
func (b *InMemoryBackend) DeleteWorkflowVersion(workflowID, versionName string) error
DeleteWorkflowVersion deletes a workflow version.
func (*InMemoryBackend) GetAnnotationImportJob ¶
func (b *InMemoryBackend) GetAnnotationImportJob(jobID string) (*AnnotationImportJob, error)
GetAnnotationImportJob retrieves an annotation import job.
func (*InMemoryBackend) GetAnnotationStore ¶
func (b *InMemoryBackend) GetAnnotationStore(name string) (*AnnotationStore, error)
GetAnnotationStore retrieves an annotation store, advancing CREATING→ACTIVE on first poll (real AnnotationStoreCreatedWaiter clients poll until Status == ACTIVE).
func (*InMemoryBackend) GetAnnotationStoreVersion ¶
func (b *InMemoryBackend) GetAnnotationStoreVersion( name, versionName string, ) (*AnnotationStoreVersion, error)
GetAnnotationStoreVersion retrieves an annotation store version.
func (*InMemoryBackend) GetConfiguration ¶
func (b *InMemoryBackend) GetConfiguration(name string) (*Configuration, error)
GetConfiguration retrieves a configuration.
func (*InMemoryBackend) GetReadSetActivationJob ¶
func (b *InMemoryBackend) GetReadSetActivationJob( sequenceStoreID, jobID string, ) (*ReadSetActivationJob, error)
GetReadSetActivationJob retrieves a read set activation job.
func (*InMemoryBackend) GetReadSetBytes ¶
func (b *InMemoryBackend) GetReadSetBytes(sequenceStoreID, id string) ([]byte, error)
GetReadSetBytes returns the stored binary body for a read set.
func (*InMemoryBackend) GetReadSetExportJob ¶
func (b *InMemoryBackend) GetReadSetExportJob( sequenceStoreID, jobID string, ) (*ReadSetExportJob, error)
GetReadSetExportJob retrieves a read set export job.
func (*InMemoryBackend) GetReadSetImportJob ¶
func (b *InMemoryBackend) GetReadSetImportJob( sequenceStoreID, jobID string, ) (*ReadSetImportJob, error)
GetReadSetImportJob retrieves a read set import job.
func (*InMemoryBackend) GetReadSetMetadata ¶
func (b *InMemoryBackend) GetReadSetMetadata(sequenceStoreID, id string) (*ReadSetMetadata, error)
GetReadSetMetadata retrieves read set metadata.
func (*InMemoryBackend) GetReferenceBytes ¶
func (b *InMemoryBackend) GetReferenceBytes(referenceStoreID, id string) ([]byte, error)
GetReferenceBytes returns the stored binary body for a reference.
func (*InMemoryBackend) GetReferenceImportJob ¶
func (b *InMemoryBackend) GetReferenceImportJob( referenceStoreID, jobID string, ) (*ReferenceImportJob, error)
GetReferenceImportJob retrieves a reference import job.
func (*InMemoryBackend) GetReferenceMetadata ¶
func (b *InMemoryBackend) GetReferenceMetadata( referenceStoreID, id string, ) (*ReferenceMetadata, error)
GetReferenceMetadata retrieves reference metadata.
func (*InMemoryBackend) GetReferenceStore ¶
func (b *InMemoryBackend) GetReferenceStore(id string) (*ReferenceStore, error)
GetReferenceStore retrieves a reference store by ID.
func (*InMemoryBackend) GetRun ¶
func (b *InMemoryBackend) GetRun(id string) (*Run, error)
GetRun retrieves a run, advancing PENDING→RUNNING→COMPLETED across polls (real RunRunningWaiter/RunCompletedWaiter clients poll GetRun until Status reaches RUNNING / COMPLETED respectively).
func (*InMemoryBackend) GetRunBatch ¶
func (b *InMemoryBackend) GetRunBatch(id string) (*RunBatch, error)
GetRunBatch retrieves a run batch.
func (*InMemoryBackend) GetRunBatchSummary ¶ added in v1.3.1
func (b *InMemoryBackend) GetRunBatchSummary(id string) (RunBatchSummary, error)
GetRunBatchSummary computes the live RunSummary breakdown for GetBatch's response.
func (*InMemoryBackend) GetRunCache ¶
func (b *InMemoryBackend) GetRunCache(id string) (*RunCache, error)
GetRunCache retrieves a run cache.
func (*InMemoryBackend) GetRunGroup ¶
func (b *InMemoryBackend) GetRunGroup(id string) (*RunGroup, error)
GetRunGroup retrieves a run group.
func (*InMemoryBackend) GetRunTask ¶
func (b *InMemoryBackend) GetRunTask(runID, taskID string) (*RunTask, error)
GetRunTask retrieves a task within a run, advancing PENDING→RUNNING→ COMPLETED across polls (real TaskRunningWaiter/TaskCompletedWaiter clients poll GetRunTask until Status reaches RUNNING / COMPLETED respectively).
func (*InMemoryBackend) GetS3AccessPolicy ¶
func (b *InMemoryBackend) GetS3AccessPolicy(s3AccessPointARN string) (*S3AccessPolicy, error)
GetS3AccessPolicy retrieves an S3 access policy.
func (*InMemoryBackend) GetSequenceStore ¶
func (b *InMemoryBackend) GetSequenceStore(id string) (*SequenceStore, error)
GetSequenceStore retrieves a sequence store by ID.
func (*InMemoryBackend) GetShare ¶
func (b *InMemoryBackend) GetShare(shareID string) (*Share, error)
GetShare retrieves a share, advancing ACTIVATING→ACTIVE on first poll, mirroring GetWorkflow/GetAnnotationStore/GetVariantStore's reap-on-read pattern. AcceptShare stamped Status ACTIVATING and nothing else in this backend ever advanced it -- a client polling GetShare for readiness never saw a terminal status. PENDING is left alone: it is the correct client-driven wait for AcceptShare/RejectShare, not a stall.
func (*InMemoryBackend) GetVariantImportJob ¶
func (b *InMemoryBackend) GetVariantImportJob(jobID string) (*VariantImportJob, error)
GetVariantImportJob retrieves a variant import job.
func (*InMemoryBackend) GetVariantStore ¶
func (b *InMemoryBackend) GetVariantStore(name string) (*VariantStore, error)
GetVariantStore retrieves a variant store, advancing CREATING→ACTIVE on first poll (real VariantStoreCreatedWaiter clients poll until Status == ACTIVE).
func (*InMemoryBackend) GetWorkflow ¶
func (b *InMemoryBackend) GetWorkflow(id string) (*Workflow, error)
GetWorkflow retrieves a workflow, advancing CREATING→ACTIVE on first poll (real WorkflowActiveWaiter clients poll GetWorkflow until Status == ACTIVE).
func (*InMemoryBackend) GetWorkflowVersion ¶
func (b *InMemoryBackend) GetWorkflowVersion( workflowID, versionName string, ) (*WorkflowVersion, error)
GetWorkflowVersion retrieves a workflow version, advancing CREATING→ACTIVE on first poll (real WorkflowVersionActiveWaiter clients poll until Status == ACTIVE).
func (*InMemoryBackend) ListAnnotationImportJobs ¶
func (b *InMemoryBackend) ListAnnotationImportJobs( filter *ImportJobFilter, ids0 []string, maxResults int, nextToken string, ) ([]*AnnotationImportJob, string, error)
ListAnnotationImportJobs lists annotation import jobs, optionally filtered by status/storeName and/or a specific set of job ids (real AWS ListAnnotationImportJobsInput body "filter"/"ids").
func (*InMemoryBackend) ListAnnotationStoreVersions ¶
func (b *InMemoryBackend) ListAnnotationStoreVersions( name string, filter *StoreStatusFilter, maxResults int, nextToken string, ) ([]*AnnotationStoreVersion, string, error)
ListAnnotationStoreVersions lists versions of an annotation store, optionally filtered by status (real AWS ListAnnotationStoreVersionsInput body "filter", omics@v1.49.5 serializers.go:5608).
func (*InMemoryBackend) ListAnnotationStores ¶
func (b *InMemoryBackend) ListAnnotationStores( filter *StoreStatusFilter, ids0 []string, maxResults int, nextToken string, ) ([]*AnnotationStore, string, error)
ListAnnotationStores lists annotation stores, optionally filtered by status and/or a specific set of store ids (real AWS ListAnnotationStoresInput body "filter"/"ids", omics@v1.49.5 serializers.go:5497).
func (*InMemoryBackend) ListConfigurations ¶
func (b *InMemoryBackend) ListConfigurations( maxResults int, nextToken string, ) ([]*Configuration, string, error)
ListConfigurations lists configurations.
func (*InMemoryBackend) ListMultipartReadSetUploads ¶
func (b *InMemoryBackend) ListMultipartReadSetUploads( sequenceStoreID string, maxResults int, nextToken string, ) ([]*MultipartReadSetUpload, string, error)
ListMultipartReadSetUploads lists in-progress multipart uploads.
func (*InMemoryBackend) ListReadSetActivationJobs ¶
func (b *InMemoryBackend) ListReadSetActivationJobs( sequenceStoreID string, filter *ReadSetJobFilter, maxResults int, nextToken string, ) ([]*ReadSetActivationJob, string, error)
ListReadSetActivationJobs lists read set activation jobs.
func (*InMemoryBackend) ListReadSetExportJobs ¶
func (b *InMemoryBackend) ListReadSetExportJobs( sequenceStoreID string, filter *ReadSetJobFilter, maxResults int, nextToken string, ) ([]*ReadSetExportJob, string, error)
ListReadSetExportJobs lists read set export jobs.
func (*InMemoryBackend) ListReadSetImportJobs ¶
func (b *InMemoryBackend) ListReadSetImportJobs( sequenceStoreID string, filter *ReadSetJobFilter, maxResults int, nextToken string, ) ([]*ReadSetImportJob, string, error)
ListReadSetImportJobs lists read set import jobs.
func (*InMemoryBackend) ListReadSetUploadParts ¶
func (b *InMemoryBackend) ListReadSetUploadParts( sequenceStoreID, uploadID, partSource string, window *createdWindow, maxResults int, nextToken string, ) ([]*ReadSetUploadPart, string, error)
ListReadSetUploadParts lists the parts of one partSource, narrowed by the created window.
func (*InMemoryBackend) ListReadSets ¶
func (b *InMemoryBackend) ListReadSets( sequenceStoreID string, filter *ReadSetFilter, maxResults int, nextToken string, ) ([]*ReadSetMetadata, string, error)
ListReadSets lists read sets in a sequence store.
func (*InMemoryBackend) ListReferenceImportJobs ¶
func (b *InMemoryBackend) ListReferenceImportJobs( referenceStoreID string, filter *ReferenceImportJobFilter, maxResults int, nextToken string, ) ([]*ReferenceImportJob, string, error)
func (*InMemoryBackend) ListReferenceStores ¶
func (b *InMemoryBackend) ListReferenceStores( filter *ReferenceStoreFilter, maxResults int, nextToken string, ) ([]*ReferenceStore, string, error)
ListReferenceStores lists reference stores with optional name filter.
func (*InMemoryBackend) ListReferences ¶
func (b *InMemoryBackend) ListReferences( referenceStoreID string, filter *ReferenceFilter, maxResults int, nextToken string, ) ([]*ReferenceMetadata, string, error)
func (*InMemoryBackend) ListRunBatches ¶
func (b *InMemoryBackend) ListRunBatches( filter *RunBatchFilter, maxResults int, nextToken string, ) ([]*RunBatch, string, error)
ListRunBatches lists run batches, optionally filtered by name/status (real AWS ListBatchInput query parameters). filter.RunGroupID is accepted for wire compatibility but not applied: real ListBatch filters by the run group of the batch's *contained runs*, and this simplified RunBatch model doesn't track a run-group association on the batch resource itself (see the PARITY.md RunBatch note on the broader BatchRunSettings/RunSummary gap).
func (*InMemoryBackend) ListRunCaches ¶
func (b *InMemoryBackend) ListRunCaches( maxResults int, nextToken string, ) ([]*RunCache, string, error)
ListRunCaches lists run caches.
func (*InMemoryBackend) ListRunGroups ¶
func (b *InMemoryBackend) ListRunGroups( filter *RunGroupFilter, maxResults int, nextToken string, ) ([]*RunGroup, string, error)
ListRunGroups lists run groups, optionally filtered by name (real AWS ListRunGroupsInput takes "name" as a query parameter).
func (*InMemoryBackend) ListRunTasks ¶
func (b *InMemoryBackend) ListRunTasks( runID string, filter *RunTaskFilter, maxResults int, nextToken string, ) ([]*RunTask, string, error)
ListRunTasks lists tasks within a run, optionally filtered by status (real AWS ListRunTasksInput "status" query parameter).
func (*InMemoryBackend) ListRuns ¶
func (b *InMemoryBackend) ListRuns(filter *RunFilter, maxResults int, nextToken string) ([]*Run, string, error)
ListRuns lists runs, optionally filtered by name/runGroupId/batchId/status (real AWS ListRunsInput query parameters).
func (*InMemoryBackend) ListRunsInBatch ¶
func (b *InMemoryBackend) ListRunsInBatch( batchID string, filter *RunsInBatchFilter, maxResults int, nextToken string, ) ([]*Run, string, error)
ListRunsInBatch lists runs that belong to a run batch, optionally filtered by runId and runSettingId (real AWS ListRunsInBatchInput query parameters). filter.SubmissionStatus is accepted for wire compatibility but not applied: this backend has no async submission-status state machine, since batches complete submission synchronously (see the PARITY.md RunBatch note).
func (*InMemoryBackend) ListSequenceStores ¶
func (b *InMemoryBackend) ListSequenceStores( filter *SequenceStoreFilter, maxResults int, nextToken string, ) ([]*SequenceStore, string, error)
ListSequenceStores lists sequence stores.
func (*InMemoryBackend) ListShares ¶
func (b *InMemoryBackend) ListShares( resourceOwner string, filter *ShareFilter, maxResults int, nextToken string, ) ([]*Share, string, error)
ListShares lists shares by resource owner, optionally filtered by resourceArns/status/type (real AWS ListSharesInput body "filter", omics@v1.49.5 types/types.go:678).
func (*InMemoryBackend) ListTagsForResource ¶
func (b *InMemoryBackend) ListTagsForResource(resourceARN string) (map[string]string, error)
ListTagsForResource returns all tags for a resource.
func (*InMemoryBackend) ListVariantImportJobs ¶
func (b *InMemoryBackend) ListVariantImportJobs( filter *ImportJobFilter, ids0 []string, maxResults int, nextToken string, ) ([]*VariantImportJob, string, error)
ListVariantImportJobs lists variant import jobs, optionally filtered by status/storeName and/or a specific set of job ids (real AWS ListVariantImportJobsInput body "filter"/"ids").
func (*InMemoryBackend) ListVariantStores ¶
func (b *InMemoryBackend) ListVariantStores( filter *StoreStatusFilter, ids0 []string, maxResults int, nextToken string, ) ([]*VariantStore, string, error)
ListVariantStores lists variant stores, optionally filtered by status and/or a specific set of store ids (real AWS ListVariantStoresInput body "filter"/"ids", omics@v1.49.5 serializers.go:7543).
func (*InMemoryBackend) ListWorkflowVersions ¶
func (b *InMemoryBackend) ListWorkflowVersions( workflowID string, filter *WorkflowVersionFilter, maxResults int, nextToken string, ) ([]*WorkflowVersion, string, error)
ListWorkflowVersions lists versions of a workflow, optionally filtered by type (real AWS ListWorkflowVersionsInput "type" query parameter).
func (*InMemoryBackend) ListWorkflows ¶
func (b *InMemoryBackend) ListWorkflows( filter *WorkflowFilter, maxResults int, nextToken string, ) ([]*Workflow, string, error)
ListWorkflows lists workflows, optionally filtered by name/type (real AWS ListWorkflowsInput query parameters).
func (*InMemoryBackend) PutS3AccessPolicy ¶
func (b *InMemoryBackend) PutS3AccessPolicy(s3AccessPointARN, policy string) error
PutS3AccessPolicy stores an S3 access policy.
func (*InMemoryBackend) Region ¶
func (b *InMemoryBackend) Region() string
Region returns the default region.
func (*InMemoryBackend) Restore ¶
func (b *InMemoryBackend) Restore(ctx context.Context, data []byte) error
Restore loads backend state from a JSON snapshot. It implements persistence.Persistable.
func (*InMemoryBackend) Snapshot ¶
func (b *InMemoryBackend) Snapshot(ctx context.Context) []byte
Snapshot serialises the backend state to JSON. It implements persistence.Persistable.
func (*InMemoryBackend) StartAnnotationImportJob ¶
func (b *InMemoryBackend) StartAnnotationImportJob( destinationName, roleARN string, items []AnnotationImportItem, annotationFields map[string]string, formatOptions map[string]any, runLeftNormalization bool, versionName string, ) (*AnnotationImportJob, error)
StartAnnotationImportJob starts an annotation import job. annotationFields, formatOptions, runLeftNormalization, and versionName are real optional StartAnnotationImportJobInput members (serializers.go:7892-7935) that were previously dropped on the floor -- the handler never read them at all.
func (*InMemoryBackend) StartReadSetActivationJob ¶
func (b *InMemoryBackend) StartReadSetActivationJob( sequenceStoreID string, sources []ReadSetActivationJobSource, ) (*ReadSetActivationJob, error)
StartReadSetActivationJob creates a read set activation job.
func (*InMemoryBackend) StartReadSetExportJob ¶
func (b *InMemoryBackend) StartReadSetExportJob( sequenceStoreID, destination string, sources []ReadSetExportJobSource, ) (*ReadSetExportJob, error)
StartReadSetExportJob creates a read set export job.
func (*InMemoryBackend) StartReadSetImportJob ¶
func (b *InMemoryBackend) StartReadSetImportJob( sequenceStoreID, roleARN string, sources []ReadSetImportJobSource, ) (*ReadSetImportJob, error)
StartReadSetImportJob creates a read set import job.
func (*InMemoryBackend) StartReferenceImportJob ¶
func (b *InMemoryBackend) StartReferenceImportJob( referenceStoreID, roleARN string, sources []ReferenceImportJobSource, ) (*ReferenceImportJob, error)
StartReferenceImportJob creates a reference import job.
func (*InMemoryBackend) StartRun ¶
func (b *InMemoryBackend) StartRun(input StartRunInput) (*Run, error)
StartRun starts a new workflow run. See StartRunInput for which real StartRunInput fields this backend models.
func (*InMemoryBackend) StartRunBatch ¶
func (b *InMemoryBackend) StartRunBatch( batchName string, def DefaultRunSetting, inlineSettings []InlineRunSetting, tags map[string]string, ) (*RunBatch, error)
StartRunBatch starts a new run batch: it creates the RunBatch resource, then immediately creates one constituent Run per entry in inlineSettings (real BatchRunSettings.InlineSettings), merging each with def (real DefaultRunSetting) -- a run-level field is used when set, falling back to the batch default otherwise, matching the documented override semantics of types.InlineSetting. A duplicate RunSettingID within the same request is a submission failure for that entry (not a fatal error for the whole batch), matching real AWS's per-run submission-outcome model (see SubmissionSummary).
func (*InMemoryBackend) StartVariantImportJob ¶
func (b *InMemoryBackend) StartVariantImportJob( destinationName, roleARN string, items []VariantImportItem, annotationFields map[string]string, runLeftNormalization bool, ) (*VariantImportJob, error)
StartVariantImportJob starts a variant import job. annotationFields and runLeftNormalization are real optional StartVariantImportJobInput members (serializers.go:8737-8767) that were previously dropped on the floor -- the handler never read them at all. Unlike annotation import jobs, variant import jobs have no formatOptions or versionName field in the real API.
func (*InMemoryBackend) TagResource ¶
func (b *InMemoryBackend) TagResource(resourceARN string, tags map[string]string) error
TagResource adds tags to a resource identified by ARN.
func (*InMemoryBackend) UntagResource ¶
func (b *InMemoryBackend) UntagResource(resourceARN string, tagKeys []string) error
UntagResource removes tags from a resource identified by ARN.
func (*InMemoryBackend) UpdateAnnotationStore ¶
func (b *InMemoryBackend) UpdateAnnotationStore( name string, description *string, ) (*AnnotationStore, error)
UpdateAnnotationStore updates an annotation store.
func (*InMemoryBackend) UpdateAnnotationStoreVersion ¶
func (b *InMemoryBackend) UpdateAnnotationStoreVersion( name, versionName string, description *string, ) (*AnnotationStoreVersion, error)
UpdateAnnotationStoreVersion updates an annotation store version.
func (*InMemoryBackend) UpdateRunCache ¶
func (b *InMemoryBackend) UpdateRunCache(id, name, description, cacheBehavior string) error
UpdateRunCache updates a run cache. cacheBehavior, like name and description, is applied only when non-empty (real UpdateRunCacheInput.CacheBehavior: "Update the default run cache behavior" -- omitting it leaves the existing value).
func (*InMemoryBackend) UpdateRunGroup ¶
func (b *InMemoryBackend) UpdateRunGroup( id, name string, maxCPUs, maxRuns, maxDuration int, maxGPUs int, ) (*RunGroup, error)
UpdateRunGroup updates a run group.
func (*InMemoryBackend) UpdateSequenceStore ¶
func (b *InMemoryBackend) UpdateSequenceStore(id string, in UpdateSequenceStoreInput) (*SequenceStore, error)
UpdateSequenceStore updates a sequence store's name and description.
func (*InMemoryBackend) UpdateVariantStore ¶
func (b *InMemoryBackend) UpdateVariantStore(name string, description *string) (*VariantStore, error)
UpdateVariantStore updates a variant store.
func (*InMemoryBackend) UpdateWorkflow ¶
func (b *InMemoryBackend) UpdateWorkflow( id, name, description, storageType, readmeMarkdown string, storageCapacity *int, ) error
UpdateWorkflow updates a workflow.
func (*InMemoryBackend) UpdateWorkflowVersion ¶
func (b *InMemoryBackend) UpdateWorkflowVersion( workflowID, versionName, description, storageType, readmeMarkdown string, storageCapacity *int, ) error
UpdateWorkflowVersion updates a workflow version.
func (*InMemoryBackend) UploadReadSetPart ¶
func (b *InMemoryBackend) UploadReadSetPart( sequenceStoreID, uploadID string, partNumber int, partSource string, data []byte, ) (string, error)
UploadReadSetPart stores binary data for a single part and returns its SHA256 checksum.
type InlineRunSetting ¶ added in v1.3.1
type InlineRunSetting struct {
RunTags map[string]string
Parameters map[string]any
EngineSettings any
Priority *int32
RunSettingID string
Name string
OutputURI string
}
InlineRunSetting is one caller-supplied per-run override within a StartRunBatch request's BatchRunSettings.InlineSettings list (real types.InlineSetting). Overrides Name/OutputURI/Priority/RunTags from DefaultRunSetting when set; RunSettingID is required and has no default.
type MultipartReadSetUpload ¶
type MultipartReadSetUpload struct {
CreationTime time.Time `json:"creationTime"`
Tags map[string]string `json:"tags"`
UploadID string `json:"uploadId"`
SequenceStoreID string `json:"sequenceStoreId"`
Name string `json:"name,omitempty"`
SourceFileType string `json:"sourceFileType"`
SampleID string `json:"sampleId"`
SubjectID string `json:"subjectId"`
// GeneratedFrom is real required MultipartReadSetUploadListItem's "generatedFrom"
// (List element, types.go) despite being optional on CreateMultipartReadSetUploadOutput
// -- present-but-empty (not omitted) is correct either way (gopherstack-r80d batch 7).
GeneratedFrom string `json:"generatedFrom"`
// ReferenceARN is real required CreateMultipartReadSetUploadOutput/
// MultipartReadSetUploadListItem "referenceArn" (api_op_CreateMultipartReadSetUpload.go:82-85,
// types.go) despite being an optional CreateMultipartReadSetUploadInput field --
// previously omitempty dropped the key entirely whenever a caller didn't supply
// one, which a real client decodes as a required-field-missing error
// (gopherstack-r80d batch 7).
ReferenceARN string `json:"referenceArn"`
Description string `json:"description,omitempty"`
}
MultipartReadSetUpload represents an in-progress multipart read set upload.
Field names/JSON keys were field-diffed against CreateMultipartReadSetUploadInput/Output and MultipartReadSetUploadListItem: the real wire key for the upload's file type is "sourceFileType" (this struct previously used the invented key "sequenceType", which appears nowhere in the real API), SampleID/SubjectID are real required fields that were previously missing entirely, and there is no real "status" field on this resource at all (removed).
type Provider ¶
type Provider struct{}
Provider implements service.Provider for AWS HealthOmics.
func (*Provider) Init ¶
func (p *Provider) Init(ctx *service.AppContext) (service.Registerable, error)
Init initializes the HealthOmics service backend and handler.
type ReadSetActivationJob ¶
type ReadSetActivationJob struct {
CreationTime time.Time `json:"creationTime"`
CompletionTime *time.Time `json:"completionTime,omitempty"`
ID string `json:"id"`
SequenceStoreID string `json:"sequenceStoreId"`
Status string `json:"status"`
Sources []ReadSetActivationJobSource `json:"sources"`
}
ReadSetActivationJob represents a read set activation job.
type ReadSetActivationJobSource ¶
type ReadSetActivationJobSource struct {
ReadSetID string `json:"readSetId"`
}
ReadSetActivationJobSource is a source for activating a read set.
type ReadSetActivationJobSummary ¶
type ReadSetActivationJobSummary struct {
CreationTime time.Time `json:"creationTime"`
CompletionTime *time.Time `json:"completionTime,omitempty"`
ID string `json:"id"`
SequenceStoreID string `json:"sequenceStoreId"`
Status string `json:"status"`
}
ReadSetActivationJobSummary is the real ListReadSetActivationJobsOutput element shape (types.ActivateReadSetJobItem, omics@v1.49.5 types.go) -- narrower than GetReadSetActivationJobOutput: no sources or statusMessage.
type ReadSetBatchError ¶
type ReadSetBatchError struct {
ID string `json:"id"`
Code string `json:"code"`
Message string `json:"message"`
}
ReadSetBatchError is an error item from a batch delete operation.
type ReadSetExportJob ¶
type ReadSetExportJob struct {
CreationTime time.Time `json:"creationTime"`
CompletionTime *time.Time `json:"completionTime,omitempty"`
ID string `json:"id"`
SequenceStoreID string `json:"sequenceStoreId"`
Destination string `json:"destination"`
Status string `json:"status"`
Sources []ReadSetExportJobSource `json:"sources"`
}
ReadSetExportJob represents a read set export job.
type ReadSetExportJobSource ¶
type ReadSetExportJobSource struct {
ReadSetID string `json:"readSetId"`
}
ReadSetExportJobSource is a source for a read set export job.
type ReadSetFilter ¶
type ReadSetFilter struct {
Name string
Status string
ReferenceArn string
SampleID string `json:"sampleId"`
SubjectID string `json:"subjectId"`
// contains filtered or unexported fields
}
ReadSetFilter is filter criteria for listing read sets.
type ReadSetImportJob ¶
type ReadSetImportJob struct {
CreationTime time.Time `json:"creationTime"`
CompletionTime *time.Time `json:"completionTime,omitempty"`
ID string `json:"id"`
SequenceStoreID string `json:"sequenceStoreId"`
RoleARN string `json:"roleArn"`
Status string `json:"status"`
Sources []ReadSetImportJobSource `json:"sources"`
}
ReadSetImportJob represents a read set import job.
type ReadSetImportJobSource ¶
type ReadSetImportJobSource struct {
SourceFileType string `json:"sourceFileType"`
SourceFiles struct {
Source1 string `json:"source1"`
Source2 string `json:"source2,omitempty"`
} `json:"sourceFiles"`
SubjectID string `json:"subjectId"`
SampleID string `json:"sampleId"`
ReferenceARN string `json:"referenceArn"`
Name string `json:"name"`
Description string `json:"description"`
}
ReadSetImportJobSource is a source for a read set import job.
type ReadSetImportJobSummary ¶
type ReadSetImportJobSummary struct {
CreationTime time.Time `json:"creationTime"`
CompletionTime *time.Time `json:"completionTime,omitempty"`
ID string `json:"id"`
SequenceStoreID string `json:"sequenceStoreId"`
RoleARN string `json:"roleArn"`
Status string `json:"status"`
}
ReadSetImportJobSummary is the real ListReadSetImportJobsOutput element shape (types.ImportReadSetJobItem, omics@v1.49.5 types.go) -- narrower than GetReadSetImportJobOutput: no sources.
type ReadSetJobFilter ¶
type ReadSetJobFilter struct {
Status string `json:"status"`
// contains filtered or unexported fields
}
ReadSetJobFilter is the status + created window filter of the read set import/export/activation job list operations.
type ReadSetMetadata ¶
type ReadSetMetadata struct {
CreationTime time.Time `json:"creationTime"`
UpdateTime time.Time `json:"updateTime"`
Files map[string]any `json:"files,omitempty"`
Tags map[string]string `json:"tags"`
Arn string `json:"arn"`
ID string `json:"id"`
SequenceStoreID string `json:"sequenceStoreId"`
Name string `json:"name"`
Description string `json:"description"`
StatusMessage string `json:"statusMessage,omitempty"`
Status string `json:"status"`
// FileType is the real GetReadSetMetadataOutput/ReadSetListItem wire key
// ("fileType") -- confirmed against the SDK deserializer. It was
// previously (incorrectly) serialized as "sequenceType", a key that
// doesn't exist anywhere in the real API surface.
FileType string `json:"fileType"`
SubjectID string `json:"subjectId"`
SampleID string `json:"sampleId"`
ReferenceARN string `json:"referenceArn"`
}
ReadSetMetadata holds metadata for a read set.
type ReadSetSummary ¶
type ReadSetSummary struct {
CreationTime time.Time `json:"creationTime"`
Arn string `json:"arn"`
ID string `json:"id"`
SequenceStoreID string `json:"sequenceStoreId"`
Name string `json:"name,omitempty"`
Description string `json:"description,omitempty"`
FileType string `json:"fileType"`
Status string `json:"status"`
StatusMessage string `json:"statusMessage,omitempty"`
SubjectID string `json:"subjectId,omitempty"`
SampleID string `json:"sampleId,omitempty"`
ReferenceARN string `json:"referenceArn,omitempty"`
}
ReadSetSummary is the real ListReadSetsOutput element shape (types.ReadSetListItem, omics@v1.49.5 types.go) -- narrower than GetReadSetMetadataOutput: no files, tags or updateTime.
creationType/etag/sequenceInformation are real ReadSetListItem members this backend has no source for (not tracked anywhere at read-set creation) -- see PARITY.md items_still_open.
type ReadSetUploadPart ¶
type ReadSetUploadPart struct {
CreationTime time.Time `json:"creationTime"`
LastUpdatedTime time.Time `json:"lastUpdatedTime"`
Checksum string `json:"checksum"`
Source string `json:"source"`
PartNumber int `json:"partNumber"`
PartSize int64 `json:"partSize"`
}
ReadSetUploadPart represents a single part of a multipart read set upload and is also this backend's persisted record for it (backendSnapshot. UploadParts) -- its json tags are the on-disk keys, so Source keeps the "source" tag here rather than the real wire key (see ReadSetUploadPartSummary for that). CreationTime is a real ReadSetUploadPartListItem required member, previously missing from this struct entirely (purely additive: an older snapshot decodes it as the zero Time).
type ReadSetUploadPartSummary ¶
type ReadSetUploadPartSummary struct {
CreationTime time.Time `json:"creationTime"`
LastUpdatedTime time.Time `json:"lastUpdatedTime"`
Checksum string `json:"checksum"`
Source string `json:"partSource"`
PartNumber int `json:"partNumber"`
PartSize int64 `json:"partSize"`
}
ReadSetUploadPartSummary is the real ListReadSetUploadPartsOutput element wire shape (types.ReadSetUploadPartListItem, omics@v1.49.5 deserializers.go) -- Source is tagged "partSource", the real wire key (confirmed against the SDK deserializer); ReadSetUploadPart's own "source" tag is its on-disk persistence key instead (see its doc comment), so this backend cannot marshal that struct directly for the wire response.
type ReferenceFilter ¶
ReferenceFilter is filter criteria for listing references.
type ReferenceImportJob ¶
type ReferenceImportJob struct {
CreationTime time.Time `json:"creationTime"`
CompletionTime *time.Time `json:"completionTime,omitempty"`
ID string `json:"id"`
ReferenceStoreID string `json:"referenceStoreId"`
RoleARN string `json:"roleArn"`
Status string `json:"status"`
Sources []ReferenceImportJobSource `json:"sources"`
}
ReferenceImportJob represents a reference import job.
type ReferenceImportJobFilter ¶ added in v1.2.0
type ReferenceImportJobFilter struct {
Status string
// contains filtered or unexported fields
}
ReferenceImportJobFilter is filter criteria for listing reference import jobs.
type ReferenceImportJobSource ¶
type ReferenceImportJobSource struct {
SourceFile string `json:"sourceFile"`
Name string `json:"name"`
Description string `json:"description"`
}
ReferenceImportJobSource is a source for a reference import job.
type ReferenceImportJobSummary ¶
type ReferenceImportJobSummary struct {
CreationTime time.Time `json:"creationTime"`
CompletionTime *time.Time `json:"completionTime,omitempty"`
ID string `json:"id"`
ReferenceStoreID string `json:"referenceStoreId"`
RoleARN string `json:"roleArn"`
Status string `json:"status"`
}
ReferenceImportJobSummary is the real ListReferenceImportJobsOutput element shape (types.ImportReferenceJobItem, omics@v1.49.5 types.go) -- narrower than GetReferenceImportJobOutput: no sources.
type ReferenceMetadata ¶
type ReferenceMetadata struct {
CreationTime time.Time `json:"creationTime"`
UpdateTime time.Time `json:"updateTime"`
Files map[string]any `json:"files,omitempty"`
Tags map[string]string `json:"tags"`
Arn string `json:"arn"`
ID string `json:"id"`
ReferenceStoreID string `json:"referenceStoreId"`
Name string `json:"name"`
Description string `json:"description"`
Status string `json:"status"`
MD5 string `json:"md5"`
}
ReferenceMetadata holds metadata for a genomic reference.
type ReferenceStore ¶
type ReferenceStore struct {
CreationTime time.Time `json:"creationTime"`
SseConfig map[string]any `json:"sseConfig,omitempty"`
S3Access map[string]any `json:"s3Access,omitempty"`
Tags map[string]string `json:"tags"`
Arn string `json:"arn"`
ID string `json:"id"`
Name string `json:"name"`
Description string `json:"description"`
}
ReferenceStore represents an HealthOmics reference store.
type ReferenceStoreFilter ¶
type ReferenceStoreFilter struct {
Name string
// contains filtered or unexported fields
}
ReferenceStoreFilter is filter criteria for listing reference stores.
type ReferenceSummary ¶
type ReferenceSummary struct {
CreationTime time.Time `json:"creationTime"`
UpdateTime time.Time `json:"updateTime"`
Arn string `json:"arn"`
ID string `json:"id"`
ReferenceStoreID string `json:"referenceStoreId"`
Name string `json:"name,omitempty"`
Description string `json:"description,omitempty"`
Status string `json:"status,omitempty"`
MD5 string `json:"md5"`
}
ReferenceSummary is the real ListReferencesOutput element shape (types.ReferenceListItem, omics@v1.49.5 types.go) -- narrower than GetReferenceMetadataOutput: no files or tags.
type Run ¶
type Run struct {
Priority *int32 `json:"priority,omitempty"`
EngineSettings any `json:"engineSettings,omitempty"`
StartTime *time.Time `json:"startTime,omitempty"`
StopTime *time.Time `json:"stopTime,omitempty"`
StorageCapacity *int `json:"storageCapacity,omitempty"`
CreationTime time.Time `json:"creationTime"`
Configuration *ConfigurationDetails `json:"configuration,omitempty"`
Tags map[string]string `json:"tags"`
Params map[string]any `json:"parameters"`
Arn string `json:"arn"`
ID string `json:"id"`
Name string `json:"name"`
WorkflowID string `json:"workflowId"`
RoleARN string `json:"roleArn"`
RunGroupID string `json:"runGroupId,omitempty"`
// RunBatchID is serialized as "batchId" (real GetRunOutput/RunListItem
// wire key -- confirmed against the SDK deserializer; there is no real
// StartRunInput field to set this, it's populated internally by
// DeleteRunsInBatch/ListRunsInBatch's caller association).
RunBatchID string `json:"batchId,omitempty"`
// RunSettingID mirrors the batch caller's InlineSetting.RunSettingId (real
// StartRunBatch request field, see types.InlineSetting) so ListRunsInBatch can map
// each created run back to the caller-supplied per-run configuration it came from.
// Empty for runs started via plain StartRun (there is no such field on that op).
RunSettingID string `json:"runSettingId,omitempty"`
NetworkingMode string `json:"networkingMode,omitempty"`
RunOutputURI string `json:"runOutputUri,omitempty"`
// CacheID/CacheBehavior associate this run with a RunCache
// (CreateRunCache/GetRunCache). CacheBehavior defaults to the referenced
// cache's own CacheBehavior when a CacheID is given and this field is
// omitted (real StartRunInput.CacheBehavior: "You had set the default
// value when you created the cache").
CacheID string `json:"cacheId,omitempty"`
CacheBehavior string `json:"cacheBehavior,omitempty"`
// RetentionMode/ScratchStorageMode/StorageType/WorkflowType are stored
// and echoed as documented defaults; this backend does not implement
// RetentionMode=REMOVE's automatic eviction of old runs (it already
// never auto-removes runs, which is what RETAIN, the default, already
// describes) or WorkflowType=READY2RUN's public workflow catalog (only
// PRIVATE workflows -- this backend's own workflow store -- exist here).
RetentionMode string `json:"retentionMode,omitempty"`
ScratchStorageMode string `json:"scratchStorageMode,omitempty"`
StorageType string `json:"storageType,omitempty"`
WorkflowType string `json:"workflowType,omitempty"`
WorkflowVersionName string `json:"workflowVersionName,omitempty"`
LogLevel string `json:"logLevel,omitempty"`
WorkflowOwnerID string `json:"workflowOwnerId,omitempty"`
UUID string `json:"uuid,omitempty"`
Status string `json:"status"`
// contains filtered or unexported fields
}
Run represents an HealthOmics workflow run.
type RunBatch ¶
type RunBatch struct {
Defaults *DefaultRunSetting `json:"defaultRunSetting,omitempty"`
CreationTime time.Time `json:"creationTime"`
SubmittedTime time.Time `json:"submittedTime,omitzero"`
ProcessedTime time.Time `json:"processedTime,omitzero"`
Tags map[string]string `json:"tags"`
Arn string `json:"arn"`
ID string `json:"id"`
UUID string `json:"uuid"`
Name string `json:"name,omitempty"`
WorkflowID string `json:"workflowId"`
RoleARN string `json:"roleArn"`
RunGroupID string `json:"runGroupId,omitempty"`
OutputURI string `json:"outputUri,omitempty"`
Status string `json:"status"`
// TotalRuns is the number of constituent runs requested at submission time
// (len(InlineSettings)). SubmissionSuccessCount/SubmissionFailureCount and
// DeletedRunCount are one-time/monotonic outcomes of synchronous events
// (submission at StartRunBatch, deletion at DeleteRunsInBatch) and are stored
// directly rather than derived, since the Run rows they summarize either never
// existed (failed submissions) or are removed entirely (deleted runs) -- there is
// nothing left to recompute them from later. The remaining RunSummary counts
// (pending/running/completed/cancelled/failed) change as runs progress and are
// computed live from surviving Run rows by summarizeRunBatchLocked instead.
TotalRuns int32
SubmissionSuccessCount int32
SubmissionFailureCount int32
DeletedRunCount int32
}
RunBatch represents an HealthOmics run batch (real GetBatchOutput shape -- RunSummary/SubmissionSummary/TotalRuns are NOT stored here; they are computed live from the batch's constituent Run records by summarizeRunBatchLocked, since this backend creates/completes them synchronously and a stored, independently-updated counter would drift from the real Run rows it's meant to summarize).
type RunBatchFilter ¶ added in v1.2.0
RunBatchFilter is filter criteria for listing run batches (ListBatch).
type RunBatchSummary ¶ added in v1.3.1
type RunBatchSummary struct {
PendingRunCount int32
RunningRunCount int32
CompletedRunCount int32
CancelledRunCount int32
FailedRunCount int32
}
RunBatchSummary is the RunSummary breakdown (real types.RunSummary) computed live from a batch's surviving constituent Run rows.
type RunCache ¶
type RunCache struct {
CreationTime time.Time `json:"creationTime"`
Tags map[string]string `json:"tags"`
Arn string `json:"arn"`
ID string `json:"id"`
Name string `json:"name"`
Description string `json:"description,omitempty"`
CacheBucketOwnerID string `json:"cacheBucketOwnerId,omitempty"`
CacheS3Location string `json:"cacheS3Uri"`
Status string `json:"status"`
// CacheBehavior is the cache's own documented default behavior for runs
// that use it and don't override CacheBehavior on StartRun (real
// CreateRunCacheInput.CacheBehavior: "If you don't specify a value, the
// default behavior is CACHE_ON_FAILURE").
CacheBehavior string `json:"cacheBehavior,omitempty"`
}
RunCache represents an HealthOmics run cache.
type RunCacheSummary ¶
type RunCacheSummary struct {
CreationTime time.Time `json:"creationTime"`
Arn string `json:"arn"`
ID string `json:"id"`
Name string `json:"name,omitempty"`
CacheS3Location string `json:"cacheS3Uri,omitempty"`
Status string `json:"status"`
CacheBehavior string `json:"cacheBehavior,omitempty"`
}
RunCacheSummary is the real ListRunCachesOutput element shape (types.RunCacheListItem, omics@v1.49.5 types.go) -- narrower than GetRunCacheOutput: no description or tags.
type RunGroup ¶
type RunGroup struct {
CreationTime time.Time `json:"creationTime"`
Tags map[string]string `json:"tags"`
Arn string `json:"arn"`
ID string `json:"id"`
Name string `json:"name"`
MaxCPUs int `json:"maxCpus"`
MaxRuns int `json:"maxRuns"`
MaxDuration int `json:"maxDuration"`
MaxGPUs int `json:"maxGpus"`
}
RunGroup represents an HealthOmics run group.
type RunGroupFilter ¶ added in v1.2.0
type RunGroupFilter struct {
Name string
}
RunGroupFilter is filter criteria for listing run groups.
type RunGroupSummary ¶
type RunGroupSummary struct {
CreationTime time.Time `json:"creationTime"`
Arn string `json:"arn"`
ID string `json:"id"`
Name string `json:"name,omitempty"`
MaxCPUs int `json:"maxCpus,omitempty"`
MaxRuns int `json:"maxRuns,omitempty"`
MaxDuration int `json:"maxDuration,omitempty"`
MaxGPUs int `json:"maxGpus,omitempty"`
}
RunGroupSummary is the real ListRunGroupsOutput element shape (types.RunGroupListItem, omics@v1.49.5 types.go) -- narrower than GetRunGroupOutput: no tags.
type RunInBatchSummary ¶
type RunInBatchSummary struct {
RunArn string `json:"runArn,omitempty"`
RunID string `json:"runId,omitempty"`
RunUUID string `json:"runInternalUuid,omitempty"`
RunSettingID string `json:"runSettingId,omitempty"`
SubmissionStatus string `json:"submissionStatus,omitempty"`
}
RunInBatchSummary is the real ListRunsInBatchOutput element shape (types.RunBatchListItem, omics@v1.49.5 types.go) -- a much narrower shape than GetRunOutput/Run: only the run's identity plus its batch submission outcome. Every run in this backend's ListRunsInBatch result set was submitted successfully (StartRunBatch never creates a Run row for a failed submission -- see RunBatch.SubmissionFailureCount's doc comment), so SubmissionStatus is always the real SUCCESS enum value and the failure fields stay empty.
type RunSummary ¶
type RunSummary struct {
Priority *int32 `json:"priority,omitempty"`
StartTime *time.Time `json:"startTime,omitempty"`
StopTime *time.Time `json:"stopTime,omitempty"`
StorageCapacity *int `json:"storageCapacity,omitempty"`
CreationTime time.Time `json:"creationTime"`
Arn string `json:"arn"`
ID string `json:"id"`
Name string `json:"name,omitempty"`
WorkflowID string `json:"workflowId,omitempty"`
WorkflowName string `json:"workflowName,omitempty"`
WorkflowVersionName string `json:"workflowVersionName,omitempty"`
RunBatchID string `json:"batchId,omitempty"`
StorageType string `json:"storageType,omitempty"`
Status string `json:"status"`
}
RunSummary is the real ListRunsOutput element shape (types.RunListItem, omics@v1.49.5 types.go) -- narrower than GetRunOutput: no configuration, tags, parameters, roleArn, runGroupId, runSettingId, networkingMode, runOutputUri, cacheId, cacheBehavior, retentionMode, scratchStorageMode, workflowType or uuid.
WorkflowName is a real RunListItem-only member -- GetRunOutput has no such field -- resolved from the run's stored WorkflowID by the caller (see newRunSummary).
type RunTask ¶
type RunTask struct {
StartTime *time.Time `json:"startTime,omitempty"`
StopTime *time.Time `json:"stopTime,omitempty"`
CreationTime time.Time `json:"creationTime"`
TaskID string `json:"taskId"`
RunID string `json:"runId"`
Name string `json:"name"`
Status string `json:"status"`
UUID string `json:"uuid,omitempty"`
CPUs int `json:"cpus"`
Memory int `json:"memory"`
// contains filtered or unexported fields
}
RunTask represents a task within a workflow run.
type RunTaskFilter ¶ added in v1.2.0
type RunTaskFilter struct {
Status string
}
RunTaskFilter is filter criteria for listing run tasks.
type RunTaskSummary ¶
type RunTaskSummary struct {
StartTime *time.Time `json:"startTime,omitempty"`
StopTime *time.Time `json:"stopTime,omitempty"`
CreationTime time.Time `json:"creationTime"`
TaskID string `json:"taskId"`
Name string `json:"name"`
Status string `json:"status"`
UUID string `json:"uuid,omitempty"`
CPUs int `json:"cpus"`
Memory int `json:"memory"`
}
RunTaskSummary is the real ListRunTasksOutput element shape (types.TaskListItem, omics@v1.49.5 types.go) -- narrower than GetRunTaskOutput: no runId, failureReason, imageDetails, logStream or statusMessage.
cacheHit/cacheS3Uri/gpus/instanceType are real TaskListItem members this backend has no source for (no cache-execution engine, no per-task compute type modeling -- every task is the same synchronous stub) -- see PARITY.md items_still_open.
type RunsInBatchFilter ¶ added in v1.2.0
RunsInBatchFilter is filter criteria for listing the runs within a batch (ListRunsInBatch).
type S3AccessPolicy ¶
type S3AccessPolicy struct {
UpdateTime *time.Time `json:"updateTime,omitempty"`
S3AccessPointARN string `json:"s3AccessPointArn"`
Policy string `json:"s3AccessPolicy"`
StoreID string `json:"storeId,omitempty"`
StoreType string `json:"storeType,omitempty"`
}
S3AccessPolicy holds an S3 access policy for HealthOmics. S3AccessPolicy holds an S3 access policy for HealthOmics. Policy is serialized as "s3AccessPolicy" -- the real GetS3AccessPolicyOutput wire key (confirmed against the SDK deserializer); this struct previously used the key "policy", which real SDK clients never populate, so GetS3AccessPolicy responses were silently missing their policy document on the wire.
type SequenceStore ¶
type SequenceStore struct {
SseConfig map[string]any `json:"sseConfig,omitempty"`
S3Access map[string]any `json:"s3Access,omitempty"`
Tags map[string]string `json:"tags"`
CreationTime time.Time `json:"creationTime"`
UpdateTime time.Time `json:"updateTime"`
Arn string `json:"arn"`
ID string `json:"id"`
Name string `json:"name"`
Description string `json:"description"`
ETagAlgorithm string `json:"eTagAlgorithm,omitempty"`
FallbackLocation string `json:"fallbackLocation,omitempty"`
Status string `json:"status"`
PropagatedSetLevelTags []string `json:"propagatedSetLevelTags,omitempty"`
}
SequenceStore represents an HealthOmics sequence store.
type SequenceStoreFilter ¶
type SequenceStoreFilter struct {
UpdatedAfter *time.Time `json:"updatedAfter"`
UpdatedBefore *time.Time `json:"updatedBefore"`
Name string
Status string
// contains filtered or unexported fields
}
SequenceStoreFilter is filter criteria for listing sequence stores.
type Share ¶
type Share struct {
// contains filtered or unexported fields
}
Share represents an HealthOmics resource share.
type ShareFilter ¶ added in v1.3.1
type ShareFilter struct {
}
ShareFilter is filter criteria for ListShares (real AWS types.Filter, omics@v1.49.5 types/types.go:678: resourceArns/status/type are each an "any of" list).
type StartRunInput ¶
type StartRunInput struct {
StorageCapacity *int
Priority *int32
EngineSettings any
LogLevel string
WorkflowOwnerID string
Tags map[string]string
Params map[string]any
CacheID string
RetentionMode string
RunSettingID string
NetworkingMode string
RunOutputURI string
WorkflowID string
CacheBehavior string
RunBatchID string
ScratchStorageMode string
StorageType string
WorkflowType string
WorkflowVersionName string
RunGroupID string
Name string
RoleARN string
}
StartRunInput holds input for StartRun (real StartRunInput fields this backend models). RunBatchID/RunSettingID have no real StartRunInput counterpart -- they're set internally by StartRunBatch's constituent-run creation, never by a direct StartRun caller.
type StorageBackend ¶
type StorageBackend interface {
// ReferenceStore
CreateReferenceStore(
name, description string, sseConfig map[string]any, tags map[string]string,
) (*ReferenceStore, error)
DeleteReferenceStore(id string) error
GetReferenceStore(id string) (*ReferenceStore, error)
ListReferenceStores(
filter *ReferenceStoreFilter,
maxResults int,
nextToken string,
) ([]*ReferenceStore, string, error)
// Reference
DeleteReference(referenceStoreID, id string) error
GetReferenceMetadata(referenceStoreID, id string) (*ReferenceMetadata, error)
ListReferences(
referenceStoreID string,
filter *ReferenceFilter,
maxResults int,
nextToken string,
) ([]*ReferenceMetadata, string, error)
StartReferenceImportJob(
referenceStoreID, roleARN string,
sources []ReferenceImportJobSource,
) (*ReferenceImportJob, error)
GetReferenceImportJob(referenceStoreID, jobID string) (*ReferenceImportJob, error)
ListReferenceImportJobs(
referenceStoreID string,
filter *ReferenceImportJobFilter,
maxResults int,
nextToken string,
) ([]*ReferenceImportJob, string, error)
// SequenceStore
CreateSequenceStore(in CreateSequenceStoreInput) (*SequenceStore, error)
DeleteSequenceStore(id string) error
GetSequenceStore(id string) (*SequenceStore, error)
ListSequenceStores(
filter *SequenceStoreFilter,
maxResults int,
nextToken string,
) ([]*SequenceStore, string, error)
UpdateSequenceStore(id string, in UpdateSequenceStoreInput) (*SequenceStore, error)
// ReadSet
BatchDeleteReadSet(sequenceStoreID string, ids []string) ([]ReadSetBatchError, error)
GetReadSetMetadata(sequenceStoreID, id string) (*ReadSetMetadata, error)
ListReadSets(
sequenceStoreID string,
filter *ReadSetFilter,
maxResults int,
nextToken string,
) ([]*ReadSetMetadata, string, error)
StartReadSetActivationJob(
sequenceStoreID string,
sources []ReadSetActivationJobSource,
) (*ReadSetActivationJob, error)
GetReadSetActivationJob(sequenceStoreID, jobID string) (*ReadSetActivationJob, error)
ListReadSetActivationJobs(
sequenceStoreID string,
filter *ReadSetJobFilter,
maxResults int,
nextToken string,
) ([]*ReadSetActivationJob, string, error)
StartReadSetExportJob(
sequenceStoreID, destination string,
sources []ReadSetExportJobSource,
) (*ReadSetExportJob, error)
GetReadSetExportJob(sequenceStoreID, jobID string) (*ReadSetExportJob, error)
ListReadSetExportJobs(
sequenceStoreID string,
filter *ReadSetJobFilter,
maxResults int,
nextToken string,
) ([]*ReadSetExportJob, string, error)
StartReadSetImportJob(
sequenceStoreID, roleARN string,
sources []ReadSetImportJobSource,
) (*ReadSetImportJob, error)
GetReadSetImportJob(sequenceStoreID, jobID string) (*ReadSetImportJob, error)
ListReadSetImportJobs(
sequenceStoreID string,
filter *ReadSetJobFilter,
maxResults int,
nextToken string,
) ([]*ReadSetImportJob, string, error)
// Multipart ReadSet Upload
CreateMultipartReadSetUpload(
sequenceStoreID, name, sourceFileType, sampleID, subjectID, generatedFrom, referenceARN, description string,
tags map[string]string,
) (*MultipartReadSetUpload, error)
AbortMultipartReadSetUpload(sequenceStoreID, uploadID string) error
CompleteMultipartReadSetUpload(sequenceStoreID, uploadID string) (*ReadSetMetadata, error)
ListMultipartReadSetUploads(
sequenceStoreID string,
maxResults int,
nextToken string,
) ([]*MultipartReadSetUpload, string, error)
ListReadSetUploadParts(
sequenceStoreID, uploadID, partSource string,
window *createdWindow,
maxResults int,
nextToken string,
) ([]*ReadSetUploadPart, string, error)
UploadReadSetPart(
sequenceStoreID, uploadID string,
partNumber int,
partSource string,
data []byte,
) (string, error)
GetReadSetBytes(sequenceStoreID, id string) ([]byte, error)
GetReferenceBytes(referenceStoreID, id string) ([]byte, error)
// RunGroup
CreateRunGroup(
name string,
maxCPUs, maxRuns, maxDuration int,
maxGPUs int,
tags map[string]string,
) (*RunGroup, error)
DeleteRunGroup(id string) error
GetRunGroup(id string) (*RunGroup, error)
ListRunGroups(filter *RunGroupFilter, maxResults int, nextToken string) ([]*RunGroup, string, error)
UpdateRunGroup(
id, name string,
maxCPUs, maxRuns, maxDuration int,
maxGPUs int,
) (*RunGroup, error)
// Run
StartRun(input StartRunInput) (*Run, error)
CancelRun(id string) error
DeleteRun(id string) error
GetRun(id string) (*Run, error)
ListRuns(filter *RunFilter, maxResults int, nextToken string) ([]*Run, string, error)
GetRunTask(runID, taskID string) (*RunTask, error)
ListRunTasks(
runID string,
filter *RunTaskFilter,
maxResults int,
nextToken string,
) ([]*RunTask, string, error)
// Workflow
CreateWorkflow(input CreateWorkflowInput) (*Workflow, error)
DeleteWorkflow(id string) error
GetWorkflow(id string) (*Workflow, error)
ListWorkflows(filter *WorkflowFilter, maxResults int, nextToken string) ([]*Workflow, string, error)
UpdateWorkflow(id, name, description, storageType, readmeMarkdown string, storageCapacity *int) error
// AnnotationStore
CreateAnnotationStore(
name, description, storeFormat, versionName string,
reference, sseConfig, storeOptions map[string]any,
tags map[string]string,
) (*AnnotationStore, error)
DeleteAnnotationStore(name string) (*AnnotationStore, error)
GetAnnotationStore(name string) (*AnnotationStore, error)
ListAnnotationStores(
filter *StoreStatusFilter,
ids []string,
maxResults int,
nextToken string,
) ([]*AnnotationStore, string, error)
UpdateAnnotationStore(name string, description *string) (*AnnotationStore, error)
StartAnnotationImportJob(
destinationName, roleARN string,
items []AnnotationImportItem,
annotationFields map[string]string,
formatOptions map[string]any,
runLeftNormalization bool,
versionName string,
) (*AnnotationImportJob, error)
GetAnnotationImportJob(jobID string) (*AnnotationImportJob, error)
ListAnnotationImportJobs(
filter *ImportJobFilter,
ids []string,
maxResults int,
nextToken string,
) ([]*AnnotationImportJob, string, error)
CancelAnnotationImportJob(jobID string) error
// AnnotationStoreVersion
CreateAnnotationStoreVersion(
name, versionName, description string,
versionOptions map[string]any,
tags map[string]string,
) (*AnnotationStoreVersion, error)
DeleteAnnotationStoreVersions(name string, versionNames []string) ([]VersionDeleteError, error)
GetAnnotationStoreVersion(name, versionName string) (*AnnotationStoreVersion, error)
ListAnnotationStoreVersions(
name string,
filter *StoreStatusFilter,
maxResults int,
nextToken string,
) ([]*AnnotationStoreVersion, string, error)
UpdateAnnotationStoreVersion(
name, versionName string, description *string,
) (*AnnotationStoreVersion, error)
// VariantStore
CreateVariantStore(
name, description string, reference, sseConfig map[string]any, tags map[string]string,
) (*VariantStore, error)
DeleteVariantStore(name string) (*VariantStore, error)
GetVariantStore(name string) (*VariantStore, error)
ListVariantStores(
filter *StoreStatusFilter,
ids []string,
maxResults int,
nextToken string,
) ([]*VariantStore, string, error)
UpdateVariantStore(name string, description *string) (*VariantStore, error)
StartVariantImportJob(
destinationName, roleARN string,
items []VariantImportItem,
annotationFields map[string]string,
runLeftNormalization bool,
) (*VariantImportJob, error)
GetVariantImportJob(jobID string) (*VariantImportJob, error)
ListVariantImportJobs(
filter *ImportJobFilter,
ids []string,
maxResults int,
nextToken string,
) ([]*VariantImportJob, string, error)
CancelVariantImportJob(jobID string) error
// Share
resourceOwner string,
filter *ShareFilter,
maxResults int,
nextToken string,
) ([]*Share, string, error)
// RunCache
CreateRunCache(
name, description, cacheS3Location, cacheBehavior, cacheBucketOwnerID string, tags map[string]string,
) (*RunCache, error)
DeleteRunCache(id string) error
GetRunCache(id string) (*RunCache, error)
ListRunCaches(maxResults int, nextToken string) ([]*RunCache, string, error)
UpdateRunCache(id, name, description, cacheBehavior string) error
// RunBatch
StartRunBatch(
batchName string, def DefaultRunSetting, inlineSettings []InlineRunSetting, tags map[string]string,
) (*RunBatch, error)
CancelRunBatch(id string) error
DeleteRunBatch(id string) error
GetRunBatch(id string) (*RunBatch, error)
GetRunBatchSummary(id string) (RunBatchSummary, error)
ListRunBatches(filter *RunBatchFilter, maxResults int, nextToken string) ([]*RunBatch, string, error)
DeleteRunsInBatch(batchID string) error
ListRunsInBatch(
batchID string,
filter *RunsInBatchFilter,
maxResults int,
nextToken string,
) ([]*Run, string, error)
// Configuration
CreateConfiguration(
name, description string, runConfigurations *ConfigurationRunConfigurations, tags map[string]string,
) (*Configuration, error)
DeleteConfiguration(name string) error
GetConfiguration(name string) (*Configuration, error)
ListConfigurations(maxResults int, nextToken string) ([]*Configuration, string, error)
// WorkflowVersion
CreateWorkflowVersion(input CreateWorkflowVersionInput) (*WorkflowVersion, error)
DeleteWorkflowVersion(workflowID, versionName string) error
GetWorkflowVersion(workflowID, versionName string) (*WorkflowVersion, error)
ListWorkflowVersions(
workflowID string,
filter *WorkflowVersionFilter,
maxResults int,
nextToken string,
) ([]*WorkflowVersion, string, error)
UpdateWorkflowVersion(
workflowID, versionName, description, storageType, readmeMarkdown string, storageCapacity *int,
) error
// S3 Access Policy
PutS3AccessPolicy(s3AccessPointARN, policy string) error
GetS3AccessPolicy(s3AccessPointARN string) (*S3AccessPolicy, error)
DeleteS3AccessPolicy(s3AccessPointARN string) error
// Tags
TagResource(resourceARN string, tags map[string]string) error
UntagResource(resourceARN string, tagKeys []string) error
ListTagsForResource(resourceARN string) (map[string]string, error)
AccountID() string
Region() string
Reset()
Snapshot(ctx context.Context) []byte
Restore(ctx context.Context, data []byte) error
}
StorageBackend is the interface for HealthOmics storage operations.
type StoreStatusFilter ¶ added in v1.3.1
type StoreStatusFilter struct {
Status string
}
StoreStatusFilter is filter criteria shared by ListAnnotationStores, ListVariantStores, and ListAnnotationStoreVersions (status only; real AWS ListAnnotationStoresFilter/ListVariantStoresFilter/ ListAnnotationStoreVersionsFilter, omics@v1.49.5 types/types.go:987,1018,997).
type UpdateSequenceStoreInput ¶
type UpdateSequenceStoreInput struct {
FallbackLocation *string
AccessLogLocation *string
Name *string
Description *string
PropagatedSetLevelTags []string
}
UpdateSequenceStoreInput holds UpdateSequenceStore's optional members; nil means unchanged.
type VariantImportItem ¶
type VariantImportItem struct {
Source string `json:"source"`
}
VariantImportItem is a source item for a variant import job -- real types.VariantImportItemSource (types.go:2078-2086, omics@v1.49.5): Source only. This is StartVariantImportJobInput.Items' element shape, not the response shape GetVariantImportJobOutput.Items uses (see VariantImportItemDetail).
type VariantImportItemDetail ¶ added in v1.3.1
type VariantImportItemDetail struct {
JobStatus string `json:"jobStatus"`
Source string `json:"source"`
StatusMessage string `json:"statusMessage,omitempty"`
}
VariantImportItemDetail is the real GetVariantImportJobOutput.Items element, types.VariantImportItemDetail (types.go:2058-2071): JobStatus and Source are required, StatusMessage is optional. JobStatus is set once from the job's own Status at Start time (see variantImportItemDetails, variant_stores.go): this backend completes import jobs synchronously in one step, so every item reaches its final status in that same step. StatusMessage is always empty, same convention as the job-level StatusMessage below.
gopherstack-7s8r assumed ListVariantImportJobs also returns this shape; it does not -- the real List element (VariantImportJobItem, types.go:2090-2132) has no Items field at all. See VariantImportJobSummary.
type VariantImportJob ¶
type VariantImportJob struct {
CreationTime time.Time `json:"creationTime"`
CompletionTime *time.Time `json:"completionTime,omitempty"`
UpdateTime time.Time `json:"updateTime"`
AnnotationFields map[string]string `json:"annotationFields,omitempty"`
ID string `json:"id"`
DestinationName string `json:"destinationName"`
RoleARN string `json:"roleArn"`
Status string `json:"status"`
StatusMessage string `json:"statusMessage"`
Items []VariantImportItemDetail `json:"items"`
RunLeftNormalization bool `json:"runLeftNormalization,omitempty"`
}
VariantImportJob is the real GetVariantImportJobOutput shape (deserializers.go:11383-11444) and this backend's persisted job record.
ID is tagged "id" -- the real GetVariantImportJobOutput/ VariantImportJobItem wire key (deserializers.go:11383) -- which is right for Get/List but wrong for StartVariantImportJobOutput, whose only field is "jobId" (deserializers.go:18893); the start handler builds its own {"jobId": ...} response instead of marshaling this struct. ListVariantImportJobs doesn't marshal this struct either -- see VariantImportJobSummary. Unlike annotation import jobs, variant import jobs have no FormatOptions or VersionName field anywhere in the real API (StartVariantImportJobInput/GetVariantImportJobOutput both lack them) -- RunLeftNormalization/StatusMessage/UpdateTime are the real gaps here (deserializers.go:11406-11444), same schema-gap class as the annotation job. StatusMessage is always empty: this backend completes import jobs synchronously with no error state to describe.
type VariantImportJobSummary ¶ added in v1.3.1
type VariantImportJobSummary struct {
CreationTime time.Time `json:"creationTime"`
CompletionTime *time.Time `json:"completionTime,omitempty"`
UpdateTime time.Time `json:"updateTime"`
AnnotationFields map[string]string `json:"annotationFields,omitempty"`
ID string `json:"id"`
DestinationName string `json:"destinationName"`
RoleARN string `json:"roleArn"`
Status string `json:"status"`
RunLeftNormalization bool `json:"runLeftNormalization,omitempty"`
}
VariantImportJobSummary is the real ListVariantImportJobsOutput element, types.VariantImportJobItem (types.go:2090-2132). Deliberately narrower than VariantImportJob/GetVariantImportJobOutput: no Items or StatusMessage.
type VariantStore ¶
type VariantStore struct {
CreationTime time.Time `json:"creationTime"`
UpdateTime time.Time `json:"updateTime"`
Reference map[string]any `json:"reference,omitempty"`
// SseConfig is real GetVariantStoreOutput/VariantStoreItem's required
// "sseConfig" (types.go) -- previously not a field on this struct at
// all, the same "member with no struct field" class as
// AnnotationImportJob's pre-fix FormatOptions gap. CreateVariantStore
// now threads the real (optional) CreateVariantStoreInput.SseConfig
// through, mirroring AnnotationStore's existing convention
// (gopherstack-r80d batch 7).
SseConfig map[string]any `json:"sseConfig,omitempty"`
Tags map[string]string `json:"tags"`
StoreArn string `json:"storeArn"`
ID string `json:"id"`
Name string `json:"name"`
Description string `json:"description"`
Status string `json:"status"`
// StatusMessage is real GetVariantStoreOutput's required
// "statusMessage" -- previously absent from this struct entirely, the
// same gap fixed for import jobs in c41d36cb6 but missed here. Always
// empty: this backend transitions store status synchronously with no
// error state to describe.
StatusMessage string `json:"statusMessage"`
// StoreSizeBytes is real GetVariantStoreOutput's required
// "storeSizeBytes" (deserializers.go:11682). This backend does not track
// actual stored bytes -- always 0 rather than a fabricated number.
StoreSizeBytes int64 `json:"storeSizeBytes"`
// contains filtered or unexported fields
}
VariantStore represents an HealthOmics variant store.
StoreArn is real GetVariantStoreOutput/VariantStoreItem wire key "storeArn" (omics@v1.49.5 deserializers.go:11673) -- this struct previously tagged it "arn", a key no real Get/ListVariantStores deserializer reads.
type VariantStoreSummary ¶ added in v1.3.1
type VariantStoreSummary struct {
CreationTime time.Time `json:"creationTime"`
UpdateTime time.Time `json:"updateTime"`
Reference map[string]any `json:"reference,omitempty"`
SseConfig map[string]any `json:"sseConfig,omitempty"`
StoreArn string `json:"storeArn"`
ID string `json:"id"`
Name string `json:"name"`
Description string `json:"description"`
Status string `json:"status"`
StatusMessage string `json:"statusMessage"`
StoreSizeBytes int64 `json:"storeSizeBytes"`
}
VariantStoreSummary is the real ListVariantStoresOutput element shape (types.VariantStoreItem, omics@v1.49.5 types.go) -- narrower than GetVariantStoreOutput: no tags. ListVariantStores previously marshaled VariantStore directly, leaking it (gopherstack-dv4s).
SseConfig IS a real required VariantStoreItem member too (types.go), same as GetVariantStoreOutput -- fixed here alongside Get (gopherstack-r80d batch 7); this type's own doc comment previously called it "the opposite bug class from the one this pass targets", but it is exactly gopherstack-r80d's "member with no struct field at all" class.
type VersionDeleteError ¶
type VersionDeleteError struct {
VersionName string `json:"versionName"`
Code string `json:"code"`
Message string `json:"message"`
}
VersionDeleteError is an error item from a version delete operation.
type Workflow ¶
type Workflow struct {
CreationTime time.Time `json:"creationTime"`
Tags map[string]string `json:"tags"`
// ContainerRegistryMap is echoed as given; no image pulls happen here.
ContainerRegistryMap map[string]any `json:"containerRegistryMap,omitempty"`
Accelerators string `json:"accelerators,omitempty"`
Main string `json:"main,omitempty"`
// ParameterTemplate is stored/echoed only when explicitly supplied on
// CreateWorkflow -- when blank, real AWS auto-parses it from the
// workflow definition file, which this backend cannot honestly
// simulate without parsing a real workflow archive (same restraint as
// Engine's auto-detection, see PARITY.md).
ParameterTemplate map[string]WorkflowParameter `json:"parameterTemplate,omitempty"`
StorageCapacity *int `json:"storageCapacity,omitempty"`
Arn string `json:"arn"`
ID string `json:"id"`
Name string `json:"name"`
Description string `json:"description"`
Engine string `json:"engine"`
Type string `json:"type,omitempty"`
StorageType string `json:"storageType,omitempty"`
UUID string `json:"uuid,omitempty"`
Status string `json:"status"`
Readme string `json:"readme,omitempty"`
ReadmePath string `json:"readmePath,omitempty"`
// contains filtered or unexported fields
}
Workflow represents an HealthOmics workflow.
type WorkflowFilter ¶ added in v1.2.0
WorkflowFilter is filter criteria for listing workflows.
type WorkflowParameter ¶
type WorkflowParameter struct {
Description string `json:"description,omitempty"`
Optional bool `json:"optional,omitempty"`
}
WorkflowParameter describes one entry of a workflow's ParameterTemplate (real types.WorkflowParameter).
type WorkflowSummary ¶
type WorkflowSummary struct {
CreationTime time.Time `json:"creationTime"`
Arn string `json:"arn"`
ID string `json:"id"`
Name string `json:"name,omitempty"`
Status string `json:"status"`
Type string `json:"type,omitempty"`
}
WorkflowSummary is the real ListWorkflowsOutput element shape (types.WorkflowListItem, omics@v1.49.5 types.go) -- narrower than GetWorkflowOutput: no tags, parameterTemplate, storageCapacity, description, engine, storageType or uuid.
digest/metadata are real WorkflowListItem members this backend has no source for (no definition-content hashing, no metadata input anywhere on CreateWorkflow) -- see PARITY.md items_still_open.
type WorkflowVersion ¶
type WorkflowVersion struct {
CreationTime time.Time `json:"creationTime"`
ContainerRegistryMap map[string]any `json:"containerRegistryMap,omitempty"`
Accelerators string `json:"accelerators,omitempty"`
Main string `json:"main,omitempty"`
UUID string `json:"uuid,omitempty"`
Tags map[string]string `json:"tags"`
ParameterTemplate map[string]WorkflowParameter `json:"parameterTemplate,omitempty"`
StorageCapacity *int `json:"storageCapacity,omitempty"`
Arn string `json:"arn"`
WorkflowID string `json:"workflowId"`
VersionName string `json:"versionName"`
Description string `json:"description"`
Engine string `json:"engine,omitempty"`
Type string `json:"type,omitempty"`
StorageType string `json:"storageType,omitempty"`
Status string `json:"status"`
Readme string `json:"readme,omitempty"`
ReadmePath string `json:"readmePath,omitempty"`
BucketOwnerID string `json:"workflowBucketOwnerId,omitempty"`
// contains filtered or unexported fields
}
WorkflowVersion represents a version of a workflow.
type WorkflowVersionFilter ¶ added in v1.2.0
type WorkflowVersionFilter struct {
Type string
}
WorkflowVersionFilter is filter criteria for listing workflow versions.
type WorkflowVersionSummary ¶
type WorkflowVersionSummary struct {
CreationTime time.Time `json:"creationTime"`
Arn string `json:"arn"`
WorkflowID string `json:"workflowId"`
VersionName string `json:"versionName"`
Description string `json:"description,omitempty"`
Status string `json:"status"`
Type string `json:"type,omitempty"`
}
WorkflowVersionSummary is the real ListWorkflowVersionsOutput element shape (types.WorkflowVersionListItem, omics@v1.49.5 types.go) -- narrower than GetWorkflowVersionOutput: no tags, parameterTemplate, storageCapacity, engine or storageType.
digest/metadata are real WorkflowVersionListItem members this backend has no source for -- see WorkflowSummary's doc comment and PARITY.md items_still_open.
Source Files
¶
- annotation_stores.go
- configurations.go
- handler.go
- handler_annotation_stores.go
- handler_configurations.go
- handler_read_sets.go
- handler_reference_stores.go
- handler_runs.go
- handler_sequence_stores.go
- handler_shares.go
- handler_tags.go
- handler_variant_stores.go
- handler_workflows.go
- idempotency.go
- interfaces.go
- list_filters.go
- models.go
- persistence.go
- provider.go
- read_sets.go
- reference_store_wire.go
- reference_stores.go
- regions.go
- routes.go
- runs.go
- sequence_store_wire.go
- sequence_stores.go
- shares.go
- store.go
- store_setup.go
- tags.go
- variant_stores.go
- workflows.go