On Tue, Jan 05, 2016 at 05:11:14PM -0600, Tyler Hicks wrote: > Add a target that uses cov-build, which must be found in $PATH, to > generate an intermediate Coverity directory. Finally, the intermediate > directory is converted to a compressed tarball, stored in > coverity/apparmor-cov-int.tar.gz, that is suitable for uploading to > scan.coverity.com.
Thanks for driving this. Some thoughts: - In past lives, I've had to try to walk back from a random distributed snapshot tarball and try to match it back up to a VCS tree, and determine whether certain bugs had already been fixed and just needed cherry-picking or whether they were still an issue (or an insufficiently fixed issue). This is why in the generated tarballs, whether for release or ephemeral snapshots, I've tried to include a back reference to the specific commit in our VCS, to make backtracking significantly easier. I would imagine knowing which commit a given coverity scan corresponds to would be useful, especially if we aren't submitting every single commit. (That said, I'm not sure the coverity dashboard has a means of reporting this info.) (Also consider the issue we had in Ubuntu where the kernel team reported failures with out of date tests, but the specific revision used wasn't being reported, so investigation always needed to occur.) - I've also seen tarball releases where uncommitted fixes or other random garbage leaked in because the tarball was taken from an unclean VCS checkout. This is why the Makefile does the dance of making a clean checkout to work on for tarball generation, even if it is slower. (If I were better at bazaar, I would set up something akin to local git references and so it wouldn't be so slow, but I'm not. Setting REPO_URL=. will also make things go fast, but loses the publicly findable origin tree. My automated jenkins builds do exactly that, however.) I'd probably prefer to see it leverage a lot of the snapshot target's internals. > Signed-off-by: Tyler Hicks <[email protected]> > --- > Makefile | 11 ++++++++++- > 1 file changed, 10 insertions(+), 1 deletion(-) > > diff --git a/Makefile b/Makefile > index 5a9ba73..d7c3849 100644 > --- a/Makefile > +++ b/Makefile > @@ -24,6 +24,7 @@ > REPO_URL?=https://code.launchpad.net/~apparmor-dev/apparmor/master > #REPO_URL=. > #REPO_URL="bzr+ssh://bazaar.launchpad.net/~sbeattie/+junk/apparmor-dev/" > > +COVERITY_DIR=coverity > RELEASE_DIR=apparmor-${VERSION} > __SETUP_DIR?=. > > @@ -60,7 +61,7 @@ export_dir: > > .PHONY: clean > clean: > - -rm -rf ${RELEASE_DIR} ./apparmor-${VERSION}~* > + -rm -rf ${RELEASE_DIR} ./apparmor-${VERSION}~* ${COVERITY_DIR} > for dir in $(DIRS); do \ > make -C $$dir clean; \ > done > @@ -69,6 +70,14 @@ clean: > setup: > cd $(__SETUP_DIR)/libraries/libapparmor && ./autogen.sh > > +.PHONY: coverity > +coverity: COV_INT=$(COVERITY_DIR)/apparmor-cov-int > +coverity: setup > + cd $(__SETUP_DIR)/libraries/libapparmor && ./configure --with-python > + make clean > + $(foreach dir, $(DIRS), cov-build --dir $(COV_INT) -- make -C $(dir);) > + tar -cvzf $(COV_INT).tar.gz $(COV_INT) > + > .PHONY: tag > tag: > bzr tag apparmor_${TAG_VERSION} -- Steve Beattie <[email protected]> http://NxNW.org/~steve/
signature.asc
Description: Digital signature
-- AppArmor mailing list [email protected] Modify settings or unsubscribe at: https://lists.ubuntu.com/mailman/listinfo/apparmor
