diff --git a/recipes-containers/docker/docker-ce_git.bb b/recipes-containers/docker/docker-ce_git.bb index a0d774ad..042d3a41 100644 --- a/recipes-containers/docker/docker-ce_git.bb +++ b/recipes-containers/docker/docker-ce_git.bb @@ -9,8 +9,8 @@ DESCRIPTION = "Linux container runtime \ large-scale web deployments, database clusters, continuous deployment \ systems, private PaaS, service-oriented architectures, etc. \ . \ - This package contains the daemon and client. Using docker.io is \ - officially supported on x86_64 and arm (32-bit) hosts. \ + This package contains the daemon and client, which are \ + officially supported on x86_64 and arm hosts. \ Other architectures are considered experimental. \ . \ Also, note that kernel version 3.10 or above is required for proper \ @@ -26,6 +26,8 @@ SRC_URI = "\ file://docker.init \ " +require docker.inc + # Apache-2.0 for docker LICENSE = "Apache-2.0" LIC_FILES_CHKSUM = "file://src/import/components/engine/LICENSE;md5=9740d093a080530b5c5c6573df9af45a" @@ -37,43 +39,10 @@ S = "${WORKDIR}/git" DOCKER_VERSION = "18.09.3-ce" PV = "${DOCKER_VERSION}+git${SRCREV_docker}" -DEPENDS = " \ - go-cli \ - go-pty \ - go-context \ - go-mux \ - go-patricia \ - go-logrus \ - go-fsnotify \ - go-dbus \ - go-capability \ - go-systemd \ - btrfs-tools \ - sqlite3 \ - go-distribution \ - compose-file \ - go-connections \ - notary \ - grpc-go \ - libtool-native \ - libtool \ - " - PACKAGES =+ "${PN}-contrib" -DEPENDS_append_class-target = " lvm2" -RDEPENDS_${PN} = "util-linux util-linux-unshare iptables \ - ${@bb.utils.contains('DISTRO_FEATURES', 'aufs', 'aufs-util', '', d)} \ - ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', '', 'cgroup-lite', d)} \ - bridge-utils \ - ca-certificates \ - " -RDEPENDS_${PN} += "virtual/containerd virtual/runc" - -RRECOMMENDS_${PN} = "kernel-module-dm-thin-pool kernel-module-nf-nat" DOCKER_PKG="github.com/docker/docker" -inherit systemd update-rc.d inherit go inherit goarch inherit pkgconfig @@ -126,14 +95,6 @@ do_compile() { VERSION="${DOCKER_VERSION}" DOCKER_GITCOMMIT="${SRCREV_docker}" make dynbinary } -SYSTEMD_PACKAGES = "${@bb.utils.contains('DISTRO_FEATURES','systemd','${PN}','',d)}" -SYSTEMD_SERVICE_${PN} = "${@bb.utils.contains('DISTRO_FEATURES','systemd','docker.service','',d)}" -SYSTEMD_AUTO_ENABLE_${PN} = "enable" - -INITSCRIPT_PACKAGES += "${@bb.utils.contains('DISTRO_FEATURES','sysvinit','${PN}','',d)}" -INITSCRIPT_NAME_${PN} = "${@bb.utils.contains('DISTRO_FEATURES','sysvinit','docker.init','',d)}" -INITSCRIPT_PARAMS_${PN} = "defaults" - do_install() { mkdir -p ${D}/${bindir} cp ${S}/src/import/components/cli/build/docker ${D}/${bindir}/docker @@ -157,15 +118,7 @@ do_install() { install -m 0755 ${S}/src/import/components/engine/contrib/check-config.sh ${D}${datadir}/docker/ } -inherit useradd -USERADD_PACKAGES = "${PN}" -GROUPADD_PARAM_${PN} = "-r docker" - FILES_${PN} += "${systemd_unitdir}/system/* ${sysconfdir}/docker" FILES_${PN}-contrib += "${datadir}/docker/check-config.sh" RDEPENDS_${PN}-contrib += "bash" - -# DO NOT STRIP docker -INHIBIT_PACKAGE_STRIP = "1" -INSANE_SKIP_${PN} += "ldflags" diff --git a/recipes-containers/docker/docker.inc b/recipes-containers/docker/docker.inc new file mode 100644 index 00000000..168d2965 --- /dev/null +++ b/recipes-containers/docker/docker.inc @@ -0,0 +1,56 @@ +DEPENDS = " \ + go-cli \ + go-pty \ + go-context \ + go-mux \ + go-patricia \ + go-logrus \ + go-fsnotify \ + go-dbus \ + go-capability \ + go-systemd \ + btrfs-tools \ + sqlite3 \ + go-distribution \ + compose-file \ + go-connections \ + notary \ + grpc-go \ + libtool-native \ + libtool \ + " + +DEPENDS_append_class-target = " lvm2" +RDEPENDS_${PN} = "util-linux util-linux-unshare iptables \ + ${@bb.utils.contains('DISTRO_FEATURES', 'aufs', 'aufs-util', '', d)} \ + ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', '', 'cgroup-lite', d)} \ + bridge-utils \ + ca-certificates \ + " +RDEPENDS_${PN} += "virtual/containerd virtual/runc" + +RRECOMMENDS_${PN} = "kernel-module-dm-thin-pool kernel-module-nf-nat" + +inherit pkgconfig +PACKAGECONFIG ??= "" +PACKAGECONFIG[seccomp] = "seccomp,,libseccomp" + +inherit systemd update-rc.d + +SYSTEMD_PACKAGES = "${@bb.utils.contains('DISTRO_FEATURES','systemd','${PN}','',d)}" +SYSTEMD_SERVICE_${PN} = "${@bb.utils.contains('DISTRO_FEATURES','systemd','docker.service','',d)}" +SYSTEMD_AUTO_ENABLE_${PN} = "enable" + +INITSCRIPT_PACKAGES += "${@bb.utils.contains('DISTRO_FEATURES','sysvinit','${PN}','',d)}" +INITSCRIPT_NAME_${PN} = "${@bb.utils.contains('DISTRO_FEATURES','sysvinit','docker.init','',d)}" +INITSCRIPT_PARAMS_${PN} = "defaults" + +inherit useradd +USERADD_PACKAGES = "${PN}" +GROUPADD_PARAM_${PN} = "-r docker" + +COMPATIBLE_HOST = "^(?!(qemu)?mips).*" + +# DO NOT STRIP docker +INHIBIT_PACKAGE_STRIP = "1" +INSANE_SKIP_${PN} += "ldflags textrel" diff --git a/recipes-containers/docker/docker_git.bb b/recipes-containers/docker/docker_git.bb index d3c507ba..75a8161b 100644 --- a/recipes-containers/docker/docker_git.bb +++ b/recipes-containers/docker/docker_git.bb @@ -46,6 +46,8 @@ SRC_URI = "\ file://0001-libnetwork-use-GO-instead-of-go.patch \ " +require docker.inc + # Apache-2.0 for docker LICENSE = "Apache-2.0" LIC_FILES_CHKSUM = "file://src/import/LICENSE;md5=4859e97a9c7780e77972d989f0823f28" @@ -57,48 +59,12 @@ S = "${WORKDIR}/git" DOCKER_VERSION = "18.09.3" PV = "${DOCKER_VERSION}+git${SRCREV_moby}" -DEPENDS = " \ - go-cli \ - go-pty \ - go-context \ - go-mux \ - go-patricia \ - go-logrus \ - go-fsnotify \ - go-dbus \ - go-capability \ - go-systemd \ - btrfs-tools \ - sqlite3 \ - go-distribution \ - compose-file \ - go-connections \ - notary \ - grpc-go \ - libtool \ - " - -PACKAGECONFIG ??= "" -PACKAGECONFIG[seccomp] = "seccomp,,libseccomp" - PACKAGES =+ "${PN}-contrib" -DEPENDS_append_class-target = " lvm2" -RDEPENDS_${PN} = "util-linux util-linux-unshare iptables \ - ${@bb.utils.contains('DISTRO_FEATURES', 'aufs', 'aufs-util', '', d)} \ - ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', '', 'cgroup-lite', d)} \ - bridge-utils \ - ca-certificates \ - " -RDEPENDS_${PN} += "virtual/containerd virtual/runc" - -RRECOMMENDS_${PN} = "kernel-module-dm-thin-pool kernel-module-nf-nat docker-init" DOCKER_PKG="github.com/docker/docker" -inherit systemd update-rc.d inherit go inherit goarch -inherit pkgconfig do_configure[noexec] = "1" @@ -148,15 +114,6 @@ do_compile() { oe_runmake cross-local } -SYSTEMD_PACKAGES = "${@bb.utils.contains('DISTRO_FEATURES','systemd','${PN}','',d)}" -SYSTEMD_SERVICE_${PN} = "${@bb.utils.contains('DISTRO_FEATURES','systemd','docker.service','',d)}" - -SYSTEMD_AUTO_ENABLE_${PN} = "enable" - -INITSCRIPT_PACKAGES += "${@bb.utils.contains('DISTRO_FEATURES','sysvinit','${PN}','',d)}" -INITSCRIPT_NAME_${PN} = "${@bb.utils.contains('DISTRO_FEATURES','sysvinit','docker.init','',d)}" -INITSCRIPT_PARAMS_${PN} = "defaults" - do_install() { mkdir -p ${D}/${bindir} cp ${WORKDIR}/git/cli/build/docker ${D}/${bindir}/docker @@ -180,17 +137,7 @@ do_install() { install -m 0755 ${S}/src/import/contrib/check-config.sh ${D}${datadir}/docker/ } -inherit useradd -USERADD_PACKAGES = "${PN}" -GROUPADD_PARAM_${PN} = "-r docker" - FILES_${PN} += "${systemd_unitdir}/system/* ${sysconfdir}/docker" FILES_${PN}-contrib += "${datadir}/docker/check-config.sh" RDEPENDS_${PN}-contrib += "bash" - -# DO NOT STRIP docker -INHIBIT_PACKAGE_STRIP = "1" -INSANE_SKIP_${PN} += "ldflags textrel" - -COMPATIBLE_HOST = "^(?!(qemu)?mips).*"