patterns-sap/patterns-sap.spec

700 lines
21 KiB
RPMSpec
Raw Normal View History

#
# spec file for package patterns-sap
#
# Copyright (c) 2024 SUSE LLC
#
# 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.
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
%bcond_with betatest
%define all_patterns base enhanced_base minimal_sap base_sap_server DB APP HADB HAAPP trento_agent trento_server automation monitoring gui security debug addons sap_all
Name: patterns-sap
Version: 16.0
Release: 0
Summary: Patterns for SUSE Linux Enterprise Server for SAP Applications
License: MIT
Group: Metapackages
URL: http://en.opensuse.org/Patterns
Source0: %name.rpmlintrc
ExclusiveArch: x86_64 %arm32 aarch64 ppc64le s390x riscv64
%description
This is an internal package that is used to create the patterns as part
of the installation source setup. Installation of this package does
not make sense.
##############################
# base
##############################
%package base
#%pattern_basetechnologies
Summary: SLES for SAP Minimal Base System
Group: Metapackages
Provides: pattern() = sles_sap_base
Provides: pattern-category() = SLFO
Requires: pattern() = bootloader
Requires: pattern() = minimal_base
Requires: bash
Requires: coreutils
Requires: aaa_base
Requires: bash
Requires: coreutils
Requires: dracut
Requires: glibc
Requires: pam
Requires: polkit
Requires: polkit-default-privs
Requires: procps
Requires: rpm
Requires: shadow
Requires: system-group-hardware
Requires: system-user-nobody
Requires: systemd
Requires: util-linux
Requires: which
Requires: zypper
# ignored requires purge-kernels-service: unknown package purge-kernels-service
Requires: e2fsprogs
Recommends: busybox-static
Recommends: ca-certificates-mozilla
Recommends: chrony
Recommends: cron
Recommends: cronie
Recommends: elfutils
Recommends: glibc-locale
Recommends: glibc-locale-base
Recommends: grub2
Recommends: iproute2
Recommends: libnsl1
Recommends: snapper
# ignored recommends system-group-trusted: unknown package system-group-trusted
Recommends: system-group-wheel
Recommends: system-user-bin
Recommends: system-user-daemon
Recommends: tar
Recommends: terminfo
Recommends: terminfo-iterm
Recommends: terminfo-screen
Recommends: timezone
Recommends: branding-SLE
# ignored recommends SUSEConnect: unknown package SUSEConnect
Recommends: btrfsprogs
Recommends: rollback-helper
Recommends: xfsprogs
Recommends: systemd-coredump
# ignored recommends haveged: unknown package haveged
# ignored recommends issue-generator: unknown package issue-generator
Suggests: kernel-default
# ignored suggests pulseaudio: package pulseaudio with label @PulseAudio does not belong to this product
%ifarch x86_64
Recommends: shim
Recommends: efibootmgr
%endif
%ifarch aarch64
Recommends: efibootmgr
%endif
%ifarch ppc64le
Recommends: lshw
Recommends: lsvpd
Recommends: ppc64-diag
%endif
%description base
This is the SLES for SAP base runtime system. It contains only a minimal multiuser booting system.
For running on real hardware, install additional packages and patterns will have to be
installed.
##############################
# enhanced_base
##############################
%package enhanced_base
#%pattern_basetechnologies
Summary: SLES for SAP Enhanced Base System
Group: Metapackages
Provides: pattern() = sles_sap_enhanced_base
Provides: pattern-category() = SLFO
Requires: pattern() = sles_sap_base
Requires: multipath-tools
Recommends: grub2-branding-SLE
Recommends: plymouth
# ignored recommends OpenIPMI: package OpenIPMI with label @IPMI does not belong to this product
Recommends: aaa_base-extras
Recommends: acl
# ignored recommends alsa-plugins: unknown package alsa-plugins
Recommends: attr
# ignored recommends autofs: unknown package autofs
Recommends: bash-completion
# ignored recommends bind-utils: package bind-utils with label @BIND does not belong to this product
Recommends: binutils
Recommends: bzip2
# ignored recommends cifs-utils: package cifs-utils with label @Samba does not belong to this product
# ignored recommends command-not-found: unknown package command-not-found
Recommends: cpio
Recommends: cpp
Recommends: cpupower
Recommends: cryptsetup
# ignored recommends cups: package cups with label @PrintServer does not belong to this product
# ignored recommends cups-client: package cups-client with label @PrintingLibraries does not belong to this product
Recommends: curl
Recommends: cyrus-sasl
Recommends: cyrus-sasl-crammd5
Recommends: cyrus-sasl-digestmd5
Recommends: cyrus-sasl-gssapi
Recommends: cyrus-sasl-plain
# ignored recommends deltarpm: unknown package deltarpm
Recommends: diffutils
Recommends: dos2unix
Recommends: e2fsprogs
Recommends: ethtool
Recommends: expect
Recommends: file
Recommends: fillup
Recommends: findutils
Recommends: firewalld
Recommends: fuse
Recommends: gawk
# ignored recommends genisoimage: unknown package genisoimage
Recommends: gettext-runtime
# ignored recommends gpart: unknown package gpart
Recommends: gpg2
Recommends: gpm
Recommends: grep
Recommends: grub2
Recommends: gzip
Recommends: hdparm
Recommends: hwinfo
Recommends: info
# ignored recommends initviocons: package initviocons with label @YastCommon does not belong to this product
# ignored recommends ipmitool: package ipmitool with label @IPMI does not belong to this product
Recommends: iproute2
Recommends: iputils
Recommends: irqbalance
Recommends: joe
# ignored recommends kmod-compat: unknown package kmod-compat
Recommends: kpartx
Recommends: krb5
Recommends: less
Recommends: logrotate
Recommends: lsof
Recommends: lsscsi
Recommends: lvm2
Recommends: m4
Recommends: mailx
Recommends: make
Recommends: man
Recommends: mdadm
# ignored recommends mksh: unknown package mksh
# ignored recommends mutt: unknown package mutt
Recommends: ncurses-utils
Recommends: net-snmp
Recommends: net-tools
Recommends: netcat-openbsd
Recommends: netcfg
Recommends: nfs-client
# ignored recommends nfsidmap: unknown package nfsidmap
Recommends: nscd
# ignored recommends ntfs-3g: package ntfs-3g with label @MicrosoftTools does not belong to this product
# ignored recommends ntfsprogs: package ntfsprogs with label @MicrosoftTools does not belong to this product
Recommends: openslp
Recommends: openssh
Recommends: pam-config
Recommends: parted
Recommends: pciutils
# ignored recommends pciutils-ids: unknown package pciutils-ids
# ignored recommends pcre: unknown package pcre
Recommends: perl-Bootloader
Recommends: perl-base
Recommends: permissions
Recommends: pinentry
# ignored recommends popt: unknown package popt
Recommends: postfix
Recommends: psmisc
Recommends: quota
Recommends: rsync
# ignored recommends scout: unknown package scout
Recommends: screen
Recommends: sed
Recommends: sg3_utils
Recommends: smartmontools
Recommends: sudo
# ignored recommends supportutils: package supportutils with label @SUSESupport does not belong to this product
Recommends: sysconfig
Recommends: sysfsutils
Recommends: tcsh
Recommends: time
Recommends: timezone
# ignored recommends translation-update: unknown package translation-update
Recommends: udev
# ignored recommends udev-configure-printer: unknown package udev-configure-printer
Recommends: usbutils
Recommends: vim
# ignored recommends w3m: package w3m with label @BrowsersConsole does not belong to this product
# ignored recommends wget: package wget with label @PublicCloud does not belong to this product
# ignored recommends xauth: package xauth with label @X11StandardUtils does not belong to this product
Recommends: xz
Recommends: zisofs-tools
# ignored recommends zlib: unknown package zlib
# ignored recommends prctl: unknown package prctl
# ignored recommends recode: unknown package recode
# ignored recommends smp_utils: unknown package smp_utils
Recommends: strace
Recommends: syslinux
# ignored recommends tnftp: unknown package tnftp
# ignored recommends tuned: package tuned with label @TuneD does not belong to this product
Recommends: wireless-tools
# ignored recommends wol: unknown package wol
# ignored suggests acpid: unknown package acpid
Suggests: biosdevname
Suggests: cpupower
Suggests: cracklib-dict-full
Suggests: cyrus-sasl-gssapi
# ignored suggests delayacct-utils: unknown package delayacct-utils
Suggests: ed
# ignored suggests finger: unknown package finger
Suggests: groff
# ignored suggests hfsutils: unknown package hfsutils
Suggests: joe
# ignored suggests kerneloops: unknown package kerneloops
# ignored suggests ksymoops: unknown package ksymoops
Suggests: man-pages
# ignored suggests man-pages-posix: unknown package man-pages-posix
# ignored suggests mpt-status: unknown package mpt-status
# ignored suggests ocfs2-tools: unknown package ocfs2-tools
# ignored suggests pam_ssh: unknown package pam_ssh
# ignored suggests perl-TermReadLine-Gnu: unknown package perl-TermReadLine-Gnu
# ignored suggests prctl: unknown package prctl
# ignored suggests procinfo: unknown package procinfo
# ignored suggests procmail: package procmail with label @PCP does not belong to this product
# ignored suggests providers: unknown package providers
# ignored suggests pwgen: unknown package pwgen
# ignored suggests setserial: unknown package setserial
Suggests: sharutils
Suggests: spax
Suggests: strace
# ignored suggests tcpdump: unknown package tcpdump
# ignored suggests telnet: unknown package telnet
Suggests: terminfo
Suggests: unzip
Suggests: vlan
# ignored suggests w3m-el: unknown package w3m-el
# ignored suggests wol: unknown package wol
# ignored suggests xdelta: unknown package xdelta
# ignored suggests xfsdump: unknown package xfsdump
Suggests: zip
%ifarch x86_64
Recommends: dmidecode
Recommends: acpica
Recommends: mcelog
Recommends: numactl
Recommends: ucode-amd
Recommends: ucode-intel
%endif
%ifarch aarch64
Recommends: dmidecode
%endif
%description enhanced_base
This is the enhanced base runtime system with lots of convenience packages.
##############################
# minimal_sap
##############################
%package minimal_sap
Summary: SAP Application Server Base
Group: Metapackages
Provides: pattern() = sles_sap_minimal_sap
Provides: pattern-category() = SLFO
Requires: pattern() = sles_sap_base
# shell for user <sid>adm
Requires: tcsh
# SAP-Note 1391070
Requires: uuidd
Requires: sysstat
Requires: sysctl-logger
Requires: util-linux-systemd
Requires: supportutils
Requires: bpftool
ExclusiveArch: x86_64 ppc64le
%description minimal_sap
Set up the server for installing SAP systems.
##############################
# base_sap_server
##############################
%package base_sap_server
Summary: SAP Server Base
Group: Metapackages
Provides: pattern() = sles_sap_base_sap_server
Provides: pattern-category() = SLFO
Requires: pattern() = sles_sap_minimal_sap
# needed for SAP related OS tuning
Requires: saptune
# needed for HA, but useful for others too
Requires: sudo
Requires: chrony
%description base_sap_server
Base setup for installing SAP
##############################
# sap_DB
##############################
%package DB
Summary: SAP Databases Server Base
Group: Metapackages
Provides: pattern() = sles_sap_DB
Provides: pattern-category() = SLFO
Requires: pattern() = sles_sap_base_sap_server
#Suggests: pattern() = oracle_server
# SAP Sybase ASE requires the libaio library to start the installation
Requires: libaio1
# P.Pitterlings checks
#Requires: saphana-checks ### submission TBD
%description DB
Set up the server for installing SAP databases (HANA, MaxDB, DB2, ASE/Sybase)
##############################
# sap_APP
##############################
%package APP
Summary: SAP Applications Server Base
Group: Metapackages
Provides: pattern() = sles_sap_APP
Provides: pattern-category() = SLFO
Requires: pattern() = sles_sap_base_sap_server
# SAP-Note 3216146 (gcc 11.x)
Requires: libgcc_s1
Requires: libstdc++6
Requires: libatomic1
# ignore for now - Requires: libicu - currently unknown package
# SAP-Note 2460148 (TREX)
#Requires: libstdc++6
Requires: libXss1
# SAP requires NFS storage for /usr/share
Requires: nfs-utils
%description APP
Set up the server for installing SAP applications (Netweaver, S/4HANA)
##############################
# sap_HADB
##############################
%package HADB
Summary: SAP HA for SAP database
Group: Metapackages
Provides: pattern() = sles_sap_HADB
Provides: pattern-category() = SLFO
Requires: pattern() = sles_sap_DB
Requires: pattern() = sles_ha
# RAs
Requires: SAPHanaSR-angi
# suppport tools
Requires: ClusterTools2
Requires: supportutils-plugin-ha-sap
# e.g. access point for the load-balancer in clouds
Requires: socat
%description HADB
Cluster support for SAP HANA System Replication in ScaleUp and ScaleOut environments
##############################
# sap_HAAPP
##############################
%package HAAPP
Summary: SAP HA for SAP applications
Group: Metapackages
Provides: pattern() = sles_sap_HAAPP
Provides: pattern-category() = SLFO
Requires: pattern() = sles_sap_APP
Requires: pattern() = sles_ha
# RAs
Requires: sapstartsrv-resource-agents
Requires: sap-suse-cluster-connector
# support tools
Requires: ClusterTools2
Requires: supportutils-plugin-ha-sap
# e.g. access point for the load-balancer in clouds
Requires: socat
%description HAAPP
Cluster support for SAP NetWeaver and SAP S/4 HANA
##############################
# sap_trento_agent
##############################
%package trento_agent
Summary: Trento agents
Group: Metapackages
Provides: pattern() = sles_sap_trento_agent
Provides: pattern-category() = SLFO
Requires: pattern() = sles_sap_base_sap_server
# ignore for now - Requires: trento-agent - currently unknown package
# ignore for now - Requires: trento-supportconfig-plugin - currently unknown package
%description trento_agent
Trento agents - operations of existing clusters of SAP applications
##############################
# sap_trento_server
##############################
%package trento_server
Summary: Trento server
Group: Metapackages
Provides: pattern() = sles_sap_trento_server
Provides: pattern-category() = SLFO
Requires: pattern() = sles_sap_base_sap_server
# ignore for now - Requires: trento-web - currently unknown package
# ignore for now - Requires: trento-wanda - currently unknown package
# ignore for now - Requires: trento-supportconfig-plugin - currently unknown package
Suggests: golang-github-prometheus-prometheus
Suggests: postgresql-server
# ignore for now - Suggests: rabbitmq-server - currently unknown package
Suggests: nginx
%description trento_server
Trento server - operations of existing clusters of SAP applications
##############################
# sap_automation
##############################
%package automation
Summary: automation deployment
Group: Metapackages
Provides: pattern() = sles_sap_automation
Provides: pattern-category() = SLFO
Requires: pattern() = sles_sap_base_sap_server
# ignore for now - Requires: ansible - currently unknown package
Requires: python311
#Requires: ansible
#Requires: ansible-linux-system-roles
#Requires: ansible-sap-automation
#Requires: ansible-sap-playbooks
# playbooks and roles - TBD
%description automation
ansible playbooks and roles
##############################
# sap_monitoring
##############################
%package monitoring
Summary: SAP monitoring
Group: Metapackages
Provides: pattern() = sles_sap_monitoring
Provides: pattern-category() = SLFO
Requires: pattern() = sles_sap_base_sap_server
# ignore for now - Requires: prometheus-ha_cluster_exporter - currently unknown package
# ignore for now - Requires: prometheus-hanadb_exporter - currently unknown package
# ignore for now - Requires: prometheus-sap_host_exporter - currently unknown package
Requires: smartmontools
Requires: golang-github-prometheus-prometheus
# ignore for now - Requires: golang-github-prometheus-node_exporter - currently unknown package
%description monitoring
Support for SAP system monitoring
##############################
# sap_gui
##############################
%package gui
Summary: SAP system GUI
Group: Metapackages
Provides: pattern() = sles_sap_gui
Provides: pattern-category() = SLFO
Requires: pattern() = sles_sap_base_sap_server
# for hdblcmgui and hdbsetup
Recommends: gtk2
# SAP HANA GUI installer bnc#954476
Requires: libjpeg62
# SAP HANA GUI installer bnc#954476
# ignore for now - Requires: libpng12-0 - currently unknown package
# ignore for now - Requires: xrdp - currently unknown package
%description gui
Support for SAP system GUI
##############################
# sap_security
##############################
%package security
Summary: SAP security
Group: Metapackages
Provides: pattern() = sles_sap_security
Provides: pattern-category() = SLFO
Requires: pattern() = sles_sap_base_sap_server
# ignore for now - Requires: cryptctl - currently unknown package
# ignore for now - Requires: HANA-Firewall - currently unknown package
# SElinux sap security policies - TBD
%description security
Support for SAP system security
##############################
# sap_debug
##############################
%package debug
Summary: SAP debugging
Group: Metapackages
Provides: pattern() = sles_sap_debug
Provides: pattern-category() = SLFO
Requires: pattern() = sles_sap_base_sap_server
# Fujitsu P.Stark
# ignore for now - Requires: perf - currently unknown package
Requires: strace
Requires: kdump
Requires: open-lldp
%description debug
Support for SAP enhanced debugging
##############################
# sap_addons
##############################
%package addons
Summary: SAP addons
Group: Metapackages
Provides: pattern() = sles_sap_addons
Provides: pattern-category() = SLFO
Requires: pattern() = sles_sap_base_sap_server
Recommends: sapcontrol-bash-completion
# ignore for now - Recommends: clamsap - currently unknown package
# ignore for now - Recommends: unar - currently unknown package
Recommends: zip
Recommends: unzip
%ifarch x86_64
Recommends: numactl
%endif
# ignore for now - Recommends: saprouter-systemd - currently unknown package
# Fujitsu P.Stark, needed for pmem
Recommends: ipmctl
Recommends: ndctl
# supportability of SAP HANA
Recommends: cairo
Recommends: graphviz
# ignore for now - Recommends: iptraf-ng - currently unknown package
# ignore for now - Recommends: lm_sensors - currently unknown package
Recommends: net-tools
Recommends: expect
# Recommends: xfsprogs ## already in sles_sap_base
%description addons
addon tools for SAP workloads
##############################
# sap_all
##############################
%package sap_all
Summary: SAP all-in-one
Group: Metapackages
Provides: pattern() = sles_sap_sap_all
Provides: pattern-category() = SLFO
Requires: pattern() = sles_sap_trento_agent
Requires: pattern() = sles_sap_trento_server
Requires: pattern() = sles_sap_HADB
Requires: pattern() = sles_sap_HAAPP
Requires: pattern() = sles_sap_automation
Requires: pattern() = sles_sap_monitoring
Requires: pattern() = sles_sap_gui
Requires: pattern() = sles_sap_security
Requires: pattern() = sles_sap_debug
Requires: pattern() = sles_sap_addons
%description sap_all
Full decorated support for SAP workloads
%prep
# empty on purpose
%build
# empty on purpose
%install
mkdir -p %{buildroot}%{_docdir}/patterns-sap/
for i in %all_patterns; do
echo "This file marks the pattern $i to be installed." \
> %{buildroot}%{_docdir}/patterns-sap/${i}.txt
done
%files base
%dir %{_docdir}/patterns-sap
%{_docdir}/patterns-sap/base.txt
%files enhanced_base
%dir %{_docdir}/patterns-sap
%{_docdir}/patterns-sap/enhanced_base.txt
%files minimal_sap
%dir %{_docdir}/patterns-sap
%{_docdir}/patterns-sap/minimal_sap.txt
%files base_sap_server
%dir %{_docdir}/patterns-sap
%{_docdir}/patterns-sap/base_sap_server.txt
%files DB
%dir %{_docdir}/patterns-sap
%{_docdir}/patterns-sap/DB.txt
%files APP
%dir %{_docdir}/patterns-sap
%{_docdir}/patterns-sap/APP.txt
%files HADB
%dir %{_docdir}/patterns-sap
%{_docdir}/patterns-sap/HADB.txt
%files HAAPP
%dir %{_docdir}/patterns-sap
%{_docdir}/patterns-sap/HAAPP.txt
%files trento_agent
%dir %{_docdir}/patterns-sap
%{_docdir}/patterns-sap/trento_agent.txt
%files trento_server
%dir %{_docdir}/patterns-sap
%{_docdir}/patterns-sap/trento_server.txt
%files automation
%dir %{_docdir}/patterns-sap
%{_docdir}/patterns-sap/automation.txt
%files monitoring
%dir %{_docdir}/patterns-sap
%{_docdir}/patterns-sap/monitoring.txt
%files gui
%dir %{_docdir}/patterns-sap
%{_docdir}/patterns-sap/gui.txt
%files security
%dir %{_docdir}/patterns-sap
%{_docdir}/patterns-sap/security.txt
%files debug
%dir %{_docdir}/patterns-sap
%{_docdir}/patterns-sap/debug.txt
%files addons
%dir %{_docdir}/patterns-sap
%{_docdir}/patterns-sap/addons.txt
%files sap_all
%dir %{_docdir}/patterns-sap
%{_docdir}/patterns-sap/sap_all.txt
%changelog