538 lines
		
	
	
		
			24 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
			
		
		
	
	
			538 lines
		
	
	
		
			24 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
| %global with_devel 0
 | |
| %global with_bundled 1
 | |
| %global with_check 0
 | |
| %global with_unit_test 0
 | |
| %bcond_without doc
 | |
| %bcond_without debug
 | |
| 
 | |
| %if %{with debug}
 | |
| %global _find_debuginfo_dwz_opts %{nil}
 | |
| %global _dwz_low_mem_die_limit 0
 | |
| %else
 | |
| %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
 | |
| 
 | |
| # libpod hack directory
 | |
| %define hackdir %{_builddir}/%{repo}-%{shortcommit0}
 | |
| 
 | |
| %global provider github
 | |
| %global provider_tld com
 | |
| %global project containers
 | |
| %global repo libpod
 | |
| # https://github.com/containers/libpod
 | |
| %global provider_prefix %{provider}.%{provider_tld}/%{project}/%{repo}
 | |
| %global import_path %{provider_prefix}
 | |
| %global git0 https://%{provider}.%{provider_tld}/%{project}/%{repo}
 | |
| %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
 | |
| %else
 | |
| Epoch: 0
 | |
| %endif
 | |
| Version: 2.0.0-rc5
 | |
| Release: #COMMITDATE#.git%{shortcommit0}%{?dist}
 | |
| Summary: Manage Pods, Containers and Container Images
 | |
| License: ASL 2.0
 | |
| URL: %{git_podman}
 | |
| Source0: %{git0}/archive/%{commit0}/%{repo}-%{shortcommit0}.tar.gz
 | |
| Source1: conmon.tar.gz
 | |
| # e.g. el6 has ppc64 arch without gcc-go, so EA tag is required
 | |
| #ExclusiveArch:  %%{?go_arches:%%{go_arches}}%%{!?go_arches:%%{ix86} x86_64 aarch64 %%{arm}}
 | |
| ExclusiveArch: aarch64 %{arm} ppc64le s390x x86_64
 | |
| # The COPR process will uncomment this
 | |
| #BuildRequires: golang-bin
 | |
| #
 | |
| # btrfs-progs-devel package is not available in CentOS/RHEL-8
 | |
| %if 0%{?rhel} != 8 && 0%{?centos} != 8
 | |
| BuildRequires: btrfs-progs-devel
 | |
| %endif
 | |
| BuildRequires: glib2-devel
 | |
| BuildRequires: glibc-devel
 | |
| BuildRequires: glibc-static
 | |
| BuildRequires: git
 | |
| %if %{with doc}
 | |
| BuildRequires: go-md2man
 | |
| %endif
 | |
| BuildRequires: gpgme-devel
 | |
| BuildRequires: libassuan-devel
 | |
| BuildRequires: libgpg-error-devel
 | |
| BuildRequires: libseccomp-devel
 | |
| BuildRequires: libselinux-devel
 | |
| BuildRequires: pkgconfig
 | |
| BuildRequires: make
 | |
| BuildRequires: systemd-devel
 | |
| Requires: skopeo-containers
 | |
| Requires: containernetworking-plugins >= 0.6.0-3
 | |
| Requires: iptables
 | |
| %if 0%{?rhel} <= 7
 | |
| Requires: container-selinux
 | |
| %else
 | |
| %if 0%{?rhel} || 0%{?centos}
 | |
| Requires: runc
 | |
| %else
 | |
| Requires: oci-runtime
 | |
| Recommends: crun
 | |
| %endif
 | |
| Recommends: container-selinux
 | |
| Recommends: slirp4netns
 | |
| Recommends: fuse-overlayfs
 | |
| %endif
 | |
| 
 | |
| # vendored libraries
 | |
| # awk '{print "Provides: bundled(golang("$1")) = "$2}' vendor.conf | sort
 | |
| # [thanks to Carl George <carl@george.computer> for containerd.spec]
 | |
| Provides: bundled(golang(github.com/Azure/go-ansiterm)) = 19f72df4d05d31cbe1c56bfc8045c96babff6c7e
 | |
| Provides: bundled(golang(github.com/blang/semver)) = v3.5.0
 | |
| Provides: bundled(golang(github.com/boltdb/bolt)) = master
 | |
| Provides: bundled(golang(github.com/buger/goterm)) = 2f8dfbc7dbbff5dd1d391ed91482c24df243b2d3
 | |
| Provides: bundled(golang(github.com/BurntSushi/toml)) = v0.2.0
 | |
| Provides: bundled(golang(github.com/containerd/cgroups)) = 77e628511d924b13a77cebdc73b757a47f6d751b
 | |
| Provides: bundled(golang(github.com/containerd/continuity)) = master
 | |
| Provides: bundled(golang(github.com/containernetworking/cni)) = v0.7.0-alpha1
 | |
| Provides: bundled(golang(github.com/containernetworking/plugins)) = 1fb94a4222eafc6f948eacdca9c9f2158b427e53
 | |
| Provides: bundled(golang(github.com/containers/image)) = c6e0eee0f8eb38e78ae2e44a9aeea0576f451617
 | |
| Provides: bundled(golang(github.com/containers/psgo)) = dd34e7e448e5d4f3c7ce87b5da7738b00778dbfd
 | |
| Provides: bundled(golang(github.com/containers/storage)) = 8b1a0f8d6863cf05709af333b8997a437652ec4c
 | |
| Provides: bundled(golang(github.com/coreos/go-systemd)) = v14
 | |
| Provides: bundled(golang(github.com/cri-o/ocicni)) = master
 | |
| Provides: bundled(golang(github.com/cyphar/filepath-securejoin)) = v0.2.1
 | |
| Provides: bundled(golang(github.com/davecgh/go-spew)) = v1.1.0
 | |
| Provides: bundled(golang(github.com/docker/distribution)) = 7a8efe719e55bbfaff7bc5718cdf0ed51ca821df
 | |
| Provides: bundled(golang(github.com/docker/docker)) = 86f080cff0914e9694068ed78d503701667c4c00
 | |
| Provides: bundled(golang(github.com/docker/docker-credential-helpers)) = d68f9aeca33f5fd3f08eeae5e9d175edf4e731d1
 | |
| Provides: bundled(golang(github.com/docker/go-connections)) = 3ede32e2033de7505e6500d6c868c2b9ed9f169d
 | |
| Provides: bundled(golang(github.com/docker/go-units)) = v0.3.2
 | |
| Provides: bundled(golang(github.com/docker/libtrust)) = aabc10ec26b754e797f9028f4589c5b7bd90dc20
 | |
| Provides: bundled(golang(github.com/docker/spdystream)) = ed496381df8283605c435b86d4fdd6f4f20b8c6e
 | |
| Provides: bundled(golang(github.com/fatih/camelcase)) = f6a740d52f961c60348ebb109adde9f4635d7540
 | |
| Provides: bundled(golang(github.com/fsnotify/fsnotify)) = 7d7316ed6e1ed2de075aab8dfc76de5d158d66e1
 | |
| Provides: bundled(golang(github.com/fsouza/go-dockerclient)) = master
 | |
| Provides: bundled(golang(github.com/ghodss/yaml)) = 04f313413ffd65ce25f2541bfd2b2ceec5c0908c
 | |
| Provides: bundled(golang(github.com/godbus/dbus)) = a389bdde4dd695d414e47b755e95e72b7826432c
 | |
| Provides: bundled(golang(github.com/gogo/protobuf)) = c0656edd0d9eab7c66d1eb0c568f9039345796f7
 | |
| Provides: bundled(golang(github.com/golang/glog)) = 23def4e6c14b4da8ac2ed8007337bc5eb5007998
 | |
| Provides: bundled(golang(github.com/golang/groupcache)) = b710c8433bd175204919eb38776e944233235d03
 | |
| Provides: bundled(golang(github.com/golang/protobuf)) = 4bd1920723d7b7c925de087aa32e2187708897f7
 | |
| Provides: bundled(golang(github.com/googleapis/gnostic)) = 0c5108395e2debce0d731cf0287ddf7242066aba
 | |
| Provides: bundled(golang(github.com/google/gofuzz)) = 44d81051d367757e1c7c6a5a86423ece9afcf63c
 | |
| Provides: bundled(golang(github.com/gorilla/context)) = v1.1
 | |
| Provides: bundled(golang(github.com/gorilla/mux)) = v1.3.0
 | |
| Provides: bundled(golang(github.com/hashicorp/errwrap)) = 7554cd9344cec97297fa6649b055a8c98c2a1e55
 | |
| Provides: bundled(golang(github.com/hashicorp/golang-lru)) = 0a025b7e63adc15a622f29b0b2c4c3848243bbf6
 | |
| Provides: bundled(golang(github.com/hashicorp/go-multierror)) = 83588e72410abfbe4df460eeb6f30841ae47d4c4
 | |
| Provides: bundled(golang(github.com/imdario/mergo)) = 0.2.2
 | |
| Provides: bundled(golang(github.com/json-iterator/go)) = 1.0.0
 | |
| Provides: bundled(golang(github.com/kr/pty)) = v1.0.0
 | |
| Provides: bundled(golang(github.com/mattn/go-runewidth)) = v0.0.1
 | |
| Provides: bundled(golang(github.com/Microsoft/go-winio)) = 78439966b38d69bf38227fbf57ac8a6fee70f69a
 | |
| Provides: bundled(golang(github.com/Microsoft/hcsshim)) = 43f9725307998e09f2e3816c2c0c36dc98f0c982
 | |
| Provides: bundled(golang(github.com/mistifyio/go-zfs)) = v2.1.1
 | |
| Provides: bundled(golang(github.com/mrunalp/fileutils)) = master
 | |
| Provides: bundled(golang(github.com/mtrmac/gpgme)) = b2432428689ca58c2b8e8dea9449d3295cf96fc9
 | |
| Provides: bundled(golang(github.com/Nvveen/Gotty)) = master
 | |
| Provides: bundled(golang(github.com/opencontainers/go-digest)) = v1.0.0-rc0
 | |
| Provides: bundled(golang(github.com/opencontainers/image-spec)) = v1.0.0
 | |
| Provides: bundled(golang(github.com/opencontainers/runc)) = 6e15bc3f92fd4c58b3285e8f27eaeb6b22d62920
 | |
| Provides: bundled(golang(github.com/opencontainers/runtime-spec)) = v1.0.0
 | |
| Provides: bundled(golang(github.com/opencontainers/runtime-tools)) = 625e2322645b151a7cbb93a8b42920933e72167f
 | |
| Provides: bundled(golang(github.com/opencontainers/selinux)) = b6fa367ed7f534f9ba25391cc2d467085dbb445a
 | |
| Provides: bundled(golang(github.com/openshift/imagebuilder)) = master
 | |
| Provides: bundled(golang(github.com/pkg/errors)) = v0.8.0
 | |
| Provides: bundled(golang(github.com/pmezard/go-difflib)) = 792786c7400a136282c1664665ae0a8db921c6c2
 | |
| Provides: bundled(golang(github.com/pquerna/ffjson)) = d49c2bc1aa135aad0c6f4fc2056623ec78f5d5ac
 | |
| Provides: bundled(golang(github.com/containers/buildah)) = a2c8358455f9b6a254c572455af2a0afcfcec544
 | |
| Provides: bundled(golang(github.com/seccomp/containers-golang)) = master
 | |
| Provides: bundled(golang(github.com/seccomp/libseccomp-golang)) = v0.9.0
 | |
| Provides: bundled(golang(github.com/sirupsen/logrus)) = v1.0.0
 | |
| Provides: bundled(golang(github.com/spf13/pflag)) = 9ff6c6923cfffbcd502984b8e0c80539a94968b7
 | |
| Provides: bundled(golang(github.com/stretchr/testify)) = 4d4bfba8f1d1027c4fdbe371823030df51419987
 | |
| Provides: bundled(golang(github.com/syndtr/gocapability)) = e7cb7fa329f456b3855136a2642b197bad7366ba
 | |
| Provides: bundled(golang(github.com/tchap/go-patricia)) = v2.2.6
 | |
| Provides: bundled(golang(github.com/ulikunitz/xz)) = v0.5.4
 | |
| # "-" are not accepted in version strings, so comment out below line
 | |
| #Provides: bundled(golang(github.com/urfave/cli)) = fix-short-opts-parsing
 | |
| Provides: bundled(golang(github.com/varlink/go)) = master
 | |
| Provides: bundled(golang(github.com/vbatts/tar-split)) = v0.10.2
 | |
| Provides: bundled(golang(github.com/vishvananda/netlink)) = master
 | |
| Provides: bundled(golang(github.com/vishvananda/netns)) = master
 | |
| Provides: bundled(golang(github.com/xeipuuv/gojsonpointer)) = master
 | |
| Provides: bundled(golang(github.com/xeipuuv/gojsonreference)) = master
 | |
| Provides: bundled(golang(github.com/xeipuuv/gojsonschema)) = master
 | |
| Provides: bundled(golang(golang.org/x/crypto)) = 81e90905daefcd6fd217b62423c0908922eadb30
 | |
| Provides: bundled(golang(golang.org/x/net)) = c427ad74c6d7a814201695e9ffde0c5d400a7674
 | |
| Provides: bundled(golang(golang.org/x/sys)) = master
 | |
| Provides: bundled(golang(golang.org/x/text)) = f72d8390a633d5dfb0cc84043294db9f6c935756
 | |
| Provides: bundled(golang(golang.org/x/time)) = f51c12702a4d776e4c1fa9b0fabab841babae631
 | |
| Provides: bundled(golang(google.golang.org/grpc)) = v1.0.4
 | |
| Provides: bundled(golang(gopkg.in/cheggaaa/pb.v1)) = v1.0.7
 | |
| Provides: bundled(golang(gopkg.in/inf.v0)) = v0.9.0
 | |
| Provides: bundled(golang(gopkg.in/mgo.v2)) = v2
 | |
| Provides: bundled(golang(gopkg.in/square/go-jose.v2)) = v2.1.3
 | |
| Provides: bundled(golang(gopkg.in/yaml.v2)) = v2
 | |
| Provides: bundled(golang(k8s.io/api)) = 5ce4aa0bf2f097f6021127b3d879eeda82026be8
 | |
| Provides: bundled(golang(k8s.io/apiextensions-apiserver)) = 1b31e26d82f1ec2e945c560790e98f34bb5f2e63
 | |
| Provides: bundled(golang(k8s.io/apimachinery)) = 616b23029fa3dc3e0ccefd47963f5651a6543d94
 | |
| Provides: bundled(golang(k8s.io/apiserver)) = 4d1163080139f1f9094baf8a3a6099e85e1867f6
 | |
| Provides: bundled(golang(k8s.io/client-go)) = 7cd1d3291b7d9b1e2d54d4b69eb65995eaf8888e
 | |
| Provides: bundled(golang(k8s.io/kube-openapi)) = 275e2ce91dec4c05a4094a7b1daee5560b555ac9
 | |
| Provides: bundled(golang(k8s.io/utils)) = 258e2a2fa64568210fbd6267cf1d8fd87c3cb86e
 | |
| 
 | |
| %description
 | |
| %{summary}
 | |
| %{repo} provides a library for applications looking to use
 | |
| the Container Pod concept popularized by Kubernetes.
 | |
| 
 | |
| %package remote
 | |
| Summary:       Remote Podman client
 | |
| 
 | |
| %description -n podman-remote
 | |
| %{summary}
 | |
| This package provides the Podman remote client which
 | |
| can be used to access Podman running on a server.
 | |
| 
 | |
| %if 0%{?with_devel}
 | |
| %package devel
 | |
| Summary:       Library for applications looking to use Container Pods
 | |
| BuildArch:     noarch
 | |
| Provides: %{repo}-devel = %{version}-%{release}
 | |
| 
 | |
| %if 0%{?with_check} && ! 0%{?with_bundled}
 | |
| BuildRequires: golang(github.com/BurntSushi/toml)
 | |
| BuildRequires: golang(github.com/containerd/cgroups)
 | |
| BuildRequires: golang(github.com/containernetworking/plugins/pkg/ns)
 | |
| BuildRequires: golang(github.com/containers/image/copy)
 | |
| BuildRequires: golang(github.com/containers/image/directory)
 | |
| BuildRequires: golang(github.com/containers/image/docker)
 | |
| BuildRequires: golang(github.com/containers/image/docker/archive)
 | |
| BuildRequires: golang(github.com/containers/image/docker/reference)
 | |
| BuildRequires: golang(github.com/containers/image/docker/tarfile)
 | |
| BuildRequires: golang(github.com/containers/image/image)
 | |
| BuildRequires: golang(github.com/containers/image/oci/archive)
 | |
| BuildRequires: golang(github.com/containers/image/pkg/strslice)
 | |
| BuildRequires: golang(github.com/containers/image/pkg/sysregistriesv2)
 | |
| BuildRequires: golang(github.com/containers/image/signature)
 | |
| BuildRequires: golang(github.com/containers/image/storage)
 | |
| BuildRequires: golang(github.com/containers/image/tarball)
 | |
| BuildRequires: golang(github.com/containers/image/transports/alltransports)
 | |
| BuildRequires: golang(github.com/containers/image/types)
 | |
| BuildRequires: golang(github.com/containers/storage)
 | |
| BuildRequires: golang(github.com/containers/storage/pkg/archive)
 | |
| BuildRequires: golang(github.com/containers/storage/pkg/idtools)
 | |
| BuildRequires: golang(github.com/containers/storage/pkg/reexec)
 | |
| BuildRequires: golang(github.com/coreos/go-systemd/dbus)
 | |
| BuildRequires: golang(github.com/cri-o/ocicni/pkg/ocicni)
 | |
| BuildRequires: golang(github.com/docker/distribution/reference)
 | |
| BuildRequires: golang(github.com/docker/docker/daemon/caps)
 | |
| BuildRequires: golang(github.com/docker/docker/pkg/mount)
 | |
| BuildRequires: golang(github.com/docker/docker/pkg/namesgenerator)
 | |
| BuildRequires: golang(github.com/docker/docker/pkg/stringid)
 | |
| BuildRequires: golang(github.com/docker/docker/pkg/system)
 | |
| BuildRequires: golang(github.com/docker/docker/pkg/term)
 | |
| BuildRequires: golang(github.com/docker/docker/pkg/truncindex)
 | |
| BuildRequires: golang(github.com/ghodss/yaml)
 | |
| BuildRequires: golang(github.com/godbus/dbus)
 | |
| BuildRequires: golang(github.com/mattn/go-sqlite3)
 | |
| BuildRequires: golang(github.com/mrunalp/fileutils)
 | |
| BuildRequires: golang(github.com/opencontainers/go-digest)
 | |
| BuildRequires: golang(github.com/opencontainers/image-spec/specs-go/v1)
 | |
| BuildRequires: golang(github.com/opencontainers/runc/libcontainer)
 | |
| BuildRequires: golang(github.com/opencontainers/runtime-spec/specs-go)
 | |
| BuildRequires: golang(github.com/opencontainers/runtime-tools/generate)
 | |
| BuildRequires: golang(github.com/opencontainers/selinux/go-selinux)
 | |
| BuildRequires: golang(github.com/opencontainers/selinux/go-selinux/label)
 | |
| BuildRequires: golang(github.com/pkg/errors)
 | |
| BuildRequires: golang(github.com/sirupsen/logrus)
 | |
| BuildRequires: golang(golang.org/x/crypto/ssh/terminal)
 | |
| BuildRequires: golang(golang.org/x/sys/unix)
 | |
| BuildRequires: golang(k8s.io/apimachinery/pkg/util/wait)
 | |
| BuildRequires: golang(k8s.io/client-go/tools/remotecommand)
 | |
| BuildRequires: golang(k8s.io/kubernetes/pkg/kubelet/container)
 | |
| %endif
 | |
| 
 | |
| Requires:      golang(github.com/BurntSushi/toml)
 | |
| Requires:      golang(github.com/containerd/cgroups)
 | |
| Requires:      golang(github.com/containernetworking/plugins/pkg/ns)
 | |
| Requires:      golang(github.com/containers/image/copy)
 | |
| Requires:      golang(github.com/containers/image/directory)
 | |
| Requires:      golang(github.com/containers/image/docker)
 | |
| Requires:      golang(github.com/containers/image/docker/archive)
 | |
| Requires:      golang(github.com/containers/image/docker/reference)
 | |
| Requires:      golang(github.com/containers/image/docker/tarfile)
 | |
| Requires:      golang(github.com/containers/image/image)
 | |
| Requires:      golang(github.com/containers/image/oci/archive)
 | |
| Requires:      golang(github.com/containers/image/pkg/strslice)
 | |
| Requires:      golang(github.com/containers/image/pkg/sysregistriesv2)
 | |
| Requires:      golang(github.com/containers/image/signature)
 | |
| Requires:      golang(github.com/containers/image/storage)
 | |
| Requires:      golang(github.com/containers/image/tarball)
 | |
| Requires:      golang(github.com/containers/image/transports/alltransports)
 | |
| Requires:      golang(github.com/containers/image/types)
 | |
| Requires:      golang(github.com/containers/storage)
 | |
| Requires:      golang(github.com/containers/storage/pkg/archive)
 | |
| Requires:      golang(github.com/containers/storage/pkg/idtools)
 | |
| Requires:      golang(github.com/containers/storage/pkg/reexec)
 | |
| Requires:      golang(github.com/coreos/go-systemd/dbus)
 | |
| Requires:      golang(github.com/cri-o/ocicni/pkg/ocicni)
 | |
| Requires:      golang(github.com/docker/distribution/reference)
 | |
| Requires:      golang(github.com/docker/docker/daemon/caps)
 | |
| Requires:      golang(github.com/docker/docker/pkg/mount)
 | |
| Requires:      golang(github.com/docker/docker/pkg/namesgenerator)
 | |
| Requires:      golang(github.com/docker/docker/pkg/stringid)
 | |
| Requires:      golang(github.com/docker/docker/pkg/system)
 | |
| Requires:      golang(github.com/docker/docker/pkg/term)
 | |
| Requires:      golang(github.com/docker/docker/pkg/truncindex)
 | |
| Requires:      golang(github.com/ghodss/yaml)
 | |
| Requires:      golang(github.com/godbus/dbus)
 | |
| Requires:      golang(github.com/mattn/go-sqlite3)
 | |
| Requires:      golang(github.com/mrunalp/fileutils)
 | |
| Requires:      golang(github.com/opencontainers/go-digest)
 | |
| Requires:      golang(github.com/opencontainers/image-spec/specs-go/v1)
 | |
| Requires:      golang(github.com/opencontainers/runc/libcontainer)
 | |
| Requires:      golang(github.com/opencontainers/runtime-spec/specs-go)
 | |
| Requires:      golang(github.com/opencontainers/runtime-tools/generate)
 | |
| Requires:      golang(github.com/opencontainers/selinux/go-selinux)
 | |
| Requires:      golang(github.com/opencontainers/selinux/go-selinux/label)
 | |
| Requires:      golang(github.com/pkg/errors)
 | |
| Requires:      golang(github.com/sirupsen/logrus)
 | |
| Requires:      golang(golang.org/x/crypto/ssh/terminal)
 | |
| Requires:      golang(golang.org/x/sys/unix)
 | |
| Requires:      golang(k8s.io/apimachinery/pkg/util/wait)
 | |
| Requires:      golang(k8s.io/client-go/tools/remotecommand)
 | |
| Requires:      golang(k8s.io/kubernetes/pkg/kubelet/container)
 | |
| 
 | |
| Provides:      golang(%{import_path}/cmd/%{name}/docker) = %{version}-%{release}
 | |
| Provides:      golang(%{import_path}/cmd/%{name}/formats) = %{version}-%{release}
 | |
| Provides:      golang(%{import_path}/libkpod) = %{version}-%{release}
 | |
| Provides:      golang(%{import_path}/libpod) = %{version}-%{release}
 | |
| Provides:      golang(%{import_path}/libpod/common) = %{version}-%{release}
 | |
| Provides:      golang(%{import_path}/libpod/driver) = %{version}-%{release}
 | |
| Provides:      golang(%{import_path}/libpod/layers) = %{version}-%{release}
 | |
| Provides:      golang(%{import_path}/pkg/annotations) = %{version}-%{release}
 | |
| Provides:      golang(%{import_path}/pkg/chrootuser) = %{version}-%{release}
 | |
| Provides:      golang(%{import_path}/pkg/registrar) = %{version}-%{release}
 | |
| Provides:      golang(%{import_path}/pkg/storage) = %{version}-%{release}
 | |
| Provides:      golang(%{import_path}/utils) = %{version}-%{release}
 | |
| 
 | |
| %description -n  libpod-devel
 | |
| %{summary}
 | |
| 
 | |
| This package contains library source intended for
 | |
| building other packages which use import path with
 | |
| %{import_path} prefix.
 | |
| %endif
 | |
| 
 | |
| %if 0%{?with_unit_test} && 0%{?with_devel}
 | |
| %package unit-test-devel
 | |
| Summary:         Unit tests for %{name} package
 | |
| %if 0%{?with_check}
 | |
| #Here comes all BuildRequires: PACKAGE the unit tests
 | |
| #in %%check section need for running
 | |
| %endif
 | |
| 
 | |
| # test subpackage tests code from devel subpackage
 | |
| Requires:        %{name}-devel = %{version}-%{release}
 | |
| 
 | |
| %if 0%{?with_check} && ! 0%{?with_bundled}
 | |
| BuildRequires: golang(github.com/stretchr/testify/assert)
 | |
| BuildRequires: golang(github.com/urfave/cli)
 | |
| %endif
 | |
| 
 | |
| Requires:      golang(github.com/stretchr/testify/assert)
 | |
| Requires:      golang(github.com/urfave/cli)
 | |
| 
 | |
| %description unit-test-devel
 | |
| %{summary}
 | |
| libpod provides a library for applications looking to use the Container Pod concept popularized by Kubernetes.
 | |
| 
 | |
| This package contains unit tests for project
 | |
| providing packages with %{import_path} prefix.
 | |
| %endif
 | |
| 
 | |
| %if %{with doc}
 | |
| %package manpages
 | |
| Summary: Man pages for the %{name} commands
 | |
| BuildArch: noarch
 | |
| 
 | |
| %description manpages
 | |
| Man pages for the %{name} commands
 | |
| %endif
 | |
| 
 | |
| %prep
 | |
| %autosetup -Sgit -n %{repo}-%{shortcommit0}
 | |
| 
 | |
| # untar conmon
 | |
| tar zxf %{SOURCE1}
 | |
| 
 | |
| %build
 | |
| mkdir _build
 | |
| pushd _build
 | |
| mkdir -p src/%{provider}.%{provider_tld}/%{project}
 | |
| ln -s ../../../../ src/%{import_path}
 | |
| popd
 | |
| ln -s vendor src
 | |
| export GO111MODULE=off
 | |
| export GOPATH=$(pwd)/_build:$(pwd):$(pwd):%{gopath}
 | |
| 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
 | |
| %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}
 | |
| install -dp %{buildroot}%{_usr}/lib/systemd/user
 | |
| PODMAN_VERSION=%{version} %{__make} PREFIX=%{buildroot}%{_prefix} ETCDIR=%{buildroot}%{_sysconfdir} \
 | |
|         install.bin-nobuild \
 | |
|         install.remote-nobuild \
 | |
| %if %{with doc}
 | |
|         install.man-nobuild \
 | |
| %endif
 | |
|         install.cni \
 | |
|         install.systemd \
 | |
|         install.completions
 | |
| 
 | |
| 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}/
 | |
| 
 | |
| echo "%%dir %%{gopath}/src/%%{import_path}/." >> devel.file-list
 | |
| # find all *.go but no *_test.go files and generate devel.file-list
 | |
| for file in $(find . \( -iname "*.go" -or -iname "*.s" \) \! -iname "*_test.go" | grep -v "vendor") ; do
 | |
|     dirprefix=$(dirname $file)
 | |
|     install -d -p %{buildroot}/%{gopath}/src/%{import_path}/$dirprefix
 | |
|     cp -pav $file %{buildroot}/%{gopath}/src/%{import_path}/$file
 | |
|     echo "%%{gopath}/src/%%{import_path}/$file" >> devel.file-list
 | |
| 
 | |
|     while [ "$dirprefix" != "." ]; do
 | |
|         echo "%%dir %%{gopath}/src/%%{import_path}/$dirprefix" >> devel.file-list
 | |
|         dirprefix=$(dirname $dirprefix)
 | |
|     done
 | |
| done
 | |
| %endif
 | |
| 
 | |
| # testing files for this project
 | |
| %if 0%{?with_unit_test} && 0%{?with_devel}
 | |
| install -d -p %{buildroot}/%{gopath}/src/%{import_path}/
 | |
| # find all *_test.go files and generate unit-test-devel.file-list
 | |
| for file in $(find . -iname "*_test.go" | grep -v "vendor") ; do
 | |
|     dirprefix=$(dirname $file)
 | |
|     install -d -p %{buildroot}/%{gopath}/src/%{import_path}/$dirprefix
 | |
|     cp -pav $file %{buildroot}/%{gopath}/src/%{import_path}/$file
 | |
|     echo "%%{gopath}/src/%%{import_path}/$file" >> unit-test-devel.file-list
 | |
| 
 | |
|     while [ "$dirprefix" != "." ]; do
 | |
|         echo "%%dir %%{gopath}/src/%%{import_path}/$dirprefix" >> devel.file-list
 | |
|         dirprefix=$(dirname $dirprefix)
 | |
|     done
 | |
| done
 | |
| %endif
 | |
| 
 | |
| %if 0%{?with_devel}
 | |
| sort -u -o devel.file-list devel.file-list
 | |
| %endif
 | |
| 
 | |
| %check
 | |
| %if 0%{?with_check} && 0%{?with_unit_test} && 0%{?with_devel}
 | |
| %if ! 0%{?with_bundled}
 | |
| export GOPATH=%{buildroot}/%{gopath}:%{gopath}
 | |
| %else
 | |
| # Since we aren't packaging up the vendor directory we need to link
 | |
| # back to it somehow. Hack it up so that we can add the vendor
 | |
| # directory from BUILD dir as a gopath to be searched when executing
 | |
| # tests from the BUILDROOT dir.
 | |
| ln -s ./ ./vendor/src # ./vendor/src -> ./vendor
 | |
| 
 | |
| export GOPATH=%{buildroot}/%{gopath}:$(pwd)/vendor:%{gopath}
 | |
| %endif
 | |
| 
 | |
| %if ! 0%{?gotest:1}
 | |
| %global gotest go test
 | |
| %endif
 | |
| 
 | |
| %gotest %{import_path}/cmd/%{name}
 | |
| %gotest %{import_path}/libkpod
 | |
| %gotest %{import_path}/libpod
 | |
| %gotest %{import_path}/pkg/registrar
 | |
| %endif
 | |
| 
 | |
| #define license tag if not already defined
 | |
| %{!?_licensedir:%global license %doc}
 | |
| 
 | |
| %files
 | |
| %license LICENSE
 | |
| %doc README.md CONTRIBUTING.md pkg/hooks/README-hooks.md install.md CODE-OF-CONDUCT.md transfer.md
 | |
| %{_bindir}/%{name}
 | |
| %{_datadir}/bash-completion/completions/*
 | |
| %{_datadir}/zsh/site-functions/*
 | |
| %{_libexecdir}/%{name}/conmon
 | |
| %config(noreplace) %{_sysconfdir}/cni/net.d/87-%{name}-bridge.conflist
 | |
| %{_unitdir}/podman.service
 | |
| %{_unitdir}/podman.socket
 | |
| %{_usr}/lib/systemd/user/podman.service
 | |
| %{_usr}/lib/systemd/user/podman.socket
 | |
| 
 | |
| %if 0%{?with_devel}
 | |
| %files -n libpod-devel -f devel.file-list
 | |
| %license LICENSE
 | |
| %doc README.md CONTRIBUTING.md pkg/hooks/README-hooks.md install.md CODE-OF-CONDUCT.md transfer.md
 | |
| %dir %{gopath}/src/%{provider}.%{provider_tld}/%{project}
 | |
| %endif
 | |
| 
 | |
| %if 0%{?with_unit_test} && 0%{?with_devel}
 | |
| %files unit-test-devel -f unit-test-devel.file-list
 | |
| %license LICENSE
 | |
| %doc README.md CONTRIBUTING.md pkg/hooks/README-hooks.md install.md CODE-OF-CONDUCT.md transfer.md
 | |
| %endif
 | |
| 
 | |
| %files -n podman-remote
 | |
| %license LICENSE
 | |
| %doc README.md CONTRIBUTING.md pkg/hooks/README-hooks.md install.md CODE-OF-CONDUCT.md transfer.md
 | |
| %{_bindir}/%{name}-remote
 | |
| 
 | |
| %if %{with doc}
 | |
| %files manpages
 | |
| %{_mandir}/man1/*.1*
 | |
| %{_mandir}/man5/*.5*
 | |
| %endif
 | |
| 
 | |
| %changelog
 | |
| * Sat Aug 4 2018 Dan Walsh <dwalsh@redhat.com> - 0.8.1-1.git6b4ab2a
 | |
| - Bump to v0.8.1
 | |
| 
 | |
| * Sun Jul 29 2018 Lokesh Mandvekar (Bot) <lsm5+bot@fedoraproject.org> - 0.8.10.8.1-1.dev.git1a439f9.dev.git5a4e590.dev.git433cbd51
 | |
| - bump to 0.8.1
 | |
| - autobuilt 433cbd5
 |