logging.debug(line)
-def diff(diffdir_org, diffdir, builddir, output):
+def patch_comment_get(patch):
+ patch_comment = ""
+ patch_got = False
+ with open(patch, 'rt') as f:
+ for line in f:
+ if line.startswith('diff ') or line.startswith('--- '):
+ patch_got = True
+ break
+ patch_comment += line
+ return patch_comment if patch_got else ""
+
+def diff(diffdir_org, diffdir, builddir, patch_comment, output):
diffdir_org = os.path.basename(diffdir_org)
diffdir = os.path.basename(diffdir)
with open(output, 'wt') as f:
+ if patch_comment:
+ f.write(patch_comment)
+ f.flush()
cmd = [ 'diff', '-urNp', '-x', '*.orig', diffdir_org, diffdir ]
logging.debug("running %s" % repr(cmd))
try:
specfile = args.spec
appsourcedir = os.path.dirname(os.path.abspath(specfile))
- tempdir = tempfile.TemporaryDirectory(dir="/dev/shm")
+ try:
+ tempdir = tempfile.TemporaryDirectory(dir="/dev/shm")
+ except FileNotFoundError as e:
+ tempdir = tempfile.TemporaryDirectory(dir="/tmp")
topdir = tempdir.name
builddir = os.path.join(topdir, 'BUILD')
unpack(tempspec.name, appsourcedir, builddir)
tempspec.close()
- diff(appbuilddir + ".org", appbuilddir, builddir, os.path.join(topdir, os.path.join(appsourcedir, patch_name + ".rediff")))
+ patch_comment = patch_comment_get(patch_name)
+ diff(appbuilddir + ".org",
+ appbuilddir,
+ builddir,
+ patch_comment,
+ os.path.join(topdir, os.path.join(appsourcedir, patch_name + ".rediff")))
diffstat(os.path.join(topdir, os.path.join(appsourcedir, patch_name)))
diffstat(os.path.join(topdir, os.path.join(appsourcedir, patch_name + ".rediff")))
-#!/bin/sh
+#!/bin/bash
# script to run after "release bump" style change.
# takes Release from spec and creates commit with message
# groups similiar commits together.
# commit the changes
msg=""
- [ -n "$message" ] && msg="$msg- $message$n"
- msg="$msg- release ${rel%%%*} (by relup.sh)"
+ [ -n "$message" ] && msg="${msg}$message$n$n"
+ msg="${msg}Release ${rel%%%*} (by relup.sh)"
+
echo git commit -m "$msg" $spec
if [ "$test" != 1 ]; then
cd $pkgdir