#321 Add support for top-level variant IDs with dashes.
Merged 7 years ago by ausil. Opened 7 years ago by dmach.
dmach/pungi fix-variant-id  into  master

file modified
+4 -2
@@ -94,7 +94,8 @@ 

              return None

  

          # variant details

-         var.id = variant.id

+         # remove dashes from variant ID, rely on productmd verification

+         var.id = variant.id.replace("-", "")

          var.uid = variant.uid

          var.name = variant.name

          var.type = variant.type
@@ -230,7 +231,8 @@ 

          var.name = variant.parent.name

          var.type = "variant"

      else:

-         var.id = variant.id

+         # remove dashes from variant ID, rely on productmd verification

+         var.id = variant.id.replace("-", "")

          var.uid = variant.uid

          var.name = variant.name

          var.type = variant.type

@@ -198,8 +198,6 @@ 

  class Variant(object):

      def __init__(self, id, name, type, arches, groups, environments=None,

                   buildinstallpackages=None, is_empty=False, parent=None):

-         if not id.isalnum():

-             raise ValueError("Variant ID must contain only alphanumeric characters: %s" % id)

  

          environments = environments or []

          buildinstallpackages = buildinstallpackages or []

@@ -73,4 +73,29 @@ 

      </variants>

    </variant>

  

+   <!-- layered products - Tools for Foo and Bar variants from a base product -->

+   <variant id="Foo-Tools" name="Tools" type="variant" has_optional="false">

+     <arches>

+       <arch>x86_64</arch>

+     </arches>

+     <groups>

+       <group default="true" uservisible="true">core</group>

+     </groups>

+     <environments>

+       <environment>minimal</environment>

+     </environments>

+   </variant>

+ 

+   <variant id="Bar-Tools" name="Tools" type="variant" has_optional="false">

+     <arches>

+       <arch>x86_64</arch>

+     </arches>

+     <groups>

+       <group default="true" uservisible="true">core</group>

+     </groups>

+     <environments>

+       <environment>minimal</environment>

+     </environments>

+   </variant>

+ 

  </variants>

file modified
+1 -1
@@ -1,6 +1,6 @@ 

  #!/bin/sh

  

- export PYTHONPATH=$(pwd)/../

+ export PYTHONPATH=$(pwd)/../:$PYTHONPATH

  export PATH=$(pwd)/../bin:$PATH

  

  mkdir -p _composes

This is for layered products that have a variant mapped
to multiple variants in a base product, for example:

  • Foo-Tools (id: FooTools, uid: Foo-Tools, name: Tools)
  • Bar-Tools (id: BarTools, uid: Bar-Tools, name: Tools)

Requires productmd >= 1.2.

Looks good to me. I will build productmd-1.2 later today.

looks fine to me, however all patches have to be signed off on. we can not merge them without signoff

rebased

7 years ago

Pull-Request has been merged by ausil

7 years ago