<?xml version="1.0" encoding="UTF-8"?>
<!-- OBS-Milestone: QU2 -->
<productdefinition xmlns:xi="http://www.w3.org/2001/XInclude">
  <products>
    <product>
      <vendor>SUSE</vendor>
      <name>SLES</name>
      <releasepkgname>sles-release</releasepkgname>
      <!-- predecessor>SLES</predecessor -->
      <!-- see FATE#320699, c#14 -->
      <endoflife/>
      <codestream>
        <!-- See FATE#320835 -->
        <name>SUSE Linux Enterprise Server 15</name>
        <!-- FIXME: Date needs to be corrected -->
        <endoflife>2028-07-31</endoflife>
      </codestream>
      <baseversion>15</baseversion>
      <patchlevel>3</patchlevel>
      <!-- release is no longer optional -->
      <release>0</release>
      <productline>sles</productline>
      <!--
      /* required for NCC registration */
      Note: this Flag has to be discussed between PrjMgr and NCC-Team -
      and shouldn't change the whole lifetime of the product.
      Normally, just needed for Enterprise - here just for
      reference.
      FYI: the distribution tag will be generated during media creation.
      * flavor will be replaced with the <media type="dvd5"/> definition in the mediaset.
      * target will be replaced with the ncc_target - the %{_target_cpu} macro
      will be replaced with the basearch of the product.
      * release is reserved for special versions of a product
      -->
      <register>
        <pool>
          <!-- we need a product specific channel to provide System roles and release-package updates -->
          <repository project="SUSE:Products:SLE-Product-SLES:15-SP3:x86_64" name="images" medium="product" arch="x86_64" >
            <zypp name="SLE-Product-SLES15-SP3-Pool" alias="SLE-Product-SLES15-SP3-Pool"/>
          </repository>
          <repository project="SUSE:Products:SLE-Product-SLES:15-SP3:s390x" name="images" medium="product" arch="s390x" >
            <zypp name="SLE-Product-SLES15-SP3-Pool" alias="SLE-Product-SLES15-SP3-Pool"/>
          </repository>
          <repository project="SUSE:Products:SLE-Product-SLES:15-SP3:ppc64le" name="images" medium="product" arch="ppc64le" >
            <zypp name="SLE-Product-SLES15-SP3-Pool" alias="SLE-Product-SLES15-SP3-Pool"/>
          </repository>
          <repository project="SUSE:Products:SLE-Product-SLES:15-SP3:aarch64" name="images" medium="product" arch="aarch64" >
            <zypp name="SLE-Product-SLES15-SP3-Pool" alias="SLE-Product-SLES15-SP3-Pool"/>
          </repository>
	<!-- Debug Pool -->
	  <repository project="SUSE:Products:SLE-Product-SLES:15-SP3:x86_64" name="images" medium="product_debug" arch="x86_64">
	    <zypp name="SLE-Product-SLES15-SP3-Debuginfo-Pool" alias="SLE-Product-SLES15-SP3-Debuginfo-Pool"/>
	  </repository>
	  <repository project="SUSE:Products:SLE-Product-SLES:15-SP3:s390x" name="images" medium="product_debug" arch="s390x">
	    <zypp name="SLE-Product-SLES15-SP3-Debuginfo-Pool" alias="SLE-Product-SLES15-SP3-Debuginfo-Pool"/>
	  </repository>
	  <repository project="SUSE:Products:SLE-Product-SLES:15-SP3:ppc64le" name="images" medium="product_debug" arch="ppc64le">
	    <zypp name="SLE-Product-SLES15-SP3-Debuginfo-Pool" alias="SLE-Product-SLES15-SP3-Debuginfo-Pool"/>
	  </repository>
	  <repository project="SUSE:Products:SLE-Product-SLES:15-SP3:aarch64" name="images" medium="product_debug" arch="aarch64">
	    <zypp name="SLE-Product-SLES15-SP3-Debuginfo-Pool" alias="SLE-Product-SLES15-SP3-Debuginfo-Pool"/>
	  </repository>

	<!-- Source Pool -->
	  <repository project="SUSE:Products:SLE-Product-SLES:15-SP3:x86_64" name="images" medium="product_source" arch="x86_64">
	    <zypp name="SLE-Product-SLES15-SP3-Source-Pool" alias="SLE-Product-SLES15-SP3-Source-Pool"/>
	  </repository>
	  <repository project="SUSE:Products:SLE-Product-SLES:15-SP3:s390x" name="images" medium="product_source" arch="s390x">
	    <zypp name="SLE-Product-SLES15-SP3-Source-Pool" alias="SLE-Product-SLES15-SP3-Source-Pool"/>
	  </repository>
	  <repository project="SUSE:Products:SLE-Product-SLES:15-SP3:ppc64le" name="images" medium="product_source" arch="ppc64le">
	    <zypp name="SLE-Product-SLES15-SP3-Source-Pool" alias="SLE-Product-SLES15-SP3-Source-Pool"/>
	  </repository>
	  <repository project="SUSE:Products:SLE-Product-SLES:15-SP3:aarch64" name="images" medium="product_source" arch="aarch64">
	    <zypp name="SLE-Product-SLES15-SP3-Source-Pool" alias="SLE-Product-SLES15-SP3-Source-Pool"/>
	  </repository>
        </pool>
        <updates>
          <!-- XXX: check targets -->
          <distrotarget arch="x86_64">sle-15-x86_64</distrotarget>
          <distrotarget arch="s390x">sle-15-s390x</distrotarget>
          <distrotarget arch="ppc64le">sle-15-ppc64le</distrotarget>
          <distrotarget arch="aarch64">sle-15-aarch64</distrotarget>
          <!-- we need a product specific channel to provide System roles and release-package updates -->
          <repository project="SUSE:Updates:SLE-Product-SLES:15-SP3:x86_64" name="update" arch="x86_64" >
             <zypp name="SLE-Product-SLES15-SP3-Updates" alias="SLE-Product-SLES15-SP3-Updates"/>
          </repository>
          <repository project="SUSE:Updates:SLE-Product-SLES:15-SP3:s390x" name="update" arch="s390x" >
            <zypp name="SLE-Product-SLES15-SP3-Updates" alias="SLE-Product-SLES15-SP3-Updates"/>
          </repository>
          <repository project="SUSE:Updates:SLE-Product-SLES:15-SP3:ppc64le" name="update" arch="ppc64le" >
            <zypp name="SLE-Product-SLES15-SP3-Updates" alias="SLE-Product-SLES15-SP3-Updates"/>
          </repository>
          <repository project="SUSE:Updates:SLE-Product-SLES:15-SP3:aarch64" name="update" arch="aarch64" >
            <zypp name="SLE-Product-SLES15-SP3-Updates" alias="SLE-Product-SLES15-SP3-Updates"/>
          </repository>
	  <!-- update debug-->
          <repository project="SUSE:Updates:SLE-Product-SLES:15-SP3:x86_64" name="update_debug" arch="x86_64" >
             <zypp name="SLE-Product-SLES15-SP3-Debuginfo-Updates" alias="SLE-Product-SLES15-SP3-Debuginfo-Updates"/>
          </repository>
          <repository project="SUSE:Updates:SLE-Product-SLES:15-SP3:s390x" name="update_debug" arch="s390x" >
            <zypp name="SLE-Product-SLES15-SP3-Debuginfo-Updates" alias="SLE-Product-SLES15-SP3-Debuginfo-Updates"/>
          </repository>
          <repository project="SUSE:Updates:SLE-Product-SLES:15-SP3:ppc64le" name="update_debug" arch="ppc64le" >
            <zypp name="SLE-Product-SLES15-SP3-Debuginfo-Updates" alias="SLE-Product-SLES15-SP3-Debuginfo-Updates"/>
          </repository>
          <repository project="SUSE:Updates:SLE-Product-SLES:15-SP3:aarch64" name="update_debug" arch="aarch64" >
            <zypp name="SLE-Product-SLES15-SP3-Debuginfo-Updates" alias="SLE-Product-SLES15-SP3-Debuginfo-Updates"/>
          </repository>
          <!-- -->
          <repository project="SUSE:Updates:SLE-INSTALLER:15-SP3:x86_64" name="update" arch="x86_64">
            <zypp name="SLE15-SP3-Installer-Updates" alias="SLE15-SP3-Installer-Updates"/>
          </repository>
          <repository project="SUSE:Updates:SLE-INSTALLER:15-SP3:s390x" name="update" arch="s390x">
                <zypp name="SLE15-SP3-Installer-Updates" alias="SLE15-SP3-Installer-Updates"/>
          </repository>
          <repository project="SUSE:Updates:SLE-INSTALLER:15-SP3:ppc64le" name="update" arch="ppc64le">
                <zypp name="SLE15-SP3-Installer-Updates" alias="SLE15-SP3-Installer-Updates"/>
          </repository>
          <repository project="SUSE:Updates:SLE-INSTALLER:15-SP3:aarch64" name="update" arch="aarch64">
                <zypp name="SLE15-SP3-Installer-Updates" alias="SLE15-SP3-Installer-Updates"/>
          </repository>
        </updates>
      </register>


      <summary>SUSE Linux Enterprise Server 15 SP3</summary>
      <shortsummary>SLES15-SP3</shortsummary>
      <description>SUSE Linux Enterprise offers a comprehensive
        suite of products built on a single code base.
        The platform addresses business needs from
        the smallest thin-client devices to the world's
        most powerful high-performance computing
        and mainframe servers. SUSE Linux Enterprise
        offers common management tools and technology
        certifications across the platform, and
        each product is enterprise-class.
      </description>

      <xi:include href="linguas.include" />

      <urls>
        <url name="releasenotes">https://www.suse.com/releasenotes/%{_target_cpu}/SUSE-SLES/15-SP3/release-notes-sles.rpm</url>
      </urls>

      <buildconfig>
        <!-- This section is needed to generate the installation media -->
        <producttheme>SLES</producttheme>
        <!-- <betaversion>GMC</betaversion>  -->
        <milestone>QU3</milestone>            
      </buildconfig>

      <installconfig>
        <!-- All flags needed during installation -->
        <defaultlang>en_US</defaultlang>
        <distribution>SUSE_SLE</distribution>
      </installconfig>

      <!-- All Flags needed in the running system -->
      <runtimeconfig />
      <productdependency relationship="provides" name="SUSE_SLE" flag="EQ" baseversion="15" patchlevel="3" />
      <productdependency relationship="provides" name="SUSE_SLE-SP3" flag="EQ" baseversion="15" patchlevel="3" />

    </product>
  </products>

  <!-- Default conditionals, repositories and archsets for SLE 12 get imported -->
  <xi:include href="defaults-conditionals.include" />

<!-- removed due to the changes required for POS_Image-RPi-Bootstrap below-->
  <!--xi:include href="defaults-archsets.include" /-->

  <xi:include href="defaults-repositories.include" />

<!-- special archset definition needed for POS_Image-RPi-Bootstrap.
     This package is noarch but needs to be build on aarch64
     We have ExportFilter in for the other architectures, but
     the produce definition requires looking into aarch64
     to find the src for the noarch package -->
  <archsets>
    <archset name="aarch64" productarch="aarch64">
       <arch>aarch64</arch>
       <arch>noarch</arch>
    </archset>    
    <archset name="x86_64" productarch="x86_64">
      <arch>x86_64</arch>
      <arch>noarch</arch>
      <arch>aarch64</arch>
    </archset>
    <archset name="s390x" productarch="s390x">
       <arch>s390x</arch>
       <arch>noarch</arch>
       <arch>aarch64</arch>
       <arch>x86_64</arch>
    </archset>
    <archset name="ppc64le" productarch="ppc64le">
       <arch>ppc64le</arch>
       <arch>noarch</arch>
       <arch>aarch64</arch>
       <arch>x86_64</arch>
    </archset>
    <archset name="ix86" productarch="i586">
       <arch>i586</arch>
       <arch>noarch</arch>
    </archset>
    <archset name="ia64" productarch="ia64">
       <arch>ia64</arch>
       <arch>noarch</arch>
    </archset>
  </archsets>
  
  <mediasets>
    <media  type="ftp"
            flavor="POOL"
            name="SLE-15-SP3-Product-SLES-POOL"
            mediastyle="suse-sle15"
            sourcemedia="2"
            debugmedia="3"
            ignore_missing_packages="false"
            ignore_missing_meta_packages="false"
            run_make_listings="true"
            run_hybridiso="true"
            run_media_check="true"
            repo_only="true"
            separate="true"
            use_undecided="false"
            create_pattern="false"
            use_required="false"
            use_recommended="false"
            use_suggested="false">
      <!--   type             : defines the default size of a media
             flavor           : flavor name - this is needed for registration
             product          : references the product name
             name             : name of the media
             sourcemedia      : sources on this media allowed?
             create_pattern   : create pattern out of the given groups
             use_required     : add required packages from the groups
             use_recommended  : add recommended packages from the groups
             use_suggested    : add suggested packages from the groups
             size             : define a new size for the media - default is defined via 'type' attribute
     -->
      <archsets>
        <archset ref="s390x" />
      </archsets>
      <archsets>
        <archset ref="x86_64" />
      </archsets>
      <archsets>
        <archset ref="ppc64le" />
      </archsets>
      <archsets>
        <archset ref="aarch64" />
      </archsets>
      <metadata>
        <package name="skelcd-EULA-sles" />
      </metadata>
      <use group="sles_release_packages" create_pattern="false" use_recommended="true" />

    </media>

    <!-- This media contains only the installer, without ANY repository -->
    <media type="cd"
           flavor="Online"
           name="SLE-15-SP3-Online"
           sourcemedia="2"
           debugmedia="3"
           firmware="uefi"
           mediastyle="suse-sle15"
           run_hybridiso="true"
           run_media_check="true"
	   run_make_listings="true"
           use_undecided="false"
           create_pattern="false"
           skip_release_package="true"
           use_required="false"
           use_recommended="false"
           use_suggested="false" >
    <!-- type             : defines the default size of a media
         flavor           : flavor name - this is needed for registration
         product          : references the product name
         name             : name of the media
         surcemedia       : sources on this media allowed?
         create_pattern   : create pattern out of the given groups
         use_required     : add required packages from the groups
         use_recommended  : add recommended packages from the groups
         use_suggested    : add suggested packages from the groups
         size             : define a new size for the media - default is defined via 'type' attribute -->
      <archsets>
        <archset ref="s390x" />
      </archsets>
      <archsets>
        <archset ref="x86_64" />
      </archsets>
      <archsets>
        <archset ref="ppc64le" />
      </archsets>
      <archsets>
        <archset ref="aarch64" />
      </archsets>
      <metadata>
        <package name="skelcd-installer-SLES"/>
        <package name="skelcd-leanos"/>
        <package name="skelcd-EULA-sles"/>
        <package name="skelcd-EULA-SLES_BCL" arch="x86_64" />
        <package name="skelcd-EULA-sled" arch="x86_64" />
        <package name="skelcd-EULA-sap-apl" arch="x86_64,ppc64le" />
        <package name="skelcd-EULA-sle_hpc" arch="x86_64,aarch64" />
        <package name="skelcd-EULA-sle_rt" arch="x86_64" />
        <package name="skelcd-EULA-suse-manager-server" arch="x86_64,s390x,ppc64le" />
        <package name="skelcd-EULA-suse-manager-proxy" arch="x86_64" />
        <package name="skelcd-EULA-suse-manager-retail-branch-server" arch="x86_64" />
        <package name="rescue-server" arch="s390x" onlyarch="x86_64"/>
      </metadata>

      <!--
      <use group="leanos"                          create_pattern="false" use_recommended="true" />
      <use group="leanos.x86_64"                   create_pattern="false" use_recommended="true" />
      <use group="leanos.ppc64le"                  create_pattern="false" use_recommended="true" />
      <use group="leanos.s390x"                    create_pattern="false" use_recommended="true" />
      <use group="leanos.aarch64"                  create_pattern="false" use_recommended="true" />
      <use group="leanos_release_packages"         create_pattern="false" use_recommended="true" />
      <use group="leanos_release_packages.x86_64"  create_pattern="false" use_recommended="true" />
      <use group="leanos_release_packages.ppc64le" create_pattern="false" use_recommended="true" />
      <use group="leanos_release_packages.aarch64" create_pattern="false" use_recommended="true" />
      <use group="leanos_release_packages.s390x"   create_pattern="false" use_recommended="true" />
      -->
    </media>

    <media type="cd"
           flavor="Full"
           use_undecided="true"
           sourcemedia="2"
           debugmedia="3"
           name="SLE-15-SP3-Full"
           firmware="uefi"
           mediastyle="suse-sle15"
           run_hybridiso="true"
           run_media_check="true"
           run_make_listings="true"
           create_pattern="false"
           skip_release_package="true"
           use_required="false"
           use_recommended="false"
           use_suggested="false" >
      <archsets>
        <archset ref="s390x" />
      </archsets>
      <archsets>
        <archset ref="x86_64" />
      </archsets>
      <archsets>
        <archset ref="ppc64le" />
      </archsets>
      <archsets>
        <archset ref="aarch64" />
      </archsets>
            <!-- we need some dummy packages, otherwise the use_undecided won't be taken into account. But they aren't used -->
      <use group="sles_release_packages" create_pattern="false" use_recommended="true" />
      <metadata>
        <package name="skelcd-installer-SLES"/>
        <package name="skelcd-leanos"/>
        <package name="skelcd-EULA-sles"/>
        <package name="skelcd-EULA-SLES_BCL" arch="x86_64" />
        <package name="skelcd-EULA-sled" arch="x86_64" />
        <package name="skelcd-EULA-sap-apl" arch="x86_64,ppc64le" />
        <package name="skelcd-EULA-sle_hpc" arch="x86_64,aarch64" />
        <package name="skelcd-EULA-sle_rt" arch="x86_64" />
        <package name="skelcd-EULA-suse-manager-server" arch="x86_64,s390x,ppc64le" />
        <package name="skelcd-EULA-suse-manager-proxy" arch="x86_64" />
        <package name="skelcd-EULA-suse-manager-retail-branch-server" arch="x86_64" />
        <package name="rescue-server" arch="s390x" onlyarch="x86_64"/>
      </metadata>
    </media>

  </mediasets>

  <group name="sles_release_packages">
    <packagelist relationship="recommends">
      <package name="sles-release" supportstatus="l3" />
      <!-- needed to identify base products in yast -->
      <package name="skelcd-control-SLES" supportstatus="l3" />
      <package name="release-notes-sles" supportstatus="l3"/>
    </packagelist>
  </group>

  <!-- We need all (base) release packages on the media -->
  <!-- ARCH: x86_64 ppc64le s390x aarch64
       ==================================
       SLES:   x       x      x      x
       HPC:    x                     x
       RT:     x                    
       SAP:    x       x
       SLED:   x
       BCL:    x
       SUMAS:  x       x      x
       SUMAP:  x
       SUMARBS:x
     -->
  <group name="leanos_release_packages">
    <packagelist relationship="recommends">
      <package name="sles-release" supportstatus="l3"/>
      <!-- needed to identify base products in yast2 -->
      <package name="skelcd-control-SLES" supportstatus="l3"/>

      <!-- needed to display release notes in offline case bsc#1054478#c11 -->
      <package name="release-notes-sles" supportstatus="l3"/>
      <package name="release-notes-sled" supportstatus="l3"/>
      <package name="release-notes-sles-for-sap" supportstatus="l3"/>
      <package name="release-notes-sle_hpc" supportstatus="l3"/>
      <package name="release-notes-sle_rt" supportstatus="l3"/>
      <package name="release-notes-susemanager" supportstatus="l3"/>
      <package name="release-notes-susemanager-proxy" supportstatus="l3"/>
      <!-- Retail-Branch-Server is re-using release-notes-susemanager-proxy -->
  </packagelist>
  </group>

  <group name="leanos_release_packages.ppc64le">
     <conditional name="only_ppc64le"/>
     <packagelist relationship="recommends">
       <package name="SLES_SAP-release" supportstatus="l3"/>
       <package name="skelcd-control-SLES4SAP" supportstatus="l3"/>
       <package name="SUSE-Manager-Server-release" supportstatus="l3"/>
       <package name="skelcd-control-suse-manager-server" supportstatus="l3"/>
     </packagelist>
  </group>

  <group name="leanos_release_packages.s390x">
     <conditional name="only_s390x"/>
     <packagelist relationship="recommends">
       <package name="SUSE-Manager-Server-release" supportstatus="l3"/>
       <package name="skelcd-control-suse-manager-server" supportstatus="l3"/>
     </packagelist>
  </group>

  <group name="leanos_release_packages.aarch64">
     <conditional name="only_aarch64"/>
     <packagelist relationship="recommends">
       <package name="SLE_HPC-release" supportstatus="l3"/>
       <package name="skelcd-control-SLE_HPC" supportstatus="l3"/>
       <!-- package name="SLE_RT-release" supportstatus="l3"/ -->
       <!-- package name="skelcd-control-SLE_RT" supportstatus="l3"/ -->
     </packagelist>
  </group>

  <group name="leanos_release_packages.x86_64">
     <conditional name="only_x86_64"/>
     <packagelist relationship="recommends">
       <package name="SLES_SAP-release" supportstatus="l3"/>
       <package name="skelcd-control-SLES4SAP" supportstatus="l3"/>
       <package name="sled-release" supportstatus="l3"/>
       <package name="skelcd-control-SLED" supportstatus="l3"/>
       <package name="SLE_HPC-release" supportstatus="l3"/>
       <package name="skelcd-control-SLE_HPC" supportstatus="l3"/>
       <package name="SLE_RT-release" supportstatus="l3"/>
       <package name="skelcd-control-SLE_RT" supportstatus="l3"/>
       <package name="SLES_BCL-release" supportstatus="l3"/>
       <package name="SUSE-Manager-Server-release" supportstatus="l3"/>
       <package name="skelcd-control-suse-manager-server" supportstatus="l3"/>
       <package name="SUSE-Manager-Proxy-release" supportstatus="l3"/>
       <package name="skelcd-control-suse-manager-proxy" supportstatus="l3"/>
       <package name="SUSE-Manager-Retail-Branch-Server-release" supportstatus="l3"/>
       <package name="skelcd-control-suse-manager-retail-branch-server" supportstatus="l3"/>
       <!--
           SLES BCL is re-using skelcd-control-SLES, see
           https://github.com/yast/skelcd-control-SLES/pull/121/
       -->
       <!-- <package name="skelcd-control-SLES_BCL" supportstatus="l3"/> -->
     </packagelist>
  </group>

  <xi:include href="leanos.group" />

</productdefinition>
