#1758 How to use pungi?
Opened by litian. Modified

I deployed koji on private server nodes, and now I want to use pungi to manage the rpm repository, but I can't find anything in the documentation to use it. Do you have any documentation for easy use?


There's a lot of docs under https://pagure.io/pungi/blob/master/f/doc/index.rst

You will basically need to create a pungi config and run pungi with it... it will then make the things you tell it to in the config.

If you are just making repos, the config should be pretty simple.

Also, depending on what sort of thing you might want you could use the native koji repo parts... ie, koji will make build repos for all your build targets, koji also has a 'dist-repo' command that can create repos based on tags or the like. See 'koji dist-repo --help' for all the options.

So, it really depends on what you are trying to make and how complex you need it.

If all you want is a repo with all packages from a tag, then koji dist-repo is likely a better match.

But you could create that with Pungi too. You will need two config files:

pungi.conf:

release_name = "PUT_A_NAME_HERE"
release_short = "PUT_A_SHORT_IDENTIFIER_HERE"
release_version = "PUT_VERSION_HERE"
variants_file = "variants.xml"
koji_profile = "PROFILE_NAME_GOES_HERE"
pkgset_source = "koji"
pkgset_koji_tag = "TAG_WITH_PACKAGES_GOES_HERE"
# Pull in unsigned packages, if you have signing going on, put the key id into the list.
sigkeys = [None]
gather_method = "deps"
additional_packages = [
    # For the Everything variant ...
    ('^Everything$', {
        # ... on all architectures ...
        '*': [
            # ... include all packages.
            '*',
        ],
    })
]

variants.xml:

<variants>
  <variant id="Everything" name="Everything" type="variant">
    <arches>
      <arch>aarch64</arch>
      <arch>ppc64le</arch>
      <arch>s390x</arch>
      <arch>x86_64</arch>
    </arches>
  </variant>
</variants>

Which you could then run with a command such as this:

pungi-koji --config pungi.conf
   # create a test compose, another option would be --nightly, see --help for other options
  --test
   # This should be on the same filesystem that Koji is using for its storage. Hardlinks will be used then.
  --target-dir /path/to/directory/where/compose/should/land
  # ISOs are created by default, which we don't need here
  --skip-phase createiso

This issue has been migrated to Fedora Forge:
https://forge.fedoraproject.org/pungi/pungi/issues/1758

Please continue any further discussion there.

Metadata