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

Method moduleSourceWithDependencies

core/schema/modulesource.go:1884–1917  ·  view source on GitHub ↗
(
	ctx context.Context,
	parentSrc *core.ModuleSource,
	args struct {
		Dependencies []core.ModuleSourceID
	},
)

Source from the content-addressed store, hash-verified

1882}
1883
1884func (s *moduleSourceSchema) moduleSourceWithDependencies(
1885 ctx context.Context,
1886 parentSrc *core.ModuleSource,
1887 args struct {
1888 Dependencies []core.ModuleSourceID
1889 },
1890) (*core.ModuleSource, error) {
1891 parentSrc = parentSrc.Clone()
1892
1893 dag, err := core.CurrentDagqlServer(ctx)
1894 if err != nil {
1895 return nil, fmt.Errorf("failed to get dag server: %w", err)
1896 }
1897
1898 newDeps, err := collectIDObjectResults(ctx, dag, args.Dependencies)
1899 if err != nil {
1900 return nil, fmt.Errorf("failed to load module source dependencies from ids: %w", err)
1901 }
1902
1903 accessor := moduleRelationTypeAccessor{typ: core.ModuleRelationTypeDependency}
1904
1905 allDeps, err := s.validateAndCollectRelatedModules(parentSrc, newDeps, accessor)
1906 if err != nil {
1907 return nil, err
1908 }
1909
1910 finalDeps, err := s.deduplicateAndSortItems(allDeps, accessor)
1911 if err != nil {
1912 return nil, err
1913 }
1914
1915 accessor.setItems(parentSrc, finalDeps)
1916 return parentSrc, nil
1917}
1918
1919func (s *moduleSourceSchema) moduleSourceWithBlueprint(
1920 ctx context.Context,

Callers 2

Calls 6

setItemsMethod · 0.95
CurrentDagqlServerFunction · 0.92
collectIDObjectResultsFunction · 0.85
CloneMethod · 0.65

Tested by

no test coverage detected