%define ovs_version 2.11 # Comma-separated (no spaces) e.g. 2.10,2.9 ... %define obsolete_ovs_versions 2.10 %{lua: function ovs_obsoletes(package) local ovsv = rpm.expand("%ovs_version") print("Obsoletes: "..package.." < "..ovsv.."\n") for s in string.gmatch(rpm.expand("%obsolete_ovs_versions"), "[^,]+") do print("Obsoletes: "..package..s.." < "..ovsv.."\n") end end} Name: rhosp-openvswitch Version: %{ovs_version} Release: 0.5%{?dist} Summary: Wrapper rpm to allow installing OVS with new versioning schemes Group: System Environment/Daemons License: Public domain URL: http://www.openvswitch.org BuildArch: noarch Requires: openvswitch%{ovs_version} Requires: network-scripts-openvswitch%{ovs_version} Provides: openvswitch = %{ovs_version} %{lua:ovs_obsoletes("openvswitch")} %description Wrapper rpm for the base openvswitch package %package -n python3-rhosp-openvswitch Summary: wrapper for python-openvswitch rpm License: Public domain Requires: python3-openvswitch%{ovs_version} Provides: python3-openvswitch = %{ovs_version} %if 0%{?rhel} > 7 %{lua:ovs_obsoletes("python3-openvswitch")} %endif %{lua:ovs_obsoletes("python2-openvswitch")} %{lua:ovs_obsoletes("python-openvswitch")} %description -n python3-rhosp-openvswitch Wrapper rpm for the base python-openvswitch package %package devel Summary: wrapper for openvswitch-devel rpm License: Public domain Requires: openvswitch%{ovs_version}-devel Provides: openvswitch-devel = %{ovs_version} %{lua:ovs_obsoletes("openvswitch-devel")} %description devel Wrapper rpm for the base openvswitch-devel package %package ovn-central Summary: wrapper for openvswitch-ovn-central rpm License: Public domain Requires: openvswitch%{ovs_version}-ovn-central Provides: openvswitch-ovn-central = %{ovs_version} %{lua:ovs_obsoletes("openvswitch-ovn-central")} %description ovn-central Wrapper rpm for the base openvswitch-ovn-central package %package ovn-host Summary: wrapper for openvswitch-ovn-host rpm License: Public domain Requires: openvswitch%{ovs_version}-ovn-host Provides: openvswitch-ovn-host = %{ovs_version} %{lua:ovs_obsoletes("openvswitch-ovn-host")} %description ovn-host Wrapper rpm for the base openvswitch-ovn-host package %package ovn-vtep Summary: wrapper for openvswitch-ovn-vtep rpm License: Public domain Requires: openvswitch%{ovs_version}-ovn-vtep Provides: openvswitch-ovn-vtep = %{ovs_version} %{lua:ovs_obsoletes("openvswitch-ovn-vtep")} %description ovn-vtep Wrapper rpm for the base openvswitch-ovn-vtep package %package ovn-common Summary: wrapper for openvswitch-ovn-common rpm License: Public domain Requires: openvswitch%{ovs_version}-ovn-common Provides: openvswitch-ovn-common = %{ovs_version} %{lua:ovs_obsoletes("openvswitch-ovn-common")} %description ovn-common Wrapper rpm for the base openvswitch-ovn-common package %package ovn-docker Summary: wrapper for openvswitch-ovn-docker rpm License: Public domain Requires: openvswitch%{ovs_version}-ovn-docker Provides: openvswitch-ovn-docker = %{ovs_version} %{lua:ovs_obsoletes("openvswitch-ovn-docker")} %description ovn-docker Wrapper rpm for the base openvswitch-ovn-docker package %package test Summary: wrapper for openvswitch-test rpm License: Public domain Requires: openvswitch%{ovs_version}-test Provides: openvswitch-test = %{ovs_version} %{lua:ovs_obsoletes("openvswitch-test")} %description test Wrapper rpm for the base openvswitch-test package %setup %build %files %files -n python3-rhosp-openvswitch %files devel %files ovn-central %files ovn-host %files ovn-vtep %files ovn-common %files ovn-docker %files test %changelog * Fri Mar 08 2019 Mike Burns - 2.11.0-1 - rebase to OVS 2.11 * Wed Jul 11 2018 Mike Burns - 2.10-0.1 - initial spec for RHOSP openvswitch wrapper RPMs