stx: add new environment variable OSTREE_OSNAME
The OSTREE_OSNAME is required for building ostree, initramfs-ostree and other related packages. Set it as an environment variable, allowing the ostree name to be modified in the stx.conf. Set OSTREE_OSNAME in $build_environment of debbuilder.conf, which is used to setup the building environment, and add new function set_environ_vars() in debbuilder.py to replace the @OSTREE_OSNAME@ in $build_environment with environment variable. Story: 2008846 Task: 43907 Signed-off-by: Yue Tao <Yue.Tao@windriver.com> Change-Id: I4e1adf9d385ff82888146220932fd1451b557646
This commit is contained in:
parent
469e9875c9
commit
99214533ea
@ -7,6 +7,7 @@ proxyserver = opendev.org
|
|||||||
proxyport = 8080
|
proxyport = 8080
|
||||||
buildbranch = master
|
buildbranch = master
|
||||||
manifest = default.xml
|
manifest = default.xml
|
||||||
|
ostree_osname = wrlinux
|
||||||
|
|
||||||
[builder]
|
[builder]
|
||||||
uid = 1000
|
uid = 1000
|
||||||
|
@ -85,6 +85,7 @@ class HandleControlTask:
|
|||||||
sourceslist = self.stxconfig.getConfig('repomgr', 'sourceslist')
|
sourceslist = self.stxconfig.getConfig('repomgr', 'sourceslist')
|
||||||
deblist = self.stxconfig.getConfig('repomgr', 'deblist')
|
deblist = self.stxconfig.getConfig('repomgr', 'deblist')
|
||||||
dsclist = self.stxconfig.getConfig('repomgr', 'dsclist')
|
dsclist = self.stxconfig.getConfig('repomgr', 'dsclist')
|
||||||
|
ostree_osname = self.stxconfig.getConfig('project', 'ostree_osname')
|
||||||
if sourceslist:
|
if sourceslist:
|
||||||
if not (deblist or dsclist):
|
if not (deblist or dsclist):
|
||||||
self.logger.warning('*************************************\
|
self.logger.warning('*************************************\
|
||||||
@ -155,6 +156,7 @@ stx-pkgbuilder/configmap/')
|
|||||||
line = line.replace("@MANIFEST@", manifest)
|
line = line.replace("@MANIFEST@", manifest)
|
||||||
line = line.replace("@HOSTUSERNAME@", hostusername)
|
line = line.replace("@HOSTUSERNAME@", hostusername)
|
||||||
line = line.replace("@CENGNURL@", cengnurl)
|
line = line.replace("@CENGNURL@", cengnurl)
|
||||||
|
line = line.replace("@OSTREE_OSNAME@", ostree_osname)
|
||||||
if sourceslist:
|
if sourceslist:
|
||||||
line = line.replace("@fetch@", "true")
|
line = line.replace("@fetch@", "true")
|
||||||
line = line.replace("@SOURCESLIST@", sourceslist)
|
line = line.replace("@SOURCESLIST@", sourceslist)
|
||||||
|
@ -49,3 +49,5 @@ export REPOMGR_URL=http://@PROJECT@-stx-repomgr:8080
|
|||||||
export REPOMGR_DEPLOY_URL=http://@PROJECT@-stx-repomgr:80/
|
export REPOMGR_DEPLOY_URL=http://@PROJECT@-stx-repomgr:80/
|
||||||
|
|
||||||
export BUILDER_URL=http://@PROJECT@-stx-pkgbuilder:8080/pkgbuilder/
|
export BUILDER_URL=http://@PROJECT@-stx-pkgbuilder:8080/pkgbuilder/
|
||||||
|
|
||||||
|
export OSTREE_OSNAME=@OSTREE_OSNAME@
|
||||||
|
@ -25,5 +25,9 @@ $purge_build_directory = 'always';
|
|||||||
$extra_repositories = ['deb [trusted=yes] http://stx-stx-repomgr:80/deb-local-binary bullseye main',
|
$extra_repositories = ['deb [trusted=yes] http://stx-stx-repomgr:80/deb-local-binary bullseye main',
|
||||||
'deb [trusted=yes] http://stx-stx-repomgr:80/deb-local-build bullseye main'];
|
'deb [trusted=yes] http://stx-stx-repomgr:80/deb-local-build bullseye main'];
|
||||||
$log_colour = 1;
|
$log_colour = 1;
|
||||||
|
$build_environment = {
|
||||||
|
'OSTREE_OSNAME' => '@OSTREE_OSNAME@'
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
1;
|
1;
|
||||||
|
@ -22,6 +22,7 @@ BUILD_ENGINE = 'sbuild'
|
|||||||
DEBDIST = 'bullseye'
|
DEBDIST = 'bullseye'
|
||||||
STX_LOCALRC = '/usr/local/bin/stx/stx-localrc'
|
STX_LOCALRC = '/usr/local/bin/stx/stx-localrc'
|
||||||
SBUILD_CONF = '/etc/sbuild/sbuild.conf'
|
SBUILD_CONF = '/etc/sbuild/sbuild.conf'
|
||||||
|
ENVIRON_VARS = ['OSTREE_OSNAME']
|
||||||
|
|
||||||
|
|
||||||
class Debbuilder:
|
class Debbuilder:
|
||||||
@ -51,6 +52,7 @@ class Debbuilder:
|
|||||||
self.sbuild_processes = {}
|
self.sbuild_processes = {}
|
||||||
self.ctlog = None
|
self.ctlog = None
|
||||||
self.set_extra_repos()
|
self.set_extra_repos()
|
||||||
|
self.set_environ_vars()
|
||||||
|
|
||||||
@property
|
@property
|
||||||
def state(self):
|
def state(self):
|
||||||
@ -64,6 +66,21 @@ class Debbuilder:
|
|||||||
def mode(self, mode):
|
def mode(self, mode):
|
||||||
self._mode = mode
|
self._mode = mode
|
||||||
|
|
||||||
|
def set_environ_vars(self):
|
||||||
|
if not os.path.exists(STX_LOCALRC):
|
||||||
|
self.logger.warning('stx-localrc does not exist')
|
||||||
|
return
|
||||||
|
|
||||||
|
for var in ENVIRON_VARS:
|
||||||
|
cmd = "grep '^export *%s=.*' %s | cut -d \\= -f 2" % (var, STX_LOCALRC)
|
||||||
|
process = subprocess.Popen(cmd, stdout=subprocess.PIPE, stderr=subprocess.PIPE,
|
||||||
|
universal_newlines=True, shell=True)
|
||||||
|
outs, errs = process.communicate()
|
||||||
|
value = outs.strip().split("\n")[0]
|
||||||
|
if value:
|
||||||
|
cmd = "sed -ie 's#@%s@#%s#g' %s" % (var, value, SBUILD_CONF)
|
||||||
|
process = subprocess.Popen(cmd, shell=True, stdout=self.ctlog, stderr=self.ctlog)
|
||||||
|
|
||||||
def set_extra_repos(self):
|
def set_extra_repos(self):
|
||||||
repomgr_url = None
|
repomgr_url = None
|
||||||
if not os.path.exists(STX_LOCALRC):
|
if not os.path.exists(STX_LOCALRC):
|
||||||
|
Loading…
x
Reference in New Issue
Block a user