# # spec file for package cobbler # # Copyright (c) 2023 SUSE LLC # Copyright (c) 2006 Michael DeHaan # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed # upon. The license for this file, and modifications and additions to the # file, is the same license as for the pristine package itself (unless the # license for the pristine package is not an Open Source License, in which # case the license is the MIT License). An "Open Source License" is a # license that conforms to the Open Source Definition (Version 1.9) # published by the Open Source Initiative. # # Supported/tested build targets: # - Fedora: 30, 31, Rawhide # - CentOS + EPEL: 7, 8 # - SLE: 15sp1 # - openSUSE: Leap 15.1, Tumbleweed # - Debian: 10 # - Ubuntu: 18.04 # # If it doesn't build on the Open Build Service (OBS) it's a bug. # Please submit bugfixes or comments via https://bugs.opensuse.org/ # # Force bash instead of Debian dash %global _buildshell /bin/bash # Stop mangling shebangs. It breaks CI. %undefine __brp_mangle_shebangs # Work around quirk in OBS about handling defines... %if 0%{?el7} %{!?python3_pkgversion: %global python3_pkgversion 36} %else %{!?python3_pkgversion: %global python3_pkgversion 3} %endif #ToDo: These users/groups differ on every arch. Hopefully not forever... # Users/Groups %define apache_user chaos %define apache_group chaos # Directories %define apache_dir /var/www %define apache_log /var/log/apache2 %define tftpboot_dir /var/lib/tftpboot # Packages %define apache_pkg apache2 %define createrepo_pkg createrepo_c #ToDo: These packages differ on every arch. Hopefully not forever... %define grub2_x64_efi_pkg chaos %define grub2_ia32_efi_pkg chaos %define system_release_pkg chaos # py3 modules %define py3_module_cheetah python%{python3_pkgversion}-cheetah %define py3_module_dns python%{python3_pkgversion}-dns %define py3_module_pyyaml python%{python3_pkgversion}-yaml %define py3_module_sphinx python%{python3_pkgversion}-sphinx %define py3_module_file python%{python3_pkgversion}-magic # SUSE %if 0%{?suse_version} %define apache_user wwwrun %define apache_group www %define apache_dir /srv/www %define apache_webconfigdir /etc/apache2/conf.d %define apache_mod_wsgi apache2-mod_wsgi-python%{python3_pkgversion} %define tftpboot_dir /srv/tftpboot %define tftpsrv_pkg tftp %define grub2_x64_efi_pkg grub2-x86_64-efi %define grub2_ia32_efi_pkg grub2-i386-efi %define system_release_pkg distribution-release #ToDo: Remove this, once it got more stable in Tumbleweed %undefine python_enable_dependency_generator %undefine python_disable_dependency_generator # Python module package names that differ between SUSE and everybody else. %define py3_module_cheetah python%{python3_pkgversion}-Cheetah3 %define py3_module_dns python%{python3_pkgversion}-dnspython %define py3_module_pyyaml python%{python3_pkgversion}-PyYAML %define py3_module_sphinx python%{python3_pkgversion}-Sphinx # endif SUSE %endif # UBUNTU %if 0%{?debian} || 0%{?ubuntu} %define apache_user www-data %define apache_group www-data %define apache_webconfigdir /etc/apache2/conf-available %define apache_mod_wsgi libapache2-mod-wsgi-py%{python3_pkgversion} %define tftpsrv_pkg tftpd-hpa %define createrepo_pkg createrepo %define grub2_x64_efi_pkg grub-efi-amd64 %define grub2_ia32_efi_pkg grub-efi-ia32 %define system_release_pkg base-files # Debian 11 moved to the C implementation of createrepo %if 0%{?debian} == 11 %define createrepo_pkg createrepo-c %endif #endif UBUNTU %endif #FEDORA %if 0%{?fedora} || 0%{?rhel} %define apache_user apache %define apache_group apache %define apache_log /var/log/httpd %define apache_webconfigdir /etc/httpd/conf.d %define apache_pkg httpd %define apache_mod_wsgi python%{python3_pkgversion}-mod_wsgi %define tftpsrv_pkg tftp-server %define grub2_x64_efi_pkg grub2-efi-x64 %define grub2_ia32_efi_pkg grub2-efi-ia32 %define system_release_pkg system-release %if 0%{?fedora} %define py3_module_file python%{python3_pkgversion}-file-magic %endif #endif FEDORA %endif # Deal with python3-coverage package quirk %if 0%{?rhel} == 8 # In RHEL 8, python3-coverage doesn't exist, but it's accessible by common virtual provides %define py3_module_coverage python3dist(coverage) %else %define py3_module_coverage python%{python3_pkgversion}-coverage %endif # If they aren't provided by a system installed macro, define them %{!?__python3: %global __python3 /usr/bin/python3} # To ensure correct byte compilation %global __python %{__python3} %if "%{_vendor}" == "debbuild" %global devsuffix dev %else %global devsuffix devel %endif Name: cobbler Version: 3.3.3 Release: 220400.21.3.uyuni2 Summary: Boot server configurator URL: https://cobbler.github.io/ %if "%{_vendor}" == "debbuild" Packager: Cobbler Developers Group: admin %endif %if 0%{?suse_version} Group: Productivity/Networking/Boot/Servers %else Group: Development/System %endif License: GPL-2.0-or-later Source: %{name}-%{version}.tar.gz BuildArch: noarch BuildRequires: git-core BuildRequires: %{system_release_pkg} BuildRequires: python%{python3_pkgversion}-%{devsuffix} %if 0%{?suse_version} BuildRequires: python-rpm-macros %endif %if "%{_vendor}" == "debbuild" BuildRequires: python3-deb-macros BuildRequires: apache2-deb-macros %endif BuildRequires: %{py3_module_coverage} BuildRequires: python%{python3_pkgversion}-distro BuildRequires: python%{python3_pkgversion}-setuptools BuildRequires: python%{python3_pkgversion}-netaddr BuildRequires: python%{python3_pkgversion}-schema BuildRequires: python%{python3_pkgversion}-systemd BuildRequires: %{py3_module_cheetah} BuildRequires: %{py3_module_sphinx} %if 0%{?suse_version} # Make post-build-checks happy by including these in the buildroot BuildRequires: bash-completion BuildRequires: %{apache_pkg} BuildRequires: %{tftpsrv_pkg} %endif %if 0%{?rhel} # We need these to build this properly, and OBS doesn't pull them in by default for EPEL BuildRequires: epel-rpm-macros %endif %if 0%{?rhel} && 0%{?rhel} < 9 BuildRequires: systemd %endif %if 0%{?fedora} >= 30 || 0%{?rhel} >= 9 || 0%{?suse_version} BuildRequires: systemd-rpm-macros %endif %if "%{_vendor}" == "debbuild" BuildRequires: systemd-deb-macros Requires: systemd-sysv Requires(post): python3-minimal Requires(preun): python3-minimal %endif Requires(post): systemd Requires(preun): systemd Requires(postun): systemd Requires: %{apache_pkg} Requires: %{tftpsrv_pkg} Requires: %{createrepo_pkg} %if 0%{?rhel} >= 9 Requires: fence-agents-common Requires: fence-agents-kubevirt Requires: fence-agents-virsh %else Requires: fence-agents %endif Requires: rsync Requires: xorriso Requires: dosfstools Requires: mtools %{?python_enable_dependency_generator} %if ! (%{defined python_enable_dependency_generator} || %{defined python_disable_dependency_generator}) Requires: %{py3_module_cheetah} Requires: %{py3_module_dns} Requires: %{apache_mod_wsgi} Requires: python%{python3_pkgversion}-netaddr Requires: %{py3_module_pyyaml} Requires: python%{python3_pkgversion}-requests Requires: python%{python3_pkgversion}-distro Requires: python%{python3_pkgversion}-schema Requires: python%{python3_pkgversion}-systemd Requires: %{py3_module_file} %if 0%{?suse_version} Recommends: python%{python3_pkgversion}-ldap %else Requires: python%{python3_pkgversion}-ldap %endif %endif %if 0%{?fedora} || 0%{?rhel} Requires: dnf-plugins-core %endif %if ! (0%{?rhel} && 0%{?rhel} < 8) # Not everyone wants bash-completion...? Recommends: bash-completion # syslinux is only available on x86 Recommends: syslinux # grub2 efi stuff is only available on x86 Recommends: %{grub2_x64_efi_pkg} Recommends: %{grub2_ia32_efi_pkg} Recommends: logrotate Recommends: python%{python3_pkgversion}-librepo %endif # https://github.com/cobbler/cobbler/issues/1685 %if "%{_vendor}" == "debbuild" Requires: init-system-helpers %else Requires: /sbin/service %endif # No point in having this split out... Obsoletes: cobbler-nsupdate < 3.0.99 Provides: cobbler-nsupdate = %{version}-%{release} %description Cobbler is a network install server. Cobbler supports PXE, ISO virtualized installs, and re-installing existing Linux machines. The last two modes use a helper tool, 'koan', that integrates with cobbler. Cobbler's advanced features include importing distributions from DVDs and rsync mirrors, kickstart templating, integrated yum mirroring, and built-in DHCP/DNS Management. Cobbler has a XML-RPC API for integration with other applications. %package tests Summary: Unit tests for cobbler Requires: cobbler = %{version}-%{release} %description tests Unit test files from the Cobbler project %package tests-containers Summary: Dockerfiles and scripts to setup testing containers Requires: cobbler = %{version}-%{release} %description tests-containers Dockerfiles and scripts to setup testing containers %prep %setup %if 0%{?suse_version} # Set tftpboot location correctly for SUSE distributions sed -e "s|/var/lib/tftpboot|%{tftpboot_dir}|g" -i config/cobbler/settings.yaml %endif %build . distro_build_configs.sh # Check distro specific variables for consistency [ "${DOCPATH}" != %{_mandir} ] && echo "ERROR: DOCPATH: ${DOCPATH} does not match %{_mandir}" # [ "${ETCPATH}" != "/etc/cobbler" ] # [ "${LIBPATH}" != "/var/lib/cobbler" ] [ "${LOGPATH}" != %{_localstatedir}/log ] && echo "ERROR: LOGPATH: ${LOGPATH} does not match %{_localstatedir}/log" [ "${COMPLETION_PATH}" != %{_datadir}/bash-completion/completions ] && \ echo "ERROR: COMPLETION: ${COMPLETION_PATH} does not match %{_datadir}/bash-completion/completions" [ "${WEBROOT}" != %{apache_dir} ] && echo "ERROR: WEBROOT: ${WEBROOT} does not match %{apache_dir}" [ "${WEBCONFIG}" != %{apache_webconfigdir} ] && echo "ERROR: WEBCONFIG: ${WEBCONFIG} does not match %{apache_webconfigdir}" [ "${TFTPROOT}" != %{tftpboot_dir} ] && echo "ERROR: TFTPROOT: ${TFTPROOT} does not match %{tftpboot_dir}" %py3_build %install . distro_build_configs.sh %py3_install # cobbler rm %{buildroot}%{_sysconfdir}/cobbler/cobbler.conf mkdir -p %{buildroot}%{_sysconfdir}/logrotate.d mv %{buildroot}%{_sysconfdir}/cobbler/cobblerd_rotate %{buildroot}%{_sysconfdir}/logrotate.d/cobblerd # systemd mkdir -p %{buildroot}%{_unitdir} mv %{buildroot}%{_sysconfdir}/cobbler/cobblerd.service %{buildroot}%{_unitdir} %if 0%{?suse_version} mkdir -p %{buildroot}%{_sbindir} ln -sf service %{buildroot}%{_sbindir}/rccobblerd %endif %pre %if "%{_vendor}" == "debbuild" if [ "$1" = "upgrade" ]; then %else if [ $1 -ge 2 ]; then %endif # package upgrade: backup configuration DATE=$(date "+%%Y%%m%%d-%%H%%M%%S") if [ ! -d "%{_sharedstatedir}/cobbler/backup/upgrade-${DATE}" ]; then mkdir -p "%{_sharedstatedir}/cobbler/backup/upgrade-${DATE}" fi for i in "config" "snippets" "templates" "triggers" "scripts"; do if [ -d "%{_sharedstatedir}/cobbler/${i}" ]; then cp -r "%{_sharedstatedir}/cobbler/${i}" "%{_sharedstatedir}/cobbler/backup/upgrade-${DATE}" fi done if [ -d %{_sysconfdir}/cobbler ]; then cp -r %{_sysconfdir}/cobbler "%{_sharedstatedir}/cobbler/backup/upgrade-${DATE}" fi fi %if "%{_vendor}" == "debbuild" %post %{py3_bytecompile_post %{name}} %{systemd_post cobblerd.service} %{apache2_module_post proxy_http} # Fixup permission for world readable settings files chmod 640 %{_sysconfdir}/cobbler/settings.yaml chmod 600 %{_sysconfdir}/cobbler/mongodb.conf chmod 640 %{_sysconfdir}/cobbler/modules.conf chmod 640 %{_sysconfdir}/cobbler/users.conf chmod 640 %{_sysconfdir}/cobbler/users.digest chmod 750 %{_sysconfdir}/cobbler/settings.d chmod 640 %{_sysconfdir}/cobbler/settings.d/* chgrp %{apache_group} %{_sysconfdir}/cobbler/settings.yaml %preun %{py3_bytecompile_preun %{name}} %{systemd_preun cobblerd.service} %postun %{systemd_postun_with_restart cobblerd.service} %else %post %systemd_post cobblerd.service # Fixup permission for world readable settings files chmod 640 %{_sysconfdir}/cobbler/settings.yaml chmod 600 %{_sysconfdir}/cobbler/mongodb.conf chmod 640 %{_sysconfdir}/cobbler/modules.conf chmod 640 %{_sysconfdir}/cobbler/users.conf chmod 640 %{_sysconfdir}/cobbler/users.digest chmod 750 %{_sysconfdir}/cobbler/settings.d chmod 640 %{_sysconfdir}/cobbler/settings.d/* chgrp %{apache_group} %{_sysconfdir}/cobbler/settings.yaml %preun %systemd_preun cobblerd.service %postun %systemd_postun_with_restart cobblerd.service %endif %files %license COPYING %doc AUTHORS.in README.md %doc docs/developer-guide.rst docs/quickstart-guide.rst docs/installation-guide.rst %dir %{_sysconfdir}/cobbler %config(noreplace) %{_sysconfdir}/cobbler/auth.conf %dir %{_sysconfdir}/cobbler/boot_loader_conf %config(noreplace) %{_sysconfdir}/cobbler/boot_loader_conf/bootcfg.template %config(noreplace) %{_sysconfdir}/cobbler/boot_loader_conf/grub.template %config(noreplace) %{_sysconfdir}/cobbler/boot_loader_conf/grub_menu.template %config(noreplace) %{_sysconfdir}/cobbler/boot_loader_conf/grub_submenu.template %config(noreplace) %{_sysconfdir}/cobbler/boot_loader_conf/ipxe.template %config(noreplace) %{_sysconfdir}/cobbler/boot_loader_conf/ipxe_menu.template %config(noreplace) %{_sysconfdir}/cobbler/boot_loader_conf/ipxe_submenu.template %config(noreplace) %{_sysconfdir}/cobbler/boot_loader_conf/pxe.template %config(noreplace) %{_sysconfdir}/cobbler/boot_loader_conf/pxe_menu.template %config(noreplace) %{_sysconfdir}/cobbler/boot_loader_conf/pxe_submenu.template %config(noreplace) %{_sysconfdir}/cobbler/cheetah_macros %config(noreplace) %{_sysconfdir}/cobbler/dhcp.template %config(noreplace) %{_sysconfdir}/cobbler/dhcp6.template %config(noreplace) %{_sysconfdir}/cobbler/dnsmasq.template %config(noreplace) %{_sysconfdir}/cobbler/genders.template %config(noreplace) %{_sysconfdir}/cobbler/import_rsync_whitelist %dir %{_sysconfdir}/cobbler/iso %config(noreplace) %{_sysconfdir}/cobbler/iso/buildiso.template %config(noreplace) %{_sysconfdir}/cobbler/iso/bootinfo.template %config(noreplace) %{_sysconfdir}/cobbler/iso/isolinux_menuentry.template %config(noreplace) %{_sysconfdir}/cobbler/iso/grub_menuentry.template %config(noreplace) %{_sysconfdir}/cobbler/logging_config.conf %attr(640, root, root) %config(noreplace) %{_sysconfdir}/cobbler/modules.conf %attr(600, root, root) %config(noreplace) %{_sysconfdir}/cobbler/mongodb.conf %config(noreplace) %{_sysconfdir}/cobbler/named.template %config(noreplace) %{_sysconfdir}/cobbler/ndjbdns.template %dir %{_sysconfdir}/cobbler/reporting %config(noreplace) %{_sysconfdir}/cobbler/reporting/build_report_email.template %config(noreplace) %{_sysconfdir}/cobbler/rsync.exclude %config(noreplace) %{_sysconfdir}/cobbler/rsync.template %config(noreplace) %{_sysconfdir}/cobbler/secondary.template %if "%{_vendor}" == "debbuild" # Work around broken attr support # Cf. https://github.com/debbuild/debbuild/issues/160 %attr(640, root, root) %config(noreplace) %{_sysconfdir}/cobbler/settings.yaml %dir %{_sysconfdir}/cobbler/settings.d %attr(750, root, root) %{_sysconfdir}/cobbler/settings.d %attr(640, root, root) %config(noreplace) %{_sysconfdir}/cobbler/settings.d/bind_manage_ipmi.settings %attr(640, root, root) %config(noreplace) %{_sysconfdir}/cobbler/settings.d/manage_genders.settings %attr(640, root, root) %config(noreplace) %{_sysconfdir}/cobbler/settings.d/nsupdate.settings %attr(640, root, root) %config(noreplace) %{_sysconfdir}/cobbler/settings.d/windows.settings %attr(640, root, root) %config(noreplace) %{_sysconfdir}/cobbler/users.conf %attr(640, root, root) %config(noreplace) %{_sysconfdir}/cobbler/users.digest %else %attr(640, root, %{apache_group}) %config(noreplace) %{_sysconfdir}/cobbler/settings.yaml %attr(750, root, root) %dir %{_sysconfdir}/cobbler/settings.d %attr(640, root, root) %config(noreplace) %{_sysconfdir}/cobbler/settings.d/bind_manage_ipmi.settings %attr(640, root, root) %config(noreplace) %{_sysconfdir}/cobbler/settings.d/manage_genders.settings %attr(640, root, root) %config(noreplace) %{_sysconfdir}/cobbler/settings.d/nsupdate.settings %attr(640, root, root) %config(noreplace) %{_sysconfdir}/cobbler/settings.d/windows.settings %attr(640, root, root) %config(noreplace) %{_sysconfdir}/cobbler/users.conf %attr(640, root, root) %config(noreplace) %{_sysconfdir}/cobbler/users.digest %endif %config(noreplace) %{_sysconfdir}/cobbler/version %config(noreplace) %{_sysconfdir}/cobbler/zone.template %dir %{_sysconfdir}/cobbler/zone_templates %config(noreplace) %{_sysconfdir}/cobbler/zone_templates/foo.example.com %config(noreplace) %{_sysconfdir}/logrotate.d/cobblerd %config(noreplace) %{apache_webconfigdir}/cobbler.conf %dir %{_sysconfdir}/cobbler/windows %config(noreplace) %{_sysconfdir}/cobbler/windows/answerfile.template %config(noreplace) %{_sysconfdir}/cobbler/windows/post_inst_cmd.template %config(noreplace) %{_sysconfdir}/cobbler/windows/startnet.template %{_bindir}/cobbler %{_bindir}/cobbler-ext-nodes %{_bindir}/cobblerd %{_bindir}/cobbler-settings %dir %{_datadir}/cobbler %{_datadir}/cobbler/bin %{_mandir}/man1/cobbler.1* %{_mandir}/man5/cobbler.conf.5* %{_mandir}/man8/cobblerd.8* %{_datadir}/bash-completion/completions/cobbler %{python3_sitelib}/cobbler/ %{python3_sitelib}/cobbler-* %{_unitdir}/cobblerd.service %if 0%{?suse_version} %{_sbindir}/rccobblerd %endif %{tftpboot_dir}/* %{apache_dir}/cobbler %{_sharedstatedir}/cobbler %{_localstatedir}/log/cobbler %files tests %dir %{_datadir}/cobbler/tests %{_datadir}/cobbler/tests/* %files tests-containers %dir %{_datadir}/cobbler/docker %{_datadir}/cobbler/docker/* %changelog * Fri Nov 17 2023 Pablo Suárez Hernández - Notify to "systemd" when cobblerd startup is finished (bsc#1215982) * Tue Nov 14 2023 Pablo Suárez Hernández - Enable ppc64(le) buildiso support (bsc#1214077) * Wed Sep 20 2023 Pablo Suárez Hernández - Buildiso: copy grub into ESP using mtools to allow execution in containers * Tue Sep 19 2023 Pablo Suárez Hernández - Add mtools as dependency for Cobbler * Fri Aug 11 2023 Alexander Graul - Fix EFI PXE boot regression (bsc#1214124) - Fix isolinux.cfg generation in "cobbler buildiso" (bsc#1207330) * Thu Jun 29 2023 Alexander Graul - Backport upstream's item dict caching (bsc#1207417) * Don't save "children" property in collections * Wed Jun 7 2023 Pablo Suárez Hernández - Include install append line in all cases (bsc#1207330) - Adjust dockerfiles use to build CI images at OBS. * Mon Jun 5 2023 Enno Gotthold - "cobbler buildiso" arguments "--system" and "--profile" are now accepted in the right order (bsc#1210776) * Mon Apr 17 2023 Alexander Graul - Fix cobbler buildiso so that the artifact can be booted by EFI firmware. (bsc#1206060) - Add input_string_*, input_boolean, input_int functiont to public API * Tue Mar 7 2023 Enno Gotthold - Switch packaging from patch based to Git tree based development - All patches that are being removed in this revision are contained in the new Git tree. - S390X systems require their kernel options to have a linebreak at 79 characters (bsc#1207595) - settings-migration-v1-to-v2.sh will now handle paths with whitespace correct - Fix renaming Cobbler items (bsc#1204900, bsc#1209149) - Removed: * add_cobbler_tests_containers_package.patch * add_item_to_dict_cache_and_threadpool.patch * backport_complex_xmlrpc_objects_and_logger_spam.patch * backport_fix_for_buildiso_exclude_dns.patch * backport_kernel_regex_error_message.patch * fix_avoid_overriding_boot_loader_if_existing.patch * fix_buildiso_for_image_based_systems.patch * fix_cobbler_settings_migrations.patch * fix_failing_cobbler_tests.patch * fix_next_server_being_hostname.patch * fix_proxy_url_ext_migration_none_value.patch * fix_regression_empty_interface_type.patch * fix_v2_migration_script.patch * items_Fix_creation_of_default_NetworkInterface.patch * skip_wrong_collections_instead_crashing.patch * temp_patch_do_generate_local_only_menus.patch * temp_patch_to_avoid_permission_errors.patch * workaround_apache2_confdir_for_suma.patch * Fri Feb 3 2023 Davide Benini - Items: Fix creation of "default" NetworkInterface (bsc#1206520) - Added: * items_Fix_creation_of_default_NetworkInterface.patch * Thu Jan 5 2023 Pablo Suárez Hernández - Improve Cobbler performance with item cache and threadpool (bsc#1205489) - Skip collections that are inconsistent instead of crashing (bsc#1205749) - Added: * add_item_to_dict_cache_and_threadpool.patch * skip_wrong_collections_instead_crashing.patch * Thu Dec 22 2022 Pablo Suárez Hernández - Add new "cobbler-tests-containers" subpackage which contains setup and configuration files to run Cobbler tests in containers. - Add missing code for previous patch file around boot_loaders migration. - Added: * add_cobbler_tests_containers_package.patch - Modified: * fix_avoid_overriding_boot_loader_if_existing.patch * Fri Dec 16 2022 Pablo Suárez Hernández - Avoid possible override of existing values during migration of collections to 3.0.0 (bsc#1206160) - Added: * fix_avoid_overriding_boot_loader_if_existing.patch * Thu Dec 15 2022 Pablo Suárez Hernández - Fix regression: allow empty string as interface_type value (bsc#1203478) - Added: * fix_regression_empty_interface_type.patch * Wed Nov 16 2022 Pablo Suárez Hernández - Fix failing Cobbler tests after upgrading to 3.3.3. - Added: * fix_failing_cobbler_tests.patch * Fri Nov 11 2022 Pablo Suárez Hernández - Fix problem for the migration of "autoinstall" collection attribute. - Modified: * fix_v2_migration_script.patch * Fri Oct 28 2022 Pablo Suárez Hernández - Update v2 to v3 migration script to allow migration of collections that contains settings from Cobbler 2. (bsc#1203478) - Added: * fix_v2_migration_script.patch * Fri Oct 21 2022 Pablo Suárez Hernández - Consider case of "next_server" being a hostname during migration of Cobbler collections. - Fix problem with "proxy_url_ext" setting being None type. - Added: * fix_next_server_being_hostname.patch * fix_proxy_url_ext_migration_none_value.patch * Thu Sep 22 2022 Pablo Suárez Hernández - Fix settings migration schema to work while upgrading on existing running Uyuni and SUSE Manager servers running with old Cobbler settings (bsc#1203478) - Added: * fix_cobbler_settings_migrations.patch * Mon Aug 29 2022 Pablo Suárez Hernández - Do generate boot menus even if no profiles or systems - only local boot - Avoid crashing running buildiso in certain conditions. - Added: * temp_patch_do_generate_local_only_menus.patch * fix_buildiso_for_image_based_systems.patch * Thu Jul 7 2022 Enno Gotthold - Fix issue that a custom kernel with the extension ".kernel" is not accepted by "cobbler distro add" - Fix issue with "get_item_resolved_value" that prevented it from returning in cases where a complex object would have been returned - Fix issue where the logs would have been spammed with "grab_tree" messages that are meant for debugging - Buildiso - Fix DNS append line generation - Added: * backport_complex_xmlrpc_objects_and_logger_spam.patch * backport_kernel_regex_error_message.patch * backport_fix_for_buildiso_exclude_dns.patch * Fri Jun 3 2022 Pablo Suárez Hernández - Change apache2 conf dir for SUSE distros to allow integration with Uyuni and SUSE Manager - Avoid permissions errors during cobbler sync - Added: * workaround_apache2_confdir_for_suma.patch * temp_patch_to_avoid_permission_errors.patch * Fri Jun 3 2022 Pablo Suárez Hernández - Update to version 3.3.3 - Add UEFI capabilities to "cobbler buildiso" (jsc#SUMA#112) - Relevant changes on this release: * New: * Uyuni Proxies can now be set with the schema validation. * Cobbler should now build on AlmaLinux. * The initrd is not required anymore as it is an optional file. * XML-RPC: Added dump_vars endpoint. This is intended to replace get_blended_data as of 3.4.0. * XML-RPC: Added get_item_resolved_value & set_item_resolved_value endpoints. * Breaking Changes: * The field virt_file_size is now a float and the related settings as well. * Changes: * The error messages for duplicated objects now contains the name of the duplicated object. * Bugfixes: * Dictionaries had the wrong value set for <>. * There were some cases in which the autoinstallation manager was handed the wrong object and then crashed. * The inheritance of the owners field was fixed. * Serial Console options should not contain bogous -1 value anymore. * HTTP API should not throw permission errors anymore. * During build the log was not visible due to a custom logger without output. * cobbler mkloaders now also copies dependencies of menu.c32. * We now generate the grub configuration for the architectures correct again. * virt_file_size now is a float at all times. * Cobbler should restart successfully now if you have attached an image to a system. * If you have a system named default the bootloader was not removed properly before. * cobbler buildiso: The isolinux.cfg was not properly formatted. * There were unharmful templating errors in the log related to redhat_management_type. The parts depending on this were removed. * The DNS managers were non-functional before because of a not existing function call. * cobbler buildiso failed with --tmpdirs that don't end in buildiso. * cobbler buildiso had outdated docs and help messages for some parameters. * cobbler import: It was impossible to import Rocky Linux 8.5 successfully. * Cobbler created duplicated settings files before. * cobbler sync was broken by refactoring to shell=False before. * Fri Mar 11 2022 Enno Gotthold - This update fixes CVE-2022-0860 (bsc#1197027) - Version 3.3.0 fixed jsc#SUMA-112 - Update to version 3.3.2 * New: * cobbler sync doesn't have to be executed no more after enable_ipxe was flipped * Auth: Support for Global Secure Catalog via LDAP provider * Changes: * Reposync now deletes old metadata to prevent metadata merge conflicts * The automigration of the settings is now not enabled per default. * We removed ppc from RedHat EL 7 as it is not supported * Bugfixes: * Network interface is not subscriptable errors were fixed * The stacktraces related to the package and file pre & post triggers should no longer appear * You should be able to add multiple initrds if needed again * Debian: Fix regex for SHIM_FILE which now provides a working reasonable default - Removed: * better-string-replacement-performance.diff * cgi_parse_qs_is_deprecated.diff * fix-for-old-str.join-usage.diff * fix-string-replacement.diff * fix-trail-stripping-utf8.diff * fix_issue_when_inherited_boot_loader_bsc1185679.patch * load_module_apache_suse_fix.diff * prevent-race-condition-writting-tftpboot-files-bsc1186124.patch * refactored_auth_module.diff * remove-redundant-json-suffix.diff * v3-1-2-arbitrary-file-read-write-plus-RCE.patch * v3-1-2-fix-failing-test-after-cve-fix.patch * v3-1-2-incomplete-template-sanatization.patch * v3-1-2-log-pollution-1.patch * v3-1-2-log-pollution-2.patch * v3-1-2-log-pollution-3.patch * v3-1-2-mongodb-sanatiy-check.patch * v3-1-2-remove-testing-auth.patch * Wed Feb 16 2022 Alexander Graul - Fix issues with installation module logging and validation (bsc#1195918) - Move configuration files ownership to apache (bsc#1195906) - Make configuration files only readable by root (bsc#1193671, CVE-2021-45083) - Remove hardcoded test credentials (bsc#1193673) - Prevent log pollution (bsc#1193675) - Missing sanity check on MongoDB configuration file (bsc#1193676) - Incomplete template sanatization (bsc#1193678, CVE-2021-45082) - Added: * v3-1-2-incomplete-template-sanatization.patch * v3-1-2-log-pollution-1.patch * v3-1-2-log-pollution-2.patch * v3-1-2-log-pollution-3.patch * v3-1-2-mongodb-sanatiy-check.patch * v3-1-2-remove-testing-auth.patch - Modified (updated fuzz): * fix-for-old-str.join-usage.diff * remove-redundant-json-suffix.diff * v3-1-2-arbitrary-file-read-write-plus-RCE.patch * Mon Sep 6 2021 Enno Gotthold - Fixed modify_setting test to complete successfully - Added: * v3-1-2-fix-failing-test-after-cve-fix.patch * Thu Aug 26 2021 Enno Gotthold - Fixed Remote Code Execution in the XMLRPC API which additionally allowed arbitrary file read and write as root (bsc#1189458, CVE-2021-40323, CVE-2021-40324, CVE-2021-40325) - This patch introduces a regression where valid log data from Anamon (Red Hat Autoinstallation Process) uploaded to cobbler may be rejected - Added: * v3-1-2-arbitrary-file-read-write-plus-RCE.patch * Fri Jun 11 2021 Pablo Suárez Hernández - Avoid traceback when building tftp files for ppc arch system when boot_loader is not set (bsc#1185679) - Added: * fix_issue_when_inherited_boot_loader_bsc1185679.patch * Tue May 18 2021 Pablo Suárez Hernández - Prevent some race conditions when writting tftpboot files and the destination directory is not existing (bsc#1186124) - Added: * prevent-race-condition-writting-tftpboot-files-bsc1186124.patch * Thu May 13 2021 Victor Zhestkov - Fix trail stripping in case of using UTF symbols (bsc#1184561) - Added: * fix-trail-stripping-utf8.diff * Tue Jan 19 2021 Dominik Gedon - Update spec file to satisfy current rpmbuild (>=4.16) and make the build on Tumbleweed work again. * Tue Jan 19 2021 Dominik Gedon - Update tarball from upstream to remove the .pc quilt folder. * Mon Jan 18 2021 Dominik Gedon - Fix string replacement for @@xyz@@ - Better performing string replacements - Added: * better-string-replacement-performance.diff * fix-string-replacement.diff * Fri Nov 13 2020 Jochen Breuer - Remove redundant '.json' suffix - Added: * remove-redundant-json-suffix.diff * Tue Nov 3 2020 Jochen Breuer - Fixes usage of str.join() - Added: * fix-for-old-str.join-usage.diff * Tue Sep 22 2020 Dominik Gedon - Add fence-agents package as requirement - Fix position of wrong endif * Tue Sep 15 2020 Alexander Graul - Add cobbler-tests subpackage for unit testing for openSUSE/SLE * Fri Sep 11 2020 Jochen Breuer - Adds LoadModule definitions for openSUSE/SLE - Added: * load_module_apache_suse_fix.diff * Wed Sep 9 2020 Dominik Gedon - Switch to new refactored auth module. - Added: * refactored_auth_module.diff * Mon Sep 7 2020 Jochen Breuer - Adding tornado dependency for cobbler tftpd again. * Mon Sep 7 2020 Jochen Breuer - cgi.parse_qs is deprecated. Using urllib instead. - Added: * cgi_parse_qs_is_deprecated.diff * Fri Sep 4 2020 Jochen Breuer - Adds requirement for python-distro * Fri Sep 4 2020 Jochen Breuer - Removes Tornado as dependency and only recommends Ldap3 * Thu May 28 2020 Thomas Renninger - Bring changelog in sync with Uyuni: - Fixes template engine selection(bsc#1170462) Fixed mainline by commit 33c769e99 D fix-template-engine-selection.patch - Fixes a template rendering error (bsc#1169779) Fixed mainline by commit 5e5ef6c8c D fixes-a-template-rendering-error.patch - use systemctl to restart cobblerd on logfile rotation (bsc#1169207) Mainline logrotate conf file uses already /sbin/service instead of outdated: /etc/init.d/cobblerd - Fix cobbler sync for DHCP or DNS (bsc#1169553) Fixed mainline by commit 2d6cfe42da D fix_cobbler_sync_for_dhcp_or_dns.diff - Signatures file now uses "default_autoinstall" which fixes import problem happening with some distributions (bsc#1159010) Fixed mainline by commit 33d181199f0da1da - Fix for kernel and initrd detection (bsc#1159010) Fixed mainline by commit 872f505f66c50059 * Wed May 27 2020 Enno Gotthold - New: * For the distro there is now a parameter remote_boot_initrd and remote_boot_kernel () * For the profile there is now a parameter filename for DHCP. (#2280) * Signatures for ESXi 6 and 7 (#2308) * The hardlink command is now detected more dynamically and thus more error resistant (#2297) * HTTPBoot will now work in some cases out of the bug. (#2295) * Additional DNS query for a case where the wrong record was queried in the nsupdate system case (#2285) - Changes: * Enabled a lot of tests, removed some and implemented new. (#2202) * Removed not used files from the codebase. (#2302) * Exchanged mkisofs to xorrisofs. (#2296) * Removed duplicate code. (#2224) * Removed unreachable code. (#2223) * Snippet creation and deletion now works again via xmlrpc. (#2244) * Replace createrepo with createrepo_c. (#2266) * Enable Kerberos through having a case sensitive users.conf. (#2272) - Bugfixes: * General various Bugfixes (#2331, ) * Makefile usage and commands. (#2344, #2304) * Fix the dhcp template. (#2314) * Creation of the management classes and gPXE. (#2310) * Fix the scm_track module. (#2275, #2279) * Fix passing the netdevice parameter correctly to the linuxrc. (#2263) * powerstatus from cobbler now works thanks to a wrapper for ipmitool. (#2267) * In case the LDAP is used for auth, it now works with ADs. (#2274) * Fix passthru authentication. (#2271) - Other: * Add Codecov. (#2229) * Documentation updates. (#2333, #2326, #2305, #2249, #2268) * Buildprocess: * Recreation and cleanup of Grub2. (#2278) * Fix small errors for openSUSE Leap. (#2233) * Fix rpmlint errors. (#2237) * Maximum compatibility for debbuild package creation. (#2255, #2292, #2242, #2300) * Fixes related to our CI Pipeline (#2254, #2269) * Internal Code cleanup (#2273, #2270) - Breaking Changes: * Hash handling in users.digest file. (#2299) * Mon Feb 24 2020 Thomas Renninger - Removed not needed files in obs. This is now all mainline: D logrotate_cobbler D fix_hardcoded_libpath_for_websession.patch D fence_ipmitool.template D cobbler_management_mac.diff D AUTHORS - Added source files: A cobbler.obsinfo A cobbler-rpmlintrc D exclude_get-loaders_command.patch Spec file is mostly adopted to mainline spec file. Still it is not directly extracted from mainline tarball. First the remaining diff has to be submitted mainline. - Change group to Productivity/Networking/Boot/Servers - Disable any python_*_dependency_generator macros According to Tomas Chvatal they are much too experimental yet in OBS to be used. They have to be undefined, because of a half baken implementation in SLE 15 SP2 build env (defined but not properly implemented). At some point of time the introduced undefine python_*_dependency_generator will be conditionally removed via suse_version. * Mon Jan 13 2020 Enno Gotthold - Updated to version 3.1.1. * Introduce new packaging from upstream * Changelog see below - New: * We are now having a cross-distro specfile which can be build in the OBS (#2220) - before rewritten it was improved by #2144 & #2174 * Grub Submenu for net-booting machines (#2217) * Building the Cent-OS RPMs in Docker (#2190 #2189) * Reintroduced manpage build in setup.py (#2185) * mgmt_parameters are now passed to the dhcp template (#2182) * Using the standard Pyhton3 logger instead of a custom one (#2160 #2139 #2151) * Script for converting the settings file from 3.0.0 to 3.0.1 (#2154) * Docs now inside the repo instead of cobbler.github.io and improved with sphinx (#2117) - Changes: * The default tftpboot directory is now /var/lib/tftpboot instead of previously /srv/tftpboot (#2220) * Distro signatures were adjusted where necessary (#2219 #2134) * Removed requirements.txt and placed the requirements in setup.py (#2204) * Display only entries in grub which are from the same arch (#2191 #2216) * Change the name of the cobbler manpage form cobbler-cli to cobbler back and move it to section 8 (#2188 #2186) - Bugfixes: * Incremented Version to 3.1.1 from 3.0.1 * S390 Support was cleaned up (#2207 #2178) * PowerPC Support was cleaned up (#2178) * Added a missing import while importing a distro with cobbler import (#2201) * Fixed a case where a stacktrace would be produced so pass none instead (#2203) * Rename of suse_kopts_textmode_overwrite to kops_overwrite to utils (#2143 #2200) * Fix rsync subprocess call (#2199 #2179) * Fixed an error where the template rendering did not work (#2176) * Fixed some cobbler import errors (#2172) * Wrong shebang in various scripts (#2148) * Fix some imports which fixes errors introduced by the remodularization (#2150 #2153) - Other: * Issue Templates for Github (#2187) * Tue Nov 26 2019 trenn@suse.de - Update to latest git HEAD code base This version (from mainline so for quite a while already) also includes fixes for "bsc#1149075" and bsc#1151875 These patches are mainline already: D kopts-utils-path.diff D item-repo-import-fix.diff D no-system-in-kopts-call.diff This patch is going to be submitted mainline: A cobbler_management_mac.diff - Fix up manpage creation: Do not zip manpages ourselves Thanks to namtrac. * Tue Nov 19 2019 Jochen Breuer - Fix for cobbler import and buildiso (bsc#1156574) - Added: * kopts-utils-path.diff * no-system-in-kopts-call.diff * item-repo-import-fix.diff * Fri Oct 25 2019 trenn@suse.de - Update to latest git HEAD code base (commit fbebd758) - Adjusted manpage creation (needs sphinx as BuildRequires) * Tue Oct 8 2019 trenn@suse.de - Switch to openSUSE latest_mulitarch_work for shortterm until everything is in place and submitted mainline - started to switch to Sphinx manpage generation, but comment out. SuMa people must have done this already somewhere. - Already mainline: D fix_module_renaming.diff * Wed Sep 18 2019 trenn@suse.de - Fix cobbler sync for dhcp and dns enabled due to latest module renaming patches * Tue Sep 17 2019 trenn@suse.de - Update to latest git HEAD - Fixes permission denied in apache2 context when trying to write cobbler log - Fixes a bad import in import_signature (item) - Fixes bad shebang bash path in mkgrub.sh (used in post section) * Wed Sep 11 2019 Christian Vögl - Now track Github master branch WARNING: This release contains breaking changes for your settings file! * Notable changes: - Now using standard python logger - Updated dhcpd.template - Removed fix_shebang.patch: now in upstream. - added -s parameter to fdupes call to prevent hardlink across partititons * Tue Jul 23 2019 trenn@suse.de - Update to latest v3.0.0 cobbler release - Add previouly added patch: exclude_get-loaders_command.patch to the list of patches to apply. * Mon Jun 3 2019 trenn@suse.de - Fix log file world readable (as suggested by Matthias Gerstner) and change file attributes via attr in spec file - Do not allow get-loaders command (download of third party provided network boot loaders we do not trust) A exclude_get-loaders_command.patch - Add apache min version requires to 2.4 (due to mainline commit: 31a1aa31d26c4a096f0e0 Remove apache IfVersion tags from apache configs - Fix Tumbleweed build where python2-Cheetah3 and python3-Cheetah3 are build for a while by changing (Build- and) Requires from: Cheetah3 to python3-Cheetah3 - Setting test package group to a valid one - Fix test files to be added to test package, not only the directory - Remove general dir from file section: %%{_datadir} - Fix test package requires missing Requires: python3-pytest python3-pyflakes python3-pycodestyle - Mainline fixes: 3172d1df9b9cc8 Add missing help text in redhat_management_key field c8f5490e507a72 Set default interface if cobbler system add has no - -interface= param 31a1aa31d26c4a Remove apache IfVersion tags from apache configs * Thu May 16 2019 trenn@suse.de - Updated to latest git master branch commit d43461b39073ac01a54a3f52be0b133d36cb8061 Author: Jochen Breuer Date: Fri May 10 16:41:32 2019 +0200 Remove already mainline patches: D fix-login-error.patch D remove-newline-from-token.diff D fixes-distro-none-case.diff D return-the-name-of-the-unknown-method.patch D call-with-logger-where-possible.patch D fix-http-status-code.patch D create-system-directory-at-the-correct-place.patch D remodeled-distro-detection.diff D disable_nsupdate_enabled_by_default.diff D power_system_xmlrpc_api.patch D renamed-methods-alias.patch D changes-return-to-float.diff D revert-redhat-management-removal.patch D add-docker-integration-testing.diff D refactor-unittest-to-pytest.diff D renamed-methods-alias-part2.patch D changes-detection-to-distro-like-for-suse-distributions.diff D rhn-mngmnt-key-field-fix.diff * Thu May 16 2019 Jochen Breuer - Re-enabling build for cobbler-test package. * Wed May 15 2019 trenn@suse.de - Integrated fixes that came in from mainline from other products (to calm down obs regression checker): CVE-2011-4953, fate#312397, bsc#660126, bsc#671212, bsc#672471, bsc#682665 bsc#687891, bsc#695955, bsc#722443, bsc#722445, bsc#757062, bsc#763610 bsc#783671, bsc#790545, bsc#796773, bsc#811025, bsc#812948, bsc#842699 bsc#846580, bsc#869371, bsc#884051, bsc#976826, bsc#984998 Some older bugs need bnc# references as well: bnc#660126, bnc#671212, bnc#672471, bnc#682665 bnc#687891, bnc#695955, bnc#722443, bnc#722445, bnc#757062, bnc#763610 bnc#783671, bnc#790545, bnc#796773, bnc#811025, bnc#812948, bnc#842699 bnc#846580, bnc#869371, bnc#884051 * Thu May 9 2019 Jochen Breuer - Fix for redhat_management_key not being listed as a choice during profile rename (bsc#1134588) - Added: * rhn-mngmnt-key-field-fix.diff * Tue May 7 2019 Jochen Breuer - Fixes distribution detection in setup.py for SLESo - Added: * changes-detection-to-distro-like-for-suse-distributions.diff * Tue May 7 2019 Jochen Breuer - Moving to pytest and adding Docker test integration - Added: * add-docker-integration-testing.diff * refactor-unittest-to-pytest.diff * Tue May 7 2019 Jochen Breuer - Additional compatability changes for old Koan versions. - Modified: * renamed-methods-alias-part2.patch * Tue Apr 30 2019 Jochen Breuer - Old Koan versions not only need method aliases, but also need compatible responses - Added: * renamed-methods-alias-part2.patch * Tue Apr 23 2019 Enno Gotthold - Add the redhat_managment_* fields again to enable templating in SUMA. - Added: * revert-redhat-management-removal.patch * Fri Apr 5 2019 Jochen Breuer - Changes return of last_modified_time RPC to float - Added: * changes-return-to-float.diff * Thu Apr 4 2019 mantel@suse.de - provide old name aliases for all renamed methods: - get_distro_for_koan => get_distro_as_rendered - get_profile_for_koan => get_profile_as_rendered - get_system_for_koan => get_system_as_rendered - get_repo_for_koan => get_repo_as_rendered - get_image_for_koan => get_image_as_rendered - get_mgmtclass_for_koan => get_mgmtclass_as_rendered - get_package_for_koan => get_package_as_rendered - get_file_for_koan => get_file_as_rendered - Renamed: get_system_for_koan.patch => renamed-methods-alias.patch * Thu Apr 4 2019 mantel@suse.de - provide renamed method "get_system_for_koan" under old name for old clients. - Added: * get_system_for_koan.patch * Thu Mar 28 2019 Matei - Bring back power_system method in the XML-RPC API - Changed lanplus option to lanplus=true in fence_ipmitool.template - Added: * power_system_xmlrpc_api.patch - Changed: * fence_ipmitool.template * Wed Mar 27 2019 Jochen Breuer - Disables nsupdate_enabled by default - Added: * disable_nsupdate_enabled_by_default.diff * Wed Mar 27 2019 Jochen Breuer - Fixes issue in distribution detection with "lower" function call. - Modified: * remodeled-distro-detection.diff * Tue Mar 26 2019 Jochen Breuer - Adds imporoved distribution detection. Since now all base products get detected correctly, we no longer need the SUSE Manager patch. - Added: * remodeled-distro-detection.diff * Sun Mar 24 2019 Michael Calmer - fix grub directory layout - Added: * create-system-directory-at-the-correct-place.patch * Sat Mar 23 2019 Michael Calmer - fix HTTP status code of XMLRPC service - Added: * fix-http-status-code.patch * Tue Mar 19 2019 Michael Calmer - touch /etc/genders when it not exists (bsc#1128926) - Add patches to fix logging - Added: * return-the-name-of-the-unknown-method.patch * call-with-logger-where-possible.patch * Tue Mar 19 2019 Jochen Breuer - Switching version schema from 3.0 to 3.0.0 * Tue Mar 12 2019 Jochen Breuer - Fixes case where distribution detection returns None (bsc#1130658) - Added: * fixes-distro-none-case.diff * Tue Mar 12 2019 Jochen Breuer - Removes newline from token, which caused authentication error (bsc#1128754) - Added: * remove-newline-from-token.diff * Fri Mar 8 2019 Enno Gotthold - Added a patch which fixes an exception when login in with a non-root user. - Added: * fix-login-error.patch * Fri Mar 8 2019 Enno Gotthold - Added a patch which fixes an exception when login in with a non-root user. - Added: * fix-login-error.patch * Fri Mar 8 2019 jgonzalez@suse.com - Remove patch merged at upstream: * 0001-return-token-as-string.patch * Fri Mar 8 2019 Michael Calmer - change grub2-x86_64-efi dependency to Recommends * Thu Mar 7 2019 jgonzalez@suse.com - grub2-i386pc is not really required. Changed to recommended to allow building for architectures other than x86_64 * Thu Mar 7 2019 jgonzalez@suse.com - Use cdrtools starting with SLE-15 and Leap-15 again. (bnc#1081739) - Update cobbler loaders server hostname (bsc#980577) - Update outdated apache config (bsc#956264) - Replace builddate with changelog date to fix build-compare (bsc#969538) - LOCKFILE usage removed on openSUSE (bnc#714618) - Power management subsystem completely re-worked to prevent command-injection (CVE-2012-2395) - Removed patch merged at upstream: * cobblerd_needs_apache2_service_started.patch * Fri Mar 1 2019 trenn@suse.de - Checking bug fixes of released products are in latest develop pkg: - remove fix-nameserver-search.fix; bug is invalid (bsc#1029276) - > not needed anymore - fix cobbler yaboot handling (bsc#968406, bsc#966622) - > no yaboot support anymore - support UEFI boot with cobbler generated tftp tree (bsc#1020376) - > upstream - Enabling PXE grub2 support for PowerPC (bsc#986978) - > We have grub2 support for ppc64le - (bsc#1048183) fix missing args and location for xen - > is in - no koan support anymore: bsc#969541, bsc#924118, bsc#967523 - not installed (bsc#966841) works. - These still have to be looked at: SUSE system as systemd only (bsc#952844) handle list value for kernel options correctly (bsc#973413) entry in pxe menu (bsc#988889) - This still has to be switched off (at least in internal cobbler versions): Disabling 'get-loaders' command and 'check' fixed. bsc#973418 * Thu Feb 28 2019 trenn@suse.de - Add python3-requests and removed old python2 requires: Requires: python-PyYAML Requires: python-urlgrabber (originally from jbreuer@suse.de) - Add explicity require to tftp, so it is used for both SLE and openSUSE (originally from jgonzalez@suse.com) - Moved Recommends according to spec_cleaner * Mon Feb 25 2019 trenn@suse.de - Require latest apache2-mod_wsgi-python3 package This fixes interface to http://localhost/cblr/svc/... - Use latest github cobbler/cobbler master branch in _service file - cobblerd_needs_apache2_service_started.patch reverted, that is mainline now: D cobblerd_needs_apache2_service_started.patch - Only recommend grub2-arm and grub2-ppc packages or we might not be able to build on factory where arm/ppc might not be built - Remove genders package requires. A genders file is generated, but we do not need/use the genders package. * Tue Feb 19 2019 Ismail Dönmez - Cleanup with spec-cleaner * Thu Feb 14 2019 trenn@suse.de - Update to latest cobbler version 3.0 mainline git HEAD version and remove already integrated or not needed anymore patches: D cobbler-symlink.diff D detect-parallel-cobbler-sync.patch D escape-shell-parameters-provided-by-user-on-reposync.patch D fix_subprocess_sp_encoding.patch D fix-os-release.patch D disable_not_relevant_checks_bnc_828453.patch D update-outdated-apache-config-bsc956264.patch D cve-2018-10931-forbid-exposure-of-private-methods-in.patch D fix-broken-tests.diff D fix-manpage-creation.patch D do_not_use_grubby_compat_when_grub2_is_in_use.diff D fix_hardcoded_libpath_for_websession.patch D looking_for_cobbler_order_changed.diff D grubby-compat.diff D fix-restart-paravirt-xen.dif D koan_old_cobbler_compat.diff D fix_shebang.patch D catch_cheetah_exception.patch D fix-script-endpoint-security-bug-1030582.patch D cobbler_web_config.diff D fix-koan-port-guessing.dif D cobblerd_needs_apache2_service_started.patch D fix-powermanagement-status.dif D check-access-token-when-calling-modify_setting-api-e.patch D fix_sle_detection.patch D fix_test_create_systems.diff D fix_subprocess_sp_encoding.patch D cobbler-2.4.2-reprovision-rhel-on-suse-bnc883487.patch * Wed Feb 6 2019 trenn@suse.de - Serial console support added, did some testing already Things should start to work as expected * Tue Jan 29 2019 trenn@suse.de - Add general grub2 support * Wed Jan 16 2019 trenn@suse.de - Put mkgrub.* into mkgrub.sh * Wed Jan 16 2019 trenn@suse.de - Add git date and commit to version string for now * Wed Jan 16 2019 trenn@suse.de - Add grub2 mkimage scripts: mkgrub.i386-pc mkgrub.powerpc-ieee1275 mkgrub.x86_64-efi mkgrub.arm64-efi and generate grub executables with them in the %%post section * Fri Jan 11 2019 trenn@suse.de * * Backported fixes from SLE12 SP3 - build server wants explicite package in BuildRequires; use tftp - require tftp(server) instead of atftp - cleanup: cobbler is noarch, so arch specific requires do not make sense - SLES15 is using /etc/os-release instead of /etc/SuSE-release, use this one for checking also - Add: * sles15.patch - add sles15 distro profile (bsc#1090205) - Add: * add-sles15-distro.patch - fix signature for SLES15 (bsc#1075014) - Updated: * add-sles15-distro.patch - fix signature for SLES15 (bsc#1075014) - Updated: * add-sles15-distro.patch Missing fixes ============= This SLE fixes are missing. The reason for this is that koan got split out into a separate package, these changes (changelog entries) therefore are not relevant for this package anymore: Koan specific: - fix koan wait parameter initialization Added: * fix-wait.patch - Fix koan shebang - Add: * fix-usr-bin-env-bash-koan.diff But these patches still have to be double checked and probably applied to current cobbler sources. The patches are still added in the package, but do not get patched. If this work has been done, these changelog entries should show up in the * * Backported fixes from SLE12 SP3 section above to please maintenance and "factory first" release checking tools: cobbler specific (still have to be done): - Escape shell parameters provided by the user for the reposync action (CVE-2017-1000469) (bsc#1074594) - Added: * escape-shell-parameters-provided-by-user-on-reposync.patch - detect if there is already another instance of "cobbler sync" running and exit with failure if so (bsc#1081714) - Add: * detect-parallel-cobbler-sync.patch - do not try to hardlink to a symlink. The result will be a dangling symlink in the general case (bsc#1097733) - Added: * cobbler-symlink.diff - fix kernel options when generating bootiso (bsc#1101670) - Added: * cobbler-buildiso-list-to-string.patch - Refreshed: * cobbler-symlink.diff - fix service restart after logrotate for cobblerd (bsc#1113747) - rotate cobbler logs at higher frequency to prevent disk fillup (bsc#1113747) * Fri Aug 10 2018 pablo.suarezhernandez@suse.com - Forbid exposure of private methods in the API (CVE-2018-10931) (CVE-2018-1000225) (bsc#1104287) (bsc#1104189) (bsc#1105442) - Check access token when calling 'modify_setting' API endpoint (bsc#1104190) (bsc#1105440) (CVE-2018-1000226) - Added: * check-access-token-when-calling-modify_setting-api-e.patch * cve-2018-10931-forbid-exposure-of-private-methods-in.patch * Thu Apr 26 2018 pablo.suarezhernandez@suse.com - Escape shell parameters provided by the user for the reposync action (CVE-2017-1000469) (bsc#1074594) - Added: * escape-shell-parameters-provided-by-user-on-reposync.patch * Mon Mar 5 2018 adam.majer@suse.de - Use cdrtools starting with SLE-15 and Leap-15 again. (bnc#1081739) * Mon Nov 27 2017 pablo.suarezhernandez@suse.com - Cleanup of the spec file. * Mon Nov 27 2017 jloeser@suse.com - fix creation of manpages: option '--release ""' resulted in empty man pages - added patch: * fix-manpage-creation.patch * Wed Nov 8 2017 aavindraa@gmail.com - Update to latest stable version of cobbler (2.8.2) * many changes since 2.6.6. see: https://cobbler.github.io/posts/ - rebase patches * koan_old_cobbler_compat.diff * disable_not_relevant_checks_bnc_828453.patch * update-outdated-apache-config-bsc956264.patch + potentionally fixed in 3d4db162c7b7c0fe7de00c30fcb81798b7db5039 - remove fix-cobbler-loaders-server-bsc980577.patch * fixed in 77328c0b05d37878f13704efa31e4daa162fda12 - remove vendor-files.tar.bz2 * use built in manpage instead of vendored one * add cobbler_firewall_settings to package root - use py macros to do installation * Thu Oct 5 2017 mihai.dinca@suse.com - fix script endpoint security bug CVE-2016-9605 (bsc#1030582) Add: * fix-script-endpoint-security-bug-1030582.patch * Wed Oct 4 2017 mihai.dinca@suse.com - fix setup.py to identify SUSE OS correctly bsc#1046679 Added: * fix-os-release.patch * Fri Jul 28 2017 trenn@suse.de - Recommend fence-agents for broader power switch support * Wed May 18 2016 pablo.suarezhernandez@suse.com - Update cobbler loaders server hostname bsc#980577 Added: * fix-cobbler-loaders-server-bsc980577.patch * Tue May 3 2016 mdinca@suse.de - Update outdated apache config bsc#956264 * update-outdated-apache-config-bsc956264.patch * Wed Mar 9 2016 bwiedemann@suse.com - Replace builddate with changelog date to fix build-compare (bsc#969538) * Thu Jan 15 2015 fcastelli@suse.com - Added 'fix_test_create_systems.diff': fixes the "create_systens" unit test * Tue Jan 13 2015 fcastelli@suse.com - Fix runtime dependency: ensure the yaml module is available. * Tue Jan 13 2015 fcastelli@suse.com - Install the right cobblerd.service file * Mon Jan 12 2015 fcastelli@suse.com - Do not ship cobbler_web.conf inside of the cobbler package, get rid of part of our patches to setup.py, * Fri Dec 19 2014 fcastelli@suse.com - Added new patch required to fix the broken unit tests: * fix-broken-tests.diff * Thu Dec 18 2014 fcastelli@suse.com - Removed another no longer needed patch: * fix-textmode-for-SUSE.dif * Thu Dec 18 2014 fcastelli@suse.com - Update to latest stable version of cobbler (2.6.6) - Removed no longer needed patches * bnc_877009.patch * cobbler-2.4.2-Fix-koan-s-get_insert_script.patch * fix-broken-tests.diff * fix-initscript.diff * suse_config.diff - Fixed old patches to apply against the new code: * catch_cheetah_exception.patch * grubby-compat.diff * setup_py.diff * Mon Dec 15 2014 fcastelli@suse.com - Fix the broken unit tests * Thu Dec 11 2014 mseidl@suse.de - Created sub package for unit tests * Tue Dec 9 2014 mc@suse.de - use fdupes only on SUSE * Mon Dec 8 2014 dmacvicar@suse.de - Fix for re-installation of machines on SLE with static network configuration (bnc#883487) - Added patches: * cobbler-2.4.2-Fix-koan-s-get_insert_script.patch * cobbler-2.4.2-reprovision-rhel-on-suse-bnc883487.patch * Thu Nov 27 2014 mc@suse.de - fix port guessing in koan (bsc#855389) * fix-koan-port-guessing.dif - add "copy-default" option to grubby-compat (bsc#855389) - handle elilo in SUSE (bsc#855389) * Wed Nov 26 2014 mc@suse.de - fix wrong option "text" in SUSE environment (bsc#901058) * fix-textmode-for-SUSE.dif * Thu Sep 4 2014 fcastelli@suse.com - Added do_not_use_grubby_compat_when_grub2_is_in_use.diff: prevents usage of grubby-compat when grub2 is active. Use grub2 features do modify the boot loader. * Tue Sep 2 2014 fcastelli@suse.com - Moved grubby-compat inside of the koan sub-package. The scrit was accidentally moved into the cobbler package. * Fri Jul 25 2014 fcastelli@suse.com - Added fix_sle_detection.patch: ensures SLE12 is properly detected. * Fri Jul 25 2014 fcastelli@suse.com - Did some cleanup of the spec file. * Tue Jul 15 2014 fcastelli@suse.com - Fix source of cobbler package inside of spec file (required by openSUSE:Factory) * Tue Jul 15 2014 fcastelli@suse.com - Added bnc_877009.patch, fixes CVE-2014-3225: cobbler: Local file inclusion (bnc#877009) * Mon Jul 14 2014 fcastelli@suse.com - Got rid of some of the rpmlint warnings. - Fixed error inside of koan tool introduced by the 'grubby-compat.diff' patch. * Fri Jul 11 2014 mseidl@suse.de - Requires tfpt-server but atftp/tftpt packages provide tfpt(server) - Added conditional requires for s390x and syslinux-x86_64 - Added patches: + catch_cheetah_exception.patch - forward cheetah exception as 500 SERVER ERROR (bnc#787879) + disable_not_relevant_checks_bnc_828453.patch + fence_ipmitool.sh - add fence_ipmitool script for power management + fix-powermanagement-status.dif - fix evaluation of power status calls + fix-restart-paravirt-xen.dif - fix XEN fullvirt installation + grubby-compat.diff + koan_old_cobbler_compat.diff - add new grubby-compat tool + looking_for_cobbler_order_changed.diff - fix cobbler checks on SUSE (bnc#828453) + setup_py.diff - update paths for suse apache - Modified fix-initscript.diff -Failed to patch due to new line in newer version - Removed patches: - suse_newver.patch - Upstreamed - users_patch.diff - Upstreamed - cheetah_template_autoescape.patch - No longer needed * Fri Feb 14 2014 mc@suse.de - update to version 2.4.2 + Adding support for gPXE + Adding support for ESXi5 + fix install=... kernel parameter when importing a SUSE distro + koan: Port xen creation to virt-install + koan: Port qcreate to virt-install + Port koan from virtinst to virt-install command (v2) + add qcow2 driver type + Adding ability to use https for API calls (cobbler CLI) + Use ip instead of ifconfig for network snippets + minor modifications to templar to show template rendering errors + bugfixes and refactoring * Tue Aug 13 2013 kkaempf@suse.com - Update to 2.4.0 Major Features: - Dynamic Settings - Distro Signatures - Vastly improved support for Ubuntu, OpenSUSE and VMware ESXi (5.0 and 5.1) - Added in new templated scripting support (needs documentation) - New web interface improvements (tabs, etc.) - Added apt-specific fields for repositories to make mirroring them easier - Support for parameterized classes and defines in puppet using management classes Minor Features: - Added the bonded_bridge_slave interface type: - Improved template error reporting - Variables in fields are now evaluated through the templating engine - Added openvz as a virtualization type for koan - Added --virt-pxe-boot option for koan to force PXE booting of new systems - Added a per-interface gateway option, for systems that support it - Added support for new puppet command syntax - Exposed replication rsync options Major Bugfixes: - --available-as no longer copies all files. - Improved gPXE/iPXE support, including FreeBSD - Deleting objects now respects the --recursive option again Minor Bugfixes: - Too many to list * Wed Aug 7 2013 ro@suse.de - fix filelist to fix build on factory: rpm does not allow to mark a non-directory as dir anymore * Wed Apr 10 2013 rbrownccb@opensuse.org - use systemd for openSUSE 12.3 and later - change release number to match upstream - drop obsolete setup_py.diff - add required apache modules for cobbler-web - add suse_newver.patch to add support for SLES11 SP3, openSUSE 12.3 and openSUSE 13.1 * Tue Apr 9 2013 rbrownccb@opensuse.org - update to 2.2.3 + Multiple security fixes + CSRF support for the web GUI, which will now default to using https too. + Power management subsystem completely re-worked to prevent command-injection (CVE-2012-2395) + Support for bind in chroot'd environments + Koan now uses virt-install CLI instead of directly accessing the virtinst API + Various improvements for SuSE and autoyast, especially for PPC64-based systems. + BETA support for ESXi5 and gPXE + BETA support for using other template languages, like jinja2 - rebase patches - drop obsolete manage_import_suse.py - no longer requires mod_python * Thu May 3 2012 ug@suse.de - require syslinux only on x86 arch * Thu Apr 19 2012 ug@suse.de - moved the secret generation from RPM post-script to the init-script, to avoid that all appliances will still have the same key * Tue Apr 17 2012 ug@suse.de - create a secret during installation * Tue Mar 27 2012 chris@computersalat.de - update to 2.2.2 * please see CHANGELOG for more info - remove obsolete virt-auto-boot patch - rebase patches * Mon Feb 13 2012 ug@suse.de - fixed return value of rccobblerd status * Mon Feb 13 2012 coolo@suse.com - patch license to follow spdx.org standard * Thu Dec 22 2011 ug@suse.de - fix install=... kernel option when you import a SUSE distro * Wed Oct 26 2011 ug@suse.de - virtual machines autostart on boot fixed * Fri Oct 7 2011 ug@suse.de - Import modules, which allowed easy integration of... - Ubuntu and Debian support again! - Better support for SuSE - Support for FreeBSD - Support for ESX 4+/ESXi - Integration with the python TFTP server pytftpd - "fetchable files" and "boot files" support for distros that need to get more files from the TFTP server - Faster sync using link cache - Support for EFI grub booting - Support for bridged interfaces - WSGI instead of mod_python for the web interface. - Lots of Web UI improvements - A lot more I'm sure I missed when going through the change log - version 2.2.1 * Sat Sep 17 2011 jengelh@medozas.de - Remove redundant tags/sections from specfile * Wed Aug 31 2011 ug@suse.de - LOCKFILE usage removed on openSUSE (bnc#714618) * Fri Jun 10 2011 ug@suse.de - fixed the handling of cheetah template code in AutoYaST XML files (thanks to Jörgen Maas for pointing me to the bug) - fixed parameter list in build-ISO code (thanks to Jörgen Maas for the patch) * Thu Apr 7 2011 ug@suse.de - added a backported upstream patch for tainted file error message * Thu Apr 7 2011 ug@suse.de - fix hostname in install=... * Thu Apr 7 2011 ug@suse.de - fix init-script * Thu Apr 7 2011 ug@suse.de - fixed apache config typo * Wed Apr 6 2011 ug@suse.de - added SUSE breed to import-webui * Wed Apr 6 2011 ug@suse.de - build ISO for SUSE fixed * Wed Apr 6 2011 ug@suse.de - added patch for autoyast XML files and cobbler triggers * Wed Apr 6 2011 ug@suse.de - added patch to fix koan with SUSE dists * Tue Apr 5 2011 ug@suse.de - fixed tftp-root path on SUSE * Tue Apr 5 2011 ug@suse.de - added support for importing a SUSE distribution * Mon Apr 4 2011 ug@suse.de - fixed the start of cobblerd when [tftpd] section is missing in the modules.conf * Mon Apr 4 2011 ug@suse.de - version from 2.0.10 to 2.1.0 * Wed Mar 23 2011 ug@suse.de - changed logfiles to root:root (bnc#678433) * Tue Mar 22 2011 ug@suse.de - changed permissions in /var/log/ to root:www (bnc#678433) * Fri Mar 4 2011 ug@suse.de - patches cleaned up * Mon Feb 28 2011 ug@suse.de - fixed a crash because xml.dom.ext is not available on 11.4 * Thu Feb 17 2011 ug@suse.de - fixed the restarting of services on SUSE * Thu Feb 17 2011 ug@suse.de - missing rc-script link added * Wed Feb 16 2011 ug@suse.de - don't add "#raw" comment per default anymore * Wed Feb 16 2011 ug@suse.de - cobbler failed to export kickstart profiles with $SNIPPET(...) cheetah_class_fix.diff added for that * Tue Feb 8 2011 ug@suse.de - removed grubby from the requires * Thu Feb 3 2011 ug@suse.de - packaged the cobbler.conf instead of cobbler_wsgi.conf (bnc#668968) * Wed Feb 2 2011 ug@suse.de - spec file fixed * Fri Jan 28 2011 ug@suse.de - fixed apache config to avoid warning * Wed Jan 19 2011 ug@suse.de - added firewall config * Thu Jan 13 2011 ug@suse.de - version update to 2.0.10 * Wed Jan 12 2011 ug@suse.de - some template files were not packaged * Tue Jan 11 2011 ug@suse.de - removed xinetd from start script * Tue Jan 11 2011 ug@suse.de - update to version 2.0.8