Bug 1259427 - Docker version invalid
Docker version invalid
Status: CLOSED CURRENTRELEASE
Product: Fedora
Classification: Fedora
Component: docker (Show other bugs)
22
Unspecified Linux
unspecified Severity unspecified
: ---
: ---
Assigned To: Lokesh Mandvekar
Fedora Extras Quality Assurance
:
Depends On:
Blocks:
  Show dependency treegraph
 
Reported: 2015-09-02 10:57 EDT by haosdent
Modified: 2016-02-16 15:06 EST (History)
10 users (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2016-02-16 15:06:21 EST
Type: Bug
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)

  None (edit)
Description haosdent 2015-09-02 10:57:25 EDT
Description of problem:

Hello, the docker rpm packaged by fedora have a invalid version (1.7.0.fc22) which not match http://semver.org/ standard. There are some related issue here:

https://github.com/docker/docker/issues/15933
https://issues.apache.org/jira/browse/MESOS-2986

Could you change the version to 1.x.x-fc22 which match semver when package rpm, so that other tools depends on docker version output are more easy to parser and compare version?

Version-Release number of selected component (if applicable):


How reproducible:


Steps to Reproduce:
1. docker --version

Actual results:

Docker version 1.7.0.fc22, build 74e7a7a/1.7.0


Expected results:

Docker version 1.7.0-fc22, build 74e7a7a/1.7.0


Additional info:
Comment 1 Daniel Walsh 2015-09-02 11:32:04 EDT
Lokesh how does this get set?  Is this something we set in the build environment?
Comment 2 Lokesh Mandvekar 2015-09-02 11:40:46 EDT
It's set via https://pkgs.fedoraproject.org/cgit/docker.git/tree/docker.spec#n355

This was because of an earlier request by docker upstream so that we could tell the difference between upstream and fedora rpms.

I'll make this change right away across the board.
Comment 3 Daniel Walsh 2015-09-02 11:44:41 EDT
Ok seems like a good fix.
Comment 4 haosdent 2015-09-02 12:50:08 EDT
Thank you for your fast response!
Comment 5 Lokesh Mandvekar 2015-09-02 13:31:11 EDT
Just committed below patch to master/rawhide. Will add to other branches..


diff --git a/docker.spec b/docker.spec
index 5fe4905..68a9f18 100644
--- a/docker.spec
+++ b/docker.spec
@@ -41,6 +41,7 @@
 # docker stuff (prefix with d_)
 %global d_commit 566d2be0920655a5d6248ebc91a2079e138c59dd
 %global d_shortcommit %(c=%{d_commit}; echo ${c:0:7})
+%global d_dist %(echo %{?dist} | sed 's/./-/')

 # d-s-s stuff (prefix with dss_)
 %global dss_libdir %{_prefix}/lib/docker-storage-setup
@@ -352,7 +353,7 @@ This package installs %{summary}.

 # here keep the new line above otherwise autosetup fails when applying patch
 cp %{SOURCE5} .
-sed -i 's/$/%{?dist}/' VERSION
+sed -i 's/$/%{d_dist}/' VERSION

 # untar d-s-s
 tar zxf %{SOURCE8}
@@ -405,9 +406,9 @@ install -p -m 755 _build/src/%{repo}-fetch %{buildroot}%{_bindir}
 install -p -m 755 _build/src/%{repo}tarsum %{buildroot}%{_bindir}

 # Grab the first thing from -dev
-for x in bundles/*-dev%{?dist}; do \
-  install -p -m 755 $x/dynbinary/%{repo}-*-dev%{?dist} %{buildroot}%{_bindir}/%{repo}
-  install -p -m 755 $x/dynbinary/%{repo}init-*-dev%{?dist} %{buildroot}%{_libexecdir}/%{repo}/%{repo}init
+for x in bundles/*-dev%{d_dist}; do \
+  install -p -m 755 $x/dynbinary/%{repo}-*-dev%{d_dist} %{buildroot}%{_bindir}/%{repo}
+  install -p -m 755 $x/dynbinary/%{repo}init-*-dev%{d_dist} %{buildroot}%{_libexecdir}/%{repo}/%{repo}init
   break
 done



This now gives:

Client:
 Version:      1.9.0-dev-fc24
 API version:  1.21
 Package Version: docker-1.9.0-2.gitf8950e0.fc24.x86_64
 Go version:   go1.5
 Git commit:   0ff2a0f-dirty
 Built:        Wed Sep  2 17:12:02 UTC 2015
 OS/Arch:      linux/amd64

Server:
 Version:      1.9.0-dev-fc24
 API version:  1.21
 Package Version: 
 Go version:   go1.5
 Git commit:   0ff2a0f-dirty
 Built:        Wed Sep  2 17:12:02 UTC 2015
 OS/Arch:      linux/amd64
Comment 6 haosdent 2015-09-02 13:45:29 EDT
Thank you very much for so fast progress!
Comment 7 Daniel Walsh 2015-09-29 10:57:46 EDT
Fixed in docker-1.9
Comment 8 mysql1230 2016-02-04 03:37:38 EST
There is mesos-0.22.2 release to fix MESOS-2986 ticket. Are you willing to update mesos-0.22.2 to fedora 22 update YUM repository?

http://mesos.apache.org/downloads/
https://issues.apache.org/jira/browse/MESOS-2986
Comment 9 haosdent 2016-02-04 03:47:02 EST
Thank you for you reply, we do some special handle in this case. I think we don't have mesos in fedora yum repository, right? As far as I know, most user install it from source tarball or mesosphere repositories.
Comment 10 Jan Chaloupka 2016-02-04 03:58:37 EST
mysql1230, if you would like to have mesos in Fedora, please create a request for packaging it into Fedora (open new bz with "Request: package mesos into Fedora"). I will take a look at it and see what requirements are needed.
Comment 11 mysql1230 2016-02-04 23:02:15 EST
there is mesos binary in below fedora mirror repository, I'm not sure if belong to fedora yum.
http://fedora.mirror.digitalpacific.com.au/linux/updates/22/x86_64/m/

It's need lots of memory and disk space to re-compile from source tarball, and I can't find mesos-0.22.2 from mesosphere, only mesos-0.22.1 in mesosphere.

I raise a new bz request, please check
https://bugzilla.redhat.com/show_bug.cgi?id=1304952
Comment 12 Jan Chaloupka 2016-02-05 04:55:44 EST
haosdent, mysql1230, mesos is already packaged and built in Fedora.

There is an update for f23 needing karma:

https://bodhi.fedoraproject.org/updates/FEDORA-2015-14263

For f22, I have changed summary of the bz#1304952 for updating f22's mesos to 0.22.2. What about updating f22's mesos to 0.23.0? It is already built for f23 and could be used instead. Can you take a look at it and test it if it works for you and does not introduce any regression?

For additional conversation lets move to bz#1304952.

Note You need to log in before you can comment on or make changes to this bug.