Documentation
¶
Index ¶
- Constants
- Variables
- func GetAccountPlanManagementURL() string
- type GoTaskRecipeExecutor
- func (re *GoTaskRecipeExecutor) Execute(ctx context.Context, r types.OpenInstallationRecipe, ...) (retErr error)
- func (re *GoTaskRecipeExecutor) ExecutePreInstall(ctx context.Context, r types.OpenInstallationRecipe, ...) error
- func (re *GoTaskRecipeExecutor) GetOutput() *OutputParser
- func (re *GoTaskRecipeExecutor) GetRecipeOutput() []string
- type InstallEventsClient
- type InstallEventsReporter
- func (r InstallEventsReporter) DiscoveryComplete(status *InstallStatus, dm types.DiscoveryManifest) error
- func (r InstallEventsReporter) InstallCanceled(status *InstallStatus) error
- func (r InstallEventsReporter) InstallComplete(status *InstallStatus) error
- func (r InstallEventsReporter) InstallStarted(status *InstallStatus) error
- func (r InstallEventsReporter) RecipeAvailable(status *InstallStatus, event RecipeStatusEvent) error
- func (r InstallEventsReporter) RecipeCanceled(status *InstallStatus, event RecipeStatusEvent) error
- func (r InstallEventsReporter) RecipeDetected(status *InstallStatus, event RecipeStatusEvent) error
- func (r InstallEventsReporter) RecipeFailed(status *InstallStatus, event RecipeStatusEvent) error
- func (r InstallEventsReporter) RecipeInstalled(status *InstallStatus, event RecipeStatusEvent) error
- func (r InstallEventsReporter) RecipeInstalling(status *InstallStatus, event RecipeStatusEvent) error
- func (r InstallEventsReporter) RecipeRecommended(status *InstallStatus, event RecipeStatusEvent) error
- func (r InstallEventsReporter) RecipeSkipped(status *InstallStatus, event RecipeStatusEvent) error
- func (r InstallEventsReporter) RecipeUnsupported(status *InstallStatus, event RecipeStatusEvent) error
- func (r InstallEventsReporter) RecipesSelected(status *InstallStatus, recipes []types.OpenInstallationRecipe) error
- func (r InstallEventsReporter) UpdateRequired(status *InstallStatus) error
- type InstallStatus
- func (s *InstallStatus) DiscoveryComplete(dm types.DiscoveryManifest)
- func (s *InstallStatus) HostEntityGUID() string
- func (s *InstallStatus) InstallCanceled()
- func (s *InstallStatus) InstallComplete(err error)
- func (s *InstallStatus) InstallStarted()
- func (s *InstallStatus) IsTargetedInstall() bool
- func (s *InstallStatus) RecipeAvailable(event RecipeStatusEvent)
- func (s *InstallStatus) RecipeCanceled(event RecipeStatusEvent)
- func (s *InstallStatus) RecipeDetected(event RecipeStatusEvent)
- func (s *InstallStatus) RecipeFailed(event RecipeStatusEvent)
- func (s *InstallStatus) RecipeHasStatus(recipeName string, status RecipeStatusType) bool
- func (s *InstallStatus) RecipeInstalled(event RecipeStatusEvent)
- func (s *InstallStatus) RecipeInstalling(event RecipeStatusEvent)
- func (s *InstallStatus) RecipeRecommended(event RecipeStatusEvent)
- func (s *InstallStatus) RecipeSkipped(event RecipeStatusEvent)
- func (s *InstallStatus) RecipeUnsupported(event RecipeStatusEvent)
- func (s *InstallStatus) ReportStatus(status RecipeStatusType, event RecipeStatusEvent)
- func (s *InstallStatus) SetTargetedInstall(targetedInstallNames []string)
- func (s *InstallStatus) SetVersions(installLibraryVersion string)
- func (s *InstallStatus) WasSuccessful() bool
- type LineCaptureBuffer
- type LinkGenerator
- type LogEntry
- type LogForwarder
- type MockFailingRecipeExecutor
- type MockInstalleventsClient
- func (c *MockInstalleventsClient) InstallationCreateInstallStatus(int, installevents.InstallationInstallStatusInput) (*installevents.InstallationInstallStatus, error)
- func (c *MockInstalleventsClient) InstallationCreateRecipeEvent(int, installevents.InstallationRecipeStatus) (*installevents.InstallationRecipeEvent, error)
- type MockPlatformLinkGenerator
- func (g *MockPlatformLinkGenerator) GenerateEntityLink(entityGUID string) string
- func (g *MockPlatformLinkGenerator) GenerateExplorerLink(status InstallStatus) string
- func (g *MockPlatformLinkGenerator) GenerateFleetLink(entityGUID string) string
- func (g *MockPlatformLinkGenerator) GenerateLoggingLink(entityGUID string) string
- func (g *MockPlatformLinkGenerator) GenerateRedirectURL(status InstallStatus) string
- type MockRecipeExecutor
- func (m *MockRecipeExecutor) Execute(ctx context.Context, r types.OpenInstallationRecipe, v types.RecipeVars) error
- func (m *MockRecipeExecutor) ExecutePreInstall(ctx context.Context, r types.OpenInstallationRecipe, v types.RecipeVars) error
- func (m *MockRecipeExecutor) GetOutput() *OutputParser
- func (m *MockRecipeExecutor) GetRecipeOutput() []string
- func (m *MockRecipeExecutor) SetOutput(value string)
- type MockRecipeLogForwarder
- type MockRecipeVarProvider
- type MockStatusSubscriber
- func (r *MockStatusSubscriber) DiscoveryComplete(status *InstallStatus, dm types.DiscoveryManifest) error
- func (r *MockStatusSubscriber) InstallCanceled(status *InstallStatus) error
- func (r *MockStatusSubscriber) InstallComplete(status *InstallStatus) error
- func (r *MockStatusSubscriber) InstallStarted(status *InstallStatus) error
- func (r *MockStatusSubscriber) RecipeAvailable(status *InstallStatus, event RecipeStatusEvent) error
- func (r *MockStatusSubscriber) RecipeCanceled(status *InstallStatus, event RecipeStatusEvent) error
- func (r *MockStatusSubscriber) RecipeDetected(status *InstallStatus, event RecipeStatusEvent) error
- func (r *MockStatusSubscriber) RecipeFailed(status *InstallStatus, event RecipeStatusEvent) error
- func (r *MockStatusSubscriber) RecipeInstalled(status *InstallStatus, event RecipeStatusEvent) error
- func (r *MockStatusSubscriber) RecipeInstalling(status *InstallStatus, event RecipeStatusEvent) error
- func (r *MockStatusSubscriber) RecipeRecommended(status *InstallStatus, event RecipeStatusEvent) error
- func (r *MockStatusSubscriber) RecipeSkipped(status *InstallStatus, event RecipeStatusEvent) error
- func (r *MockStatusSubscriber) RecipeUnsupported(status *InstallStatus, event RecipeStatusEvent) error
- func (r *MockStatusSubscriber) RecipesSelected(status *InstallStatus, recipes []types.OpenInstallationRecipe) error
- func (r *MockStatusSubscriber) UpdateRequired(status *InstallStatus) error
- type OutputParser
- type PlatformLinkGenerator
- func (g *PlatformLinkGenerator) GenerateEntityLink(entityGUID string) string
- func (g *PlatformLinkGenerator) GenerateExplorerLink(status InstallStatus) string
- func (g *PlatformLinkGenerator) GenerateFleetLink(entityGUID string) string
- func (g *PlatformLinkGenerator) GenerateLoggingLink(entityGUID string) string
- func (g *PlatformLinkGenerator) GenerateRedirectURL(status InstallStatus) string
- type PosixShellRecipeExecutor
- type RecipeExecutor
- type RecipeLogForwarder
- type RecipeStatus
- type RecipeStatusEvent
- type RecipeStatusType
- type RecipeVarProvider
- type ShRecipeExecutor
- func (e *ShRecipeExecutor) Execute(ctx context.Context, r types.OpenInstallationRecipe, v types.RecipeVars) error
- func (e *ShRecipeExecutor) ExecutePreInstall(ctx context.Context, r types.OpenInstallationRecipe, v types.RecipeVars) error
- func (e *ShRecipeExecutor) GetOutput() *OutputParser
- func (e *ShRecipeExecutor) GetRecipeOutput() []string
- type StatusError
- type StatusSubscriber
- type TerminalStatusReporter
- func (r TerminalStatusReporter) DiscoveryComplete(status *InstallStatus, dm types.DiscoveryManifest) error
- func (r TerminalStatusReporter) InstallCanceled(status *InstallStatus) error
- func (r TerminalStatusReporter) InstallComplete(status *InstallStatus) error
- func (r TerminalStatusReporter) InstallStarted(status *InstallStatus) error
- func (r TerminalStatusReporter) RecipeAvailable(status *InstallStatus, event RecipeStatusEvent) error
- func (r TerminalStatusReporter) RecipeCanceled(status *InstallStatus, event RecipeStatusEvent) error
- func (r TerminalStatusReporter) RecipeDetected(status *InstallStatus, event RecipeStatusEvent) error
- func (r TerminalStatusReporter) RecipeFailed(status *InstallStatus, event RecipeStatusEvent) error
- func (r TerminalStatusReporter) RecipeInstalled(status *InstallStatus, event RecipeStatusEvent) error
- func (r TerminalStatusReporter) RecipeInstalling(status *InstallStatus, event RecipeStatusEvent) error
- func (r TerminalStatusReporter) RecipeRecommended(status *InstallStatus, event RecipeStatusEvent) error
- func (r TerminalStatusReporter) RecipeSkipped(status *InstallStatus, event RecipeStatusEvent) error
- func (r TerminalStatusReporter) RecipeUnsupported(status *InstallStatus, event RecipeStatusEvent) error
- func (r TerminalStatusReporter) RecipesSelected(status *InstallStatus, recipes []types.OpenInstallationRecipe) error
- func (r TerminalStatusReporter) UpdateRequired(status *InstallStatus) error
Constants ¶
const ( BashPath = "/bin/bash" ShPath = "/bin/sh" )
const ( EnvNriaCustomAttributes = "NRIA_CUSTOM_ATTRIBUTES" EnvNriaPassthroughEnvironment = "NRIA_PASSTHROUGH_ENVIRONMENT" EnvInstallCustomAttributes = "INSTALL_CUSTOM_ATTRIBUTES" )
Variables ¶
var RecipeStatusTypes = struct { AVAILABLE RecipeStatusType CANCELED RecipeStatusType INSTALLING RecipeStatusType FAILED RecipeStatusType INSTALLED RecipeStatusType SKIPPED RecipeStatusType RECOMMENDED RecipeStatusType UNSUPPORTED RecipeStatusType DETECTED RecipeStatusType NULL RecipeStatusType }{ AVAILABLE: "AVAILABLE", CANCELED: "CANCELED", INSTALLING: "INSTALLING", FAILED: "FAILED", INSTALLED: "INSTALLED", SKIPPED: "SKIPPED", RECOMMENDED: "RECOMMENDED", UNSUPPORTED: "UNSUPPORTED", DETECTED: "DETECTED", NULL: "", }
var StatusIconMap = map[RecipeStatusType]string{ RecipeStatusTypes.INSTALLED: ux.IconSuccess, RecipeStatusTypes.FAILED: ux.IconError, RecipeStatusTypes.UNSUPPORTED: ux.IconUnsupported, RecipeStatusTypes.SKIPPED: ux.IconMinus, RecipeStatusTypes.CANCELED: ux.IconMinus, }
Functions ¶
func GetAccountPlanManagementURL ¶ added in v0.46.0
func GetAccountPlanManagementURL() string
GeneratePlanManagementURL returns the URL where a customer can manage their plan and payment options.
Types ¶
type GoTaskRecipeExecutor ¶
type GoTaskRecipeExecutor struct {
Stderr io.Writer
Stdin io.Reader
Stdout io.Writer
Output *OutputParser
RecipeOutput []string
}
GoTaskRecipeExecutor is an implementation of the recipeExecutor interface that uses the go-task module to execute the steps defined in each recipe.
func NewGoTaskRecipeExecutor ¶
func NewGoTaskRecipeExecutor() *GoTaskRecipeExecutor
NewGoTaskRecipeExecutor returns a new instance of GoTaskRecipeExecutor.
func (*GoTaskRecipeExecutor) Execute ¶
func (re *GoTaskRecipeExecutor) Execute(ctx context.Context, r types.OpenInstallationRecipe, recipeVars types.RecipeVars) (retErr error)
func (*GoTaskRecipeExecutor) ExecutePreInstall ¶ added in v0.28.0
func (re *GoTaskRecipeExecutor) ExecutePreInstall(ctx context.Context, r types.OpenInstallationRecipe, recipeVars types.RecipeVars) error
func (*GoTaskRecipeExecutor) GetOutput ¶ added in v0.47.0
func (re *GoTaskRecipeExecutor) GetOutput() *OutputParser
func (*GoTaskRecipeExecutor) GetRecipeOutput ¶ added in v0.57.0
func (re *GoTaskRecipeExecutor) GetRecipeOutput() []string
type InstallEventsClient ¶ added in v0.31.1
type InstallEventsClient interface {
InstallationCreateRecipeEvent(int, installevents.InstallationRecipeStatus) (*installevents.InstallationRecipeEvent, error)
InstallationCreateInstallStatus(int, installevents.InstallationInstallStatusInput) (*installevents.InstallationInstallStatus, error)
}
type InstallEventsReporter ¶ added in v0.31.1
type InstallEventsReporter struct {
// contains filtered or unexported fields
}
func NewInstallEventsReporter ¶ added in v0.31.1
func NewInstallEventsReporter(client InstallEventsClient) *InstallEventsReporter
func (InstallEventsReporter) DiscoveryComplete ¶ added in v0.31.1
func (r InstallEventsReporter) DiscoveryComplete(status *InstallStatus, dm types.DiscoveryManifest) error
func (InstallEventsReporter) InstallCanceled ¶ added in v0.31.1
func (r InstallEventsReporter) InstallCanceled(status *InstallStatus) error
func (InstallEventsReporter) InstallComplete ¶ added in v0.31.1
func (r InstallEventsReporter) InstallComplete(status *InstallStatus) error
func (InstallEventsReporter) InstallStarted ¶ added in v0.34.37
func (r InstallEventsReporter) InstallStarted(status *InstallStatus) error
func (InstallEventsReporter) RecipeAvailable ¶ added in v0.31.1
func (r InstallEventsReporter) RecipeAvailable(status *InstallStatus, event RecipeStatusEvent) error
func (InstallEventsReporter) RecipeCanceled ¶ added in v0.31.1
func (r InstallEventsReporter) RecipeCanceled(status *InstallStatus, event RecipeStatusEvent) error
func (InstallEventsReporter) RecipeDetected ¶ added in v0.36.10
func (r InstallEventsReporter) RecipeDetected(status *InstallStatus, event RecipeStatusEvent) error
func (InstallEventsReporter) RecipeFailed ¶ added in v0.31.1
func (r InstallEventsReporter) RecipeFailed(status *InstallStatus, event RecipeStatusEvent) error
func (InstallEventsReporter) RecipeInstalled ¶ added in v0.31.1
func (r InstallEventsReporter) RecipeInstalled(status *InstallStatus, event RecipeStatusEvent) error
func (InstallEventsReporter) RecipeInstalling ¶ added in v0.31.1
func (r InstallEventsReporter) RecipeInstalling(status *InstallStatus, event RecipeStatusEvent) error
func (InstallEventsReporter) RecipeRecommended ¶ added in v0.31.1
func (r InstallEventsReporter) RecipeRecommended(status *InstallStatus, event RecipeStatusEvent) error
func (InstallEventsReporter) RecipeSkipped ¶ added in v0.31.1
func (r InstallEventsReporter) RecipeSkipped(status *InstallStatus, event RecipeStatusEvent) error
func (InstallEventsReporter) RecipeUnsupported ¶ added in v0.31.1
func (r InstallEventsReporter) RecipeUnsupported(status *InstallStatus, event RecipeStatusEvent) error
func (InstallEventsReporter) RecipesSelected ¶ added in v0.31.1
func (r InstallEventsReporter) RecipesSelected(status *InstallStatus, recipes []types.OpenInstallationRecipe) error
func (InstallEventsReporter) UpdateRequired ¶ added in v0.34.0
func (r InstallEventsReporter) UpdateRequired(status *InstallStatus) error
type InstallStatus ¶ added in v0.18.26
type InstallStatus struct {
InstallID string `json:"installId"`
Complete bool `json:"complete"`
DeployedBy string `json:"deployedBy"`
DiscoveryManifest types.DiscoveryManifest `json:"discoveryManifest"`
EntityGUIDs []string `json:"entityGuids"`
Error StatusError `json:"error"`
LogFilePath string `json:"logFilePath"`
Statuses []*RecipeStatus `json:"recipes"`
Timestamp int64 `json:"timestamp"`
CLIVersion string `json:"cliVersion"`
InstallLibraryVersion string `json:"installLibraryVersion"`
HasInstalledRecipes bool `json:"hasInstalledRecipes"`
HasCanceledRecipes bool `json:"hasCanceledRecipes"`
HasSkippedRecipes bool `json:"hasSkippedRecipes"`
HasFailedRecipes bool `json:"hasFailedRecipes"`
HasUnsupportedRecipes bool `json:"hasUnsupportedRecipes"`
Detected []*RecipeStatus `json:"recipesDetected"`
Skipped []*RecipeStatus `json:"recipesSkipped"`
Canceled []*RecipeStatus `json:"recipesCanceled"`
Failed []*RecipeStatus `json:"recipesFailed"`
Installed []*RecipeStatus `json:"recipesInstalled"`
Unsupported []*RecipeStatus `json:"recipesUnsupported"`
RedirectURL string `json:"redirectUrl"`
HTTPSProxy string `json:"httpsProxy"`
UpdateRequired bool `json:"updateRequired"`
DocumentID string
PlatformLinkGenerator LinkGenerator
// contains filtered or unexported fields
}
nolint: maligned
func NewInstallStatus ¶ added in v0.18.26
func NewInstallStatus(context types.InstallerContext, reporters []StatusSubscriber, PlatformLinkGenerator LinkGenerator) *InstallStatus
func (*InstallStatus) DiscoveryComplete ¶ added in v0.19.1
func (s *InstallStatus) DiscoveryComplete(dm types.DiscoveryManifest)
func (*InstallStatus) HostEntityGUID ¶ added in v0.20.0
func (s *InstallStatus) HostEntityGUID() string
func (*InstallStatus) InstallCanceled ¶ added in v0.19.2
func (s *InstallStatus) InstallCanceled()
func (*InstallStatus) InstallComplete ¶ added in v0.18.26
func (s *InstallStatus) InstallComplete(err error)
func (*InstallStatus) InstallStarted ¶ added in v0.34.37
func (s *InstallStatus) InstallStarted()
func (*InstallStatus) IsTargetedInstall ¶ added in v0.20.0
func (s *InstallStatus) IsTargetedInstall() bool
func (*InstallStatus) RecipeAvailable ¶ added in v0.18.26
func (s *InstallStatus) RecipeAvailable(event RecipeStatusEvent)
func (*InstallStatus) RecipeCanceled ¶ added in v0.43.0
func (s *InstallStatus) RecipeCanceled(event RecipeStatusEvent)
func (*InstallStatus) RecipeDetected ¶ added in v0.36.10
func (s *InstallStatus) RecipeDetected(event RecipeStatusEvent)
RecipeDetected handles setting the DETECTED status for the provided recipe as well sending out the DETECTED status event to the install events service. RecipeDetected is called when a recipe is available and passes the checks in both the process match and the pre-install steps of recipe execution.
func (*InstallStatus) RecipeFailed ¶ added in v0.18.26
func (s *InstallStatus) RecipeFailed(event RecipeStatusEvent)
func (*InstallStatus) RecipeHasStatus ¶ added in v0.49.11
func (s *InstallStatus) RecipeHasStatus(recipeName string, status RecipeStatusType) bool
func (*InstallStatus) RecipeInstalled ¶ added in v0.18.26
func (s *InstallStatus) RecipeInstalled(event RecipeStatusEvent)
func (*InstallStatus) RecipeInstalling ¶ added in v0.18.26
func (s *InstallStatus) RecipeInstalling(event RecipeStatusEvent)
func (*InstallStatus) RecipeRecommended ¶ added in v0.18.26
func (s *InstallStatus) RecipeRecommended(event RecipeStatusEvent)
RecipeRecommended is responsible for setting the nerstorage scopes when a recipe is recommended. This is used when a recipe is found, but not a "HOST" type, and is used to indicate to the user that it is something they should consider integrating, but not something that the recipe framework will currently assist with.
func (*InstallStatus) RecipeSkipped ¶ added in v0.18.26
func (s *InstallStatus) RecipeSkipped(event RecipeStatusEvent)
func (*InstallStatus) RecipeUnsupported ¶ added in v0.28.11
func (s *InstallStatus) RecipeUnsupported(event RecipeStatusEvent)
func (*InstallStatus) ReportStatus ¶ added in v0.43.0
func (s *InstallStatus) ReportStatus(status RecipeStatusType, event RecipeStatusEvent)
func (*InstallStatus) SetTargetedInstall ¶ added in v0.20.0
func (s *InstallStatus) SetTargetedInstall(targetedInstallNames []string)
func (*InstallStatus) SetVersions ¶ added in v0.32.0
func (s *InstallStatus) SetVersions(installLibraryVersion string)
func (*InstallStatus) WasSuccessful ¶ added in v0.28.0
func (s *InstallStatus) WasSuccessful() bool
type LineCaptureBuffer ¶ added in v0.27.0
type LineCaptureBuffer struct {
LastFullLine string
// contains filtered or unexported fields
}
func NewLineCaptureBuffer ¶ added in v0.27.0
func NewLineCaptureBuffer(w io.Writer) *LineCaptureBuffer
func (*LineCaptureBuffer) Current ¶ added in v0.27.0
func (c *LineCaptureBuffer) Current() string
func (*LineCaptureBuffer) GetFullRecipeOutput ¶ added in v0.57.0
func (c *LineCaptureBuffer) GetFullRecipeOutput() []string
type LinkGenerator ¶ added in v0.28.0
type LinkGenerator interface {
GenerateExplorerLink(status InstallStatus) string
GenerateEntityLink(entityGUID string) string
GenerateLoggingLink(entityGUID string) string
GenerateFleetLink(entityGUID string) string
GenerateRedirectURL(status InstallStatus) string
}
type LogForwarder ¶ added in v0.57.0
type MockFailingRecipeExecutor ¶ added in v0.18.11
type MockFailingRecipeExecutor struct {
// contains filtered or unexported fields
}
func NewMockFailingRecipeExecutor ¶ added in v0.18.11
func NewMockFailingRecipeExecutor() *MockFailingRecipeExecutor
func (*MockFailingRecipeExecutor) Execute ¶ added in v0.18.11
func (m *MockFailingRecipeExecutor) Execute(ctx context.Context, r types.OpenInstallationRecipe, v types.RecipeVars) error
func (*MockFailingRecipeExecutor) ExecutePreInstall ¶ added in v0.28.0
func (m *MockFailingRecipeExecutor) ExecutePreInstall(ctx context.Context, r types.OpenInstallationRecipe, v types.RecipeVars) error
type MockInstalleventsClient ¶ added in v0.31.1
type MockInstalleventsClient struct {
CreateInstallEventVal *installevents.InstallationRecipeEvent
CreateInstallStatusVal *installevents.InstallationInstallStatus
CreateInstallEventErr error
CreateInstallEventCallCount int
CreateInstallStatusErr error
CreateInstallStatusCallCount int
}
func NewMockInstallEventsClient ¶ added in v0.31.1
func NewMockInstallEventsClient() *MockInstalleventsClient
func (*MockInstalleventsClient) InstallationCreateInstallStatus ¶ added in v0.32.6
func (c *MockInstalleventsClient) InstallationCreateInstallStatus(int, installevents.InstallationInstallStatusInput) (*installevents.InstallationInstallStatus, error)
func (*MockInstalleventsClient) InstallationCreateRecipeEvent ¶ added in v0.31.1
func (c *MockInstalleventsClient) InstallationCreateRecipeEvent(int, installevents.InstallationRecipeStatus) (*installevents.InstallationRecipeEvent, error)
type MockPlatformLinkGenerator ¶ added in v0.28.0
type MockPlatformLinkGenerator struct {
GenerateExplorerLinkCallCount int
GenerateEntityLinkCallCount int
GenerateLoggingLinkCallCount int
GenerateFleetLinkCallCount int
GenerateExplorerLinkVal string
GenerateEntityLinkVal string
GenerateLoggingLinkVal string
GenerateFleetLinkVal string
}
func NewMockPlatformLinkGenerator ¶ added in v0.28.0
func NewMockPlatformLinkGenerator() *MockPlatformLinkGenerator
func (*MockPlatformLinkGenerator) GenerateEntityLink ¶ added in v0.28.0
func (g *MockPlatformLinkGenerator) GenerateEntityLink(entityGUID string) string
func (*MockPlatformLinkGenerator) GenerateExplorerLink ¶ added in v0.28.0
func (g *MockPlatformLinkGenerator) GenerateExplorerLink(status InstallStatus) string
func (*MockPlatformLinkGenerator) GenerateFleetLink ¶ added in v0.97.10
func (g *MockPlatformLinkGenerator) GenerateFleetLink(entityGUID string) string
func (*MockPlatformLinkGenerator) GenerateLoggingLink ¶ added in v0.38.0
func (g *MockPlatformLinkGenerator) GenerateLoggingLink(entityGUID string) string
func (*MockPlatformLinkGenerator) GenerateRedirectURL ¶ added in v0.28.0
func (g *MockPlatformLinkGenerator) GenerateRedirectURL(status InstallStatus) string
type MockRecipeExecutor ¶
type MockRecipeExecutor struct {
ExecuteErr error
OutputParser *OutputParser
ShouldPanic bool
}
func NewMockRecipeExecutor ¶
func NewMockRecipeExecutor() *MockRecipeExecutor
func (*MockRecipeExecutor) Execute ¶
func (m *MockRecipeExecutor) Execute(ctx context.Context, r types.OpenInstallationRecipe, v types.RecipeVars) error
func (*MockRecipeExecutor) ExecutePreInstall ¶ added in v0.28.0
func (m *MockRecipeExecutor) ExecutePreInstall(ctx context.Context, r types.OpenInstallationRecipe, v types.RecipeVars) error
func (*MockRecipeExecutor) GetOutput ¶ added in v0.47.0
func (m *MockRecipeExecutor) GetOutput() *OutputParser
func (*MockRecipeExecutor) GetRecipeOutput ¶ added in v0.57.0
func (m *MockRecipeExecutor) GetRecipeOutput() []string
func (*MockRecipeExecutor) SetOutput ¶ added in v0.47.0
func (m *MockRecipeExecutor) SetOutput(value string)
type MockRecipeLogForwarder ¶ added in v0.57.0
type MockRecipeLogForwarder struct {
// contains filtered or unexported fields
}
func NewMockRecipeLogForwarder ¶ added in v0.57.0
func NewMockRecipeLogForwarder() *MockRecipeLogForwarder
func (*MockRecipeLogForwarder) HasUserOptedIn ¶ added in v0.58.0
func (rlf *MockRecipeLogForwarder) HasUserOptedIn() bool
func (*MockRecipeLogForwarder) PromptUserToSendLogs ¶ added in v0.57.0
func (rlf *MockRecipeLogForwarder) PromptUserToSendLogs(reader io.Reader) bool
func (*MockRecipeLogForwarder) SendLogsToNewRelic ¶ added in v0.57.0
func (rlf *MockRecipeLogForwarder) SendLogsToNewRelic(recipeName string, recipeOutput []string)
func (*MockRecipeLogForwarder) SetUserOptedIn ¶ added in v0.58.0
func (rlf *MockRecipeLogForwarder) SetUserOptedIn(val bool)
type MockRecipeVarProvider ¶ added in v0.43.0
func NewMockRecipeVarProvider ¶ added in v0.43.0
func NewMockRecipeVarProvider() *MockRecipeVarProvider
func (*MockRecipeVarProvider) Prepare ¶ added in v0.43.0
func (rvp *MockRecipeVarProvider) Prepare(m types.DiscoveryManifest, r types.OpenInstallationRecipe, assumeYes bool) (types.RecipeVars, error)
type MockStatusSubscriber ¶ added in v0.43.0
type MockStatusSubscriber struct {
RecipeAvailableErr error
RecipesSelectedErr error
RecipeFailedErr error
RecipeInstalledErr error
RecipeInstallingErr error
RecipeRecommendedErr error
RecipeSkippedErr error
RecipeUnsupportedErr error
InstallStartedErr error
InstallCompleteErr error
InstallCanceledErr error
DiscoveryCompleteErr error
RecipeAvailableCallCount int
RecipesSelectedCallCount int
RecipeFailedCallCount int
RecipeInstalledCallCount int
RecipeInstallingCallCount int
RecipeRecommendedCallCount int
RecipeSkippedCallCount int
InstallStartedCallCount int
InstallCompleteCallCount int
InstallCanceledCallCount int
DiscoveryCompleteCallCount int
RecipeUnsupportedCallCount int
RecipeDetectedCallCount int
RecipeCanceledCallCount int
ReportSkipped map[string]int
ReportInstalled map[string]int
ReportInstalling map[string]int
ReportRecommended map[string]int
ReportFailed map[string]int
ReportAvailable map[string]int
GUIDs []string
Durations []int64
RecipeGUID map[string]string
}
MockStatusSubscriber is a mock implementation of the ExecutionStatusReporter interface that provides method spies for testing scenarios.
func NewMockStatusReporter ¶
func NewMockStatusReporter() *MockStatusSubscriber
NewMockStatusReporter returns a new instance of MockExecutionStatusReporter.
func (*MockStatusSubscriber) DiscoveryComplete ¶ added in v0.43.0
func (r *MockStatusSubscriber) DiscoveryComplete(status *InstallStatus, dm types.DiscoveryManifest) error
func (*MockStatusSubscriber) InstallCanceled ¶ added in v0.43.0
func (r *MockStatusSubscriber) InstallCanceled(status *InstallStatus) error
func (*MockStatusSubscriber) InstallComplete ¶ added in v0.43.0
func (r *MockStatusSubscriber) InstallComplete(status *InstallStatus) error
func (*MockStatusSubscriber) InstallStarted ¶ added in v0.43.0
func (r *MockStatusSubscriber) InstallStarted(status *InstallStatus) error
func (*MockStatusSubscriber) RecipeAvailable ¶ added in v0.43.0
func (r *MockStatusSubscriber) RecipeAvailable(status *InstallStatus, event RecipeStatusEvent) error
func (*MockStatusSubscriber) RecipeCanceled ¶ added in v0.43.0
func (r *MockStatusSubscriber) RecipeCanceled(status *InstallStatus, event RecipeStatusEvent) error
func (*MockStatusSubscriber) RecipeDetected ¶ added in v0.43.0
func (r *MockStatusSubscriber) RecipeDetected(status *InstallStatus, event RecipeStatusEvent) error
func (*MockStatusSubscriber) RecipeFailed ¶ added in v0.43.0
func (r *MockStatusSubscriber) RecipeFailed(status *InstallStatus, event RecipeStatusEvent) error
func (*MockStatusSubscriber) RecipeInstalled ¶ added in v0.43.0
func (r *MockStatusSubscriber) RecipeInstalled(status *InstallStatus, event RecipeStatusEvent) error
func (*MockStatusSubscriber) RecipeInstalling ¶ added in v0.43.0
func (r *MockStatusSubscriber) RecipeInstalling(status *InstallStatus, event RecipeStatusEvent) error
func (*MockStatusSubscriber) RecipeRecommended ¶ added in v0.43.0
func (r *MockStatusSubscriber) RecipeRecommended(status *InstallStatus, event RecipeStatusEvent) error
func (*MockStatusSubscriber) RecipeSkipped ¶ added in v0.43.0
func (r *MockStatusSubscriber) RecipeSkipped(status *InstallStatus, event RecipeStatusEvent) error
func (*MockStatusSubscriber) RecipeUnsupported ¶ added in v0.43.0
func (r *MockStatusSubscriber) RecipeUnsupported(status *InstallStatus, event RecipeStatusEvent) error
func (*MockStatusSubscriber) RecipesSelected ¶ added in v0.43.0
func (r *MockStatusSubscriber) RecipesSelected(status *InstallStatus, recipes []types.OpenInstallationRecipe) error
func (*MockStatusSubscriber) UpdateRequired ¶ added in v0.43.0
func (r *MockStatusSubscriber) UpdateRequired(status *InstallStatus) error
type OutputParser ¶ added in v0.47.0
type OutputParser struct {
// contains filtered or unexported fields
}
func NewOutputParser ¶ added in v0.47.0
func NewOutputParser(output map[string]interface{}) *OutputParser
func (*OutputParser) AddMetadata ¶ added in v0.58.0
func (op *OutputParser) AddMetadata(key string, value string)
func (*OutputParser) EntityGUID ¶ added in v0.47.0
func (op *OutputParser) EntityGUID() string
func (*OutputParser) IsCapturedCliOutput ¶ added in v0.57.0
func (op *OutputParser) IsCapturedCliOutput() bool
func (*OutputParser) Metadata ¶ added in v0.52.0
func (op *OutputParser) Metadata() map[string]string
type PlatformLinkGenerator ¶ added in v0.28.0
type PlatformLinkGenerator struct {
// contains filtered or unexported fields
}
func NewPlatformLinkGenerator ¶ added in v0.28.0
func NewPlatformLinkGenerator() *PlatformLinkGenerator
func (*PlatformLinkGenerator) GenerateEntityLink ¶ added in v0.28.0
func (g *PlatformLinkGenerator) GenerateEntityLink(entityGUID string) string
func (*PlatformLinkGenerator) GenerateExplorerLink ¶ added in v0.28.0
func (g *PlatformLinkGenerator) GenerateExplorerLink(status InstallStatus) string
func (*PlatformLinkGenerator) GenerateFleetLink ¶ added in v0.97.10
func (g *PlatformLinkGenerator) GenerateFleetLink(entityGUID string) string
func (*PlatformLinkGenerator) GenerateLoggingLink ¶ added in v0.38.0
func (g *PlatformLinkGenerator) GenerateLoggingLink(entityGUID string) string
func (*PlatformLinkGenerator) GenerateRedirectURL ¶ added in v0.28.0
func (g *PlatformLinkGenerator) GenerateRedirectURL(status InstallStatus) string
GenerateRedirectURL creates a URL for the user to navigate to after running through an installation. The URL is displayed in the CLI out as well and is also provided in the nerdstorage document. This provides the user two options to see their data - click from the CLI output or from the frontend.
type PosixShellRecipeExecutor ¶ added in v0.28.0
type PosixShellRecipeExecutor struct {
Stderr io.Writer
Stdin io.Reader
Stdout io.Writer
ShellPath string
Dir string
}
func NewPosixShellRecipeExecutor ¶ added in v0.28.0
func NewPosixShellRecipeExecutor() *PosixShellRecipeExecutor
func (*PosixShellRecipeExecutor) Execute ¶ added in v0.28.0
func (e *PosixShellRecipeExecutor) Execute(ctx context.Context, r types.OpenInstallationRecipe, v types.RecipeVars) error
func (*PosixShellRecipeExecutor) ExecutePreInstall ¶ added in v0.28.0
func (e *PosixShellRecipeExecutor) ExecutePreInstall(ctx context.Context, r types.OpenInstallationRecipe, v types.RecipeVars) error
type RecipeExecutor ¶
type RecipeExecutor interface {
Execute(context.Context, types.OpenInstallationRecipe, types.RecipeVars) error
ExecutePreInstall(context.Context, types.OpenInstallationRecipe, types.RecipeVars) error
GetOutput() *OutputParser
GetRecipeOutput() []string
}
RecipeExecutor is responsible for execution of the task steps defined in a recipe.
type RecipeLogForwarder ¶ added in v0.56.0
type RecipeLogForwarder struct {
LogEntries []LogEntry
// contains filtered or unexported fields
}
func NewRecipeLogForwarder ¶ added in v0.56.0
func NewRecipeLogForwarder() *RecipeLogForwarder
func (*RecipeLogForwarder) HasUserOptedIn ¶ added in v0.58.0
func (lf *RecipeLogForwarder) HasUserOptedIn() bool
func (*RecipeLogForwarder) PromptUserToSendLogs ¶ added in v0.56.0
func (lf *RecipeLogForwarder) PromptUserToSendLogs(reader io.Reader) bool
func (*RecipeLogForwarder) SendLogsToNewRelic ¶ added in v0.56.0
func (lf *RecipeLogForwarder) SendLogsToNewRelic(recipeName string, data []string)
func (*RecipeLogForwarder) SetUserOptedIn ¶ added in v0.58.0
func (lf *RecipeLogForwarder) SetUserOptedIn(val bool)
type RecipeStatus ¶ added in v0.18.26
type RecipeStatus struct {
DisplayName string `json:"displayName"`
Error StatusError `json:"error"`
Name string `json:"name"`
Status RecipeStatusType `json:"status"`
EntityGUID string `json:"entityGuid,omitempty"`
// validationDurationMs is duration in Milliseconds that a recipe took to validate data was flowing.
ValidationDurationMs int64 `json:"validationDurationMs,omitempty"`
}
type RecipeStatusEvent ¶
type RecipeStatusEvent struct {
Recipe types.OpenInstallationRecipe
Msg string
TaskPath []string
EntityGUID string
ValidationDurationMs int64
Metadata map[string]string
OptimizedMessage string
}
RecipeStatusEvent represents an event in a recipe's execution.
func NewRecipeStatusEvent ¶ added in v0.43.0
func NewRecipeStatusEvent(recipe *types.OpenInstallationRecipe) RecipeStatusEvent
type RecipeStatusType ¶ added in v0.18.26
type RecipeStatusType string
type RecipeVarProvider ¶ added in v0.28.0
type RecipeVarProvider struct{}
func NewRecipeVarProvider ¶ added in v0.28.0
func NewRecipeVarProvider() *RecipeVarProvider
func (*RecipeVarProvider) Prepare ¶ added in v0.28.0
func (re *RecipeVarProvider) Prepare(m types.DiscoveryManifest, r types.OpenInstallationRecipe, assumeYes bool) (types.RecipeVars, error)
type ShRecipeExecutor ¶ added in v0.28.0
type ShRecipeExecutor struct {
Dir string
Stderr io.Writer
Stdin io.Reader
Stdout io.Writer
RecipeOutput []string
}
func NewShRecipeExecutor ¶ added in v0.28.0
func NewShRecipeExecutor() *ShRecipeExecutor
func (*ShRecipeExecutor) Execute ¶ added in v0.28.0
func (e *ShRecipeExecutor) Execute(ctx context.Context, r types.OpenInstallationRecipe, v types.RecipeVars) error
func (*ShRecipeExecutor) ExecutePreInstall ¶ added in v0.28.0
func (e *ShRecipeExecutor) ExecutePreInstall(ctx context.Context, r types.OpenInstallationRecipe, v types.RecipeVars) error
func (*ShRecipeExecutor) GetOutput ¶ added in v0.47.0
func (e *ShRecipeExecutor) GetOutput() *OutputParser
func (*ShRecipeExecutor) GetRecipeOutput ¶ added in v0.57.0
func (e *ShRecipeExecutor) GetRecipeOutput() []string
type StatusError ¶ added in v0.19.1
type StatusSubscriber ¶ added in v0.18.26
type StatusSubscriber interface {
UpdateRequired(status *InstallStatus) error
InstallStarted(status *InstallStatus) error
InstallCanceled(status *InstallStatus) error
InstallComplete(status *InstallStatus) error
DiscoveryComplete(status *InstallStatus, dm types.DiscoveryManifest) error
RecipeDetected(status *InstallStatus, event RecipeStatusEvent) error
RecipeCanceled(status *InstallStatus, event RecipeStatusEvent) error
RecipeAvailable(status *InstallStatus, event RecipeStatusEvent) error
RecipeFailed(status *InstallStatus, event RecipeStatusEvent) error
RecipeInstalled(status *InstallStatus, event RecipeStatusEvent) error
RecipeInstalling(status *InstallStatus, event RecipeStatusEvent) error
RecipeRecommended(status *InstallStatus, event RecipeStatusEvent) error
RecipeSkipped(status *InstallStatus, event RecipeStatusEvent) error
RecipeUnsupported(status *InstallStatus, event RecipeStatusEvent) error
RecipesSelected(status *InstallStatus, recipes []types.OpenInstallationRecipe) error
}
StatusSubscriber is notified during the lifecycle of the recipe execution status.
type TerminalStatusReporter ¶ added in v0.18.11
type TerminalStatusReporter struct{}
func NewTerminalStatusReporter ¶ added in v0.18.11
func NewTerminalStatusReporter() *TerminalStatusReporter
NewTerminalStatusReporter is an implementation of the ExecutionStatusReporter interface that reports execution status to STDOUT.
func (TerminalStatusReporter) DiscoveryComplete ¶ added in v0.19.1
func (r TerminalStatusReporter) DiscoveryComplete(status *InstallStatus, dm types.DiscoveryManifest) error
func (TerminalStatusReporter) InstallCanceled ¶ added in v0.19.2
func (r TerminalStatusReporter) InstallCanceled(status *InstallStatus) error
func (TerminalStatusReporter) InstallComplete ¶ added in v0.18.26
func (r TerminalStatusReporter) InstallComplete(status *InstallStatus) error
func (TerminalStatusReporter) InstallStarted ¶ added in v0.34.37
func (r TerminalStatusReporter) InstallStarted(status *InstallStatus) error
func (TerminalStatusReporter) RecipeAvailable ¶ added in v0.18.26
func (r TerminalStatusReporter) RecipeAvailable(status *InstallStatus, event RecipeStatusEvent) error
func (TerminalStatusReporter) RecipeCanceled ¶ added in v0.43.0
func (r TerminalStatusReporter) RecipeCanceled(status *InstallStatus, event RecipeStatusEvent) error
func (TerminalStatusReporter) RecipeDetected ¶ added in v0.36.10
func (r TerminalStatusReporter) RecipeDetected(status *InstallStatus, event RecipeStatusEvent) error
func (TerminalStatusReporter) RecipeFailed ¶ added in v0.18.26
func (r TerminalStatusReporter) RecipeFailed(status *InstallStatus, event RecipeStatusEvent) error
func (TerminalStatusReporter) RecipeInstalled ¶ added in v0.18.26
func (r TerminalStatusReporter) RecipeInstalled(status *InstallStatus, event RecipeStatusEvent) error
func (TerminalStatusReporter) RecipeInstalling ¶ added in v0.18.26
func (r TerminalStatusReporter) RecipeInstalling(status *InstallStatus, event RecipeStatusEvent) error
func (TerminalStatusReporter) RecipeRecommended ¶ added in v0.18.26
func (r TerminalStatusReporter) RecipeRecommended(status *InstallStatus, event RecipeStatusEvent) error
func (TerminalStatusReporter) RecipeSkipped ¶ added in v0.18.26
func (r TerminalStatusReporter) RecipeSkipped(status *InstallStatus, event RecipeStatusEvent) error
func (TerminalStatusReporter) RecipeUnsupported ¶ added in v0.28.11
func (r TerminalStatusReporter) RecipeUnsupported(status *InstallStatus, event RecipeStatusEvent) error
func (TerminalStatusReporter) RecipesSelected ¶ added in v0.18.26
func (r TerminalStatusReporter) RecipesSelected(status *InstallStatus, recipes []types.OpenInstallationRecipe) error
func (TerminalStatusReporter) UpdateRequired ¶ added in v0.34.0
func (r TerminalStatusReporter) UpdateRequired(status *InstallStatus) error
Source Files
¶
- go_task_recipe_executor.go
- install_status.go
- installevents_client.go
- installevents_reporter.go
- line_capture_buffer.go
- link_generator.go
- mock_failing_recipe_executor.go
- mock_installevents_client.go
- mock_link_generator.go
- mock_recipe_executor.go
- mock_recipe_log_forwarder.go
- mock_recipe_var_provider.go
- mock_status_subscriber.go
- output_parser.go
- platform_link_generator.go
- posix_shell_recipe_executor.go
- recipe_executor.go
- recipe_log_forwarder.go
- recipe_var_provider.go
- sh_recipe_executor.go
- status_subscriber.go
- terminal_reporter.go