Create a general configuration file for shared values

To prevent the need to edit one thing in multiple pungi configurations let's use
it's ability to import other configuration files (See
https://docs.pagure.org/pungi/format.html#importing-other-files). This change
will create a new configuration file `general.conf` which is imported to
each other pungi configuration for Fedora.

Signed-off-by: Michal Konečný <mkonecny@redhat.com>
This commit is contained in:
Michal Konečný 2023-03-01 15:07:11 +01:00 committed by kevin
parent c9a09481e5
commit d44bc4c7df
4 changed files with 169 additions and 305 deletions

View File

@ -1,3 +1,6 @@
# Import general configuration from general.conf
from general import *
# PRODUCT INFO
release_name = 'Fedora-Cloud'
release_short = 'Fedora-Cloud'
@ -15,29 +18,17 @@ comps_file = {
}
variants_file='variants-fedora.xml'
sigkeys = ['5323552A'] # None = unsigned
# limit tree architectures
# if undefined, all architectures from variants.xml will be included
tree_arches = ['aarch64', 'ppc64le', 's390x', 'x86_64']
# limit tree variants
# if undefined, all variants from variants.xml will be included
tree_variants = ['Cloud']
hashed_directories = True
# RUNROOT settings
runroot = True
#runroot_channel = 'fedora_compose'
runroot_channel = 'compose'
runroot_tag = 'f38-build'
# PKGSET
pkgset_source = 'koji' # koji, repos
pkgset_koji_tag = 'f38-updates'
pkgset_koji_inherit = True
filter_system_release_packages = False
# GATHER
gather_source = 'comps'
gather_method = 'deps'
gather_profiler = True
check_deps = False
greedy_method = 'build'
# fomat: [(variant_uid_regex, {arch|*: [repos]})]
# gather_lookaside_repos = []
# GATHER - JSON
@ -47,11 +38,7 @@ greedy_method = 'build'
createrepo_c = True
createrepo_checksum = 'sha256'
# CHECKSUMS
media_checksums = ['sha256']
media_checksum_one_file = True
media_checksum_base_filename = 'Fedora-%(variant)s-%(version)s-%(date)s.%(respin)s-%(arch)s'
#jigdo
create_jigdo = False
#extra_packages = [
# '/mnt/packages/foo*',
#]
@ -91,11 +78,6 @@ additional_packages = [
}),
]
multilib = [
('^Everything$', {
'x86_64': ['devel', 'runtime'],
})
]
filter_packages = [
('(Workstation|Server)$', {
'*': [
@ -114,30 +96,6 @@ filter_packages = [
]
}),
]
# format: {arch|*: [packages]}
multilib_blacklist = {
'*': ['kernel', 'kernel-PAE*', 'kernel*debug*',
'dmraid-devel', 'kdeutils-devel', 'mkinitrd-devel',
'php-devel', 'java-*',
'httpd-devel', 'tomcat-native', 'php*', 'httpd-core',
'krb5-server', 'krb5-server-ldap', 'mod_*', 'ghc-*',
'mp'
],
}
# format: {arch|*: [packages]}
multilib_whitelist = {
'*': ['libgnat', 'wine', 'lmms-vst', 'nspluginwrapper',
'libflashsupport', 'valgrind', 'perl-libs', 'redhat-lsb',
'yaboot', 'syslinux-extlinux-nonlinux', 'syslinux-nonlinux',
'syslinux-tftpboot', 'nosync', '*-static', 'apitrace-libs',
'fakeroot-libs', 'postgresql-odbc', 'mysql-connector-odbc',
'fakechroot-libs','mesa-vdpau-drivers', 'p11-kit-trust',
'mariadb-connector-odbc', 'compiler-rt',
'nvidia-query-resource-opengl-lib',
'ibus-libs', 'ibus-gtk2', 'ibus-gtk3',
'glib-networking', 'dssi-vst-wine', 'mangohud', 'vkBasalt'
],
}
createiso_skip = [
('^Workstation$', {
@ -178,40 +136,6 @@ image_name_format = 'Fedora-%(variant)s-%(disc_type)s-%(arch)s-%(version)s-%(dat
image_volid_formats = [
'Fedora-%(variant)s-%(disc_type)s-%(arch)s-%(version)s'
]
# No special handling for layered products, use same format as for regular images
image_volid_layered_product_formats = []
# Replace 'Cloud' with 'C' in volume id etc.
volume_id_substitutions = {
'Beta': 'B',
'Rawhide': 'rawh',
'Astronomy_KDE': 'AstK',
'Silverblue': 'SB',
'Kinoite': 'Knt',
'Cinnamon': 'Cinn',
'Cloud': 'C',
'Design_suite': 'Dsgn',
'Electronic_Lab': 'Elec',
'Everything': 'E',
'Games': 'Game',
'Images': 'img',
'Jam_KDE': 'Jam',
'MATE_Compiz': 'MATE',
# Note https://pagure.io/pungi-fedora/issue/533
'Python-Classroom': 'Clss',
'Python_Classroom': 'Clss',
'Robotics': 'Robo',
'Scientific_KDE': 'SciK',
'Security': 'Sec',
'Server': 'S',
'-Workstation-': '-WS-',
}
disc_types = {
'boot': 'netinst',
'live': 'Live',
}
translate_paths = [
('/mnt/koji/compose/', 'https://kojipkgs.fedoraproject.org/compose/'),
]
image_build = {
'^Cloud$': [
{

View File

@ -1,3 +1,6 @@
# Import general configuration from general.conf
from general import *
# PRODUCT INFO
release_name = 'Fedora-Container'
release_short = 'Fedora-Container'
@ -13,31 +16,17 @@ comps_file = {
'file': 'comps-f35.xml',
'command': 'make comps-f35.xml'
}
variants_file='variants-fedora.xml'
sigkeys = ['5323552A'] # None = unsigned
# limit tree architectures
# if undefined, all architectures from variants.xml will be included
tree_arches = ['aarch64', 'ppc64le', 's390x', 'x86_64']
# limit tree variants
# if undefined, all variants from variants.xml will be included
tree_variants = ['Container']
hashed_directories = True
# RUNROOT settings
runroot = True
#runroot_channel = 'fedora_compose'
runroot_channel = 'compose'
runroot_tag = 'f35-build'
# PKGSET
pkgset_source = 'koji' # koji, repos
pkgset_koji_tag = 'f35-updates'
pkgset_koji_inherit = True
filter_system_release_packages = False
# GATHER
gather_source = 'comps'
gather_method = 'deps'
gather_profiler = True
check_deps = False
greedy_method = 'build'
# fomat: [(variant_uid_regex, {arch|*: [repos]})]
# gather_lookaside_repos = []
# GATHER - JSON
@ -47,11 +36,7 @@ greedy_method = 'build'
createrepo_c = True
createrepo_checksum = 'sha256'
# CHECKSUMS
media_checksums = ['sha256']
media_checksum_one_file = True
media_checksum_base_filename = 'Fedora-%(variant)s-%(version)s-%(date)s.%(respin)s-%(arch)s'
#jigdo
create_jigdo = False
#extra_packages = [
# '/mnt/packages/foo*',
#]
@ -91,11 +76,6 @@ additional_packages = [
}),
]
multilib = [
('^Everything$', {
'x86_64': ['devel', 'runtime'],
})
]
filter_packages = [
('(Workstation|Server)$', {
'*': [
@ -114,30 +94,6 @@ filter_packages = [
]
}),
]
# format: {arch|*: [packages]}
multilib_blacklist = {
'*': ['kernel', 'kernel-PAE*', 'kernel*debug*',
'dmraid-devel', 'kdeutils-devel', 'mkinitrd-devel',
'php-devel', 'java-*',
'httpd-devel', 'tomcat-native', 'php*', 'httpd-core',
'krb5-server', 'krb5-server-ldap', 'mod_*', 'ghc-*',
'mp'
],
}
# format: {arch|*: [packages]}
multilib_whitelist = {
'*': ['libgnat', 'wine', 'lmms-vst', 'nspluginwrapper',
'libflashsupport', 'valgrind', 'perl-libs', 'redhat-lsb',
'yaboot', 'syslinux-extlinux-nonlinux', 'syslinux-nonlinux',
'syslinux-tftpboot', 'nosync', '*-static', 'apitrace-libs',
'fakeroot-libs', 'postgresql-odbc', 'mysql-connector-odbc',
'fakechroot-libs','mesa-vdpau-drivers', 'p11-kit-trust',
'mariadb-connector-odbc', 'compiler-rt',
'nvidia-query-resource-opengl-lib',
'ibus-libs', 'ibus-gtk2', 'ibus-gtk3',
'glib-networking', 'dssi-vst-wine', 'mangohud', 'vkBasalt'
],
}
createiso_skip = [
('^Workstation$', {
@ -178,40 +134,6 @@ image_name_format = 'Fedora-%(variant)s-%(disc_type)s-%(arch)s-%(version)s-%(dat
image_volid_formats = [
'Fedora-%(variant)s-%(disc_type)s-%(arch)s-%(version)s'
]
# No special handling for layered products, use same format as for regular images
image_volid_layered_product_formats = []
# Replace 'Cloud' with 'C' in volume id etc.
volume_id_substitutions = {
'Beta': 'B',
'Rawhide': 'rawh',
'Astronomy_KDE': 'AstK',
'Silverblue': 'SB',
'Kinoite': 'Knt',
'Cinnamon': 'Cinn',
'Cloud': 'C',
'Design_suite': 'Dsgn',
'Electronic_Lab': 'Elec',
'Everything': 'E',
'Games': 'Game',
'Images': 'img',
'Jam_KDE': 'Jam',
'MATE_Compiz': 'MATE',
# Note https://pagure.io/pungi-fedora/issue/533
'Python-Classroom': 'Clss',
'Python_Classroom': 'Clss',
'Robotics': 'Robo',
'Scientific_KDE': 'SciK',
'Security': 'Sec',
'Server': 'S',
'-Workstation-': '-WS-',
}
disc_types = {
'boot': 'netinst',
'live': 'Live',
}
translate_paths = [
('/mnt/koji/compose/', 'https://kojipkgs.fedoraproject.org/compose/'),
]
# These will be inherited by live_media, live_images and image_build
global_ksurl = 'git+https://pagure.io/fedora-kickstarts.git?#origin/f35'

View File

@ -1,3 +1,6 @@
# Import general configuration from general.conf
from general import *
# PRODUCT INFO
release_name = 'Fedora'
release_short = 'Fedora'
@ -27,20 +30,12 @@ module_obsoletes_dir = {
variants_file='variants-fedora.xml'
sigkeys = ['18B8e74c']
# limit tree architectures
# if undefined, all architectures from variants.xml will be included
tree_arches = ['aarch64', 'ppc64le', 's390x', 'x86_64']
# limit tree variants
# if undefined, all variants from variants.xml will be included
#tree_variants = ['Server']
hashed_directories = True
# RUNROOT settings
runroot_method = 'koji'
runroot_channel = 'compose'
runroot_tag = 'f39-build'
# PKGSET
pkgset_source = 'koji' # koji, repos
@ -53,8 +48,6 @@ pkgset_source = 'koji' # koji, repos
pkgset_koji_tag = 'f39'
pkgset_koji_inherit = False
filter_system_release_packages = False
# GATHER
gather_method = {
'^.*': { # For all variants
@ -64,8 +57,6 @@ gather_method = {
}
gather_backend = 'dnf'
gather_profiler = False
check_deps = False
greedy_method = 'build'
repoclosure_backend = 'dnf'
@ -85,11 +76,7 @@ createrepo_extra_args = ['--zck', '--zck-dict-dir=/usr/share/fedora-repo-zdicts/
createrepo_num_workers = 10
# CHECKSUMS
media_checksums = ['sha256']
media_checksum_one_file = True
media_checksum_base_filename = '%(release_short)s-%(variant)s-%(version)s-%(arch)s-%(date)s%(type_suffix)s.%(respin)s'
#jigdo
create_jigdo = False
# CREATEISO
iso_hfs_ppc64le_compatible = False
@ -164,12 +151,6 @@ additional_packages = [
]
multilib = [
('^Everything$', {
'x86_64': ['devel', 'runtime'],
})
]
filter_packages = [
("^.*$", {
"*": ["glibc32", "libgcc32"],
@ -202,84 +183,6 @@ filter_modules = [
}),
]
# Note: If you change something here (affects Rawhide/Branched composes), also
# submit the same change to the Bodhi config (affects updates for stable releases),
# we want to keep them in sync:
# https://pagure.io/fedora-infra/ansible/blob/main/f/roles/bodhi2/backend/templates/pungi.rpm.conf.j2
#
# format: {arch|*: [packages]}
multilib_blacklist = {
'*': [
'bash-devel',
'dmraid-devel',
'ghc-*',
'httpd-core',
'httpd-devel',
'java-*',
'kdeutils-devel',
'kernel',
'kernel*debug*',
'kernel-PAE*',
'krb5-server',
'krb5-server-ldap',
'mkinitrd-devel',
'mod_*',
'mp',
'php*',
'php-devel',
'tomcat-native',
],
}
# Note: If you change something here (affects Rawhide/Branched composes), also
# submit the same change to the Bodhi config (affects updates for stable releases),
# we want to keep them in sync:
# https://pagure.io/fedora-infra/ansible/blob/main/f/roles/bodhi2/backend/templates/pungi.rpm.conf.j2
#
# format: {arch|*: [packages]}
multilib_whitelist = {
'*': [
'*-static',
'apitrace-libs',
'compiler-rt',
'dssi-vst-wine',
'fakechroot-libs',
'fakeroot-libs',
'glib-networking',
'glx-utils',
'ibus-gtk2',
'ibus-gtk3',
'ibus-libs',
'iptables',
'libflashsupport',
'libgnat',
'lmms-vst',
'mangohud',
'mariadb-connector-odbc',
'mesa-vdpau-drivers',
'mesa-vulkan-drivers',
'mysql-connector-odbc',
'nosync',
'nspluginwrapper',
'nvidia-query-resource-opengl-lib',
'p11-kit-trust',
'pam',
'perl-libs',
'pipewire',
'postgresql-odbc',
'redhat-lsb',
'syslinux-extlinux-nonlinux',
'syslinux-nonlinux',
'syslinux-tftpboot',
'systemd-pam',
'valgrind',
'vkBasalt',
'wine',
'wine-*',
'yaboot',
],
}
createiso_skip = [
('^Server$', {
'src': True
@ -320,51 +223,7 @@ image_name_format = '%(release_short)s-%(variant)s-%(disc_type)s-%(arch)s-%(vers
image_volid_formats = [
'%(release_short)s-%(variant)s-%(disc_type)s-%(arch)s-%(version)s'
]
# No special handling for layered products, use same format as for regular images
image_volid_layered_product_formats = []
# Used by Pungi to replace 'Cloud' with 'C' (etc.) in ISO volume IDs.
# There is a hard 32-character limit on ISO volume IDs, so we use
# these to try and produce short enough but legible IDs. Note this is
# duplicated in Koji for live images, as livemedia-creator does not
# allow Pungi to tell it what volume ID to use. Note:
# https://fedoraproject.org/wiki/User:Adamwill/Draft_fedora_image_naming_policy
# '-Workstation-' is a temporary workaround. See
# https://pagure.io/pungi-fedora/pull-request/525
volume_id_substitutions = {
'Beta': 'B',
'Rawhide': 'rawh',
'Astronomy_KDE': 'AstK',
'Silverblue': 'SB',
'Kinoite': 'Knt',
'Sericea': 'Src',
'Cinnamon': 'Cinn',
'Cloud': 'C',
'Comp_Neuro': 'CNr',
'Design_suite': 'Dsgn',
'Electronic_Lab': 'Elec',
'Everything': 'E',
'Games': 'Game',
'Images': 'img',
'Jam_KDE': 'Jam',
'MATE_Compiz': 'MATE',
# Note https://pagure.io/pungi-fedora/issue/533
'Python-Classroom': 'Clss',
'Python_Classroom': 'Clss',
'Robotics': 'Robo',
'Scientific_KDE': 'SciK',
'Security': 'Sec',
'Server': 'S',
'-Workstation-': '-WS-',
}
disc_types = {
'boot': 'netinst',
'live': 'Live',
}
translate_paths = [
('/mnt/koji/compose/', 'https://kojipkgs.fedoraproject.org/compose/'),
]
# These will be inherited by live_media, live_images and image_build
global_ksurl = 'git+https://pagure.io/fedora-kickstarts.git?#HEAD'

159
general.conf Normal file
View File

@ -0,0 +1,159 @@
# GENERAL SETTINGS
variants_file='variants-fedora.xml'
# limit tree architectures
# if undefined, all architectures from variants.xml will be included
tree_arches = ['aarch64', 'ppc64le', 's390x', 'x86_64']
hashed_directories = True
# RUNROOT settings
runroot = True
runroot_channel = 'compose'
runroot_tag = 'f39-build'
# PKGSET
pkgset_source = 'koji' # koji, repos
filter_system_release_packages = False
# GATHER
check_deps = False
greedy_method = 'build'
# CHECKSUMS
media_checksums = ['sha256']
media_checksum_one_file = True
#jigdo
create_jigdo = False
# MULTILIB
multilib = [
('^Everything$', {
'x86_64': ['devel', 'runtime'],
})
]
# format: {arch|*: [packages]}
# Sorted alphabetically
multilib_blacklist = {
'*': [
'bash-devel',
'dmraid-devel',
'ghc-*',
'httpd-core',
'httpd-devel',
'java-*',
'kdeutils-devel',
'kernel',
'kernel*debug*',
'kernel-PAE*',
'krb5-server',
'krb5-server-ldap',
'mkinitrd-devel',
'mod_*',
'mp'
'php*',
'php-devel',
'tomcat-native',
],
}
# Note: If you change something here (affects Rawhide/Branched composes), also
# submit the same change to the Bodhi config (affects updates for stable releases),
# we want to keep them in sync:
# https://pagure.io/fedora-infra/ansible/blob/main/f/roles/bodhi2/backend/templates/pungi.rpm.conf.j2
#
# format: {arch|*: [packages]}
# Sorted alphabetically
multilib_whitelist = {
'*': [
'*-static',
'apitrace-libs',
'compiler-rt',
'dssi-vst-wine',
'fakechroot-libs',
'fakeroot-libs',
'glib-networking',
'glx-utils',
'ibus-gtk2',
'ibus-gtk3',
'ibus-libs',
'iptables',
'libflashsupport',
'libgnat',
'lmms-vst',
'mangohud',
'mariadb-connector-odbc',
'mesa-vdpau-drivers',
'mesa-vulkan-drivers',
'mysql-connector-odbc',
'nosync',
'nspluginwrapper',
'nvidia-query-resource-opengl-lib',
'p11-kit-trust',
'pam',
'perl-libs',
'pipewire',
'postgresql-odbc',
'redhat-lsb',
'syslinux-extlinux-nonlinux',
'syslinux-nonlinux',
'syslinux-tftpboot',
'systemd-pam',
'valgrind',
'vkBasalt',
'wine',
'wine-*',
'yaboot',
],
}
# ISO IMAGE
image_volid_layered_product_formats = []
# Used by Pungi to replace 'Cloud' with 'C' (etc.) in ISO volume IDs.
# There is a hard 32-character limit on ISO volume IDs, so we use
# these to try and produce short enough but legible IDs. Note this is
# duplicated in Koji for live images, as livemedia-creator does not
# allow Pungi to tell it what volume ID to use. Note:
# https://fedoraproject.org/wiki/User:Adamwill/Draft_fedora_image_naming_policy
# '-Workstation-' is a temporary workaround. See
# https://pagure.io/pungi-fedora/pull-request/525
# Replace 'Cloud' with 'C' in volume id etc.
volume_id_substitutions = {
'Beta': 'B',
'Rawhide': 'rawh',
'Astronomy_KDE': 'AstK',
'Silverblue': 'SB',
'Kinoite': 'Knt',
'Cinnamon': 'Cinn',
'Cloud': 'C',
'Comp_Neuro': 'CNr',
'Design_suite': 'Dsgn',
'Electronic_Lab': 'Elec',
'Everything': 'E',
'Games': 'Game',
'Images': 'img',
'Jam_KDE': 'Jam',
'MATE_Compiz': 'MATE',
# Note https://pagure.io/pungi-fedora/issue/533
'Python-Classroom': 'Clss',
'Python_Classroom': 'Clss',
'Robotics': 'Robo',
'Scientific_KDE': 'SciK',
'Security': 'Sec',
'Sericea': 'Src',
'Server': 'S',
'-Workstation-': '-WS-',
}
disc_types = {
'boot': 'netinst',
'live': 'Live',
}
translate_paths = [
('/mnt/koji/compose/', 'https://kojipkgs.fedoraproject.org/compose/'),
]