Merge pull request #6353 from lsm5/build-without-varlink

enable building without `varlink` tag
This commit is contained in:
OpenShift Merge Robot 2020-06-01 14:48:35 +02:00 committed by GitHub
commit 22713d62e2
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
11 changed files with 47 additions and 22 deletions

View file

@ -268,7 +268,7 @@ varlink_api_task:
timeout_in: 10m
api_md_script:
- '/usr/local/bin/entrypoint.sh varlink_api_generate |& ${TIMESTAMP}'
- '/usr/local/bin/entrypoint.sh BUILDTAGS="varlink" varlink_api_generate |& ${TIMESTAMP}'
- 'cd ${GOSRC} && ./hack/tree_status.sh |& ${TIMESTAMP}'
on_failure:

View file

@ -22,7 +22,7 @@ ETCDIR ?= /etc
TMPFILESDIR ?= ${PREFIX}/lib/tmpfiles.d
SYSTEMDDIR ?= ${PREFIX}/lib/systemd/system
USERSYSTEMDDIR ?= ${PREFIX}/lib/systemd/user
REMOTETAGS ?= !ABISupport remote exclude_graphdriver_btrfs btrfs_noversion exclude_graphdriver_devicemapper containers_image_openpgp
REMOTETAGS ?= !ABISupport remote exclude_graphdriver_btrfs btrfs_noversion exclude_graphdriver_devicemapper containers_image_openpgp
BUILDTAGS ?= \
$(shell hack/apparmor_tag.sh) \
$(shell hack/btrfs_installed_tag.sh) \
@ -30,8 +30,7 @@ BUILDTAGS ?= \
$(shell hack/selinux_tag.sh) \
$(shell hack/systemd_tag.sh) \
exclude_graphdriver_devicemapper \
seccomp \
varlink
seccomp
PYTHON ?= $(shell command -v python3 python|head -n1)
PKG_MANAGER ?= $(shell command -v dnf yum|head -n1)
# ~/.local/bin is not in PATH on all systems
@ -145,6 +144,9 @@ help:
ifeq ("$(wildcard $(GOPKGDIR))","")
mkdir -p "$(GOPKGBASEDIR)"
ln -sfn "$(CURDIR)" "$(GOPKGDIR)"
endif
ifneq (,$(findstring varlink,$(BUILDTAGS)))
ln -sfn "$(CURDIR)/vendor/github.com/varlink" "$(FIRST_GOPATH)/src/github.com/varlink"
endif
touch $@
@ -333,8 +335,11 @@ ginkgo-remote:
ginkgo -v $(TESTFLAGS) -tags "$(REMOTETAGS)" $(GINKGOTIMEOUT) -cover -flakeAttempts 3 -progress -trace -noColor test/e2e/.
.PHONY: endpoint
ifneq (,$(findstring varlink,$(BUILDTAGS)))
endpoint:
ginkgo -v $(TESTFLAGS) -tags "$(BUILDTAGS)" $(GINKGOTIMEOUT) -cover -flakeAttempts 3 -progress -trace -noColor -debug test/endpoint/.
endpoint:
endif
.PHONY: localintegration
localintegration: varlink_generate test-binaries ginkgo
@ -554,17 +559,25 @@ install.docker: docker-docs
install ${SELINUXOPT} -m 755 -d ${DESTDIR}${SYSTEMDDIR} ${DESTDIR}${USERSYSTEMDDIR} ${DESTDIR}${TMPFILESDIR}
install ${SELINUXOPT} -m 644 contrib/systemd/system/podman-docker.conf -t ${DESTDIR}${TMPFILESDIR}
.PHONY: install.systemd
install.systemd:
install ${SELINUXOPT} -m 755 -d ${DESTDIR}${SYSTEMDDIR} ${DESTDIR}${USERSYSTEMDDIR} ${DESTDIR}${TMPFILESDIR}
.PHONY: install.varlink
ifneq (,$(findstring varlink,$(BUILDTAGS)))
install.varlink:
install ${SELINUXOPT} -m 644 contrib/varlink/io.podman.socket ${DESTDIR}${SYSTEMDDIR}/io.podman.socket
install ${SELINUXOPT} -m 644 contrib/varlink/io.podman.socket ${DESTDIR}${USERSYSTEMDDIR}/io.podman.socket
install ${SELINUXOPT} -m 644 contrib/varlink/io.podman.service ${DESTDIR}${SYSTEMDDIR}/io.podman.service
install ${SELINUXOPT} -d ${DESTDIR}${USERSYSTEMDDIR}
# User units are ordered differently, we can't make the *system* multi-user.target depend on a user unit.
# For user units the default.target that's the default is fine.
sed -e 's,^WantedBy=.*,WantedBy=default.target,' < contrib/varlink/io.podman.service > ${DESTDIR}${USERSYSTEMDDIR}/io.podman.service
install ${SELINUXOPT} -m 644 contrib/varlink/podman.conf ${DESTDIR}${TMPFILESDIR}/podman.conf
else
install.varlink:
endif
.PHONY: install.systemd
install.systemd: install.varlink
install ${SELINUXOPT} -m 755 -d ${DESTDIR}${SYSTEMDDIR} ${DESTDIR}${USERSYSTEMDDIR} ${DESTDIR}${TMPFILESDIR}
install ${SELINUXOPT} -d ${DESTDIR}${USERSYSTEMDDIR}
# Install APIV2 services
install ${SELINUXOPT} -m 644 contrib/systemd/user/podman.socket ${DESTDIR}${USERSYSTEMDDIR}/podman.socket
install ${SELINUXOPT} -m 644 contrib/systemd/user/podman.service ${DESTDIR}${USERSYSTEMDDIR}/podman.service
@ -634,11 +647,20 @@ endef
$(call go-get,github.com/cpuguy83/go-md2man); \
fi
# $BUILD_TAGS variable is used in hack/golangci-lint.sh
.PHONY: varlink_generate
ifneq (or $(findstring varlink,$(BUILDTAGS)),$(findstring varlink,$(BUILD_TAGS)))
varlink_generate: .gopathok pkg/varlink/iopodman.go ## Generate varlink
else
varlink_generate:
endif
.PHONY: varlink_api_generate
ifneq (,$(findstring varlink,$(BUILDTAGS)))
varlink_api_generate: .gopathok API.md
else
varlink_api_generate:
endif
.PHONY: install.libseccomp.sudo
install.libseccomp.sudo:

View file

@ -5,12 +5,6 @@
%bcond_without doc
%bcond_without debug
%if 0%{?fedora} >= 28
%bcond_without varlink
%else
%bcond_with varlink
%endif
%if %{with debug}
%global _find_debuginfo_dwz_opts %{nil}
%global _dwz_low_mem_die_limit 0
@ -387,9 +381,7 @@ popd
ln -s vendor src
export GO111MODULE=off
export GOPATH=$(pwd)/_build:$(pwd):$(pwd):%{gopath}
export BUILDTAGS="varlink selinux seccomp systemd $(%{hackdir}/hack/btrfs_installed_tag.sh) $(%{hackdir}/hack/btrfs_tag.sh) $(%{hackdir}/hack/libdm_tag.sh) exclude_graphdriver_devicemapper"
GOPATH=$GOPATH go generate ./pkg/varlink/...
export BUILDTAGS="selinux seccomp systemd $(%{hackdir}/hack/btrfs_installed_tag.sh) $(%{hackdir}/hack/btrfs_tag.sh) $(%{hackdir}/hack/libdm_tag.sh) exclude_graphdriver_devicemapper"
%if %{with doc}
BUILDTAGS=$BUILDTAGS make binaries docs
@ -503,15 +495,10 @@ export GOPATH=%{buildroot}/%{gopath}:$(pwd)/vendor:%{gopath}
%{_datadir}/zsh/site-functions/*
%{_libexecdir}/%{name}/conmon
%config(noreplace) %{_sysconfdir}/cni/net.d/87-%{name}-bridge.conflist
%{_unitdir}/io.podman.service
%{_unitdir}/io.podman.socket
%{_usr}/lib/systemd/user/io.podman.service
%{_usr}/lib/systemd/user/io.podman.socket
%{_unitdir}/podman.service
%{_unitdir}/podman.socket
%{_usr}/lib/systemd/user/podman.service
%{_usr}/lib/systemd/user/podman.socket
%{_usr}/lib/tmpfiles.d/%{name}.conf
%if 0%{?with_devel}
%files -n libpod-devel -f devel.file-list

View file

@ -1,3 +1,5 @@
// +build varlink
package endpoint
import (

View file

@ -1,3 +1,5 @@
// +build varlink
package endpoint
import "encoding/json"

View file

@ -1,3 +1,5 @@
// +build varlink
package endpoint
import (

View file

@ -1,3 +1,5 @@
// +build varlink
package endpoint
import (

View file

@ -1,3 +1,5 @@
// +build varlink
package endpoint
import (

View file

@ -1,3 +1,5 @@
// +build varlink
package endpoint
import (

View file

@ -1,3 +1,5 @@
// +build varlink
package endpoint
import (

View file

@ -1,3 +1,5 @@
// +build varlink
package endpoint
import (