Change in vdsm[master]: DomainMonitor should use use real domains (no proxy)
by Federico Simoncelli
Federico Simoncelli has uploaded a new change for review.
Change subject: DomainMonitor should use use real domains (no proxy)
......................................................................
DomainMonitor should use use real domains (no proxy)
In this patch:
* produce the domain when refreshing
* remove the remaining getRealDomain (DomainProxy) calls
* fix manuallyRemoveDomain for non-existent domains
Signed-off-by: Federico Simoncelli <fsimonce(a)redhat.com>
Change-Id: Ibbf67fc050658e3418aa666e8fcef1e1244571e9
---
M vdsm/storage/domainMonitor.py
M vdsm/storage/sdc.py
M vdsm/storage/sp.py
3 files changed, 32 insertions(+), 26 deletions(-)
git pull ssh://gerrit.ovirt.org:29418/vdsm refs/changes/94/7294/1
diff --git a/vdsm/storage/domainMonitor.py b/vdsm/storage/domainMonitor.py
index 80b6ed3..0272cb1 100644
--- a/vdsm/storage/domainMonitor.py
+++ b/vdsm/storage/domainMonitor.py
@@ -75,13 +75,14 @@
def monitoredDomains(self):
return self._domains.keys()
- def startMonitoring(self, domain, hostId):
- if domain.sdUUID in self._domains:
+ def startMonitoring(self, sdUUID, hostId):
+ if sdUUID in self._domains:
return
- self._domains[domain.sdUUID] = DomainMonitorThread(
- domain, hostId, self._interval)
- self._domains[domain.sdUUID].start()
+ domainThread = DomainMonitorThread(sdUUID, hostId, self._interval)
+ domainThread.start()
+ # The domain should be added only after it succesfully started
+ self._domains[sdUUID] = domainThread
def stopMonitoring(self, sdUUID):
# The domain monitor issues events that might become raceful if
@@ -107,22 +108,25 @@
class DomainMonitorThread(object):
log = logging.getLogger('Storage.DomainMonitorThread')
- def __init__(self, domain, hostId, interval):
+ def __init__(self, sdUUID, hostId, interval):
self.thread = Thread(target=self._monitorLoop)
self.thread.setDaemon(True)
self.stopEvent = Event()
- self.domain = domain
+ self.domain = None
+ self.sdUUID = sdUUID
self.hostId = hostId
self.interval = interval
self.status = DomainMonitorStatus()
self.nextStatus = DomainMonitorStatus()
- self.isIsoDomain = domain.isISO()
+ self.isIsoDomain = None
self.lastRefresh = time()
self.refreshTime = \
config.getint("irs", "repo_stats_cache_refresh_timeout")
def start(self):
+ self.domain = sdCache.produce(self.sdUUID)
+ self.isIsoDomain = self.domain.isISO()
self.thread.start()
def stop(self, wait=True):
@@ -134,17 +138,17 @@
return self.status.copy()
def _monitorLoop(self):
- self.log.debug("Starting domain monitor for %s", self.domain.sdUUID)
+ self.log.debug("Starting domain monitor for %s", self.sdUUID)
while not self.stopEvent.is_set():
try:
self._monitorDomain()
except:
self.log.error("The domain monitor for %s failed unexpectedly",
- self.domain.sdUUID, exc_info=True)
+ self.sdUUID, exc_info=True)
self.stopEvent.wait(self.interval)
- self.log.debug("Stopping domain monitor for %s", self.domain.sdUUID)
+ self.log.debug("Stopping domain monitor for %s", self.sdUUID)
# If this is an ISO domain we didn't acquire the host id and releasing
# it is superfluous.
@@ -153,16 +157,17 @@
self.domain.releaseHostId(self.hostId, unused=True)
except:
self.log.debug("Unable to release the host id %s for domain "
- "%s", self.hostId, self.domain.sdUUID, exc_info=True)
+ "%s", self.hostId, self.sdUUID, exc_info=True)
def _monitorDomain(self):
self.nextStatus.clear()
- # Refreshing the domain object in order to pick up changes as,
- # for example, the domain upgrade.
if time() - self.lastRefresh > self.refreshTime:
- self.log.debug("Refreshing domain %s", self.domain.sdUUID)
- sdCache.manuallyRemoveDomain(self.domain.sdUUID)
+ # Refreshing the domain object in order to pick up changes as,
+ # for example, the domain upgrade.
+ self.log.debug("Refreshing domain %s", self.sdUUID)
+ sdCache.manuallyRemoveDomain(self.sdUUID)
+ self.domain = sdCache.produce(self.sdUUID)
self.lastRefresh = time()
try:
@@ -188,20 +193,19 @@
except Exception, e:
self.log.error("Error while collecting domain %s monitoring "
- "information", self.domain.sdUUID, exc_info=True)
+ "information", self.sdUUID, exc_info=True)
self.nextStatus.error = e
self.nextStatus.lastCheck = time()
self.nextStatus.valid = (self.nextStatus.error is None)
if self.status.valid != self.nextStatus.valid:
- self.log.debug("Domain %s changed its status to %s",
- self.domain.sdUUID,
+ self.log.debug("Domain %s changed its status to %s", self.sdUUID,
"Valid" if self.nextStatus.valid else "Invalid")
try:
self.onDomainConnectivityStateChange.emit(
- self.domain.sdUUID, self.nextStatus.valid)
+ self.sdUUID, self.nextStatus.valid)
except:
self.log.warn("Could not emit domain state change event",
exc_info=True)
@@ -213,7 +217,7 @@
self.domain.acquireHostId(self.hostId, async=True)
except:
self.log.debug("Unable to issue the acquire host id %s "
- "request for domain %s", self.hostId, self.domain.sdUUID,
+ "request for domain %s", self.hostId, self.sdUUID,
exc_info=True)
self.status.update(self.nextStatus)
diff --git a/vdsm/storage/sdc.py b/vdsm/storage/sdc.py
index 9a7d09d..eee8d73 100644
--- a/vdsm/storage/sdc.py
+++ b/vdsm/storage/sdc.py
@@ -137,7 +137,10 @@
def manuallyRemoveDomain(self, sdUUID):
with self._syncroot:
- del self.__cache[sdUUID]
+ try:
+ del self.__cache[sdUUID]
+ except KeyError:
+ pass
storage_repository = config.get('irs', 'repository')
diff --git a/vdsm/storage/sp.py b/vdsm/storage/sp.py
index ed2b893..da403d9 100644
--- a/vdsm/storage/sp.py
+++ b/vdsm/storage/sp.py
@@ -1022,8 +1022,8 @@
if targetFormat is None:
targetFormat = self.getFormat()
- self._formatConverter.convert(repoPath, self.id, domain.getRealDomain(),
- isMsd, targetFormat)
+ self._formatConverter.convert(repoPath, self.id, domain, isMsd,
+ targetFormat)
sdCache.manuallyRemoveDomain(sdUUID)
@unsecured
@@ -1557,8 +1557,7 @@
for sdUUID in activeDomains:
if sdUUID not in monitoredDomains:
try:
- self.domainMonitor \
- .startMonitoring(sdCache.produce(sdUUID), self.id)
+ self.domainMonitor.startMonitoring(sdUUID, self.id)
self.log.debug("Storage Pool `%s` started monitoring "
"domain `%s`", self.spUUID, sdUUID)
except se.StorageException:
--
To view, visit http://gerrit.ovirt.org/7294
To unsubscribe, visit http://gerrit.ovirt.org/settings
Gerrit-MessageType: newchange
Gerrit-Change-Id: Ibbf67fc050658e3418aa666e8fcef1e1244571e9
Gerrit-PatchSet: 1
Gerrit-Project: vdsm
Gerrit-Branch: master
Gerrit-Owner: Federico Simoncelli <fsimonce(a)redhat.com>
10 years, 1 month
Change in vdsm[master]: Revert "BZ#842631 Use domain proxies instead of actual domai...
by Federico Simoncelli
Federico Simoncelli has uploaded a new change for review.
Change subject: Revert "BZ#842631 Use domain proxies instead of actual domain references"
......................................................................
Revert "BZ#842631 Use domain proxies instead of actual domain references"
This reverts commit 942c2dc8d317b6180529ed7df4eee98fbf1b9836.
Signed-off-by: Federico Simoncelli <fsimonce(a)redhat.com>
Change-Id: Id4b1e0600948ab24e144df94f8d02a101a87627a
---
M vdsm/storage/sdc.py
1 file changed, 11 insertions(+), 40 deletions(-)
git pull ssh://gerrit.ovirt.org:29418/vdsm refs/changes/93/7293/1
diff --git a/vdsm/storage/sdc.py b/vdsm/storage/sdc.py
index 2e8a6ff..9a7d09d 100644
--- a/vdsm/storage/sdc.py
+++ b/vdsm/storage/sdc.py
@@ -36,21 +36,6 @@
DEFAULT_REFRESH_INTERVAL = 300
-class DomainProxy(object):
- """Keeps domain references valid even when underlying domain object changes
- (due to format conversion for example"""
- def __init__(self, cache, sdUUID):
- self._sdUUID = sdUUID
- self._cache = cache
-
- def __getattr__(self, attrName):
- dom = self.getRealDomain()
- return getattr(dom, attrName)
-
- def getRealDomain(self):
- return self._cache._realProduce(self._sdUUID)
-
-
class StorageDomainCache:
"""
Storage Domain List keeps track of all the storage domains accessible by
@@ -59,9 +44,9 @@
log = logging.getLogger('Storage.StorageDomainCache')
def __init__(self, storage_repo):
- self._syncroot = threading.RLock()
- self.__proxyCache = {}
- self.__domainCache = {}
+ self._syncroot = threading.Lock()
+ self.__cache = {}
+ self.__weakCache = {}
self.storage_repo = storage_repo
self.storageStale = True
@@ -79,14 +64,14 @@
if self.storageStale == True:
return None
try:
- return self.__proxyCache[sdUUID]()
+ return self.__weakCache[sdUUID]()
except KeyError:
return None
def _cleanStaleWeakrefs(self):
- for sdUUID, ref in self.__proxyCache.items():
+ for sdUUID, ref in self.__weakCache.items():
if ref() is None:
- del self.__proxyCache[sdUUID]
+ del self.__weakCache[sdUUID]
def produce(self, sdUUID):
dom = self._getDomainFromCache(sdUUID)
@@ -103,25 +88,11 @@
self._cleanStaleWeakrefs()
- dom = DomainProxy(self, sdUUID)
- # This is needed to preserve the semantic where if the domain was
- # absent from the cache and the domain cannot be found the
- # operation would fail
- dom.getRealDomain()
- self.__proxyCache[sdUUID] = weakref.ref(dom)
- return dom
-
- def _realProduce(self, sdUUID):
- with self._syncroot:
- try:
- return self.__domainCache[sdUUID]
- except KeyError:
- pass
-
# _findDomain will raise StorageDomainDoesNotExist if sdUUID is not
# found in storage.
dom = self._findDomain(sdUUID)
- self.__domainCache[sdUUID] = dom
+ self.__cache[sdUUID] = dom
+ self.__weakCache[sdUUID] = weakref.ref(dom)
return dom
def _findDomain(self, sdUUID):
@@ -158,15 +129,15 @@
def refresh(self):
self.invalidateStorage()
- self.__domainCache.clear()
+ self.__cache.clear()
def manuallyAddDomain(self, dom):
with self._syncroot:
- self.__domainCache[dom.sdUUID] = dom
+ self.__cache[dom.sdUUID] = dom
def manuallyRemoveDomain(self, sdUUID):
with self._syncroot:
- del self.__domainCache[sdUUID]
+ del self.__cache[sdUUID]
storage_repository = config.get('irs', 'repository')
--
To view, visit http://gerrit.ovirt.org/7293
To unsubscribe, visit http://gerrit.ovirt.org/settings
Gerrit-MessageType: newchange
Gerrit-Change-Id: Id4b1e0600948ab24e144df94f8d02a101a87627a
Gerrit-PatchSet: 1
Gerrit-Project: vdsm
Gerrit-Branch: master
Gerrit-Owner: Federico Simoncelli <fsimonce(a)redhat.com>
10 years, 1 month
Change in vdsm[master]: Rename volumeCopy API to volumeCollapse
by Federico Simoncelli
Federico Simoncelli has uploaded a new change for review.
Change subject: Rename volumeCopy API to volumeCollapse
......................................................................
Rename volumeCopy API to volumeCollapse
copyImage (the internal call used by the former volumeCopy) creates
a new template/volume collapsing the whole chain (base->volUUID).
This is not just a nomenclature problem since we need to implement
the real volumeCopy.
Change-Id: Ide39bb54d2a97b3ba8d4712750ff10a67c5764f2
---
M vdsm/API.py
M vdsm/BindingXMLRPC.py
2 files changed, 11 insertions(+), 11 deletions(-)
git pull ssh://gerrit.ovirt.org:29418/vdsm refs/changes/68/2968/1
--
To view, visit http://gerrit.ovirt.org/2968
To unsubscribe, visit http://gerrit.ovirt.org/settings
Gerrit-MessageType: newchange
Gerrit-Change-Id: Ide39bb54d2a97b3ba8d4712750ff10a67c5764f2
Gerrit-PatchSet: 1
Gerrit-Project: vdsm
Gerrit-Branch: master
Gerrit-Owner: Federico Simoncelli <fsimonce(a)redhat.com>
10 years, 1 month
Change in vdsm[master]: build: closer to open source versioning and release cycle
by Alon Bar-Lev
Alon Bar-Lev has uploaded a new change for review.
Change subject: build: closer to open source versioning and release cycle
......................................................................
build: closer to open source versioning and release cycle
Upstream project version is constructed from three components: major,
minor and fix.
Major version is incremented when there is a significant change in
project. Minor version is incremented when features are being added.
Fix version is incremented when a stable fix is published.
A project release is made at fix release 0, for example: 4.11.0
Pre-releases are marked as version suffix, for example the following is
a valid release cycle:
- 4.11.0_alpha
- 4.11.0_beta
- 4.11.0_beta2
- 4.11.0_rc
- 4.11.0_rc2
- 4.11.0
Please remember, upstream releases sources, only sources.
Downstream is allowed to add its own revision, for example rpm based
distribution use the following format:
@UPSTREAM_VERSION@-@DOWNSTREAM_VERSION@
Downstream versioning scheme should not effect upstream, as the flow has
its nature. However, upstream may provide a reference for downstream
packager.
Due to limitation of rpm technology, the pre-release milestone component
cannot be used as part of upstream version component, so a sequence
should be added, for example, the following is a valid downstream
release cycle:
- 4.11.0-0.0.alpha
- 4.11.0-0.1.beta
- 4.11.0-0.2.rc
- 4.11.0-1
Branch should contain the 'next' version with milestone of 'master'.
Hence over time the master will go over the following transitions:
- 4.11.0-0.0.master
- 4.11.0-0.1.alpha
- 4.11.0-0.2.master
- 4.11.0-0.3.beta
- 4.11.0-0.4.master
- 4.11.0-0.5.rc
- 4.11.0-0.6.master
- 4.11.0-1
- 4.12.0-0.0.master
This change enables this approach by adding the following variables to
the configure.ac:
- PRODUCT_VERSION - minor.major.fix
- PRODUCT_VERSION_SUFFIX - optional suffix, such as _alpha
- PACKAGE_RPM_RELEASE - rpm release
Unlike current versioning implementation we disconnect the versioning
from the git branch information, as the git branch information is aware
of /past/ versions, while a branch is work toward the /next/ version.
A valid sequence for release cycle:
PRODUCT_VERSION=4.11.0
PRODUCT_VERSION_SUFFIX=_master
PACKAGE_RPM_RELEASE=0.0.$(echo PRODUCT_VERSION_SUFFIX | sed 's/^_//')
PRODUCT_VERSION=4.11.0
PRODUCT_VERSION_SUFFIX=_beta
PACKAGE_RPM_RELEASE=0.1.$(echo PRODUCT_VERSION_SUFFIX | sed 's/^_//')
PRODUCT_VERSION=4.11.0
PRODUCT_VERSION_SUFFIX=_master
PACKAGE_RPM_RELEASE=0.2.$(echo PRODUCT_VERSION_SUFFIX | sed 's/^_//')
PRODUCT_VERSION=4.11.0
PRODUCT_VERSION_SUFFIX=_rc
PACKAGE_RPM_RELEASE=0.3.$(echo PRODUCT_VERSION_SUFFIX | sed 's/^_//')
PRODUCT_VERSION=4.11.0
PRODUCT_VERSION_SUFFIX=_master
PACKAGE_RPM_RELEASE=0.4.$(echo PRODUCT_VERSION_SUFFIX | sed 's/^_//')
PRODUCT_VERSION=4.11.0
PRODUCT_VERSION_SUFFIX=
PACKAGE_RPM_RELEASE=1
PRODUCT_VERSION=4.12.0
PRODUCT_VERSION_SUFFIX=_master
PACKAGE_RPM_RELEASE=0.0.$(echo PRODUCT_VERSION_SUFFIX | sed 's/^_//')
Build automation may inject release suffix to the binary package name, an
example exist in the 'make rpm' target.
Change-Id: I1a73089d47804ca31e3a4d80aaf811fa011ba1f3
Signed-off-by: Alon Bar-Lev <alonbl(a)redhat.com>
---
M Makefile.am
D build-aux/pkg-version
M configure.ac
M vdsm.spec.in
4 files changed, 41 insertions(+), 64 deletions(-)
git pull ssh://gerrit.ovirt.org:29418/vdsm refs/changes/48/12448/1
diff --git a/Makefile.am b/Makefile.am
index 75f360f..304128a 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -34,7 +34,6 @@
# This is an *exception*, we ship also vdsm.spec so it's possible to build the
# rpm from the tarball.
EXTRA_DIST = \
- build-aux/pkg-version \
vdsm.spec \
vdsm.spec.in
@@ -79,14 +78,32 @@
all-local: \
vdsm.spec
+vdsm.spec: configure.ac
+
.PHONY: srpm rpm
srpm: dist
- rpmbuild -ts $(if $(BUILDID),--define="extra_release .$(BUILDID)") $(DIST_ARCHIVES)
+ SUFFIX=".`date -u +%Y%m%d%H%M%S`"; \
+ if [ -d "$(top_srcdir)/.git" ]; then \
+ SUFFIX="$$SUFFIX.git`GIT_DIR="$(top_srcdir)/.git" $(GIT) rev-parse --short=16 HEAD`"; \
+ fi; \
+ rpmbuild \
+ -ts \
+ --define="release_suffix $$SUFFIX" \
+ $(if $(BUILDID),--define="extra_release .$(BUILDID)") \
+ $(DIST_ARCHIVES)
rpm: dist
- rpmbuild -ta $(if $(BUILDID),--define="extra_release .$(BUILDID)") \
- $(WITH_HOOKS) $(DIST_ARCHIVES)
+ SUFFIX=".`date -u +%Y%m%d%H%M%S`"; \
+ if [ -d "$(top_srcdir)/.git" ]; then \
+ SUFFIX="$$SUFFIX.git`GIT_DIR="$(top_srcdir)/.git" $(GIT) rev-parse --short=16 HEAD`"; \
+ fi; \
+ rpmbuild \
+ -ta \
+ --define="release_suffix $$SUFFIX" \
+ $(if $(BUILDID),--define="extra_release .$(BUILDID)") \
+ $(WITH_HOOKS) \
+ $(DIST_ARCHIVES)
dist-hook: gen-VERSION gen-ChangeLog
.PHONY: gen-VERSION gen-ChangeLog
@@ -102,9 +119,10 @@
fi
gen-VERSION:
- if test -d .git; then \
- $(top_srcdir)/build-aux/pkg-version --full \
- > $(distdir)/ve-t; \
- rm -f $(distdir)/VERSION; \
- mv $(distdir)/ve-t $(distdir)/VERSION; \
+ if test -d "$(top_srcdir)/.git"; then \
+ BRANCH=`GIT_DIR="$(top_srcdir)/.git" $(GIT) rev-parse --symbolic-full-name HEAD`; \
+ BRANCH=`basename $$BRANCH`; \
+ REVISION=`GIT_DIR="$(top_srcdir)/.git" $(GIT) rev-parse --short=16 HEAD`; \
+ echo -n $(PACKAGE_NAME)-$(PACKAGE_VERSION).$$BRANCH.$$REVISION > $(distdir)/VERSION.tmp; \
+ mv $(distdir)/VERSION.tmp $(distdir)/VERSION; \
fi
diff --git a/build-aux/pkg-version b/build-aux/pkg-version
deleted file mode 100755
index 346ad23..0000000
--- a/build-aux/pkg-version
+++ /dev/null
@@ -1,39 +0,0 @@
-#!/bin/sh
-
-# tags and output versions:
-# - v4.9.0 => 4.9.0 (upstream clean)
-# - v4.9.0-1 => 4.9.0 (downstream clean)
-# - v4.9.0-2-g34e62f => 4.9.0 (upstream dirty)
-# - v4.9.0-1-2-g34e62f => 4.9.0 (downstream dirty)
-AWK_VERSION='
- BEGIN { FS="-" }
- /^v[0-9]/ {
- sub(/^v/,"") ; print $1
- }'
-
-# tags and output releases:
-# - v4.9.0 => 0 (upstream clean)
-# - v4.9.0-1 => 1 (downstream clean)
-# - v4.9.0-2-g34e62f1 => 0.2.git34e62f1 (upstream dirty)
-# - v4.9.0-1-2-g34e62f1 => 1.2.git34e62f1 (downstream dirty)
-AWK_RELEASE='
- BEGIN { FS="-"; OFS="." }
- /^v[0-9]/ {
- if (NF == 1) print 0
- else if (NF == 2) print $2
- else if (NF == 3) print 0, $2, "git" substr($3, 2)
- else if (NF == 4) print $2, $3, "git" substr($4, 2)
- }'
-
-PKG_VERSION=`cat VERSION 2> /dev/null || git describe --match "v[0-9]*"`
-
-if test "x$1" = "x--full"; then
- echo $PKG_VERSION | tr -d '[:space:]'
-elif test "x$1" = "x--version"; then
- echo $PKG_VERSION | awk "$AWK_VERSION" | tr -cd '[:alnum:].'
-elif test "x$1" = "x--release"; then
- echo $PKG_VERSION | awk "$AWK_RELEASE" | tr -cd '[:alnum:].'
-else
- echo "usage: $0 [--full|--version|--release]"
- exit 1
-fi
diff --git a/configure.ac b/configure.ac
index 434d209..6197a76 100644
--- a/configure.ac
+++ b/configure.ac
@@ -19,22 +19,18 @@
#
# Autoconf initialization
-AC_INIT([vdsm],
- [m4_esyscmd([build-aux/pkg-version --version])],
- [vdsm-devel(a)lists.fedorahosted.org])
+define([PRODUCT_VERSION], [4.11.0])
+define([PRODUCT_VERSION_SUFFIX], [_master])
+AC_INIT([vdsm], PRODUCT_VERSION[]PRODUCT_VERSION_SUFFIX, [vdsm-devel(a)lists.fedorahosted.org])
AC_CONFIG_AUX_DIR([build-aux])
m4_include([m4/ax_python_module.m4])
-# Package release
-AC_SUBST([PACKAGE_RELEASE],
- [m4_esyscmd([build-aux/pkg-version --release])])
-
-# Testing for version and release
-AS_IF([test "x$PACKAGE_VERSION" = x],
- AC_MSG_ERROR([package version not defined]))
-AS_IF([test "x$PACKAGE_RELEASE" = x],
- AC_MSG_ERROR([package release not defined]))
+# RPM version
+PACKAGE_RPM_VERSION="PRODUCT_VERSION"
+PACKAGE_RPM_RELEASE="0.0.$(echo PRODUCT_VERSION_SUFFIX | sed 's/^_//')"
+AC_SUBST([PACKAGE_RPM_VERSION])
+AC_SUBST([PACKAGE_RPM_RELEASE])
# Automake initialization
AM_INIT_AUTOMAKE([-Wno-portability])
@@ -99,6 +95,8 @@
AC_SUBST([SMBIOS_MANUFACTURER], ['oVirt'])
AC_SUBST([SMBIOS_OSNAME], ['oVirt Node'])
+AC_PATH_PROG([GIT], [git])
+
# Checking for pyflakes
AC_PATH_PROG([PYFLAKES], [pyflakes])
if test "x$PYFLAKES" = "x"; then
diff --git a/vdsm.spec.in b/vdsm.spec.in
index 38838ea..8278014 100644
--- a/vdsm.spec.in
+++ b/vdsm.spec.in
@@ -23,14 +23,14 @@
%{!?enable_autotools:%define enable_autotools 0}
Name: %{vdsm_name}
-Version: @PACKAGE_VERSION@
-Release: @PACKAGE_RELEASE@%{?dist}%{?extra_release}
+Version: @PACKAGE_RPM_VERSION@
+Release: @PACKAGE_RPM_RELEASE@%{?release_suffix}%{?dist}%{?extra_release}
Summary: Virtual Desktop Server Manager
Group: Applications/System
License: GPLv2+
Url: http://www.ovirt.org/wiki/Vdsm
-Source0: %{vdsm_name}-%{version}.tar.gz
+Source0: @PACKAGE_NAME@-@PACKAGE_VERSION@.tar.gz
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
BuildRequires: python
@@ -427,7 +427,7 @@
Gluster plugin enables VDSM to serve Gluster functionalities.
%prep
-%setup -q
+%setup -q -n @PACKAGE_NAME@-@PACKAGE_VERSION@
%if 0%{?rhel} == 6
sed -i '/ su /d' vdsm/vdsm-logrotate.conf.in
%endif
--
To view, visit http://gerrit.ovirt.org/12448
To unsubscribe, visit http://gerrit.ovirt.org/settings
Gerrit-MessageType: newchange
Gerrit-Change-Id: I1a73089d47804ca31e3a4d80aaf811fa011ba1f3
Gerrit-PatchSet: 1
Gerrit-Project: vdsm
Gerrit-Branch: master
Gerrit-Owner: Alon Bar-Lev <alonbl(a)redhat.com>
10 years, 1 month