(ctx context.Context, project *types.Project, service types.ServiceConfig, ctr container.Summary, listener api.ContainerEventListener)
| 563 | } |
| 564 | |
| 565 | func (s *composeService) startServiceContainer(ctx context.Context, project *types.Project, service types.ServiceConfig, ctr container.Summary, listener api.ContainerEventListener) error { |
| 566 | if err := s.injectSecrets(ctx, project, service, ctr.ID); err != nil { |
| 567 | return err |
| 568 | } |
| 569 | if err := s.injectConfigs(ctx, project, service, ctr.ID); err != nil { |
| 570 | return err |
| 571 | } |
| 572 | |
| 573 | eventName := getContainerProgressName(ctr) |
| 574 | s.events.On(newEvent(eventName, api.Working, api.StatusStarting)) |
| 575 | if _, err := s.apiClient().ContainerStart(ctx, ctr.ID, client.ContainerStartOptions{}); err != nil { |
| 576 | return err |
| 577 | } |
| 578 | |
| 579 | for _, hook := range service.PostStart { |
| 580 | if err := s.runHook(ctx, ctr, service, hook, listener); err != nil { |
| 581 | return err |
| 582 | } |
| 583 | } |
| 584 | |
| 585 | s.events.On(newEvent(eventName, api.Done, api.StatusStarted)) |
| 586 | return nil |
| 587 | } |
| 588 | |
| 589 | func mergeLabels(ls ...types.Labels) types.Labels { |
| 590 | merged := types.Labels{} |
no test coverage detected