mirror of
https://github.com/moby/moby.git
synced 2026-07-01 20:27:59 +00:00
The script to build (static)binaries also generated checksums for all binaries
and scripts included. These checksums were not used, and not included when
releasing packages (which are a `tar.gz` for which a separate checksum would
be generated).
Removing these checksums, as they're unused, and complicated using these
artifacts for packagers (who would have to exclude them after building).
Before this:
```bash
rm -rf ./bundles
docker buildx build --build-arg VERSION=22.06.0-beta.1 --output ./bundles --target binary .
tree bundles
bundles
└── binary-daemon
├── containerd
├── containerd-shim-runc-v2
├── containerd-shim-runc-v2.md5
├── containerd-shim-runc-v2.sha256
├── containerd.md5
├── containerd.sha256
├── ctr
├── ctr.md5
├── ctr.sha256
├── docker-init
├── docker-init.md5
├── docker-init.sha256
├── docker-proxy
├── docker-proxy.md5
├── docker-proxy.sha256
├── dockerd
├── dockerd-rootless-setuptool.sh
├── dockerd-rootless-setuptool.sh.md5
├── dockerd-rootless-setuptool.sh.sha256
├── dockerd-rootless.sh
├── dockerd-rootless.sh.md5
├── dockerd-rootless.sh.sha256
├── dockerd.md5
├── dockerd.sha256
├── rootlesskit
├── rootlesskit-docker-proxy
├── rootlesskit-docker-proxy.md5
├── rootlesskit-docker-proxy.sha256
├── rootlesskit.md5
├── rootlesskit.sha256
├── runc
├── runc.md5
├── runc.sha256
├── vpnkit
├── vpnkit.md5
└── vpnkit.sha256
1 directory, 36 files
```
After this:
```bash
rm -rf ./bundles
docker buildx build --build-arg VERSION=22.06.0-beta.1 --output ./bundles --target binary .
tree bundles
bundles
└── binary-daemon
├── containerd
├── containerd-shim-runc-v2
├── ctr
├── docker-init
├── docker-proxy
├── dockerd
├── dockerd-rootless-setuptool.sh
├── dockerd-rootless.sh
├── rootlesskit
├── rootlesskit-docker-proxy
├── runc
└── vpnkit
1 directory, 12 files
```
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
36 lines
980 B
Bash
36 lines
980 B
Bash
#!/usr/bin/env bash
|
|
set -e
|
|
|
|
copy_binaries() {
|
|
local dir="$1"
|
|
|
|
# Add nested executables to bundle dir so we have complete set of
|
|
# them available, but only if the native OS/ARCH is the same as the
|
|
# OS/ARCH of the build target
|
|
if [ "$(go env GOOS)/$(go env GOARCH)" != "$(go env GOHOSTOS)/$(go env GOHOSTARCH)" ]; then
|
|
return
|
|
fi
|
|
if [ ! -x /usr/local/bin/runc ]; then
|
|
return
|
|
fi
|
|
echo "Copying nested executables into $dir"
|
|
for file in containerd containerd-shim-runc-v2 ctr runc docker-init rootlesskit rootlesskit-docker-proxy dockerd-rootless.sh dockerd-rootless-setuptool.sh; do
|
|
cp -f "$(command -v "$file")" "$dir/"
|
|
done
|
|
|
|
# vpnkit is available for x86_64 and aarch64
|
|
if command -v "vpnkit.$(uname -m)" 2>&1 > /dev/null; then
|
|
cp -f "$(command -v "vpnkit.$(uname -m)")" "$dir/vpnkit"
|
|
fi
|
|
}
|
|
|
|
[ -z "$KEEPDEST" ] && rm -rf "$DEST"
|
|
|
|
(
|
|
GO_PACKAGE='github.com/docker/docker/cmd/dockerd'
|
|
BINARY_NAME='dockerd'
|
|
|
|
source "${MAKEDIR}/.binary"
|
|
copy_binaries "$DEST"
|
|
)
|