mirror of
https://github.com/valitydev/salt.git
synced 2024-11-09 01:36:48 +00:00
381e8cc144
This reduces warnings from the 2to3 utility and future proofs the code when it is time to move to Python 3.
51 lines
1.3 KiB
Python
Executable File
51 lines
1.3 KiB
Python
Executable File
#! /bin/env python
|
|
from __future__ import print_function
|
|
import sys
|
|
import os
|
|
import tarfile
|
|
import argparse
|
|
from os.path import dirname, join, abspath
|
|
from shutil import copy
|
|
from subprocess import check_call
|
|
|
|
parser = argparse.ArgumentParser(
|
|
description='Build salt rpms',
|
|
)
|
|
parser.add_argument('buildid',
|
|
help='The build id to use i.e. the bit after the salt version in the package name',
|
|
)
|
|
args = parser.parse_args()
|
|
|
|
src = abspath(join(dirname(__file__), '../..'))
|
|
|
|
sys.path.append(src)
|
|
|
|
import salt.version
|
|
|
|
salt_version = salt.version.__saltstack_version__.string
|
|
|
|
rpmbuild = join(os.environ['HOME'], 'rpmbuild')
|
|
copy(join(src, 'pkg/rpm/salt.spec'), join(rpmbuild, 'SPECS'))
|
|
for f in os.listdir(join(src, 'pkg/rpm')):
|
|
if f in ['salt.spec', 'build.py']:
|
|
continue
|
|
copy(join(src, 'pkg/rpm', f), join(rpmbuild, 'SOURCES'))
|
|
|
|
|
|
def srcfilter(ti):
|
|
if '/.git' in ti.name:
|
|
return None
|
|
return ti
|
|
|
|
with tarfile.open(join(rpmbuild, 'SOURCES/salt-%s.tar.gz' % salt_version), 'w|gz') as tf:
|
|
tf.add(src, arcname='salt-%s' % salt_version,
|
|
filter=srcfilter)
|
|
|
|
|
|
cmd = ['rpmbuild', '-bb',
|
|
'--define=salt_version %s' % salt_version,
|
|
'--define=buildid %s' % args.buildid,
|
|
'salt.spec']
|
|
print('Executing: %s' % ' '.join('"%s"' % c for c in cmd))
|
|
check_call(cmd, cwd=join(rpmbuild, 'SPECS'))
|