From ca9a0b17933266c2c10bcf726371a8b54dbb3519 Mon Sep 17 00:00:00 2001 From: Yong Fu Date: Wed, 18 Nov 2020 10:24:59 +0800 Subject: [PATCH] CentOS 8: Add docker-ce-cli srpm When installing centos8 iSO, docker-ce-cli will abort Installation process. msg: "Error in POSTIN scriptlet in rpm package docker-ce-cli" The post script is failed due to "groupadd: command not found". Add requires of shadow-utils to make sure docker-ce-cli post scriptlet is executed after shadow-utils is installed. Depends-on: https://review.opendev.org/c/starlingx/tools/+/781119 Change-Id: I484eef2f9be00f36a180ee7ec5e59f3d8df0612a Story: 2006729 Task: 40376 Signed-off-by: Yong Fu Signed-off-by: Angie Wang --- centos_pkg_dirs | 1 + centos_srpms_centos.lst | 1 + docker/docker-ce-cli/centos/build_srpm.data | 1 + ...te-package-versioning-for-TIS-format.patch | 32 ++++++++++ ...odify-file-path-and-add-dependencies.patch | 59 +++++++++++++++++++ .../0003-Add-requires-shadow-utils.patch | 30 ++++++++++ .../centos/meta_patches/PATCH_ORDER | 3 + docker/docker-ce-cli/centos/srpm_path | 1 + 8 files changed, 128 insertions(+) create mode 100644 docker/docker-ce-cli/centos/build_srpm.data create mode 100644 docker/docker-ce-cli/centos/meta_patches/0001-Update-package-versioning-for-TIS-format.patch create mode 100644 docker/docker-ce-cli/centos/meta_patches/0002-modify-file-path-and-add-dependencies.patch create mode 100644 docker/docker-ce-cli/centos/meta_patches/0003-Add-requires-shadow-utils.patch create mode 100644 docker/docker-ce-cli/centos/meta_patches/PATCH_ORDER create mode 100644 docker/docker-ce-cli/centos/srpm_path diff --git a/centos_pkg_dirs b/centos_pkg_dirs index e9a9a48ac..e10ab6aaf 100644 --- a/centos_pkg_dirs +++ b/centos_pkg_dirs @@ -51,6 +51,7 @@ storage-drivers/python-3parclient storage-drivers/python-lefthandclient storage-drivers/trident-installer security/tboot +docker/docker-ce-cli docker/python-docker kubernetes/containerd kubernetes/kubernetes diff --git a/centos_srpms_centos.lst b/centos_srpms_centos.lst index 23784888f..2a2d21e44 100644 --- a/centos_srpms_centos.lst +++ b/centos_srpms_centos.lst @@ -2,6 +2,7 @@ anaconda-29.19.1.13-1.el8.src.rpm cloud-init-18.5-1.el8.4.src.rpm dhcp-4.3.6-30.el8.src.rpm dnsmasq-2.79-4.el8.src.rpm +docker-ce-cli-19.03.13-3.el8.src.rpm facter-2.4.4-4.el7.src.rpm grub2-2.02-66.el8_0.1.src.rpm grubby-8.40-34.el8.src.rpm diff --git a/docker/docker-ce-cli/centos/build_srpm.data b/docker/docker-ce-cli/centos/build_srpm.data new file mode 100644 index 000000000..69abd61b8 --- /dev/null +++ b/docker/docker-ce-cli/centos/build_srpm.data @@ -0,0 +1 @@ +TIS_PATCH_VER=PKG_GITREVCOUNT diff --git a/docker/docker-ce-cli/centos/meta_patches/0001-Update-package-versioning-for-TIS-format.patch b/docker/docker-ce-cli/centos/meta_patches/0001-Update-package-versioning-for-TIS-format.patch new file mode 100644 index 000000000..053d85f12 --- /dev/null +++ b/docker/docker-ce-cli/centos/meta_patches/0001-Update-package-versioning-for-TIS-format.patch @@ -0,0 +1,32 @@ +From aa5d3b25b64cbbfb8240056a0d8d3f72df385fa9 Mon Sep 17 00:00:00 2001 +From: Yong Fu +Date: Thu, 16 Jul 2020 17:43:30 +0800 +Subject: [PATCH 1/3] Update-package-versioning-for-TIS-format + +Update the package version and set the docker version and commit information + +Signed-off-by: Yong Fu +--- + SPECS/docker-ce-cli.spec | 6 ++++-- + 1 file changed, 4 insertions(+), 2 deletions(-) + +diff --git a/SPECS/docker-ce-cli.spec b/SPECS/docker-ce-cli.spec +index 25fae60..5b496d4 100644 +--- a/SPECS/docker-ce-cli.spec ++++ b/SPECS/docker-ce-cli.spec +@@ -1,8 +1,10 @@ + %global debug_package %{nil} ++%global _origversion 19.03.13 ++%global _gitcommit cd8016b6bc + + Name: docker-ce-cli +-Version: %{_version} +-Release: %{_release}%{?dist} ++Version: 19.03.13 ++Release: 3.el8%{?_tis_dist}.%{tis_patch_ver} + Epoch: 1 + Summary: The open-source application container engine + Group: Tools/Docker +-- +1.8.3.1 + diff --git a/docker/docker-ce-cli/centos/meta_patches/0002-modify-file-path-and-add-dependencies.patch b/docker/docker-ce-cli/centos/meta_patches/0002-modify-file-path-and-add-dependencies.patch new file mode 100644 index 000000000..0d4afc887 --- /dev/null +++ b/docker/docker-ce-cli/centos/meta_patches/0002-modify-file-path-and-add-dependencies.patch @@ -0,0 +1,59 @@ +From ff9365f72ac978846a73253012129ccba123c1f0 Mon Sep 17 00:00:00 2001 +From: Yong Fu +Date: Thu, 16 Jul 2020 17:43:57 +0800 +Subject: [PATCH 2/3] modify file path and add dependencies + +No permission to create a folder in the root directory causes the build to fail. +Therefore, the build directory needs to be changed. + +Signed-off-by: Yong Fu +--- + SPECS/docker-ce-cli.spec | 14 ++++++++------ + 1 file changed, 8 insertions(+), 6 deletions(-) + +diff --git a/SPECS/docker-ce-cli.spec b/SPECS/docker-ce-cli.spec +index 5b496d4..4058591 100644 +--- a/SPECS/docker-ce-cli.spec ++++ b/SPECS/docker-ce-cli.spec +@@ -21,6 +21,8 @@ Requires: /bin/sh + BuildRequires: make + BuildRequires: libtool-ltdl-devel + BuildRequires: git ++BuildRequires: golang ++BuildRequires: go-md2man + + # conflicting packages + Conflicts: docker +@@ -44,15 +46,15 @@ depending on a particular stack or provider. + %setup -q -c -n src -a 1 + + %build +-mkdir -p /go/src/github.com/docker +-rm -f /go/src/github.com/docker/cli +-ln -s /root/rpmbuild/BUILD/src/cli /go/src/github.com/docker/cli +-pushd /go/src/github.com/docker/cli ++mkdir -p ${HOME}/go/src/github.com/docker ++rm -f ${HOME}/go/src/github.com/docker/cli ++ln -s %{_builddir}/src/cli ${HOME}/go/src/github.com/docker/cli ++pushd ${HOME}/go/src/github.com/docker/cli + DISABLE_WARN_OUTSIDE_CONTAINER=1 make VERSION=%{_origversion} GITCOMMIT=%{_gitcommit} dynbinary manpages # cli + popd + + # Build all associated plugins +-pushd /root/rpmbuild/BUILD/src/plugins ++pushd %{_builddir}/src/plugins + for installer in *.installer; do + bash ${installer} build + done +@@ -68,7 +70,7 @@ install -d $RPM_BUILD_ROOT/%{_bindir} + install -p -m 755 cli/build/docker $RPM_BUILD_ROOT/%{_bindir}/docker + + # install plugins +-pushd /root/rpmbuild/BUILD/src/plugins ++pushd %{_builddir}/src/plugins + for installer in *.installer; do + DESTDIR=$RPM_BUILD_ROOT \ + PREFIX=/usr/libexec/docker/cli-plugins \ +-- +1.8.3.1 + diff --git a/docker/docker-ce-cli/centos/meta_patches/0003-Add-requires-shadow-utils.patch b/docker/docker-ce-cli/centos/meta_patches/0003-Add-requires-shadow-utils.patch new file mode 100644 index 000000000..9f0b9c458 --- /dev/null +++ b/docker/docker-ce-cli/centos/meta_patches/0003-Add-requires-shadow-utils.patch @@ -0,0 +1,30 @@ +From dec02509f23e6a15f2793f72e9f9fc2d42daf186 Mon Sep 17 00:00:00 2001 +From: Angie Wang +Date: Wed, 17 Mar 2021 09:40:24 -0500 +Subject: [PATCH 3/3] Add requires shadow-utils + +docker-ce-cli is failed to execute post scriptlet during +anaconda install due to "groupadd: command not found". +Make sure docker-ce-cli post scriptlet is executed after +shadow-utils is installed. + +Signed-off-by: Angie Wang +--- + SPECS/docker-ce-cli.spec | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/SPECS/docker-ce-cli.spec b/SPECS/docker-ce-cli.spec +index 4058591..f542ab0 100644 +--- a/SPECS/docker-ce-cli.spec ++++ b/SPECS/docker-ce-cli.spec +@@ -17,6 +17,7 @@ Packager: Docker + + # required packages on install + Requires: /bin/sh ++Requires(post): shadow-utils + + BuildRequires: make + BuildRequires: libtool-ltdl-devel +-- +1.8.3.1 + diff --git a/docker/docker-ce-cli/centos/meta_patches/PATCH_ORDER b/docker/docker-ce-cli/centos/meta_patches/PATCH_ORDER new file mode 100644 index 000000000..4ebb7c7e7 --- /dev/null +++ b/docker/docker-ce-cli/centos/meta_patches/PATCH_ORDER @@ -0,0 +1,3 @@ +0001-Update-package-versioning-for-TIS-format.patch +0002-modify-file-path-and-add-dependencies.patch +0003-Add-requires-shadow-utils.patch diff --git a/docker/docker-ce-cli/centos/srpm_path b/docker/docker-ce-cli/centos/srpm_path new file mode 100644 index 000000000..dd901ef1c --- /dev/null +++ b/docker/docker-ce-cli/centos/srpm_path @@ -0,0 +1 @@ +mirror:Source/docker-ce-cli-19.03.13-3.el8.src.rpm