Add containerd-proxy building
Signed-off-by: Eli Uriegas <eli.uriegas@docker.com> Upstream-commit: ca519bb1194b6ab673b5ade7861f220cac949ec6 Component: packaging
This commit is contained in:
@@ -1,3 +1,4 @@
|
||||
build
|
||||
debbuild
|
||||
rpmbuild
|
||||
tmp
|
||||
|
||||
@@ -15,7 +15,12 @@ RPMBUILD_FLAGS=-ba\
|
||||
--define '_release $(word 2,$(GEN_RPM_VER))' \
|
||||
--define '_version $(word 1,$(GEN_RPM_VER))' \
|
||||
--define '_origversion $(word 4, $(GEN_RPM_VER))' \
|
||||
SPECS/docker-ce-cli.spec SPECS/docker-ce.spec
|
||||
SPECS/docker-ce.spec SPECS/docker-ce-cli.spec
|
||||
|
||||
SOURCE_TGZS=containerd-proxy.tgz cli.tgz
|
||||
SOURCES=$(addprefix rpmbuild/SOURCES/, $(SOURCE_TGZS))
|
||||
|
||||
CONTAINERD_PROXY_COMMIT=3337fb47f10892318361b58c8483f19b1ffa8203
|
||||
|
||||
.PHONY: help
|
||||
help: ## show make targets
|
||||
@@ -24,7 +29,8 @@ help: ## show make targets
|
||||
.PHONY: clean
|
||||
clean: ## remove build artifacts
|
||||
[ ! -d rpmbuild ] || $(CHOWN) -R $(shell id -u):$(shell id -g) rpmbuild
|
||||
rm -rf rpmbuild
|
||||
$(RM) -r rpmbuild
|
||||
$(RM) -r tmp/
|
||||
|
||||
.PHONY: rpm
|
||||
rpm: fedora centos ## build all rpm packages
|
||||
@@ -36,19 +42,22 @@ fedora: fedora-28 fedora-27 fedora-26 ## build all fedora rpm packages
|
||||
centos: centos-7 ## build all centos rpm packages
|
||||
|
||||
.PHONY: fedora-28
|
||||
fedora-28: rpmbuild/SOURCES/cli.tgz ## build fedora-28 rpm packages
|
||||
fedora-28: ## build fedora-28 rpm packages
|
||||
fedora-28: $(SOURCES)
|
||||
docker build --build-arg GO_VERSION=$(GO_VERSION) -t rpmbuild-$@/$(ARCH) -f $@/Dockerfile.$(ARCH) .
|
||||
$(RPMBUILD) rpmbuild-$@/$(ARCH) $(RPMBUILD_FLAGS)
|
||||
$(CHOWN) -R $(shell id -u):$(shell id -g) rpmbuild
|
||||
|
||||
.PHONY: fedora-27
|
||||
fedora-27: rpmbuild/SOURCES/cli.tgz ## build fedora-27 rpm packages
|
||||
fedora-27: ## build fedora-27 rpm packages
|
||||
fedora-27: $(SOURCES)
|
||||
docker build --build-arg GO_VERSION=$(GO_VERSION) -t rpmbuild-$@/$(ARCH) -f $@/Dockerfile.$(ARCH) .
|
||||
$(RPMBUILD) rpmbuild-$@/$(ARCH) $(RPMBUILD_FLAGS)
|
||||
$(CHOWN) -R $(shell id -u):$(shell id -g) rpmbuild
|
||||
|
||||
.PHONY: centos-7
|
||||
centos-7: rpmbuild/SOURCES/cli.tgz ## build centos-7 rpm packages
|
||||
centos-7: ## build centos-7 rpm packages
|
||||
centos-7: $(SOURCES)
|
||||
docker build --build-arg GO_VERSION=$(GO_VERSION) -t rpmbuild-$@/$(ARCH) -f $@/Dockerfile.$(ARCH) .
|
||||
$(RPMBUILD) rpmbuild-$@/$(ARCH) $(RPMBUILD_FLAGS)
|
||||
$(CHOWN) -R $(shell id -u):$(shell id -g) rpmbuild
|
||||
@@ -60,3 +69,14 @@ rpmbuild/SOURCES/cli.tgz:
|
||||
-v $(CURDIR)/rpmbuild/SOURCES:/v \
|
||||
alpine \
|
||||
tar -C / -c -z -f /v/cli.tgz --exclude .git cli
|
||||
|
||||
rpmbuild/SOURCES/containerd-proxy.tgz:
|
||||
mkdir -p tmp/
|
||||
curl -fL -o tmp/containerd-proxy.tgz "https://github.com/crosbymichael/containerd-proxy/archive/$(CONTAINERD_PROXY_COMMIT)/ours.tar.gz"
|
||||
tar xzf tmp/containerd-proxy.tgz -C tmp/
|
||||
mv tmp/containerd-proxy-$(CONTAINERD_PROXY_COMMIT) tmp/containerd-proxy
|
||||
mkdir -p $(@D)
|
||||
$(CHOWN) -R $(shell id -u):$(shell id -g) rpmbuild
|
||||
tar -zcf $@ -C tmp/ containerd-proxy
|
||||
rm -rf tmp/
|
||||
$(CHOWN) -R root:root rpmbuild/SOURCES
|
||||
|
||||
@@ -4,6 +4,7 @@ Name: docker-ce
|
||||
Version: %{_version}
|
||||
Release: %{_release}%{?dist}
|
||||
Epoch: %{getenv:EPOCH}
|
||||
Source0: containerd-proxy.tgz
|
||||
Summary: The open-source application container engine
|
||||
Group: Tools/Docker
|
||||
License: ASL 2.0
|
||||
@@ -35,17 +36,24 @@ 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.
|
||||
|
||||
%prep
|
||||
%setup -q -c -n src
|
||||
|
||||
%build
|
||||
mkdir -p /go/src/github.com/crosbymichael/
|
||||
ls %{_topdir}/BUILD/src
|
||||
ln -s %{_topdir}/BUILD/src/containerd-proxy /go/src/github.com/crosbymichael/containerd-proxy
|
||||
go build -v -o /build/dockerd github.com/crosbymichael/containerd-proxy
|
||||
|
||||
%install
|
||||
install -D -m 0755 /build/dockerd $RPM_BUILD_ROOT/%{_bindir}/dockerd
|
||||
|
||||
%files
|
||||
/%{_bindir}/dockerd
|
||||
|
||||
%post
|
||||
if ! getent group docker > /dev/null; then
|
||||
groupadd --system docker
|
||||
fi
|
||||
# TODO Needs upgrade vs. install logic handling here
|
||||
if ctr --namespace docker container info dockerd > /dev/null 2>&1 ; then
|
||||
docker engine init
|
||||
fi
|
||||
|
||||
%changelog
|
||||
|
||||
Reference in New Issue
Block a user