package
1.9.70
Repository: https://github.com/omegaup/quark.git
Documentation: pkg.go.dev

# Functions

CreateArchiveFromGit creates an archive that can be sent to a Runner as an Input from a git repository.
GetLibinteractiveVersion returns the version of the installed libinteractive jar.
GetRepositoryPath returns the path of a problem repository.
IsProblemSlow returns whether the problem at that particular commit is slow.
NewArtifactManager returns a new ArtifactManager.
NewCachedInputFactory returns a new CachedInputFactory.
NewContext returns a new Context where the configuration is read in a JSON format from the supplied io.Reader.
NewEphemeralRunManager returns a new EphemeralRunManager.
NewInflightMonitor returns a new InflightMonitor.
NewInputFactory returns a new InputFactory for the specified problem name and configuration.
NewQueueManager creates a new QueueManager.
NewRunInfo returns an empty RunInfo.
NewRunPostProcessor returns a new RunPostProcessor.

# Constants

DefaultQueueName is the default queue name.
QueueCount represents the total number of queues in the grader.
QueueEventTypeAbandoned represents when a run is abandoned due to too many retries.
QueueEventTypeManagerAdded represents when a run is added to the QueueManager.
QueueEventTypeManagerRemoved represents when a run is removed from the QueueManager.
QueueEventTypeQueueAdded represents when a run is added to a Queue.
QueueEventTypeQueueRemoved represents when a run is removed from a Qeuue.
QueueEventTypeRetried represents when a run is retried.
QueuePriorityEphemeral represents a QueuePriority with the lowest priority.
QueuePriorityHigh represents a QueuePriority with high priority.
QueuePriorityLow represents a QueuePriority with low priority.
QueuePriorityNormal represents a QueuePriority with normal priority.

# Structs

ArtifactManager is an abstraction around the filesystem.
A CachedInputFactory is a grader-specific CachedInputFactory.
A Context holds the state of the Grader.
EphemeralRunManager handles a queue of recently-submitted ephemeral runs.
A EphemeralRunRequest represents a client's request to run some code.
InflightMonitor manages all in-flight Runs (Runs that have been picked up by a runner) and tracks their state in case the runner becomes unresponsive.
InflightRun is a wrapper around a RunContext when it is handed off a queue and a runner has been assigned to it.
Input is a common.Input generated from a git repository that is then stored in a .tar.gz file that can be sent to a runner.
InputFactory is a common.InputFactory that can store specific versions of a problem's git repository into a .tar.gz file that can be easily shipped to runners.
Queue represents a RunContext queue with three discrete priorities.
QueueEvent represents an event that happens from the QueueManager's perspective.
QueueInfo has information about one queue.
QueueManager is an expvar-friendly manager for Queues.
RunContext is a wrapper around a RunInfo.
RunData represents the data of a single run.
RunInfo holds the necessary data of a Run, even after the RunContext is gone.
A RunPostProcessor broadcasts the events of runs that have been finished to all registered listeners.
RunWaitHandle allows waiting on the run to change state.
SubmissionsArtifacts is an object that allows interacting with submissions.

# Interfaces

Artifacts is an interface to interact with grader artifacts.

# Type aliases

QueueEventType represents the type of event that just occurred.
QueuePriority represents the relative priority of a queue with respect with other queues.