@@ -123,7 +123,7 @@ func (p *Project) Up(opts CommandOptions) error {
123123 args = append (args , opts .ExtraArgs ... )
124124 args = append (args , opts .Services ... )
125125
126- if err := p .runDockerComposeCmd (args , opts .Env , nil ); err != nil {
126+ if err := p .runDockerComposeCmd (dockerComposeOptions { args : args , env : opts .Env } ); err != nil {
127127 return errors .Wrap (err , "running Docker Compose up command failed" )
128128 }
129129
@@ -136,7 +136,7 @@ func (p *Project) Down(opts CommandOptions) error {
136136 args = append (args , "down" )
137137 args = append (args , opts .ExtraArgs ... )
138138
139- if err := p .runDockerComposeCmd (args , opts .Env , nil ); err != nil {
139+ if err := p .runDockerComposeCmd (dockerComposeOptions { args : args , env : opts .Env } ); err != nil {
140140 return errors .Wrap (err , "running Docker Compose down command failed" )
141141 }
142142
@@ -150,7 +150,7 @@ func (p *Project) Build(opts CommandOptions) error {
150150 args = append (args , opts .ExtraArgs ... )
151151 args = append (args , opts .Services ... )
152152
153- if err := p .runDockerComposeCmd (args , opts .Env , nil ); err != nil {
153+ if err := p .runDockerComposeCmd (dockerComposeOptions { args : args , env : opts .Env } ); err != nil {
154154 return errors .Wrap (err , "running Docker Compose build command failed" )
155155 }
156156
@@ -165,7 +165,7 @@ func (p *Project) Config(opts CommandOptions) (*Config, error) {
165165 args = append (args , opts .Services ... )
166166
167167 var b bytes.Buffer
168- if err := p .runDockerComposeCmd (args , opts .Env , & b ); err != nil {
168+ if err := p .runDockerComposeCmd (dockerComposeOptions { args : args , env : opts .Env , stdout : & b } ); err != nil {
169169 return nil , err
170170 }
171171
@@ -184,7 +184,7 @@ func (p *Project) Pull(opts CommandOptions) error {
184184 args = append (args , opts .ExtraArgs ... )
185185 args = append (args , opts .Services ... )
186186
187- if err := p .runDockerComposeCmd (args , opts .Env , nil ); err != nil {
187+ if err := p .runDockerComposeCmd (dockerComposeOptions { args : args , env : opts .Env } ); err != nil {
188188 return errors .Wrap (err , "running Docker Compose pull command failed" )
189189 }
190190
@@ -201,11 +201,17 @@ func (p *Project) baseArgs() []string {
201201 return args
202202}
203203
204- func (p * Project ) runDockerComposeCmd (args , env []string , stdout io.Writer ) error {
205- cmd := exec .Command ("docker-compose" , args ... )
206- cmd .Env = append (os .Environ (), env ... )
207- if stdout != nil {
208- cmd .Stdout = stdout
204+ type dockerComposeOptions struct {
205+ args []string
206+ env []string
207+ stdout io.Writer
208+ }
209+
210+ func (p * Project ) runDockerComposeCmd (opts dockerComposeOptions ) error {
211+ cmd := exec .Command ("docker-compose" , opts .args ... )
212+ cmd .Env = append (os .Environ (), opts .env ... )
213+ if opts .stdout != nil {
214+ cmd .Stdout = opts .stdout
209215 }
210216
211217 logger .Debugf ("running command: %s" , cmd )
0 commit comments