Use dedent when defining the module-build-macros specfile

This commit is contained in:
mprahl
2019-04-25 15:53:56 -04:00
parent f5d634efec
commit 559f0dd922

View File

@@ -40,7 +40,7 @@ import six.moves.xmlrpc_client as xmlrpclib
import munch
from itertools import chain
from OpenSSL.SSL import SysCallError
import textwrap
from module_build_service import log, conf, models
import module_build_service.scm
@@ -334,85 +334,92 @@ class KojiModuleBuilder(GenericBuilder):
map(KojiModuleBuilder.format_conflicts_line, req_data['ursine_rpms'])
))
spec_content = """
%global dist {disttag}
%global modularitylabel {module_name}:{module_stream}:{module_version}:{module_context}
%global _module_name {module_name}
%global _module_stream {module_stream}
%global _module_version {module_version}
%global _module_context {module_context}
spec_content = textwrap.dedent("""
%global dist {disttag}
%global modularitylabel {module_name}:{module_stream}:{module_version}:{module_context}
%global _module_name {module_name}
%global _module_stream {module_stream}
%global _module_version {module_version}
%global _module_context {module_context}
Name: {name}
Version: {version}
Release: {release}%dist
Summary: Package containing macros required to build generic module
BuildArch: noarch
Name: {name}
Version: {version}
Release: {release}%dist
Summary: Package containing macros required to build generic module
BuildArch: noarch
Group: System Environment/Base
License: MIT
URL: http://fedoraproject.org
Group: System Environment/Base
License: MIT
URL: http://fedoraproject.org
Source1: macros.modules
Source1: macros.modules
{filter_conflicts}
{filter_conflicts}
%description
This package is used for building modules with a different dist tag.
It provides a file /usr/lib/rpm/macros.d/macro.modules and gets read
after macro.dist, thus overwriting macros of macro.dist like %%dist
It should NEVER be installed on any system as it will really mess up
updates, builds, ....
%description
This package is used for building modules with a different dist tag.
It provides a file /usr/lib/rpm/macros.d/macro.modules and gets read
after macro.dist, thus overwriting macros of macro.dist like %%dist
It should NEVER be installed on any system as it will really mess up
updates, builds, ....
%build
%build
%install
mkdir -p %buildroot/etc/rpm 2>/dev/null |:
cp %SOURCE1 %buildroot/etc/rpm/macros.zz-modules
chmod 644 %buildroot/etc/rpm/macros.zz-modules
%install
mkdir -p %buildroot/etc/rpm 2>/dev/null |:
cp %SOURCE1 %buildroot/etc/rpm/macros.zz-modules
chmod 644 %buildroot/etc/rpm/macros.zz-modules
%files
/etc/rpm/macros.zz-modules
%files
/etc/rpm/macros.zz-modules
%changelog
* {today} Fedora-Modularity - {version}-{release}{disttag}
- autogenerated macro by Module Build Service (MBS)
""".format(disttag=disttag, today=today, name=name, version=version,
release=release,
module_name=module_build.name,
module_stream=module_build.stream,
module_version=module_build.version,
module_context=module_build.context,
filter_conflicts='\n'.join(filter_conflicts))
%changelog
* {today} Fedora-Modularity - {version}-{release}{disttag}
- autogenerated macro by Module Build Service (MBS)
""").format(
disttag=disttag,
today=today,
name=name,
version=version,
release=release,
module_name=module_build.name,
module_stream=module_build.stream,
module_version=module_build.version,
module_context=module_build.context,
filter_conflicts="\n".join(filter_conflicts),
)
modulemd_macros = ""
rpm_buildopts = mmd.get_rpm_buildopts()
if rpm_buildopts:
modulemd_macros = rpm_buildopts.get('macros')
modulemd_macros = rpm_buildopts.get("macros")
macros_content = """
macros_content = textwrap.dedent("""
# General macros set by MBS
# General macros set by MBS
%dist {disttag}
%modularitylabel {module_name}:{module_stream}:{module_version}:{module_context}
%_module_build 1
%_module_name {module_name}
%_module_stream {module_stream}
%_module_version {module_version}
%_module_context {module_context}
%dist {disttag}
%modularitylabel {module_name}:{module_stream}:{module_version}:{module_context}
%_module_build 1
%_module_name {module_name}
%_module_stream {module_stream}
%_module_version {module_version}
%_module_context {module_context}
# Macros set by module author:
# Macros set by module author:
{modulemd_macros}
""".format(disttag=disttag, module_name=module_build.name,
module_stream=module_build.stream,
module_version=module_build.version,
module_context=module_build.context,
modulemd_macros=modulemd_macros)
{modulemd_macros}
""").format(
disttag=disttag,
module_name=module_build.name,
module_stream=module_build.stream,
module_version=module_build.version,
module_context=module_build.context,
modulemd_macros=modulemd_macros,
)
td = tempfile.mkdtemp(prefix="module_build_service-build-macros")
fd = open(os.path.join(td, "%s.spec" % name), "w")