Bug 1539161 - Review Request: moby-engine - The open-source application container engine
Summary: Review Request: moby-engine - The open-source application container engine
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Fedora
Classification: Fedora
Component: Package Review
Version: rawhide
Hardware: All
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Neal Gompa
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2018-01-26 19:39 UTC by Lokesh Mandvekar
Modified: 2018-10-18 18:31 UTC (History)
17 users (show)

Fixed In Version:
Clone Of:
Environment:
Last Closed: 2018-08-30 04:53:26 UTC
Type: ---
Embargoed:
ngompa13: fedora-review+


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
Red Hat Bugzilla 1492331 0 unspecified CLOSED This package should provide the latest stable version of docker-ce (or moby) 2021-02-22 00:41:40 UTC
Red Hat Bugzilla 1514841 0 unspecified CLOSED docker update to a mutistage build version 2021-02-22 00:41:40 UTC
Red Hat Bugzilla 1545820 0 unspecified CLOSED retire docker-latest in favour of docker 2021-02-22 00:41:40 UTC

Internal Links: 1492331 1514841 1545820

Description Lokesh Mandvekar 2018-01-26 19:39:21 UTC
Spec URL: https://pagure.io/moby-engine/raw/master/f/moby-engine.spec
SRPM URL: https://pagure.io/moby-engine/blob/master/f/SRPMS/moby-engine-17.03.2-1.gitf5ec1e2.fc27.src.rpm

Description: Docker is an open source project to build, ship and run any application as a
lightweight container.

Docker containers are both hardware-agnostic and platform-agnostic. This means
they can run anywhere, from your laptop to the largest EC2 compute instance and
everything in between - and they don't require you to use a particular
language, framework or packaging system. That makes them great building blocks
for deploying and scaling web apps, databases, and backend services without
depending on a particular stack or provider.


koji: https://koji.fedoraproject.org/koji/taskinfo?taskID=24472934

Fedora Account System Username: lsm5

Comment 1 Carl George 2018-01-29 19:49:04 UTC
Source3 in this spec file is containerd.  containerd is already packaged for Fedora, and provides the commands containerd, containerd-shim, and ctr.  Based on my current understanding of this brave new Moby world, Source3 and relevant sections can be dropped and instead just require containerd.

Comment 2 Carl George 2018-01-29 22:39:09 UTC
I came across this today.

https://github.com/moby/moby/pull/34226

I think it's worth considering starting this package with those binary names to avoid having to change them later.

Comment 3 Lokesh Mandvekar 2018-02-21 20:09:47 UTC
Spec URL: https://pagure.io/moby-engine/raw/master/f/moby-engine.spec
SRPM URL: https://pagure.io/moby-engine/blob/master/f/SRPMS/moby-engine-17.03.2-2.ce.gitf5ec1e2.fc27.src.rpm

koji: https://koji.fedoraproject.org/koji/taskinfo?taskID=25221033

binaries renamed:

docker -> moby
dockerd -> moby-engine
docker-containerd -> moby-containerd
docker-containerd-ctr -> moby-containerd-ctr
docker-containerd-shim -> moby-containerd-shim
docker-init -> moby-init
docker-proxy -> moby-proxy
docker-runc -> moby-runc

RE: container storage, it uses /var/lib/docker which would be the same as that for the docker package. I'd just like to make sure common dir wouldn't cause problems ahead.

Comment 4 Daniel Walsh 2018-02-21 20:51:26 UTC
I am fine with using the same storage until moby changes the default.

Comment 5 Daniel Walsh 2018-02-21 20:52:47 UTC
Seems like the rename process has sore o hung

Comment 6 Daniel Walsh 2018-02-21 20:53:10 UTC
sort of hung

Comment 7 Daniel Walsh 2018-02-21 20:53:58 UTC
We also want to get some of our patches merged into this package.  We should be packaging up projectatomic/moby not moby/moby

Comment 8 Lokesh Mandvekar 2018-02-22 14:41:48 UTC
RE: binary renames, I'll include docker-* as symlinks to the moby-* binaries.

Comment 9 Lokesh Mandvekar 2018-02-22 14:45:59 UTC
(In reply to Daniel Walsh from comment #7)
> We also want to get some of our patches merged into this package.  We should
> be packaging up projectatomic/moby not moby/moby

Sure, that can be done once we have projectatomic/moby ready with the patches.

Comment 10 Lokesh Mandvekar 2018-02-22 16:00:15 UTC
SRPM URL: https://pagure.io/moby-engine/blob/master/f/SRPMS/moby-engine-17.03.2-3.ce.gitf5ec1e2.fc27.src.rpm

docker-* are symlinks to moby-* in this build.

Spec location is the same.

Comment 11 Frantisek Kluknavsky 2018-02-23 01:04:20 UTC
rpmlint *.rpm
moby-engine.x86_64: W: incoherent-version-in-changelog 17.03.2-3.ce ['17.03.2-3.ce.gitf5ec1e2.fc26', '17.03.2-3.ce.gitf5ec1e2']
moby-engine.x86_64: E: statically-linked-binary /usr/libexec/moby-engine/moby-init
moby-engine.x86_64: W: udev-rule-in-etc /etc/udev/rules.d/80-moby.rules
moby-engine.x86_64: W: non-conffile-in-etc /etc/udev/rules.d/80-moby.rules
moby-engine.x86_64: E: wrong-script-interpreter /usr/share/bash-completion/completions/moby /usr/bin/env bash
moby-engine.x86_64: E: non-executable-script /usr/share/bash-completion/completions/moby 644 /usr/bin/env bash
moby-engine.x86_64: W: manual-page-warning /usr/share/man/man1/moby-run.1.gz 1125: warning: macro `You' not defined
moby-engine.x86_64: W: no-manual-page-for-binary docker
moby-engine.x86_64: W: no-manual-page-for-binary moby-engine
moby-engine-debuginfo.x86_64: E: script-without-shebang /usr/src/debug/moby-f5ec1e2936dcbe7b5001c2b817188b095c700c27/_build/src/github.com/docker/docker/vendor/github.com/armon/go-metrics/metrics.go
moby-engine-debuginfo.x86_64: E: script-without-shebang /usr/src/debug/moby-f5ec1e2936dcbe7b5001c2b817188b095c700c27/_build/src/github.com/docker/docker/vendor/github.com/armon/go-metrics/sink.go
moby-engine-debuginfo.x86_64: E: script-without-shebang /usr/src/debug/moby-f5ec1e2936dcbe7b5001c2b817188b095c700c27/_build/src/github.com/docker/docker/vendor/github.com/armon/go-metrics/start.go
moby-engine-debuginfo.x86_64: E: script-without-shebang /usr/src/debug/moby-f5ec1e2936dcbe7b5001c2b817188b095c700c27/_build/src/github.com/docker/docker/vendor/github.com/armon/go-metrics/statsite.go
moby-engine-debuginfo.x86_64: E: script-without-shebang /usr/src/debug/moby-f5ec1e2936dcbe7b5001c2b817188b095c700c27/_build/src/github.com/docker/docker/vendor/github.com/google/certificate-transparency/go/asn1/asn1.go
moby-engine-debuginfo.x86_64: E: script-without-shebang /usr/src/debug/moby-f5ec1e2936dcbe7b5001c2b817188b095c700c27/_build/src/github.com/docker/docker/vendor/github.com/google/certificate-transparency/go/asn1/common.go
moby-engine-debuginfo.x86_64: E: script-without-shebang /usr/src/debug/moby-f5ec1e2936dcbe7b5001c2b817188b095c700c27/_build/src/github.com/docker/docker/vendor/github.com/google/certificate-transparency/go/asn1/marshal.go
moby-engine-debuginfo.x86_64: E: script-without-shebang /usr/src/debug/moby-f5ec1e2936dcbe7b5001c2b817188b095c700c27/_build/src/github.com/docker/docker/vendor/github.com/google/certificate-transparency/go/x509/cert_pool.go
moby-engine-debuginfo.x86_64: E: script-without-shebang /usr/src/debug/moby-f5ec1e2936dcbe7b5001c2b817188b095c700c27/_build/src/github.com/docker/docker/vendor/github.com/google/certificate-transparency/go/x509/pem_decrypt.go
moby-engine-debuginfo.x86_64: E: script-without-shebang /usr/src/debug/moby-f5ec1e2936dcbe7b5001c2b817188b095c700c27/_build/src/github.com/docker/docker/vendor/github.com/google/certificate-transparency/go/x509/pkcs1.go
moby-engine-debuginfo.x86_64: E: script-without-shebang /usr/src/debug/moby-f5ec1e2936dcbe7b5001c2b817188b095c700c27/_build/src/github.com/docker/docker/vendor/github.com/google/certificate-transparency/go/x509/pkix/pkix.go
moby-engine-debuginfo.x86_64: E: script-without-shebang /usr/src/debug/moby-f5ec1e2936dcbe7b5001c2b817188b095c700c27/_build/src/github.com/docker/docker/vendor/github.com/google/certificate-transparency/go/x509/root.go
moby-engine-debuginfo.x86_64: E: script-without-shebang /usr/src/debug/moby-f5ec1e2936dcbe7b5001c2b817188b095c700c27/_build/src/github.com/docker/docker/vendor/github.com/google/certificate-transparency/go/x509/root_unix.go
moby-engine-debuginfo.x86_64: E: script-without-shebang /usr/src/debug/moby-f5ec1e2936dcbe7b5001c2b817188b095c700c27/_build/src/github.com/docker/docker/vendor/github.com/google/certificate-transparency/go/x509/verify.go
moby-engine-debuginfo.x86_64: E: script-without-shebang /usr/src/debug/moby-f5ec1e2936dcbe7b5001c2b817188b095c700c27/_build/src/github.com/docker/docker/vendor/github.com/google/certificate-transparency/go/x509/x509.go
moby-engine-debuginfo.x86_64: E: script-without-shebang /usr/src/debug/moby-f5ec1e2936dcbe7b5001c2b817188b095c700c27/_build/src/github.com/docker/docker/vendor/github.com/pborman/uuid/dce.go
moby-engine-debuginfo.x86_64: E: script-without-shebang /usr/src/debug/moby-f5ec1e2936dcbe7b5001c2b817188b095c700c27/_build/src/github.com/docker/docker/vendor/github.com/pborman/uuid/node.go
moby-engine-debuginfo.x86_64: E: script-without-shebang /usr/src/debug/moby-f5ec1e2936dcbe7b5001c2b817188b095c700c27/_build/src/github.com/docker/docker/vendor/github.com/pborman/uuid/time.go
moby-engine-fish-completion.x86_64: W: summary-not-capitalized C fish completion files for Docker
moby-engine-fish-completion.x86_64: W: no-documentation
moby-engine-nano.x86_64: W: summary-not-capitalized C nano syntax highlighting files for Moby
moby-engine-nano.x86_64: W: no-documentation
moby-engine-vim.x86_64: W: summary-not-capitalized C vim syntax highlighting files for Moby
moby-engine-vim.x86_64: W: no-documentation
moby-engine-zsh-completion.x86_64: W: summary-not-capitalized C zsh completion files for Moby
moby-engine-zsh-completion.x86_64: W: no-documentation
7 packages and 0 specfiles checked; 21 errors, 14 warnings.

Comment 12 Frantisek Kluknavsky 2018-02-23 01:16:01 UTC
MUST: A package must own all directories that it creates. If it does not create a directory that it uses, then it should require a package which does create that directory.

file /usr/libexec/moby-engine is not owned by any package

Comment 13 Frantisek Kluknavsky 2018-03-05 18:53:45 UTC
incoherent-version-in-changelog is a false positive (Am I missing a difference? The scanner seems confused by .ce suffix.)
udev-rule-in-etc - pull request created
non-conffile-in-etc - goes away with the udev rule
non-executable-script - bash completions are non-executable on purpose
manual-page-warning - should probably be fixed upstream
no-manual-page-for-binary docker - true, but judging by the content of the man pages, they need bigger changes than just a symlink.

Comment 14 Lokesh Mandvekar 2018-03-20 18:42:57 UTC
fixed some rpmlint errors. Currently I see: 

 $ rpmlint moby-engine.spec RPMS/x86_64/* SRPMS/moby-engine-17.03.2-4.ce.gitf5ec1e2.fc28.src.rpm 
moby-engine.x86_64: E: statically-linked-binary /usr/libexec/moby-engine/moby-init
moby-engine.x86_64: W: manual-page-warning /usr/share/man/man1/moby-run.1.gz 1125: warning: macro `You' not defined
moby-engine.x86_64: W: no-manual-page-for-binary docker
moby-engine.x86_64: W: no-manual-page-for-binary moby-engine
moby-engine-debuginfo.x86_64: E: useless-provides debuginfo(build-id)
moby-engine-debugsource.x86_64: W: no-documentation
moby-engine-fish-completion.x86_64: W: no-documentation
moby-engine-nano.x86_64: W: summary-not-capitalized C nano syntax highlighting files for Moby
moby-engine-nano.x86_64: W: no-documentation
moby-engine-vim.x86_64: W: no-documentation
moby-engine-zsh-completion.x86_64: W: no-documentation
8 packages and 1 specfiles checked; 2 errors, 9 warnings.


Spec URL: https://pagure.io/moby-engine/blob/master/f/moby-engine.spec
SRPM URL: https://pagure.io/moby-engine/blob/master/f/SRPMS/moby-engine-17.03.2-4.ce.gitf5ec1e2.fc28.src.rpm

Comment 15 Frantisek Kluknavsky 2018-04-25 18:20:46 UTC
The statically linked binary is needed to run inside a container with unknown content.
Other warnings seem quite minor.

Comment 16 Brian J. Murrell 2018-07-18 17:15:14 UTC
Any progress here in the last couple of months?  The docker package in F28 is getting long-in-the-tooth.

Comment 17 Daniel Walsh 2018-07-18 17:54:37 UTC
What features are you looking for?  Have you checked out podman?

Comment 18 Brian J. Murrell 2018-07-18 17:56:46 UTC
The --mount option for docker run since "-v" cannot handle paths with : in them.

Comment 19 Daniel Walsh 2018-07-18 20:46:45 UTC
Sadly this is an option that podman does not have either.  Will add it to the todo list.

Comment 20 Neal Gompa 2018-07-19 14:03:36 UTC
Can we please have an updated docker package?

Comment 21 Lokesh Mandvekar 2018-08-17 03:44:41 UTC
Frantisek, can you set the fedora-review+ again? Since, the review was 60 days ago, fedpkg request-repo refuses to work.

Thanks,

Comment 22 Neal Gompa 2018-08-17 08:31:36 UTC
Since the review has already been done, I'll do it...

Comment 23 Lokesh Mandvekar 2018-08-17 10:46:20 UTC
(In reply to Neal Gompa from comment #22)
> Since the review has already been done, I'll do it...

Thanks Neal

Comment 24 Gwyn Ciesla 2018-08-17 13:32:23 UTC
(fedscm-admin):  The Pagure repository was created at https://src.fedoraproject.org/rpms/moby-engine

Comment 25 Fedora Update System 2018-08-19 18:12:21 UTC
moby-engine-18.06.0-1.ce.git0ffa825.fc28 has been submitted as an update to Fedora 28. https://bodhi.fedoraproject.org/updates/FEDORA-2018-a37148fc00

Comment 26 Lokesh Mandvekar 2018-08-19 19:37:51 UTC
I noticed the reviewed version didn't work well on Fedora :\ . So, I kept the binary locations and unitfile similar to what docker-ce upstream  rpm provides for now.

I'll check on using fedora's packaged containerd instead of bundled containerd in future builds.

I undid the symlinks to "moby" for now, best to wait until we hear from upstream.

Let me know how this works..

Comment 27 Fedora Update System 2018-08-19 23:29:13 UTC
moby-engine-18.06.0-1.ce.git0ffa825.fc28 has been pushed to the Fedora 28 testing repository. If problems still persist, please make note of it in this bug report.
See https://fedoraproject.org/wiki/QA:Updates_Testing for
instructions on how to install test updates.
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2018-a37148fc00

Comment 28 Scott McCarty 2018-08-21 13:50:44 UTC
Will people be able to type "yum install docker" "systemctl enable docker" and "docker run -it fedora bash" with this package?

Comment 29 Scott McCarty 2018-08-21 13:51:58 UTC
Will the versioning track the Docker CE version closely so that people understand what this is?

Comment 30 Fedora Update System 2018-08-30 04:53:26 UTC
moby-engine-18.06.0-1.ce.git0ffa825.fc28 has been pushed to the Fedora 28 stable repository. If problems still persist, please make note of it in this bug report.


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