* gbs build : build rpm package from git repository on OBS
* gbs local-build : build rpm package from git repository at local
-* gbs import : import source tarball or source rpm to git repository
+* gbs import-orig: import source tarball to current git repository, which can be used to upgrade a package
+* gbs import : import source rpm or specfile to git repository
* gbs submit : maintain the changelogs file, sanity check etc.
It supports native running in many mainstream Linux distributions, including:
specfile = None
if len(args) < 1:
- msger.error('Missing argument, please reference gbs import --help.')
+ msger.error('missing argument, please reference gbs import --help.')
if len(args) > 1:
- msger.error('Too many arguments! Please reference gbs import --help.')
+ msger.error('too many arguments! Please reference gbs import --help.')
if args[0].endswith('.src.rpm'):
srcrpmdir = tempfile.mkdtemp(prefix='%s/%s' % (tmpdir, 'src.rpm'))
elif args[0].endswith('.spec'):
specfile = args[0]
else:
- msger.error('Tarball imported support has not been implemented')
+ msger.error('gbs import only support importing specfile or source rpm')
if not os.path.exists(tmpdir):
os.makedirs(tmpdir)
basedir = os.path.abspath(os.path.dirname(specfile))
tarball = os.path.join(basedir, utils.parse_spec(specfile, 'SOURCE0'))
if not os.path.exists(tarball):
- msger.error('Tarball %s not exist, please check that' % tarball)
+ msger.error('tarball %s not exist, please check that' % tarball)
pkgname = utils.parse_spec(specfile, 'name')
pkgversion = utils.parse_spec(specfile, 'version')
try:
repo = git.Git(pkgname)
except errors.GitInvalid:
- msger.info("No git repository found, creating one.")
+ msger.info("no git repository found, creating one.")
repo = git.Git.create(pkgname)
tardir = tempfile.mkdtemp(prefix='%s/%s' % (tmpdir, pkgname))
try:
upstream.unpack(tardir)
except errors.UnpackError:
- msger.error('Unpacking %s failed' % tarball)
+ msger.error('unpacking %s failed' % tarball)
except errors.FormatError, e:
msger.error(e.msg)
msger.info('create upstream branch')
repo.create_branch('upstream', commit)
else:
- msger.info('No changes between currentlly git repo and tar ball')
+ msger.info('no changes between currentlly git repo and tar ball')
packagingdir = '%s/packaging' % upstream.unpacked
if not os.path.exists(packagingdir):
try:
repo = git.Git('.')
except errors.GitInvalid:
- msger.error("No git repository found.")
+ msger.error("no git repository found.")
tardir = tempfile.mkdtemp(prefix='%s/' % (tmpdir))
upstream = utils.UpstreamTarball(tarball)
(pkgname, pkgversion) = upstream.guess_version() or ('', '')
if not ( pkgname and pkgversion ):
- msger.error('can\'t parse the package name or version! Please check the tarball.' )
-
+ msger.error('can\'t parse out package name or version! Please check '
+ 'the tarball. The format of tarball name should be '
+ 'name-version-tizen.<ext> or name-version.<ext>')
try:
msger.info('unpack upstream tar ball ...')
upstream.unpack(tardir)
except errors.UnpackError:
- msger.error('Unpacking %s failed' % tarball)
+ msger.error('unpacking %s failed' % tarball)
except errors.FormatError, e:
msger.error(e.msg)
msger.info('merge imported upstream branch to master branch')
repo.merge(commit)
except:
- msger.error('Merge failed, please resolve')
+ msger.error('merge failed, please resolve')
msger.info('done.')
extensions = r'\.tar\.(%s)' % "|".join(known_compressions)
version_filters = map ( lambda x: x % (version_chars, extensions),
- ( # Tizen package_<version>-tizen.tar.gz:
+ ( # Tizen package-<version>-tizen.tar.gz:
r'^(?P<package>[a-z\d\.\+\-]+)-(?P<version>%s+)-tizen%s',
# Upstream package-<version>.tar.gz:
r'^(?P<package>[a-zA-Z\d\.\+\-]+)-(?P<version>[0-9]%s*)%s'))