wiki:Doc/compiler

Pan Language & Compiler

The pan "compiler" interprets machine configurations written in the pan configuration language and produces "machine profiles" that describe each machine's configuration. "Compiler" is actually a misnomer because the actual compilation of pan source files or "templates" is a small part of the work. The compiler runs through five stages to produce a machine profile: compilation of pan templates, execution of those templates, insertion of default values, validation of configuration information, and finally serialization of the machine profile.

Documentation

Documentation for the pan compiler and pan language are distributed with each version of the pan compiler:

  • Pan Language Manual: Detailed description of pan language syntax and functions.
  • Pan Compiler Manual: Detailed information about compiler options.
  • Pan Tutorial: A tutorial designed to explain the major features of the pan language.

PDF versions of those manuals can be downloaded from the panc section of the Quattor SourceForge repository. The installation packages also contain HTML versions of the documentation.

The pan language continues to evolve. It is strongly recommended to consult the version of the Pan Language Manual that corresponds to the exact version of the compiler you are using.

See the Pan Compiler Manual for installation instructions.

Sources

The source for the pan compiler is managed through a git repository. The code can be checked out with a git client with the command:

git clone ssh://SF_USERNAME@quattor.git.sourceforge.net/gitroot/quattor/pan

for read-write access. For anonymous, read-only access the following command should be used:

git clone git://quattor.git.sourceforge.net/gitroot/quattor/pan

For specific versions of the compiler use the 'git tag -l' command to see the list of tags. The code can be browsed through the Git Browser at SourceForge.

The code can be built and packaged with maven. Issue the command:

mvn install

from the top-level directory to package the compiler and install in your local maven cache. To build the RPM, you must be on a machine with rpmbuild installed.

Last modified 13 years ago Last modified on Aug 2, 2011, 3:42:50 PM