Skip to content

Commit

Permalink
Fix build with GO111MODULE=off
Browse files Browse the repository at this point in the history
Distro builds on Fedora and Kubic projects use GO111MODULE=off
by default which are currently failing. This commit fixes it and
going forward, podman CI will also indicate failures in rpm builds.

The additional LDFLAGS have been removed  from the spec file
which is not ideal. But, currently we only use the spec file
to check if the rpm builds fine. We can fix the LDFLAGS in a
later commit when we're working on packit integration.

conmon build has also been removed from podman.spec.in because the COPR
for which it was provided has been discontinued.

[NO TESTS NEEDED]

Fixes: containers#10009

Signed-off-by: Lokesh Mandvekar <[email protected]>
  • Loading branch information
lsm5 authored and jmguzik committed Apr 26, 2021
1 parent 373e49d commit 48d422a
Show file tree
Hide file tree
Showing 3 changed files with 41 additions and 29 deletions.
64 changes: 37 additions & 27 deletions contrib/spec/podman.spec.in
Original file line number Diff line number Diff line change
Expand Up @@ -12,9 +12,9 @@
%global debug_package %{nil}
%endif

# %if ! 0% {?gobuild:1}
%define gobuild(o:) go build -tags="$BUILDTAGS" -ldflags "${LDFLAGS:-} -B 0x$(head -c20 /dev/urandom|od -An -tx1|tr -d ' \\n')" -a -v -x %{?**};
#% endif
%if ! 0%{?gobuild:1}
%define gobuild(o:) go build -buildmode pie -compiler gc -tags="rpm_crashtraceback ${BUILDTAGS:-}" -ldflags "${LDFLAGS:-} -B 0x$(head -c20 /dev/urandom|od -An -tx1|tr -d ' \n') -extldflags '-Wl,-z,relro -Wl,--as-needed -Wl,-z,now -specs=/usr/lib/rpm/redhat/redhat-hardened-ld '" -a -v -x %{?**};
%endif

# podman hack directory
%define hackdir %{_builddir}/%{repo}-%{shortcommit0}
Expand All @@ -30,12 +30,6 @@
%global commit0 #COMMIT#
%global shortcommit0 %(c=%{commit0}; echo ${c:0:8})

# People want conmon packaged with the copr rpm
%global import_path_conmon github.com/containers/conmon
%global git_conmon https://%{import_path_conmon}
%global commit_conmon 41877362fc4685d55e0473d2e4a1cbe5e1debee0
%global shortcommit_conmon %(c=%{commit_conmon}; echo ${c:0:7})

Name: podman
%if 0%{?fedora}
Epoch: 99
Expand Down Expand Up @@ -74,7 +68,8 @@ BuildRequires: libselinux-devel
BuildRequires: pkgconfig
BuildRequires: make
BuildRequires: systemd-devel
Requires: skopeo-containers
Requires: containers-common
Requires: conmon
Requires: containernetworking-plugins >= 0.6.0-3
Requires: iptables
%if 0%{?rhel} < 8 || 0%{?centos} < 8
Expand Down Expand Up @@ -371,6 +366,26 @@ BuildArch: noarch
Man pages for the %{name} commands
%endif

%if 0%{?fedora} && ! 0%{?centos}
%package tests
Summary: Tests for %{name}

Requires: %{name} = %{epoch}:%{version}-%{release}
Requires: bats
Requires: jq
Requires: skopeo
Requires: nmap-ncat
Requires: httpd-tools
Requires: openssl
Requires: socat
Requires: buildah

%description tests
%{summary}

This package contains system tests for %{name}
%endif

%prep
%autosetup -Sgit -n %{repo}-%{shortcommit0}

Expand Down Expand Up @@ -416,18 +431,6 @@ BUILDTAGS=$BUILDTAGS make binaries docs
%else
BUILDTAGS=$BUILDTAGS make binaries
%endif
# build conmon
pushd conmon

mkdir _output
pushd _output
mkdir -p src/%{provider}.%{provider_tld}/{containers,opencontainers}
ln -s $(dirs +1 -l) src/%{import_path_conmon}
popd

export BUILDTAGS="selinux seccomp systemd $(%{hackdir}/hack/btrfs_installed_tag.sh) $(%{hackdir}/hack/btrfs_tag.sh)"
BUILDTAGS=$BUILDTAGS make
popd

%install
install -dp %{buildroot}%{_unitdir}
Expand All @@ -444,10 +447,6 @@ PODMAN_VERSION=%{version} %{__make} PREFIX=%{buildroot}%{_prefix} ETCDIR=%{build

mv pkg/hooks/README.md pkg/hooks/README-hooks.md

# install conmon
install -dp %{buildroot}%{_libexecdir}/%{name}
install -p -m 755 conmon/bin/conmon %{buildroot}%{_libexecdir}/%{name}

# source codes for building projects
%if 0%{?with_devel}
install -d -p %{buildroot}/%{gopath}/src/%{import_path}/
Expand All @@ -467,6 +466,11 @@ for file in $(find . \( -iname "*.go" -or -iname "*.s" \) \! -iname "*_test.go"
done
%endif

%if 0%{?fedora} && ! 0%{?centos}
install -d -p %{buildroot}/%{_datadir}/%{name}/test/system
cp -pav test/system %{buildroot}/%{_datadir}/%{name}/test/
%endif

# testing files for this project
%if 0%{?with_unit_test} && 0%{?with_devel}
install -d -p %{buildroot}/%{gopath}/src/%{import_path}/
Expand Down Expand Up @@ -522,7 +526,6 @@ export GOPATH=%{buildroot}/%{gopath}:$(pwd)/vendor:%{gopath}
%{_datadir}/bash-completion/completions/*
%{_datadir}/zsh/site-functions/*
%{_datadir}/fish/vendor_completions.d/*
%{_libexecdir}/%{name}/conmon
%config(noreplace) %{_sysconfdir}/cni/net.d/87-%{name}-bridge.conflist
%{_unitdir}/podman-auto-update.service
%{_unitdir}/podman-auto-update.timer
Expand Down Expand Up @@ -558,6 +561,13 @@ export GOPATH=%{buildroot}/%{gopath}:$(pwd)/vendor:%{gopath}
%{_mandir}/man5/*.5*
%endif

%if 0%{?fedora} && ! 0%{?centos}
%files tests
%license LICENSE
%{_datadir}/%{name}/test
%dir %{_datadir}/%{name}/test/system
%endif

%changelog
* Sat Aug 4 2018 Dan Walsh <[email protected]> - 0.8.1-1.git6b4ab2a
- Bump to v0.8.1
Expand Down
3 changes: 2 additions & 1 deletion pkg/domain/entities/types/auth.go
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
package types // import "github.com/docker/docker/api/types"
// copied from github.com/docker/docker/api/types
package types

// AuthConfig contains authorization information for connecting to a Registry
type AuthConfig struct {
Expand Down
3 changes: 2 additions & 1 deletion pkg/domain/entities/types/types.go
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
package types // import "github.com/docker/docker/api/types"
// copied from github.com/docker/docker/api/types
package types

// ComponentVersion describes the version information for a specific component.
type ComponentVersion struct {
Expand Down

0 comments on commit 48d422a

Please sign in to comment.