MCPcopy Index your code
hub / github.com/dagger/dagger / initializeModule

Function initializeModule

cmd/dagger/module_inspect.go:56–100  ·  view source on GitHub ↗

initializeModule loads the module at the given source ref Returns an error if the module is not found or invalid.

(
	ctx context.Context,
	dag *dagger.Client,
	modRef string,
	modSrc *dagger.ModuleSource,
	opts ...dagger.ModuleServeOpts,
)

Source from the content-addressed store, hash-verified

54//
55// Returns an error if the module is not found or invalid.
56func initializeModule(
57 ctx context.Context,
58 dag *dagger.Client,
59 modRef string,
60 modSrc *dagger.ModuleSource,
61 opts ...dagger.ModuleServeOpts,
62) (rdef *moduleDef, rerr error) {
63 ctx, span := Tracer().Start(ctx, "load module: "+modRef)
64 defer telemetry.EndWithCause(span, &rerr)
65
66 findCtx, findSpan := Tracer().Start(ctx, "finding module configuration", telemetry.Encapsulate())
67 configExists, err := modSrc.ConfigExists(findCtx)
68 telemetry.EndWithCause(findSpan, &err)
69
70 if err != nil {
71 return nil, fmt.Errorf("failed to get configured module: %w", err)
72 }
73 if !configExists {
74 return nil, errModuleNotFound
75 }
76
77 serveCtx, serveSpan := Tracer().Start(ctx, "initializing module", telemetry.Encapsulate())
78 serveOpts := dagger.ModuleServeOpts{IncludeDependencies: true}
79 for _, o := range opts {
80 if o.Entrypoint {
81 serveOpts.Entrypoint = true
82 }
83 }
84 err = modSrc.AsModule().Serve(serveCtx, serveOpts)
85 telemetry.EndWithCause(serveSpan, &err)
86 if err != nil {
87 return nil, fmt.Errorf("failed to serve module: %w", err)
88 }
89
90 def, err := inspectModule(ctx, dag, modSrc)
91 if err != nil {
92 return nil, err
93 }
94
95 if err := def.loadTypeDefs(ctx, dag); err != nil {
96 return nil, err
97 }
98
99 return def, nil
100}
101
102var ErrConfigNotFound = errors.New("dagger.json not found")
103

Callers 3

GetDependencyMethod · 0.85
registerCommandsMethod · 0.85
maybeLoadModuleMethod · 0.85

Calls 8

EncapsulateMethod · 0.80
loadTypeDefsMethod · 0.80
TracerFunction · 0.70
inspectModuleFunction · 0.70
StartMethod · 0.65
ConfigExistsMethod · 0.45
ServeMethod · 0.45
AsModuleMethod · 0.45

Tested by

no test coverage detected