Distribution Branding

Distribution Branding

This page denotes a HTCondor feature which allows HTCondor to change various aspects about itself away from the "condor" name. This was primarily created as a helper for the "Hawkeye" feature of HTCondor since it used its own config files that sat next to a HTCondor installation.

Important Source Files

  • condor_utils/myDistribution.cpp
  • condor_includes/myDistribution.h
  • condor_utils/distribution.cpp

Some facts

  • There is a 20 character max for the name of a distribution.
  • myDistribution.cpp is where the default name can be changed.
  • The branding system looks at argv of all tools and daemons, and can set the brand via a command line argument.
  • Currently only Hawkeye and HTCondor are supported.

Effect of the codebase

  • Environment Variables
    • EnvGetName() is a critical location to understand.
    • condor_environ.cpp
    • condor_environ.h
    • Things like _CONDOR_mumble are branded in that CONDOR can be changed to HAWKEYE or anything else. Any environment variables the code speciifically looks for in this manner can be changed. This mechanism is also what the param() system uses when you specify _CONDOR_mumble to set config file variables.
    • There is a hard coded list of special environment variables whose names are affected by the distribution name.
  • Config Files
    • Location
    • Name
    • Local Names
  • Home directory and COndor User ID
    • ~condor is an example, could be ~hawkeye if desired.
    • init_tilde() is an example in our code
    • uids.cpp finds the "condor" user, or applicable distribution name instead.
  • Rset/Set functionality