MCPcopy Index your code
hub / github.com/devspace-sh/devspace / LoadDockerComposeProject

Function LoadDockerComposeProject

pkg/devspace/compose/manager.go:35–67  ·  view source on GitHub ↗
(path string)

Source from the content-addressed store, hash-verified

33}
34
35func LoadDockerComposeProject(path string) (*composetypes.Project, error) {
36 composeFile, err := os.ReadFile(path)
37 if err != nil {
38 return nil, err
39 }
40
41 project, err := composeloader.Load(composetypes.ConfigDetails{
42 ConfigFiles: []composetypes.ConfigFile{
43 {
44 Content: composeFile,
45 },
46 },
47 Environment: map[string]string{},
48 })
49 if err != nil {
50 return nil, err
51 }
52
53 // Expand service ports
54 for idx, service := range project.Services {
55 ports := []composetypes.ServicePortConfig{}
56 for _, port := range service.Ports {
57 expandedPorts, err := expandPublishedPortRange(port)
58 if err != nil {
59 return nil, err
60 }
61 ports = append(ports, expandedPorts...)
62 }
63 project.Services[idx].Ports = ports
64 }
65
66 return project, nil
67}
68
69type ComposeManager interface {
70 Load(log log.Logger) error

Callers 2

initDockerComposeMethod · 0.92
testLoadFunction · 0.85

Calls 2

expandPublishedPortRangeFunction · 0.85
LoadMethod · 0.65

Tested by 1

testLoadFunction · 0.68