Merge pull request #1246 from ulyssessouza/label-envfiles

Add environment_files label on service's `env_file` section
This commit is contained in:
Guillaume Tardif 2021-02-08 16:09:44 +01:00 committed by GitHub
commit 66fb7903ad
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 23 additions and 2 deletions

View File

@ -25,4 +25,6 @@ const (
ServiceTag = "com.docker.compose.service"
// VolumeTag allow to track resource related to a compose volume
VolumeTag = "com.docker.compose.volume"
// EnvironmentFileLabel is set in containers with the option "--env-file" when set
EnvironmentFileLabel = "com.docker.compose.project.environment_file"
)

View File

@ -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
}

View File

@ -21,8 +21,9 @@ import (
"strconv"
"strings"
"github.com/docker/compose-cli/api/compose"
"github.com/docker/docker/api/types/filters"
"github.com/docker/compose-cli/api/compose"
)
const (
@ -38,7 +39,7 @@ const (
configHashLabel = "com.docker.compose.config-hash"
networkLabel = compose.NetworkTag
//ComposeVersion Compose version
// ComposeVersion Compose version
ComposeVersion = "1.0-alpha"
)