# Kit Build File
# 
# This file was initially auto-generated by the buildkit CLI command.
# To create a new kit, the user should modify this file accordingly.
# Refer to the buildkit manpage for further details.
#

# kit: This section defines general info for the Kit. 
#      There must be exactly one kit section in a kit build file.
# 
# kit attributes:
#    basename        (mandatory) Kit base name. e.g., kit-lsf
#    description     (optional)  Kit description.
#    version         (mandatory) Kit version. e.g., 1.0
#    ostype          (mandatory) Kit OS type.  Must be Linux.
#                      AIX is currently not supported.
#    isinternal      (optional)  PCM use only.
#                      Indicate if Kit is for internal use.
#                      Use 1 for yes, 0 for no. Default: 0
#    kitdeployparams (optional)  Filename containing a list of kit deployment
#                       parameters, relative to
#                       <Kit Build Directory>/other_files
#    kitlicense      (mandatory) Kit license string to be built into all
#                       kitcomponent packages
#    kittarfilename  (optional) Filename.tar.bz2 to be used for the generated
#                       kit.  Default is <basename>-<version>-<ostype>.tar.bz2 
kit:
   basename=puppet
   description=Kit for installing puppet server and client
   version=3.1.1
   release=1
   ostype=Linux
   kitlicense=EPL
   osbasename=rhels
   osmajorversion=6
   #osminorversion=3
   osarch=x86_64


# kitrepo: This section defines a Kit Package Repository.
#          There must be at least one kitrepo section in a kit build file.  
#          If you want to support multiple OSes, you should create a separate
#          repo for each OS.  Also, no two repos can be defined with the same 
#          OS name, major/minor version and arch. For example, you cannot have
#          two repos for RHEL 6.2 x86_64 in the same kit.
#
# kitrepo attributes:
#    kitrepoid          (mandatory) Kit package repository ID.
#                         Must be unique within this file.
#    osbasename         (mandatory) OS distro base name. e.g., rhels.
#    osmajorversion     (mandatory) OS major version. e.g., 6
#    osminorversion     (optional)  OS minor version.
#    osarch             (mandatory) OS architecture. e.g., x86_64
#    compat_osbasenames (optional)  Comma-separated list of compatible 
#                         OS distro base names. e.g., centos

kitrepo:
   kitrepoid=rhels6_x86_64
   osbasename=rhels
   osmajorversion=6
   #osminorversion=
   osarch=x86_64

   #compat_osbasenames=


# kitcomponent: This section defines one Kit Component.  
#               There can be zero or more kitcomponent sections. 
#               If you want to build a component which supports multiple OSes,
#               you should create one kitcomponent section for each OS.  
#               Also, no two components in a kit can be defined with the same 
#               base name. 
#               You can define multiple kit components with the same base name
#               only if each kit component using this base name meets these 
#               requirements:
#                 - Each kit component must be defined with the same version
#                   and release number
#                 - Each kit component must be defined with a unique kitrepoid

#
# kitcomponent attributes:
#    basename        (mandatory) Kit component base name
#    description     (optional)  Kit component description
#    version         (mandatory) Kit component version
#    release         (mandatory) Kit component release
#    serverroles     (mandatory) Comma-separated list of servers that this
#                      component can install on. Valid values:
#                         mgtnode,servicenode,compute,login,storage,utility
#    kitrepoid       (mandatory) The ID of the kit package repository this
#                      component belongs to
#    kitcompdeps     (optional)  Comma-separated list of kit component
#                       dependencies.  These kit components can be included in
#                       this kit or in other kits.
#    ospkgdeps       (optional)  Comma-separated list of OS package dependencies
#                       These packages must be shipped with the OS distro.
#    kitpkgdeps      (optional)  Comma-separated list of kit package names that
#                       will be listed as "REQUIRES" when building this kit
#                       component. Each package must be defined in a separate
#                       kitpackage section. Each package must be in the same 
#                       kitrepo as this kit component.
#    non_native_pkgs (optional)  TBD -- NOT SUPPORTED YET!
#                       Comma-separated list of non-native package 
#                       paths that will be included as files in this kit 
#                       component. All filenames are relative to 
#                       <Kit Build Directory>/source_packages 
#                       Kit component deployment scripts must be specified
#                       to manage these files.
#   driverpacks      (optional) Comma-separated list of driver package filenames
#                       Each driverpack must be defined in a separate kitpackage
#                       section.
#   exlist           (optional) Exclude list file for stateless image, relative
#                       to <Kit Build Directory>/other_files
#   Kit component deployment scripts (optional)  Each attribute specifies 
#                       script path relative to <Kit Build Directory>/scripts
#                       Script attributes:
#                         preinstall, postinstall, preuninstall, postuninstall, 
#                         preupgrade, postupgrade, postbootscripts, 
#                         genimage_postinstall
kitcomponent:
    basename=puppet_client_kit
    description=For installing puppet client
    version=3.1.1
    release=1
    serverroles=servicenode,compute
    kitrepoid=rhels6_x86_64
    kitpkgdeps=puppet
    postinstall=client.rpm_post
    postbootscripts=client.post 

kitcomponent:
    basename=puppet_server_kit
    description=For installing puppet server
    version=3.1.1
    release=1
    serverroles=mgtnode
    kitrepoid=rhels6_x86_64
    kitpkgdeps=puppet-server
    postinstall=server.rpm_post
    postbootscripts=server.post  


# kitpackage: This section defines one Kit Package, and how to build it.
#             There can be zero or more kitpackage sections.  
#             All filenames should be relative paths to
#                <Kit Build Directory>/source_packages  
#             If you want to build a package which can run on multiple OSes, 
#             you have two options:
#               1. Build a separate package for each OS you want to support.  
#                  For this option, you need to define one kitpackage section 
#                  per supported OS.
#               2. Build one package that can run on multiple OSes.  
#                  If you are building an RPM package, you are responsible for 
#                  creating an RPM spec file that can run on multiple OSes.  
#                  For this option, you need to define one kitpackage section
#                  which contains multiple kitrepoid lines.
# 
# kitpackage attributes:
#    filename   (mandatory) Package filename
#    kitrepoid  (mandatory) The repo(s) this package belongs to.  
#                 If multiple repos are defined, the package will be built for
#                 the first repo only. For the other repos, a symlink is created
#                 to the package built for the first repo.
#   Package build methods (optional)  
#                 Define how to build the packages. 
#                 If you don't specify a build method, the default behavior is
#                 to assume the package is pre-built under 
#                   <Kit Build Directory>/source_packages
#                 All files in this section are relative to 
#                   <Kit Build Directory>/source_packages
#                 There are four methods to build packages.
#                   1. Use pre-built RPM package
#                       isexternalpkg:  'no'|'0', 'yes'|'1'  (default:  'no') 
#                         Indicates whether the RPM package will be added to the
#                         the kit tar file now as part of the kit build process,
#                         or whether the customer will need to separately
#                         obtain the RPM pacakage and add it to the kit tar file
#                         using 'buildkit addpkgs'
#                       rpm_prebuiltdir: If isexternalpkg=no, path to directory
#                         containing pre-built RPM package
#                   2. Build RPM from spec + src dir
#                       rpm_spec:   Path to spec file.
#                       rpm_srcdir: Path to source directory.
#                   3. Build RPM from spec + src tarball
#                       rpm_spec:        Path to spec file.
#                       rpm_srctarball:  Path to source tarball.
#                   4. Build RPM from source RPM
#                       rpm_srpm:  Path to source RPM package.
kitpackage:
    filename=puppet-3*
    kitrepoid=rhels6_x86_64
    isexternalpkg=no
    rpm_prebuiltdir=rhels6/x86_64

kitpackage:
    filename=puppet-server-*
    kitrepoid=rhels6_x86_64
    isexternalpkg=no
    rpm_prebuiltdir=rhels6/x86_64

kitpackage:
    filename=*
    kitrepoid=rhels6_x86_64
    isexternalpkg=no
    rpm_prebuiltdir=rhels6/x86_64

