On Fri, 2018-06-15 at 07:58 -0700, Dan Williams wrote: > On Fri, Jun 15, 2018 at 1:14 AM, Vishal Verma <[email protected]> > wrote: > > Add a couple of helper scripts to codify the release process. > > First is do_abidiff: This builds RPMs for two different versions of > > ndctl (specified as a git revision range, for example vXX.Y..HEAD). It > > then uses abipkgdiff to determine whether the commits in that range > > (collectively) introduced any compatibility breaking ABI changes. > > Changing or removing a publicly exported function is considered a > > breakage, where as adding new functions is acceptable. > > > > Second is prepare-release.sh: Its primary purpose is to codify the > > libtool version update. It does a variety of sanity checks to ensure we > > didn't involuntarily bump the soname, or update the libtool version in > > an unexpected way. > > > > prepare-release.sh also calls do_abidiff to perform an abi check > > between > > the last bug-fix update and the new version about to be released. > > Nice! Good idea. > > > > > Cc: Dan Williams <[email protected]> > > Signed-off-by: Vishal Verma <[email protected]> > > --- > > contrib/do_abidiff | 73 ++++++++++++++ > > contrib/prepare-release.sh | 201 +++++++++++++++++++++++++++++++++++++ > > 2 files changed, 274 insertions(+) > > create mode 100755 contrib/do_abidiff > > create mode 100755 contrib/prepare-release.sh > > > > diff --git a/contrib/do_abidiff b/contrib/do_abidiff > > new file mode 100755 > > index 0000000..9adc93a > > --- /dev/null > > +++ b/contrib/do_abidiff > > @@ -0,0 +1,73 @@ > > +#!/bin/bash -e > > + > > +# WARNING: This will wipe ~/rpmbuild > > + > > +range="$*" > > +old="${range%%..*}" > > +new="${range##*..}" > > + > > +err() > > +{ > > + echo "$1" > > + exit 1 > > +} > > + > > +build_rpm() > > +{ > > + local cur=$(git rev-parse --abbrev-ref HEAD 2>/dev/null) > > + local ref="$1" > > + > > + # setup rpmbuild env > > + rpmdev-wipetree && rpmdev-setuptree > > Perhaps let's use mock here instead. In addition to including the > ability clean the build tree it can also target rawhide rather than > the current developer's Fedora version. > > You would use "rpmbuild -bs" to create a source rpm and then hand that > off to mock.
Agreed, I'm changing this to use fedpkg to perform the mock build. That would be even more low impact/dependence on the developer environment, and gets us as close as possible to Fedora's build environment. _______________________________________________ Linux-nvdimm mailing list [email protected] https://lists.01.org/mailman/listinfo/linux-nvdimm
