Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
View Source
var ErrCandidateDisappeared = goerrors.New("candidate disappeared from disk!")
Functions ¶
func Launch ¶
func Launch(rc *butlerd.RequestContext, params butlerd.LaunchParams) (*butlerd.LaunchResult, error)
func RegisterLauncher ¶
func RegisterLauncher(strategy LaunchStrategy, launcher Launcher)
Types ¶
type LaunchStrategy ¶
type LaunchStrategy string
const ( LaunchStrategyUnknown LaunchStrategy = "" LaunchStrategyNative LaunchStrategy = "native" LaunchStrategyHTML LaunchStrategy = "html" LaunchStrategyURL LaunchStrategy = "url" LaunchStrategyShell LaunchStrategy = "shell" )
type Launcher ¶
type Launcher interface {
Do(params LauncherParams) error
}
type LauncherParams ¶
type LauncherParams struct { RequestContext *butlerd.RequestContext Ctx context.Context // If relative, it's relative to the WorkingDirectory FullTargetPath string // May be nil PeInfo *pelican.PeInfo // May be nil Candidate *dash.Candidate // May be nil AppManifest *butlerd.Manifest // May be nil Action *butlerd.Action // If true, enable sandbox Sandbox bool // Additional command-line arguments Args []string // Additional environment variables Env map[string]string PrereqsDir string ForcePrereqs bool Access *operate.GameAccess InstallFolder string Runtime *ox.Runtime SessionStarted func() // contains filtered or unexported fields }
func (*LauncherParams) GetInstallContainer ¶
func (lp *LauncherParams) GetInstallContainer() (*tlc.Container, error)
type StrategyResult ¶
type StrategyResult struct { Strategy LaunchStrategy FullTargetPath string Candidate *dash.Candidate }
func DetermineCandidateStrategy ¶
func DetermineCandidateStrategy(basePath string, candidate *dash.Candidate) (*StrategyResult, error)
func DetermineStrategy ¶
func (*StrategyResult) String ¶
func (sr *StrategyResult) String() string
Click to show internal directories.
Click to hide internal directories.