Changes between Version 17 and Version 18 of Development/Templates/ClientSideDepsCheck


Ignore:
Timestamp:
Sep 29, 2008, 7:41:12 PM (17 years ago)
Author:
/O=GRID-FR/C=FR/O=CNRS/OU=LAL/CN=Michel Jouvin
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • Development/Templates/ClientSideDepsCheck

    v17 v18  
    1 [[TOC]]
     1= Checking Package Dependencies in a Profile =
     2[[TracNav]]
     3
     4[[TOC(inline)]]
    25
    36One of the annoying things about Quattor is that you can't check that a package set defined in a profile is consistent, i.e. that it doesn't require any more packages added to resolve dependencies. This can result in a frustrating sequence of "tweak package list, deploy profiles, run SPMA, check for dependency errors". The problem is that dependency information is not available when compiling profiles.
     
    1417{{{createrepo /var/www/html/ca}}}
    1518
    16 = Set up YUM on your development machine =
    17 == Install YUM ==
     19== Set up YUM on your development machine ==
     20=== Install YUM ===
    1821If YUM isn't installed, you will need to install it on the machine where you normally develop Quattor profiles. Note that that checkdeps.py has been tested with YUM version 3.2.8 (as used in Fedora 8).
    1922
    20 == Set up a directory for YUM ==
     23=== Set up a directory for YUM ===
    2124You will need to create a directory for YUM to store its metadata in. Any directory will do. This will be passed in to checkdeps as its working directory.
    2225
    23 == Create a YUM config file ==
     26=== Create a YUM config file ===
    2427This can be very basic. The minimum we need is the location of the directory where the YUM templates describing the repositories are stored.
    2528
     
    3033}}}
    3134
    32 == Generate YUM repository files ==
     35=== Generate YUM repository files ===
    3336For each Quattor repository, you will need to define YUM files describing the repository. '''These must have the same names in YUM and Quattor." The easiest thing is to let checkdeps generate these for you for the profile you're trying to check. If you pass checkdeps the {{{-g}}} flag it will do this for you.
    3437
    35 = Get checkdeps =
     38== Get checkdeps ==
    3639checkdeps is available in the SCDB distribution at [source:SCDB/trunk/src/utils/profiles/checkdeps.py src/utils/profiles/checkdeps.py]
    3740
    38 = Run checkdeps =
     41== Run checkdeps ==
    3942Here is the output when your profile is consistent:
    4043{{{
     
    6366If you add the -p flag, then the program will output Pan lines adding the package (using {{{pkg_repl}}}) for easy cut-and-paste into the offending profile!
    6467
    65 = TROUBLESHOOTING =
     68== Troubleshooting ==
    6669
    67 == No handlers could be found... ==
     70=== No handlers could be found... ===
    6871
    6972Yum changes the API from one version to another. This means, that you
     
    7679[http://gridp03.ft.uam.es/swrep/noarch/yum-3.2.19-3.noarch.rpm UAM's build].
    7780
    78 == Errors on packages while checking dependencies ==
     81=== Errors on packages while checking dependencies ===
    7982
    8083First, check your yum configuration. If it's all right, it means that
     
    8689[http://gridp03.ft.uam.es/swrep/noarch/createrepo-0.9.5-2.noarch.rpm UAM's repository].
    8790
    88 = TODO =
     91== TODO ==
    8992 * Tool for automatically running createrepo on all Quattor repositories on the server
    9093 * Output Pan code for adding the missing packages
     
    9295 * Check for conflicts as well as deps problems
    9396 
    94 = DONE =
     97== DONE ==
    9598 * Convince YUM to look at 64-bit packages on a non-64-bit machine (fixed by calling YUM's doSackSetup with a comprehensive list of arches -- need a better solution as this function is deprecated)
    9699