8 Keg OBS source service #
The OBS Source Service for keg provides a mechanism to produce kiwi image
            descriptions for use with the Open Build Service in an automated
            fashion. The OBS Source Service, named compose_kiwi_description, checks
            out any given keg-recipes repositories, runs keg to produce the specified
            image description, and optionally produces change log files and stores the
            HEAD commit hashed of the keg-recipes repositories to be used for the next
            source service run.
To set up an OBS package as a keg source service package, simply create a
            file named _service in your package directory. The contents of the
            file should look like the following:
<services>
    <service name="compose_kiwi_description">
        <param name="git-recipes">https://github.com/SUSE-Enceladus/keg-recipes.git</param>
        <param name="git-branch">released</param>
        <param name="image-source">cross-cloud/sles/byos/15-sp3</param>
    </service>
</services>In this example, the released branch of the public keg-recipes repository
            for SUSE Linux Enterprise images hosted on github is used as source and the
            selected image source is cross-cloud/sles/byos/15-sp3. Running the source
            service will produce a description for a SUSE Linux Enterprise Server 15 SP3
            BYOS image for several cloud service provider frameworks.
The parameters <git-recipes> and <git-branch> may be used multiple times if
            the image description should be composed from more than one repository.
There are a few additional optional parameters:
arch(string)
Set build target architecture. Can be used multiple times.
image-version(string)
Set image version. If no version is given, the version number of the existing image description will be used with the patch level increased by one.
version-bump(true|false)
Whether the patch version number should be incremented. Ignored if
            --image-version is set. If set to false and --image-version is not set,
            the image version defined in the recipes will be used. If no image version is
            defined, image description generation will fail. Default is true.
update-changelogs(true|false)
Whether changes.yaml files should be updated. Default is true.
update-revisions(true|false)
Whether _keg_revisions (used for storing current commit IDs) should be
            updated. Default is true.
force(true|false)
If true, refresh image description even if there are no new commits. Default
            is false.
The system the source service is run on needs to have keg and
            obs-service-keg installed. Refer to the Using Source Services
            section of the OBS manual about details on how to run the source service and
            which operating modes are available.