Blame Documentation/Models/Docbook/Tcar-ug/Repository/Conventions/relbdirs.docbook

393b36
<section id="repo-convs-relbdirs">
054a7b
393b36
    <title>Repository Path Relations</title>
054a7b
054a7b
    <para>
054a7b
        In order for automation scripts to produce content inside a
3abc34
        working copy of &TCAR;, it is required that all work lines be
393b36
        related somehow.  The automation scripts take the relation
393b36
        between work lines as reference to determine the place the
393b36
        information they will work with will be retrieve from (e.g.,
393b36
        scalable vector graphics, documentation, translations, etc.),
393b36
        as well as the place where it will store the final files
393b36
        produced as result of automation process (e.g., portable
393b36
        network graphics, documentation ready for printing and reading
393b36
        online, etc.).
393b36
    </para>
393b36
    <para>
393b36
        In order to implement the relation between work lines it is
393b36
        required to establish a path name convenction, so we can
393b36
        conceptually organize different components and relate them one
393b36
        another using predictable path constructions in a scalable
393b36
        way. Based on this need, we identify three different path
393b36
        types inside &TCAR;.  These path types are: <emphasis>Output
393b36
        Paths</emphasis>, <emphasis>Input Paths</emphasis>, and
393b36
        <emphasis>Auxiliary Paths</emphasis>.
054a7b
    </para>
5730da
393b36
    <section id="repo-convs-relbdirs-renderable">
393b36
    <title>Output Paths</title>
22bb26
054a7b
    <para>
393b36
        The output paths point to directories inside the working copy
393b36
        which contain files produced from files inside the input
393b36
        paths. For example, the following paths are consider as output
393b36
        paths:
22bb26
    </para>
5730da
22bb26
    <itemizedlist>
5730da
        <listitem>
5730da
        <para>
47422e
            <filename class="directory">Identity/Images/Brands/</filename>
5730da
        </para>
5730da
        </listitem>
5730da
        <listitem>
5730da
        <para>
47422e
            <filename class="directory">Documentation/Manuals/Tcar-ug/</filename>
5730da
        </para>
5730da
        </listitem>
5730da
        <listitem>
5730da
        <para>
47422e
            <filename class="directory">Identity/Images/Themes/Modern/2/Distro/5/Anaconda/</filename>
5730da
        </para>
5730da
        </listitem>
22bb26
    </itemizedlist>
22bb26
393b36
    <para>
393b36
        Output paths are also known as <emphasis><quote>Render-able
393b36
        Directories</quote></emphasis> because they are the type of
393b36
        path you should provide as argument to 
393b36
        linkend="scripts-bash-render" /> functionality so as to
393b36
        produce content through it.
393b36
    </para>
22bb26
393b36
    </section>
5730da
393b36
    <section id="repo-convs-relbdirs-designmodels">
393b36
    <title>Input Paths</title>
054a7b
    <para>
393b36
        The input paths point to a directories inside the working copy
393b36
        which contain files used to produce files inside output paths.
393b36
        For example, the following paths are considered as input
393b36
        paths:
22bb26
    </para>
393b36
22bb26
    <itemizedlist>
5730da
        <listitem>
5730da
        <para>
47422e
            <filename class="directory">Identity/Models/Brands/</filename>
393b36
        </para>
393b36
        </listitem>
393b36
        <listitem>
393b36
        <para>
47422e
            <filename class="directory">Documentation/Models/Tcar-ug/</filename>
5730da
        </para>
5730da
        </listitem>
5730da
        <listitem>
5730da
        <para>
47422e
            <filename class="directory">Identity/Models/Themes/Default/Distro/5/Anaconda/</filename>
5730da
        </para>
5730da
        </listitem>
393b36
    </itemizedlist>
393b36
    </section>
393b36
393b36
    <section id="repo-convs-relbdirs-auxiliar">
393b36
    <title>Auxiliary Paths</title>
393b36
393b36
    <para>
393b36
        The auxiliary paths point to directories inside the working
393b36
        copy which contain files used to create modified instances of 
393b36
        inside input paths which are use in turn to produce files
393b36
        inside output paths.  For example, the following paths are
393b36
        considered as auxiliary paths:
393b36
    </para>
393b36
        
393b36
    <itemizedlist>
5730da
        <listitem>
5730da
        <para>
47422e
            <filename class="directory">Identity/Images/Brands/</filename>
5730da
        </para>
5730da
        </listitem>
5730da
        <listitem>
5730da
        <para>
47422e
            <filename class="directory">Locales/Documentation/Models/Docbook/Tcar-ug/es_ES/</filename>
5730da
        </para>
5730da
        </listitem>
5730da
        <listitem>
5730da
        <para>
47422e
            <filename class="directory">Locales/Identity/Models/Themes/Default/Distro/5/Anaconda/es_ES/</filename>
5730da
        </para>
5730da
        </listitem>
22bb26
    </itemizedlist>
393b36
    
054a7b
    <para>
393b36
        The relationship between input, output and auxiliary paths is
47422e
        created by combining the first directory level of input paths
47422e
        with the first directory level in the repository directory
47422e
        layout. In the repository directory layout, the first level
47422e
        includes the <filename class="directory">Identity</filename>,
47422e
        <filename class="directory">Documentation</filename> and
47422e
        <filename class="directory">Scripts</filename> directories.
47422e
        These directories are always used to create input and output
47422e
        paths.  The <filename class="directory">Locales</filename>
393b36
        directory, on the other hand, is always used to create
393b36
        auxiliary paths only for input paths available under 
393b36
        class="directory">Identity</filename>, 
393b36
        class="directory">Documentation</filename> and 
393b36
        class="directory">Scripts</filename> directories.
054a7b
    </para>
5730da
        
5730da
    <para>
22bb26
        For example, if the <varname>LANG</varname> environment
22bb26
        variable is set to <quote>es_ES.UTF-8</quote> and you execute
393b36
        the <xref linkend="scripts-bash-render"/> functionality of
5730da
        <command>centos-art.sh</command> script with the 
47422e
        class="directory">Documentation/Manuals/Docbook/Tcar-ug/</filename>
393b36
        input path as argument, it will produce &TCARUG; in Spanish
393b36
        language using translation messages from
47422e
        <filename>Locales/Documentation/Models/Docbook/Tcar-ug/es_ES/</filename>
393b36
        auxiliary path and would save final documentation files under
393b36
        
47422e
        class="directory">Documentation/Manuals/Docbook/Tcar-ug/es_ES/</filename>
393b36
        output path.
22bb26
    </para>
22bb26
393b36
    </section>
054a7b
393b36
</section>