MCPcopy Create free account
hub / github.com/cloudbase/garm / newInstanceManager

Function newInstanceManager

workers/provider/instance_manager.go:35–51  ·  view source on GitHub ↗
(ctx context.Context, instance params.Instance, scaleSet params.ScaleSet, provider common.Provider, helper providerHelper)

Source from the content-addressed store, hash-verified

33)
34
35func newInstanceManager(ctx context.Context, instance params.Instance, scaleSet params.ScaleSet, provider common.Provider, helper providerHelper) (*instanceManager, error) {
36 ctx = garmUtil.WithSlogContext(ctx, slog.Any("worker", fmt.Sprintf("instance-worker-%s", instance.Name)))
37
38 githubEntity, err := scaleSet.GetEntity()
39 if err != nil {
40 return nil, fmt.Errorf("getting github entity: %w", err)
41 }
42 return &instanceManager{
43 ctx: ctx,
44 instance: instance,
45 provider: provider,
46 deleteBackoff: time.Second * 0,
47 scaleSet: scaleSet,
48 helper: helper,
49 scaleSetEntity: githubEntity,
50 }, nil
51}
52
53// instanceManager handles the lifecycle of a single instance.
54// When an instance is created, a new instance manager is created

Callers 3

loadAllRunnersMethod · 0.85
retryFailedRunnersMethod · 0.85
handleInstanceAddedMethod · 0.85

Calls 1

GetEntityMethod · 0.65

Tested by

no test coverage detected