()
| 598 | } |
| 599 | |
| 600 | func (d *Devbox) Services() (services.Services, error) { |
| 601 | pluginSvcs, err := plugin.GetServices(d.cfg.IncludedPluginConfigs()) |
| 602 | if err != nil { |
| 603 | return nil, err |
| 604 | } |
| 605 | |
| 606 | userSvcs := services.FromUserProcessCompose(d.projectDir, d.customProcessComposeFile) |
| 607 | |
| 608 | svcSet := lo.Assign(pluginSvcs, userSvcs) |
| 609 | keys := make([]string, 0, len(svcSet)) |
| 610 | for k := range svcSet { |
| 611 | keys = append(keys, k) |
| 612 | } |
| 613 | slices.Sort(keys) |
| 614 | |
| 615 | result := services.Services{} |
| 616 | for _, k := range keys { |
| 617 | result[k] = svcSet[k] |
| 618 | } |
| 619 | |
| 620 | return result, nil |
| 621 | } |
| 622 | |
| 623 | func (d *Devbox) execPrintDevEnv(ctx context.Context, usePrintDevEnvCache bool) (map[string]string, error) { |
| 624 | var spinny *spinner.Spinner |
no test coverage detected