|  | @@ -21,6 +21,7 @@ import (
 | 
	
		
			
				|  |  |  	"errors"
 | 
	
		
			
				|  |  |  	"fmt"
 | 
	
		
			
				|  |  |  	"os"
 | 
	
		
			
				|  |  | +	"path/filepath"
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  	"github.com/docker/compose-cli/api/client"
 | 
	
		
			
				|  |  |  	"github.com/docker/compose-cli/api/compose"
 | 
	
	
		
			
				|  | @@ -175,6 +176,23 @@ func setup(ctx context.Context, opts composeOptions, services []string) (*client
 | 
	
		
			
				|  |  |  			service.PullPolicy = types.PullPolicyBuild
 | 
	
		
			
				|  |  |  		}
 | 
	
		
			
				|  |  |  	}
 | 
	
		
			
				|  |  | +	if opts.EnvFile != "" {
 | 
	
		
			
				|  |  | +		var services types.Services
 | 
	
		
			
				|  |  | +		for _, s := range project.Services {
 | 
	
		
			
				|  |  | +			ef := opts.EnvFile
 | 
	
		
			
				|  |  | +			if ef != "" {
 | 
	
		
			
				|  |  | +				if !filepath.IsAbs(ef) {
 | 
	
		
			
				|  |  | +					ef = filepath.Join(project.WorkingDir, opts.EnvFile)
 | 
	
		
			
				|  |  | +				}
 | 
	
		
			
				|  |  | +				if s.Labels == nil {
 | 
	
		
			
				|  |  | +					s.Labels = make(map[string]string)
 | 
	
		
			
				|  |  | +				}
 | 
	
		
			
				|  |  | +				s.Labels[compose.EnvironmentFileLabel] = ef
 | 
	
		
			
				|  |  | +				services = append(services, s)
 | 
	
		
			
				|  |  | +			}
 | 
	
		
			
				|  |  | +		}
 | 
	
		
			
				|  |  | +		project.Services = services
 | 
	
		
			
				|  |  | +	}
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  	return c, project, nil
 | 
	
		
			
				|  |  |  }
 |