All of lore.kernel.org
 help / color / mirror / Atom feed
* Re: [PATCH] docker: update to docker 1.12.5 release
       [not found] <20161219075858.30738-1-fathi.boudra@linaro.org>
@ 2016-12-19 14:02 ` Bruce Ashfield
  2016-12-19 15:30   ` Fathi Boudra
  0 siblings, 1 reply; 2+ messages in thread
From: Bruce Ashfield @ 2016-12-19 14:02 UTC (permalink / raw)
  To: Fathi Boudra, meta-virtualization; +Cc: koen.kooi

On 2016-12-19 02:58 AM, Fathi Boudra wrote:
> * update description:
>   - reword docker officially supported hosts section
>   - bump minimal required kernel from 3.8 to 3.10
> * update SRCREV to match docker 1.12.5 tag
> * set GOHOSTOS and GOOS explicitely
> * use a switch to set GOARCH based on TARGET_ARCH value. It also allows to
>   tune arm architecture and set GOARM as appropriate.
> * add zfs graphdriver exclusion to DOCKER_BUILDTAGS

Is the zfs issue something new with 1.12.5 ? Or is it just due to
a different use case ?

I'd like to avoid mixing changes that are not related to the version
bump with the patch that does the bump .. since I've had no ends of
trouble with docker breaking on corner cases. Smaller patches let
me more easily bisect issues.

I was wondering the same thing about the GOHOSTOS/GOOS

> * cosmetic:
>   - align all the DEPENDS
>   - fix indentation in do_install(): space -> tab

We could/should probably split this into the uprev and then the
smaller patches

i.e.

  - version bump
  - doc/description update
  - zfs
  - go build cleanup and arch selection
  - cosmetic

If you don't think you'll have time to get to the split, I can have
a go at it myself .. just let me know so I can make the time to do
the split.

Thanks for the update, I was slowly getting around to doing this
myself so it is nice to get the patch.

Cheers,

Bruce

>
> Signed-off-by: Fathi Boudra <fathi.boudra@linaro.org>
> ---
>  recipes-containers/docker/docker_git.bb | 57 ++++++++++++++++++++++-----------
>  1 file changed, 38 insertions(+), 19 deletions(-)
>
> diff --git a/recipes-containers/docker/docker_git.bb b/recipes-containers/docker/docker_git.bb
> index 2cff6f1..6d7145e 100644
> --- a/recipes-containers/docker/docker_git.bb
> +++ b/recipes-containers/docker/docker_git.bb
> @@ -9,16 +9,16 @@ 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 on non-amd64 \
> - hosts is not supported at this time. Please be careful when using it \
> - on anything besides amd64. \
> + This package contains the daemon and client. Using docker.io is \
> + officially supported on x86_64 and arm (32-bit) hosts. \
> + Other architectures are considered experimental. \
>   . \
> - Also, note that kernel version 3.8 or above is required for proper \
> + Also, note that kernel version 3.10 or above is required for proper \
>   operation of the daemon process, and that any lower versions may have \
>   subtle and/or glaring issues. \
>   "
>
> -SRCREV = "34d9a8240914d30f3a8fe28c1b7d1d4e36d0657b"
> +SRCREV = "7392c3b0ce0f9d3e918a321c66668c5d1ef4f689"
>  SRC_URI = "\
>  	git://github.com/docker/docker.git;nobranch=1 \
>  	file://docker.service \
> @@ -32,10 +32,11 @@ LIC_FILES_CHKSUM = "file://LICENSE;md5=aadc30f9c14d876ded7bedc0afd2d3d7"
>
>  S = "${WORKDIR}/git"
>
> -DOCKER_VERSION = "1.12.0"
> +DOCKER_VERSION = "1.12.5"
>  PV = "${DOCKER_VERSION}+git${SRCREV}"
>
> -DEPENDS = "go-cross \
> +DEPENDS = " \
> +    go-cross \
>      go-cli \
>      go-pty \
>      go-context \
> @@ -66,14 +67,32 @@ DOCKER_PKG="github.com/docker/docker"
>  do_configure[noexec] = "1"
>
>  do_compile() {
> -	export GOARCH="${TARGET_ARCH}"
> -	# supported amd64, 386, arm arm64
> -	if [ "${TARGET_ARCH}" = "x86_64" ]; then
> -		export GOARCH="amd64"
> -	fi
> -	if [ "${TARGET_ARCH}" = "aarch64" ]; then
> -		export GOARCH="arm64"
> -	fi
> +	GOHOSTOS="linux"
> +	GOOS="linux"
> +
> +	case "${TARGET_ARCH}" in
> +		arm)
> +			GOARCH=arm
> +			case "${TUNE_PKGARCH}" in
> +				cortexa*)
> +					export GOARM=7
> +				;;
> +			esac
> +		;;
> +		aarch64)
> +			GOARCH=arm64
> +		;;
> +		i586|i686)
> +			GOARCH=386
> +		;;
> +		x86_64)
> +			GOARCH=amd64
> +		;;
> +		*)
> +			GOARCH="${TARGET_ARCH}"
> +		;;
> +	esac
> +	export GOHOSTOS GOOS GOARCH
>
>  	# Set GOPATH. See 'PACKAGERS.md'. Don't rely on
>  	# docker to download its dependencies but rather
> @@ -92,7 +111,7 @@ do_compile() {
>  	export CGO_CFLAGS="${CFLAGS} --sysroot=${STAGING_DIR_TARGET}"
>  	export CGO_LDFLAGS="${LDFLAGS} --sysroot=${STAGING_DIR_TARGET}"
>  	# in order to exclude devicemapper and btrfs - https://github.com/docker/docker/issues/14056
> -	export DOCKER_BUILDTAGS='exclude_graphdriver_btrfs exclude_graphdriver_devicemapper'
> +	export DOCKER_BUILDTAGS='exclude_graphdriver_zfs exclude_graphdriver_btrfs exclude_graphdriver_devicemapper'
>
>  	# this is the unsupported built structure
>  	# that doesn't rely on an existing docker
> @@ -121,9 +140,9 @@ do_install() {
>  		install -m 644 ${S}/contrib/init/systemd/docker.* ${D}/${systemd_unitdir}/system
>  		# replaces one copied from above with one that uses the local registry for a mirror
>  		install -m 644 ${WORKDIR}/docker.service ${D}/${systemd_unitdir}/system
> -        else
> -            install -d ${D}${sysconfdir}/init.d
> -            install -m 0755 ${WORKDIR}/docker.init ${D}${sysconfdir}/init.d/docker.init
> +	else
> +		install -d ${D}${sysconfdir}/init.d
> +		install -m 0755 ${WORKDIR}/docker.init ${D}${sysconfdir}/init.d/docker.init
>  	fi
>
>  	mkdir -p ${D}/usr/share/docker/
>



^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: [PATCH] docker: update to docker 1.12.5 release
  2016-12-19 14:02 ` [PATCH] docker: update to docker 1.12.5 release Bruce Ashfield
@ 2016-12-19 15:30   ` Fathi Boudra
  0 siblings, 0 replies; 2+ messages in thread
From: Fathi Boudra @ 2016-12-19 15:30 UTC (permalink / raw)
  To: Bruce Ashfield; +Cc: meta-virtualization, Koen Kooi

On 19 December 2016 at 16:02, Bruce Ashfield
<bruce.ashfield@windriver.com> wrote:
> On 2016-12-19 02:58 AM, Fathi Boudra wrote:
>>
>> * update description:
>>   - reword docker officially supported hosts section
>>   - bump minimal required kernel from 3.8 to 3.10
>> * update SRCREV to match docker 1.12.5 tag
>> * set GOHOSTOS and GOOS explicitely
>> * use a switch to set GOARCH based on TARGET_ARCH value. It also allows to
>>   tune arm architecture and set GOARM as appropriate.
>> * add zfs graphdriver exclusion to DOCKER_BUILDTAGS
>
>
> Is the zfs issue something new with 1.12.5 ? Or is it just due to
> a different use case ?
>
> I'd like to avoid mixing changes that are not related to the version
> bump with the patch that does the bump .. since I've had no ends of
> trouble with docker breaking on corner cases. Smaller patches let
> me more easily bisect issues.
>
> I was wondering the same thing about the GOHOSTOS/GOOS
>
>> * cosmetic:
>>   - align all the DEPENDS
>>   - fix indentation in do_install(): space -> tab
>
>
> We could/should probably split this into the uprev and then the
> smaller patches
>
> i.e.
>
>  - version bump
>  - doc/description update
>  - zfs
>  - go build cleanup and arch selection
>  - cosmetic
>
> If you don't think you'll have time to get to the split, I can have
> a go at it myself .. just let me know so I can make the time to do
> the split.

I have time to split the changes. I'll follow up.

> Thanks for the update, I was slowly getting around to doing this
> myself so it is nice to get the patch.
>
> Cheers,
>
> Bruce
>
>
>>
>> Signed-off-by: Fathi Boudra <fathi.boudra@linaro.org>
>> ---
>>  recipes-containers/docker/docker_git.bb | 57
>> ++++++++++++++++++++++-----------
>>  1 file changed, 38 insertions(+), 19 deletions(-)
>>
>> diff --git a/recipes-containers/docker/docker_git.bb
>> b/recipes-containers/docker/docker_git.bb
>> index 2cff6f1..6d7145e 100644
>> --- a/recipes-containers/docker/docker_git.bb
>> +++ b/recipes-containers/docker/docker_git.bb
>> @@ -9,16 +9,16 @@ 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 on
>> non-amd64 \
>> - hosts is not supported at this time. Please be careful when using it \
>> - on anything besides amd64. \
>> + This package contains the daemon and client. Using docker.io is \
>> + officially supported on x86_64 and arm (32-bit) hosts. \
>> + Other architectures are considered experimental. \
>>   . \
>> - Also, note that kernel version 3.8 or above is required for proper \
>> + Also, note that kernel version 3.10 or above is required for proper \
>>   operation of the daemon process, and that any lower versions may have \
>>   subtle and/or glaring issues. \
>>   "
>>
>> -SRCREV = "34d9a8240914d30f3a8fe28c1b7d1d4e36d0657b"
>> +SRCREV = "7392c3b0ce0f9d3e918a321c66668c5d1ef4f689"
>>  SRC_URI = "\
>>         git://github.com/docker/docker.git;nobranch=1 \
>>         file://docker.service \
>> @@ -32,10 +32,11 @@ LIC_FILES_CHKSUM =
>> "file://LICENSE;md5=aadc30f9c14d876ded7bedc0afd2d3d7"
>>
>>  S = "${WORKDIR}/git"
>>
>> -DOCKER_VERSION = "1.12.0"
>> +DOCKER_VERSION = "1.12.5"
>>  PV = "${DOCKER_VERSION}+git${SRCREV}"
>>
>> -DEPENDS = "go-cross \
>> +DEPENDS = " \
>> +    go-cross \
>>      go-cli \
>>      go-pty \
>>      go-context \
>> @@ -66,14 +67,32 @@ DOCKER_PKG="github.com/docker/docker"
>>  do_configure[noexec] = "1"
>>
>>  do_compile() {
>> -       export GOARCH="${TARGET_ARCH}"
>> -       # supported amd64, 386, arm arm64
>> -       if [ "${TARGET_ARCH}" = "x86_64" ]; then
>> -               export GOARCH="amd64"
>> -       fi
>> -       if [ "${TARGET_ARCH}" = "aarch64" ]; then
>> -               export GOARCH="arm64"
>> -       fi
>> +       GOHOSTOS="linux"
>> +       GOOS="linux"
>> +
>> +       case "${TARGET_ARCH}" in
>> +               arm)
>> +                       GOARCH=arm
>> +                       case "${TUNE_PKGARCH}" in
>> +                               cortexa*)
>> +                                       export GOARM=7
>> +                               ;;
>> +                       esac
>> +               ;;
>> +               aarch64)
>> +                       GOARCH=arm64
>> +               ;;
>> +               i586|i686)
>> +                       GOARCH=386
>> +               ;;
>> +               x86_64)
>> +                       GOARCH=amd64
>> +               ;;
>> +               *)
>> +                       GOARCH="${TARGET_ARCH}"
>> +               ;;
>> +       esac
>> +       export GOHOSTOS GOOS GOARCH
>>
>>         # Set GOPATH. See 'PACKAGERS.md'. Don't rely on
>>         # docker to download its dependencies but rather
>> @@ -92,7 +111,7 @@ do_compile() {
>>         export CGO_CFLAGS="${CFLAGS} --sysroot=${STAGING_DIR_TARGET}"
>>         export CGO_LDFLAGS="${LDFLAGS} --sysroot=${STAGING_DIR_TARGET}"
>>         # in order to exclude devicemapper and btrfs -
>> https://github.com/docker/docker/issues/14056
>> -       export DOCKER_BUILDTAGS='exclude_graphdriver_btrfs
>> exclude_graphdriver_devicemapper'
>> +       export DOCKER_BUILDTAGS='exclude_graphdriver_zfs
>> exclude_graphdriver_btrfs exclude_graphdriver_devicemapper'
>>
>>         # this is the unsupported built structure
>>         # that doesn't rely on an existing docker
>> @@ -121,9 +140,9 @@ do_install() {
>>                 install -m 644 ${S}/contrib/init/systemd/docker.*
>> ${D}/${systemd_unitdir}/system
>>                 # replaces one copied from above with one that uses the
>> local registry for a mirror
>>                 install -m 644 ${WORKDIR}/docker.service
>> ${D}/${systemd_unitdir}/system
>> -        else
>> -            install -d ${D}${sysconfdir}/init.d
>> -            install -m 0755 ${WORKDIR}/docker.init
>> ${D}${sysconfdir}/init.d/docker.init
>> +       else
>> +               install -d ${D}${sysconfdir}/init.d
>> +               install -m 0755 ${WORKDIR}/docker.init
>> ${D}${sysconfdir}/init.d/docker.init
>>         fi
>>
>>         mkdir -p ${D}/usr/share/docker/
>>
>


^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2016-12-19 15:31 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
     [not found] <20161219075858.30738-1-fathi.boudra@linaro.org>
2016-12-19 14:02 ` [PATCH] docker: update to docker 1.12.5 release Bruce Ashfield
2016-12-19 15:30   ` Fathi Boudra

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.