зеркало из https://github.com/docker/compose-cli.git
Merge pull request #2171 from p1-0tr/ps-docker-cli-sock-from-home
Use Docker CLI socket from home
This commit is contained in:
Коммит
471888f366
|
@ -108,7 +108,7 @@ RUN --mount=target=. \
|
|||
make -f builder.Makefile test
|
||||
|
||||
FROM base AS check-license-headers
|
||||
RUN go get -u github.com/kunalkushwaha/ltag
|
||||
RUN go install github.com/google/addlicense@latest
|
||||
RUN --mount=target=. \
|
||||
make -f builder.Makefile check-license-headers
|
||||
|
||||
|
|
|
@ -0,0 +1,43 @@
|
|||
//go:build darwin
|
||||
// +build darwin
|
||||
|
||||
/*
|
||||
Copyright 2022 Docker Compose CLI authors
|
||||
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
*/
|
||||
|
||||
package metrics
|
||||
|
||||
import (
|
||||
"net"
|
||||
"path/filepath"
|
||||
|
||||
"github.com/docker/docker/pkg/homedir"
|
||||
)
|
||||
|
||||
var (
|
||||
socket = "/var/run/docker-cli.sock"
|
||||
)
|
||||
|
||||
func init() {
|
||||
// Attempt to retrieve the Docker CLI socket for the current user.
|
||||
if home := homedir.Get(); home != "" {
|
||||
socket = filepath.Join(home, "/Library/Containers/com.docker.docker/Data/docker-cli.sock")
|
||||
} // else: On macOS Docker Desktop creates symlinks in /var/run, so fall back to the old default.
|
||||
overrideSocket() // nop, unless built for e2e testing
|
||||
}
|
||||
|
||||
func conn() (net.Conn, error) {
|
||||
return net.Dial("unix", socket)
|
||||
}
|
|
@ -1,7 +1,8 @@
|
|||
//go:build e2e
|
||||
// +build e2e
|
||||
|
||||
/*
|
||||
Copyright 2020 Docker Compose CLI authors
|
||||
Copyright 2020, 2022 Docker Compose CLI authors
|
||||
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
|
@ -22,7 +23,7 @@ import (
|
|||
"os"
|
||||
)
|
||||
|
||||
func init() {
|
||||
func overrideSocket() {
|
||||
testSocket, defined := os.LookupEnv("TEST_METRICS_SOCKET")
|
||||
if defined {
|
||||
socket = testSocket
|
||||
|
|
|
@ -1,5 +1,8 @@
|
|||
//go:build !e2e
|
||||
// +build !e2e
|
||||
|
||||
/*
|
||||
Copyright 2020 Docker Compose CLI authors
|
||||
Copyright 2022 Docker Compose CLI authors
|
||||
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
|
@ -14,3 +17,7 @@
|
|||
limitations under the License.
|
||||
*/
|
||||
|
||||
package metrics
|
||||
|
||||
func overrideSocket() {
|
||||
}
|
|
@ -1,7 +1,8 @@
|
|||
// +build !windows
|
||||
//go:build !windows,!darwin
|
||||
// +build !windows,!darwin
|
||||
|
||||
/*
|
||||
Copyright 2020 Docker Compose CLI authors
|
||||
Copyright 2020, 2022 Docker Compose CLI authors
|
||||
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
|
@ -18,12 +19,25 @@
|
|||
|
||||
package metrics
|
||||
|
||||
import "net"
|
||||
import (
|
||||
"net"
|
||||
"path/filepath"
|
||||
|
||||
"github.com/docker/docker/pkg/homedir"
|
||||
)
|
||||
|
||||
var (
|
||||
socket = "/var/run/docker-cli.sock"
|
||||
socket = ""
|
||||
)
|
||||
|
||||
func init() {
|
||||
// Attempt to retrieve the Docker CLI socket for the current user.
|
||||
if home := homedir.Get(); home != "" {
|
||||
socket = filepath.Join(home, ".docker/desktop/docker-cli.sock")
|
||||
} // else: On Linux we don't expect to have a global CLI socket, so leave it empty and let connections fail.
|
||||
overrideSocket() // nop, unless built for e2e testing
|
||||
}
|
||||
|
||||
func conn() (net.Conn, error) {
|
||||
return net.Dial("unix", socket)
|
||||
}
|
||||
|
|
|
@ -1,7 +1,8 @@
|
|||
//go:build windows
|
||||
// +build windows
|
||||
|
||||
/*
|
||||
Copyright 2020 Docker Compose CLI authors
|
||||
Copyright 2020, 2022 Docker Compose CLI authors
|
||||
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
|
@ -30,6 +31,10 @@ var (
|
|||
socket = `\\.\pipe\docker_cli`
|
||||
)
|
||||
|
||||
func init() {
|
||||
overrideSocket() // no-op, unless built for e2e testing
|
||||
}
|
||||
|
||||
func conn() (net.Conn, error) {
|
||||
if strings.HasPrefix(socket, `\\.\pipe\`) {
|
||||
timeout := 200 * time.Millisecond
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
#!/usr/bin/env sh
|
||||
|
||||
# Copyright Docker Compose CLI authors
|
||||
# Copyright 2020, 2022 Docker Compose CLI authors
|
||||
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
|
@ -16,12 +16,10 @@
|
|||
|
||||
set -eu -o pipefail
|
||||
|
||||
if ! command -v ltag; then
|
||||
>&2 echo "ERROR: ltag not found. Install with:"
|
||||
>&2 echo " go get -u github.com/kunalkushwaha/ltag"
|
||||
if ! command -v addlicense; then
|
||||
>&2 echo "ERROR: addlicense not found. Install with:"
|
||||
>&2 echo " go install github.com/google/addlicense@latest"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
BASEPATH="${1-}"
|
||||
|
||||
ltag -t "${BASEPATH}scripts/validate/template" -excludes "validate testdata resolvepath" --check -v
|
||||
find . -regex '.*\.sh' -o -regex '.*\.go' -o -regex '.*Makefile' -o -regex '.*Dockerfile' | xargs addlicense -check -l apache -c 'Docker Compose CLI authors' -ignore validate -ignore testdata -ignore resolvepath -v 1>&2
|
||||
|
|
|
@ -1,13 +0,0 @@
|
|||
# Copyright 2020 Docker Compose CLI authors
|
||||
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
|
@ -1,13 +0,0 @@
|
|||
# Copyright 2020 Docker Compose CLI authors
|
||||
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
|
@ -1,13 +0,0 @@
|
|||
# Copyright 2020 Docker Compose CLI authors
|
||||
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
Загрузка…
Ссылка в новой задаче